状态信息同步方法及计算机可读存储介质技术

技术编号:39829387 阅读:9 留言:0更新日期:2023-12-29 16:06
本申请实施例提供了一种状态信息同步方法及计算机可读存储介质,方法包括:接收第一客户端的上报数据,上报数据包括第一客户端的客户端

【技术实现步骤摘要】
状态信息同步方法及计算机可读存储介质


[0001]本申请属于元宇宙
,具体涉及一种状态信息同步方法及计算机可读存储介质


技术介绍

[0002]元宇宙系统在形式上与多人在线游戏类似,实现上,元宇宙系统常基于多人在线游戏框架开发

其中,当玩家在客户端进行操作时,例如,移动角色

发起攻击或与游戏世界中的物体交互,客户端会在本地更新角色的状态,客户端将状态变化上报给服务器

通常客户端会将变化的状态信息封装成一个网络消息,并通过网络连接将该消息发送到服务器

服务器接收到客户端发送的状态变化消息后,会解析该消息并更新对应的游戏状态

[0003]目前,服务器以固定帧率或时间间隔将更新的状态信息封装成网络消息,并通过网络连接发送给其他客户端,这种由服务器发出旨在同步诸客户端之间游戏状态的网络消息简称为状态同步消息或同步消息

但是,同步消息以固定格式传输,传输效率低下,造成带宽浪费,因此,如何提升同步消息的传输效率且节省带宽资源的问题亟待解决


技术实现思路

[0004]本申请提供了一种状态信息同步方法及计算机可读存储介质,能够提升同步消息的传输效率且节省带宽资源

[0005]第一方面,本申请提供了一种状态信息同步方法,应用于元宇宙系统中的服务端,所述元宇宙系统包括所述服务端和多个客户端,所述方法包括:
[0006]接收第一客户端的上报数据,所述上报数据包括所述第一客户端的客户端
ID
和当前状态数据集,所述当前状态数据集包括
n
个第一状态数据,每一第一状态数据对应一个状态值和一个状态类型标识;所述第一客户端为所述多个客户端中的任一客户端;
n
为正整数;
[0007]获取与所述客户端
ID
对应的上一状态数据集,所述上一状态数据集包括
n
个第二状态数据,每一第一状态数据对应一个状态值和一个状态类型标识;
[0008]将所述当前状态数据集的每一第一状态数据与所述上一状态数据集中状态类型标识相同的第二状态数据分别进行增量计算,得到
n
个状态变化量;
[0009]根据所述
n
个状态变化量对所述当前状态数据集中的每一第一状态数据进行编码,得到
n
个编码字段,根据所述
n
个编码字段确定目标同步消息;
[0010]将所述目标同步消息分别推送给所述多个客户端中除所述第一客户端之外的每一客户端

[0011]第二方面,本申请提供了一种计算机存储介质,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如本申请第一方面至第三方面中任一方面所描述的部分或全部步骤

[0012]本申请实施例具有以下有益效果:
[0013]本申请实施例所描述的状态信息同步方法及计算机可存储介质,应用于元宇宙系统中的服务端,元宇宙系统包括服务端和多个客户端,接收第一客户端的上报数据,上报数据包括第一客户端的客户端
ID
和当前状态数据集,当前状态数据集包括
n
个第一状态数据,每一第一状态数据对应一个状态值和一个状态类型标识;第一客户端为多个客户端中的任一客户端;
n
为正整数;获取与客户端
ID
对应的上一状态数据集,上一状态数据集包括
n
个第二状态数据,每一第一状态数据对应一个状态值和一个状态类型标识,将当前状态数据集的每一第一状态数据与上一状态数据集中状态类型标识相同的第二状态数据分别进行增量计算,得到
n
个状态变化量,根据
n
个状态变化量对当前状态数据集中的每一第一状态数据进行编码,得到
n
个编码字段,根据
n
个编码字段确定目标同步消息,将目标同步消息分别推送给多个客户端中除第一客户端之外的每一客户端,从而,可以当前状态数据集与其对应的上一状态数据集之间状态类型标识相同的状态数据进行增量计算,得到相应的状态变化量,再基于状态变化量对当前状态数据进行动态编码,能够实现以用较小的数据传输量传输相同的有效信息,进而,能够提升同步消息的传输效率且节省带宽资源

附图说明
[0014]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图

[0015]图1是本申请实施例提供的一种状态信息同步方法的流程示意图;
[0016]图2是本申请实施例提供的一种用于实现状态信息同步方法的元宇宙系统的架构示意图;
[0017]图3是本申请实施例提供的一种服务端的结构示意图;
[0018]图4是本申请实施例提供的另一种状态信息同步方法的流程示意图;
[0019]图5是本申请实施例提供的一种状态信息同步装置的结构示意图

具体实施方式
[0020]为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚

完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例

基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围

[0021]本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序

此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含

例如包含了一系列步骤或单元的过程

方法

系统

产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程

方法

系统

产品或设备固有的其他步骤或单元

[0022]在本文中提及“实施例”意味着,结合实施例描述的特定特征

结构或特性可以包含在本申请的至少一个实施例中

在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例

本领域技术人员显式地和
隐式地理解的是,本文所描述的实施例可以与其它实施例相结合

[0023]下面先对本申请涉及到的相关术语进行介绍

[0024]元宇宙系统其可以简称本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种状态信息同步方法,其特征在于,应用于元宇宙系统中的服务端,所述元宇宙系统包括所述服务端和多个客户端,所述方法包括:接收第一客户端的上报数据,所述上报数据包括所述第一客户端的客户端
ID
和当前状态数据集,所述当前状态数据集包括
n
个第一状态数据,每一第一状态数据对应一个状态值和一个状态类型标识;所述第一客户端为所述多个客户端中的任一客户端;
n
为正整数;获取与所述客户端
ID
对应的上一状态数据集,所述上一状态数据集包括
n
个第二状态数据,每一第一状态数据对应一个状态值和一个状态类型标识;将所述当前状态数据集的每一第一状态数据与所述上一状态数据集中状态类型标识相同的第二状态数据分别进行增量计算,得到
n
个状态变化量;根据所述
n
个状态变化量对所述当前状态数据集中的每一第一状态数据进行编码,得到
n
个编码字段,根据所述
n
个编码字段确定目标同步消息;将所述目标同步消息分别推送给所述多个客户端中除所述第一客户端之外的每一客户端
。2.
根据权利要求1所述的方法,其特征在于,所述将所述当前状态数据集的每一第一状态数据与所述上一状态数据集中状态类型标识相同的第二状态数据分别进行增量计算,得到
n
个状态变化量,包括:确定第一状态数据
i
的状态值与第二状态数据
j
的状态值之间的目标差值,所述第一状态数据
i
为所述当前状态数据集的任一第一状态数据;所述第一状态数据
i
与所述第二状态数据
j
的状态类型标识相同;根据所述目标差值确定所述第一状态数据
i
的状态变化量
i。3.
根据权利要求2所述的方法,其特征在于,所述根据所述
n
个状态变化量对所述当前状态数据集中的每一第一状态数据进行编码,得到
n
个编码字段,包括:根据所述
n
个状态变化量确定状态变化总量;在所述状态变化总量大于预设状态变化量阈值时,对所述当前状态数据集中的每一第一状态数据进行全量编码,得到所述
n
个编码字段;在所述状态变化总量小于或等于所述预设状态变化量阈值时,对所述当前状态数据集中的每一第一状态数据进行增量编码,得到所述
n
个编码字段
。4.
根据权利要求3所述的方法,其特征在于,所述对所述当前状态数据集中的每一第一状态数据进行全量编码,得到所述
n
个编码字段,包括:将所述当前状态数据集中的每一第一状态数据进行二进制编码,得到所述
n
个编码字段;所述对所述当前状态数据集中的每一第一状态数据进行增量编码,得到所述
n
个编码字段,包括:将所述当前状态数据集中的每一第一状态数据对应的目标差值进行二进制编码,得到所述
n
个编码字段
。5.
根据...

【专利技术属性】
技术研发人员:余勇范瑞彬张开翔
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1