本发明涉及计算机
技术领域:
,具体涉及一种确定移动轨迹的方法、用户设备及系统。
背景技术:
:当前一些应用中,经常会有模拟对象之间互相发出对象指令,并产生相互作用的场景,可以是两个模拟对象之间的相互作用,也可以是多个模拟对象发生相互作用,模拟对象之间互相作用的过程中经常会有某个模拟对象被作用发生长距离或短距离移动的情况。被作用模拟对象的移动轨迹通常通过两种方案实现:一种是开发人员预先制作出被作用模拟对象的移动轨迹,另一种是通过机器引擎进行计算,模拟出被作用模拟对象的移动轨迹。但模拟对象之间相声相互影响的情况有很多,不可能开发人员预先针对每个被作用的情况都制作出移动轨迹,机器引擎计算的方式只能针对被作用的一瞬间的情况进行计算,实际模拟对象在移动过程中可能会发生很多变化,导致机器引擎计算的移动轨迹经常不符合当前的场景。技术实现要素:本发明实施例提供一种确定移动轨迹的方法,可以根据被作用模拟对象当前所处的环境确定移动轨迹,使用很小的计算量就可以实现对被作用模拟对象的移动轨迹的真实模拟。本发明实施例还提供了相应的用户设备及系统。本发明第一方面提供一种确定移动轨迹的方法,包括:用户设备确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;所述用户设备获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;所述用户设备根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。本发明第二方面提供一种用户设备,包括:第一确定单元,用于确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;获取单元,用于获取与所述第一确定单元确定的所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;第二确定单元,用于根据所述获取单元获取的所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。本发明第三方面提供一种移动轨迹校验的系统,包括:第一用户设备和服务器;所述第一用户设备用于:确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹;向所述服务器发送确定的所述第二模拟对象的移动轨迹;所述服务器用于:校验所述移动轨迹;当所述移动轨迹合理时,向所述第一用户设备发送响应消息,所述响应消息用于指示所述第一用户设备控制所述第二模拟对象按照所述移动轨迹移动;当所述移动轨迹不合理时,生成新的移动轨迹,向所述第一用户设备发送所述新的移动轨迹,使所述第一用户设备控制所述第二模拟对象按照所述新的移动轨迹移动。与现有技术中人工制作移动轨迹复杂度高,机器计算经常得到不符合当前场景的移动轨迹相比,本发明实施例提供的确定移动轨迹的方法,用户设备确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;所述用户设备获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;所述用户设备根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。可以根据被作用模拟对象当前所处的环境确定移动轨迹,使用很小的计算量就可以实现对被作用模拟对象的移动轨迹的真实模拟。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例中确定移动轨迹的方法的一实施例示意图;图2是本发明实施例中轨迹模板的一示例示意图;图3是本发明实施例中确定的移动轨迹的一示例示意图;图4是本发明实施例中确定的移动轨迹的另一示例示意图;图5是本发明实施例中确定的移动轨迹的另一示例示意图;图6是本发明实施例中确定的移动轨迹的另一示例示意图;图7是本发明实施例中确定的移动轨迹的另一示例示意图;图8是本发明实施例中移动轨迹校验的系统的一实施例示意图;图9是本发明实施例中移动轨迹校验的系统的另一实施例示意图;图10是本发明实施例中用户设备的一实施例示意图;图11是本发明实施例中用户设备的另一实施例示意图。具体实施方式本发明实施例提供一种确定移动轨迹的方法,可以根据被作用模拟对象当前所处的环境确定移动轨迹,使用很小的计算量就可以实现对被作用模拟对象的移动轨迹的真实模拟。本发明实施例还提供了相应的用户设备及系统。以下分别进行详细说明。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。随着互联网的普及,游戏产业也随之快速发展,游戏中打斗游戏较多,有两人打斗的,也都多人打斗的,单机的或在线的,尤其是当前的大型多人在线(massivelymultiplayeronline,mmo)游戏非常流行,mmo游戏即大型多人在线角色扮演游戏(massivelymultiple-playeronlinerole-playinggame, mmorpg)。这类游戏的打斗场景非常多,经常都是几百人同时打斗,打斗的过程中经常会出现人物被击飞的情况,当然,本处只是以mmo游戏为例进行说明,很多游戏场景中都存在这种人物或怪物被击飞的情况。无论是人物还是怪物,都可以称为模拟对象。击飞可以包括用脚踢飞、用拳打飞、身体撞飞和用武器打飞等。战斗中受击方被击飞的飞行过程以及倒地的过程中的模拟表现对战斗的爽快感起着重要的作用,所以在击飞场景中被击飞模拟对象的移动轨迹是至关重要的。所以本发明实施例中接下来说明如何确定被击飞模拟对象的移动轨迹。本申请中可以把被击飞模拟对象的移动轨迹的曲线分成3个抛物线,一个主曲线和两段副曲线,其中,主曲线可以理解为是动态调整段,两段副曲线是补充表现段,动态调整段会随着模拟对象所处环境的地形有不同的表现曲线,碰到高的障碍物会随着障碍物滑下,越过矮的障碍物,落水后也会有水中的下沉和浮起,在击飞过程中相应的动画,声音,特效的表现项也会随之改变。辅助表现段是两段小抛物线,可以解决一段曲线落地的僵硬表现。开发人员可以针对击飞的方案设置几套基础模板,例如:可以设置五套重击飞的基础模板,五套轻击飞的基础模板,然后再想增加模板时,开发人员只需要选择一个基础模板,在基础模板上配置击飞的距离、高度、浮空时间和倒地时间等参数,就可以得到一个新的击飞模板,这样该新的击飞模板的配置参数只需要包括基础模板的标识(id)、击飞的距离、高度、浮空时间和倒地时间等参数id即可,可以大大减少开发人员配置击飞模板的工作量。配置好基础模板后,用户设备在玩家玩游戏的过程中可以根据游戏中模拟对象的打斗情况确定被击飞模拟对象的移动轨迹。图1为本发明实施例中确定移动轨迹的方法的一实施例示意图。参阅图1,本发明实施例提供的确定移动轨迹的方法的一实施例包括:101、用户设备确定第一模拟对象的对象指令作用于第二模拟对象的作用效果。第一模拟对象和第二模拟对象可以是游戏中的人物a和人物b,也可以是 人物a和怪b,也可以是怪a和怪b,对象指令可以是游戏中模拟对象的打斗技能,如:模拟对象打出的拳或踢出的脚,例如:可以是重拳、轻拳、重踢和轻踢等。作用效果指的是第一模拟对象有没有打中第二模拟对象,例如:如果是重踢打中则可以理解为是一级重击飞,重拳打中则可以理解为是二级重击飞,轻脚踢中可以理解为是一级轻击飞,轻拳打中可以理解为是二级轻踢飞。当然,此处只是举几个例子进行理解,实际游戏场景中,打斗的技能有很多,作用效果也可以分很多种情况。102、所述用户设备获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息。各类型的作用效果与轨迹模板的对应关系可以用表格的形式来表示,也可以用其他的形式来表达。本申请中以表格的形式为例进行说明,如表1所示,各类型作用效果与轨迹模板的对应关系如表1所示。作用效果轨迹模板的标识一级重击飞模板1二级重击飞模板2一级轻击飞模板3二级轻击飞模板4表1只是举例进行说明,实际上作用效果与轨迹模板的对应关系可以有很多个。当然,轨迹模板的标识会对应着相应的轨迹模板,轨迹模板可以参阅图2进行理解,只是针对不同的击飞效果,抛物线的高度和宽度会有不同。如图2所示,移动轨迹包括一个主曲线段和两个副曲线段,副曲线段用来模拟被击飞的模拟对象在落地后弹两下的感觉。例如:一级重击飞的抛物线高度和宽度都可以比二级重击飞的抛物线高度和宽度要大。可以以此类推,二级轻击飞的抛物线高度和宽度在表1中是最小的。第二模拟对象所处的模拟环境信息指的是第二模拟对象周边的地形环境,例如:有没有水池、障碍物、地势高低等。103、所述用户设备根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。因为第二模拟对象被击飞后,飞行过程中可能会碰到障碍物或者落入水中,也可能遇到其他情况,可能不能完全按照轨迹模板所示的曲线来移动,所以真实的模板按照模拟环境信息设置才是最准确的。与现有技术中人工制作移动轨迹复杂度高,机器计算经常得到不符合当前场景的移动轨迹相比,本发明实施例提供的确定移动轨迹的方法,用户设备确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;所述用户设备获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;所述用户设备根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。可以根据被作用模拟对象当前所处的环境确定移动轨迹,使用很小的计算量就可以实现对被作用模拟对象的移动轨迹的真实模拟。关于确定的真实轨迹可以结合以下几个附图进行理解。如果第二模拟对象的所处的模拟环境信息都是平地,且没有任何障碍物,则真事的飞行估计就是轨迹模板所示的曲线,如图2所示。图3为被击飞的模拟对象在击飞的过程中受到另一个击飞攻击的移动轨迹示意图。这种情况,初始计算的移动轨迹即为图2所示的轨迹模板,但飞行的过程中又收到另外一个击飞,则重新计算出新的移动轨迹。也就是当被击飞的模拟对象在一段击飞的未完成时,受到另一个击飞攻击,那么将取消当前段的表现项,以当前受击点为起点生成了一个新的击飞曲线。图4为被击飞的模拟对象在击飞的过程中越过低矮障碍物的移动轨迹示意图。当用户设备确定轨迹模板后,确定第二模拟对象飞行过程中的障碍物较飞行点低,则可以确定第二模拟对象会越过该障碍物,保持原来的轨迹模板所示的曲线完成整个击飞过程。图5为被击飞的模拟对象在击飞的过程中碰到高的障碍物的移动轨迹示意图。当用户设备确定轨迹模板后,确定第二模拟对象飞行过程中的障碍物较飞行点高,则可以确定第二模拟对象不能越过该障碍物,会沿着该障碍物下滑,直到计算出可落地的地点,这样真实的移动轨迹就变成了图5中所示的主曲线段未完成,遇到障碍物,沿着障碍物下滑直到落地的移动轨迹。图6为击飞的路径是上坡的移动轨迹示意图。如图6所示,如果击飞的路径是上坡,则落地点就会发生变化,真实的移动轨迹就会变成图6所示的曲线。图7为击飞的路径是上坡的移动轨迹示意图。如图7所示,如果击飞的路径是下坡,则落地点就会发生变化,真实的移动轨迹就会变成图7所示的曲线。如果击飞落地后会掉入水中,则第二模拟对象会在水中起伏。第二模拟对象落入水中后会受到向下的重力,向上的浮力和向上的粘滞阻力,重力是不变的,浮力和粘滞阻力都是随着第二模拟对象落入水中的深度发生变化的,所以,第二模拟对象会在水中表现出起伏。所以,针对第二模拟对象掉入水中的移动轨迹会带有在水中的起伏。另外,本发明实施例中重点讲述了移动轨迹,实际上在轨迹模板上还配置有动画、音效和特效等。参阅图8,本发明实施例提供的移动轨迹校验的系统的一实施例包括:第一用户设备、多个第二用户设备(图中只是以两个为例进行说明,实际上可以只包括一个,也可以包括很多个)和服务器。所述第一用户设备用于:确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹;向所述服务器发送确定的所述第二模拟对象的移动轨迹;所述服务器用于:校验所述移动轨迹;当所述移动轨迹合理时,向所述第一用户设备发送响应消息,所述响应消息用于指示所述第一用户设备控制所述第二模拟对象按照所述移动轨迹移动;当所述移动轨迹不合理时,生成新的移动轨迹,向所述第一用户设备发送所述新的移动轨迹,使所述第一用户设备控制所述第二模拟对象按照所述新的移动轨迹移动。可选地,所述服务器还用于:当所述移动轨迹合理时,向每个第二用户设备发送所述移动轨迹和所述第二模拟对象的标识,使得所述每个第二用户设备都分别控制所述第二模拟对象按照所述移动轨迹移动;当所述移动轨迹不合理时,向所述每个第二用户设备发送所述新的移动轨迹和所述第二模拟对象的标识,使所述每个第二用户设备控制所述第二模拟对象按照所述新的移动轨迹移动本发明实施例中提供的移动轨迹校验的系统可以确保配置参数不被恶意修改,确保移动轨迹都是合理的,另外,服务器还可以控制各个用户设备上的画面都是同步的。参阅图9,本发明实施例提供的移动轨迹校验的系统的另一实施例包括:201、第一用户设备确定第一模拟对象的对象指令作用于第二模拟对象的作用效果。202、第一用户设备取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息。203、第一用户设备根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。204、第一用户设备向服务器发送确定的所述第二模拟对象的移动轨迹。205、服务器校验所述第二模拟对象的移动轨迹,当校验合理时,执行步骤206-209,当校验不合理时,执行步骤210-214。206、服务器向第一用户设备发送响应消息。207、服务器向第二用户设备发送第二模拟对象的移动轨迹和第二模拟对象的标识。208、第一用户设备根据所述响应消息控制所述第二模拟对象按照所述移动轨迹移动。209、第二用户设备控制所述第二模拟对象按照所述移动轨迹移动。第二用户设备可以有多个,图9中只是画出一个做示例性说明。210、当校验合理时,服务器生成新的移动轨迹。211、服务器向第一用户设备发送新的移动轨迹。212、服务器向第一用户设备发送新的移动轨迹和第二模拟对象的标识。213、第一用户设备控制所述第二模拟对象按照新的移动轨迹移动。214、第二用户设备控制所述第二模拟对象按照新的移动轨迹移动。本发明实施例中提供的移动轨迹校验的系统可以确保配置参数不被恶意修改,确保移动轨迹都是合理的,另外,服务器还可以控制各个用户设备上的画面都是同步的。参阅图10,本发明实施例提供的用户设备的一实施例包括:第一确定单元301,用于确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;获取单元302,用于获取与所述第一确定单元301确定的所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;第二确定单元303,用于根据所述获取单元302获取的所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。本发明实施例中,第一确定单元301确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;获取单元302获取与所述第一确定单元301确定的所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;第二确定单元303根据所述获取单元302获取的所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。本发明实施例提供的用户设备可以根据被作用模拟对象当前所处的环境确定移动轨迹,使用很小的计算量就可以实现对被作用模拟对象的移动轨迹的真实模拟。可选地,在上述图10对应的实施例的基础上,本发明实施例提供的用户设备的第一个可选实施例中,所述第一确定单元301用于:确定所述第一模拟对象和所述第二模拟对象之间的距离,根据所述距离确定所述对象指令作用于第二模拟对象的作用效 果。本发明实施例中通过两个模拟对象之间的距离确定对象指令的作用效果,可以提高作用效果的确定效率。可选地,在上述图10对应的实施例的基础上,本发明实施例提供的用户设备的第二个可选实施例中,所述获取单元,用于根据预先配置的各类型作用效果与轨迹模板的对应关系,确定与所述作用效果对应的轨迹模板。可选地,在上述图10对应的实施例、第一个或第二个可选实施例的基础上,本发明实施例提供的用户设备的第三个可选实施例中,所述第一确定单元301,还用于根据所述作用指令作用于所述第二模拟对象的方向确定所述第二模拟对象的移动方向,根据所述作用效果确定所述第二模拟对象的移动距离;所述获取单元302,用于获取所述第一确定单元301确定的所述移动方向上的,且所述移动距离范围内的模拟环境信息。本发明实施例中确定作用方向和移动距离缩小了模拟环境信息的获取范围,提高了获取效率。可选地,在上述用户设备第三个可选实施例的基础上,本发明实施例提供的用户设备的第四个可选实施例中,所述第二确定单元303,用于根据所述获取单元302获取的所述移动方向上的,且所述移动距离范围内的模拟环境信息调整所述轨迹模板,确定所述第二模拟对象的移动轨迹。本发明实施例根据动方向上的,且所述移动距离范围内的模拟环境信息调整轨迹模板,可以确保得到的移动轨迹更准确。图11是本发明实施例提供的用户设备30的结构示意图。所述用户设备30应用于移动轨迹校验的系统,所移动轨迹校验的系统包括用户设备和服务器,所述用户设备30包括处理器310、存储器350和输入/输出i/o设备330,存储器350可以包括只读存储器和随机存取存储器,并向处理器310提供操作指令和数据。 存储器350的一部分还可以包括非易失性随机存取存储器(nvram)。在一些实施方式中,存储器350存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:在本发明实施例中,通过调用存储器350存储的操作指令(该操作指令可存储在操作系统中),确定第一模拟对象的对象指令作用于第二模拟对象的作用效果;获取与所述作用效果对应的轨迹模板,并获取所述第二模拟对象所处的模拟环境信息;根据所述模拟环境信息和所述轨迹模板确定所述第二模拟对象的移动轨迹。与现有技术中人工制作移动轨迹复杂度高,机器计算经常得到不符合当前场景的移动轨迹相比,本发明实施例提供的用户设备可以根据被作用模拟对象当前所处的环境确定移动轨迹,使用很小的计算量就可以实现对被作用模拟对象的移动轨迹的真实模拟。处理器310控制用户设备30的操作,处理器310还可以称为cpu(centralprocessingunit,中央处理单元)。存储器350可以包括只读存储器和随机存取存储器,并向处理器310提供指令和数据。存储器350的一部分还可以包括非易失性随机存取存储器(nvram)。具体的应用中用户设备30的各个组件通过总线系统320耦合在一起,其中总线系统320除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统320。上述本发明实施例揭示的方法可以应用于处理器310中,或者由处理器310实现。处理器310可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器310中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器310可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理 器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器350,处理器310读取存储器350中的信息,结合其硬件完成上述方法的步骤。可选地,处理器310用于确定所述第一模拟对象和所述第二模拟对象之间的距离,根据所述距离确定所述对象指令作用于第二模拟对象的作用效果。可选地,处理器310用于根据预先配置的各类型作用效果与轨迹模板的对应关系,确定与所述作用效果对应的轨迹模板。可选地,处理器310用于根据所述作用指令作用于所述第二模拟对象的方向确定所述第二模拟对象的移动方向,根据所述作用效果确定所述第二模拟对象的移动距离,获取所述移动方向上的,且所述移动距离范围内的模拟环境信息。可选地,处理器310用于根据所述移动方向上的,且所述移动距离范围内的模拟环境信息调整所述轨迹模板,确定所述第二模拟对象的移动轨迹。可选地,i/o设备330用于向所述服务器发送确定的所述第二模拟对象的移动轨迹,使得所述服务器校验所述移动轨迹。以上的用户设备30可以参阅图1至图10部分的描述进行理解,本处不做过多赘述。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。以上对本发明实施例所提供的确定移动轨迹的方法、用户设备以及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12