帧同步和状态同步从技术上来说有什么区别
-
状态同步
-
-
状态同步是大型网游普遍会采用的一种同步技术,它特点是客户端会向服务器发送一些指令,比如在角色扮演类中从游戏的NPC那里买一些物品时,客户端会向服务器发送一个指令,指令中包括玩家ID、购买商品的ID号、商贩NPC的ID号,将这些信息传到服务器后,服务器会计算玩家的金钱是否足够,当前所处位置是否在NPC身边、NPC是否有这个物品等等
-
服务器会做很多校验,校验完以后才能确定玩家是否能购买物品,如果不能买服务器就会给客户端下发一个交易失败的指令,可以购买服务器则会下发玩家在购买完商品以后,背包里面增加了哪些东西,或者减少了哪些东西的消息
-
状态同步的特点就是状态同步发送的是一些操作,接收的是一些状态,这些状态数据可能会很大,所以在同步时所要同步的数据量也会比较大,状态同步的的好处就是安全性比较好,反作弊能力比较强
-
-
帧同步
-
-
帧同步的特点可以总结为六个字:发操作、收操作,也就是说客户端发送的是操作,接收的也是操作,服务器在接收到客户端发送的操作后,不会做任何运算,而是以广播的形式将这个操作发送给同一房间里的所有玩家
-
其他玩家在接收到的操作后就会产生相应的画面表示,比如玩家1发射了一颗子弹,那么在玩家2的客户端上就应该实例化一颗子弹出来,然后让颗子弹以一定的速度朝某一个方向发射,这就是帧同步的一个特点
-
帧同步将所有运算都放在客户端去做其实有一个非常大的好处,就是它的运算非常简洁因为就像在开发一个客
-