CN111151003A - 虚拟对象的控制方法和装置 - Google Patents

虚拟对象的控制方法和装置 Download PDF

Info

Publication number
CN111151003A
CN111151003A CN201911421337.9A CN201911421337A CN111151003A CN 111151003 A CN111151003 A CN 111151003A CN 201911421337 A CN201911421337 A CN 201911421337A CN 111151003 A CN111151003 A CN 111151003A
Authority
CN
China
Prior art keywords
speed
virtual object
current
virtual
determining
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.)
Granted
Application number
CN201911421337.9A
Other languages
English (en)
Other versions
CN111151003B (zh
Inventor
谢昭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201911421337.9A priority Critical patent/CN111151003B/zh
Publication of CN111151003A publication Critical patent/CN111151003A/zh
Application granted granted Critical
Publication of CN111151003B publication Critical patent/CN111151003B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/426Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving on-screen location information, e.g. screen coordinates of an area at which the player is aiming with a light gun
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种虚拟对象的控制方法和装置。其中,该方法包括:响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;确定操作方向与当前移动方向之间的夹角;根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度;控制虚拟对象按照目标状态信息进行移动。本发明解决了现有技术中对游戏中的虚拟对象的控制所消耗的计算资源过高的技术问题。

Description

虚拟对象的控制方法和装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种虚拟对象的控制方法和装置。
背景技术
在游戏的虚拟场景中,经常会涉及到虚拟角色的移动,而虚拟角色的移动会涉及各种物理解算。目前在PC端游戏中的一些角色,例如四轮驱动车,角色爬墙等,均需要为物理解算付出较多的计算资源,而在移动平台上,存在类似四轮车辆的解算和模拟,其是对物理***施加相应输入的方式,由物理***解算来得到相应的模拟结果。
上述控制虚拟角色移动的方式对于终端来说,尤其是对于移动终端来说,由于机能限制,进行大量复杂的物理解算十分困难,而由于物理解算消耗巨大,能够支撑解算的计算资源有限,因此在一局战斗中,同时存的虚拟对象的数量也会较少。
针对现有技术中对游戏中的虚拟对象的控制所消耗的计算资源过高的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种虚拟对象的控制方法和装置,以至少解决现有技术中对游戏中的虚拟对象的控制所消耗的计算资源过高的技术问题。
根据本发明实施例的一个方面,提供了一种虚拟对象的控制方法,包括:响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;确定操作方向与当前移动方向之间的夹角;根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度;控制虚拟对象按照目标状态信息进行移动。
可选地,根据夹角和当前状态信息确定虚拟对象的目标状态信息,包括:根据夹角和当前移动方向确定目标移动方向;以及根据当前速度确定目标速度。
可选地,根据夹角和当前移动方向确定目标移动方向,包括:如果夹角小于第一预设角度,确定目标移动方向与当前移动方向相同;如果所述夹角大于等于第二预设角度,确定所述目标移动方向与所述当前移动方向相反,其中,第二预设角度大于第一预设角度;如果夹角大于等于第一预设角度且小于第二预设角度,确定目标移动方向偏离当前移动方向。
可选地,虚拟对象在第一虚拟场景中,第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,所述虚拟载具为马匹,根据夹角和当前移动方向确定目标移动方向,包括:如果夹角大于等于第一预设角度且小于第二预设角度,确定虚拟对象的目标移动方向在虚拟对象转弯移动的过程中由当前移动方向向操作方向进行调整。
可选地,如果夹角大于等于第一预设角度且小于第二预设角度,根据当前速度确定目标速度,包括:根据虚拟对象预设的转向角速度和转向半径确定虚拟对象在转弯时的向心速度,其中,转向半径根据触控操作的操作方向确定;将虚拟对象的当前速度和向心速度叠加得到目标速度。
可选地,虚拟对象在第二虚拟场景中,第二虚拟场景中的虚拟对象在冰面上移动,根据当前速度确定目标速度,包括:如果夹角大于等于第一预设角度且小于第二预设角度,控制虚拟对象由当前速度按照第四加速度减速,得到第一速度;获取操作虚拟控件所产生的控制速度,并在控制速度的基础上按照第五加速度加速,得到第二速度,其中,控制速度的方向与操作方向相同;将第一速度和第二速度叠加,得到目标速度。
可选地,如果夹角大于等于第一预设角度且小于第二预设角度,根据当前移动方向和操作方向确定目标移动方向,包括:确定目标移动方向与目标速度的方向相同。
可选地,在夹角小于第一预设角度的情况下,根据当前速度确定目标速度,包括:在对虚拟控件进行操作的过程中,如果当前速度小于预设的最大速度,在当前速度的基础上按照第一加速度加速得到目标速度,如果虚拟对象的当前速度达到最大速度,确定最大速度为目标速度;在对虚拟控件的操作停止的情况下,在当前速度的基础上按照第二加速度减速得到目标速度。
可选地,在夹角大于等于第二预设角度的情况下,根据当前速度确定目标速度,包括:在当前速度的基础上按照第三加速度减速至零;确定与当前移动方向相反的预设速度为目标速度。
根据本发明实施例的一个方面,提供了一种虚拟对象的控制方法,包括:响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;确定操作方向与虚拟对象的当前移动方向的夹角;根据夹角确定虚拟对象在游戏场景内的移动模式,并根据当前状态信息控制虚拟对象在移动模式下移动。
可选地,根据夹角确定虚拟对象在游戏场景内的移动模式,包括:如果夹角小于第一预设角度,确定移动模式为前进模式;如果夹角大于等于第二预设角度,确定移动模式为倒退模式;如果夹角大于等于第一预设角度且小于第二预设角度,确定模式为转弯模式。
可选地,移动模式为前进模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:在对虚拟控件进行操作的过程中,如果虚拟对象的当前速度小于预设的最大速度,按照第一加速度控制虚拟对象加速移动,如果虚拟对象的当前速度达到最大速度,控制虚拟对象保持最大速度移动;在对虚拟控件的操作停止的情况下,按照第二加速度控制虚拟对象减速移动。
可选地,移动模式为倒退模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:在当前速度的基础上按照第三加速度减速至零;按照预设速度控制虚拟对象向当前移动方向的反方向移动。
可选地,虚拟对象在第一虚拟场景中,第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,虚拟载具为马匹,移动模式为转弯模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:根据虚拟对象预设的转向角速度和转向半径确定虚拟对象在转弯时的向心速度,其中,转向半径根据触控操作的操作方向确定;将虚拟对象的当前移动速度和向心速度叠加得到虚拟对象转弯时的移动速度。
可选地,虚拟对象在第二虚拟场景中,第二虚拟场景中的虚拟对象在冰面上移动,移动模式为转弯模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:控制虚拟对象由当前速度按照第四加速度减速,得到第一速度;获取操作虚拟控件所产生的控制速度,并在控制速度的基础上按照第五加速度加速,得到第二速度,其中,控制速度的方向与操作方向相同;将第一速度和第二速度叠加,得到虚拟对象转弯时的移动速度。
根据本发明实施例的一个方面,提供了一种虚拟对象的控制装置,包括:第一确定模块,用于响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;第二确定模块,用于确定操作方向与当前移动方向之间的夹角;获取模块,用于根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度;控制模块,用于控制虚拟对象按照目标状态信息进行移动。
根据本发明实施例的一个方面,提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述的虚拟对象的控制方法。
根据本发明实施例的一个方面,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述的虚拟对象的控制方法。
在本发明实施例中,响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;确定操作方向与当前移动方向之间的夹角;根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度;控制虚拟对象按照目标状态信息进行移动。上述方案将虚拟对象作为一个整体进行建模,只引入与表现相关性较大的关键参数(当前移动方向、当前速度和夹角),忽略其他复杂的交互解算,从而能够降低对计算资源的消耗,解决了现有技术中对游戏中的虚拟对象的控制所消耗的计算资源过高的技术问题,进而能够在移动终端上同时存在多个虚拟对象。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本申请实施例的一种虚拟对象的控制方法的流程图;
图2是根据本申请实施例的一种确定夹角的示意图;
图3是根据本申请实施例的一种第一虚拟场景中的虚拟对象转弯的示意图;
图4是根据本申请实施例的一种第二场景中控制虚拟对象转向的示意图;
图5是根据本申请实施例的另一种虚拟对象的控制方法的流程图;
图6是根据本申请实施例的一种虚拟对象的控制装置的示意图;以及
图7是根据本申请实施例的一种虚拟对象的控制装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
一实施例
根据本发明实施例,提供了一种虚拟对象的控制方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种虚拟对象的控制方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度。
具体的,上述虚拟控件可以是虚拟摇杆,用于对虚拟对象在游戏场景中的运动状态进行控制。在一种可选的实施例中,以运行在移动终端上的游戏为例,虚拟控件可以设置在游戏对应的图形用户界面的左下角或右下角,便于用户对其进行操作。
对虚拟控件进行操作的过程可以是通过对终端设备的触控操作将虚拟控件由原点中心位置移动至其他位置的过程,由原点中心位置指向其他位置的方向即为触控操作的操作方向。在对虚拟控件进行操作的过程中,实时获取触控操作的操作方向以及虚拟对象在游戏场景内的当前状态信息,以便对虚拟对象进行控制。
上述虚拟对象的当前移动方向用于表示虚拟对象移动的方向,虚拟对象的当前速度用于表示虚拟对象在游戏场景内的移动速度。虚拟对象还包括朝向,朝向用于表示虚拟对象所面对的方向,虚拟对象的朝向与虚拟对象的移动方向可以相同,也可以不同。例如,虚拟对象在前进时,其朝向和移动方向相同,但在虚拟对象倒退时,其朝向和移动方向不相同。
在一种可选的实施例中,仍以运行在移动终端上的游戏为例,设备实时检测对虚拟控件的触控操作。当检测到对虚拟对象的触控操作时,获取触控操作的操作方向以及虚拟对象的当前状态信息。
步骤S104,确定操作方向与当前移动方向之间的夹角。
具体的,在确定操作方向的基础上,可以确定其与虚拟对象的当前移动方向之间的夹角。
图2是根据本申请实施例的一种确定夹角的示意图,结合图2所示,箭头P1用于表示虚拟对象的当前移动方向,箭头P2用于表示触控操作的操作方向。箭头P1与箭头P2之间的夹角即为操作方向与当前移动方向之间的夹角。
在一种可选的实施例中,可以分别确定当前移动方向相对于游戏场景中的世界坐标系中0角度坐标轴的角度,以及操作方向相对于世界坐标系中0角度坐标轴的角度,然后获取两个角度的差值,即为上述夹角。
在另一种可选的实施例,可以将虚拟对象的当前移动方向作为0度的方向,在检测到用于控制虚拟控件的触控操作之后,确定触控操作的操作方向相对于虚拟对象的当前移动方向的角度,该角度即为上述夹角。
步骤S106,根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度。
在确定操作方向与当前移动方向夹角之后,即可确定对虚拟对象的控制意图,进而确定虚拟对象的目标状态。
在一种可选的实施例中,可以根据夹角确定目标移动方向,例如,如果该夹角大于预设角度值,确定需要控制虚拟对象转弯,更改当前移动方向得到目标移动方向,如果该夹角小于预设值,确定需要控制虚拟对象前进,则保持当前移动方向,将当前移动方向作为目标移动方向。
在另一种可选的实施例中,可以在目标移动方向的基础上,结合当前速度,得到目标速度。例如,在目标移动方向与当前移动方向相同的情况下,可以根据当前速度进行加速直至触控操作停止;在目标移动方向与当前移动方向不同的情况下,可以根据当前速度和通过触控操作所产生的新的速度进行叠加,以得到目标速度。
步骤S108,控制虚拟对象按照目标状态信息进行移动。
控制虚拟对象按照根据虚拟对象的目标状态信息进行移动,即为通过对虚拟对象的控制,使虚拟对象达到目标状态信息中所记录的目标状态。目标状态信息中包含有目标移动方向和目标速度,因此上述方案用于控制虚拟对象达到目标状态信息中的目标移动方向和目标速度,从而实现对虚拟对象的移动控制。
由上可知,本申请上述实施例响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;确定操作方向与当前移动方向之间的夹角;根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度;控制虚拟对象按照目标状态信息进行移动。上述方案将虚拟对象作为一个整体进行建模,只引入与表现相关性较大的关键参数(当前移动方向、当前速度和夹角),忽略其他复杂的交互解算,从而能够降低对计算资源的消耗,解决了现有技术中对游戏中的虚拟对象的控制所消耗的计算资源过高的技术问题,进而能够在移动终端上同时存在多个虚拟对象。
当需要解算的虚拟对象逐步上升时,其所使用的消耗也越来越高。对于移动平台来说,除了这些解算消耗,更多的消耗会放在渲染和逻辑处理上,通常分配给解算的消耗超过10%,处理器就会压力过大,通过上述方案,能够使通常的移动平台实现大约25-30个虚拟对象的解算消耗,从而可以满足更多游戏场景的需求。
作为一种可选的实施例,根据夹角和当前状态信息确定虚拟对象的目标状态信息,包括:根据夹角和当前移动方向确定目标移动方向;以及根据当前速度确定目标速度。
可以根据上述夹角确定是否改变当前移动方向,从而确定目标移动方向是否与当前移动方向相同,并可以在当前速度的基础上进行加速、减速或进行速度的叠加,得到目标速度。下面具体说明。
作为一种可选的实施例,根据夹角和当前移动方向确定目标移动方向,包括:如果夹角小于第一预设角度,确定目标移动方向与当前移动方向相同;如果夹角大于等于第二预设角度,确定目标移动方向与当前移动方向相反,其中,第二预设角度大于第一预设角度,其中,第二预设角度大于第一预设角度;如果夹角大于等于第一预设角度且小于第二预设角度,确定目标移动方向偏离当前移动方向。
虚拟控件的操作方向用于反应需要虚拟对象移动的方向。在上述方案中,如果夹角小于第一预设角度,确定目标移动方向与当前移动方向相同,即确定虚拟对象的移动模式为前进;如果夹角大于第二预设值,确定目标移动方向与当前移动方向相反(但虚拟对象的朝向可以不变),并确定虚拟对象的移动模式的倒退模式;如果夹角大于第一与射角度并小于第二预设角度,确定目标移动方向在当前移动方向的基础上发生改变,并确定虚拟对象的移动模式为转弯模式。
当希望虚拟对象在游戏场景中前进移动时,可以对虚拟控件进行与当前移动方向相同(夹角为0°)的操作方向的触控操作,但由于触控操作存在一定误差,触控操作的操作方向难以与虚拟对象的当前移动方向完全相同,因此确定二者的夹角小于第一预设角度的触控操纵均用于控制虚拟对象前进。同样,当希望虚拟对象后退时,可以对虚拟控件进行与当前移动方向相反(夹角为180°)的操作方向的触控操作,但由于触控操作存在一定误差,因此确定夹角大于第二预设角度的触控操作均用于控制虚拟对象倒退。当上述夹角大于等于第一预设角度并小于第二预设角度时,即可以确定对虚拟对象的控制意图是转弯移动,因此需要改变当前移动方向。
在一种可选的实施例中,结合图2所示,图2中上方虚线构成的区域即为夹角小于第一预设角度的区域,操作方向落在该区域中的触控操作用于控制虚拟对象前进,其对应的目标移动方向不变,例如P2;下方虚线构成的区域为夹角大于等于第二预设角度的区域,操作方向落在该区域的触控操作作用于控制虚拟对象后退,其对应的目标移动方向不变,例如P3;上方左侧虚线和下方左侧的虚线构成的区域,以及上方右侧虚线和下方右侧的虚线构成的区域即为夹角大于等于第一预设角度且小于第二预设角度的区域,操作方向落在该区域中的触控操作用于控制虚拟对象转向,例如P4。
作为一种可选的实施例,虚拟对象在第一虚拟场景中,第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,虚拟载具为马匹,根据夹角和当前移动方向确定目标移动方向,包括:如果夹角大于等于第一预设角度且小于第二预设角度,确定虚拟对象的目标移动方向在虚拟对象转弯移动的过程中由当前移动方向向操作方向进行调整。
第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,在一种可选的实施例中,上述虚拟角色可以为马匹,上述的第一虚拟场景即为虚拟角色在游戏中骑马移动的场景。
如果夹角大于等于第一预设角度且小于第二预设角度,确定用于控制虚拟对象转弯。由于上述虚拟场景的虚拟对象中包括虚拟载具,因此可以控制虚拟对象按照一定的弧度转弯,而并不直接转向。在虚拟对象转弯的过程中,虚拟对象的移动方向持续变化,直至完全转至触控操作所指向的操作方向。但在这一过程中,如果虚拟控件被释放,则虚拟对象难以完全转至操作方向,而仅会停滞在虚拟控件被释放时虚拟对象的移动方向。在接收到用于控制虚拟对象转弯的触控操作时,虚拟对象在转弯的过程中,其移动方向发生变化,由当前移动方向转向至触控操作的操作方向。
作为一种可选的实施例,如果夹角大于等于第一预设角度且小于第二预设角度,根据当前速度确定目标速度,包括:根据虚拟对象预设的转向角速度和转向半径确定虚拟对象在转弯时的向心速度,其中,转向半径根据触控操作的操作方向确定;将虚拟对象的当前速度和向心速度叠加得到目标速度。
具体的,上述转向角速度是预设的指定速度,转向半径与转弯的角度呈现反比例关系,也即转弯的角度越大,转向半径越小。
图3是根据本申请实施例的一种第一虚拟场景中的虚拟对象转弯的示意图,结合图3所示,0点为虚拟对象在转弯过程中所在的位置,v0为虚拟对象的当前速度,v1为向心速度,其中,v1=w*r,w表示预设的转向角速度,r为转向半径。将v0与v1叠加得到v2,即为虚拟对象的目标速度。
作为一种可选的实施例,虚拟对象在第二虚拟场景中,第二虚拟场景中的虚拟对象在冰面上移动,根据当前速度确定目标速度,包括:如果夹角大于等于第一预设角度且小于第二预设角度,控制虚拟对象由当前速度按照第四加速度减速,得到第一速度;获取操作虚拟控件所产生的控制速度,并在控制速度的基础上按照第五加速度加速,得到第二速度,其中,控制速度的方向与操作方向相同;将第一速度和第二速度叠加,得到目标速度。
具体的,上述第二虚拟场景可以是虚拟对象在冰面上移动的游戏场景。虚拟对象可以仅包括虚拟角色而不包括虚拟载具,因此在夹角大于等于第一预设角度且小于第二预设角度的情况下可以直接进行转向。
在上述方案中,控制虚拟对象在当前速度的基础上减速,并对触控操作的操作方向上的控制速度加速,从而实现虚拟对象的转向,该控制速度在初始时为零。图4是根据本申请实施例的一种第二场景中控制虚拟对象转向的示意图,结合图4所示,v11是虚拟对象转向过程中某个时刻的当前速度,其按照第四加速度减速,v12是同一时刻操作方向的速度,其按照第五加速度加速,将v11和v12进行叠加得到v13,v13即为这一时刻虚拟对象的目标速度。随着时间的增长,v11会减小至0,v12最大会增大至预设的最大速度,从而实现了对虚拟对象的转向控制。
作为一种可选的实施例,如果夹角大于等于第一预设角度且小于第二预设角度,根据当前移动方向和操作方向确定目标移动方向,包括:确定目标移动方向与目标速度的方向相同。
在第二虚拟场景中,虚拟对象可以只包括虚拟角色而不包括虚拟载具,因此目标移动方向容易变动,与目标速度保持一致即可,而目标对象的朝向则与操作方向相同。
作为一种可选的实施例,在夹角小于第一预设角度的情况下,根据当前速度确定目标速度,包括:在对虚拟控件进行操作的过程中,如果当前速度小于预设的最大速度,在当前速度的基础上按照第一加速度加速得到目标速度,如果虚拟对象的当前速度达到最大速度,确定最大速度为目标速度;在对虚拟控件的操作停止的情况下,在当前速度的基础上按照第二加速度减速得到目标速度。
在夹角小于第一预设角度的情况下,确定控制虚拟对象前进。具体的,上述第一加速度和第二加速度可以相同。
在一种可选的实施例中,结合图2所示,触控操作的操作方向为P1,当前的运动速度小于预设的最大速度,则虚拟对象会按照第一加速度加速至最大速度,达到最大速度后,持续按照最大速度移动。当停止对虚拟控件的触控操作后,虚拟对象按照第二加速度减速,直至停止。
作为一种可选的实施例,在夹角大于等于第二预设角度的情况下,根据当前速度确定目标速度,包括:在当前速度的基础上按照第三加速度减速至零;确定与当前移动方向相反的预设速度为目标速度。
具体的,上述第三加速度与第一加速度和第二加速度之间的大小关系本申请不做具体限定。在夹角大于等于第二预设角度的情况下,控制虚拟对象倒退。
在控制虚拟对象倒退时,首先控制虚拟对象减速至静止,再按照预设速度向后倒退,倒退时虚拟对象的移动方向不变。
一实施例
根据本发明实施例,提供了另一种虚拟对象的控制方法的实施例,图5是根据本申请实施例的另一种虚拟对象的控制方法的流程图,如图5所示,该方法包括如下步骤:
步骤S502,响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度。
具体的,上述虚拟控件可以是虚拟摇杆,用于对虚拟对象在游戏场景中的运动状态进行控制。在一种可选的实施例中,以运行在移动终端上的游戏为例,虚拟控件可以设置在游戏对应的图形用户界面的左下角或右下角,便于用户对其进行操作。
对虚拟控件进行操作的过程可以是通过对终端设备的触控操作将虚拟控件由原点中心位置移动至其他位置的过程,由原点中心位置指向其他位置的方向即为触控操作的操作方向。在虚拟控件进行操作的过程中,实时获取触控操作的操作方向以及虚拟对象在游戏场景内的当前状态信息,以便对虚拟对象进行控制。
上述虚拟对象的当前移动方向用于表示虚拟对象移动的方向,虚拟对象的当前速度用于表示虚拟对象在游戏场景内的移动速度。虚拟对象还包括朝向,朝向用于表示虚拟对象所面对的方向,虚拟对象的朝向与虚拟对象的移动方向可以相同,也可以不同。例如,虚拟对象在前进时,其朝向和移动方向相同,但在虚拟对象倒退时,其朝向和移动方向不相同。
在一种可选的实施例中,仍以运行在移动终端上的游戏为例,设备实时检测对虚拟控件的触控操作。当检测到对虚拟对象的触控操作时,获取触控操作的操作方向以及虚拟对象的当前状态信息。
步骤S504,确定操作方向与虚拟对象的当前移动方向的夹角。
具体的,在确定操作方向的基础上,可以确定其与虚拟对象的当前移动方向之间的夹角。
图2是根据本申请实施例的一种确定夹角的示意图,结合图2所示,箭头P1用于表示虚拟对象的当前移动方向,箭头P2用于表示触控操作的操作方向。箭头P1与箭头P2之间的夹角即为操作方向与当前移动方向之间的夹角。
在一种可选的实施例中,可以分别确定当前移动方向相对于游戏场景中的世界坐标系中0角度坐标轴的角度,以及操作方向相对于世界坐标系中0角度坐标轴的角度,然后获取两个角度的差值,即为上述夹角。
在另一种可选的实施例,可以将虚拟对象的当前移动方向作为0度的方向,在检测到用于控制虚拟控件的触控操作之后,确定触控操作的操作方向相对于虚拟对象的当前移动方向的角度,该角度即为上述夹角。
步骤S506,根据夹角确定虚拟对象在游戏场景内的移动模式,并根据当前状态信息控制虚拟对象在移动模式下移动。
具体的,上述移动模式可以包括前进模式、倒退模式以及转弯模式,根据夹角确实能够虚拟对象在游戏场景中的移动模式,即可确定对虚拟对象的控制意图,再确定虚拟对象在其对应的移动模式下的其他移动参数。
在一种可选的实施例中,可以根据夹角确定目标移动方向,例如,如果该夹角大于预设角度值,确定需要控制虚拟对象转弯,更改当前移动方向得到目标移动方向,如果该夹角小于预设值,确定需要控制虚拟对象前进,则保持当前移动方向,将当前移动方向作为目标移动方向。
在另一种可选的实施例中,可以在目标移动方向的基础上,结合当前速度,得到目标速度。例如,在目标移动方向与当前移动方向相同的情况下,可以根据当前速度进行加速直至触控操作停止;在目标移动方向与当前移动方向不同的情况下,可以根据当前速度和通过触控操作所产生的新的速度进行叠加,以得到目标速度。
由上可知,本申请上述实施例响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度;确定操作方向与虚拟对象的当前移动方向的夹角;根据夹角确定虚拟对象在游戏场景内的移动模式,并根据当前状态信息控制虚拟对象在移动模式下移动。上述方案将虚拟对象作为一个整体进行建模,只引入与表现相关性较大的关键参数(当前移动方向、当前速度和夹角),忽略其他复杂的交互解算,从而能够降低对计算资源的消耗,解决了现有技术中对游戏中的虚拟对象的控制所消耗的计算资源过高的技术问题,进而能够在移动终端上同时存在多个虚拟对象。
当需要解算的虚拟对象逐步上升时,其所使用的消耗也越来越高。对于移动平台来说,除了这些解算消耗,更多的消耗会放在渲染和逻辑处理上,通常分配给解算的消耗超过10%,处理器就会压力过大,通过上述方案,能够使通常的移动平台实现大约25-30个虚拟对象的解算消耗,从而可以满足更多游戏场景的需求。
作为一种可选的实施例,根据夹角确定虚拟对象在游戏场景内的移动模式,包括:如果夹角小于第一预设角度,确定移动模式为前进模式;如果夹角大于等于第二预设角度,确定移动模式为倒退模式;如果夹角大于等于第一预设角度且小于第二预设角度,确定模式为转弯模式。
虚拟控件的操作方向用于反应需要虚拟对象移动的方向。在上述方案中,如果夹角小于第一预设角度,确定目标移动方向与当前移动方向相同,即确定虚拟对象的移动模式为前进模式;如果夹角大于第二预设值,确定目标移动方向与当前移动方向相反,并确定虚拟对象的移动模式的倒退模式;如果夹角大于第一与射角度并小于第二预设角度,确定目标移动方向在当前移动方向的基础上发生改变,并确定虚拟对象的移动模式为转弯模式。
当希望虚拟对象在游戏场景中前进移动时,可以对虚拟控件进行与当前移动方向相同(夹角为0°)的操作方向的触控操作,但由于触控操作存在一定误差,触控操作的操作方向难以与虚拟对象的当前移动方向完全相同,因此确定二者的夹角小于第一预设角度的触控操纵均用于控制虚拟对象前进。同样,当希望虚拟对象后退时,可以对虚拟控件进行与当前移动方向相反(夹角为180°)的操作方向的触控操作,但由于触控操作存在一定误差,因此确定夹角大于第二预设角度的触控操作均用于控制虚拟对象倒退。当上述夹角大于等于第一预设角度并小于第二预设角度时,即可以确定对虚拟对象的控制意图是转弯移动,因此需要改变当前移动方向。
在一种可选的实施例中,结合图2所示,图2中上方虚线构成的区域即为夹角小于第一预设角度的区域,操作方向落在该区域中的触控操作用于控制虚拟对象前进,其对应的目标移动方向不变,例如P2;下方虚线构成的区域为夹角大于等于第二预设角度的区域,操作方向落在该区域的触控操作作用于控制虚拟对象后退,其对应的目标移动方向不变,例如P3;上方左侧虚线和下方左侧的虚线构成的区域,以及上方右侧虚线和下方右侧的虚线构成的区域即为夹角大于等于第一预设角度且小于第二预设角度的区域,操作方向落在该区域中的触控操作用于控制虚拟对象转向,例如P4。
作为一种可选的实施例,移动模式为前进模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:在对虚拟控件进行操作的过程中,如果虚拟对象的当前速度小于预设的最大速度,按照第一加速度控制虚拟对象加速移动,如果虚拟对象的当前速度达到最大速度,控制虚拟对象保持最大速度移动;在对虚拟控件的操作停止的情况下,按照第二加速度控制虚拟对象减速移动。
在夹角小于第一预设角度的情况下,确定控制虚拟对象前进。具体的,上述第一加速度和第二加速度可以相同。
在一种可选的实施例中,结合图2所示,触控操作的操作方向为P1,当前的运动速度小于预设的最大速度,则虚拟对象会按照第一加速度加速至最大速度,达到最大速度后,持续按照最大速度移动。当停止对虚拟控件的触控操作后,虚拟对象按照第二加速度减速,直至停止。
作为一种可选的实施例,移动模式为倒退模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:在当前速度的基础上按照第三加速度减速至零;按照预设速度控制虚拟对象向当前移动方向的反方向移动。
具体的,上述第三加速度与第一加速度和第二加速度之间的大小关系本申请不做具体限定。在夹角大于等于第二预设角度的情况下,控制虚拟对象倒退。
在控制虚拟对象倒退时,首先控制虚拟对象减速至静止,再按照预设速度向后倒退,倒退时虚拟对象的移动方向不变。
作为一种可选的实施例,虚拟对象在第一虚拟场景中,第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,虚拟载具为马匹,移动模式为转弯模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:根据虚拟对象预设的转向角速度和转向半径确定虚拟对象在转弯时的向心速度,其中,转向半径根据触控操作的操作方向确定;将虚拟对象的当前移动速度和向心速度叠加得到虚拟对象转弯时的移动速度。
第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,在一种可选的实施例中,上述虚拟角色可以为马匹,上述的第一虚拟场景即为虚拟角色在游戏中骑马移动的场景。上述转向角速度是预设的指定速度,转向半径与转弯的角度呈现反比例关系,也即转弯的角度越大,转向半径越小。
图3是根据本申请实施例的一种第一虚拟场景中的虚拟对象转弯的示意图,结合图3所示,0点为虚拟对象在转弯过程中所在的位置,v0为虚拟对象的当前速度,v1为向心速度,其中,v1=w*r,w表示预设的转向角速度,r为转向半径。将v0与v1叠加得到v2,即为虚拟对象的目标速度。
作为一种可选的实施例,虚拟对象在第二虚拟场景中,第二虚拟场景中的虚拟对象在冰面上移动,移动模式为转弯模式,根据当前状态信息控制虚拟对象在移动模式下移动,包括:控制虚拟对象由当前速度按照第四加速度减速,得到第一速度;获取操作虚拟控件所产生的控制速度,并在控制速度的基础上按照第五加速度加速,得到第二速度,其中,控制速度的方向与操作方向相同;将第一速度和第二速度叠加,得到虚拟对象转弯时的移动速度。
上述第二虚拟场景可以是虚拟对象在冰面上移动的游戏场景。虚拟对象可以仅包括虚拟角色而不包括虚拟载具,因此在夹角大于等于第一预设角度且小于第二预设角度的情况下可以直接进行转向。
在上述方案中,控制虚拟对象在当前速度的基础上减速,并对触控操作的操作方向上的控制速度加速,从而实现虚拟对象的转向,该控制速度在初始时为零。图4是根据本申请实施例的一种第二场景中控制虚拟对象转向的示意图,结合图4所示,v11是虚拟对象转向过程中某个时刻的当前速度,其按照第四加速度减速,v12是同一时刻操作方向的速度,其按照第五加速度加速,将v11和v12进行叠加得到v13,v13即为这一时刻虚拟对象的目标速度。随着时间的增长,v11会减小至0,v12最大会增大至预设的最大速度,从而实现了对虚拟对象的转向控制。
一实施例
根据本发明实施例,提供了一种用于实施实施例1中的虚拟对象的控制方法的虚拟对象的控制装置,图6是根据本申请实施例的一种虚拟对象的控制装置的示意图,结合图6所示,该装置包括:
第一确定模块602,用于响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度。
第二确定模块604,用于确定操作方向与当前移动方向之间的夹角。
获取模块606,用于根据夹角和当前状态信息确定虚拟对象的目标状态信息,其中,目标状态信息包括:目标移动方向和目标速度。
控制模块608,用于控制虚拟对象按照目标状态信息进行移动。
作为一种可选的实施例,获取模块包括:第一确定子模块,用于根据夹角和当前移动方向确定目标移动方向;以及第二确定子模块,用于根据当前速度确定目标速度。
作为一种可选的实施例,第一确定子模块包括:第一确定单元,用于如果夹角小于第一预设角度,确定目标移动方向与当前移动方向相同;第二确定单元,用于如果所述夹角大于等于第二预设角度,确定所述目标移动方向与所述当前移动方向相反,其中,第二预设角度大于第一预设角度;第三确定单元,用于如果夹角大于等于第一预设角度且小于第二预设角度,确定目标移动方向偏离当前移动方向。
作为一种可选的实施例,虚拟对象在第一虚拟场景中,第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,虚拟载具为马匹,第一确定子模块包括:第四确定单元,用于如果夹角大于等于第一预设角度且小于第二预设角度,确定虚拟对象的目标移动方向在虚拟对象转弯移动的过程中由当前移动方向转换至操作方向。
作为一种可选的实施例,如果夹角大于等于第一预设角度且小于第二预设角度,第二确定子模块包括:第五确定单元,用于根据虚拟对象预设的转向角速度和转向半径确定虚拟对象在转弯时的向心速度,其中,转向半径根据触控操作的操作方向确定;第一叠加单元,用于将虚拟对象的当前速度和向心速度叠加得到目标速度。
作为一种可选的实施例,虚拟对象在第二虚拟场景中,第二虚拟场景中的虚拟对象在冰面上移动,第一控制子模块包括:第二减速控制单元,用于如果夹角大于等于第一预设角度且小于第二预设角度,控制虚拟对象由当前速度按照第四加速度减速,得到第一速度;获取单元,用于获取操作虚拟控件所产生的控制速度,并在控制速度的基础上按照第五加速度加速,得到第二速度,其中,控制速度的方向与操作方向相同;第二叠加单元,用于将第一速度和第二速度叠加,得到目标速度。
作为一种可选的实施例,如果夹角大于等于第一预设角度且小于第二预设角度,第一控制子模块包括:第六确定单元,用于确定目标移动方向与目标速度的方向相同。
作为一种可选的实施例,在夹角小于第一预设角度的情况下,第二确定子模块包括:第七确定单元,用于在对虚拟控件进行操作的过程中,如果当前速度小于预设的最大速度,在当前速度的基础上按照第一加速度加速得到目标速度,如果虚拟对象的当前速度达到最大速度,确定最大速度为目标速度;第八确定单元,用于在对虚拟控件的操作停止的情况下,在当前速度的基础上按照第二加速度减速得到目标速度。
作为一种可选的实施例,在夹角大于等于第二预设角度的情况下,第二确定子模块包括:第一减速控制单元,用于在当前速度的基础上按照第三加速度减速至零;第九确定单元,用于确定与当前移动方向相反的预设速度为目标速度。
一实施例
根据本发明实施例,提供了一种用于实施实施例2中的虚拟对象的控制方法的虚拟对象的控制装置,图7是根据本申请实施例的一种虚拟对象的控制装置的示意图,结合图7所示,该装置包括:
第一确定模块702,用于响应作用于虚拟控件的触控操作,确定触控操作的操作方向,并获取虚拟对象在游戏场景内的当前状态信息,其中,当前状态信息包括:当前移动方向和当前速度。
第二确定模块704,用于确定操作方向与虚拟对象的当前移动方向的夹角。
控制模块706,用于根据夹角确定虚拟对象在游戏场景内的移动模式,并根据当前状态信息控制虚拟对象在移动模式下移动。
作为一种可选的实施例,控制模块包括:第一确定子模块,用于如果夹角小于第一预设角度,确定移动模式为前进模式;第二确定子模块,用于如果夹角大于等于第二预设角度,确定移动模式为倒退模式;第三确定子模块,用于如果夹角大于等于第一预设角度且小于第二预设角度,确定模式为转弯模式。
作为一种可选的实施例,移动模式为前进模式,控制模块包括:第一控制子模块,用于在对虚拟控件进行操作的过程中,如果虚拟对象的当前速度小于预设的最大速度,按照第一加速度控制虚拟对象加速移动,如果虚拟对象的当前速度达到最大速度,控制虚拟对象保持最大速度移动;第二控制子模块,用于在对虚拟控件的操作停止的情况下,按照第二加速度控制虚拟对象减速移动。
作为一种可选的实施例,移动模式为倒退模式,控制模块包括:第三控制子模块,用于在当前速度的基础上按照第三加速度减速至零;第四控制子模块,用于按照预设速度控制虚拟对象向当前移动方向的反方向移动。
作为一种可选的实施例,虚拟对象在第一虚拟场景中,第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,虚拟载具为马匹,移动模式为转弯模式,控制模块包括:第四确定子模块,用于根据虚拟对象预设的转向角速度和转向半径确定虚拟对象在转弯时的向心速度,其中,转向半径根据触控操作的操作方向确定;第五控制子模块,用于将虚拟对象的当前移动速度和向心速度叠加得到虚拟对象转弯时的移动速度。
作为一种可选的实施例,虚拟对象在第二虚拟场景中,第二虚拟场景中的虚拟对象在冰面上移动,控制模块包括:第六控制子模块,用于控制虚拟对象由当前速度按照第四加速度减速,得到第一速度;获取子模块,用于获取操作虚拟控件所产生的控制速度,并在控制速度的基础上按照第五加速度加速,得到第二速度,其中,控制速度的方向与操作方向相同;第七控制子模块,用于将第一速度和第二速度叠加,得到虚拟对象转弯时的移动速度。
一实施例
根据本发明实施例,提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行实施例1或实施例2的虚拟对象的控制方法。
一实施例
根据本发明实施例,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行实施例1或实施例2的虚拟对象的控制方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (18)

1.一种虚拟对象的控制方法,其特征在于,包括:
响应作用于虚拟控件的触控操作,确定所述触控操作的操作方向,并获取所述虚拟对象在游戏场景内的当前状态信息,其中,所述当前状态信息包括:当前移动方向和当前速度;
确定所述操作方向与所述当前移动方向之间的夹角;
根据所述夹角和所述当前状态信息确定所述虚拟对象的目标状态信息,其中,所述目标状态信息包括:目标移动方向和目标速度;
控制所述虚拟对象按照所述目标状态信息进行移动。
2.根据权利要求1所述的方法,其特征在于,根据所述夹角和所述当前状态信息确定所述虚拟对象的目标状态信息,包括:
根据所述夹角和所述当前移动方向确定所述目标移动方向;以及
根据所述当前速度确定所述目标速度。
3.根据权利要求2所述的方法,其特征在于,根据所述夹角和所述当前移动方向确定所述目标移动方向,包括:
如果所述夹角小于第一预设角度,确定所述目标移动方向与所述当前移动方向相同;
如果所述夹角大于等于第二预设角度,确定所述目标移动方向与所述当前移动方向相反,其中,所述第二预设角度大于所述第一预设角度;
如果所述夹角大于等于所述第一预设角度且小于所述第二预设角度,确定所述目标移动方向偏离所述当前移动方向。
4.根据权利要求3所述的方法,其特征在于,所述虚拟对象在第一虚拟场景中,所述第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,所述虚拟载具为马匹,根据所述夹角和所述当前移动方向确定所述目标移动方向,包括:
如果所述夹角大于等于所述第一预设角度且小于所述第二预设角度,确定所述虚拟对象的目标移动方向在所述虚拟对象转弯移动的过程中由所述当前移动方向向所述操作方向进行调整。
5.根据权利要求4所述的方法,其特征在于,如果所述夹角大于等于所述第一预设角度且小于所述第二预设角度,根据所述当前速度确定所述目标速度,包括:
根据所述虚拟对象预设的转向角速度和转向半径确定所述虚拟对象在转弯时的向心速度,其中,所述转向半径根据所述触控操作的操作方向确定;
将所述虚拟对象的当前速度和所述向心速度叠加得到所述目标速度。
6.根据权利要求3所述的方法,其特征在于,所述虚拟对象在第二虚拟场景中,所述第二虚拟场景中的虚拟对象在冰面上移动,根据所述当前速度确定所述目标速度,包括:
如果所述夹角大于等于所述第一预设角度且小于所述第二预设角度,控制所述虚拟对象由当前速度按照第四加速度减速,得到第一速度;
获取操作所述虚拟控件所产生的控制速度,并在所述控制速度的基础上按照第五加速度加速,得到第二速度,其中,所述控制速度的方向与所述操作方向相同;
将所述第一速度和所述第二速度叠加,得到所述目标速度。
7.根据权利要求6所述的方法,其特征在于,如果所述夹角大于等于所述第一预设角度且小于所述第二预设角度,根据所述当前移动方向和操作方向确定所述目标移动方向,包括:
确定所述目标移动方向与所述目标速度的方向相同。
8.根据权利要求3所述的方法,其特征在于,在所述夹角小于第一预设角度的情况下,根据所述当前速度确定所述目标速度,包括:
在对所述虚拟控件进行操作的过程中,如果所述当前速度小于预设的最大速度,在所述当前速度的基础上按照第一加速度加速得到所述目标速度,如果所述虚拟对象的当前速度达到所述最大速度,确定所述最大速度为所述目标速度;
在对所述虚拟控件的操作停止的情况下,在所述当前速度的基础上按照第二加速度减速得到所述目标速度。
9.根据权利要求8所述的方法,其特征在于,在所述夹角大于等于所述第二预设角度的情况下,根据所述当前速度确定所述目标速度,包括:
在所述当前速度的基础上按照第三加速度减速至零;
确定与当前移动方向相反的预设速度为所述目标速度。
10.一种虚拟对象的控制方法,其特征在于,包括:
响应作用于虚拟控件的触控操作,确定所述触控操作的操作方向,并获取所述虚拟对象在游戏场景内的当前状态信息,其中,所述当前状态信息包括:当前移动方向和当前速度;
确定所述操作方向与所述虚拟对象的当前移动方向的夹角;
根据所述夹角确定所述虚拟对象在所述游戏场景内的移动模式,并根据所述当前状态信息控制所述虚拟对象在所述移动模式下移动。
11.根据权利要求10所述的方法,其特征在于,根据所述夹角确定所述虚拟对象在所述游戏场景内的移动模式,包括:
如果所述夹角小于第一预设角度,确定所述移动模式为前进模式;
如果所述夹角大于等于第二预设角度,确定所述移动模式为倒退模式;
如果所述夹角大于等于所述第一预设角度且小于所述第二预设角度,确定所述模式为转弯模式。
12.根据权利要求11所述的方法,其特征在于,所述移动模式为前进模式,根据所述当前状态信息控制所述虚拟对象在所述移动模式下移动,包括:
在对所述虚拟控件进行操作的过程中,如果所述虚拟对象的当前速度小于预设的最大速度,按照第一加速度控制所述虚拟对象加速移动,如果所述虚拟对象的当前速度达到所述最大速度,控制所述虚拟对象保持所述最大速度移动;
在对所述虚拟控件的操作停止的情况下,按照第二加速度控制所述虚拟对象减速移动。
13.根据权利要求11所述的方法,其特征在于,所述移动模式为倒退模式,根据所述当前状态信息控制所述虚拟对象在所述移动模式下移动,包括:
在所述当前速度的基础上按照第三加速度减速至零;
按照预设速度控制所述虚拟对象向当前移动方向的反方向移动。
14.根据权利要求11所述的方法,其特征在于,所述虚拟对象在第一虚拟场景中,所述第一虚拟场景中的虚拟对象包括虚拟角色和虚拟载具,其中,所述虚拟载具为马匹,所述移动模式为转弯模式,根据所述当前状态信息控制所述虚拟对象在所述移动模式下移动,包括:
根据所述虚拟对象预设的转向角速度和转向半径确定所述虚拟对象在转弯时的向心速度,其中,所述转向半径根据所述触控操作的操作方向确定;
将所述虚拟对象的当前移动速度和所述向心速度叠加得到所述虚拟对象转弯时的移动速度。
15.根据权利要求11所述的方法,其特征在于,所述虚拟对象在第二虚拟场景中,所述第二虚拟场景中的虚拟对象在冰面上移动,所述移动模式为转弯模式,根据所述当前状态信息控制所述虚拟对象在所述移动模式下移动,包括:
控制所述虚拟对象由当前速度按照第四加速度减速,得到第一速度;
获取操作所述虚拟控件所产生的控制速度,并在所述控制速度的基础上按照第五加速度加速,得到第二速度,其中,所述控制速度的方向与所述操作方向相同;
将所述第一速度和所述第二速度叠加,得到所述虚拟对象转弯时的移动速度。
16.一种虚拟对象的控制装置,其特征在于,包括:
第一确定模块,用于响应作用于虚拟控件的触控操作,确定所述触控操作的操作方向,并获取所述虚拟对象在游戏场景内的当前状态信息,其中,所述当前状态信息包括:当前移动方向和当前速度;
第二确定模块,用于确定所述操作方向与所述当前移动方向之间的夹角;
获取模块,用于根据所述夹角和所述当前状态信息确定所述虚拟对象的目标状态信息,其中,所述目标状态信息包括:目标移动方向和目标速度;
控制模块,用于控制所述虚拟对象按照所述目标状态信息进行移动。
17.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至15中任意一项所述的虚拟对象的控制方法。
18.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至15中任意一项所述的虚拟对象的控制方法。
CN201911421337.9A 2019-12-31 2019-12-31 虚拟对象的控制方法和装置 Active CN111151003B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911421337.9A CN111151003B (zh) 2019-12-31 2019-12-31 虚拟对象的控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911421337.9A CN111151003B (zh) 2019-12-31 2019-12-31 虚拟对象的控制方法和装置

Publications (2)

Publication Number Publication Date
CN111151003A true CN111151003A (zh) 2020-05-15
CN111151003B CN111151003B (zh) 2023-04-25

Family

ID=70560664

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911421337.9A Active CN111151003B (zh) 2019-12-31 2019-12-31 虚拟对象的控制方法和装置

Country Status (1)

Country Link
CN (1) CN111151003B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148622A (zh) * 2020-10-15 2020-12-29 腾讯科技(深圳)有限公司 虚拟道具的控制方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108654085A (zh) * 2018-05-18 2018-10-16 网易(杭州)网络有限公司 游戏虚拟对象控制方法及装置、电子设备、存储介质
CN110064193A (zh) * 2019-04-29 2019-07-30 网易(杭州)网络有限公司 游戏中虚拟对象的操控控制方法、装置和移动终端
CN110548286A (zh) * 2019-09-29 2019-12-10 网易(杭州)网络有限公司 游戏中虚拟对象的锁定方法、装置及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108654085A (zh) * 2018-05-18 2018-10-16 网易(杭州)网络有限公司 游戏虚拟对象控制方法及装置、电子设备、存储介质
CN110064193A (zh) * 2019-04-29 2019-07-30 网易(杭州)网络有限公司 游戏中虚拟对象的操控控制方法、装置和移动终端
CN110548286A (zh) * 2019-09-29 2019-12-10 网易(杭州)网络有限公司 游戏中虚拟对象的锁定方法、装置及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148622A (zh) * 2020-10-15 2020-12-29 腾讯科技(深圳)有限公司 虚拟道具的控制方法、装置、电子设备及存储介质
CN112148622B (zh) * 2020-10-15 2022-02-25 腾讯科技(深圳)有限公司 虚拟道具的控制方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN111151003B (zh) 2023-04-25

Similar Documents

Publication Publication Date Title
JP2023171885A (ja) 仮想オブジェクトの制御方法、及び関連装置
US10290153B2 (en) Dynamic haptic retargeting
KR20170137913A (ko) 정보 처리 방법, 단말 및 컴퓨터 저장 매체
CN109155782A (zh) 容器之间的进程间通信
CN107952243B (zh) 路径确定方法及装置
CN107808388B (zh) 包含运动目标的图像处理方法、装置及电子设备
CN110716766A (zh) 游戏场景加载方法、装置、计算机可读介质及电子设备
CN111151003A (zh) 虚拟对象的控制方法和装置
CN111389004A (zh) 虚拟角色的控制方法、存储介质及处理器
CN112190930B (zh) 一种游戏角色的控制方法及装置
CN104881230A (zh) 在触控终端进行人机交互的方法和设备
US20230086441A1 (en) Method and apparatus for displaying picture in virtual scene, device, storage medium, and program product
CN111729312A (zh) 位置同步方法、装置及设备
CN108829248B (zh) 一种基于用户表现模型矫正的移动目标选择方法及***
CN115660941A (zh) 图像搬移方法、装置、电子设备和计算机可读存储介质
CN115779424A (zh) 一种导航网格寻路方法、装置、设备及介质
CN109985383A (zh) 一种信息处理的方法、装置、存储介质及电子装置
CN111223193B (zh) 物体旋转方法、旋转装置、终端设备及计算机可读存储介质
CN114669052A (zh) 一种游戏控制方法、装置、设备及存储介质
CN114489060A (zh) 无人船编队控制方法、终端设备及计算机可读存储介质
CN113808196A (zh) 平面融合定位方法、装置、电子设备及存储介质
CN110930488B (zh) 鱼体行为模拟方法、装置、设备及存储介质
CN108499109B (zh) 一种基于ue引擎实现物品可实时单侧缩放的方法
CN106599893B (zh) 基于增强现实的物体偏离识别图后的处理方法及装置
CN116346871A (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