在游戏开发环境中实现开发者之间的改进的协作的系统和方法,该系统和方法包括监视和维护对象层级的权威层级主机(AHH)。AHH与在游戏开发环境中进行开发的用户进行通信以处理冲突,从而改善不同用户之间的协作。从而改善不同用户之间的协作。从而改善不同用户之间的协作。
【技术实现步骤摘要】
【国外来华专利技术】用于在支持异构项目状态的游戏引擎中实现多级实时协作的方法和系统
[0001]其他申请交叉引用
[0002]本公开要求2020年3月27日提交的第63/000,519号美国临时申请的优先权,该申请通过引用并入此文。
[0003]本公开总体上针对计算机技术,更具体地针对用于在支持异构项目状态的游戏引擎中实现多级实时协作的方法和系统。
技术介绍
[0004]在过去的二十年,用于创建视频游戏的工具已经有了很大的发展。开发的重点是编辑器工具,编辑器工具提供了对正在创建的游戏或编程环境的实时视角,以及管理游戏环境中的资源(包括几何图形、纹理、着色器、图像、声音和代码元素)的方法。编辑器工具的用户以可视化的方式创建游戏环境,即“所见即所得”。
[0005]游戏引擎或创作环境提供了工具或编辑器环境,用户可以在其中将音频/视频资源与游戏或编程代码组合在一起,以创建交互式体验。游戏引擎编辑器的一部分是场景视图,它允许游戏开发者和设计者将资源放置到场景中。
[0006]随着内容越来越丰富并且环境越来越复杂,协作的需求也必然增加。目前,视觉编辑器工具仅限于单个用户在游戏环境中工作,这限制了工作的执行速度。
[0007]已经尝试了多种解决方案来解决该问题。一种方法允许多人同时编辑游戏环境,并使得它们能够实时或接近实时地见证彼此的改变。另一种当前的解决方案是将游戏或编程环境细分成子部分,其中每个子部分由不同的用户或开发者同时修改。
[0008]因此,提供了用于在支持异构项目状态的游戏引擎中实现多级实时协作的新的方法和系统。
技术实现思路
[0009]本公开针对实现用于现代实时引擎的实时协作的方法和系统。
[0010]本公开提供了实现实时协作的方法和系统,比当前系统更有效,并且提供了改进工作流可见性的附加功能,并且是可扩展的。
[0011]在本公开的一个方面,提供了用于在游戏开发环境中实现多级协作的系统,包括一个或多个权威层级主机(AHH,Authoritative Hierarchy Host),用于存储被用在游戏开发环境中的对象的层级;以及多个客户端,与一个或多个AHH进行通信,用于托管用于编辑游戏开发环境的创作环境;其中多个客户端与一个或多个AHH进行通信,以在开发期间更新对象的层级。
[0012]在另一方面,一个或多个AHH包括网络层,用于与多个客户端中的每一个进行通信;以及数据解释层,用于处理来自多个客户端的消息。在另一方面,一个或多个AHH维护对
象的层级,以解决多个客户端之间的冲突。在又一方面,多个客户端中的每一个包括本地AHH对象层级缓存,用于存储对象的层级的本地版本;以及创作环境控制插件(AECP),用于实现一个或多个AHH与客户端之间的通信。在一方面,多个客户端中的每一个包括授权环境,用于编辑游戏开发环境。
[0013]在本公开的另一方面,提供了在游戏开发环境中实现多级协作的方法,包括在权威层级主机内生成与游戏开发环境相关联的对象的层级;以及经由与多个客户端的通信来管理对象的层级,多个客户端中的每一个在游戏开发环境中编程。
[0014]在另一方面,管理对象的层级包括,从多个客户端中的一个接收关于对象的层级中的对象中的一个对象的更新;以及将消息传输到多个客户端中的其它客户端中的每一个,以相对于对象的层级中的对象中的一个对象更新对象的本地层级。在又一方面,管理对象的层级包括,解决多个客户端之间的与对象的使用相关联的冲突。在又一方面,解决与对象的使用相关联的冲突基于对象锁方法。在又一方面,解决与对象的使用相关联的冲突基于修订号方法。
附图说明
[0015]本公开的实施例现在将参考附图仅以示例的形式描述。
[0016]图1是用于在支持异构项目状态的游戏引擎中实现多级实时协作的系统的示意图;
[0017]图2是权威层级主机(AHH)的示意图;
[0018]图3是概述了生成初始本地层级的方法的流程图;
[0019]图4是概述了生成后续本地层级的方法的流程图;
[0020]图5是概述了在后续本地层级与AHH中的对象层级之间比较对象的方法的流程图;
[0021]图6是一组示例屏幕快照;
[0022]图7是对象锁定场景的示意图;
[0023]图8a到图8i是示出了修订号冲突解决方法的示意图;
[0024]图9是替代物资源的示例;以及
[0025]图10是地形数据的示例。
具体实施方式
[0026]参见图1,示出了实现实时服务器引擎的实时协作的系统的示意图。系统100包括连接到备份服务器104的服务器102。服务器102还连接到一组客户端106或与一组客户端106进行通信。应当理解的是,客户端(N)表示未知数量的客户端,并且不表示只存在14个客户端。在当前实施例中,备份服务器104充当冗余服务器,并且存储与服务器102相同的信息,并以与服务器102相同的方式操作。在其他实施例中,可能不需要备份服务器。
[0027]客户端106可以表示个人用户或开发者,它们以彼此协作的方式在游戏或游戏环境中工作。
[0028]在服务器102内的是服务器权威层级主机108(AHH),它包括服务器权威层级接口(AHI)110。备份服务器104包括备份服务器AHH 112和备份服务器AHI114。AHI接口110和114两者使得其各自的服务器102或104能够与各个客户端106进行通信。在以下描述中,仅提到
了与服务器102进行通信,然而,应当理解的是,客户端106与服务器102之间的任何交互也将适用于客户端106和备份服务器104。
[0029]如在图1中所示出的,服务器AHI 110和备份服务器AHI 114也彼此进行通信。
[0030]通常,每个AHH 108或112包括对象113的层级以及它们的相关联的数据115。对象113可以被视为通用容器,其可以是父类,以创建层级,由此每个对象包含一个属性或一组属性。在一个实施例中,备份服务器104可以存储AHH实例,该AHH实例是服务器中的AHH实例的用于冗余的镜像副本,或它们可以各自包含AHH的唯一细分,以提供更高的性能。
[0031]每个客户端106包括AHH本地缓存116、创作环境客户端插件(AECP)118和创作环境120。创作环境120可以被视为编辑工具,每个用户或开发者可以使用该编辑工具开发游戏环境。应当理解的是,服务器102、备份服务器104和客户端106可以包括其他部件,然而,仅示出了与当前公开相关的那些部件。
[0032]通常,每个客户端或客户端服务器(也可以被视为工作站)包含环境软件或编程、游戏或项目环境的副本,该副本包括开发者经由创作环境120可编辑的游戏项目文件。如所理解的,在软件开发的世界中,游戏项目文件在开发期间可以在一个客户端上改变,但是在另一个或多个客户端上不变。这意味着创建AHH应当容许这些差异。在一个实施例中,当客户端正在编辑同一资源时,AHH本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种用于在游戏开发环境中实现多级协作的系统,包括:一个或多个权威层级主机AHH,用于存储被用在所述游戏开发环境中的对象的层级;以及多个客户端,与所述一个或多个AHH进行通信,用于托管用于编辑所述游戏开发环境的创作环境;其中,所述多个客户端与所述一个或多个AHH进行通信,以在开发期间更新所述对象的层级。2.根据权利要求1所述的系统,其中,所述一个或多个AHH包括:网络层,用于与所述多个客户端中的每一个进行通信;以及数据解释层,用于处理来自所述多个客户端的消息。3.根据权利要求1所述的系统,其中,所述一个或多个AHH维护所述对象的层级,以解决所述多个客户端之间的冲突。4.根据权利要求1所述的系统,其中,所述多个客户端中的每一个包括:本地AHH对象层级缓存,用于存储所述对象的层级的本地版本;以及创作环境控制插件AECP,用于实现所述客户端与所述一个或多个AHH之间的通信。5.根据权利要求4所述的系统,其中,所述...
【专利技术属性】
技术研发人员:贾丝廷,
申请(专利权)人:基麦提松科技公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。