Cocos2dx中使用Box2D的弹跳球轨迹路径预测

时间:2014-11-14 05:44:29

标签: cocos2d-x box2d prediction projectile

我想预测一个足球的射弹轨迹,就像在农场足球www.crazygames.com/game/farm-soccer游戏中一样。 一旦球被释放,我就制造了不包括反弹的射弹轨迹。

请有人建议我。 这是描绘我想要什么的图像(请注意用红点制作的抛射路径)

enter image description here

以下是我现在写的代码:(感谢iforce2d.net

void drawtrajectory(){
    for (int i = 1; i <= 30; i++) {
        b2Vec2 trajectoryPosition = getTrajectoryPoint(Utility::toMeters(catapult->getPosition()), startVelocity, -i*3);
        CCSprite* dot = CCSprite::create("dot.png");
        dot->setScale(0.3f);
        addChild(dot, 20,555);
        dot->setPosition(Utility::toPixels(trajectoryPosition));
    }
}
b2Vec2 getTrajectoryPoint(b2Vec2 startingPosition,b2Vec2 startingVelocity,float n)
{
    float t = 1 / 60.0f;
    b2Vec2 stepVelocity = t * startingVelocity;
    b2Vec2 stepGravity = t * t * world->GetGravity();
    return startingPosition + n * stepVelocity + 0.5f * (n*n+n) * stepGravity;
}

0 个答案:

没有答案