-1

私は 3D 太陽系を作っています & 実際に惑星が移動する軌道である 3D ビューで 2D サークルを表示する必要があります。

glBegin(GL_LINE_LOOP);
for(int i =0; i <= 300; i++)
{
    double angle = 2 * 3.1416 * i / 300;
    double x = .12 * cos(angle);
    double y = .12 * sin(angle);
    glVertex2d(x,y);
    glColor3f(1,1,1);
}
glEnd();

これは、Orbit を表示するために使用しているコードです。openGL C++ で 3D ビューとして作成するにはどうすればよいですか?

4

2 に答える 2

1

探しているものが 3D 座標空間に頂点を作成することである場合は、使用する必要があります:glVertex3dまたはglVertex3f. これらの関数はdouble、最初の頂点とfloat2 番目の頂点の xyz 座標である 3 つのパラメーターを取ることに注意してください。

軌道コードでは、既に計算しているとzの座標だけでなく、追加の座標も生成する必要があります。xy

于 2013-03-14T19:17:42.783 に答える
0

その非常に広い質問。NeHeチュートリアルをご覧になることをお勧めします

レンダリングするように3Dウィンドウを設定したら、軌道を回転するようにmodelviewマトリックスを設定します。

実際にポイントを作成して回転位置に保存する場合は、モデルマトリックスを使用して、3D変換されたポイントに到達することでポイントを乗算できます。

于 2013-03-14T19:20:10.280 に答える