モデルビューマトリックスとの使い方を理解しているような気がしgluLookAt
ます。つまり、を宣言するgluLookAt(ex,ey,ez,lx,ly,lz,ux,uy,uz)
ことで、特定のポイントを直接見る方法を簡単に設定できます。
私の質問は-gluLookAt
を呼び出す前にIDをロードしgluLookAt
、現在のmatrixmodeがmodelviewであると仮定して、現在の行列をpostmultipliesするので、立方体を描画するとどうなりますか?
だからこのようなもの:
glMatrixMode(GL_PERSPECTIVE);
glLoadIdentity();
glFrustum(-5, 5, -5, 5, 15, 150);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0, 0, 16, 0, 0, 0, 0, 1, 0);
glutSolidCube(1.0);
立方体はワールド座標でどこにレンダリングされますか?何らかの理由で、この場合、ワールド原点でレンダリングされ、ビューポートで表示できますが、なぜですか?gluLookAt
ビューの回転と平行移動を使用してmodelviewマトリックスを変更するべきではありませんか?立方体は基本的にカメラを内部に置いてレンダリングする必要がありますか?