Box 2d 使用问题

请问box 2d需要怎么设置一下吗,为什么我写的代码没有用,代码如下:

- (void) createWorld

{

b2Vec2 gravity;

gravity.Set(0.0f, -5.0f);

_world = new b2World(gravity, true);

b2BodyDef testDef;

testDef.type = b2_dynamicBody;

testDef.position.Set(0, 0);

b2Body *body = world->CreateBody(&testDef);

b2CircleShape testShape;

b2FixtureDef testShapeDef;

testShapeDef.shape = &testShape;

testShapeDef.density = 80.0f;

testShapeDef.friction = 1.0f;

testShapeDef.restitution = 0.5f;

body->CreateFixture(&testShapeDef);

b2Vec2 force = b2Vec2(10.0f, 10.0f);

body->ApplyLinearImpulse(force, testDef.position);

self schedule:@selector(tick:) interval:0.2f];

}

- (void) tick : (double) dt

{

_world->Step(dt, 8, 6);

for (b2Body *b = world->GetBodyList(); b; b = b->GetNext())

{

NSLog(@"%f, %f", b->GetPosition().y, b->GetPosition().y);

}

}

打印出来的信息都是: 0.000000, 0.000000

上http://www.raywenderlich.com/tutorials这里的Game Physics部分学习吧。