搜尋

首頁  >  問答  >  主體

objective-c - 用Box2D创建世界时,出现报错怎么办?

目前,我用的是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

阿神阿神2763 天前524

全部回覆(1)我來回復

  • PHP中文网

    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設定畫面的邊界框時,都可以採用這種方法。

    回覆
    0
  • 取消回覆