小编Yae*_*aem的帖子

Libgdx,物理,加速和FPS

我在Libgdx框架中制作平台游戏.我想实现跳到我的角色的能力.我使用简单的公式:

speed += acceleration * delta_time
r += speed * delta_time
Run Code Online (Sandbox Code Playgroud)

它运行良好,但仅适用于每秒恒定帧数.FPS越低,我的角色越低.我不知道这种行为的原因是什么,跳跃的高度应该是相同的:/我的代码片段:

delta_time=Gdx.graphics.getDeltaTime();
if(input.getUpArrow()){
     if(is_in_air==false){
        is_in_air=true;
        speed_y=speed_y_0;
     }
  }

  if(is_in_air==true){
     speed_y-=acceleration*delta_time;
  }
  else{
     speed_y=0;
  }

  x+=speed_x*delta_time;
  y+=speed_y*delta_time;
Run Code Online (Sandbox Code Playgroud)

这里有一个插图(黑点是字符位置):http: //i.imgur.com/tfSTM.jpg

java physics frame-rate acceleration libgdx

2
推荐指数
1
解决办法
2715
查看次数

标签 统计

acceleration ×1

frame-rate ×1

java ×1

libgdx ×1

physics ×1