小编mac*_*ack的帖子

简单的在线乒乓球游戏网络同步

我正在为在网络上玩的两个玩家写一个简单的在线乒乓球游戏.它是一个客户端 - 服务器应用程序,在服务器端具有游戏逻辑.我在客户端有一些游戏同步问题,结果非常不满意.这是它目前的工作方式:

  1. 在服务器端,我有一个存储球员位置和球的游戏对象,每个对象都有x,y位置和x,y速度.基于对象的位置在循环中更新.在客户端,有相同的本地对象具有相同的数据,并且它也在循环中更新.
  2. 当玩家按下/释放向上或向下客户端发送具有一个整数的网络数据包时,玩家对象开始/停止在服务器上的游戏对象中移动.
  3. 服务器每隔50毫秒发送一个同步数据包,其中包含所有三个对象的位置和速度.当客户端收到此数据包时,它会相应地更改游戏对象的位置.

这种方法不能很好地工作,因为它在客户端来回移动游戏对象.任何想法如何改进它?

synchronization network-programming

5
推荐指数
1
解决办法
3932
查看次数