目前,我用的是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
PHP中文网2017-04-21 11:21:12
答:LearnCocos2D
現在用的應該是Box2D v2.2或是更新的版本,其中,b2World constructor
只有一個有關重力的參數,不再像之前那樣會設定兩個參數。所以,你必須要分開設定doSleep的相關變數:
world = new b2World(gravity);
world->SetAllowSleeping(doSleep);
當然,這也不是唯一的辦法,在Kobold2D中,有一個Box2D 2.2.1的樣例項,這樣,即使你不用Kobold2D,也可以獲得有關Box2D基礎數據的更新。尤其當你需要設定GLESDebugDraw class,或是需要用不同形狀的body設定畫面的邊界框時,都可以採用這種方法。