发明名称 |
游戏AOI同步方法 |
摘要 |
本发明提供一种游戏AOI同步方法,包括以下步骤:将整个游戏场景划分为若干个相同的网格,在游戏进行过程中,当游戏服务器获知某一个游戏实体Y的位置或状态发生变化时,仅对变化前和变化后游戏实体的可见区域的网络进行场景同步,而不需要进行全场景同步,为一种应用于游戏服务器端的场景同步方案,尤其适合于屏幕较小的手机等游戏服务器端,可有效提高同一场景内游戏实体之间状态的同步效率,从而增加同场景内可容纳的玩家数量,提高游戏的流畅性,最终增强游戏玩家的体验。 |
申请公布号 |
CN105991591A |
申请公布日期 |
2016.10.05 |
申请号 |
CN201510082668.X |
申请日期 |
2015.02.13 |
申请人 |
广州四三九九信息科技有限公司 |
发明人 |
龚涛 |
分类号 |
H04L29/06(2006.01)I;H04L29/08(2006.01)I |
主分类号 |
H04L29/06(2006.01)I |
代理机构 |
北京市盛峰律师事务所 11337 |
代理人 |
席小东 |
主权项 |
一种游戏AOI同步方法,其特征在于,包括以下步骤:S1,游戏服务器将整个游戏场景划分为若干个相同的区域,每个区域即称为一个网格;S2,游戏服务器实时维护对象列表集;其中,所述对象列表集由多个对象列表组成,每个所述对象列表与唯一一个网格对应,用于记录网格ID以及在当前时刻该网格ID包含的所有的游戏实体ID;S3,游戏服务器定义可见区域的配置规则;其中,所述可见区域由若干个网格组成;S4,在游戏进行过程中,当游戏服务器获知某一个游戏实体Y的位置或状态发生变化时,记录游戏实体Y的变化信息;S5,所述游戏服务器判断由游戏实体Y发生变化的事件是否导致对象列表集需要更新,如果是,首先更新所述对象列表集,再执行S6;否则,直接执行S6;S6,所述游戏服务器根据S3定义的配置规则,得到变化后的游戏实体Y的新可见区域,由此获得新可见区域包含的新可见网格集合;同时,所述游戏服务器读取到变化前的游戏实体Y的原可见区域,由此获得原可见区域包含的原可见网格集合;S7,所述游戏服务器判断所述原可见网格集合和所述新可见网格集合是否完全重合,如果完全重合,表明所述游戏实体Y仅在一个网格发生位置或状态的变化,则:所述游戏服务器根据S5得到的最新的对象列表集,获得所述新可见网格集合在当前时刻所包含的所有的游戏实体ID;然后,基于预设的筛选算法,对所述所有的游戏实体ID进行筛选,得到筛选后的游戏实体ID;然后,所述游戏服务器向所述筛选后的游戏实体ID发送游戏实体Y发生变化的同步通知消息;如果不完全重合,表明所述原可见网格集合和所述新可见网格集合存在部分重合的网格,则区分以下三种情况:对于属于所述原可见网格集合而不属于所述新可见网格集合的第一种网格,获得所述第一种网格在当前时刻所包含的所有的游戏实体ID;然后,基于预设的筛选算法,对所述所有的游戏实体ID进行筛选,得到筛选后的游戏实体ID;向所述筛选后的游戏实体ID发送游戏实体Y离开可见区域的通知消息;对于属于所述新可见网格集合而不属于所述原可见网格集合的第二种网格,获得所述第二种网格在当前时刻所包含的所有的游戏实体ID;然后,基于预设的筛选算法,对所述所有的游戏实体ID进行筛选,得到筛选后的游戏实体ID;向所述筛选后的游戏实体ID发送游戏实体Y进入可见区域的通知消息;对于所述原可见网格集合和所述新可见网格集合的重合网格,记为第三种网格,获得所述第三种网格在当前时刻所包含的所有的游戏实体ID;然后,基于预设的筛选算法,对所述所有的游戏实体ID进行筛选,得到筛选后的游戏实体ID;向所述筛选后的游戏实体ID发送游戏实体Y发生变化的同步通知消息。 |
地址 |
510630 广东省广州市天河区建中路8号四楼B2房 |