box2d中的Vector2变得更短

时间:2015-02-27 10:36:55

标签: android box2d andengine

我用AndEngine GLES2-AnchorCenter和Box2d ext为Android开发了一款游戏。要让玩家跳转我使用vector2,请参阅下面的代码:

@Override
public boolean onSceneTouchEvent(Scene pScene,
    TouchEvent pSceneTouchEvent) {

        if (pSceneTouchEvent.isActionDown()) {
            awalx = pSceneTouchEvent.getX();
            awaly = pSceneTouchEvent.getY();
            return true;
        }

        if (pSceneTouchEvent.isActionMove()) {
            return true;
        }
        if (pSceneTouchEvent.isActionUp() && loncat == false) {
            akhirX = pSceneTouchEvent.getX();
            akhirY = pSceneTouchEvent.getY();
            jarakX = (awalx - akhirX) / 20;
            jarakY = (awaly - akhirY) / 20;

            Vector2 jump = new Vector2(jarakX, jarakY);
            body.setLinearVelocity(jump);
            // mSound2.play();

            lct--;
            loncat = true;
            return true;
        }

        return true;
    }

您可以看到我使用变量jarakXjaraxY来衡量跳跃距离。当我第一次玩游戏时,vector2运行得很好,但当我退出游戏并再次玩游戏时,vector2似乎让玩家跳得比第一次短。

第三场比赛中的Vector2甚至比第二场比赛短,依此类推。是因为AndEngine或box2d的性能还是影响AndEngine和box2d的背景活动?

1 个答案:

答案 0 :(得分:0)

谢谢大家,我的问题通过使用固定步骤physicsworld

解决了