Bevy Time 和 Rust/OS time

不要 使用 std::time::Instant::now() 来获取当前时间,使用 Bevy 的 Res<Time>.

Rust(同 OS)会给你调用该函数时的精确时间,然而,这并不是你想要的。

你游戏的 system 是由 Bevy 的并行调度器运行的,这意味着他们可能会在每一帧的不同时刻被调用。这将导致不一致的、抖动的时间,使你的游戏表现失常或看起来不流畅。

Bevy 的 Time 给你的计时信息是正确和一致的。它被设计为用于游戏逻辑。

这种用法不是 Bevy 特有的,而是同样适用于其它引擎的游戏开发。总是从你的游戏引擎中获取时间,而不是从你的编程语言或操作系统中获取。