objective-c - 用Box2D创建世界时,出现报错怎么办?
阿神
阿神 2017-04-21 11:19:12
0
1
535

目前,我用的是cocos2d Box2D的模板做项目,但是,当我创建世界(world)的时候,会采用:

world =newb2World(gravity,doSleep);

然后就会报错:No matching constructor for initialization of 'b2World'
文件格式为.mm,这种报错是与相关的数据库有关吗?如果我用xCode 4,怎么才能对相关的数据库进行检测呢?

原问题:Xcode: Cocos2d: Can't create world with Box2D

阿神
阿神

闭关修行中......

全部回复(1)
洪涛

答:LearnCocos2D
你现在用的应该是Box2D v2.2或者更新的版本,其中,b2World constructor
只有一个有关重力的参数,不再像之前那样会设置两个参数。所以,你必须要分开设定doSleep的相关变量:

world = new b2World(gravity);
world->SetAllowSleeping(doSleep);

当然,这也不是唯一的办法,在Kobold2D中,有一个Box2D 2.2.1的样例项,这样,即使你不用Kobold2D,也可以获得有关Box2D基础数据的更新。尤其当你需要设定GLESDebugDraw class,或者是需要用不同形状的body设定屏幕的边界框时,都可以采用这种方法。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板