使用OpenGL ES 2进行Box2D调试

时间:2013-08-11 12:56:23

标签: opengl-es cocos2d-iphone box2d

我最初创建了没有Box2D的Cocos2D 2.1项目,后来又添加了Box2D。到目前为止一切顺利,现在唯一的问题是我的项目默认使用OpenGL ES 2,Box2D使用的是OpenGL ES 1.这是调试绘制方法:

-(void) draw
{
    glDisable(GL_TEXTURE_2D);
    glDisableClientState(GL_COLOR_ARRAY);
    glDisableClientState(GL_TEXTURE_COORD_ARRAY);

    _world->DrawDebugData();

    // restore default GL states
    glEnable(GL_TEXTURE_2D);
    glEnableClientState(GL_COLOR_ARRAY);
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
}
没有为OGL2定义

GL_COLOR_ARRATGL_TEXTURE_COORD_ARRAY,我遇到了编译器错误。我有什么选择在我的项目中进行调试绘制?

1 个答案:

答案 0 :(得分:0)

您需要查看Cocos2D migration to 2.0 guide。特别关注自定义draw()函数。听起来你应该只需要修改你对Cocos2D使用的OpenGL调用,因为它在内部使用2.x处理很多OpenGL调用。我最近也遇到了这个问题。