一种角色随机漫游方法技术

技术编号:21044975 阅读:20 留言:0更新日期:2019-05-07 22:49
一种角色随机漫游方法,包括以下步骤:设置至少两个引力点的质量;计算运动物体到所述引力点的距离;计算所述运动物体所受的引力;计算所述运动物体受力后的运动加速度;计算所述运动物体时间间隔后的位置;计算所述运动物体时间间隔后的速度;计算所述运动物体到所述引力点的新距离;计算所述运动物体在所述引力点下的引力势能;计算所述运动物体的动能;反算出所述运动物体的当前速度。本发明专利技术的角色随机漫游方法,可以实现生成的运动轨迹处处连续、处处可导、随机性高、灵活度强、难以预测。

A Random Roaming Method for Characters

A role random walkthrough method includes the following steps: setting the mass of at least two gravitational points; calculating the distance between the moving object and the gravitational point; calculating the gravitation of the moving object; calculating the acceleration of the moving object after being stressed; calculating the position of the moving object after the time interval; calculating the velocity of the moving object after the time interval; and calculating the institute. The new distance from the moving object to the gravitational point, the gravitational potential energy of the moving object under the gravitational point, the kinetic energy of the moving object and the current velocity of the moving object are calculated. The role random walkthrough method of the invention can realize continuous, differentiable, random, flexible and difficult to predict the generated motion trajectory everywhere.

【技术实现步骤摘要】
一种角色随机漫游方法
本专利技术涉及非线性数学
,特别是涉及一种角色随机漫游方法。
技术介绍
在三维虚拟场景中,角色物体的漫游是一个重要的表现手法。在实际需求中,经常要使物体模型在一个固定空间范围内自由随机地运动。例如游戏中,非玩家角色(NPC)在一个场景区域中漫游。通常实现NPC漫游的方法是:1.由美工人员在建模工具中编辑好运动曲线轨迹,然后在虚拟场景使物体沿着固定的轨迹循环移动。这种方法有两个缺点,第一需要将轨迹数据保存到文件中,增加了数据量,第二运动轨迹是固定的,缺乏灵活度。2.给定一个线性数学公式,通过公式生成运动轨迹。这种方式不需要美工人员手动编辑运动曲线轨迹,也不需要增加额外的数据量,但其运动轨迹依然是固定的,缺乏灵活度。漫游路径设计的优劣直接影响到虚拟漫游的真实性和沉浸感。漫游路径生成时需要注意:设计规划的合理性、漫游方向改变时的弯道平滑优化性、物体运动速度等,合理调整这些关键因素将有效地提高虚拟场景显示画面的稳定性、降低画面的抖动和摇摆。
技术实现思路
为了解决现有技术存在的不足,本专利技术的目的在于提供一种角色漫游方法,可以实现生成的运动轨迹处处连续、处处可导、随机性高、灵活度强、难以预测。为实现上述目的,本专利技术提供的一种角色漫游方法,包括:设置至少两个引力点的质量;计算运动物体到所述引力点的距离;计算所述运动物体所受的引力;计算所述运动物体受力后的运动加速度;计算所述运动物体时间间隔后的位置;计算所述运动物体时间间隔后的速度;计算所述运动物体到所述引力点的新距离;计算所述运动物体在所述引力点下的引力势能;计算所述运动物体的动能;反算出所述运动物体的当前速度。进一步地,在计算所述物体所受的引力的步骤之前,还包括:计算所述物体的引力势能Ep;计算所述物体的动能Ek;计算所述物体的引力势能和所述物体的动能E=Ep+Ek。进一步地,还包括,记录所述物体位置变化的轨迹。进一步地,所述计算所述物体所受的引力的步骤,是根据下列公式计算运动物体受N个引力点的引力:Fn=g*Mn*w/(Rn*Rn),其中,Fn为第N个引力点的引力,g为万有引力系数,Mn为第N个引力点的质量,w为运动物体的质量,Rn为N个引力点的距离。进一步地,所述计算所述物体受力后的运动加速度的步骤,是根据下列公式计算所述物体受力后的运动加速度:A=(F1+F2+...+Fn)/w,其中,A为所述物体受力后的运动加速度,F1为第1个引力点上的引力,F2为第2个引力点上的引力,Fn为第n个引力点上的引力,w为运动物体的质量。进一步地,所述计算所述运动物体时间间隔后的位置的步骤,是根据下列公式计算:Pt=P+V*t+0.5*A*t*t其中,Pt为时间间隔t后的位置,P为运动天体的当前位置,V为运动天体的当前速度,t为时间间隔,A为运动物体的当前加速度。进一步地,所述计算所述运动物体时间间隔后的速度的步骤,是根据下列公式计算:V=V+A*t,其中,V为运动天体的当前速度,A为运动物体的当前加速度,t为时间间隔。进一步地,所述计算所述运动物体在所述引力点下的引力势能的步骤,是根据下列公式计算:Epn=-g*Mn*w/Rn,其中,Epn为运动物体在N个引力点下的引力势能,g为万有引力系数,Mn为第N个引力点的质量,w为运动物体的质量,Rn为N个引力点的距离。进一步地,所述计算所述运动物体的动能的步骤,是根据下列公式计算:Ek=E-Ep1-Ep2-...-Epn,其中,Ek为运动物体的动能Ek为运动天体的当前动能,E为运动物体的动能与势能的和,Ep1为运动物体在第1个引力点上的引力势能,Ep2为运动物体在第2个引力点上的引力势能,Epn为运动物体在第n个引力点上的引力势能。更进一步地,所述反算出所述运动物体的当前速度的步骤,是根据下列公式计算:|V|=sqrt(2*Ek*w),其中,|V|为运动物体的当前速度,Ek为运动天体的当前动能,w为运动物体的质量。为实现上述目的,本专利技术还提供一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述的角色漫游方法步骤。为实现上述目的,本专利技术还提供一种终端设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行如上述的角色漫游方法步骤。本专利技术的一种角色随机漫游方法,具有以下有益效果:1)生成的运动轨迹处处连续、处处可导、随机性高、灵活度强、难以预测。2)提高了虚拟场景显示画面的稳定性、降低画面的抖动和摇摆。3)增强了虚拟世界中角色漫游的真实性和游戏沉浸感。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,并与本专利技术的实施例一起,用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1为根据本专利技术的角色随机漫游方法流程图;图2为根据本专利技术的具有两个引力点的角色随机漫游轨迹示意图;图3为根据本专利技术的具有四个引力点的角色随机漫游轨迹示意图;图4为根据本专利技术的具有六个引力点的角色随机漫游轨迹示意图。具体实施方式以下结合附图对本专利技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。本专利技术使用如下两个物理定律:(1)万有引力定律F=G(2)势能与动能守恒定律对物体轨迹的运算中,为了提高计算效率,没有使用微积分的精确求解,这会导致物体速度出现误差,本专利技术采用势能与动能守恒定律以校正误差。引力势能是指物体因为大质量物体的万有引力而具有的位能,其大小与其到大质量的距离有关。EP=-动能是物质运动时所得到的能量。Ek=mv2在整个过程中,运动物体的动能与势能的加和是保持不变的。即Ep+Ek的数值始终保持不变。图1为根据本专利技术的角色随机漫游方法流程图,下面将参考图1,对本专利技术的角色随机漫游方法进行详细描述。首先,在步骤101,设置至少两个引力点的质量(如果是一个引力点,运动物体只会做圆周运动,没有随机漫游的效果)。其中,在场景中设置若干个固定的引力点,然后将运动物体放置到场景中,实时计算该物体在引力的作用下,其位置的变化。该物体的位置变化即为生成的运动轨迹。包括,可以设置N个引力点的质量,用M1..n来表示。运动物体的质量用w表示。运动物体到N个引力点的距离用R1..n来表示。运动物体在N个引力点上的引力势能用Ep1..n来表示。运动物体的引力势能之合用Ep来表示,即Ep=Ep1+Ep2+...+Epn。运动物体受N个引力点上的引力用F1..n来表示。A表示运动物体的当前加速度。V表示运动天体的当前速度。P表示运动天体的当前位置。t表示时间间隔。g表示万有引力系数。Ek表示运动天体的当前动能;E表示运动物体的动能与势能的加和。在步骤102,计算运动物体到引力点的距离、运动物体的引力势能Ep和动能Ek,及二者加和E=Ep+Ek,其中,计算运动物体到N个引力点的距离R1..n,,引力势能Ep是指物体因为大质量物体的万有引力而具有的位能,其大小与其到大质量的距离有关。EP=-动能Ek是物质运动时所得到的能量。Ek=mv2进一步地,在整个过程中,运动物体的动能与势能的和是保持不变的。即Ep本文档来自技高网...

【技术保护点】
1.一种角色随机漫游方法,包括以下步骤:设置至少两个引力点的质量;计算运动物体到所述引力点的距离;计算所述运动物体所受的引力;计算所述运动物体受力后的运动加速度;计算所述运动物体时间间隔后的位置;计算所述运动物体时间间隔后的速度;计算所述运动物体到所述引力点的新距离;计算所述运动物体在所述引力点下的引力势能;计算所述运动物体的动能;反算出所述运动物体的当前速度。

【技术特征摘要】
1.一种角色随机漫游方法,包括以下步骤:设置至少两个引力点的质量;计算运动物体到所述引力点的距离;计算所述运动物体所受的引力;计算所述运动物体受力后的运动加速度;计算所述运动物体时间间隔后的位置;计算所述运动物体时间间隔后的速度;计算所述运动物体到所述引力点的新距离;计算所述运动物体在所述引力点下的引力势能;计算所述运动物体的动能;反算出所述运动物体的当前速度。2.根据权利要求1所述的方法,其特征在于,在计算所述物体所受的引力的步骤之前,还包括:计算所述物体的引力势能Ep;计算所述物体的动能Ek;计算所述物体的引力势能和所述物体的动能E=Ep+Ek。3.根据权利要求1所述的方法,其特征在于,还包括,记录所述物体位置变化的轨迹。4.根据权利要求1所述的方法,其特征在于,所述计算所述物体所受的引力的步骤,是根据下列公式计算运动物体受N个引力点的引力:Fn=g*Mn*w/(Rn*Rn),其中,Fn为第N个引力点的引力,g为万有引力系数,Mn为第N个引力点的质量,w为运动物体的质量,Rn为N个引力点的距离。5.根据权利要求1所述的方法,其特征在于,所述计算所述物体受力后的运动加速度的步骤,是根据下列公式计算所述物体受力后的运动加速度:A=(F1+F2+...+Fn)/w,其中,A为所述物体受力后的运动加速度,F1为第1个引力点上的引力,F2为第2个引力点上的引力,Fn为第n个引力点上的引力,w为运动物体的质量。6.根据权利要求1所述的方法,其特征在于,所述计算所述运动物体时间间隔后的位置的步骤,是根据下列公式计算:Pt=P+V*t+0.5*A*t*t其中,Pt为时间间隔t后的位置,P为运动天体的当前位置,V为...

【专利技术属性】
技术研发人员:叶峰陆利民
申请(专利权)人:苏州蜗牛数字科技股份有限公司
类型:发明
国别省市:江苏,32

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

1