我正在研究一个太空战斗模拟游戏,该模拟游戏发生在相对广阔的区域(一个侧面的空间约20光分钟),并使用(主要是)逼真的物理学。我要建模的关键要素之一是信息在战斗空间中的传播速度-也就是说,如果玩家A在战斗空间的一侧接合主驱动器,那么玩家B看到它就会有20分钟的延迟,然后可以对此做出反应
考虑到速度,即使是相对较小的战斗空间,这也是一个重要因素。一艘500m长,速度为30kps的船将在十分之一秒的时间内位移自己的全长,因此即使瞄准对手,也只有十分之几秒的距离会受到光滞后的影响。
我以前从未见过这样做,我想知道是否有一些最佳实践来对此建模。现在,我要为每个事件加上时间戳,并标记一个位置,将其放入队列中,然后对每个刻度进行检查,以查看游戏世界中是否有任何对象刚在光锥的边缘,并添加事件到他们的传感器队列。我将(但尚未)通过删除所有可能感知到它的对象已经感知到的事件来对其进行优化,但是,我仍然认为这将使繁琐的工作变得非常麻烦,并且会吃掉很多东西如果有数百个感测物体在播放(这是很常规的),则周期为。
有没有应该更适合我检查的数据模型?