我有一个老游戏,我绑定更新Cocos2d 2.0 SDK。我收到了一些编译错误。
b2Vec2 gravity;
gravity.Set(0.0f, -10.0f);
self.world = new b2World(gravity, true);
错误:没有用于初始化'b2World'的匹配构造函数
当我将其更改为下面的代码然后工作但没有绘制Box2D调试形状。
self.world = new b2World(gravity);
如何以正确的方式初始化Box2d世界以显示调试形状?
答案 0 :(得分:2)
将GLESDebugDraw文件替换为在新创建的cocos2d 2.0 + Box2D项目中找到的文件。您的版本仍在使用GL ES 1.1命令,这些命令在cocos2d 2.x
中不起作用答案 1 :(得分:1)
最后,我通过替换此绘制函数和GLESDebugDraw文件来获得调试形状。
-(void) draw
{
[super draw];
ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );
kmGLPushMatrix();
self.world->DrawDebugData();
kmGLPopMatrix();
}