Google Play游戏服务-实时多人游戏-如何获得延迟

问题描述 投票:0回答:1

我正在使用Google Play游戏服务-实时多人游戏API,将多人游戏功能添加到我的手机游戏中。 我使用的引擎是Unity3D,但是我的问题与Unity无关(我相信是),因此它并不重要。

我想知道的是,通过互联网接收的消息的延迟使我的游戏流畅且同步。

我知道在像Photon这样的其他API中,您可以轻松找到正在接收的消息的延迟,但是我似乎在Google Play游戏服务API上找不到它。

有什么方法可以知道Google Play游戏服务API上收到消息的延迟吗?

感谢您的时间!

mobile multiplayer google-play-games
1个回答
0
投票

在Google Real Time多人API中,确定消息的延迟有些复杂,因为连接是点对点的,因此大多数数据直接从一个播放器传输到另一个播放器。 (有关详细信息,请参见: https : //developers.google.com/games/services/common/concepts/realtimeMultiplayer#messaging

简短的答案是,您可以自己估算,方法是在消息中添加序列号,然后交换每个客户端在消息之间遇到的时间差。 我建议测量几个消息和大小,不要有太多的内存,因为条件会改变。 例如,每条消息之间的平均时间为30-100条消息,然后计划最慢的链接。

为了制作出优质的实时游戏,您确实应该假设延迟是可变的(有时它很短,而另一些则很高),并且总是比您想要的更长:)

您可能想签出https://gamedev.stackexchange.com/questions/58450/mobile-multiplayer-games-and-coping-with-high-latency ,其中对如何处理这种情况进行了很好的讨论。

© www.soinside.com 2019 - 2024. All rights reserved.