CN110152295A - 虚拟对象的控制方法及装置、存储介质及电子设备 - Google Patents
虚拟对象的控制方法及装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN110152295A CN110152295A CN201910425075.7A CN201910425075A CN110152295A CN 110152295 A CN110152295 A CN 110152295A CN 201910425075 A CN201910425075 A CN 201910425075A CN 110152295 A CN110152295 A CN 110152295A
- Authority
- CN
- China
- Prior art keywords
- virtual objects
- aimed acceleration
- angular speed
- angular velocity
- control
- 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
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开涉及游戏技术领域,具体涉及一种虚拟对象的控制方法及装置、计算机可读存储介质及电子设备,所述方法包括:在虚拟对象处于腾空状态时,获取虚拟对象的当前角速度,以及响应于对虚拟对象的第一控制操作以确定期望角速度;根据当前角速度以及期望角速度确定目标加速度;将目标加速度施加于虚拟对象,以使当前角速度修正为期望角速度。本公开实施例的技术方案使得用户可以通过基于虚拟对象的当前角速度和第一控制操作确定的期望角速度确定得到的目标加速度,对虚拟对象的当前角速度进行修正进而实现对虚拟对象的控制。进一步地,所述控制方法为腾空状态下的虚拟对象提供了更多可控的运动方向和方式,提升腾空时转向控制的灵活性和多样性。
Description
技术领域
本公开涉及游戏技术领域,具体而言,涉及一种虚拟对象的控制方法及装置、计算机可读存储介质及电子设备。
背景技术
在现有的各类游戏中,常常出现虚拟对象因为地形等原因腾空飞起的控制形态。例如,用户在游戏中控制虚拟角色跑向地形高点时,会出现虚拟角色从高点腾空落下的现象。一般情况下,为了控制虚拟对象的落点等原因,用户仍需要对腾空状态下的虚拟对象进行控制。
然而,在现有的游戏中,用户对腾空状态下的虚拟对象的方向控制都是单一方向上的。例如,虚拟对象只能单独执行抬头或压头的操作,或者只能单独执行左转或右转的操作。但在这种控制方式下,虚拟对象腾空后可以转动的方向有限,因此转向控制的灵活性和多样性受到了很大的限制;同时,由于腾空后的转动方向受到限制,因此虚拟对象的着陆角度以及可控的落点也受到了相应的限制。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种虚拟对象的控制方法及装置、计算机可读存储介质及电子设备,进而至少在一定程度上克服在虚拟对象腾空时,对虚拟对象的转向控制受到限制的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供了一种虚拟对象的控制方法,包括:在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;根据所述当前角速度以及所述期望角速度确定目标加速度;将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
在本公开的一种示例性实施例中,基于前述方案,所述当前角速度和所述期望角速度包括所述虚拟对象所在三维坐标系中至少一个轴向上的角速度。
在本公开的一种示例性实施例中,基于前述方案,所述目标加速度包括对应于所述虚拟对象所在三维坐标系中至少一个轴向上的角速度的加速度。
在本公开的一种示例性实施例中,基于前述方案,所述第一控制操作包括对所述虚拟对象的运动方向的控制操作。
在本公开的一种示例性实施例中,基于前述方案,所述方法还包括:获取所述虚拟对象的运动信息以判断所述虚拟对象是否处于腾空状态。
在本公开的一种示例性实施例中,基于前述方案,判断所述虚拟对象是否处于腾空状态,包括:计算所述运动信息中所述虚拟对象上一目标点的当前高度坐标与对应的地表高度坐标的高度差;其中,所述运动信息包括所述虚拟对象当前所处位置的坐标及对应的地表坐标;若所述高度差大于所述虚拟对象高度,则判断所述虚拟对象处于腾空状态;或者若所述高度差小于等于所述虚拟对象高度,则判断所述虚拟对象处于非腾空状态;其中,所述虚拟对象高度为所述目标点至虚拟对象底部边沿的高度。
在本公开的一种示例性实施例中,基于前述方案,在将所述目标加速度施加于所述虚拟对象之前,所述方法还包括:对所述目标加速度进行修正,以使所述目标加速度的数值处于预设范围内。
在本公开的一种示例性实施例中,基于前述方案,对所述目标加速度进行修正,以使所述目标加速度的数值处于预设范围内,包括:在所述目标加速度的数值大于预设范围的最大值时,将所述目标加速度的数值修正为所述最大值;或者在所述目标加速度的数值在预设范围内时,所述目标加速度的数值不做修正;或者在所述目标加速度的数值小于预设范围的最小值时,将所述目标加速度的数值修正为所述最小值。
根据本公开的第二方面,提供了一种虚拟对象的控制装置,包括:数据获取模块,用于在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;加速度确定模块,用于根据所述当前角速度以及所述期望角速度确定目标加速度;转向控制模块,用于将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
根据本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的虚拟对象的控制方法。
根据本公开实施例的第四方面,提供了一种电子设备,包括:
处理器;以及
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的虚拟对象的控制方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开的一种实施例所提供的虚拟对象的控制方法中,通过在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度,根据所述当前角速度以及所述期望角速度确定目标加速度,将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。本公开的控制方法使得用户可以通过第一控制操作确定期望虚拟对象达到的期望角速度,进而将基于虚拟对象的当前角速度、期望角速度确定得到的目标加速度施加于虚拟对象,以实现对腾空状态下的虚拟对象的控制。
进一步地,由于所述第一控制操作可以是针对至少一个方向上的转向控制,因此期望角速度的方向并不一定固定于三维空间坐标系的轴向上。此时,将虚拟对象腾空时的转向控制与虚拟对象的期望角速度相结合,使得虚拟对象能够根据期望角速度的方向变化实现各个方向的转动,为腾空状态下的虚拟对象提供更多可控的运动方向和运动方式,提升了腾空时转向控制的灵活性和多样性;同时,由于腾空后可控的转动方向更多,虚拟对象的着陆角度更加可控,落点可选的区域也更大。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出本公开示例性实施例中一种虚拟对象的控制方法的流程图;
图2示意性示出本公开示例性实施例中获取所述虚拟对象的运动信息以判断所述虚拟对象是否处于腾空状态的方法流程图;
图3示意性示出本公开示例性实施例中对所述目标加速度进行修正的方法流程图;
图4示意性示出本公开示例性实施例中虚拟对象腾空状态下,根据目标点坐标和地形表面坐标确定高度差的方法示意图;
图5示意性示出本公开示例性实施例中确定虚拟对象高度的方法示意图;
图6示意性示出本公开示例性实施例中虚拟对象转动方向的示意图;
图7示意性示出本公开示例性实施例中一种虚拟对象的控制装置的组成示意图;
图8示意性示出了适于用来实现本公开示例性实施例的电子设备的计算机系统的结构示意图;
图9示意性示出了根据本公开的一些实施例的计算机可读存储介质的示意图。
具体实施方式
现在将参照附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在本示例性实施例中,首先提供了一种虚拟对象的控制方法,该控制方法可以应用于各种类型的游戏中,在游戏中的虚拟对象出现腾空状态时对虚拟对象进行控制。例如,在赛车类游戏中,当赛车因为地形等原因腾空时,可以对赛车进行控制。参照图1中所示,上述的虚拟对象的控制方法可以包括以下步骤:
S110,在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;
S120,根据所述当前角速度以及所述期望角速度确定目标加速度;
S130,将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
根据本示例性实施例中所提供的虚拟对象的控制方法中,用户可以通过第一控制操作确定期望虚拟对象达到的期望角速度,进而将基于虚拟对象的当前角速度、期望角速度确定得到的目标加速度施加于虚拟对象,以实现对腾空状态下的虚拟对象的控制。
下面,将结合附图及实施例对本示例性实施例中的虚拟对象的控制方法的各个步骤进行更详细的说明。在本公开的一种示例实施例中,由于对所述虚拟对象的控制是指在虚拟对象处于腾空状态时的控制,因此所述方法还包括:获取所述虚拟对象的运动信息以判断所述虚拟对象是否处于腾空状态。
在本公开的一种示例实施例中,判断所述虚拟对象是否处于腾空状态,参照图2所示,包括如下步骤S210至S230,以下进行详细阐述:
步骤S210,计算所述运动信息中所述虚拟对象上一目标点的当前高度坐标与对应的地表高度坐标的高度差。
在本公开的一种示例实施例中,所述虚拟对象包括游戏中的人物、动物等形态的虚拟角色,车、船等交通工具形态的虚拟载具,以及树木、纸箱等形态的虚拟物品等。所述虚拟对象可以根据用户的操作进行对应的转向、旋转等运动,且运动状态可以根据用户的控制操作变化。例如,在赛车类游戏中,虚拟赛车可以作为虚拟对象;再如,在多人战术竞技游戏中,游戏中的各个虚拟角色可以作为虚拟对象。
在本公开的一种示例实施例中,所述运动信息包括所述虚拟对象当前所处位置的坐标及对应的地表坐标。在虚拟对象处于运动状态时,计算运动信息中虚拟对象上一目标点的当前高度坐标与此时虚拟对象所处的地形对应的地表坐标的高度差。例如,参考图4所示,当前虚拟对象处于运动状态,根据虚拟对象的运动信息可以获取到此时虚拟对象上一目标点的当前高度坐标为h,同时获取虚拟对象所在位置对应的地表坐标a,计算当前高度坐标与地表坐标的高度差为(h-a)。其中,所述目标点可以取虚拟对象上的任一点。例如,可以配置虚拟对象的中心为目标点,再如,也可以配置虚拟对象的重心为目标点。
步骤S220,若所述高度差大于所述虚拟对象高度,则判断所述虚拟对象处于腾空状态;
步骤S230,若所述高度差小于等于所述虚拟对象高度,则判断所述虚拟对象处于非腾空状态。
在本公开的一种示例实施例中,所述虚拟对象高度是指虚拟对象上的目标点与虚拟对象最底部边缘之间的差值。例如,参考图5所示,若配置虚拟对象的中心为目标点,此时,虚拟对象的中心至虚拟对象最底部边缘的高度A则为虚拟对象高度。
进一步地,根据虚拟对象高度和步骤S210中计算得到的高度差的大小,可以判断此时虚拟对象所处的位置。若高度差大于虚拟对象高度,则判断虚拟对象处于腾空状态;若高度差小于等于虚拟对象高度,则判断虚拟对象处于腾空状态。例如,虚拟对象高度为10,而高度差为15,则可以证明虚拟对象底部至地形表面仍有5的高度差,即虚拟对象处于腾空状态;再如,虚拟对象高度仍为10,而计算所得的高度差为8,则证明虚拟对象底部地域地形表明高度2,即虚拟对象可能在海水中,此时虚拟对象处于非腾空状态。通过对比虚拟对象高度与所述高度差之间的大小关系,能够准确的判断虚拟对象是否处于腾空状态。
在本公开的一种示例实施例中,参照图1所示,所述一种游戏中技能的切换方法可以包括以下步骤:
步骤S110,在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度。
在本公开的一种示例实施例中,获取到的当前角速度是发生第一控制操作,但角速度还未根据第一控制操作改变之前,虚拟对象的角速度。所述期望角速度是指用户施加第一控制操作期望虚拟对象达到的角速度。其中,当前角速度和期望角速度包括虚拟对象所在的三维坐标系中,至少一个轴向上的角速度。例如,第一控制操作为在图形用户界面上同时点击向上和向左的方向控件,角速度则为以虚拟对象当前面对方向为z轴负向的三维空间的右手笛卡尔坐标系上y轴和x轴两个轴向上的角速度。由于本方案中获取的当前角速度和期望角速度均可以是多个轴向上的角速度,因此,可以使得虚拟对象在腾空状态下能够在多个轴向上进行转动,进而增加了腾空状态下可以转动的方向,为腾空状态下的虚拟对象提供了更多可控的运动方向和运动方式,提升了转向控制的灵活性和多样性。
在本公开的一种示例实施例中,所述第一控制操作包括对所述虚拟对象的运动方向的控制操作。所述第一控制操作可以是对游戏图形用户界面的操作,例如,对方向控件的按压操作,又如,在方向控制区域的拖动操作;所述第一控制操作还可以是对游戏所在终端的操作,例如,在手机游戏中可以根据手机重心的变化进行方向的转动,再如,可以对电脑键盘的按压操作或者鼠标的拖动操作。
步骤S120,根据所述当前角速度以及所述期望角速度确定目标加速度。
在本公开的一种示例实施例中,由于获取到的当前角速度和根据第一控制操作确定的期望角速度均包括虚拟对象所在的三维坐标系中,至少一个轴向上的角速度,对应地,根据当前角速度和期望角速度确定所得的目标加速度也是虚拟对象所在三维坐标系中至少一个轴向上的加速度。
步骤S130,将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
在本公开的一种示例实施例中,可以为目标加速度的数值大小配置一个的预设范围,将目标加速度的数值控制在预设范围内。当根据期望角速度和当前角速度确定的目标加速度的数值不在预设范围之内时,可以对目标加速度进行修正。参照图3所示,对目标加速度进行修正包括如下步骤S310至S330:
步骤S310,在所述目标加速度的数值大于预设范围的最大值时,将所述目标加速度的数值修正为所述最大值;
步骤S320,在所述目标加速度的数值在预设范围内时,所述目标加速度的数值不做修正;
步骤S330,在所述目标加速度的数值小于预设范围的最小值时,将所述目标加速度的数值修正为所述最小值。
在本公开的一种示例实施例中,当判断确定的目标加速度的数值大于预设范围的最大值或者小于预设范围的最小值时,可以将目标加速度的数值修正为预设范围的最大值或者预设范围的最小值,当确定的目标加速度的数值在预设范围内,则可以对目标加速度的数值不做修正。通过设置预设范围对目标加速度的数值进行控制,能够提高载具的可控性,进而防止虚拟对象在落地时由于其他方向上的加速度无法瞬时结束造成的无法正常落地的情况。
对于上述响应于对所述虚拟对象的第一控制操作以确定期望角速度,以及根据所述当前角速度以及所述期望角速度确定目标加速度的方案本公开的实施例提供了如下具体的实施例:
第一步,响应于对所述虚拟对象的第一控制操作以确定期望角速度。
1.根据所述第一控制操作确定转向输入值。
根据第一控制操作确定的输入值的大小可以取1或-1,分别表示在以虚拟对象当前面对方向为z轴负向的三维空间右手笛卡尔坐标系中,期望角速度的方向为正方向或者负方向。
例如,当控制操作为对向左的方向控件的操作时,输入值取所述三维坐标系x轴方向上的-1,以使虚拟对象绕y轴进行yaw旋转;再如,当控制操作为对向上的方向控件的操作时,输入值取所述三维坐标系y轴方向上的1,以使虚拟对象绕x轴进行pitch旋转。
输入值的方向随第一控制操作的持续时间变化,具体的变化过程可以通过如下公式表达:
Input(T+1)=Input(T)+dtime*changerate
其中,Input(T)为当前时刻的输入值,Input(T+1)为dtime之后的输入值,dtime为虚拟场景变化一帧所需的时间,changerate为虚拟场景变化一帧时角速度方向变化的角度。
例如,当控制操作为对向左的方向控件的操作时,输入值取所述三维坐标系x轴方向上的-1,输入值-1的最初方向为以虚拟对象当前面对方向为z轴负向的三维空间右手笛卡尔坐标三维坐标系中,从坐标系原点指向x轴负方向对应的向量的方向,随着第一控制操作的时长变化dime,输入值的方向变化为所述初始方向对应的向量绕y轴在x轴和z轴所在平面进行逆时针yaw旋转,旋转changerate后所指向的方向,如图6所示。
2.计算所述转向输入值与预设转动速度的乘积作为期望角速度的值。其中预设转动速度可以根据具体游戏中对速度的需求进行设定。
第二步,根据当前角速度以及所述期望角速度确定目标加速度
1.计算期望角速度与当前角速度的差值。
2.计算所述差值与dtime的比值,并将所述比值配置为所述目标加速度的大小;其中,dtime为虚拟场景游戏画面变化一帧所需的时间。
3.配置所述目标加速度的方向与输入值的方向相同。
在本公开的一种示例实施例中,可以通过控制第一控制操作的操作时长实现不同的转向效果,当第一控制操作的时长较短时,虚拟对象将在下落的同时向第一控制操作所指向的方向转动;当第一控制操作持续的时长较长时,若不受虚拟对象腾空状态的限制,虚拟对象将会在下落的同时向第一控制操作所指向的方向持续转动,形成在空中螺旋转向的动态效果。同时,通过配置输入值和加速度的方向,可以使得虚拟对象转动的画面过渡平滑,展示更加连贯自然的转动效果。
本公开所提供的游戏中的技能控制方法,在虚拟对象腾空时,通过将虚拟对象的转向控制与虚拟对象的角速度相结合,根据第一控制操作确定虚拟对象的期望角速度,随后根据期望角速度和当前角速度确定得到达到期望角速度需向虚拟对象施加的目标加速度,最后通过施加目标加速度改变虚拟对象当前角速度实现对虚拟对象的转向控制。同时,由于角速度和加速度的方向可以为根据第一控制操作确定的三维空间坐标系中的任意方向,因此可以使得虚拟对象在腾空时能够转动的方向更广,也可以同时向三维空间坐标系中两个轴向上的方向转动,提升了腾空时转向控制的灵活性和多样性。另外,由于腾空后可控的转向方向更多,虚拟对象的着陆角度更加可控,落点可选的区域也更大。
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
此外,在本公开的示例性实施方式中,还提供了一种虚拟对象的控制装置。参照图7所示,所述虚拟对象的控制装置700包括:数据获取模块710,加速度确定模块720和转向控制模块730。
其中,所述数据获取模块710可以用于在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;所述加速度确定模块720可以用于根据所述当前角速度以及所述期望角速度确定目标加速度;所述转向控制模块730可以用于将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
在本公开的一种示例性实施例中,基于前述方案,所述当前角速度和所述期望角速度包括所述虚拟对象所在三维坐标系中至少一个轴向上的角速度。
在本公开的一种示例性实施例中,基于前述方案,所述目标加速度包括对应于所述虚拟对象所在三维坐标系中至少一个轴向上的角速度的加速度。
在本公开的一种示例性实施例中,基于前述方案,所述第一控制操作包括对所述虚拟对象的运动方向的控制操作。
在本公开的一种示例性实施例中,基于前述方案,所述数据获取模块710可以用于获取所述虚拟对象的运动信息以判断所述虚拟对象是否处于腾空状态。
在本公开的一种示例性实施例中,基于前述方案,所述数据获取模块710可以用于计算所述运动信息中所述虚拟对象上一目标点的当前高度坐标与对应的地表高度坐标的高度差;其中,所述运动信息包括所述虚拟对象当前所处位置的坐标及对应的地表坐标;若所述高度差大于所述虚拟对象高度,则判断所述虚拟对象处于腾空状态;或者若所述高度差小于等于所述虚拟对象高度,则判断所述虚拟对象处于非腾空状态;其中,所述虚拟对象高度为所述目标点至虚拟对象底部边沿的高度。
在本公开的一种示例性实施例中,基于前述方案,所述转向控制模块730可以用于对所述目标加速度进行修正,以使所述目标加速度的数值处于预设范围内。
在本公开的一种示例性实施例中,基于前述方案,所述转向控制模块730可以用于在所述目标加速度的数值大于预设范围的最大值时,将所述目标加速度的数值修正为所述最大值;或者在所述目标加速度的数值在预设范围内时,所述目标加速度的数值不做修正;或者在所述目标加速度的数值小于预设范围的最小值时,将所述目标加速度的数值修正为所述最小值。
由于本公开的示例实施例的虚拟对象的控制装置的各个功能模块与上述虚拟对象的控制方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的虚拟对象的控制方法的实施例。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述虚拟对象的控制方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。
下面参照图8来描述根据本公开的这种实施例的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830、显示单元840。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,所述处理单元810可以执行如图1中所示的步骤S110:在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;S120:根据所述当前角速度以及所述期望角速度确定目标加速度;S130:将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
又如,所述的电子设备可以实现如图2至图3所示的各个步骤。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)821和/或高速缓存存储单元822,还可以进一步包括只读存储单元(ROM)823。
存储单元820还可以包括具有一组(至少一个)程序模块825的程序/实用工具824,这样的程序模块825包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备870(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
参照图9,描述了根据本公开的实施例的用于实现上述方法的程序产品900,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (11)
1.一种虚拟对象的控制方法,其特征在于,包括:
在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;
根据所述当前角速度以及所述期望角速度确定目标加速度;
将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
2.根据权利要求1所述的方法,其特征在于,所述当前角速度和所述期望角速度包括所述虚拟对象所在三维坐标系中至少一个轴向上的角速度。
3.根据权利要求2所述的方法,其特征在于,所述目标加速度包括对应于所述虚拟对象所在三维坐标系中至少一个轴向上的角速度的加速度。
4.根据权利要求1所述的方法,其特征在于,所述第一控制操作包括对所述虚拟对象的运动方向的控制操作。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述虚拟对象的运动信息以判断所述虚拟对象是否处于腾空状态。
6.根据权利要求5所述的方法,其特征在于,判断所述虚拟对象是否处于腾空状态,包括:
计算所述运动信息中所述虚拟对象上一目标点的当前高度坐标与对应的地表高度坐标的高度差;其中,所述运动信息包括所述虚拟对象当前所处位置的坐标及对应的地表坐标;
若所述高度差大于所述虚拟对象高度,则判断所述虚拟对象处于腾空状态;或者
若所述高度差小于等于所述虚拟对象高度,则判断所述虚拟对象处于非腾空状态;
其中,所述虚拟对象高度为所述目标点至虚拟对象底部边沿的高度。
7.根据权利要求1所述的方法,其特征在于,在将所述目标加速度施加于所述虚拟对象之前,所述方法还包括:
对所述目标加速度进行修正,以使所述目标加速度的数值处于预设范围内。
8.根据权利要求7所述的方法,其特征在于,对所述目标加速度进行修正,以使所述目标加速度的数值处于预设范围内,包括:
在所述目标加速度的数值大于预设范围的最大值时,将所述目标加速度的数值修正为所述最大值;或者
在所述目标加速度的数值在预设范围内时,所述目标加速度的数值不做修正;或者
在所述目标加速度的数值小于预设范围的最小值时,将所述目标加速度的数值修正为所述最小值。
9.一种虚拟对象的控制装置,其特征在于,包括:
数据获取模块,用于在虚拟对象处于腾空状态时,获取所述虚拟对象的当前角速度,以及响应于对所述虚拟对象的第一控制操作以确定期望角速度;
加速度确定模块,用于根据所述当前角速度以及所述期望角速度确定目标加速度;
转向控制模块,用于将所述目标加速度施加于所述虚拟对象,以使所述当前角速度修正为所述期望角速度。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至8中任一项所述的虚拟对象的控制方法。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至8中任一项所述的虚拟对象的控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910425075.7A CN110152295B (zh) | 2019-05-21 | 2019-05-21 | 虚拟对象的控制方法及装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910425075.7A CN110152295B (zh) | 2019-05-21 | 2019-05-21 | 虚拟对象的控制方法及装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110152295A true CN110152295A (zh) | 2019-08-23 |
CN110152295B CN110152295B (zh) | 2023-09-26 |
Family
ID=67631774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910425075.7A Active CN110152295B (zh) | 2019-05-21 | 2019-05-21 | 虚拟对象的控制方法及装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110152295B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023030091A1 (zh) * | 2021-09-06 | 2023-03-09 | 北京字跳网络技术有限公司 | 控制运动物体运动的方法、装置、设备及介质 |
WO2023221688A1 (zh) * | 2022-05-20 | 2023-11-23 | 腾讯科技(深圳)有限公司 | 虚拟车辆的控制方法、装置、终端设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2251068A2 (en) * | 2009-05-07 | 2010-11-17 | Nintendo Co., Ltd. | Storage medium storing information processing program, and information processing apparatus |
CN103942412A (zh) * | 2014-03-18 | 2014-07-23 | 深圳市宇慧通科技有限公司 | 游戏角色腾空的识别方法及装置 |
CN106155553A (zh) * | 2016-07-05 | 2016-11-23 | 网易(杭州)网络有限公司 | 虚拟对象运动控制方法及装置 |
CN106178504A (zh) * | 2016-06-27 | 2016-12-07 | 网易(杭州)网络有限公司 | 虚拟对象运动控制方法及装置 |
CN108514741A (zh) * | 2018-04-09 | 2018-09-11 | 网易(杭州)网络有限公司 | 虚拟游戏对象的运动控制方法、装置、处理器及终端 |
CN108579087A (zh) * | 2018-04-10 | 2018-09-28 | 网易(杭州)网络有限公司 | 一种游戏角色的控制方法及装置 |
CN108733288A (zh) * | 2018-05-21 | 2018-11-02 | 网易(杭州)网络有限公司 | 信息处理方法、装置、电子设备及存储介质 |
US20180339223A1 (en) * | 2017-05-23 | 2018-11-29 | Blast Motion Inc. | Motion mirroring system that incorporates virtual environment constraints |
CN109107154A (zh) * | 2018-08-02 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 虚拟道具移动控制方法、装置、电子装置及存储介质 |
CN109364475A (zh) * | 2017-12-15 | 2019-02-22 | 鲸彩在线科技(大连)有限公司 | 虚拟角色控制方法、装置、终端、系统及介质 |
CN109550242A (zh) * | 2018-11-19 | 2019-04-02 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法和装置 |
-
2019
- 2019-05-21 CN CN201910425075.7A patent/CN110152295B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2251068A2 (en) * | 2009-05-07 | 2010-11-17 | Nintendo Co., Ltd. | Storage medium storing information processing program, and information processing apparatus |
CN103942412A (zh) * | 2014-03-18 | 2014-07-23 | 深圳市宇慧通科技有限公司 | 游戏角色腾空的识别方法及装置 |
CN106178504A (zh) * | 2016-06-27 | 2016-12-07 | 网易(杭州)网络有限公司 | 虚拟对象运动控制方法及装置 |
CN106155553A (zh) * | 2016-07-05 | 2016-11-23 | 网易(杭州)网络有限公司 | 虚拟对象运动控制方法及装置 |
US20180339223A1 (en) * | 2017-05-23 | 2018-11-29 | Blast Motion Inc. | Motion mirroring system that incorporates virtual environment constraints |
CN109364475A (zh) * | 2017-12-15 | 2019-02-22 | 鲸彩在线科技(大连)有限公司 | 虚拟角色控制方法、装置、终端、系统及介质 |
CN108514741A (zh) * | 2018-04-09 | 2018-09-11 | 网易(杭州)网络有限公司 | 虚拟游戏对象的运动控制方法、装置、处理器及终端 |
CN108579087A (zh) * | 2018-04-10 | 2018-09-28 | 网易(杭州)网络有限公司 | 一种游戏角色的控制方法及装置 |
CN108733288A (zh) * | 2018-05-21 | 2018-11-02 | 网易(杭州)网络有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN109107154A (zh) * | 2018-08-02 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 虚拟道具移动控制方法、装置、电子装置及存储介质 |
CN109550242A (zh) * | 2018-11-19 | 2019-04-02 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023030091A1 (zh) * | 2021-09-06 | 2023-03-09 | 北京字跳网络技术有限公司 | 控制运动物体运动的方法、装置、设备及介质 |
WO2023221688A1 (zh) * | 2022-05-20 | 2023-11-23 | 腾讯科技(深圳)有限公司 | 虚拟车辆的控制方法、装置、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110152295B (zh) | 2023-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109903366A (zh) | 虚拟模型的渲染方法及装置、存储介质及电子设备 | |
CN110559662B (zh) | 虚拟环境中的视角切换方法、装置、终端及介质 | |
JP2009066064A (ja) | プログラム、情報記憶媒体、及びゲーム装置 | |
JP5855237B2 (ja) | 分散対話型シミュレーションにおけるオブジェクトの改善された表現のための装置および方法 | |
JP2022551112A (ja) | 仮想環境における乗り物の運転方法、装置、端末及びプログラム | |
CN110559653B (zh) | 虚拟飞行器的控制方法、装置、终端及存储介质 | |
CN110152295A (zh) | 虚拟对象的控制方法及装置、存储介质及电子设备 | |
CN109621415A (zh) | 3d游戏中的显示控制方法及装置、计算机存储介质 | |
US20230321535A1 (en) | Coordinate axis display method and apparatus applied to virtual environments, terminal, and medium | |
EP3726843A1 (en) | Animation implementation method, terminal and storage medium | |
CN107096223B (zh) | 虚拟现实场景中的移动控制方法、装置及终端设备 | |
CN110013671A (zh) | 动作执行方法和装置、存储介质及电子装置 | |
US20210082170A1 (en) | Imitating motion capture clips using a neural network | |
CN109550250A (zh) | 虚拟对象骨骼数据处理方法及装置、存储介质、电子设备 | |
CN106527887A (zh) | 虚拟物体选取方法、装置及vr系统 | |
US20100245233A1 (en) | Moving an object within a virtual environment | |
CN109806595A (zh) | 方位的标记方法、装置、存储介质、处理器及终端 | |
CN115298732A (zh) | 用于多用户虚拟和增强现实的系统和方法 | |
CN108579079A (zh) | 虚拟对象转向控制方法及装置、电子设备、存储介质 | |
US20210165387A1 (en) | Gimbal control method, gimbal and gimbal control system | |
CN110413136A (zh) | 虚拟对象的控制方法、装置、计算机存储介质和电子设备 | |
CN108319283A (zh) | 飞行器控制方法及飞行器 | |
US20230082510A1 (en) | Controlling a virtual vehicle using auxiliary control function | |
WO2024040882A1 (zh) | 虚拟对象控制方法、虚拟对象控制装置、存储介质及设备 | |
US20230086441A1 (en) | Method and apparatus for displaying picture in virtual scene, device, storage medium, and program product |
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 |