游戏中的因果同步

由于网络不同步导致的因果错位

帧同步

插值其他玩家的动作,但其实其他玩家的动作不是预测出来的那样。

多线程模拟速度不同导致的有瑕疵的因果

TWOS

模拟速度快的线程会少考虑模拟速度慢的线程中的因,所以当一个线程已经模拟了 5 秒 LVT 的时候,另一个线程可能只模拟了 3 秒 LVT,然而在 4 秒 GVT 的时候两个线程模拟的两个刚体会发生碰撞,所以 4-5 秒 LVT 的时间中的果其实是有瑕疵的,第一个线程应该把它们丢弃。

RD 算法在每次发生碰撞后都完全丢弃模拟时间,CA 算法通过减小模拟步长来避免丢弃模拟时间(但过小的步长会导致数值计算误差)。

时间旅行导致的因果紊乱

Tome4 中回退时间 7 回合的时间技能。

全局时间操作

时间膨胀

EVE 中如果同一星域里的舰船数量过多,就会导致服务器性能不够,此时解决方案是把这个星域的时间流速相对于现实世界的时间放缓。

加速模拟

RTS 里有暂停吗?

如果《缺氧》或者《边缘世界》这样有多个不同的时间流速的殖民地模拟器游戏需要支持联机的话,要怎么支持暂停?

游戏里有一些纯等待的时间段,例如殖民者正在睡觉,此时需要加快时间流速。

  1. 全局时间流速以最慢的玩家时间流速为准,比如一个玩家是 1x 另一个玩家是 3x,那么全局时间流速设定为 1x
  2. 允许不同的时间流速,对于发生因果冲突的情况,使用 TW 算法回滚因果