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);