System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及游戏数据同步,尤其涉及一种游戏数据同步方法、装置、设备以及介质。
技术介绍
1、在开放式的3d大世界竞技游戏中,通常允许多名玩家同时在一个庞大地图上进行游戏竞技,其中,该地图中包含了各种各样的环境、地形和建筑物,玩家可以利用各种地形和建筑物躲避或隐藏自己,以使敌对玩家无法察觉。
2、在多人同时在线的竞技游戏中,使用服务端同步技术实现玩家之间的游戏数据同步。目前的服务端同步技术一般会将所有玩家或一定范围内玩家的信息同步到客户端。一方面,由于所有玩家的信息都需要同步到客户端,增加了网络带宽压力,容易影响游戏的流畅性和实时性,另一方面,敌对玩家的位置和动作等信息可被外挂程序获取、篡改,做到准确追踪敌对玩家,造成不公平的游戏环境,极大降低玩家游戏体验。
技术实现思路
1、本申请实施例的主要目的在于提出一种游戏数据同步方法、装置、设备以及介质,能够减少同步数据量、降低网络宽带需求以及有效防止外挂程序显示或跟踪玩家。
2、为实现上述目的,本申请实施例的第一方面提出了一种游戏数据同步方法,应用于服务器,所述方法包括:
3、接收第一客户端上传的当前玩家在游戏场景中的视锥信息;
4、根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,所述深度体信息包括位置信息和长度信息;
5、根据所述遮挡关系确定相对于所述当前玩家可见的第一实体,所述第一实体为所述游戏场景中由目标玩家操控的实体;
6
7、根据本申请一些实施例提供的游戏数据同步方法,所述根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,包括:
8、将所述视锥信息放入所述第一客户端在所述服务器上所属的同步线程中;
9、利用所述同步线程根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系。
10、根据本申请一些实施例提供的游戏数据同步方法,所述根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,包括:
11、基于所述视锥信息对所述游戏场景中的各个实体进行剔除,得到所述游戏场景中处于当前视锥范围内的所有第二实体;
12、根据所述视锥信息和所述第二实体的深度体信息,得到所有所述第二实体的遮挡关系。
13、根据本申请一些实施例提供的游戏数据同步方法,所述游戏场景中的实体包括静态实体和动态实体,在所述利用所述同步线程根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系之前,所述方法还包括:
14、导出并存储所述游戏场景中所有所述静态实体的深度体信息;
15、获取所述动态实体的实时深度体信息,并利用所述实时深度体信息更新所述同步线程中所述动态实体的深度体信息。
16、根据本申请一些实施例提供的游戏数据同步方法,所述与所述第一客户端进行所述目标玩家的游戏数据同步,包括:
17、获取第二客户端上传的所述目标玩家对应的同步数据;
18、将所述同步数据发送给所述第一客户端,使得所述第一客户端根据所述同步数据完成所述目标玩家的游戏数据同步。
19、为实现上述目的,本申请实施例的第二方面提出了一种游戏数据同步方法,应用于客户端,所述方法包括:
20、获取当前玩家在游戏场景中的视锥信息;
21、将所述视锥信息发送给服务器,以使所述服务器根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,所述深度体信息包括位置信息和长度信息,并使得所述服务器根据所述遮挡关系确定相对于所述当前玩家可见的第一实体,所述第一实体为所述游戏场景中由目标玩家操控的实体;
22、与所述服务器进行所述目标玩家的游戏数据同步。
23、为实现上述目的,本申请实施例的第三方面提出了一种游戏数据同步装置,所述装置包括:
24、视锥信息接收模块,用于接收第一客户端上传的当前玩家在游戏场景中的视锥信息;
25、遮挡关系计算模块,用于根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,所述深度体信息包括位置信息和长度信息;
26、可见实体确定模块,用于根据所述遮挡关系确定相对于所述当前玩家可见的第一实体,所述第一实体为所述游戏场景中由目标玩家操控的实体;
27、游戏数据同步模块,用于与所述第一客户端进行所述目标玩家的游戏数据同步。
28、为实现上述目的,本申请实施例的第四方面提出了一种游戏数据同步装置,所述装置包括:
29、视锥信息获取模块,用于获取当前玩家在游戏场景中的视锥信息;
30、视锥信息发送模块,用于将所述视锥信息发送给服务器,以使所述服务器根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,所述深度体信息包括位置信息和长度信息,并使得所述服务器根据所述遮挡关系确定相对于所述当前玩家可见的第一实体,所述第一实体为所述游戏场景中由目标玩家操控的实体;
31、游戏数据同步模块,与所述服务器进行所述目标玩家的游戏数据同步。
32、为实现上述目的,本申请实施例的第五方面提出了一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述第一方面所述的应用于服务器的游戏数据同步方法,或者实现上述第二方面所述的应用于客户端的游戏数据同步方法。
33、为实现上述目的,本申请实施例的第六方面提出了一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个计算机可执行指令,所述一个或者多个可执行指令可被一个或者多个处理器执行,以实现上述第一方面所述的应用于服务器的游戏数据同步方法,或者实现上述第二方面所述的应用于客户端的游戏数据同步方法。
34、本申请提出一种游戏数据同步方法、装置、电子设备以及计算机可读存储介质,该游戏数据同步方法首先接收第一客户端上传的当前玩家在游戏场景中的视锥信息,之后根据视锥信息和游戏场景中各个实体的深度体信息,得到游戏场景中实体的遮挡关系,其中,深度体信息包括位置信息和长度信息,再根据所述遮挡关系确定相对于当前玩家可见的第一实体,第一实体为游戏场景中由目标玩家操控的实体,最后与第一客户端进行目标玩家的游戏数据同步。本申请通过实时计算游戏场景中实体的遮挡关系,确定游戏场景中由目标玩家操控的、且相对于当前玩家可见的实体,之后只与客户端进行目标玩家的游戏数据同步,对于不可见玩家则不进行游戏数据同步,在保证游戏对局正常进行的情况下,能够减少部分玩家的同步数据从而减少宽带流量,且由于不可本文档来自技高网...
【技术保护点】
1.一种游戏数据同步方法,应用于服务器,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,包括:
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,包括:
4.根据权利要求2所述的方法,其特征在于,所述游戏场景中的实体包括静态实体和动态实体,在所述利用所述同步线程根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系之前,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述与所述第一客户端进行所述目标玩家的游戏数据同步,包括:
6.一种游戏数据同步方法,应用于客户端,其特征在于,所述方法包括:
7.一种游戏数据同步装置,其特征在于,所述装置包括:
8.一种游戏数据同步装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,所述电子设备包括
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至6中任一项所述的方法。
...【技术特征摘要】
1.一种游戏数据同步方法,应用于服务器,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,包括:
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系,包括:
4.根据权利要求2所述的方法,其特征在于,所述游戏场景中的实体包括静态实体和动态实体,在所述利用所述同步线程根据所述视锥信息和所述游戏场景中各个实体的深度体信息,得到所述游戏场景中实体的遮挡关系之前,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述...
【专利技术属性】
技术研发人员:张秋军,郑宇华,王屹,
申请(专利权)人:珠海剑心互动娱乐有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。