一种调整触发盒位置的方法及终端与流程

文档序号:14660740发布日期:2018-06-12 17:45阅读:186来源:国知局
一种调整触发盒位置的方法及终端与流程

本发明涉及数据处理领域,尤其涉及一种调整触发盒位置的方法及终端。



背景技术:

在游戏内容编排的过程中,除了要规划行进路线,还需要设计角色在行进路线过程中会触发的事件。在UE4引擎中,触发事件常常会用到其自带的触发盒。触发盒为一个多边形的盒子,可以放置到游戏场景中,当与指定的对象产生碰撞时便会触发提前设定好的事件。比如在我们的项目,改变速度、产生怪物、发射子弹、播放声音等都是用触发盒实现,而且这些盒子中的事件都只有角色才可以触发。所以为了确保特定事件被触发,这些触发盒都必须要准确放置在角色的行进路径上。现有的在三维场景中放置触发盒的方式为由美工人员手动进行微调,工作效率很低且维护成本很高。尤其当行进路线需要修改且路线上有大量触发盒时,手工调整的弊端就会更明显。



技术实现要素:

本发明所要解决的技术问题是:如何提高调整触发盒位置的效率。

为了解决上述技术问题,本发明采用的技术方案为:

本发明提供一种调整触发盒位置的方法,包括:

在运动轨迹上预设多个第一节点,得到第一节点集合;

获取所述第一节点集合中与预设的触发盒的距离最小的第一节点,得到起始节点;

获取所述第一节点集合中与所述触发盒的距离第二小的第一节点,得到终止节点;

以所述起始节点和所述终止节点为端点绘制线段;

移动所述触发盒至所述线段。

本发明还提供一种调整触发盒位置的终端,包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:

在运动轨迹上预设多个第一节点,得到第一节点集合;

获取所述第一节点集合中与预设的触发盒的距离最小的第一节点,得到起始节点;

获取所述第一节点集合中与所述触发盒的距离第二小的第一节点,得到终止节点;

以所述起始节点和所述终止节点为端点绘制线段;

移动所述触发盒至所述线段。

本发明的有益效果在于:本发明通过在角色的运动轨迹上预设多个第一节点,根据多个第一节点与一触发盒的距离定位整个运动轨迹中与触发盒相距最近的曲线段。再根据所述曲线段的两个端点绘制一直线段,计算出所述直线段中与触发盒距离最近的一节点的位置信息,将触发盒移动至所述位置信息对应的位置。美工人员只需将触发盒放置在运动轨迹特定曲线段的周围便可自动将触发盒调整至角色在运动轨迹行进过程中可触发的位置,提高了调整触发盒位置的效率。

附图说明

图1为本发明提供的一种调整触发盒位置的方法的具体实施方式的流程框图;

图2为本发明提供的一种调整触发盒位置的终端的具体实施方式的结构框图;

图3为触发盒与运动轨迹的示意图;

标号说明:

1、处理器;2、存储器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

请参照图1以及图2,

如图1所示,本发明提供一种调整触发盒位置的方法,包括:

在运动轨迹上预设多个第一节点,得到第一节点集合;

获取所述第一节点集合中与预设的触发盒的距离最小的第一节点,得到起始节点;

获取所述第一节点集合中与所述触发盒的距离第二小的第一节点,得到终止节点;

以所述起始节点和所述终止节点为端点绘制线段;

移动所述触发盒至所述线段。

进一步地,移动所述触发盒至所述线段,具体为:

以所述线段的一端为起点,每隔预设的距离间隔设置一第二节点,得到第二节点集合;

获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点;

移动所述触发盒至与所述第三节点对应的位置。

进一步地,获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点,具体为:

根据公式集合计算所述第二节点集合中每一第二节点的三维坐标,得到三维坐标集合;

根据所述三维坐标集合和所述触发盒的三维坐标获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点;

所述公式集合具体为:

其中,所述Pstart(Xs,Ys,Zs)和Pend(Xe,Ye,Ze)分别为所述线段的两个端点,为Pstart点的切线向量,为Pend点的切线向量,Pstart点的三维坐标为Pstart(Xs,Ys,Zs),n的取值范围为1至所述第二节点集合中节点总数的正整数,F为所述预设的距离间隔,为所述线段中第n个节点的切线向量,Pn为所述线段中第n个点的坐标。

进一步地,移动所述触发盒至与所述第三节点对应的位置,具体为:

根据所述触发盒的三维坐标和所述第三节点的三维坐标计算得到所述触发盒相对于所述第三节点的位置偏移量;

根据所述触发盒的旋转参数和所述第三节点的旋转参数计算得到所述触发盒相对于所述第三节点的旋转偏移量;

根据所述位置偏移量和所述旋转偏移量更新所述触发盒的位置。

由上述描述可知,同时根据位置偏移量和旋转偏移量调整触发盒的位置,使得触发盒与运动轨迹保持平行,保证了角色在运动轨迹行进过程中可使触发盒生效。

进一步地,还包括:

高亮显示所述运动轨迹。

由上述描述可知,由于在同一三维场景中可能同时存在大量的运动轨迹,且每一运动轨迹较冗长,错综复杂。通过高亮显示当前需编排触发盒的运动轨迹,有利于美工人员快速定位触发盒的目标位置,提高在运动轨迹上编排触发盒的效率。

如图2所示,本发明还提供一种调整触发盒位置的终端,包括一个或多个处理器1及存储器2,所述存储器2存储有程序,并且被配置成由所述一个或多个处理器1执行以下步骤:

在运动轨迹上预设多个第一节点,得到第一节点集合;

获取所述第一节点集合中与预设的触发盒的距离最小的第一节点,得到起始节点;

获取所述第一节点集合中与所述触发盒的距离第二小的第一节点,得到终止节点;

以所述起始节点和所述终止节点为端点绘制线段;

移动所述触发盒至所述线段。

进一步地,移动所述触发盒至所述线段,具体为:

以所述线段的一端为起点,每隔预设的距离间隔设置一第二节点,得到第二节点集合;

获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点;

移动所述触发盒至与所述第三节点对应的位置。

进一步地,获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点,具体为:

根据公式集合计算所述第二节点集合中每一第二节点的三维坐标,得到三维坐标集合;

根据所述三维坐标集合和所述触发盒的三维坐标获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点;

所述公式集合具体为:

其中,所述Pstart(Xs,Ys,Zs)和Pend(Xe,Ye,Ze)分别为所述线段的两个端点,为Pstart点的切线向量,为Pend点的切线向量,Pstart点的三维坐标为Pstart(Xs,Ys,Zs),n的取值范围为1至所述第二节点集合中节点总数的正整数,F为所述预设的距离间隔,为所述线段中第n个节点的切线向量,Pn为所述线段中第n个点的坐标。

进一步地,移动所述触发盒至与所述第三节点对应的位置,具体为:

根据所述触发盒的三维坐标和所述第三节点的三维坐标计算得到所述触发盒相对于所述第三节点的位置偏移量;

根据所述触发盒的旋转参数和所述第三节点的旋转参数计算得到所述触发盒相对于所述第三节点的旋转偏移量;

根据所述位置偏移量和所述旋转偏移量更新所述触发盒的位置。

进一步地,还包括:

高亮显示所述运动轨迹。

本发明的实施例一为:

如图3所示,本实施例提供一种调整触发盒位置的方法,包括:

S1、高亮显示一运动轨迹。

S2、在所述运动轨迹上预设多个第一节点,得到第一节点集合。

优选地,一运动轨迹上预设7个第一节点。

S3、获取所述第一节点集合中与预设的触发盒的距离最小的第一节点,得到起始节点;获取所述第一节点集合中与所述触发盒的距离第二小的第一节点,得到终止节点。

S4、以所述起始节点和所述终止节点为端点绘制线段。

其中,相比于从整条曲线中去计算寻找最近的点位,这样做只需要计算整条曲线中的某一小段曲线,可以大大节省计算的开销。

S5、移动所述触发盒至所述线段。具体为:

S51、以所述线段的一端为起点,每隔预设的距离间隔设置一第二节点,得到第二节点集合。

S52、根据公式集合计算所述第二节点集合中每一第二节点的三维坐标,得到三维坐标集合;根据所述三维坐标集合和所述触发盒的三维坐标获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点;

所述公式集合具体为:

其中,所述Pstart(Xs,Ys,Zs)和Pend(Xe,Ye,Ze)分别为所述线段的两个端点,为Pstart点的切线向量,为Pend点的切线向量,Pstart点的三维坐标为Pstart(Xs,Ys,Zs),n的取值范围为1至所述第二节点集合中节点总数的正整数,F为所述预设的距离间隔,为所述线段中第n个节点的切线向量,Pn为所述线段中第n个点的坐标。

S53、根据所述触发盒的三维坐标和所述第三节点的三维坐标计算得到所述触发盒相对于所述第三节点的位置偏移量;根据所述触发盒的旋转参数和所述第三节点的旋转参数计算得到所述触发盒相对于所述第三节点的旋转偏移量。

S54、根据所述位置偏移量和所述旋转偏移量更新所述触发盒的位置。

本发明的实施例二为:

本实施例提供一种调整触发盒位置的终端,包括一个或多个处理器1及存储器2,所述存储器2存储有程序,并且被配置成由所述一个或多个处理器1执行以下步骤:

S1、高亮显示一运动轨迹。

S2、在所述运动轨迹上预设多个第一节点,得到第一节点集合。

优选地,一运动轨迹上预设7个第一节点。

S3、获取所述第一节点集合中与预设的触发盒的距离最小的第一节点,得到起始节点;获取所述第一节点集合中与所述触发盒的距离第二小的第一节点,得到终止节点。

S4、以所述起始节点和所述终止节点为端点绘制线段。

其中,相比于从整条曲线中去计算寻找最近的点位,这样做只需要计算整条曲线中的某一小段曲线,可以大大节省计算的开销。

S5、移动所述触发盒至所述线段。具体为:

S51、以所述线段的一端为起点,每隔预设的距离间隔设置一第二节点,得到第二节点集合。

S52、根据公式集合计算所述第二节点集合中每一第二节点的三维坐标,得到三维坐标集合;根据所述三维坐标集合和所述触发盒的三维坐标获取所述第二节点集合中与所述触发盒的距离最小的第二节点,得到第三节点;

所述公式集合具体为:

其中,所述Pstart(Xs,Ys,Zs)和Pend(Xe,Ye,Ze)分别为所述线段的两个端点,为Pstart点的切线向量,为Pend点的切线向量,Pstart点的三维坐标为Pstart(Xs,Ys,Zs),n的取值范围为1至所述第二节点集合中节点总数的正整数,F为所述预设的距离间隔,为所述线段中第n个节点的切线向量,Pn为所述线段中第n个点的坐标。

S53、根据所述触发盒的三维坐标和所述第三节点的三维坐标计算得到所述触发盒相对于所述第三节点的位置偏移量;根据所述触发盒的旋转参数和所述第三节点的旋转参数计算得到所述触发盒相对于所述第三节点的旋转偏移量。

S54、根据所述位置偏移量和所述旋转偏移量更新所述触发盒的位置。

综上所述,本发明提供的一种调整触发盒位置的方法及终端,通过在角色的运动轨迹上预设多个第一节点,根据多个第一节点与一触发盒的距离定位整个运动轨迹中与触发盒相距最近的曲线段。再根据所述曲线段的两个端点绘制一直线段,计算出所述直线段中与触发盒距离最近的一节点的位置信息,将触发盒移动至所述位置信息对应的位置。美工人员只需将触发盒放置在运动轨迹特定曲线段的周围便可自动将触发盒调整至角色在运动轨迹行进过程中可触发的位置,提高了调整触发盒位置的效率。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1