Box2D调试绘图与OpenGL ES 2



我创建了Cocos2D 2.1项目,最初没有Box2D,后来添加了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);
}

GL_COLOR_ARRATGL_TEXTURE_COORD_ARRAY没有为OGL2定义,我得到了编译器错误。在我的项目中进行调试绘制的选项是什么?

您需要了解Cocos2D迁移到2.0的指南。特别注意自定义draw()函数。听起来你应该只需要将你正在进行的OpenGL调用修改为Cocos2D使用的调用,因为它在2.x内部处理了很多OpenGL调用。我最近也遇到了这个问题。

最新更新