我有一层。它具有特定的“z”值的孩子。例如
- Child_1 z==-10.0f (CCSprite)
- Child_2 z==-5.0f(我的自定义节点)
- Child_3 z==-1.0f (CCSprite)
我的自定义节点(Child_2)在“draw”方法中直接调用 Opengl es,以通过着色器绘制纹理。
我坚持的问题:
如果我在这样的步骤中添加孩子,一切都很好:
[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 );