我用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;
}
您可以看到我使用变量jarakX
和jaraxY
来衡量跳跃距离。当我第一次玩游戏时,vector2运行得很好,但当我退出游戏并再次玩游戏时,vector2似乎让玩家跳得比第一次短。
第三场比赛中的Vector2甚至比第二场比赛短,依此类推。是因为AndEngine或box2d的性能还是影响AndEngine和box2d的背景活动?
答案 0 :(得分:0)
谢谢大家,我的问题通过使用固定步骤physicsworld
解决了