Unity3D与AllJoyn:多人游戏同步

时间:2013-01-15 10:07:38

标签: android network-programming unity3d multiplayer alljoyn

我正在开发一种Pong-Game,用于Unity和AllJoyn for Android的双人游戏。该游戏使用Unity的内置物理功能。我是Unity网络编程的新手。作为切入点,我使用了AllJoyn的聊天示例。

我永久发送球拍位置(x-Position为双倍值)。球的位置和速度在开始时被发送,并且每个击球都被击中以保持游戏同步。

不幸的是,发送需要几秒钟(滞后)。通过这种方式,球会在更新位置和速度时跳跃。

如何与AllJoyn实现最佳同步?如何加快信号的发送和接收?聊天示例代码是否是多人游戏的切入点不是最佳的?我目前正在调查更新功能,如果已发送位置。是否有其他解决方案可以知道何时从其他玩家发送包裹(球和球拍位置)? AllJoyn有一些技巧可以实现良好的多人游戏同步吗?

我还尝试过完全由每个本地游戏实例控制的球的移动,并且只依赖于跨设备更新的球拍位置。这就是问题所在,因为桨叶位置的传输速度不够快。

你有一些提示,如何解决这个问题?谢谢!

1 个答案:

答案 0 :(得分:1)

您应该尝试以30 FPS(每秒30个数据包)的速率发送非常少量的数据。如果你的游戏以60 FPS运行,你应该每2帧发送一次。

由于网络速度(甚至是WiFi),许多设备都会滞后,并且数据将被底层系统缓冲或挂起。

我希望这对你有所帮助。