1

私はここから小さな翼のリメイクの一部であるcocos2d1.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
}

これをOpenGLES2.0に変換するのに苦労しています。ドキュメントが非常にあいまいだと思います。

それはどのように見えるべきですか?

4

1 に答える 1

0

上記の代わりにこの描画機能を使用してください。

-(void) draw
{
    [super draw];
    ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );
    kmGLPushMatrix();
    self.world->DrawDebugData();    
    kmGLPopMatrix();
}

Cocos2D 2.0 の GLES-Render.h と GLES-Render.m も使用します。

于 2012-09-22T13:39:19.713 に答える