数据同步方法、装置、服务器、存储介质及程序
发布日期:2024-09-02 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370
申请号: | 申请日: | ||
公开(公告)号: | 公开(公告)日: | ||
发明(设计)人: | 申请(专利权)人: | ||
主分类号: | 分类号: | ||
代理公司: | 代理人: | ||
地址: | 国省代码: | ||
权利要求书: | 说明书: | ||
微信咨询: | 添加微信:543646或【点此在线咨询】 | 文件下载: | 【点此下载】请正确填写本页网址和接收邮箱 |
摘要: | 本申请实施例涉及互联网,特别涉及一种数据同步方法、装置、服务器、存储介质及程序产品。、大世界游戏引擎(bigworld)是一种为无缝大世界提供完整技术解决方案的游戏引擎。bigworld将游戏世界(space)划分为不同区域(cell)。为了使不同区域内的虚拟角色可以互相查看,区域之间需要... | ||
相关服务: | 软件产品登记测试全国受理 软件著作权666元代写全部资料全国受理 实用新型专利1875代写全部资料全国受理 | ||
本申请实施例涉及互联网,特别涉及一种数据同步方法、装置、服务器、存储介质及程序产品。背景技术:1、大世界游戏引擎(bigworld)是一种为无缝大世界提供完整技术解决方案的游戏引擎。bigworld将游戏世界(space)划分为不同区域(cell)。为了使不同区域内的虚拟角色可以互相查看,区域之间需要通过real-ghost机制(主备份数据同步机制),对虚拟角色的对象数据进行数据同步。其中,real-ghost机制下,在第一区域内的虚拟角色进入第二区域的视野范围内时,第一区域维护real状态的对象数据,第二区域维护ghost状态的对象数据,且ghost状态的对象数据是由real状态的对象数据同步得到的。通过real-ghost机制,第二区域的玩家可以看到第一区域中的虚拟角色,因此,玩家会感到在一个完整的游戏世界中移动,对不同区域之间数据的迁移、流动无感知。2、相关技术中,在虚拟角色从第一区域移动至第二区域的过程中,会发生real-ghost迁移。发生real-ghost迁移时,第一区域中虚拟角色的全量对象数据将同步迁移至第二区域,且第一区域维护的对象数据切换为ghost状态,第二区域维护的对象数据切换为real状态。由于一个虚拟角色可能包括多个虚拟对象(actor),例如玩家控制的角色对象、角色对象所穿戴的装备对象、背包中的道具对象等等,且每个虚拟对象还可能附属有多个组件(component),因此,虚拟角色的全量对象数据的数据量通常较大。3、为了保证第一区域和第二区域中虚拟角色的对象数据的一致性,发生real-ghost迁移时,第一区域维护的虚拟角色的全量对象数据需要被完整地同步迁移至第二区域。然而,对于高帧率游戏来说,由于单帧时长较短,因此在虚拟角色的全量对象数据的数据量较大的情况下,全量对象数据在不同区域之间迁移所需的时长超过单帧时长,而数据迁移过程持续数帧会导致出现画面卡顿等问题。技术实现思路1、本申请实施例提供了一种数据同步方法、装置、服务器、存储介质及程序产品。所述技术方案如下:2、一方面,本申请实施例提供了一种数据同步方法,所述方法包括:3、在虚拟角色移动至第一区域中的第一位置的情况下,基于所述第一区域中所述虚拟角色的第一角色数据,使用至少两帧时长,在第二区域创建所述虚拟角色的第二角色数据,所述虚拟角色由至少两个虚拟对象构成,所述第一角色数据和所述第二角色数据包括至少两个所述虚拟对象的对象数据,所述第一角色数据为第一状态,所述第二角色数据为第二状态,且所述第二状态下的数据在所述第一状态下的数据发生变更的情况下被动更新;4、在所述第一角色数据发生变更的情况下,向所述第二区域同步所述虚拟对象的变更数据,以使所述第二角色数据基于所述变更数据同步变更;5、在所述虚拟角色移动至所述第二区域中的第二位置的情况下,将所述第一角色数据切换为所述第二状态,以及将所述第二角色数据切换为所述第一状态。6、另一方面,本申请实施例提供了一种数据同步装置,所述装置包括:7、创建模块,用于在虚拟角色移动至第一区域中的第一位置的情况下,基于所述第一区域中所述虚拟角色的第一角色数据,使用至少两帧时长,在第二区域创建所述虚拟角色的第二角色数据,所述虚拟角色由至少两个虚拟对象构成,所述第一角色数据和所述第二角色数据包括至少两个所述虚拟对象的对象数据,所述第一角色数据为第一状态,所述第二角色数据为第二状态,且所述第二状态下的数据在所述第一状态下的数据发生变更的情况下被动更新;8、变更模块,用于在所述第一角色数据发生变更的情况下,向所述第二区域同步所述虚拟对象的变更数据,以使所述第二角色数据基于所述变更数据同步变更;9、迁移模块,用于在所述虚拟角色移动至所述第二区域中的第二位置的情况下,将所述第一角色数据切换为所述第二状态,以及将所述第二角色数据切换为所述第一状态。10、另一方面,本申请实施例提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述至少一条计算机指令由所述处理器加载并执行以实现如上述方面所述的方法。11、另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机指令,所述计算机指令由处理器加载并执行以实现如上述方面所述的方法。12、另一方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。服务器的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该服务器执行上述方面的各种可选实现方式中提供的方法。13、本申请实施例中,在虚拟角色移动至第一区域的第一位置的情况下,使用至少两帧时长,将第一区域中虚拟角色的第一角色数据全量地同步至第二区域,使得第二区域维护第二角色数据为虚拟角色的全量对象数据。同时,在虚拟角色从第一区域的第一位置向第二区域的第二位置的过程中,在第一角色数据发生变更的情况下,向第二区域同步了变更数据,以使第二区域的第二角色数据基于变更数据同步更新。可见,采用本申请实施例提供的方案,大量的对象数据在ghost创建以及数据发生变更时已经同步(称为前向分帧机制)。在虚拟角色移动至第二区域中的第二位置的情况下,进行real-ghost迁移所需要同步的数据量仅为该帧对应的虚拟对象的变更数据,变更数据的数据量较小,因此,在real-ghost迁移时数据同步的时长不会超过单帧时长,从而避免了数据同步持续数帧会导致出现画面卡顿等问题。除此之外,在ghost创建过程中,使用至少两帧时长将第一区域中虚拟角色的第一角色数据全量地同步至第二区域,也可以避免在短时间内同步大量数据造成服务器处理压力过大的问题。技术特征:1.一种数据同步方法,其特征在于,所述方法包括:2.根据权利要求1所述的方法,其特征在于,所述基于所述第一区域中所述虚拟角色的第一角色数据,使用至少两帧时长,在第二区域创建所述虚拟角色的第二角色数据,包括:3.根据权利要求2所述的方法,其特征在于,所述确定至少两个所述虚拟对象的所述对象数据的创建优先级,包括:4.根据权利要求3所述的方法,其特征在于,所述使用至少一帧时长,基于所述第一角色数据中所述不可见虚拟对象的所述对象数据,在所述第二区域创建所述不可见虚拟对象的所述对象数据,包括:5.根据权利要求2至4任一所述的方法,其特征在于,所述在所述虚拟角色移动至所述第二区域中的第二位置的情况下,将所述第一角色数据切换为所述第二状态,以及将所述第二角色数据切换为所述第一状态,包括:6.根据权利要求3或4所述的方法,其特征在于,所述根据所述虚拟对象的可见性,确定所述创建优先级,包括:7.根据权利要求3或4所述的方法,其特征在于,所述根据所述虚拟对象的可见性,确定所述创建优先级,包括:8.根据权利要求2至4任一所述的方法,其特征在于,所述方法还包括:9.根据权利要求1至8任一所述的方法,其特征在于,所述方法还包括:10.根据权利要求9所述的方法,其特征在于,所述确定至少两个所述虚拟对象的所述对象数据的删除优先级,包括:11.根据权利要求1至8任一所述的方法,其特征在于,所述方法还包括:12.根据权利要求1至8任一所述的方法,其特征在于,所述方法还包括:13.根据权利要求1至8任一所述的方法,其特征在于,所述在第二区域创建所述虚拟角色的第二角色数据之前,所述方法还包括:14.根据权利要求13所述的方法,其特征在于,所述在所述第一角色数据发生变更的情况下,向所述第二区域同步所述虚拟对象的变更数据,包括:15.根据权利要求14所述的方法,其特征在于,所述将构成所述虚拟角色的所述虚拟对象加入所述第一区域对应的第一同步队列,包括:16.根据权利要求13至15任一所述的方法,其特征在于,所述将构成所述虚拟角色的所述虚拟对象加入所述第一区域对应的第一同步队列,包括:17.一种数据同步装置,其特征在于,所述装置包括:18.一种服务器,其特征在于,所述服务器包括处理器和存储器;所述存储器存储有至少一条计算机指令,所述至少一条计算机指令用于被所述处理器执行以实现如权利要求1至16任一所述的数据同步方法。19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机指令,所述计算机指令由处理器加载并执行以实现如权利要求1至16任一所述的数据同步方法。20.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中;服务器的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述服务器执行如权利要求1至16任一所述的数据同步方法。技术总结本申请实施例公开了一种数据同步方法、装置、服务器、存储介质及程序产品,涉及互联网技术领域。包括:在虚拟角色移动至第一区域中的第一位置的情况下,基于第一区域中虚拟角色的第一角色数据,使用至少两帧时长,在第二区域创建虚拟角色的第二角色数据,第一角色数据为第一状态,第二角色数据为第二状态,且第二状态下的数据在第一状态下的数据发生变更的情况下被动更新;在第一角色数据发生变更的情况下,向第二区域同步虚拟对象的变更数据;在虚拟角色移动至第二区域中的第二位置的情况下,将第一角色数据切换为第二状态,以及将第二角色数据切换为第一状态。采用本申请的方法可以避免数据同步导致的画面卡顿。技术研发人员:周原,王亚昌,钟建斌受保护的技术使用者:腾讯数码(天津)有限公司技术研发日:技术公布日:2024/8/15
- 上一篇:一种方便更换绳体的跳绳手柄的制作方法
- 下一篇:一种球类器材放置柜