我无法将Cocos2d-x Project构建到Android Project。 在这个项目中,我使用Box2D。
警报:
考虑临时性[-fpermission]
在我使用b2World的CreateBody
函数的所有行中,如下所示:
mBird->setBirdBody(mPhysicalWorld->CreateBody(&mBird->getBodyDef()));
pWallDown->setWallBody(mPhysicalWorld->CreateBody(&pWallDown->getBodyDef()));
对不起,我没有声望发布图片。
任何人都帮我解决这个项目。
先谢谢!
答案 0 :(得分:1)
给CreateBody的参数应该是b2BodyDef *(指向b2BodyDef的指针)。例如:
b2BodyDef bd;
... set values ...
world->CreateBody( &bd );
...或
b2BodyDef* bd = new b2BodyDef;
... set values ...
world->CreateBody( bd );
您的代码正在尝试传递函数返回值的地址,这实际上没有意义。如果你想将body定义存储在'bird'类中并为它创建一个getter函数,你可以返回一个指向定义的指针,如下所示:
// Bird class stores body definition as member
class Bird {
b2BodyDef m_bodyDef;
b2BodyDef* getBodyDef() { return &m_bodyDef; }
};
// Use like this
mBird->setBirdBody( mPhysicalWorld->CreateBody( mBird->getBodyDef() ));