我在cocos2d 1.0项目中有这个代码,这是从这里重拍的小翅膀的一部分:https://github.com/haqu/tiny-wings
- (void) draw {
#ifdef DRAW_BOX2D_WORLD
glDisable(GL_TEXTURE_2D);
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
glDisableClientState(GL_COLOR_ARRAY);
glPushMatrix();
glScalef(CC_CONTENT_SCALE_FACTOR(), CC_CONTENT_SCALE_FACTOR(), 1.0f);
world->DrawDebugData();
glPopMatrix();
glEnableClientState(GL_COLOR_ARRAY);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glEnable(GL_TEXTURE_2D);
#else
glBindTexture(GL_TEXTURE_2D, _stripes.texture.name);
glDisableClientState(GL_COLOR_ARRAY);
glColor4f(1, 1, 1, 1);
glVertexPointer(2, GL_FLOAT, 0, hillVertices);
glTexCoordPointer(2, GL_FLOAT, 0, hillTexCoords);
glDrawArrays(GL_TRIANGLE_STRIP, 0, (GLsizei)nHillVertices);
glEnableClientState(GL_COLOR_ARRAY);
#endif
}
我很难将其翻译成OpenGL ES 2.0。我觉得文档很模糊。
它应该是什么样的?
答案 0 :(得分:0)
使用此绘制功能而不是上面的功能。
-(void) draw
{
[super draw];
ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );
kmGLPushMatrix();
self.world->DrawDebugData();
kmGLPopMatrix();
}
还可以使用Cocos2D 2.0中的GLES-Render.h和GLES-Render.m