2

您如何解释时间非常重要的事件?大多数游戏使用帧,并且模拟以时间步长进行。如果发生需要特定时间发生的事件怎么办?

比如像DOTA这样的游戏,攻击速度非常重要。现在,假设这个游戏的时间步长是 50 毫秒。两个英雄在打架。HeroA 攻击 HeroB 并在时间步长的 14 毫秒处造成“致命一击”。HeroB 攻击 HeroA 并且还击中了一个“致命一击”,只是这发生在时间步长的 40 毫秒。但是,在 50 毫秒时间步之前,这些打击中的任何一个都不会被模拟。因此,在 50 毫秒时,两个英雄都会被杀死,而实际上只有 HeroA 应该站着,因为他设法先攻击。

有什么方法可以解决这个问题吗?

4

1 回答 1

0

我不知道您的游戏架构是如何设计的,但是如果您能够获取事件的时间戳,您可以轻松地将它们与另一个缓冲区一起放入缓冲区,Thread并以每 50 毫秒的时间特定顺序处理它们。

于 2012-01-20T19:24:19.227 回答