从事棋牌游戏三年,一直不知道原来我们游戏使用的服务端编程的专业术语叫状态同步。
状态同步:
服务端:保存的是整个场景实时的状态。对各个对象实体用一些变量描述它当前的状态。
优点:网络流量消耗较小
缺点:当场景里实体对象很多时,需要保存的内存数据就会大大增加。并且不一定可控。
帧同步:
服务端:保存一个时间片(逻辑帧)里各个玩家的操作的指令集
优点:无需保存对象的实体状态
缺点:难以调试,断线重连回来必须执行一遍指令集,会很慢。