レイヤーができました。特定の「z」値を持つ子を持っています。例えば
- Child_1 z==-10.0f (CCスプライト)
- Child_2 z==-5.0f (私のカスタム ノード)
- Child_3 z==-1.0f (CCスプライト)
私のカスタム ノード (Child_2) には、シェーダーを介してテクスチャを描画するための「draw」メソッド内で直接 OpenGL が呼び出されます。
私が固執する問題:
このような手順で子を追加すると、すべて問題ありません。
[self addChild:Child_1 z:-10.0f tag:1];
[self addChild:Child_2 z:-5.0f tag:2];
[self addChild:Child_3 z:-1.0f tag:3];
そのような方法でそれらを追加すると:
[self addChild:Child_1 z:-10.0f tag:1];
[self addChild:Child_3 z:-1.0f tag:3];
[self addChild:Child_2 z:-5.0f tag:2];
Child_3 は表示されませんが、表示される必要があります。
適切な描画動作のためにopengl es draw呼び出しを使用する方法は?
PSここにコードがあります
[hm2 use];
glVertexAttribPointer ( 0, 3, GL_FLOAT, GL_FALSE, 0, vVertices2 );
glEnableVertexAttribArray ( 0 );
glDrawArrays ( GL_TRIANGLES, 0, 3 );