2010-01-22 4 views
1

J'utilise le cocos2d-iphone + moteur Box2d, j'ai un simple appel à Box2d pour créer un corps:GetBodyCount() retourne toujours 0 dans Box2d?

b2Body *crateBody = world->CreateBody(&crateBodyDef); 

Je suis l'impression de la variable de comptage de corps nouvellement incrémentée par:

CCLOG(@"There are %0.0f bodies in the world.", world->GetBodyCount()); 

Toutefois, GetBodyCount() renvoie toujours 0? Je sais que la variable de compte de corps est en cours d'incrémentation, car lorsque je débogue et que j'entre dans CreateBody(..)m_BodyCount est incrémenté, et mon inspecteur renvoie 1 respectueusement. Je ne comprends pas comment avec world->GetBodyCount() il suffit d'exécuter un return m_BodyCount cela pourrait-il échouer et retourner 0?

Espérons que quelqu'un puisse vous aider! À la vôtre.

J'utilise SVN rev. R31

Graham

Répondre

3

est GetBodyCount() retourner un int? Si c'est le cas, vous devez utiliser% d dans la chaîne de format.

+0

Argh. Merci beaucoup Gerry. C'était ce qui se passait. Je n'ai pas remarqué que j'utilisais "f" et que je représentais le flotteur. lol. Obj-c est une bête différente venant de C#! – GONeale