gpt4 book ai didi

libgdx - 渲染方法 libgdx 中的 Delta 值

转载 作者:行者123 更新时间:2023-12-04 09:06:30 24 4
gpt4 key购买 nike

我在 Screen 类的渲染方法中检查了 delta 值。我看到它不是常数。任何 body 都可以知道它来自哪里以及它是什么?它在不同的屏幕尺寸上是否有所不同?如果是这样,我们如何克服它?我问这个是因为我的玩家跳跃取决于增量时间,有时它跳得太高......

最佳答案

deltaTime与屏幕尺寸无关。它是渲染最后一帧所用的时间。在 LibGDX 的情况下渲染还包括您在 render() 中执行的所有逻辑方法。

通常,您希望游戏在不同设备上以相同速度运行。如果你的渲染方法看起来像这样......

public void render(float deltaTime) {
float speed = 5f;
position = position + speed;
}

...然后位置会在快速设备上变化得更快,而在慢速设备上变化得更慢,只是因为渲染方法被调用的次数不同。

为了克服这个问题,有 deltaTime在 LibGDX 的情况下,以秒为单位。为了让位置在不同设备上以相同的速率变化,你通常这样做:
public void render(float deltaTime) {
float speedPerSecond = 5f;
position = position + (speedPerSecond * deltaTime);
}

关于libgdx - 渲染方法 libgdx 中的 Delta 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22405390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com