2013-12-4 人物同步的复杂性

有些事情,真是要等到实际做时才知道其麻烦之处,如下图:

 

当玩家A的侏儒女法师望着楼梯上的玩家B的精灵战士的时候(左图),玩家B控制精灵战士向前移动.在玩家A的机器上,接收到了精灵战士前移的消息后,为了保证精灵战士的动作流畅性,开始模拟控制精灵战士向前移动,导致精灵战士从楼梯上掉了下来,从而在玩家A的机器上开始转而模拟精灵战士的下落.如果网络延迟足够大,那么可能直到玩家A机器上模拟的精灵战士落地,玩家A的机器都没有收到来自玩家B的精灵战士开始下落消息.
  那么,在玩家A机器上模拟的精灵战士下落过程中,收到了来自玩家B的精灵战士开始下落网络消息,该如何处理? 重新将正在下落的精灵战士拉起来再下落一次? 或者忽略掉来自玩家B的这个消息,那么后续同步该如何处理?
  总体来说,处理起来很复杂,500多行的代码,我翻来覆去重写了三四次,总体达到了很满意的效果,现在人物同步方面,老婆看了都说和魔兽一样了 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值