当前位置: 首页 > 知识库问答 >
问题:

Libgdx-减速使抛射体停止,然后倒车

关玄裳
2023-03-14
projectile.y -= 200 * Gdx.graphics.getDeltaTime();

该示例将使所述抛射器以每秒200像素的速度下降(我相信)。我要做的是,两秒钟后,弹丸会从每秒负200转到每秒正200。我试过使用循环和线程。睡眠,但这只会冻结整个游戏,解冻与射弹去另一个方向。有什么想法吗?

共有1个答案

印成天
2023-03-14

线性插值。

您所需要做的就是确定起始点:x1=-200

确定终点:x2=200

float interpolationTimer = 0.0f;
final float interpolationTimerMax = 2.0f;

public void render()
{
    float delta = Gdx.graphics.getDeltaTime();
    interpolationTimer += delta;
    if(interpolationTimer > interpolationTimerMax )
    {
        interpolationTimer = interpolationTimerMax ;
    }
    velocity.y = -200 + (interpolationTimer/interpolationTimerMax) * (400); //x1 + t*v = x2
    projectile.y -= velocity.y * delta;
}
 类似资料:
  • 我在LibGDX做一个项目。这是一款2d平台游戏。你可以说这就像超级马里奥。 这就是我如何把我的球员移到右边: 当我离开钥匙时,玩家仍然在移动一点。(我想他的身体上仍然有“线性冲动”的力量)。 我怎样才能让它停下来? 我的问题可能很简单:拿着钥匙,在LibGDX上向一个方向移动身体的最佳方式是什么。当我离开钥匙时,玩家立即停止。 BDW——我尝试过“setTransform”,当身体触摸其他物体时

  • 我有一个稍微令人困惑的问题,我认为由于一个愚蠢的疏忽,这将是一个容易解决的问题。 我的主要任务是上传图像和录音文件到我的服务器上的一个位置。我通过FTP这样做。 活动通过startService(intentName)调用服务 onHandleIntent()创建一个新线程 在新线程中,需要上传的文件被放入一个列表数组 在列表数组中循环。在这个循环中,将文件名传递给FTP服务器。如果添加成功,我会

  • 是否有一种方法可以以方式删除数据,不时地释放锁?

  • 怎么停止这个计时器,知道吗? 我想重置计时器在每个查询,但它继续。每个新的查询都会添加新的计时器。这个怎么解决?

  • 问题内容: 我正在做一个数独求解器,为此,我希望我的JTextFields只接受数字123456789中的一个作为有效输入。因此,我将MaskFormatter与JFormattedTextField一起使用。但是,当我通过执行.setText(“”)清除所有TextField时,MaskFormatter不再起作用。清除文本框后,我可以再次在其中写入任何内容。为什么以及如何解决? 我的代码基本上