欢迎光临小豌豆知识网!
当前位置:首页 > 生活技术 > 运动娱乐> 虚拟对象的移动控制方法、装置和终端设备独创技术39612字

虚拟对象的移动控制方法、装置和终端设备

2021-02-12 08:41:18

虚拟对象的移动控制方法、装置和终端设备

  技术领域

  本发明涉及信息处理技术领域,尤其是涉及一种虚拟对象的移动控制方法、装置和终端设备。

  背景技术

  在RTS(Real-Time Strategy Game,即时战略游戏)手机游戏中,玩家如果想要控制游戏中的单位移动,可以在选中单位后用手指点击目的地,单位会沿直线移动到目的地;或者在选中单位后可以用手指绘制轨迹,单位会沿着手指绘制的轨迹移动。

  然而,手指点击目的地的方式中单位只能沿直线移动,移动轨迹非常的死板;手指绘制轨迹的方式中,可能由于手指过粗无法精确绘制轨迹,单位无法按照玩家设想的轨迹移动,还可能发生轨迹抖动现象,即手指在绘制轨迹中如果出现抖动,抖动的轨迹并不平滑,单位会沿着抖动的轨迹移动,单位移动方向经常发生变化,导致单位移动的效率较低。

  发明内容

  有鉴于此,本发明的目的在于提供一种虚拟对象的移动控制方法、装置和终端设备,以绘制平滑的单位移动轨迹,消除轨迹抖动,单位可以按照玩家设想的轨迹移动,具有较高的移动效率。

  第一方面,本发明实施例提供了一种虚拟对象的移动控制方法,通过终端设备展示游戏场景界面,游戏场景界面包括至少一个虚拟对象;方法包括:响应针对于虚拟对象的虚拟对象选择操作,将虚拟对象选择操作对应的虚拟对象确定为目标虚拟对象;响应针对于目标虚拟对象的轨迹绘制操作,确定目标虚拟对象的初始轨迹;对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹;控制目标虚拟对象沿优化轨迹移动。

  在本发明较佳的实施例中,上述响应针对于目标虚拟对象的轨迹绘制操作,确定目标虚拟对象的初始轨迹的步骤,包括:响应针对于目标虚拟对象的长按操作或拖拽操作,进入游戏场景界面的轨迹绘制模式;接收轨迹绘制模式下的轨迹绘制操作,将轨迹绘制操作绘制的轨迹作为目标虚拟对象的初始轨迹。

  在本发明较佳的实施例中,上述终端设备为触控终端;接收轨迹绘制模式下的轨迹绘制操作,将轨迹绘制操作绘制的轨迹作为目标虚拟对象的初始轨迹的步骤,包括:在轨迹绘制模式下,响应针对于触控终端的手指滑动操作,将滑动操作的滑动轨迹确定为目标虚拟对象的初始轨迹。

  在本发明较佳的实施例中,上述响应针对于触控终端的手指滑动操作,将滑动操作的滑动轨迹确定为目标虚拟对象的初始轨迹的步骤,包括:响应针对于触控终端的手指滑动操作,如果滑动轨迹与游戏场景界面的边缘距离小于预设的距离阈值,更新游戏场景界面,以加载边缘之外的游戏场景至触控终端的显示区。

  在本发明较佳的实施例中,上述对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹的步骤,包括:从初始轨迹的起点开始每隔预设的第一长度在初始轨迹中标注轨迹标点;基于初始轨迹中的轨迹标点对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹。

  在本发明较佳的实施例中,上述基于初始轨迹中的轨迹标点对初始轨迹进行平滑处理的步骤,包括:将初始轨迹中的相邻的轨迹标点连线得到逻辑辅助线;对逻辑辅助线进行贝赛尔曲线平滑处理。

  在本发明较佳的实施例中,上述对逻辑辅助线进行贝赛尔曲线平滑处理的步骤,包括:基于逻辑辅助线中相邻线段间的夹角确定目标轨迹标点;在目标轨迹标点对应的第一逻辑辅助线和第二逻辑辅助线上确定目标轨迹标点的第一锚点和第二锚点;基于第一逻辑辅助线和第二逻辑辅助线,生成第一锚点和第二锚点间的贝赛尔曲线;以第一锚点和第二锚点间的贝赛尔曲线,替换第一逻辑辅助线和第二逻辑辅助线;将替换后的逻辑辅助线作为目标虚拟对象的优化轨迹。

  在本发明较佳的实施例中,上述在目标轨迹标点对应的第一逻辑辅助线和第二逻辑辅助线上确定目标轨迹标点的第一锚点和第二锚点的步骤,包括:基于第一逻辑辅助线和第二逻辑辅助线的夹角,确定目标轨迹标点对应的锚点距离;将第一逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第一锚点;将第二逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第二锚点。

  在本发明较佳的实施例中,上述锚点距离与夹角的大小为反比例关系。

  在本发明较佳的实施例中,上述对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹的步骤之后,方法还包括:在游戏场景界面上显示优化轨迹。

  第二方面,本发明实施例还提供一种虚拟对象的移动控制装置,通过终端设备展示游戏场景界面,游戏场景界面包括至少一个虚拟对象;装置包括:目标虚拟对象确定模块,用于响应针对于虚拟对象的虚拟对象选择操作,将虚拟对象选择操作对应的虚拟对象确定为目标虚拟对象;初始轨迹确定模块,用于响应针对于目标虚拟对象的轨迹绘制操作,确定目标虚拟对象的初始轨迹;初始轨迹优化模块,用于对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹;目标虚拟对象移动模块,用于控制目标虚拟对象沿优化轨迹移动。

  第三方面,本发明实施例还提供一种终端设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现上述的虚拟对象的移动控制方法的步骤。

  第四方面,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述的虚拟对象的移动控制方法的步骤。

  本发明实施例带来了以下有益效果:

  本发明实施例提供的一种虚拟对象的移动控制方法、装置和终端设备,终端设备响应轨迹绘制操作确定目标虚拟对象的初始轨迹,将初始轨迹进行平滑处理得到优化轨迹,并控制目标虚拟对象沿优化轨迹移动;优化轨迹较为平滑且可以消除轨迹抖动,目标虚拟对象可以按照玩家设想的轨迹移动,具有较高的移动效率。

  本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。

  为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

  附图说明

  为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

  图1为本发明实施例提供的一种游戏场景界面的示意图;

  图2为本发明实施例提供的一种虚拟对象的移动控制方法的流程图;

  图3为本发明实施例提供的另一种虚拟对象的移动控制方法的流程图;

  图4为本发明实施例提供的一种滑动轨迹绘制方法的示意图;

  图5为本发明实施例提供的一种平滑处理方法的示意图;

  图6为本发明实施例提供的一种虚拟对象的移动控制装置的结构示意图;

  图7为本发明实施例提供的另一种虚拟对象的移动控制装置的结构示意图;

  图8为本发明实施例提供的一种终端设备的结构示意图。

  具体实施方式

  为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  目前,现有虚拟对象的移动控制方法中,游戏的单位(即虚拟对象)无法按照玩家设想的轨迹移动,还可能发生轨迹抖动现象,抖动的轨迹并不平滑,单位移动的效率较低。为了绘制平滑的单位移动轨迹,本发明实施例提供的一种虚拟对象的移动控制方法、装置和终端设备,该技术可以应用于客户端、电脑、手机、平板电脑等可以实现人机交互的终端设备上,尤其可以适用于手机RTS游戏场景中。

  为便于对本实施例进行理解,首先对本发明实施例所公开的虚拟对象的移动控制方法进行详细介绍。

  本实施例提供了一种虚拟对象的移动控制方法,通过终端设备展示游戏场景界面,游戏场景界面包括至少一个虚拟对象。本实施例中的终端设备可以为手机、电脑、平板电脑等可以与用户进行交互的设备。在终端设备中展示游戏场景界面,游戏场景界面用于与用户进行交互,执行本实施例提供的虚拟对象的移动控制方法。

  参见图1所示的一种游戏场景界面的示意图,如图1所示,图1中的圆圈代表虚拟对象,玩家可以控制虚拟对象在游戏场景界面中移动。图1中的游戏场景界面内有7个虚拟对象,玩家可以通过本实施例提供的虚拟对象的移动控制方法,玩家可以为虚拟对象绘制一个移动轨迹,以使图1中的任意虚拟对象按照上述移动轨迹移动至图1中的游戏场景界面的任意位置。基于上述描述,参见图2所示的一种虚拟对象的移动控制方法的流程图,该虚拟对象的移动控制方法包括如下步骤:

  步骤S202,响应针对于虚拟对象的虚拟对象选择操作,将虚拟对象选择操作对应的虚拟对象确定为目标虚拟对象。

  在游戏场景界面中包括至少一个虚拟对象,玩家可以通过虚拟对象选择操作从虚拟对象中选择一个或多个作为目标虚拟对象。目标虚拟对象是指需要在游戏场景界面中进行移动的虚拟对象。虚拟对象选择操作具体可以为点击、长按、或者画圈选中等操作。例如:如图1所示,游戏场景界面内有7个虚拟对象,玩家可以通过点击或长按其中一个虚拟对象,可以将被点击或被长按的虚拟对象作为目标虚拟对象。玩家还可以在在游戏场景界面中画圈,可以将圈内的全部虚拟对象作为目标虚拟对象。

  步骤S204,响应针对于目标虚拟对象的轨迹绘制操作,确定目标虚拟对象的初始轨迹。

  在确定目标虚拟对象之后,玩家可以在游戏场景界面中进行轨迹绘制操作,为目标虚拟对象绘制初始轨迹。目标虚拟对象可以沿初始轨迹进行移动。然而,在绘制初始轨迹很可能存在轨迹抖动,导致初始轨迹并不平滑,目标虚拟对象如果沿着不平滑的初始轨迹移动,可能会导致目标虚拟对象的移动的效率较低,因此可以对初始轨迹进行平滑处理。

  例如,如果终端设备为手机且应用场景为手机游戏,玩家可以用手指在手机屏幕上进行轨迹绘制操作,绘制初始轨迹。由于手指比较粗,所以绘制的初始轨迹并不精细,也容易出现轨迹抖动现象。

  又例如,如果终端设备为电脑且应用场景为电脑游戏,玩家可以用鼠标进行轨迹绘制操作,绘制初始轨迹。玩家在拖动鼠标的时候也可能出现轨迹抖动,绘制的初始轨迹也不平滑。

  步骤S206,对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹。

  为了消除轨迹抖动,可以对初始轨迹进行平滑处理,具体的平滑处理方式包括贝塞尔曲线平滑、滑动平均平滑、Savitzky-Golay滤波(S-G滤波)、Spline样条曲线平滑等方式,可以采用一种或多种上述平滑处理方式对初始轨迹进行平滑处理;此外,还可以采用除上述平滑处理方式之外的其他平滑处理方式。对目标虚拟对象的初始轨迹进行平滑处理后得到的轨迹称为优化轨迹,可以理解为对初始轨迹进行优化(平滑处理)后的轨迹。

  步骤S208,控制目标虚拟对象沿优化轨迹移动。

  优化轨迹由于进行了平滑处理,可以消除轨迹抖动的影响。因此,终端设备在得到优化轨迹后,可以控制目标虚拟对象在游戏场景界面中沿优化轨迹移动。

  本发明实施例提供的一种虚拟对象的移动控制方法,终端设备响应轨迹绘制操作确定目标虚拟对象的初始轨迹,将初始轨迹进行平滑处理得到优化轨迹,并控制目标虚拟对象沿优化轨迹移动;优化轨迹较为平滑且可以消除轨迹抖动,目标虚拟对象可以按照玩家设想的轨迹移动,具有较高的移动效率。

  本实施例提供了另一种虚拟对象的移动控制方法,该方法在上述实施例的基础上实现;本实施例重点描述绘制初始轨迹的具体实施方式。如图3所示的另一种虚拟对象的移动控制方法的流程图,本实施例中的虚拟对象的移动控制方法包括如下步骤:

  步骤S302,响应针对于虚拟对象的虚拟对象选择操作,将虚拟对象选择操作对应的虚拟对象确定为目标虚拟对象。

  玩家在进行目标选择时,可以采用点击、长按或者画圈等操作选择目标虚拟对象;除此以外,终端设备还可以智能推荐一些虚拟对象作为目标虚拟对象,由玩家进行修改或者确认。例如,假设游戏场景界面中包括虚拟对象1-5,终端设备可以推荐虚拟对象1-3作为目标虚拟对象,并将推荐结果通过消息通知的形式在游戏场景界面显示给玩家。玩家如果同意推荐结果,直接确认即可;玩家如果不统一推荐结果,可以不确认或者进行修改,玩家如果想要修改,可以在推荐结果的基础上进行修改,如将虚拟对象1-3修改为虚拟对象1、2、4。

  另外,玩家还可以通过输入指令的方式进行虚拟对象选择操作。例如:玩家可以在游戏场景界面的指令输入框,输入将虚拟对象1、2、4作为目标虚拟对象的指令并确认。终端设备接收到该指令后,即可将虚拟对象1、2、4作为目标虚拟对象。

  步骤S304,响应针对于目标虚拟对象的长按操作或拖拽操作,进入游戏场景界面的轨迹绘制模式。

  玩家在进行轨迹绘制操作,可以对目标虚拟对象进行长按操作或拖拽操作进入游戏场景界面的轨迹绘制模式。例如,玩家可以长按目标虚拟对象A至0.3秒,就可以进入目标虚拟对象A的轨迹绘制模式。又例如,玩家可以滑动目标虚拟对象B,进入目标虚拟对象B的轨迹绘制模式。

  除此以外,玩家也可以通过输入指令的方式进入轨迹绘制模式。例如:玩家输入针对目标虚拟对象C进入轨迹绘制模式的指令,终端设备可以根据该指令进入目标虚拟对象C的轨迹绘制模式。

  除了上述的几种方式之外,终端设备还可以预先设置其他的方式进入轨迹绘制模式,用户只要做出符合设置的操作,终端设备就可以进入轨迹绘制模式。

  步骤S306,接收轨迹绘制模式下的轨迹绘制操作,将轨迹绘制操作绘制的轨迹作为目标虚拟对象的初始轨迹。

  终端设备在进入轨迹绘制模式后,玩家可以在轨迹绘制模式下绘制目标虚拟对象的初始轨迹。不同的终端设备可以有不同的初始轨迹绘制方式。如果终端设备为电脑,玩家可以通过鼠标进行轨迹绘制操作;如果终端设备为手机、平板电脑等移动终端,玩家可以通过手指进行轨迹绘制操作;除以以外,玩家还可以通过一些与终端设备连接的外接设备进行轨迹绘制操作,如手写笔、摇杆、手柄等。

  对于终端设备为手机、平板电脑等移动终端,玩家通过手指进行轨迹绘制操作的情况,玩家可以通过滑动手指的操作进行轨迹绘制操作,例如:在轨迹绘制模式下,响应针对于触控终端的手指滑动操作,将滑动操作的滑动轨迹确定为目标虚拟对象的初始轨迹。

  如果终端设备为可以进行触控操作的触控终端,玩家可以在触控终端显示的游戏场景界面上滑动手指,进行滑动操作,将滑动操作得到的滑动轨迹作为目标虚拟对象的初始轨迹。该方式中,玩家可以进行滑动操作,并将滑动操作得到的滑动轨迹作为初始轨迹,快速、准确地绘制初始轨迹。

  参见图4所示的一种滑动轨迹绘制方法的示意图,图4包括游戏场景界面,游戏场景界面中左侧的人物头像代表目标虚拟对象,也可以称为兵牌。用户进行手指滑动操作得到的滑动轨迹即为图4中的曲线1。从图4可以看出,滑动轨迹(曲线1)并不平滑,需要进行平滑处理。

  玩家在游戏场景界面上滑动手指时,游戏场景界面可能无法完全显示游戏场景,此时触控终端可以拖动游戏场景界面,并将游戏场景界面之外的游戏场景加载到游戏场景界面中。针对上述游戏场景界面无法完全显示游戏场景的情况,可以通过步骤A1-步骤A2拖动游戏场景界面:

  步骤A1,响应针对于触控终端的手指滑动操作,在游戏场景界面中显示滑动轨迹。

  玩家可以在触控终端上进行手指滑动操作,其中,玩家可以在触控终端的游戏场景界面进行手指滑动操作,也可以在触控终端上除了游戏场景界面之外的其他区域进行手指滑动操作。玩家进行手指滑动操作得到的滑动轨迹可以显示在游戏场景界面中。

  例如,假设触控终端为手机,手机的主屏幕显示游戏场景界面。玩家可以在主屏幕显示的游戏场景界面进行手指滑动操作,并将手指滑动操作得到的滑动轨迹显示在主屏幕的在游戏场景界面中,当然,也可以不显示滑动轨迹。

  又例如,假设触控终端为游戏机,游戏机包括主屏幕和副屏幕,主屏幕显示游戏场景界面。玩家可以在主屏幕显示的游戏场景界面进行手指滑动操作,也可以在副屏幕进行手指滑动操作。无论玩家在主屏幕还是副屏幕进行手指滑动操作,得到的滑动轨迹均可以显示在主屏幕的在游戏场景界面中。

  步骤A2,如果滑动轨迹与游戏场景界面的边缘距离小于预设的距离阈值,更新游戏场景界面,以加载边缘之外的游戏场景至触控终端的显示区。

  在将滑动轨迹显示在触控设备游戏场景界面的过程中,可能出现滑动轨迹过长,无法显示在一个触控设备的屏幕上的情况。面对这种情况,终端设备可以调整触控设备的屏幕上显示的游戏场景界面的比例和内容,即更新游戏场景界面,以使滑动轨迹显示在触控设备游戏场景界面中。

  如果滑动轨迹与游戏场景界面的边缘距离小于预设的距离阈值,则说明滑动轨迹已经到达游戏场景界面的边缘,或者非常接近游戏场景界面的边缘,此时触控设备就可以更新游戏场景界面,加载边缘之外的游戏场景至触控终端的显示区,以使触控终端显示更多的游戏场景。

  例如,如果触控终端是手机,游戏场景较大时,手机的显示屏可能只显示部分游戏场景(称为A区域),如果玩家在进行手指滑动操作时如果滑动轨迹与A区域的边缘距离小于预设的距离阈值,则说明滑动轨迹已经非常接近A区域的边缘,此时可以通过缩放或者拖动游戏的形式在显示屏上显示更多的游戏场景(称为B区域),即加载B区域至手机的显示区。

  本发明实施例提供的上述方法,在滑动轨迹接近游戏场景界面的边缘时更新游戏场景界面,以加载边缘之外的游戏场景至触控终端的显示区。可以将更多的游戏场景显示在触控终端中,方便玩家在游戏场景界面的边缘之外的游戏场景中进行手指滑动操作并绘制滑动轨迹。

  步骤S308,对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹。

  上述步骤得到的滑动轨迹由于是手指进行滑动操作得到的,因此很可能出现轨迹抖动的情况,需要进行平滑处理,常用的平滑处理方式包括贝塞尔曲线平滑、滑动平均平滑、Savitzky-Golay滤波、Spline样条曲线平滑等方式。

  其中,滑动平均平滑是指邻域内的数据点做平均代替邻域的中心点值,滑动平均平滑除了一般滑动平均,还有加权滑动平均和指数滑动平均。Savitzky-Golay滤波是基于局域多项式最小二乘法拟合的滤波方法。Spline样条曲线平滑可以根据多个样条曲线参数方程进行平滑处理。具体来说,可以通过步骤B1-步骤B2进行平滑处理:

  步骤B1,从初始轨迹的起点开始每隔预设的第一长度在初始轨迹中标注轨迹标点。

  参见图5所示的一种平滑处理方法的示意图,图5在图4得到的初始轨迹(曲线1)的基础上进行平滑处理。首先,可以从初始轨迹的起点(即兵牌的位置)开始每隔预设的第一长度在初始轨迹中标注轨迹标点,轨迹标点为初始轨迹(曲线1)中面积较大的圆点(如标号2和标号3的圆点)。例如,假设第一长度为10,就可以从起点开始每隔长度10设定一个标记标点。

  可以看出,图5中以距离兵牌的第一长度的位置为第1个轨迹标点(即标号2的圆点),图5的初始轨迹(曲线1)上共有7个轨迹标点,其中,标号3的圆点为第5个轨迹标点。

  步骤B2基于初始轨迹中的轨迹标点对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹。

  再标注完成初始轨迹的轨迹标点后,可以基于轨迹标点对初始轨迹进行平滑处理。例如,可以采用步骤C1-步骤C2通过贝塞尔曲线的方式进行平滑处理。

  步骤C1,将初始轨迹中的相邻的轨迹标点连线得到逻辑辅助线。

  如图5所示,可以将图5中的轨迹标点、起点和终点按照顺序连线,得到逻辑辅助线(即图5中的虚线)。终端设备可以在逻辑辅助线的帮助下进行贝赛尔曲线平滑处理。

  步骤C2,对逻辑辅助线进行贝赛尔曲线平滑处理。

  每两个相邻的轨迹标点之间的逻辑辅助线是直线,而初始轨迹中每两个相邻的轨迹标点之间的轨迹是不规则的曲线。因此通过逻辑辅助线可以缩短每两个相邻的轨迹标点之间的轨迹距离。然而逻辑辅助线并不平滑,因此可以通过步骤D1-步骤D5进行贝赛尔曲线平滑处理,得到优化轨迹。

  步骤D1,基于逻辑辅助线中相邻线段间的夹角确定目标轨迹标点。

  如图所示,逻辑辅助线中相邻线段的交点均为轨迹标点。不同的相邻线段间的夹角也并不相同。目标轨迹标点是指需要进行平滑处理的轨迹标点。一般来说,可以将所有轨迹标点均作为目标轨迹标点进行平滑处理吗,还可以将满足特定阈值范围的夹角对应的轨迹标点作为目标轨迹标点进行平滑处理。

  步骤D2,在目标轨迹标点对应的第一逻辑辅助线和第二逻辑辅助线上确定目标轨迹标点的第一锚点和第二锚点。

  以图5中的第5个轨迹标点(即标号3的圆点)为例,以第5个轨迹标点为终点的标号4的逻辑辅助线称为第一逻辑辅助线,以第5个轨迹标点为起点的标号5的逻辑辅助线称为第二逻辑辅助线,锚点是指图5中在每个轨迹标点前后的两个面积较小的小圆圈(位于第一逻辑辅助线上的标号6锚点称为第一锚点,位于第二逻辑辅助线上标号7的锚点称为第二锚点)。

  可以看出,一个轨迹标点距离其对应的每个锚点的锚点距离是相同的,不同轨迹标点的锚点距离并不相同,可以通过步骤E1-步骤E3得到第一锚点和第二锚点:

  步骤E1,基于第一逻辑辅助线和第二逻辑辅助线的夹角,确定目标轨迹标点对应的锚点距离。

  本实施例中的第一逻辑辅助线和第二逻辑辅助线的夹角,与锚点距离呈反比例关系,根据夹角的角度锚点距离可以等比例放大或缩小。也就是说,夹角越大,距离越小。如果夹角为180°,则锚点距离为0,此时第一逻辑辅助线和第二逻辑辅助线是一条直线,第一锚点、目标轨迹标点和第二锚点相互重叠。其中,具体的比例关系可以由玩家或者游戏设计者手动设置,这里不做限定。

  步骤E2,将第一逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第一锚点。

  在确定好锚点距离后,可以将第一逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第一锚点。例如,假设目标轨迹标点的坐标为(0,0),锚点距离为1,第一逻辑辅助线为x轴,则第一锚点的坐标为(-1,0)。

  步骤E3,将第二逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第二锚点。

  在确定好锚点距离后,还可以将第二逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第二锚点。例如,假设目标轨迹标点的坐标为(0,0),锚点距离为1,第一逻辑辅助线为y轴,则第二锚点的坐标为(0,1)。

  步骤D3,基于第一逻辑辅助线和第二逻辑辅助线,生成第一锚点和第二锚点间的贝赛尔曲线。

  在确定第一锚点和第二锚点的坐标,以及第一逻辑辅助线和第二逻辑辅助线的位置后,可以生成第一锚点和第二锚点间的贝赛尔曲线。

  步骤D4,以第一锚点和第二锚点间的贝赛尔曲线,替换第一逻辑辅助线和第二逻辑辅助线。

  在生成贝赛尔曲线后,可以用贝赛尔曲线替换第一锚点和第二锚点间的第一逻辑辅助线和第二逻辑辅助线,这样可以保证替换后的逻辑辅助线是平滑的。如图5所示,图5中用平滑的曲线(即图5中的曲线8)替代了标号6的第一锚点和标号7的第二锚点间的第一逻辑辅助线和第二逻辑辅助线,导致替换后的逻辑辅助线是平滑的。

  步骤D5,将替换后的逻辑辅助线作为目标虚拟对象的优化轨迹。

  本发明实施例提供的上述方法,详细说明了贝塞尔曲线平滑的方法,将替换后的逻辑辅助线成作为目标虚拟对象的优化轨迹,得到的优化轨迹由贝赛尔曲线和直线组成,具有较高的平滑程度。

  在得到优化轨迹后,在游戏场景界面上可以显示优化轨迹。通过显示优化轨迹,可以清楚使玩家确认目标虚拟对象的实际移动轨迹,玩家可以对优化轨迹进行进一步地修改或确认。

  步骤S310,控制目标虚拟对象沿优化轨迹移动。

  在得到优化轨迹后,终端设备可以控制目标虚拟对象沿优化轨迹移动,移动的过程中非常平滑且不存在轨迹抖动,目标虚拟对象具有较高的移动效率。

  举例说明本实施例提供的虚拟对象的移动控制方法的具体流程。玩家可以点击或长按虚拟对象进行虚拟对象选择操作,将选中的虚拟对象作为目标虚拟对象。针对目标虚拟对象进入轨迹绘制模式,玩家可以通过手指滑动操作绘制目标虚拟对象的初始轨迹。终端设备得到初始轨迹后可以进行平滑处理,具体来说,首先在初始轨迹中标注轨迹标点,然后画出相邻轨迹标点之间的逻辑辅助线,根据逻辑辅助线之间的夹角确定锚点距离,确定轨迹标点对应的两个锚点,并绘制贝赛尔曲线替代逻辑辅助线,完成平滑处理得到优化轨迹。最后可以在游戏场景界面上显示优化轨迹,并控制目标虚拟对象沿优化轨迹移动。

  需要说明的是,上述各方法实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

  对应于上述方法实施例,本发明实施例提供了一种虚拟对象的移动控制装置,通过终端设备展示游戏场景界面,游戏场景界面包括至少一个虚拟对象;如图6所示的一种虚拟对象的移动控制装置的结构示意图,该虚拟对象的移动控制装置包括:

  目标虚拟对象确定模块61,用于响应针对于虚拟对象的虚拟对象选择操作,将虚拟对象选择操作对应的虚拟对象确定为目标虚拟对象;

  初始轨迹确定模块62,用于响应针对于目标虚拟对象的轨迹绘制操作,确定目标虚拟对象的初始轨迹;

  初始轨迹优化模块63,用于对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹;

  目标虚拟对象移动模块64,用于控制目标虚拟对象沿优化轨迹移动。

  本发明实施例提供的一种虚拟对象的移动控制装置,终端设备响应轨迹绘制操作确定目标虚拟对象的初始轨迹,将初始轨迹进行平滑处理得到优化轨迹,并控制目标虚拟对象沿优化轨迹移动;优化轨迹较为平滑且可以消除轨迹抖动,目标虚拟对象可以按照玩家设想的轨迹移动,具有较高的移动效率。

  上述初始轨迹确定模块,用于响应针对于目标虚拟对象的长按操作或拖拽操作,进入游戏场景界面的轨迹绘制模式;接收轨迹绘制模式下的轨迹绘制操作,将轨迹绘制操作绘制的轨迹作为目标虚拟对象的初始轨迹。

  上述终端设备为触控终端;初始轨迹确定模块,用于在轨迹绘制模式下,响应针对于触控终端的手指滑动操作,将滑动操作的滑动轨迹确定为目标虚拟对象的初始轨迹。

  上述初始轨迹确定模块,用于响应针对于触控终端的手指滑动操作,如果滑动轨迹与游戏场景界面的边缘距离小于预设的距离阈值,更新游戏场景界面,以加载边缘之外的游戏场景至触控终端的显示区。

  上述初始轨迹优化模块,用于从初始轨迹的起点开始每隔预设的第一长度在初始轨迹中标注轨迹标点;基于初始轨迹中的轨迹标点对初始轨迹进行平滑处理,得到目标虚拟对象的优化轨迹。

  上述初始轨迹优化模块,用于将初始轨迹中的相邻的轨迹标点连线得到逻辑辅助线;对逻辑辅助线进行贝赛尔曲线平滑处理。

  上述初始轨迹优化模块,用于基于逻辑辅助线中相邻线段间的夹角确定目标轨迹标点;在目标轨迹标点对应的第一逻辑辅助线和第二逻辑辅助线上确定目标轨迹标点的第一锚点和第二锚点;基于第一逻辑辅助线和第二逻辑辅助线,生成第一锚点和第二锚点间的贝赛尔曲线;以第一锚点和第二锚点间的贝赛尔曲线,替换第一逻辑辅助线和第二逻辑辅助线;将替换后的逻辑辅助线作为目标虚拟对象的优化轨迹。

  上述初始轨迹优化模块,用于基于第一逻辑辅助线和第二逻辑辅助线的夹角,确定目标轨迹标点对应的锚点距离;将第一逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第一锚点;将第二逻辑辅助线上与目标轨迹标点相距锚点距离的点确定为第二锚点。上述锚点距离与夹角的大小为反比例关系。

  参见图7所示的另一种虚拟对象的移动控制装置的结构示意图,上述虚拟对象的移动控制装置还包括优化轨迹显示模块65,与初始轨迹优化模块63连接,用于在所述游戏场景界面上显示所述优化轨迹。

  本发明实施例还提供了一种终端设备,用于运行上述虚拟对象的移动控制方法;参见图8所示的一种终端设备的结构示意图,该终端设备包括存储器100和处理器101,其中,存储器100用于存储一条或多条计算机指令,一条或多条计算机指令被处理器101执行,以实现上述虚拟对象的移动控制方法。

  进一步地,图8所示的终端设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。

  其中,存储器100可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

  处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。

  本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述虚拟对象的移动控制方法,具体实现可参见方法实施例,在此不再赘述。

  本发明实施例所提供的虚拟对象的移动控制方法、装置和终端设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。

  所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

  另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

  所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

  在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

  最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

《虚拟对象的移动控制方法、装置和终端设备.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)