我开始开发一个小型多人赛车游戏,显然我们使用了Half Life、Quake和Unreal使用的所有玩家预测、死亡补偿和延迟补偿技术,但是我们计划在游戏中还有数十辆AI汽车。
最初,我们决定简单地向所有客户端发送一个随机种子,然后他们将计算AI位置等等 - 然而,我们遇到了以下问题:
- 所有客户端都收到用于运行AI汽车的种子
- 客户端只接收到视线内的玩家的移动更新
- 玩家A撞上了NPC汽车
- 玩家B进入了玩家A的画面
现在,由于玩家B没有收到玩家A的移动,他会认为AI车仍按照应有的方式移动,并且不会计算玩家A撞上其中一辆车的事实...
所以长话短说 - 如何同步受玩家影响的AI单位?