0

9 つの平面を示す GLView を含む SurfaceView を作成しようとしています。平面を原点の周りにひし形に向けようとしています。基本的に、最上層はすべて、120 度の円形状に分離された 120 度の角度で原点に向けられます。中間層も 120 度離れていますが、x 軸に垂直で y 軸に平行です。最下層は最上層の逆になります。

これまでのところ、ヨーとピッチが適切に設定されていることを確認するために、ループ (うまく終了せず、平面が作成物全体に散らばっていました) と平面ごとに移動を試みました。どちらも機能していません。

アイデアがある場合は、私に教えていただくか、適切なチュートリアルの方向を教えてください。

ありがとう〜エイドン

これが私の行ごとのコードスニペットです:

dyaw & dpitch: 120 度

w & h: 幅 (2) と高さ (3) に応じて

間隔: .5f

// Top Layer
mGL.glRotatef(dyaw, 0, 1f, 0);
mGL.glRotatef(dpitch, 0, 0, 1f);
mGL.glTranslatef(0, h + spacing, 0);
mPanels[0].drawColorful(mGL);
mGL.glRotatef(dyaw, 0, 1f, 0);
mPanels[1].drawColorful(mGL);
mGL.glRotatef(dyaw, 0, 1f, 0);
mPanels[2].drawColorful(mGL);
// Middle Layer
mGL.glRotatef(dyaw, 0, 1f, 0);
mGL.glRotatef(-dpitch, 0, 0, 1f);
mGL.glTranslatef(0, -(h + spacing), 0);
mPanels[3].drawColorful(mGL);
mGL.glRotatef(dyaw, 0, 1f, 0);
mPanels[4].drawColorful(mGL);
mGL.glRotatef(dyaw, 0, 1f, 0);
mPanels[5].drawColorful(mGL);
// Bottom Layer
mGL.glRotatef(dyaw, 0, 1f, 0);
mGL.glRotatef(-dpitch, 0, 0, 1f);
mGL.glTranslatef(0, -(h + spacing), 0);
mPanels[6].drawColorful(mGL);
mGL.glRotatef(dyaw, 0, 1f, 0);
mPanels[7].drawColorful(mGL);
mGL.glRotatef(dyaw, 0, 1f, 0);
mPanels[8].drawColorful(mGL);
4

1 に答える 1

0

気にしないでください。 INsanity からはるかに優れたチュートリアルが見つかりました。誰かが Android の OpenGL に関する質問を持っている場合は、この人のチュートリアルを試してみてください。素晴らしいものです。

〜エイドン

于 2011-01-19T18:28:03.190 に答える