gpt4 book ai didi

language-agnostic - 游戏时间基于什么?实时还是帧?

转载 作者:行者123 更新时间:2023-12-04 13:08:59 25 4
gpt4 key购买 nike

我是第一次设计游戏,但我想知道游戏时间是基于什么时间的。它是基于时钟还是依赖于帧? (注意:我不确定这里的“游戏时间”是否正确,如果不是,请纠正我)

为了更清楚,想象一下这些场景:

  • 计算机 1 速度快,高达 60fps
  • 电脑2 很慢,不超过 30fps

  • 在两台计算机上玩相同的游戏,其中角色以相同的速度行走。

    如果游戏时间是基于帧的,角色在电脑 1 上的移动速度会是原来的两倍。另一方面,如果游戏时间是基于实际时间的,电脑 1 会显示两倍的帧,但角色的移动速度会一样快就像在电脑 2 上一样。

    我的问题是,处理游戏时间的最佳方法是什么,优点和缺点是什么?

    最佳答案

    一般来说,商业游戏有两件事在运行——“模拟”循环和“渲染”循环。这些都需要尽可能地解耦。

    您想将模拟时间步长固定为某个值(大于或等于您的最大帧速率)。复杂的物理学不喜欢可变的时间步长。我很惊讶没有人提到这一点,但如果你有任何有趣的物理学,固定时间步长与可变时间步长是一个大问题。这是一个很好的链接:
    http://gafferongames.com/game-physics/fix-your-timestep/

    然后您的渲染循环可以尽可能快地运行,并渲染当前模拟步骤的输出。

    所以,引用你的例子:

    您将以 60fps 的速度运行您的模拟,即 16.67 毫秒的时间步长。计算机 A 将以 60fps 渲染,即它会渲染每个模拟帧。计算机 B 将每隔一个模拟帧渲染一次。因此,角色会在同一时间移动相同的距离,但不会那么流畅。

    关于language-agnostic - 游戏时间基于什么?实时还是帧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3135107/

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