シーンを表示する方法の 1 つは、gluLookAt を使用するか、独自のカスタム表示ルーチンを作成することです。本のフライト シミュレーターで、このカスタム表示ルーチンに出会いました。
void pilotView(GLdouble planex, GLdouble planey,
GLdouble planez, GLdouble roll,
GLdouble pitch, GLdouble heading)
{
glRotated(roll, 0.0, 0.0, 1.0);
glRotated(pitch, 0.0, 1.0, 0.0);
glRotated(heading, 1.0, 0.0, 0.0);
glTranslated(-planex, -planey, -planez);
}
カメラを時計回りに x 度回転させることは、ターゲット オブジェクトを反時計回りに x 度回転させることと同じです。したがって、たとえば「ロール」角度を指定する場合、「glRotated(roll, 0.0, 0.0, 1.0)」ではなく「glRotated(-roll, 0.0, 0.0, 1.0)」と記述すべきではないでしょうか?