Networking 游戏实时联网,插值问题

Networking 游戏实时联网,插值问题,networking,real-time,multiplayer,Networking,Real Time,Multiplayer,我最近一直在思考如何建立实时、快节奏的游戏网络。看起来,如果插值正确,那么命中率计算是在从玩家2p2s的角度来看,当射手是玩家1p1时,发生在p1.interp+p2.interp+p1.ping/2+p2.ping/2之前的状态上完成的 数据包首先到达接受p1.ping/2的服务器,然后服务器根据p1.interp+p1.ping/2之前发生的游戏状态计算数据包。该计算的结果将被发送到player2,player2稍后只会看到p2.interp。由于这三方处理事情所需的时间,这一数字的总和更大

我最近一直在思考如何建立实时、快节奏的游戏网络。看起来,如果插值正确,那么命中率计算是在从玩家2p2s的角度来看,当射手是玩家1p1时,发生在p1.interp+p2.interp+p1.ping/2+p2.ping/2之前的状态上完成的

数据包首先到达接受p1.ping/2的服务器,然后服务器根据p1.interp+p1.ping/2之前发生的游戏状态计算数据包。该计算的结果将被发送到player2,player2稍后只会看到p2.interp。由于这三方处理事情所需的时间,这一数字的总和更大

    player1            server             player2
       |                 |                   |
.------|_1.............actual.....|.....game state......|
|      |                 | ^                 |
|intrp |_2               | |                 |
|      |                 | |                 |
`----->|_3----ping/2     | |                 |
                  `------|_4----ping/2       |
                                    `------5_|-------.
                                             |       |
                                           6_|  intrp|
                                             |       |
                                           7_|<------‘
请原谅我的艺术技能差,但我无法抗拒。 我回到家里,安装了Windows,我看到这里看起来有多糟,但希望你们能明白这一点


假设50毫秒的ping,100毫秒的插值,它给了我们超过250毫秒的总结。这意味着player2在过去大约被player1看到250毫秒,但是,假设客户预测,他会实时看到自己。我的逻辑有缺陷,还是这没什么大不了的?

我找到了一个问题的答案。不确定这是否适合作为答案,但我无法评论。

我找到了一个问题的答案。不确定这是否适合作为回答,但我无法发表评论。

我的问题在某种程度上是基于那篇文章。我的问题在某种程度上是基于那篇文章。我已经尝试解决了这个问题:嗯,我已经试着解决这个问题了