CN113181654B - 游戏画面生成方法、装置、存储介质及电子设备 - Google Patents

游戏画面生成方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN113181654B
CN113181654B CN202110594655.6A CN202110594655A CN113181654B CN 113181654 B CN113181654 B CN 113181654B CN 202110594655 A CN202110594655 A CN 202110594655A CN 113181654 B CN113181654 B CN 113181654B
Authority
CN
China
Prior art keywords
game
scene
behavior tree
camera
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110594655.6A
Other languages
English (en)
Other versions
CN113181654A (zh
Inventor
谢渔挺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202110594655.6A priority Critical patent/CN113181654B/zh
Publication of CN113181654A publication Critical patent/CN113181654A/zh
Application granted granted Critical
Publication of CN113181654B publication Critical patent/CN113181654B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本公开涉及计算机领域,具体涉及一种游戏画面生成方法、装置、存储介质及电子设备。该游戏画面生成方法包括:实时获取游戏的场景数据;基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面。本公开提供的游戏画面生成方法能够提高竞技类游戏画面的可控性。

Description

游戏画面生成方法、装置、存储介质及电子设备
技术领域
本公开涉及计算机领域,具体涉及一种游戏画面生成方法、装置、存储介质及电子设备。
背景技术
在游戏直播中,常规的游戏摄像机运动方式只适用固定已知下一刻动画运动后,配合动画架设摄像机跟随动画。但由于体育竞技类游戏情况的不可控性,例如篮球比赛中突然抢断,或者改变进攻方向,采用现有的游戏摄像机运动方式往往会丢失有效镜头的捕捉,造成游戏画面不可控,观看体验较差。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种一种游戏画面生成方法、装置、存储介质及电子设备,旨在解决竞技类游戏画面不可控的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的一个方面,提供一种游戏画面生成方法方法,包括:实时获取游戏的场景数据;基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面。
根据本公开的一些实施例,基于前述方案,所述方法还包括创建所述游戏蓝图,包括:对所述游戏的场景抽象成类得到游戏场景;将所述游戏场景对应的拍摄策略进行映射以创建所述行为树;基于所述游戏场景以及所述游戏场景对应的行为树生成所述游戏蓝图。
根据本公开的一些实施例,基于前述方案,所述方法还包括:在所述游戏蓝图中设置所述游戏用于拍摄的摄像机;基于所述摄像机确定所述拍摄策略,以根据所述拍摄策略配置所述行为树。
根据本公开的一些实施例,基于前述方案,所述结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面,包括:基于所述行为树的执行逻辑确定一待执行节点;根据所述场景数据确定所述待执行节点对应的目标拍摄信息;按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点;重复上述执行节点的过程遍历运行所述行为树,并根据所述视频数据生成所述游戏画面。
根据本公开的一些实施例,基于前述方案,所述目标拍摄信息包括目标摄像机以及所述目标摄像机的摄像机参数值;其中,所述摄像机参数值包括摄像机高度、摄像机角度、摄像机视角中的一种或多种摄像机参数的参数值。
根据本公开的一些实施例,基于前述方案,在所述按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点之前,所述方法还包括:获取所述行为树中当前节点对应的当前拍摄信息;基于所述当前拍摄信息和所述目标拍摄信息判断是否满足镜头平滑条件;在满足所述镜头平滑条件时,基于线性插值函数生成所述视频数据。
根据本公开的一些实施例,基于前述方案,所述场景数据包括目标对象的位置数据、目标角色的位置数据以及目标对象和目标角色之间的相对位置数据。
根据本公开实施例的第二个方面,提供了一种游戏画面生成装置,包括:获取模块,用于实时获取游戏的场景数据;识别模块,用于基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;执行模块,用于结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面。
根据本公开实施例的第三个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中的游戏画面生成方法。
根据本公开实施例的第四个方面,提供了一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中的游戏画面生成方法。
本公开示例性实施例可以具有以下部分或全部有益效果:
在本公开的一些实施例所提供的技术方案中,预先设计包含有各个游戏场景对应行为树数的游戏蓝图,使得在生成游戏画面时能够根据实时的场景数据确定需要执行的行为树,进而运行该行为树中的节点得到游戏的游戏画面。本公开提供的游戏画面生成方法能够根据实时的场景数据进行游戏场景的预判,根据预判结果可以提前获取下一刻画面的拍摄行为,为游戏画面的生成提供了一种新的解决方案,相较于传统的已知下一画面后再架设摄像机跟随轨迹的拍摄方法,一方面提高了游戏画面的可控性,提升了游戏画面的观看体验,另一方面也减少了架设摄像机跟随拍摄的计算机能耗成本,更易实现。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出本公开示例性实施例中一种游戏画面生成方法的流程示意图;
图2示意性示出本公开示例性实施例中一种游戏场景下行为树的示意图;
图3示意性示出本公开示例性实施例中另一种游戏场景下行为树的示意图;
图4示意性示出本公开示例性实施例中一种游戏画面的示意图;
图5示意性示出本公开示例性实施例中一种游戏画面的示意图;
图6示意性示出本公开示例性实施例中一种游戏画面的示意图;
图7示意性示出本公开示例性实施例中一种游戏画面的示意图;
图8示意性示出本公开示例性实施例中一种游戏画面生成方法装置的组成示意图;
图9示意性示出本公开示例性实施例中一种计算机可读存储介质的示意图;
图10示意性示出本公开示例性实施例中一种电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
现有的技术方案基本都是在软件层面根据动画制作摄像机动画,通过在3dsMax软件中架设Camera根据人物运动轨迹跟随人物,通过调整Camera X、Y、Z轴以及FOV等参数制作动画,最后与人物动画一起输出到引擎。
但上述技术只适用常规跟随动画运动,动作停留在底层技术层面,体育竞技类游戏按照常规形式无法获取球场上球员的运动状态;同时,技术相对落后不够灵活运用,只能根据已有的动画在资源层面做到跟随动作,画面比较死板,感官不自然,衔接段落感强;另外,现有技术无法实现产品对竞技体育类游戏效果定位要求,实现不了比赛过程中不固定的角色状态,且步骤实现成本更大。
因此,本公开提供一种新的游戏画面生成方法,通过预先设计游戏蓝图来提高游戏画面的可控性,同时降低成本。以下对本公开实施例的技术方案的实现细节进行详细阐述。
图1示意性示出本公开示例性实施例中一种游戏画面生成方法的流程示意图。如图1所示,该游戏画面生成方法包括步骤S1至步骤S3:
步骤S1,实时获取游戏的场景数据;
步骤S2,基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;
步骤S3,结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面。
在本公开的一些实施例所提供的技术方案中,预先设计包含有各个游戏场景对应行为树数的游戏蓝图,使得在生成游戏画面时能够根据实时的场景数据确定需要执行的行为树,进而运行该行为树中的节点得到游戏的游戏画面。本公开提供的游戏画面生成方法能够根据实时的场景数据进行游戏场景的预判,根据预判结果可以提前获取下一刻画面的拍摄行为,为游戏画面的生成提供了一种新的解决方案,相较于传统的已知下一画面后再架设摄像机跟随轨迹的拍摄方法,一方面提高了游戏画面的可控性,提升了游戏画面的观看体验,另一方面也减少了架设摄像机跟随拍摄的计算机能耗成本,更易实现。
下面,将结合附图及实施例对本示例实施方式中的游戏画面生成方法的各个步骤进行更详细的说明。
在步骤S1之前,所述方法还包括创建所述游戏蓝图。该步骤的具体实现步骤如下:对所述游戏的场景抽象成类得到游戏场景;将所述游戏场景对应的拍摄策略进行映射以创建所述行为树;基于所述游戏场景以及所述游戏场景对应的行为树生成所述游戏蓝图。
具体来说,不同的游戏有不同的玩法,根据每种游戏的游戏规则可以设置多种游戏场景,以篮球游戏为例,游戏中会出现抢断、投篮、盖帽等情况。将游戏基于规则产生的多种情况抽象为不同的游戏场景类别,例如游戏开场时抽象成跳球非传球场景,在游戏过程中有镜头跟随场景、跳球传球场景、投三分球场景等等。需要说明的是,不同的游戏场景设置不同的拍摄策略,所以在抽象游戏场景类别时需要考虑配置拍摄策略。
然后将游戏场景对应的拍摄策略映射为行为树。行为树采用节点描述该游戏场景下的游戏画面镜头逻辑,用于描述该游戏场景下的如何利用摄像头进行拍摄。根据拍摄策略创建不同的节点,并配置节点之间的逻辑关系。
在编写行为树节点时,每一个节点处需要配置摄像机参数,在运行行为树时便可以通过控制摄像机参数的参数值来控制游戏画面的生成。摄像机参数可以包括摄像机高度、摄像机角度和摄像机视角(FOV)一种或多种。
同时,摄像机参数需要支持修改,参数修改也可以通过多种方式来实现。比如摄像机参数支持即时修改属性,即可以实时设置不同的参数值,或者是支持插值性地修改属性,也就是在一段时间内慢慢更改属性,还可以是支持设定一个目标值,以基于这个目标值去控制摄像机。
摄像机参数修改的不同行为可以继承于一个基类,举例而言,例如:boolbShouldApplyImmediately表示是否即刻设置数值,若为否,则进入插值设置模式;boolbIsRelative表示数值更改是相对的还是绝对的;float Duration表示插值的时间,也就是这个行为的持续时间;float LerpAlpha表示插值的百分比,如果属性行为是插值模式,那么基类会在它的每帧tick中根据时间更新LerpAlpha的值,公式为LerpAlpha=(当前时间-行为开始时间)/Duration。
基类提供了一系列的虚函数等着派生类重载,其中最重要的就是voidSaveStartValue(),这个函数的作用是初始化一些必要的变量,比如行为的开始时间和当前时间。派生类通过重写该函数,可以记录自己的初始值。
在本公开的一个实施例中,还可以实现简单地派生行为。派生类有很多种,这里以FOV修改行为例进行详细说明。
首先FOV修改类,需要公布一个目标的FOV值用于行为树配置。然后需要更新一些函数,例如:
(1)virtual void SaveStartValue()override,用与初始化参数,注意它需要调用Super::SaveStartValue(),在这里,它会记录镜头初始的FOV值
(2)virtual void ParamRelToAbs()override,一个很关键的函数,作用是将相对变换转换为绝对变换。当变换模式为相对的时候,会将相对变换的变化值转换为最终的绝对的目标值。
(3)virtual void ImmediatelyFinishOperation()override,当行为被打断时可能会被调用,即刻将属性设置为最终值。
(4)virtual void DoOperationTick(UBehaviorTree Component&OwnerComp,float DeltaSeconds)override。
其中,DoOperationTick()每帧从基类获取已经算出来的LerpAlpha,然后调用代码算出当前的插值FOV,并设置到镜头上。
以此类推,高度和角度的修改行为也是类似的逻辑,记录初始值,然后在tick中更新插值并设置到镜头上。
在本公开的一个实施例中,还可以实现镜头的跟随派生类,由于这个行为的目的是跟随球的位置而让镜头做旋转,所以没有所谓的目标值,所以它的Tick函数中不需要执行LerpAlpha,而是执行以下三步:一、获取要跟随物体的位置(比如球的位置);二、根据跟随物体的位置计算出要旋转的角度,并根据设置的旋转范围对旋转角度进行clamp;三、根据第二部算出来的角度,设置镜头的水平转向。
其中,根据物体位置计算出旋转角度较为复杂,可以策划定义球应该在屏幕左或者右四分之一处,转换成程序语言也就是FOV的四分之一,所以需要先让镜头中央对准球,然后算出FOV/4,再使镜头往左或者右旋转FOV/4。
图2示意性示出本公开示例性实施例中一种游戏场景下行为树的示意图。在处于跳球场景中时,即比赛开场对应的行为树参考图2所示,包括镜头初始化、等待、镜头下沉等顺序节点,也包括初始FOV、初始旋转这类并行节点。
图3示意性示出本公开示例性实施例中另一种游戏场景下行为树的示意图。在处于镜头跟随场景时,也就是比赛开场后非高光时刻的镜头聚焦拍摄,其行为树参考图3所示,其中包括镜头上浮、镜头向下旋转、拉远镜头以及镜头跟随球转向的顺序节点。
基于上述方法,通过配置行为树来控制游戏画面的镜头逻辑,一方面可以将镜头逻辑可视化,有助于理清条理;另一方面,在基础的逻辑节点写完后,可以方便地通过编辑行为树中的节点和参数来调整镜头行为,无需再改动代码,进而减少架设摄像机跟随,只需微调即可,降低成本。
在本公开的一个实施例中,所述方法还包括:在所述游戏蓝图中设置所述游戏用于拍摄的摄像机;基于所述摄像机确定所述拍摄策略,以根据所述拍摄策略配置所述行为树。
得到丰富多彩的游戏画面需要不同的摄像机配合工作,因此首先在比赛蓝图中创建多个用于拍摄的摄像机,摄像机的位置可以根据该游戏的情况设定,还是以篮球比赛为例,例如在中场、三分球线、禁区、底线等位置架设摄像机,足球比赛、棒球比赛等也同样可以根据游戏画面的需要架设摄像机。
每台摄像机都有其对应的机位信息,在根据拍摄策略配置行为树时,就可以利用机位信息寻找需要控制的摄像机。
步骤S1,实时获取游戏的场景数据。
在本公开的一个实施例中,所述场景数据包括目标对象的位置数据、目标角色的位置数据以及目标对象和目标角色之间的相对位置数据。
其中,目标对象和目标角色是游戏中确定游戏场景中的重要部分,目标对象在不同的游戏中可以不同,例如可以是足球、篮球、乒乓球等,而目标角色则是与目标对象相关联的虚拟角色,比如持球者,传球对象等。
在获取场景数据时,可以通过当前摄像机拍摄的画面来获取场景数据,也可以通过各个摄像机获取当前赛场上的场景数据。
步骤S2,基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树。
具体而言,将场景数据投射到游戏蓝图中的Ai控制器,基于预先编写好的控制器逻辑识别场景数据对应的游戏场景,然后提取该游戏场景对应的行为树。
步骤S3,结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面。
在本公开的一个实施例中,所述所述结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面,包括:基于所述行为树的执行逻辑确定一待执行节点;根据所述场景数据确定所述待执行节点对应的目标拍摄信息;按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点;重复上述执行节点的过程遍历运行所述行为树,并根据所述视频数据生成所述游戏画面。
具体而言,运行行为树也就是从该行为树的根节点开始遍历执行整棵行为树的所有节点。在执行每一个待执行节点时,需要根据当前赛场上的场景数据确定节点的目标拍摄信息,然后再按照目标拍摄信息来执行节点生成视频数据,生成游戏画面。
其中,目标拍摄信息包括目标摄像机以及所述目标摄像机的摄像机参数值。
目标摄像机就是执行待执行节点时需要使用的目标摄像机的机位信息。可以预设确定目标摄像机的规则,比如若球在左半场,球应当在屏幕左边的1/4处;若球在右半场,球应当在屏幕右边的1/4处,一次来选取合适的目标摄像机进行拍摄。
摄像机参数值也就是指摄像机高度、摄像机角度、摄像机视角等一种或多种摄像机参数的参数值。在步骤S0中介绍了设置摄像机参数修改的逻辑,通过场景数据确定摄像机参数修改的数值,最终得到各摄像机参数的参数值。
接下来,根据图2和图3两个行为树详细介绍执行行为树的过程。
参考图2所示,执行跳球非传球飞行中对应的行为树,是由一连串的摄像机行为(Sequence)组成的,具体步骤如下:
步骤1:执行镜头初始化,首先执行设置初始位置节点,初始化镜头的位置,之后执行初始FOV和初始旋转两个并行节点,实现初始化镜头的FOV和镜头的角度,根据该摄像机参数生成的游戏画面效果如图4所示,呈现的画面为游戏场地的天花板;
步骤2:执行等待节点,即保持镜头初始化状态拍摄天花板0.5秒;
步骤3:执行镜头下沉,使用镜头下沉移动和镜头向下旋转两个并行节点同时执行,游戏画面效果如图5所示;
步骤4:执行等待节点,此时镜头已经下降到接近球员的腰部高度,并且角度是平视的,拍摄0.2秒;
步骤5:执行拉近镜头,通过设置FOV拉近镜头,聚焦到场中央的球上,游戏画面效果如图6所示;
步骤6:执行等待节点,直至跳球场景结束,进入下一行为树。
接下来执行镜头跟随场景对应的行为树时,即跳球场景中步骤6中接下来的游戏场景。
在跳球场景的最后,镜头的状态是:高度:与球员腰平齐,角度:平视球员腰部,FOV:拉近,聚焦到场中央,在跳球结束后,需要将镜头拉回高处,并俯视球场,并跟随球的位置修改镜头的水平转向。
因此,在执行镜头跟随场景对应的行为树时,参考图3所示,首先执行镜头上浮节点,然后是镜头向下旋转节点,之后是拉远镜头节点,最后是镜头跟随球转向节点,游戏画面效果如图7所示。
在本公开的一个实施例中,在所述按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点之前,所述方法还包括:获取所述行为树中当前节点对应的当前拍摄信息;基于所述当前拍摄信息和所述目标拍摄信息判断是否满足镜头平滑条件;在满足所述镜头平滑条件时,基于线性插值函数生成所述视频数据。
在生成游戏画面时,考虑到镜头切换的顺畅,降低衔接段落感,可以采用lerp(线性插值)在满足条件时将镜头进行平滑化,使得让不同镜头切换更加顺滑。
可以设置参数差值区间,当当前拍摄信息中摄像机参数和目标拍摄信息中的摄像机参数差值在差值区间之外,则判断满足镜头平滑条件,在差值区间之内,则不需要进行插值处理。
图8示意性示出本公开示例性实施例中一种游戏画面生成装置的组成示意图,如图8所示,该游戏画面生成装置800可以包括获取模块801、识别模块802以及执行模块803。其中:
获取模块801,用于实时获取游戏的场景数据;
识别模块802,用于基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;
执行模块803,用于结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面。
根据本公开的示例性实施例,所述游戏画面生成装置800还包括蓝图模块(图中未示出),用于对所述游戏的场景抽象成类得到游戏场景;将所述游戏场景对应的拍摄策略进行映射以创建所述行为树;基于所述游戏场景以及所述游戏场景对应的行为树生成所述游戏蓝图。
根据本公开的示例性实施例,所述蓝图模块还包括摄像机单元,用于在所述游戏蓝图中设置所述游戏用于拍摄的摄像机;基于所述摄像机确定所述拍摄策略,以根据所述拍摄策略配置所述行为树。
根据本公开的示例性实施例,所述执行模块803用于基于所述行为树的执行逻辑确定一待执行节点;根据所述场景数据确定所述待执行节点对应的目标拍摄信息;按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点;重复上述执行节点的过程遍历运行所述行为树,并根据所述视频数据生成所述游戏画面。
根据本公开的示例性实施例,所述目标拍摄信息包括目标摄像机以及所述目标摄像机的摄像机参数值;其中,所述摄像机参数值包括摄像机高度、摄像机角度、摄像机视角中的一种或多种摄像机参数的参数值。
根据本公开的示例性实施例,所述游戏画面生成装置800还包括平滑模块(图中未示出),用于获取所述行为树中当前节点对应的当前拍摄信息;基于所述当前拍摄信息和所述目标拍摄信息判断是否满足镜头平滑条件;在满足所述镜头平滑条件时,基于线性插值函数生成所述视频数据。
根据本公开的示例性实施例,所述场景数据包括目标对象的位置数据、目标角色的位置数据以及目标对象和目标角色之间的相对位置数据。
上述的游戏画面生成装置800中各模块的具体细节已经在对应的游戏画面生成方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的存储介质。图9示意性示出本公开示例性实施例中一种计算机可读存储介质的示意图,如图9所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品900,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如手机上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。图10示意性示出本公开示例性实施例中一种电子设备的计算机系统的结构示意图。
需要说明的是,图10示出的电子设备的计算机系统1000仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图10所示,计算机系统1000包括中央处理单元(Central Processing Unit,CPU)1001,其可以根据存储在只读存储器(Read-Only Memory,ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(Random Access Memory,RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有系统操作所需的各种程序和数据。CPU1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(Input/Output,I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本公开的系统中限定的各种功能。
需要说明的是,本公开实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (8)

1.一种游戏画面生成方法,其特征在于,包括:
实时获取游戏的场景数据;其中,所述场景数据包括目标对象的位置数据、目标角色的位置数据以及目标对象和目标角色之间的相对位置数据;
基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;
结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面;
其中,所述游戏蓝图是按照以下步骤创建的:
对所述游戏的场景抽象成类得到游戏场景;
将所述游戏场景对应的拍摄策略进行映射以创建所述行为树;
基于所述游戏场景以及所述游戏场景对应的行为树生成所述游戏蓝图。
2.根据权利要求1所述的游戏画面生成方法,其特征在于,所述方法还包括:
在所述游戏蓝图中设置所述游戏用于拍摄的摄像机;
基于所述摄像机确定所述拍摄策略,以根据所述拍摄策略配置所述行为树。
3.根据权利要求1所述的游戏画面生成方法,其特征在于,所述结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面,包括:
基于所述行为树的执行逻辑确定一待执行节点;
根据所述场景数据确定所述待执行节点对应的目标拍摄信息;
按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点;
重复上述执行节点的过程遍历运行所述行为树,并根据所述视频数据生成所述游戏画面。
4.根据权利要求3所述的游戏画面生成方法,其特征在于,所述目标拍摄信息包括目标摄像机以及所述目标摄像机的摄像机参数值;其中,所述摄像机参数值包括摄像机高度、摄像机角度、摄像机视角中的一种或多种摄像机参数的参数值。
5.根据权利要求3所述的游戏画面生成方法,其特征在于,在所述按照所述目标拍摄信息进行拍摄得到视频数据以执行所述待执行节点之前,所述方法还包括:
获取所述行为树中当前节点对应的当前拍摄信息;
基于所述当前拍摄信息和所述目标拍摄信息判断是否满足镜头平滑条件;
在满足所述镜头平滑条件时,基于线性插值函数生成所述视频数据。
6.一种游戏画面生成装置,其特征在于,包括:
获取模块,用于实时获取游戏的场景数据;其中,所述场景数据包括目标对象的位置数据、目标角色的位置数据以及目标对象和目标角色之间的相对位置数据;
识别模块,用于基于所述游戏的游戏蓝图识别所述场景数据对应的游戏场景,并提取所述游戏场景对应的行为树;
执行模块,用于结合所述场景数据运行所述行为树,以生成所述游戏的游戏画面;
其中,所述游戏蓝图是按照以下步骤创建的:
对所述游戏的场景抽象成类得到游戏场景;
将所述游戏场景对应的拍摄策略进行映射以创建所述行为树;
基于所述游戏场景以及所述游戏场景对应的行为树生成所述游戏蓝图。
7.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如权利要求1至5任一项所述的游戏画面生成方法。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至5任一项所述的游戏画面生成方法。
CN202110594655.6A 2021-05-28 2021-05-28 游戏画面生成方法、装置、存储介质及电子设备 Active CN113181654B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110594655.6A CN113181654B (zh) 2021-05-28 2021-05-28 游戏画面生成方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110594655.6A CN113181654B (zh) 2021-05-28 2021-05-28 游戏画面生成方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN113181654A CN113181654A (zh) 2021-07-30
CN113181654B true CN113181654B (zh) 2024-06-21

Family

ID=76986331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110594655.6A Active CN113181654B (zh) 2021-05-28 2021-05-28 游戏画面生成方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN113181654B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819179A (zh) * 2019-03-21 2019-05-28 腾讯科技(深圳)有限公司 一种视频剪辑方法和装置
CN112791417A (zh) * 2020-12-31 2021-05-14 上海米哈游天命科技有限公司 游戏画面的拍摄方法、装置、设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080018404A (ko) * 2006-08-24 2008-02-28 한국문화콘텐츠진흥원 게임 제작을 위한 배경 제작 프로그램을 저장한 컴퓨터에서읽을 수 있는 기록매체
JP2008186324A (ja) * 2007-01-31 2008-08-14 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲーム装置
JP4962978B2 (ja) * 2008-11-11 2012-06-27 株式会社コナミデジタルエンタテインメント ゲーム画像表示制御プログラム、ゲーム装置及びゲーム画像表示制御方法
CN106250100B (zh) * 2016-08-15 2018-05-11 腾讯科技(深圳)有限公司 系统逻辑控制方法及装置
CN110585713B (zh) * 2019-09-06 2021-10-15 腾讯科技(深圳)有限公司 游戏场景的阴影实现方法、装置、电子设备及可读介质
CN111131851B (zh) * 2019-12-31 2021-03-23 网易(杭州)网络有限公司 游戏直播控制方法及装置、计算机存储介质、电子设备
CN111467806B (zh) * 2020-05-15 2023-04-07 网易(杭州)网络有限公司 游戏场景中资源生成方法、装置、介质及电子设备
CN112843739B (zh) * 2020-12-31 2023-04-28 上海米哈游天命科技有限公司 拍摄方法、装置、电子设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819179A (zh) * 2019-03-21 2019-05-28 腾讯科技(深圳)有限公司 一种视频剪辑方法和装置
CN112791417A (zh) * 2020-12-31 2021-05-14 上海米哈游天命科技有限公司 游戏画面的拍摄方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN113181654A (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
CN111803946B (zh) 游戏中的镜头切换方法、装置和电子设备
US7084875B2 (en) Processing scene objects
US9299184B2 (en) Simulating performance of virtual camera
US9729765B2 (en) Mobile virtual cinematography system
US9925461B2 (en) Character model animation using stored recordings of player movement interface data
WO2022000971A1 (zh) 运镜模式的切换方法及装置、计算机程序、可读介质
US20120028707A1 (en) Game animations with multi-dimensional video game data
US20090219291A1 (en) Movie animation systems
US11159732B2 (en) Method, system and apparatus for capturing an image
US20190282902A1 (en) Runtime animation substitution
CN112354186A (zh) 游戏动画模型控制方法、装置、电子设备以及存储介质
WO2018107197A1 (en) Method, system and apparatus for configuring a virtual camera
CN112827172B (zh) 拍摄方法、装置、电子设备及存储介质
CN112843735B (zh) 游戏画面的拍摄方法、装置、设备及存储介质
US20240257429A1 (en) Neural animation layering for synthesizing movement
CN113181654B (zh) 游戏画面生成方法、装置、存储介质及电子设备
US20120021827A1 (en) Multi-dimensional video game world data recorder
CN116309969A (zh) 游戏内的剧情动画生成方法、装置、存储介质与电子设备
CN106558064A (zh) 一种基于元胞量子行为粒子群算法的目标跟踪方法
Prima et al. Secondary camera placement in Machinema using behavior trees
CN108109189A (zh) 动作共享方法及装置
CN114900679B (zh) 一种三维模型展示方法、装置、电子设备及可读存储介质
CN115779436B (zh) 动画切换方法、装置、设备及计算机可读存储介质
Shi et al. DAWN: Dual augmented memory network for unsupervised video object tracking
CN112843687B (zh) 拍摄方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant