CN111279394B - 虚拟角色的任务执行方法、装置及终端设备 - Google Patents
虚拟角色的任务执行方法、装置及终端设备 Download PDFInfo
- Publication number
- CN111279394B CN111279394B CN202080000007.7A CN202080000007A CN111279394B CN 111279394 B CN111279394 B CN 111279394B CN 202080000007 A CN202080000007 A CN 202080000007A CN 111279394 B CN111279394 B CN 111279394B
- Authority
- CN
- China
- Prior art keywords
- task
- semantic path
- node
- semantic
- path
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Abstract
本申请公开了一种虚拟角色的任务执行方法、装置及终端设备,包括:获取任务语义路径,其中,所述任务语义路径为目标任务所对应的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息;根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径;根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务。本申请实施例能够高效地实现虚拟角色在虚拟现实场景中的任务执行。
Description
技术领域
本申请属于虚拟现实技术领域,尤其涉及一种虚拟角色的任务执行方法、装置及终端设备。
背景技术
现有的虚拟现实场景通常由虚拟角色和虚拟环境组成。虚拟角色指的是通过虚拟现实技术模拟生成的具有人类形象、动物形象或者人为设计的虚幻形象(例如飞龙)的三维模型,它能够模拟人类或者动物的感知及行为方式。
现有的虚拟角色在虚拟现实场景中的执行任务时,往往需要结合虚拟环境的实际情况进行复杂的指令控制逻辑,导致虚拟角色的任务执行过程复杂、效率低。
发明内容
有鉴于此,本申请实施例提供了一种虚拟角色的任务执行方法、装置及终端设备,以解决现有技术中如何方便、高效地实现虚拟角色在虚拟现实场景中的任务执行的问题。
本申请第一方面提供一种虚拟角色的任务执行方法,包括:
获取任务语义路径,其中,所述任务语义路径为目标任务所对应的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息;
根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径;
根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务。
本申请第二方面提供一种虚拟角色的任务执行装置,包括:
任务语义路径获取模块,用于获取任务语义路径,其中,所述任务语义路径为目标任务所对应的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息;
奔赴路由模块,用于根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径;
行动路径模块,用于根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务。
本申请第三方面提供一种终端设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现上述虚拟角色的任务执行方法。
本申请第四方面提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现上述虚拟角色的任务执行方法。
本申请第五方面提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述虚拟角色的任务执行方法。
本申请实施例中,虚拟角色智能体通过获取目标任务对应的任务语义路径,并根据奔赴路由到达该任务语义路径,之后根据任务语义路径进行移动并根据节点的信息执行目标行为,从而完成目标任务。由于对于一个目标任务对应一条任务语义路径,到达该任务语义路径后根据该任务语义路径上的信息便可进行移动及目标行为执行,从而将复杂的任务执行过程转换为在任务语义路径上的一系列目标行为的执行,简化了虚拟角色智能体的任务执行的控制逻辑,从而方便、高效地实现虚拟角色在虚拟现实场景中的任务执行。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种虚拟角色的任务执行方法的实现流程示意图;
图2为本申请提供的一种虚拟现实场景的画面示意图;
图3为本申请提供的一种虚拟现实场景的结构示意图;
图4为本申请提供的一种确定奔赴路由的步骤示意图;
图5分别为本申请提供的一种奔赴情况的示意图;
图6为本申请提供的一种虚拟角色的任务执行装置的示意图;
图7为本申请提供的另一种虚拟角色的任务执行装置的示意图;
图8为本申请提供的一种终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例一:
图1示出了本申请实施例提供的一种虚拟角色的任务执行方法的流程示意图,图2示出了该虚拟角色的任务执行方法对应的应用场景示意图。
如图2所示,本申请实施例的应用场景具体为虚拟现实场景,该虚拟现实场景由虚拟角色、虚拟环境及语义路径组成,在一个虚拟现实场景中可以存在多条语义路径,其中语义路径为虚拟角色和虚拟环境交互的媒介,如图3给出了该虚拟现实场景对应的结构示意图。本申请实施例中的虚拟角色、虚拟环境及语义路径均为能够感知周围事物并能够作用于周围事物的智能体。具体地,该虚拟环境为具有三维模拟环境的几何图形信息的智能体;该语义路径为绘制在该虚拟环境的几何图形上的由节点和节点之间的有向连接组成的轨迹,其中节点的信息至少包括节点的节点位置信息、节点行为语义信息和节点环境语义信息。具体地,该有向连接构成每个节点可出发和进入的方向与距离的信息;节点位置信息记录该节点在虚拟环境上的坐标信息;节点行为语义信息记录虚拟角色行走到该节点时需对应完成的行为,可以用对应的行为标识号表示,例如用behaviorState=28表示此处需要开门或关门的行为;节点环境语义信息实时记录该节点所在位置的虚拟环境的状态信息,可以用对应的状态标识号表示,例如用environmentState=29表示该节点附近的一个房门为关闭状态。
具体来说,本申请实施例的语义路径具有以下三种功能:一是路径本身的功能,解决虚拟角色路由规划的问题;二是序列化虚拟角色行为的功能,解决虚拟角色为执行某项任务的行为规划问题;三是环境语义的功能,通过路径节点给出各位置节点附近相关实体的状态及其变化信息,解决虚拟角色对所处虚拟环境的感知问题。以往的虚拟现实场景中只包含虚拟角色和虚拟环境,虚拟角色需要实时分析虚拟环境,进行复杂控制逻辑来执行给定的任务。而本申请实施例中,在虚拟现实环境中增加了语义路径,虚拟角色执行目标任务时的路由规划、行为规划都由任务语义路径来实现,无需虚拟角色自身进行复杂的控制逻辑。
本申请实施例中如图1所示的虚拟角色的任务执行方法的执行主体为上述的虚拟现实场景中的虚拟角色,该虚拟角色为具有角色外形的几何图形信息(例如模拟的人形图形、动物图形等),且能够根据语义路径的信息及自身的任务自主进行路径规划、行为决策的智能体,也可称为虚拟人。如图1所示的虚拟角色的任务执行方法详述如下:
在S101中,获取任务语义路径,其中,所述任务语义路径为目标任务所对应的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息。
本申请实施例中的任务语义路径为与目标任务对应的语义路径,语义路径的定义请参见上面的相关描述,此处不再赘述。虚拟角色可以在接到目标任务后,为该目标任务匹配对应的任务语义路径;或者,虚拟角色可以直接以获取用户输入的任务语义路径的方式来接收目标任务。
可选地,在所述S101之前,还包括:
获取执行目标任务的任务指示;
对应地,所述步骤S101,包括:
根据所述任务指示确定任务语义路径。
虚拟角色通过自身的任务调度模块获取执行目任务的任务指示。具体地,虚拟角色通过任务调度模块接收用户的目标指令,根据该目标指令获取执行目标任务的任务指示。例如,用户通过虚拟现实场景操作界面,点击指定按钮(例如指示执行巡逻任务的按钮)或者输入指定文字(例如“执行巡逻任务”的文字)作为目标指令,任务调度模块根据该目标指令获取执行指定的目标任务(例如巡逻任务)的任务指示。或者,虚拟角色的任务调度模块预先存入了任务调度信息,当虚拟角色运行到预设时间或者到达预设地点时,自动获得执行目标任务的任务指示。
之后,在S101中,虚拟角色根据该任务指示确定任务语义路径。本申请实施例中的任务指示携带目标任务的标识号,虚拟角色自身预存了多条任务语义路径,每条语义任务语义路径与其对应的目标任务的标识号对应预存;虚拟角色根据任务指示中携带的目标任务的标识号,确定与目标任务对应预存的任务语义路径。
本申请实施例中,虚拟角色根据任务指示,自主根据执行目标任务的任务指示确定对应的任务语义路径,而无需人为再输入一条语义路径,因此能够提高虚拟角色的自治性和智能性。提高虚拟角色的运行效率。
在S102中,根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
本申请实施例中的奔赴路由指的是虚拟角色从当前位置前往任务语义路径的路径。虚拟角色根据自身当前的位置和任务语义路径上任意一个节点的节点位置信息,确定奔赴路由,到达该任务语义路径上的该节点,从而抵达该任务语义路径。
可选地,如图4所示,所述步骤S102具体包括步骤S1021至步骤S1023:
S1021:根据所述虚拟角色的位置及所述任务语义路径的节点位置信息,确定目标节点,其中所述目标节点为所述任务语义路径上与所述虚拟角色距离最近的节点。
S1022:根据所述目标节点建立筒视线。
S1023:根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
在S1021中,根据虚拟角色当前的位置和任务语义路径每个节点的节点位置信息,确定目标节点。本申请实施例中的目标节点在任务语义路径上确定的一个与虚拟角色当前位置距离最近的节点。具体地,可以根据虚拟角色当前的位置信息和任务语义路径上每个节点的位置信息,计算出虚拟角色由当前位置分别到达任务语义路径上每个节点的路程,确定其中最短路程对应的节点即为目标节点。
在S1022中,虚拟角色在当前位置与目标节点之间建立筒视线。具体地,以虚拟角色面向该目标节点时的虚拟角色外形轮廓为起始横截面,以经过目标节点且与该起始横截面平行的平面为终点横截面,构建几何柱体;在该几何柱体上的与起始横截面垂直的、指向终点横截面的视线束即为筒视线。
在S1023中,本申请实施例中虚拟角色所处环境包括虚拟角色所处的虚拟环境以及该虚拟环境中的其它虚拟角色,筒视线与虚拟角色所处环境的碰撞指的是筒视线和虚拟环境智能体上的物体或者其它虚拟角色存在接触,筒视线与虚拟角色所处环境的碰撞信息包括筒视线是否与虚拟角色所处环境有碰撞的判断信息,以及有碰撞时碰撞对象的具体信息(例如碰撞对象的类型具体为物体还是虚拟角色的信息、还可以包括碰撞对象的位置信息等)。根据筒视线和虚拟角色所处环境的碰撞信息,确定虚拟角色前往目标节点的奔赴路由,使得虚拟角色能够根据奔赴路由避开碰撞对象并到达目标节点,从而到达任务语义路径。
可选地,在虚拟角色到达目标节点之前,虚拟角色每隔预设时长或者每行走预设长度的路程则重新更新一次筒视线,以使虚拟角色能够及时获取最新的碰撞信息,确定更加准确的奔赴路由。
本申请实施例中,通过在任务语义路径上确定和虚拟角色最近的节点为目标节点,使得虚拟角色能够根据该目标节点更快地到达任务语义路径;并且由于能够根据目标节点建立筒视线,根据筒视线来确定到达目标节点的奔赴路由,因此使得虚拟角色能够更加准确地避开障碍,更加合理、高效地到达任务语义路径。
可选地,所述步骤S1023,具体包括:
若所述筒视线与所述虚拟角色所处环境不存在碰撞,则确定所述虚拟角色与所述目标节点的连线为奔赴路由,根据所述奔赴路由到达所述任务语义路径。
当筒视线和虚拟角色所处环境不存在任何碰撞时,则直接以虚拟角色和目标节点之间的连线为奔赴路由,虚拟角色根据该奔赴路由径直到达目标节点,从而抵达任务语义路径。本申请实施例中,由于在筒视线和虚拟角色所处环境不存在碰撞时,虚拟角色和目标节点之间的连线为虚拟角色到达任务语义路径的最短路径,因此以该路径为奔赴路由,能够节省虚拟角色到达任务语义路径所需花费的时间,从而提高虚拟角色执行目标任务的效率。
可选地,所述步骤S1023,具体包括:
若所述筒视线与所述虚拟角色所处环境存在碰撞,则根据所述碰撞信息确定奔赴路由及避让策略,并根据所述奔赴路由及避让策略到达所述任务语义路径。
当筒视线和虚拟角色所处环境存在碰撞时,碰撞信息至少包括与筒视线碰撞的碰撞对象的类型信息和位置信息,并根据该碰撞对象的类型信息和位置信息确定奔赴路由;之后,虚拟角色根据该奔赴路由到达目标节点,从而到达任务语义路径。具体地,若根据碰撞信息确定碰撞对象类型为其它虚拟角色,则确定奔赴路由为虚拟角色和目标节点之间的连线,并根据该其它虚拟角色的位置信息,确定虚拟角色在与该其它虚拟角色得到距离到达目标避让距离时,执行向左或者向右偏移的避让动作作为避让策略,使得虚拟角色从该其它虚拟角色旁边经过,从而避免在移动时与该虚拟角色发生碰撞。具体地,若根据碰撞信息确定碰撞对象类型为不携带对应的语义路径的物体时,则根据该物体的位置信息,通过势函数避障方法确定奔赴路由,其中势函数避障法指的是通过人工势场法,确定目标节点对虚拟角色的引力以及碰撞对象对虚拟角色的斥力,根据这两个力的合力确定虚拟角色的奔赴路由。具体地,若根据碰撞信息确定碰撞对象类型为携带对应的语义路径的物体时,则结合该物体的位置信息和该物体对应的语义路径确定奔赴路由,使得虚拟角色借助该物体对应的语义路径到达任务语义路径。
本申请实施例中,由于虚拟角色能够根据碰撞对象的类型信息和位置信息具体来确定奔赴路由,使得虚拟角色能够更加准确有效地避开碰撞对象到达任务语义路径,因此能够提高虚拟角色到达任务语义路径的效率,从而提高虚拟角色的任务执行效率。
可选地,所述步骤S1023,具体包括:
S102301:若所述筒视线与所述虚拟角色所处环境中的物体存在碰撞,且所述物体存在对应的语义路径,则获取物体语义路径,其中所述物体语义路径为所述物体对应的语义路径;
S102302A:若当前未存在让路语义路径或者预存的让路语义路径与所述物体语义路径不一致,则执行以下步骤:
A1:根据所述物体语义路径更新所述让路语义路径;
A2:确定所述让路语义路径上与所述虚拟角色距离最近的节点为第一让路节点;
A3:根据所述第一让路节点到达所述让路语义路径,并根据所述第一让路节点的信息执行对应的行为;
A4:在所述让路语义路径上确定与所述任务语义路径距离最近的节点为第二让路节点;
A5:根据所述第一让路节点及所述第二让路节点,确定预设让路方向并进行存储;
A6:根据所述预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径过程需经过的其它语义路径。
在S102301中,若虚拟角色检测到筒视线与环境中的物体存在碰撞,且该物体存在物体语义路径,则获取该物体语义路径。其中物体语义路径为该物体对应的语义路径,该物体语义路径为一条绘制在该物体上或者该物体周围的语义路径,该语义路径上的有向连接和节点的信息用于指导虚拟角色通过或者绕过该物体。即,本申请实施例中,除了和目标任务对应的任务语义路径外,虚拟角色经过的物体也可能存在自身的物体语义路径,以指导虚拟角色通过或者绕过该物体,从而抵达任务语义路径。例如,若该物体为一块石头,在其对应的物体语义路径可以是围绕在石头周围、指导虚拟角色绕过该石头的语义路径;或者其对应的物体语义路径可以是位于石头之上、指导虚拟角色翻越该石头的语义路径。或者,该物体为一堵嵌有一扇门的围墙,其对应的物体语义路径可以是在该指导虚拟角色前往围墙上的门,并在该门的节点上携带指导虚拟角色执行开门动作的节点动作语义信息的语义路径。
本申请实施例中,让路语义路径为虚拟角色前往任务语义路径过程需要经过的其它语义路径,虚拟角色借助该让路语义路径可以避开碰撞对象、在奔赴过程中执行指定动作,以高效地到达任务语义路径执行目标任务。在获取任务语义路径的初始状态时,预存的让路语义路径为空;当虚拟角色确定让路语义路径后在该让路语义路径上行走时,该让路语义路径存储在缓存单元;当虚拟角色走出该让路语义路径后,预存的让路语义路径重新置空。
在S102302A中,若当前未存在预存的让路语义路径时,则说明虚拟角色当前未位于任何一条语义路径上;若当前存在预存的让路语义路径,但该让路语义路径与步骤S103021中的物体语义路径不一致,则说明当前虚拟角色正位于一条让路语义路径上,但该让路语义路径与步骤S102301中获取的物体语义路径并不是同一条物体语义路径。这两种情况都说明当前的物体语义路径为最新的有一条可借由前往任务语义路径的语义路径,虚拟角色需要以该物体语义路径作为新的让路语义路径,并从当前位置前往该新的让路语义路径,借由该新的让路语义路径到达任务语义路径,具体执行步骤如下:
在A1中,将S102302A中获取的物体语义路径作为新的让路语义路径。具体地,若当前未存在预存的让路语义路径时,则将该物体语义路径作为让路语义路径并进行存储。若当前存在预存的让路语义路径,但该让路语义路径与物体语义路径不一致时,则将预存的让路语义路径更新为物体语义路径。
在A2中,在最新确定的让路语义路径上确定第一让路节点,该第一让路节点为该让路语义路径上与当前虚拟角色的距离最近的节点。虚拟角色通过该第一让路节点,能以最短时间到达让路语义路径。如图5所示,虚拟角色需要经过让路语义路径到到达任务语义路径,其中,让路语义路径上的节点51为与虚拟角色当前距离最近的第一让路节点。
在A3中,虚拟角色移动到第一让路节点,从而到达让路语义路径。并且,虚拟角色根据该第一让路节点上的节点行为语义信息和节点环境语义信息,执行对应的行为,例如开门行为,翻越石头行为等。
在A4中,虚拟角色在让路语义路径上确定第二让路节点,该第二让路节点为让路语义路径上与任务语语义路径距离最近的节点。如图5所示,让路语义路径上的节点52为与任务语义路径距离最近的第二让路节点,具体地,该第二让路节点与任务语义路径上的目标节点53距离最近。
在A5中,虚拟角色根据第一让路节点的位置信息和第二让路节点位置信息,确定从第一让路节点前往第二让路节点路程最短的方向为预设让路方向,并对该预设让路方向进行存储。如图5所示,在双向环形语义的让路语义路径上,第一让路节点到达第二让路节点路程最短的方向为逆时针方向,即从第一让路节点51经过节点54到达第二让路节点52移动方向对应的路程最短,因此以逆时针方向作为预设让路方向。
在A6中,虚拟角色到达第一让路节点后,沿预设让路方向前往让路语义路径的下一节点,并根据该让路语义路径的下一节点的节点行为语义信息和节点环境语义信息,执行对应的行为,之后返回步骤S1022,重新根据目标节点建立筒视线。即,虚拟角色每移动到让路语义路径上的下一节点时,都要重新建立筒视线,并确定接下来的奔赴路由,从而更加准确高效地到达任务语义路径。
本申请实施例中,由于当筒视线和存在物体语义路径的物体存在碰撞时,能够以该物体语义路径作为让路语义路径,借由该让路语义路径前往任务语义路径,使得虚拟角色能够避开碰撞对象、在奔赴过程中执行指定动作,以高效地到达任务语义路径执行目标任务。
可选地,在所述步骤S102301之后,还包括:
S102302B:若所述物体语义路径与预存的让路语义路径一致,则根据预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径时经过的语义路径。
当虚拟角色获取到的物体语义路径和预存的让路语义路径一致时,则说明该物体语义路径已被作为让路语义路径存储且虚拟角色当前位于该让路语义路径上,此时直接根据提前存储的预设让路方向继续前往让路语义路径的下一节点,根据该让路语义路径的下一节点的节点行为语义信息和节点环境语义信息,执行对应的行为,之后返回步骤S1022,重新根据目标节点建立筒视线,以确定接下来的奔赴路由。例如,如图5所示,若虚拟角色移动到节点54上,根据目标节点53建立筒视线后,在步骤S102301中又检测到筒视线与物体50存在碰撞信息,获取物体50对应的物体语义路径,而该物体语义路径已作为预存的让路语义路径,虚拟角色已在该物体语义路径上,此时虚拟角色无需再更新让路语义路径,也无需再确定预设让路方向,直接根据预存的让路语义路径,按照预存的预设让路方向(逆时针方向)前往下一节点52即可;到达节点52后,根据节点52的信息执行对应的行为,并返回步骤S1022,重新根据目标节点建立筒视线。
虚拟角色到达让路语义路径的第二让路节点52后,目标节点53建立的筒视线不再和物体50存在碰撞,则让路语义路径清空,虚拟角色以节点52和节点53之间的连线作为接下来的奔赴路由,到达目标节点53,从而抵达任务语义路径。
本申请实施例中,由于当获取到的物体语义路径和让路语义路径一致时,直接根据预存的让路语义路径和预存的预设让路方向即可确定下一步的奔赴路由,由于无需重新更新让路语义路径,也无需重现确定预设让路方向因此能够提高虚拟角色到达任务语义路径的效率,从而提高任务执行效率。
在S103中,根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务。
虚拟角色到达任务语义路径后,根据任务语义路径上的有向连接和节点的信息确定目标任务执行时的行动路由,根据该行动路由进行移动;并根据节点的信息在节点上确定并执行对应的目标行为,从而完成目标任务。例如,若目标任务为巡逻任务,则任务语义路径为巡逻任务语义路径,该巡逻任务语义路径规划了虚拟角色的巡逻路由,并在该巡逻任务语义路径的节点上标识了节点行为语义信息、节点环境语义信息,虚拟角色根据该巡逻任务语义路径可进行移动巡逻,并在巡逻任务语义路径上执行对应的巡逻行为,从而完成巡逻任务。
可选地,所述步骤S103包括:
S1031:根据所述任务语义路径的所述有向连接及所述节点的节点位置信息,在所述任务语义路径上进行移动;
S1032:当所述虚拟角色到达所述任务语义路径的节点时,根据所述节点的节点行为语义信息及节点环境语义信息,执行所述目标行为。
在S1031中,虚拟角色具体根据任务语义路径的有向连接确定移动的方向,根据任务语义路径上的节点的位置信息确定每次移动的目的点,根据该移动的方向和目的点,在任务语义路径上进行移动。
在S1032中,当虚拟角色到达任务语义路径的节点时,即当虚拟角色检测到自身的位置信息和任务语义路径其中的一个节点的节点位置信息一致时,说明虚拟角色当前移动到该节点,此时根据该节点的节点行为语义信息和节点环境语义信息,执行目标行为。
具体地,步骤S1032中所述根据所述节点的节点行为语义信息和节点环境语义信息,执行目标行为,包括:
根据所述节点行为语义信息,确定目标行为;
根据所述目标行为对应的执行基及所述节点环境语义信息,执行目标动作以完成目标行为,其中所述执行基为将环境语义信息和目标动作对应存储的二元组。
当虚拟角色的位置信息和语义路径的一个节点的节点位置信息一致时,获取该节点的节点行为语义信息,确定在该节点上虚拟角色需完成的目标行为。例如,当虚拟角色的位置信息和任务语义路径的节点A的节点位置信息一致时,则获取节点A的节点行为语义信息“behaviorState=27”(表示此处需要进行窗户检查行为),确定在该节点上虚拟角色智能体需完成的目标行为为窗户检查行为。
在虚拟角色中预先存储了每个行为的执行基,该执行基是一个将环境语义信息和目标动作对应存储的二元组(b,z),表示目标动作b在环境语义信息为z时执行。根据目标行为获取对应的多个执行基,并根据节点环境语义信息查找当前环境语义信息对应的目标动作b。例如,设目标行为是窗户检查行为,虚拟角色中预先存储了该目标行为对应的两个执行基:(开窗动作,窗户为关闭状态),(关窗动作,窗户为关闭状态);设当前的节点环境语义信息为environmentState=20(表示该节点附近的一个窗户为关闭状态),则虚拟角色根据该节点环境语义信息查询窗的操作行为的两个执行基,确定当前要执行的目标动作为开窗动作;之后,执行该开窗动作,并分析开窗动作前后的窗户图像和预存的标准窗户关闭、窗户开启后的图像是否一致,若一致,则说明该窗户正常无损坏,从而完成在节点A上对窗户检查行为。具体地,该目标动作的执行可以通过虚拟角色运行目标动画并向虚拟环境传达目标动作的信息来实现。例如,若目标动作为开窗动作,则播放与开窗动作对应存储的目标动画,通过该动画在虚拟场景画面上表现该虚拟角色执行了开窗动作。在执行目标动画的同时或者之后,虚拟角色向虚拟环境传达目标动作的信息,可以通过传达目标动作对应的动作标识号来向虚拟环境传达当前该虚拟角色执行了目标动作,以让虚拟环境根据该目标动作改变窗的状态。
本申请实施例中,虚拟角色根据任务语义路径上的有向连接和节点位置信息确定执行目标任务对应的行动路由,根据任务语义路径上节点的行为语义信息和节点环境语义信息确定在每个节点上应完成的目标行为,从而能够根据任务语义路径上的信息准确高效地完成目标任务。
可选地,所述步骤S103还包括:
若检测到异常任务,则获取所述异常任务对应的异常处理行为及异常处理位置;
到达所述异常处理位置执行所述异常处理行为;
返回所述根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径的步骤。
当虚拟角色在任务语义路径上完成目标任务的同时,若检测到异常任务,则获取该异常任务对应的异常处理行为和异常处理位置。可选地,虚拟角色通过获取报警信息来获取异常任务,确定异常处理行为和异常处理位置。该异常任务可以包括救火任务、疏散人群任务等。例如,当在节点A附近存在火情时,虚拟环境向虚拟角色发出存在火情的报警信息,该报警信息包括火情发生位置,虚拟角色获取到该报警信息后,确定异常处理行为为灭火行为,异常处理位置为火情发生位置。
虚拟角色根据确定的异常处理行为及异常处理位置,前往异常处理位置执行异常处理行为。例如,虚拟角色前往火情发生位置执行灭火行为。
当虚拟角色已执行异常处理行为,完成异常任务后,返回步骤S102,重新确定奔赴路由返回任务语义路径,继续完成目标任务。
本申请实施例中,虚拟角色除了能够根据任务语义路径完成目标任务外,还能够处理异常任务,并在处理异常任务后返回任务语义路径继续完成目标任务,从而进一步提高虚拟角色任务执行的灵活性及效率。
本申请实施例中,虚拟角色智能体通过获取目标任务对应的任务语义路径,并根据奔赴路由到达该任务语义路径,之后根据任务语义路径进行移动并根据节点的信息执行目标行为,从而完成目标任务。由于对于一个目标任务对应一条任务语义路径,到达该任务语义路径后根据该任务语义路径上的信息便可进行移动及目标行为执行,从而将复杂的任务执行过程转换为在任务语义路径上的一系列目标行为的执行,简化了虚拟角色智能体的任务执行的控制逻辑,从而方便、高效地实现虚拟角色在虚拟现实场景中的任务执行。
实施例二:
图6示出了本申请实施例提供的一种虚拟角色的任务执行装置的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分:
该虚拟角色的任务执行装置包括:任务语义路径获取模块61、奔赴路由模块62、行动路径模块63。其中:
任务语义路径获取模块61,用于获取任务语义路径,其中,所述任务语义路径为目标任务所对应的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息。
奔赴路由模块62,用于根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
行动路径模块63,用于根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务。
可选地,所述虚拟角色的任务执行装置还包括:
任务调用模块60,用于获取执行目标任务的任务指示。
对应地,对应地,所述任务语义路径获取模块,具体用于根据所述任务指示确定任务语义路径。
可选地,本申请实施例中,一个虚拟角色的任务装置可以由一个任务调用模块和多个对应的任务语义路径获取模块、奔赴路由模块、行动路径模块组成,如图7所示,一个任务调用模块可以获取多个目标任务的任务指示,而每个目标任务对应一个任务语义路径获取模块、一个奔赴路由模块和一个行动路径模块。可选地,本申请实施例中,多个奔赴路由模块和多个行动模块均可以通过调用虚拟角色的功能调度模块调度行走过程中需根据物体语义路径或者任务语义路径执行的行为、通过调用虚拟角色的动作调度模块确定和行为对应的动作、调用虚拟角色的基础移动模块来进行移动。
可选地,所述奔赴路由模块包括:
目标节点确定单元,用于根据所述虚拟角色的位置及所述任务语义路径的节点位置信息,确定目标节点,其中所述目标节点为所述任务语义路径上与所述虚拟角色距离最近的节点;
筒视线建立单元,用于根据所述目标节点建立筒视线;
奔赴路由确定单元,用于根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
可选地,所述奔赴路由确定单元,具体用于若所述筒视线与所述虚拟角色所处环境不存在碰撞,则确定所述虚拟角色与所述目标节点的连线为奔赴路由,根据所述奔赴路由到达所述任务语义路径。
可选地,所述碰撞信息包含碰撞对象的类型信息和位置信息;所述奔赴路由确定单元,具体用于若所述筒视线与所述虚拟角色所处环境存在碰撞,则根据所述碰撞对象的类型信息和位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
可选地,所述奔赴路由确定单元包括物体语义路径获取单元和第一奔赴单元:
所述物体语义路径获取单元,用于若所述筒视线与所述虚拟角色所处环境中的物体存在碰撞,且所述物体存在对应的语义路径,则获取物体语义路径,其中所述物体语义路径为所述物体对应的语义路径;
所述第一奔赴单元,用于若当前未存在预存的让路语义路径或者预存的让路语义路径与所述物体语义路径不一致,则执行以下步骤:
根据所述物体语义路径更新所述让路语义路径;
确定所述让路语义路径上与所述虚拟角色距离最近的节点为第一让路节点;
根据所述第一让路节点到达所述让路语义路径,并根据所述第一让路节点的信息执行对应的行为;
在所述让路语义路径上确定与所述任务语义路径距离最近的节点为第二让路节点;
根据所述第一让路节点及所述第二让路节点,确定预设让路方向并进行存储;
根据所述预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并指示所述筒视线建立单元返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径过程需经过的其它语义路径。
可选地,所述奔赴路由确定单元还包括:
第二奔赴单元,用于若所述物体语义路径与预存的让路语义路径一致,则根据预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并指示所述筒视线建立单元返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径时经过的语义路径。
可选地,所述行动路径模块包括移动单元和目标行为执行单元:
所述移动单元,用于根据所述任务语义路径的所述有向连接及所述节点的节点位置信息,在所述任务语义路径上进行移动;
所述目标行为执行单元,用于当所述虚拟角色到达所述任务语义路径的节点时,根据所述节点的节点行为语义信息及节点环境语义信息,执行所述目标行为。
可选地,所述装置还包括:
异常任务处理模块,用于若检测到异常任务,则获取所述异常任务对应的异常处理行为及异常处理位置;到达所述异常处理位置执行所述异常处理行为;返回指示奔赴路由模块执行所述根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径的步骤。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
实施例三:
图8是本发明一实施例提供的终端设备的示意图。如图8所示,该实施例的终端设备8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82,例如虚拟角色的任务执行程序。所述处理器80执行所述计算机程序82时实现上述各个虚拟角色的任务执行方法实施例中的步骤,例如图1所示的步骤S101至S103。或者,所述处理器80执行所述计算机程序82时实现上述各装置实施例中各模块/单元的功能,例如图6所示模块61至63的功能。
示例性的,所述计算机程序82可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器81中,并由所述处理器80执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序82在所述终端设备8中的执行过程。例如,所述计算机程序82可以被分割成任务语义路径获取模块、奔赴路由模块、行动路径模块。
所述终端设备8可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是终端设备8的示例,并不构成对终端设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81可以是所述终端设备8的内部存储单元,例如终端设备8的硬盘或内存。所述存储器81也可以是所述终端设备8的外部存储设备,例如所述终端设备8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述终端设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (18)
1.一种虚拟角色的任务执行方法,其特征在于,包括:
获取任务语义路径,其中,所述任务语义路径为根据目标任务的标识号,确定的与所述目标任务对应预存的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息;所述有向连接构成每个所述节点的可出发和进入的方向与距离的信息;
根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径;所述奔赴路由为所述虚拟角色从当前位置前往所述任务语义路径的路径;
根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务;其中,所述根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,包括:根据所述任务语义路径的所述有向连接及所述节点的节点位置信息,在所述任务语义路径上进行移动;当所述虚拟角色到达所述任务语义路径的节点时,根据所述节点的节点行为语义信息及节点环境语义信息,执行所述目标行为。
2.如权利要求1所述的虚拟角色的任务执行方法,其特征在于,在所述获取任务语义路径之前,还包括:
获取执行目标任务的任务指示;
对应地,所述获取任务语义路径,包括:
根据所述任务指示确定任务语义路径。
3.如权利要求1所述的虚拟角色的任务执行方法,其特征在于,所述根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径,包括:
根据所述虚拟角色的位置及所述任务语义路径的节点位置信息,确定目标节点,其中所述目标节点为所述任务语义路径上与所述虚拟角色距离最近的节点;
根据所述目标节点建立筒视线;
根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
4.如权利要求3所述的虚拟角色的任务执行方法,其特征在于,所述根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径包括:
若所述筒视线与所述虚拟角色所处环境不存在碰撞,则确定所述虚拟角色与所述目标节点的连线为奔赴路由,根据所述奔赴路由到达所述任务语义路径。
5.如权利要求3所述的虚拟角色的任务执行方法,其特征在于,所述碰撞信息包含碰撞对象的类型信息和位置信息,所述根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径包括:
若所述筒视线与所述虚拟角色所处环境存在碰撞,则根据所述碰撞对象的类型信息和位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
6.如权利要求3所述的虚拟角色的任务执行方法,其特征在于,所述根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径,包括:
若所述筒视线与所述虚拟角色所处环境中的物体存在碰撞,且所述物体存在对应的语义路径,则获取物体语义路径,其中所述物体语义路径为所述物体对应的语义路径;
若当前未存在预存的让路语义路径或者预存的让路语义路径与所述物体语义路径不一致,则执行以下步骤:
根据所述物体语义路径更新所述让路语义路径;
确定所述让路语义路径上与所述虚拟角色距离最近的节点为第一让路节点;
根据所述第一让路节点到达所述让路语义路径,并根据所述第一让路节点的信息执行对应的行为;
在所述让路语义路径上确定与所述任务语义路径距离最近的节点为第二让路节点;
根据所述第一让路节点及所述第二让路节点,确定预设让路方向并进行存储;
根据所述预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径过程需经过的其它语义路径。
7.如权利要求6所述的虚拟角色的任务执行方法,其特征在于,在所述若所述筒视线与所述虚拟角色所处环境中的物体存在碰撞,且所述物体存在对应的物体语义路径,则获取所述物体语义路径之后,还包括:
若所述物体语义路径与预存的让路语义路径一致,则根据预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径时经过的语义路径。
8.如权利要求1所述的虚拟角色的任务执行方法,其特征在于,在所述根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为的同时,还包括:
若检测到异常任务,则获取所述异常任务对应的异常处理行为及异常处理位置;
到达所述异常处理位置执行所述异常处理行为;
返回所述根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径的步骤。
9.一种虚拟角色的任务执行装置,其特征在于,包括:
任务语义路径获取模块,用于获取任务语义路径,其中,所述任务语义路径为根据目标任务的标识号,确定的与所述目标任务对应预存的语义路径,所述语义路径为绘制在虚拟环境的几何图形上的由节点和所述节点之间的有向连接组成的轨迹,所述节点的信息至少包括节点位置信息、节点行为语义信息及节点环境语义信息;所述有向连接构成每个所述节点的可出发和进入的方向与距离的信息;
奔赴路由模块,用于根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径;所述奔赴路由为所述虚拟角色从当前位置前往所述任务语义路径的路径;
行动路径模块,用于根据所述任务语义路径的所述有向连接及所述节点的信息,在所述任务语义路径上移动并执行目标行为,完成所述目标任务;其中,所述行动路径模块包括移动单元和目标行为执行单元:所述移动单元,用于根据所述任务语义路径的所述有向连接及所述节点的节点位置信息,在所述任务语义路径上进行移动;所述目标行为执行单元,用于当所述虚拟角色到达所述任务语义路径的节点时,根据所述节点的节点行为语义信息及节点环境语义信息,执行所述目标行为。
10.如权利要求9所述的虚拟角色的任务执行装置,其特征在于,所述装置还包括:
任务调用模块,用于获取执行目标任务的任务指示;
对应地,所述任务语义路径获取模块,具体用于根据所述任务指示确定任务语义路径。
11.如权利要求9所述的虚拟角色的任务执行装置,其特征在于,所述奔赴路由模块包括:
目标节点确定单元,用于根据所述虚拟角色的位置及所述任务语义路径的节点位置信息,确定目标节点,其中所述目标节点为所述任务语义路径上与所述虚拟角色距离最近的节点;
筒视线建立单元,用于根据所述目标节点建立筒视线;
奔赴路由确定单元,用于根据所述筒视线与所述虚拟角色所处环境的碰撞信息,确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
12.如权利要求11所述的虚拟角色的任务执行装置,其特征在于,
所述奔赴路由确定单元,具体用于若所述筒视线与所述虚拟角色所处环境不存在碰撞,则确定所述虚拟角色与所述目标节点的连线为奔赴路由,根据所述奔赴路由到达所述任务语义路径。
13.如权利要求11所述的虚拟角色的任务执行装置,其特征在于,所述碰撞信息包含碰撞对象的类型信息和位置信息;
所述奔赴路由确定单元,具体用于若所述筒视线与所述虚拟角色所处环境存在碰撞,则根据所述碰撞对象的类型信息和位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径。
14.如权利要求11所述的虚拟角色的任务执行装置,其特征在于,所述奔赴路由确定单元包括物体语义路径获取单元和第一奔赴单元:
所述物体语义路径获取单元,用于若所述筒视线与所述虚拟角色所处环境中的物体存在碰撞,且所述物体存在对应的语义路径,则获取物体语义路径,其中所述物体语义路径为所述物体对应的语义路径;
所述第一奔赴单元,用于若当前未存在预存的让路语义路径或者预存的让路语义路径与所述物体语义路径不一致,则执行以下步骤:
根据所述物体语义路径更新所述让路语义路径;
确定所述让路语义路径上与所述虚拟角色距离最近的节点为第一让路节点;
根据所述第一让路节点到达所述让路语义路径,并根据所述第一让路节点的信息执行对应的行为;
在所述让路语义路径上确定与所述任务语义路径距离最近的节点为第二让路节点;
根据所述第一让路节点及所述第二让路节点,确定预设让路方向并进行存储;
根据所述预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并指示所述筒视线建立单元返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径过程需经过的其它语义路径。
15.如权利要求14所述的虚拟角色的任务执行装置,其特征在于,所述奔赴路由确定单元还包括:
第二奔赴单元,用于若所述物体语义路径与预存的让路语义路径一致,则根据预设让路方向前往所述让路语义路径的下一节点,根据所述让路语义路径的下一节点的信息执行对应的行为,并指示所述筒视线建立单元返回所述根据所述目标节点建立筒视线的步骤;其中所述让路语义路径为所述虚拟角色前往所述任务语义路径时经过的语义路径。
16.如权利要求9所述的虚拟角色的任务执行装置,其特征在于,所述装置还包括:
异常任务处理模块,用于若检测到异常任务,则获取所述异常任务对应的异常处理行为及异常处理位置;到达所述异常处理位置执行所述异常处理行为;返回指示奔赴路由模块执行所述根据所述虚拟角色的位置及任务语义路径的节点位置信息确定奔赴路由,并根据所述奔赴路由到达所述任务语义路径的步骤。
17.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,当所述处理器执行所述计算机程序时,使得终端设备实现如权利要求1至8任一项所述方法的步骤。
18.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,当所述计算机程序被处理器执行时,使得终端设备实现如权利要求1至8任一项所述方法的步骤。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/070435 WO2021138761A1 (zh) | 2020-01-06 | 2020-01-06 | 虚拟角色的任务执行方法、装置及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111279394A CN111279394A (zh) | 2020-06-12 |
CN111279394B true CN111279394B (zh) | 2021-04-23 |
Family
ID=70999843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080000007.7A Active CN111279394B (zh) | 2020-01-06 | 2020-01-06 | 虚拟角色的任务执行方法、装置及终端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111279394B (zh) |
WO (1) | WO2021138761A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022021336A1 (zh) * | 2020-07-31 | 2022-02-03 | 深圳信息职业技术学院 | 目标追踪方法、装置、终端设备及存储介质 |
CN112650387A (zh) * | 2020-12-09 | 2021-04-13 | 郑州捷安高科股份有限公司 | 基于虚拟现实的方舱医院漫游提示方法及装置 |
CN113012300A (zh) * | 2021-04-02 | 2021-06-22 | 北京隐虚等贤科技有限公司 | 沉浸式互动内容的创建方法、装置以及存储介质 |
CN113350796A (zh) * | 2021-05-27 | 2021-09-07 | 北京中新互娱科技有限公司 | 一种虚拟角色行为控制方法及装置 |
CN113393726A (zh) * | 2021-06-16 | 2021-09-14 | 中国人民解放军海军工程大学 | 工业装配训练方法、装置、电子设备及可读存储介质 |
CN116688496A (zh) * | 2022-02-24 | 2023-09-05 | 腾讯科技(深圳)有限公司 | 任务提示方法和装置、存储介质及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927778A (zh) * | 2013-05-31 | 2014-07-16 | 深圳信息职业技术学院 | 一种虚拟人环境感知的仿真方法及系统 |
CN108815847A (zh) * | 2018-05-29 | 2018-11-16 | 努比亚技术有限公司 | 一种虚拟现实交互调控方法、设备及计算机可读存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430797A (zh) * | 2007-11-07 | 2009-05-13 | 上海兰基斯软件有限公司 | 一种三维虚拟场景快速路径规划的橡皮筋算法 |
KR20090116510A (ko) * | 2008-05-07 | 2009-11-11 | (주)엔도어즈 | 온라인 게임의 캐릭터 자동 이동방법, 및 시스템 |
CN102693550A (zh) * | 2011-03-25 | 2012-09-26 | 上海日浦信息技术有限公司 | 虚拟场景中的智能群体运动模拟方法 |
WO2016070028A1 (en) * | 2014-10-31 | 2016-05-06 | Informite Inc. | Systems and methods for keyword research and analysis for paid search |
CN106803283A (zh) * | 2016-12-29 | 2017-06-06 | 东莞新吉凯氏测量技术有限公司 | 基于实体展馆的交互式三维全景多媒体虚拟展览方法 |
CN107103644B (zh) * | 2017-04-21 | 2019-03-08 | 腾讯科技(深圳)有限公司 | 一种虚拟场景中对象的控制方法和装置 |
CN107134011A (zh) * | 2017-05-02 | 2017-09-05 | 湖北历拓网络科技有限公司 | 一种基于虚拟现实的智慧城市系统 |
CN109960545B (zh) * | 2019-03-29 | 2022-09-13 | 网易(杭州)网络有限公司 | 虚拟对象控制方法、系统、装置、介质及电子设备 |
-
2020
- 2020-01-06 WO PCT/CN2020/070435 patent/WO2021138761A1/zh active Application Filing
- 2020-01-06 CN CN202080000007.7A patent/CN111279394B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927778A (zh) * | 2013-05-31 | 2014-07-16 | 深圳信息职业技术学院 | 一种虚拟人环境感知的仿真方法及系统 |
CN108815847A (zh) * | 2018-05-29 | 2018-11-16 | 努比亚技术有限公司 | 一种虚拟现实交互调控方法、设备及计算机可读存储介质 |
Non-Patent Citations (3)
Title |
---|
基于流演算智能体构建三维语义实体及其交互感知;徐守祥等;《深圳信息职业技术学院学报》;20160630;第41-48页 * |
徐守祥等.基于流演算智能体构建三维语义实体及其交互感知.《深圳信息职业技术学院学报》.2016, * |
虚拟人环境感知的仿真方法研究;徐守祥等;《计算机应用研究》;20141231;第31卷(第12期);第3885-3889、3893页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111279394A (zh) | 2020-06-12 |
WO2021138761A1 (zh) | 2021-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111279394B (zh) | 虚拟角色的任务执行方法、装置及终端设备 | |
CN111095170B (zh) | 虚拟现实场景及其交互方法、终端设备 | |
JP6744679B2 (ja) | ヒューマンマシンハイブリッド意思決定方法および装置 | |
EP0753837B1 (en) | Interference checking method | |
Curtis et al. | Virtual tawaf: A case study in simulating the behavior of dense, heterogeneous crowds | |
CN107820593A (zh) | 一种虚拟现实交互方法、装置及系统 | |
CN108645411B (zh) | 基于粒子群算法的机器人路径规划方法、装置及终端设备 | |
CN110955241B (zh) | 移动机器人避障方法、装置、移动机器人及存储介质 | |
CN113119098B (zh) | 机械臂控制方法、机械臂控制装置及终端设备 | |
CN112540609A (zh) | 路径规划方法、装置、终端设备及存储介质 | |
Kuiper et al. | Agent vision in multi-agent based simulation systems | |
CN113119104B (zh) | 机械臂控制方法、机械臂控制装置、计算设备及系统 | |
CN106125913A (zh) | 一种启动方法及vr眼镜 | |
Lee et al. | Visualization of deep reinforcement autonomous aerial mobility learning simulations | |
CN112965490A (zh) | 控制机器人的方法、装置及非瞬时性计算机可读存储介质 | |
CN113052253A (zh) | 超参数确定方法、装置、深度强化学习框架、介质及设备 | |
US10713832B2 (en) | Precomputed environment semantics for contact-rich character animation | |
CN116992058A (zh) | 跨元宇宙的数据显示方法和装置 | |
CN116700298A (zh) | 路径规划方法、系统、设备及存储介质 | |
CN115357500A (zh) | 自动驾驶系统的测试方法、装置、设备和介质 | |
CN111650953B (zh) | 飞行器避障处理方法、装置、电子设备及存储介质 | |
US11803995B2 (en) | Target tracking method and apparatus, terminal device, and storage medium | |
WO2021235296A1 (ja) | 移動体移動予測システム及び移動体移動予測方法 | |
CN106125916A (zh) | 一种启动方法及终端 | |
CN114998435A (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 |