Cocos2d-x-3 PhysicsBody applyImpulse不加速精灵

时间:2016-03-15 17:13:10

标签: cocos2d-x cocos2d-x-3.0

我正在与applyImpulse苦苦挣扎。文档说applyImpulse - Applies a continuous force to body.但我的理解是,持续的力量会使精灵加速。 f = m * a对吗?我有恒定的力和恒定的质量,所以我应该有一个恒定的加速度。但是,当我这样做时:

ball = Sprite::create("ball.png");
ball->setPosition(Vec2(s_center.x - visibleSize.width/10, s_center.x + s_center.y-visibleSize.width/3));
addChild(ball);
ballBody = PhysicsBody::createCircle(ball->getBoundingBox().size.width/2,  PhysicsMaterial(0.5f, 0.5f, 0.5f));
ballBody->setDynamic(true);
ballBody->setMass(30);
ballBody->setGravityEnable(false);
ball->addComponent(ballBody);
ballBody->applyImpulse(Vec2(0.00,-1300));

我得到的球在屏幕上移动,看起来像一个非常恒定的速度,而不是加速度。我做错了吗?

1 个答案:

答案 0 :(得分:0)

好的,文档错了。 applyForce将施加恒定的力,而applyImpulse将施加冲动,或瞬间的力量和放松(如击中)。我是母语为英语的人,应该能够比我更快地解决这个问题。