0

例如在 cocos2D 中:

- (void)update:(ccTime)delta

有人可以解释这些时间增量或时间戳的用途吗?它们与游戏世界的更新方式有什么关系?是因为我们不可靠地了解 fps 并且不应该仅仅依赖基于 -update 调用的增量属性更新吗?

4

1 回答 1

5

这对于使框架独立运动很重要。通常,您考虑自上次更新调用以来的时间的任何角色移动。

这是为了确保您的游戏在各种性能的设备上表现相同。如果您将角色每帧移动 1 个像素,那么在以 60fps 运行的设备上,该角色的移动速度将是在获得 30fps 的设备上移动的两倍。

通过影响所有运动代码,例如通过 delta 时间,您可以确保所有设备的行为都相同。

使运动帧速率独立是很简单的。将运动矢量乘以 deltaTime 之类的方法可以实现这一点。

于 2013-12-01T22:20:45.853 回答