CN110882543B - 控制虚拟环境中虚拟对象下落的方法、装置及终端 - Google Patents
控制虚拟环境中虚拟对象下落的方法、装置及终端 Download PDFInfo
- Publication number
- CN110882543B CN110882543B CN201911176245.9A CN201911176245A CN110882543B CN 110882543 B CN110882543 B CN 110882543B CN 201911176245 A CN201911176245 A CN 201911176245A CN 110882543 B CN110882543 B CN 110882543B
- Authority
- CN
- China
- Prior art keywords
- virtual object
- virtual
- glide
- height difference
- prop
- 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.)
- Active
Links
Images
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/807—Gliding or sliding on surfaces, e.g. using skis, skates or boards
-
- 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
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
- A63F2300/663—Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
-
- 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
- A63F2300/00—Features 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/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8082—Virtual reality
Abstract
本申请公开了一种控制虚拟环境中虚拟对象下落的方法、装置及终端,涉及计算机领域。该方法包括:显示虚拟环境界面,虚拟环境界面中包括对虚拟环境进行观察的画面,虚拟环境中的虚拟对象处于下落状态;获取虚拟对象与虚拟环境中目标地点之间的高度差,目标地点根据虚拟对象的虚拟环境中所处的位置确定得到;若高度差大于第一高度差阈值,则控制虚拟对象自动使用滑翔道具,其中,使用滑翔道具后虚拟对象的下落速度小于使用滑翔道具前虚拟对象的下落速度;使用本申请提供的方法,终端控制虚拟对象自动使用滑翔道具进一步提高了游戏的可玩度与真实性,并且滑翔道具的使用由终端自动触发,无需用户执行额外的操作,从而简化了滑翔道具的使用过程。
Description
技术领域
本申请涉及计算机领域,特别涉及一种控制虚拟环境中虚拟对象下落的方法、装置及终端。
背景技术
在基于三维的虚拟环境的应用程序中,如射击游戏,用户可以控制虚拟环境中的虚拟对象进行行走、奔跑、射击、格斗、驾驶等动作,并且多个用户可以在线组队在同一个虚拟环境中协同完成某项任务。
在射击游戏过程中,在受到敌对虚拟对象的攻击时,用户如何控制虚拟对象进行快速躲避以及争取更多的战斗时间是极为重要的。用户可以基于不同类型的游戏场景控制虚拟对象实现不同方式的移动,如在室内场景中用户控制虚拟对象进行行走或奔跑,或者,在较为宽敞的室外场景中,用户还可以控制虚拟对象使用代步工具进行快速的平地移动。
而在一些特殊的游戏场景中,如悬崖、高山处,用户无法控制虚拟对象继续前行,只能控制虚拟对象更改行进路线。
发明内容
本申请实施例提供了一种控制虚拟环境中虚拟对象下落的方法、装置及终端。所述技术方案如下:
一方面,本申请实施例提供了一种控制虚拟环境中虚拟对象下落的方法,所述方法包括:
显示虚拟环境界面,所述虚拟环境界面中包括对虚拟环境进行观察的画面,所述虚拟环境中的虚拟对象处于下落状态;
获取所述虚拟对象与所述虚拟环境中目标地点之间的高度差,所述目标地点根据所述虚拟对象的所述虚拟环境中所处的位置确定得到;
若所述高度差大于第一高度差阈值,则控制所述虚拟对象自动使用滑翔道具,其中,使用所述滑翔道具后所述虚拟对象的下落速度小于使用所述滑翔道具前所述虚拟对象的下落速度。
另一方面,本申请实施例提供了一种控制虚拟环境中虚拟对象下落的装置,所述装置包括:
显示模块,用于显示虚拟环境界面,所述虚拟环境界面中包括对虚拟环境进行观察的画面,所述虚拟环境中的虚拟对象处于下落状态;
获取模块,用于获取所述虚拟对象与所述虚拟环境中目标地点之间的高度差,所述目标地点根据所述虚拟对象的所述虚拟环境中所处的位置确定得到;
控制模块,用于若所述高度差大于第一高度差阈值,则控制所述虚拟对象自动使用滑翔道具,其中,使用所述滑翔道具后所述虚拟对象的下落速度小于使用所述滑翔道具前所述虚拟对象的下落速度。
另一方面,本申请实施例提供了一种终端,所述终端包括:处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的控制虚拟环境中虚拟对象下落的方法。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的控制虚拟环境中虚拟对象下落的方法。
另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上述方面所述的控制虚拟环境中虚拟对象下落的方法。
本申请实施例中,终端显示虚拟环境界面,当虚拟环境中的虚拟对象处于下落状态时,终端获取虚拟对象与虚拟环境中目标地点之间的高度差,当高度差大于第一高度差阈值时,终端控制虚拟对象自动使用滑翔道具;通过为虚拟对象增加自动使用滑翔道具的功能,虚拟对象通过滑翔道具平稳地从较高位置处降落至目标地点,实现了虚拟对象利用滑翔道具进行平稳降落以保障虚拟对象下落时的安全,相较于相关技术所采用的自由落体或步行的移动方式而言,终端控制虚拟对象自动使用滑翔道具进一步提高了游戏的可玩度与真实性,并且滑翔道具的使用由终端自动触发,无需用户执行额外的操作,从而简化了滑翔道具的使用过程。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的实施环境的示意图;
图2示出了本申请一个示例性实施例提供的控制虚拟环境中虚拟对象下落的方法的流程图;
图3是虚拟对象处于下落状态的示意图;
图4是一种滑翔道具的示意图;
图5示出了本申请另一个示例性实施例提供的控制虚拟环境中虚拟对象下落的方法的流程图;
图6是一种确定高度差的方法的示意图;
图7是另一种确定高度差的方法的示意图;
图8示出了本申请另一个示例性实施例提供的控制虚拟环境中虚拟对象下落的方法的流程图;
图9是用户触发滑翔控件控制虚拟对象使用滑翔道具的示意图;
图10是用户触发方向控件调整虚拟对象滑翔方向的示意图;
图11示出了本申请另一个示例性实施例提供的控制虚拟环境中虚拟对象下落的方法的流程图;
图12是本申请一个示例性实施例提供的控制虚拟环境中虚拟对象下落的装置的结构框图;
图13示出了本申请一个示例性实施例提供的终端的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例中涉及的名词进行介绍:
虚拟环境:是应用程序在终端上运行时显示(或提供)的虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的环境,还可以是纯虚构的环境。虚拟环境可以是二维虚拟环境、2.5维虚拟环境和三维虚拟环境中的任意一种,本申请对此不加以限定。下述实施例以虚拟环境是三维虚拟环境来举例说明。
虚拟对象:是指虚拟环境中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在三维虚拟环境中显示的人物、动物、植物、油桶、墙壁、石块等。可选的,虚拟对象是基于动画骨骼技术创建的三维立体模型。每个虚拟对象在三维虚拟环境中具有自身的形状和体积,占据三维虚拟环境中的一部分空间。
虚拟道具:是指虚拟对象在虚拟环境中能够使用的道具,包括远程虚拟道具和近程虚拟道具。远程虚拟道具是指能够在距离其他虚拟对象较远的位置伤害虚拟对象的道具,;近程虚拟道具是指能够近距离对其他虚拟对象发起伤害的道具,比如,匕首、剑、刀、斧子等。
滑翔道具:滑翔道具是一种虚拟道具。当虚拟对象在虚拟环境中处于下落状态时,装备有滑翔道具的虚拟对象从自由落体状态切换至滑翔状态。可选的,本申请实施例中,滑翔道具可以是滑翔伞、滑翔机、翼装等能够为虚拟对象提供滑翔功能的虚拟道具。
本申请中的“装备、携带或装配”虚拟道具指的是虚拟对象拥有的虚拟道具,虚拟对象拥有背包,背包中存在背包格,虚拟道具存放于虚拟对象的背包中,或者,虚拟对象正在使用虚拟道具。
本申请中提供的方法可以应用于虚拟现实应用程序、三维地图程序、第一人称射击游戏、多人在线战术竞技游戏(Multiplayer Online Battle Arena Games,MOBA)等,下述实施例是以在游戏中的应用来举例说明。
基于虚拟环境的游戏往往由一个或多个游戏世界的地图构成,游戏中的虚拟环境模拟现实世界的场景,用户可以操控游戏中的虚拟对象在虚拟环境中进行行走、跑步、跳跃、射击、格斗、驾驶、切换使用虚拟道具、使用虚拟道具伤害其他虚拟对象等动作,交互性较强,并且多个用户可以在线组队进行竞技游戏。
本申请实施例中,终端控制虚拟对象自动使用虚拟道具中的滑翔道具,或者,用户操控虚拟对象使用虚拟道具中的滑翔道具,该滑翔道具可实现虚拟对象的滑翔功能。
请参考图1,其示出了本申请一个示例性实施例提供的实施环境的示意图。该实施环境中包括:第一终端120、服务器140和第二终端160。
第一终端120安装和运行有支持虚拟环境的应用程序。该应用程序可以是虚拟现实应用程序、三维地图程序、FPS游戏、MOBA游戏中的任意一种。第一终端120是第一用户使用的终端,第一用户使用第一终端120控制位于虚拟环境中的第一虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、射击、投掷、切换虚拟道具、使用虚拟道具中的至少一种,该虚拟道具包括滑翔道具。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物对象或动漫人物对象。
第一终端120通过无线网络或有线网络与服务器140相连。
服务器140包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。示意性的,服务器140包括处理器144和存储器142,存储器142包括显示模块1421、控制模块1422和接收模块1423。服务器140用于为支持三维虚拟环境的应用程序提供后台服务。可选的,服务器140承担主要计算工作,第一终端120和第二终端160承担次要计算工作;或者,服务器140承担次要计算工作,第一终端120和第二终端160承担主要计算工作;或者,服务器140、第一终端120和第二终端160三者之间采用分布式计算架构进行协同计算。
第二终端160安装和运行有支持虚拟环境的应用程序。该应用程序可以是虚拟现实应用程序、三维地图程序、FPS游戏、MOBA游戏中的任意一种。第二终端160是第二用户使用的终端,第二用户使用第二终端160控制位于虚拟环境中的第二虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、射击、投掷、切换虚拟道具、使用虚拟道具中的至少一种,该虚拟道具包括滑翔道具。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物对象或动漫人物对象。
可选的,第一虚拟人物和第二虚拟人物处于同一虚拟环境中。可选的,第一虚拟人物和第二虚拟人物可以属于同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。
可选的,第一终端120和第二终端160上安装的应用程序是相同的,或两个终端上安装的应用程序是不同控制系统平台的同一类型应用程序。第一终端120可以泛指多个终端中的一个,第二终端160可以泛指多个终端中的一个,本实施例仅以第一终端120和第二终端160来举例说明。第一终端120和第二终端160的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、动态影像专家压缩标准音频层面3(MovingPicture Experts Group Audio Layer III,MP3)播放器、动态影像专家压缩标准音频层面4(Moving Picture Experts Group Audio Layer IV,MP4)播放器、膝上型便携计算机和台式计算机中的至少一种。以下实施例以终端包括智能手机来举例说明。
本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本申请实施例对终端的数量和设备类型不加以限定。
在大多数虚拟环境中,如虚拟对象在草坪、沙漠、道路等平地类型的虚拟环境中,虚拟对象的移动状态是可被用户控制的。在一个示例中,用户通过虚拟环境界面中虚拟对象的移动控件操控虚拟对象进行移动,当虚拟对象移动至草坪中时,用户触发指示虚拟对象下蹲的控件来控制虚拟对象在草坪中进行隐藏,或,以下蹲的姿态匍匐前进;在平地类型的虚拟环境中,也存在具有一定高度的土坡、建筑物等障碍物,此时,用户可触发指示虚拟对象跳跃和攀爬的控件来控制虚拟对象进行障碍物的跨越。
然而,在诸如悬崖、高山等非平地类型的虚拟环境中,或者,面对平地类型的虚拟环境中跨越难度较高的障碍物时,用户无法通过相关技术中提供的行走、攀爬和跳跃等控件来对虚拟对象的移动进行控制。其中,虚拟对象在没有坡度的非平地类型的虚拟环境中时,玩家只能控制虚拟对象进行自由落体,又或是当场景设定虚拟对象从高处自由落体是损害其生命值的操作,则用户只能通过控制虚拟对象采用绕路方式从有坡度的位置处步行至平地位置处。
为了解决上述情形所出现的问题,本申请实施例提供了一种控制虚拟环境中虚拟对象下落的方法,通过控制虚拟对象自动使用滑翔道具来实现控制虚拟对象下落,且该方法适用于虚拟环境中的虚拟对象处于下落状态的情形。
请参考图2,其示出了本申请一个示例性实施例提供的控制虚拟环境中虚拟对象下落的方法的流程图。本实施例以该方法用于图1所示实施环境中的第一终端120或第二终端160或该实施环境中的其它终端为例进行说明,该方法包括如下步骤。
步骤201,显示虚拟环境界面,虚拟环境界面中包括对虚拟环境进行观察的画面,虚拟环境中的虚拟对象处于下落状态。
在一种可能的实施方式中,终端显示用户游戏时的虚拟环境界面。其中,该虚拟环境界面中包括对虚拟环境进行观察的画面。在对虚拟环境进行观察的画面中,观察视角是指以虚拟对象的第一人称视角或者第三人称视角在虚拟环境中进行观察时的观察角度。可选的,在本申请实施例中,以虚拟对象的第一人称视为观察视角进行示例性的说明。
可选的,在虚拟环境界面中,包括有用于实现多种功能的控件。如用于实现用户控制虚拟对象移动时的控件(移动控件、跳跃控件、攀爬控件、下蹲控件等),如用于实现用户控制虚拟对象射击时的控件(瞄准控件、射击控件、虚拟道具切换控件等),又如用于显示虚拟对象生命值的控件等等,本申请实施例并不对此进行限定。
可选的,虚拟环境画面显示的虚拟环境包括:山川、平地、河流、湖泊、海洋、沙漠、天空、植物、建筑、车辆中的至少一种元素。
在本申请实施例中,用户所控制的虚拟对象处于下落状态时,执行步骤201之后的步骤。
示意性的,如图3所示的虚拟环境界面中,用户所控制的虚拟对象301从悬崖的顶部离开并向底部的方向下落(箭头示意虚拟对象的下落方向),则用户所控制的虚拟对象301在当前处于下落状态。
步骤202,获取虚拟对象与虚拟环境中目标地点之间的高度差,目标地点根据虚拟对象的虚拟环境中所处的位置确定得到。
对于上述图3所示的虚拟环境界面,用户所控制的虚拟对象处于下落状态时,虚拟对象所处的位置与可降落的目标地点之间存在高度差。若高度差较小,则在用户控制虚拟对象以自由落体方式到达目标地点的过程中,虚拟对象的生命值不受影响,或者,生命值损耗较少;在虚拟对象下落的过程中,当用户所控制的虚拟对象能够自动使用滑翔道具时,虚拟对象的生命值也不受影响,且相较于自由落体方式而言,虚拟对象使用滑翔道具能够延长到达目标地点的时间。
因此,为了更好地把握虚拟对象自动使用滑翔道具的时机,在一种可能的实施方式中,终端获取虚拟对象与虚拟环境中目标地点之间的高度差,通过判断高度差来实现终端对虚拟对象自动使用滑翔道具的时机。
其中,目标地点根据虚拟对象的虚拟环境中所处的位置确定得到。如在图3所示的虚拟环境界面中,沿着自由落体的竖直方向,可降落的悬崖底部平地为目标地点,终端将虚拟对象301当前所处的位置与该目标地点之间的竖直距离确定为高度差。
步骤203,若高度差大于第一高度差阈值,则控制虚拟对象自动使用滑翔道具。
在一种可能的实施方式中,终端获取虚拟对象与虚拟环境中目标地点之间的高度差之后,判断高度差是否大于第一高度差阈值,若高度差大于第一高度差阈值,则控制虚拟对象自动使用滑翔道具。其中,该第一高度阈值可以为默认设置,也可以由用户手动设置。
在一个示意性的例子中,设置第一高度差阈值为20米,虚拟对象处于下落状态。若虚拟对象当前所处的位置与可降落的目标地点之间的距离为10米,则终端无法实现控制虚拟对象自动使用滑翔道具;若虚拟对象当前所处的位置与可降落的目标地点之间的距离为25米,则终端实现控制虚拟对象自动使用滑翔道具。
相应的,虚拟对象使用滑翔道具时下落时,虚拟对象的下落速度小于使用滑翔道具前虚拟对象的下落速度,从而避免对下落过程中的虚拟对象造成生命值降低。
可选的,滑翔道具可以是虚拟对象身着的一种翼装,或者,是一种虚拟对象可操控的滑翔机,本申请并不对滑翔道具的具体形式进行限定。
示意性的,在图3的基础上,如图4所示,其示出了一种滑翔道具的示意图。当虚拟对象301与目标地点(草坪)之间的高度差大于第一高度差阈值时,终端控制下落状态下的虚拟对象301自动换上翼装401,换上翼装401后的虚拟对象301如图4所示,可用于实现虚拟对象301的滑翔功能。
综上所述,本申请实施例中,终端显示虚拟环境界面,当虚拟环境中的虚拟对象处于下落状态时,终端获取虚拟对象与虚拟环境中目标地点之间的高度差,当高度差大于第一高度差阈值时,终端控制虚拟对象自动使用滑翔道具;通过为虚拟对象增加自动使用滑翔道具的功能,虚拟对象通过滑翔道具平稳地从较高位置处降落至目标地点,实现了虚拟对象利用滑翔道具进行平稳降落以保障虚拟对象下落时的安全,相较于相关技术所采用的自由落体或步行的移动方式而言,终端控制虚拟对象自动使用滑翔道具进一步提高了游戏的可玩度与真实性,并且滑翔道具的使用由终端自动触发,无需用户执行额外的操作,从而简化了滑翔道具的使用过程。
由于虚拟环境的多样性,如何确定虚拟对象与目标地点之间的高度差是实现终端控制虚拟对象自动使用滑翔道具的关键步骤。在一种可能的实施方式中,通过下述实施例对确定虚拟对象与目标地点之间的高度差的具体过程进行示例性的说明。
请参考图5,其示出了本申请另一个示例性实施例提供的控制虚拟环境中虚拟对象下落的方法的流程图。本实施例以该方法用于图1所示实施环境中的第一终端120或第二终端160或该实施环境中的其它终端为例进行说明,该方法包括如下步骤。
步骤501,显示虚拟环境界面,虚拟环境界面中包括对虚拟环境进行观察的画面,虚拟环境中的虚拟对象处于下落状态。
本步骤请参考步骤201,本申请实施例在此不再赘述。
步骤502,获取虚拟对象在虚拟环境中所处的第一位置。
在一种可能的实施方式中,虚拟环境界面所显示的虚拟环境是基于三维空间的,则各个元素的位置都可通过三维坐标来确定。
可选的,将虚拟对象所在的重心位置确定为虚拟对象的位置。虚拟对象包括未开始下落时的原地位置与下落过程中的动态位置,在本申请实施例中,将虚拟对象未开始下落时的原地位置标记为初始下落位置,将虚拟对象处于下落过程中的动态位置标记为第一位置,即初始下落位置仅为一个,而第一位置至少包括一个。
示意性的,在图4的基础上,如图6所示,示出了虚拟对象301在未开始下落时的原地位置,此时虚拟对象301所在的重心位置为点A0,即点A0为虚拟对象301的初始下落位置,其坐标记为A0(x0,y0,z0)。
当用户控制虚拟对象下落的过程中,形成运动路径,运动路径包括下落状态下的虚拟对象所在的各个重心位置,将各个重心位置处的三维坐标记为第一位置。其中,若间隔获取虚拟对象的重心位置,运动路径可近似为由密集的重心位置连接而成的。
相应的,图6还示出了虚拟对象301在下落过程中的动态位置,其下落过程形成了由多个重心位置构成的运动路径L1,虚拟对象301在下落过程中的各个重心位置为点A1至A5,即点A1至A5为虚拟对象301在下落过程中的各个第一位置,可选的,将各个第一位置的坐标记为A1(x1,y1,z1)、A2(x2,y2,z2)、A3(x3,y3,z3)、A4(x4,y4,z4)和A5(x5,y5,z5)。
步骤503,根据第一位置确定虚拟环境中目标地点的第二位置。
在一种可能的实施方式中,步骤503a和步骤503b提供了一种根据第一位置确定虚拟环境中目标地点的第二位置的方法,即步骤503包括步骤503a和步骤503b。
步骤503a,根据第一位置生成目标射线。
在一种可能的实施方式中,终端根据第一位置来确定目标射线。其中,目标射线以第一位置为起点,目标射线的射线方向为重力方向。实际上,由于确定目标射线是终端内部的执行过程,目标射线在虚拟环境界面不可见。
示意性的,如图6所示,当终端检测到虚拟对象的初始下落位置发生了改变,则间隔获取虚拟对象301在下落状态时的重心位置,各个重心位置由对应的第一位置进行标记。进一步的,终端以第一位置作为起点、重力方向为射线方向生成虚拟对象301下落时的目标射线,如图6所示,示出了根据A1确定出的目标射线1、根据A2确定出的目标射线2、根据A3确定出的目标射线3、根据A4确定出的目标射线4和根据A5确定出的目标射线5。
步骤503b,将虚拟环境中与目标射线存在交点的地点确定为目标地点,并获取目标地点的第二位置。
在虚拟对象下落的过程中,下落方向处的区域包含可降落的地点,在一种可能的实施方式中,将虚拟环境中与目标射线存在交点的地点确定为目标地点,并获取目标地点的第二位置,同样的,第二位置通过三维坐标来标记。
示意性的,如图6所示,各条目标射线分别结束于虚拟环境中与目标射线存在交点的地点,各个存在交点的地点即为目标地点,可选的,将各个目标地点处的位置记为第二位置。如图6所示,示出了对应目标射线A1的目标地点B1、对应目标射线A2的目标地点B2、对应目标射线A3的目标地点B3、对应目标射线A4的目标地点B4和对应目标射线A5的目标地点B5,并分别对应于六个第二位置,可选的,将各个第二位置记为B1(m1,n1,p1)、B2(m2,n2,p2)、B3(m3,n3,p3)、B4(m4,n4,p4)和B5(m5,n5,p5)。
在另一种可能的实施方式中,步骤503c和步骤503d提供了另一种根据第一位置确定虚拟环境中目标地点的第二位置的方法,即步骤503还可以包括步骤503c和步骤503d。
步骤503c,根据第一位置以及虚拟对象的运动速度生成模拟下落轨迹。
若用户控制虚拟对象从高处下落,可选的,用户可通过控制虚拟对象进行跳跃或前行来实现虚拟对象的下落触发,且在触发虚拟对象下落时,存在初始速度与虚拟对象自身的重力加速度,终端可以根据简单的受力分析可得到虚拟对象在下落过程中的运动速度,从而生成虚拟对象的模拟下落轨迹。其中,模拟下落轨迹以第一位置为起点,且在虚拟环境界面模拟下落轨迹不可见。
示意性的,如图7所示,示出了虚拟对象301在未开始下落时的原地位置,此时虚拟对象301所在的重心位置为点a0,即点a0为虚拟对象301的初始下落位置,其坐标记为a0(xa0,ya0,za0)。当用户控制虚拟对象301触发跳跃或前行时,虚拟对象301处于下落状态,终端获取虚拟对象301在下落过程中的第一位置,第一位置标记为点a1,其坐标记为a1(xa1,ya1,za1)。此外,虚拟对象301受到了如图7所示方向的初始速度b,同时还受到了重力方向的重力加速度c,根据简单的受力分析得到下落时的运动速度d,终端从而在内部模拟出虚拟对象301的模拟下落轨迹L2。
步骤503d,将虚拟环境中与模拟下落轨迹存在交点的地点确定为目标地点,并获取目标地点的第二位置。
虚拟环境中存在虚拟对象可降落的地点,进一步的,终端内将虚拟环境中与模拟下落轨迹存在交点的地点确定为目标地点。
示意性的,如图7所示,地点a2为模拟下落轨迹L2与虚拟环境存在交点的地点,可选的,将地点a2确定为目标地点,并将该目标地点的三维坐标a2(xa2,ya2,za2)记为第二位置。
步骤504,根据初始下落位置对应的第一高度以及第二位置对应的第二高度,确定高度差。
在一种可能的实施方式中,由于初始下落位置和第二位置都是通过三维坐标表示的,因此,可将初始下落位置对应的三维坐标中的Z轴数值确定为第一高度,将第二位置对应的三维坐标中的Z轴数值确定为第二高度,将第一高度和第二高度的差值记为高度差。
可选的,图6和图7分别示出了本申请实施例提供的两种根据第一位置确定虚拟环境中目标地点的第二位置的方法。
若根据图6所示的方法来计算高度差(即步骤503b之后执行步骤504的内容),示意性的,如图6所示,目标射线1对应的高度差为(z0-p1)、目标射线2对应的高度差为(z0-p2)、目标射线3对应的高度差为(z0-p3)、目标射线4对应的高度差为(z0-p4)以及目标射线5对应的高度差为(z0-p5)。
若根据图7所示的方法来计算高度差(即步骤503d之后执行步骤504的内容),示意性的,如图7所示,模拟下落轨迹L2对应的高度差为(za1-za2)。
在本申请实施例中,根据第一位置和第二位置确定出高度差之后,将高度差与高度差阈值进行比较,根据比较的结果判断终端适合为虚拟对象自动使用滑翔道具的时机。
在一种可能的实施方式中,步骤505和步骤506提供了根据地点类型确定第一高度差阈值的一种方法,即步骤504之后执行步骤505和步骤506。
步骤505,获取目标地点的地点类型。
可选的,地点类型包括地面、水面、雪地、沼泽和树丛中的至少一种。当用户所控制的虚拟对象朝着地面下落时,其对应的降落区域基本是无缓冲的;而当用户所控制的虚拟对象朝着如水面和雪地等地点下落时,其对应的降落区是有一定缓冲的。因此,对于未使用翼装的虚拟对象而言,根据下落时所在的降落区域的地点类型的不同,其受到的生命值损耗是不同的。
在一种可能的实施方式中,虚拟对象所对应的第一高度差阈值并不是固定的。当用户所控制的虚拟对象处于下落状态并确定出高度差之后,终端获取虚拟对象当前降落区域的地点类型,即目标地点的地点类型。
步骤506,根据地点类型确定第一高度差阈值。
其中,不同地点类型对应不同高度差阈值。在一种可能的实施方式中,当目标地点是是缓冲度较高的地点类型,则该地点类型对应的高度差阈值较高;当目标地点是是缓冲度较低的地点类型,则该地点类型对应的高度差阈值较低。
在一个示意性的例子中,设置地面对应的高度阈值为10米、水面对应的高度阈值为30米、雪地对应的高度阈值为20米、沼泽对应的高度阈值为15米以及树丛对应的高度阈值为12米。
在一种可能的实施方式中,重终端获取虚拟对象当前的降落区域的地点类型,将当前地点类型对应的高度阈值确定为第一高度阈值。
示意性的,如图6所示,虚拟对象301当前的降落区域为树丛,树丛对应的高度阈值为12米,因此,终端将12米确定为第一高度阈值。
在另一种可能的实施方式中,步骤507和步骤508提供了根据虚拟对象剩余生命值确定第一高度差阈值的另一种方法,即步骤504之后执行步骤507和步骤508。
步骤507,获取虚拟对象的剩余生命值。
可选的,游戏设定有虚拟对象在高处下落有生命值损失的规则,当虚拟对象在不同高度落下时,会对应有不同的生命值损失。
在一种可能的实施方式中,当用户所控制的虚拟对象处于下落状态时,终端获取虚拟对象的剩余生命值。
步骤508,根据剩余生命值确定第一高度差阈值。
在一种可能的实施方式中,终端设定单位高度的生命损失值,终端根据虚拟对象的剩余生命值计算出虚拟对象下落时的极限高度阈值,并在极限高度阈值的基础上确定出第一高度差阈值。
在一个示意性的例子中,终端设定单位高度的生命损失值,虚拟对象下落时的高度差为1米时,其实生命损失值为20。此时,虚拟对象的剩余生命值为300,终端计算出该虚拟对象的极限高度阈值为15米,即虚拟对象在高度差为15米的地点自由落体时,该虚拟对象的生命值将减为零。
然而,若将虚拟对象对应的极限高度阈值设定为第一高度差阈值,则当虚拟对象当前的高度差就等于对应的极限高度阈值时,终端将结束该虚拟对象的游戏进程。因此,为了保障虚拟对象下落时的安全,设定第一高度差阈值小于极限高度阈值。
在上述示意性的例子中,虚拟对象对应的极限高度阈值为15米,终端确定第一高度差阈值10米,当虚拟对象的自由落体距离达到10米时,该虚拟对象的损失生命值为200,即损失生命值是小于自由落体前的剩余生命值的。
因此,第一高度差阈值与剩余生命值呈正相关关系,且自由落体距离达到第一高度差阈值时,虚拟对象的损失生命值小于剩余生命值。
在本申请实施例中,提供了两种确定第一高度差阈值的方法。可选的,通过步骤505和步骤506确定出第一高度差阈值之后,执行步骤509的内容;或者,通过步骤507和步骤508确定出第一高度差阈值之后,执行步骤509的内容。
步骤509,若高度差大于第一高度差阈值,在虚拟对象的对象模型上叠加显示滑翔道具的道具模型。
终端在虚拟对象下落状态时确定出高度差与第一高度差阈值。可选的,若高度差大于第一高度差阈值,在虚拟对象的对象模型上叠加显示滑翔道具的道具模型;若高度差小于第一高度差阈值,则虚拟对象进行自由落体运动,且在虚拟对象进行自由落体的过程中,虚拟对象的对象模型保持不变。
若采用根据目标射线来确定高度差的方法,在一个示意性的例子中,如图6所示,终端确定虚拟对象301降落区域的地点类型为树丛(对应的高度阈值为12米),从而确定出第一高度差阈值为12米。虚拟对象301从A0处开始下落的过程中,其高度差是在增加的,当虚拟对象301下落至A4所在的位置时,虚拟对象301此时的高度差为11.9米,而当虚拟对象301下落至A5所在的位置时,虚拟对象301此时的高度差为12.1米,即当虚拟对象处于A5位置处时,高度差大于第一高度差阈值,此时,终端在虚拟对象301的对象模型上叠加显示滑翔道具401的道具模型。
由于滑翔道具的道具模型是叠加显示的,即虚拟对象能够在使用滑翔道具时还保留滑翔前的虚拟道具的装备。因此,在一种可能的实施方式中,用户在虚拟对象使用滑翔道具的过程中,还可以控制虚拟对象使用其它的虚拟道具。
示意性的,如图6所示,当虚拟对象301使用滑翔道具401时,用户所控制的虚拟对象还装备有虚拟手枪,因此在虚拟对象301下落的过程中,用户还可以控制虚拟对象301对虚拟环境中的敌对虚拟对象进行攻击与防御。
步骤510,将对象模型的动画状态机切换为滑翔动画状态机。
可选的,在虚拟对象的对象模型上叠加显示滑翔道具的道具模型时,或者,之后,将对象模型的动画状态机切换为滑翔动画状态机。即步骤509与步骤510同时执行,或者,步骤509之后执行步骤510。
在虚拟环境界面中,用户所看到的虚拟对象的界面显示与游戏设计阶段所设置的动画状态机有关。对于不同角色类型的虚拟对象包括有各自的状态,如对于大多数角色类型中,虚拟对象的经典状态包括空闲、走路、跑步、跳跃等,用户在虚拟环境界面所看到的虚拟对象实际上是处于某一“状态”的虚拟对象,进一步的,动画状态机能够实现播放虚拟对象对应的状态与各个状态之间的切换。
在一种可能的实施方式中,当终端控制虚拟对象自动使用滑翔道具时,将虚拟对象当前的状态机切换为滑翔动画状态机,其中,滑翔动画状态机包括有虚拟对象使用滑翔道具时的状态,各个状态对应待播放的滑翔动画,滑翔动画状态机用于控制播放滑翔动画。
需要说明的是,当虚拟对象着陆后,终端将对象模型的动画状态机从滑翔动画状态机切换回滑翔前的动画状态机。
综上所述,在上述实施例的基础上,本申请实施例提供了两种确定高度差的方法,一种为基于目标射线的确定方法,另一种为基于模拟下落轨迹的确定方法。此外,还提出了两种确定第一高度差阈值的方法,其一为根据地点类型确定第一高度差阈值,其二为根据虚拟对象剩余生命值确定第一高度差阈值;结合本申请实施例提供的方法,使得在复杂多样的虚拟环境中,终端也能够通过上述方法确定出适合控制虚拟对象自动使用滑翔道具的时机,从而保障了虚拟对象在虚拟环境中的安全性,进一步的,终端在完成控制虚拟对象自动使用滑翔道具时,或,之后,终端将虚拟对象当前的动画状态机切换为滑翔动画状态机,丰富了游戏的虚拟环境界面,进一步提高了用户游戏时的真实性。
上述各个实施例提供的是终端自动控制虚拟对象使用滑翔道具的方法。为了丰富游戏场景,此外,在本申请中还提供了一种用户手动控制虚拟对象使用滑翔道具的方法,并通过下述实施例对一种用户手动控制虚拟对象使用滑翔道具的方法进行示例性的说明。
请参考图8,其示出了本申请一个示例性实施例提供的用户手动控制虚拟环境中虚拟对象下落的方法的流程图。本实施例以该方法用于图1所示实施环境中的第一终端120或第二终端160或该实施环境中的其它终端为例进行说明,步骤202或步骤504之后,该方法还可以包括如下步骤。
步骤801,若高度差小于第一高度差阈值,且大于第二高度差阈值,则在虚拟环境界面中显示滑翔控件。
若用户所控制的虚拟对象进行下落时的高度差未达到第一高度差阈值,但用户仍然想控制虚拟对象体验滑翔道具的使用,在一种可能的实施方式中,在通过上述实施例确定出第一高度差阈值的基础上确定出第二高度差阈值,且第二高度差阈值低于第一高度差阈值。
其中,考虑到滑翔道具的使用是基于一定高度位置才可以实现的,因此,在一种可能的实施方式中,终端确定出虚拟对象的高度差之后,判断虚拟对象的高度差与第一高度差阈值以及第二高度差阈值之间的大小关系,若高度差小于第一高度差阈值,且大于第二高度差阈值,则在虚拟环境界面中显示滑翔控件。
可选的,滑翔控件是复用的跳跃控件,跳跃控件用于控制虚拟对象在地面上进行跳跃。
示意性的,在如图9所示的虚拟环境界面中,示出了用户所控制的虚拟对象301、用于控制虚拟对象301运动方位的方向控件910、用于显示并切换虚拟道具的道具显示栏920、跑步控件930、跳跃控件940和下蹲控件950,在图9中示出的各个控件与按键的种类与显示效果仅作为示意性的示出,并不对本申请造成限定。
其中,虚拟对象301位于一座天桥,终端获取虚拟对象301的高度差9米,并确定出当前虚拟对象301对应的第一高度差阈值为30米,显然,该高度差小于第一高度差阈值,但终端确定出当前虚拟对象301对应的第二高度差阈值为5米,即该高度差大于第二高度差阈值,因此,虚拟对象301当前的高度差满足虚拟环境界面中显示滑翔控件(为跳跃控件940的复用)的条件。
在一种可能的实施方式中,示意性的,在如图9所示的虚拟环境界面中,当虚拟对象301当前的高度差满足虚拟环境界面中显示滑翔控件的条件时,跳跃控件940在虚拟环境界面中闪烁显示,闪烁信息用于提示用户可通过复用该跳跃控件940来控制虚拟对象301使用滑翔道具。
步骤802,当接收到对滑翔控件的触发操作时,根据触发操作控制虚拟对象使用滑翔道具。
在一种可能的实施方式中,当用户长按闪烁显示的滑翔控件时,生成了对滑翔控件的触发操作,终端接收到用户对滑翔控件的触发操作时,根据触发操作控制虚拟对象使用滑翔道具。
示意性的,如图9所示,当用户长按闪烁显示的跳跃控件940时,终端控制虚拟对象301使用滑翔道具,标记960示意装备有滑翔道具的虚拟对象301。
步骤803,在虚拟环境界面中显示取消滑翔控件。
进一步的,用户所控制的虚拟对象在使用滑翔道具进行滑翔的过程中,若虚拟环境界面中存在有用户希望虚拟对象在当前滑翔位置处进行降落的目的地时,可通过触发取消滑翔控件来实现当前滑翔位置处的降落。
示意性的,如图9所示,在虚拟环境界面中显示有取消滑翔控件970,且该取消滑翔控件970为可复用为滑翔控件的跳跃控件940一侧,方便提示用户对该取消滑翔控件970进行触发。
步骤804,当接收到对取消滑翔控件的触发操作时,根据触发操作控制虚拟对象停止使用降落道具,并控制虚拟对象自由落体下落。
在一种可能的实施方式中,当虚拟对象滑翔至用户希望的降落的目的地附近时,用户手动触发取消滑翔控件,终端控制该虚拟对象停止使用降落道具,并控制虚拟对象自由落体下落。
为了实现用户对虚拟对象滑翔过程的控制,可选的,步骤802之后还包括步骤805。
步骤805,当接收到对虚拟环境界面中方向控件的触发操作时,根据触发操作控制虚拟对象调整滑翔方向。
可选的,当虚拟对象未装备滑翔道具时,方向控件用于调整虚拟对象的地面运动方向或潜水运动方向;当虚拟对象装备滑翔道具时,方向控件用于调整虚拟对象的滑翔方向。
在一种可能的实施方式中,用户按照需要调整的方向手动触发方向控件并生成相应的触发操作,终端当接收到该触发操作时,根据触发操作控制虚拟对象调整滑翔方向。如用户点击方向控件的左侧区域,则终端接收到对虚拟环境界面中方向控件的触发操作,该触发操作指示终端将虚拟对象的滑翔方向改为虚拟环境界面的左侧方向滑翔。
此外,可选的,虚拟环境界面还包括有显示虚拟对象滑翔时剩余高度差的剩余高度差提示控件。示意性的,如图10所示,在虚拟环境界面中显示有剩余高度差提示控件1000,此时提示用户所控制的虚拟对象当前距离海面还剩8.8米。
综上所述,在上述实施例的基础上,本申请中还提供了一种用户手动控制虚拟对象使用滑翔道具的方法,若虚拟对象的高度差小于第一高度差阈值,且大于第二高度差阈值,终端则在虚拟环境界面中显示滑翔控件,用户可通过触发该滑翔控件实现控制虚拟对象使用滑翔道具,同时还可以通过取消滑翔控件来取消虚拟对象对滑翔道具的使用,此外,用户还可以通过操作方向控件来对虚拟对象的滑翔方向进行调整;在上述实施例的基础上,通过本申请实施例提供的方法,能够为虚拟对象提供及时的安全保障,对用户而言进一步丰富了游戏场景。
结合上述实施例,在一个示意性的例子中,控制虚拟环境中虚拟对象下落的方法的流程如图11所示。
步骤1101,用户控制虚拟对象移动到高处。
步骤1102,检测虚拟对象下落状态下的高度差是否满足自动使用滑翔道具的条件。
若满足,执行步骤1105;若不满足,则执行步骤1103。
步骤1103,检测虚拟对象下落状态下的高度差是否满足手动使用滑翔道具的条件。
若满足,执行步骤1104;若不满足,则返回步骤1101。
步骤1104,检测用户是否触发滑翔控件。
若是,执行步骤1105;若不是,则返回步骤1103。
步骤1105,终端控制虚拟对象装备滑翔道具。
步骤1106,检测用户是否触发方向控件。
若是,执行步骤1107;若不是,则执行步骤1108。
步骤1107,终端控制虚拟对象往触发方向飞行。
步骤1108,检测用户是否触发取消滑翔控件。
若是,执行步骤1109;若不是,则返回步骤1107。
步骤1109,终端取消虚拟对象使用滑翔道具,并控制虚拟对象自由落体。
图12是本申请一个示例性实施例提供的控制虚拟环境中虚拟对象下落的装置的结构框图,该装置可以设置于图1所示实施环境中的第一终端120或第二终端160或该实施环境中的其它终端,该装置包括:
显示模块1201,用于显示虚拟环境界面,所述虚拟环境界面中包括对虚拟环境进行观察的画面,所述虚拟环境中的虚拟对象处于下落状态;
第一获取模块1202,用于获取所述虚拟对象与所述虚拟环境中目标地点之间的高度差,所述目标地点根据所述虚拟对象的所述虚拟环境中所处的位置确定得到;
控制模块1203,用于若所述高度差大于第一高度差阈值,则控制所述虚拟对象自动使用滑翔道具,其中,使用所述滑翔道具后所述虚拟对象的下落速度小于使用所述滑翔道具前所述虚拟对象的下落速度。
可选的,所述第一获取模块1202,包括:
获取单元,用于获取所述虚拟对象在所述虚拟环境中所处的第一位置;
第一确定单元,用于根据所述第一位置确定所述虚拟环境中所述目标地点的第二位置;
第二确定单元,用于根据所述初始下落位置对应的第一高度以及所述第二位置对应的第二高度,确定所述高度差。
可选的,所述第一确定单元,用于:
根据所述第一位置生成目标射线,所述目标射线以所述第一位置为起点,所述目标射线的射线方向为重力方向,所述目标射线不可见;
将所述虚拟环境中与所述目标射线存在交点的地点确定为所述目标地点,并获取所述目标地点的所述第二位置。
可选的,所述第一确定单元,用于:
根据所述第一位置以及所述虚拟对象的运动速度生成模拟下落轨迹,所述模拟下落轨迹以所述第一位置为起点,且所述模拟下落轨迹不可见;
将所述虚拟环境中与所述模拟下落轨迹存在交点的地点确定为所述目标地点,并获取所述目标地点的所述第二位置。
可选的,所述装置还包括:
第二获取模块,用于获取所述目标地点的地点类型,所述地点类型包括地面、水面、雪地、沼泽和树丛中的至少一种;根据所述地点类型确定所述第一高度差阈值,其中,不同地点类型对应不同高度差阈值;
或者,
第三获取模块,用于获取所述虚拟对象的剩余生命值;根据所述剩余生命值确定所述第一高度差阈值,所述第一高度差阈值与所述剩余生命值呈正相关关系,且自由落体距离达到所述第一高度差阈值时,所述虚拟对象的损失生命值小于所述剩余生命值。
可选的,所述控制模块1203,包括:
道具模型显示单元,用于在所述虚拟对象的对象模型上叠加显示所述滑翔道具的道具模型;
状态机切换单元,用于将所述对象模型的动画状态机切换为滑翔动画状态机,所述滑翔动画状态机用于控制播放滑翔动画。
可选的,所述装置还包括:
滑翔控件显示模块1201,用于若所述高度差小于所述第一高度差阈值,且大于第二高度差阈值,则在所述虚拟环境界面中显示滑翔控件,所述滑翔控件是复用的跳跃控件,所述跳跃控件用于控制所述虚拟对象在地面上进行跳跃;
滑翔道具使用模块,用于当接收到对所述滑翔控件的触发操作时,根据所述触发操作控制所述虚拟对象使用所述滑翔道具。
可选的,所述装置还包括:
滑翔控件取消模块,用于在所述虚拟环境界面中显示取消滑翔控件;
滑翔道具降落模块,用于当接收到对所述取消滑翔控件的触发操作时,根据所述触发操作控制所述虚拟对象停止使用所述降落道具,并控制所述虚拟对象自由落体下落。
可选的,所述装置还包括:
滑翔方向调整模块,用于当接收到对所述虚拟环境界面中方向控件的触发操作时,根据所述触发操作控制所述虚拟对象调整滑翔方向。
请参考图13,其示出了本申请一个示例性实施例提供的终端1300的结构框图。该终端1300可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器、MP4(播放器。终端1300还可能被称为用户设备、便携式终端等其他名称。
通常,终端1300包括有:处理器1301和存储器1302。
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1301所执行以实现本申请实施例提供的方法。
在一些实施例中,终端1300还可选包括有:外围设备接口1303和至少一个外围设备。
外围设备接口1303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和外围设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和外围设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
本领域技术人员可以理解,图13中示出的结构并不构成对终端1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述任一实施例所述的控制虚拟环境中虚拟对象下落的方法。
本申请还提供了一种计算机程序产品,当计算机程序产品在服务器上运行时,使得计算机执行上述各个方法实施例提供的控制虚拟环境中虚拟对象下落的方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种控制虚拟环境中虚拟对象下落的方法,其特征在于,所述方法包括:
显示虚拟环境界面,所述虚拟环境界面中包括对虚拟环境进行观察的画面,所述虚拟环境中的虚拟对象处于下落状态;
获取所述虚拟对象在所述虚拟环境中所处的第一位置,所述第一位置为所述虚拟对象处于下落状态时的动态位置;
根据所述第一位置确定所述虚拟环境中目标地点的第二位置,所述目标地点根据所述虚拟对象在所述虚拟环境中所处的位置确定得到,所述目标地点是所述虚拟环境中与目标射线或模拟下落轨迹存在交点的地点,所述目标射线以所述第一位置为起点,以重力方向为射线方向且不可见,所述模拟下落轨迹是基于所述第一位置以及所述虚拟对象的运动速度生成的,所述模拟下落轨迹以所述第一位置为起点且不可见;
根据初始下落位置对应的第一高度以及所述第二位置对应的第二高度,确定高度差;
若所述高度差大于第一高度差阈值,则控制所述虚拟对象自动使用滑翔道具,其中,使用所述滑翔道具后所述虚拟对象的下落速度小于使用所述滑翔道具前所述虚拟对象的下落速度;
若所述高度差小于所述第一高度差阈值,且大于第二高度差阈值,则在所述虚拟环境界面中显示滑翔控件,所述滑翔控件是复用的跳跃控件,所述跳跃控件用于控制所述虚拟对象在地面上进行跳跃,所述第二高度差阈值是在确定出所述第一高度差阈值的基础上确定得到的,且所述第二高度差阈值低于所述第一高度差阈值;
当接收到对所述滑翔控件的触发操作时,根据所述触发操作控制所述虚拟对象使用所述滑翔道具。
2.根据权利要求1所述的方法,其特征在于,所述根据初始下落位置对应的第一高度以及所述第二位置对应的第二高度,确定所述高度差之后,所述方法还包括:
获取所述目标地点的地点类型,所述地点类型包括地面、水面、雪地、沼泽和树丛中的至少一种;根据所述地点类型确定所述第一高度差阈值,其中,不同地点类型对应不同高度差阈值;
或者,
获取所述虚拟对象的剩余生命值;根据所述剩余生命值确定所述第一高度差阈值,所述第一高度差阈值与所述剩余生命值呈正相关关系,且自由落体距离达到所述第一高度差阈值时,所述虚拟对象的损失生命值小于所述剩余生命值。
3.根据权利要求1所述的方法,其特征在于,所述控制所述虚拟对象自动使用滑翔道具,包括:
在所述虚拟对象的对象模型上叠加显示所述滑翔道具的道具模型;
将所述对象模型的动画状态机切换为滑翔动画状态机,所述滑翔动画状态机用于控制播放滑翔动画。
4.根据权利要求1所述的方法,其特征在于,所述控制所述虚拟对象自动使用滑翔道具之后,所述方法还包括:
在所述虚拟环境界面中显示取消滑翔控件;
当接收到对所述取消滑翔控件的触发操作时,根据所述触发操作控制所述虚拟对象停止使用所述滑翔道具,并控制所述虚拟对象自由落体下落。
5.根据权利要求1所述的方法,其特征在于,所述控制所述虚拟对象自动使用滑翔道具之后,所述方法还包括:
当接收到对所述虚拟环境界面中方向控件的触发操作时,根据所述触发操作控制所述虚拟对象调整滑翔方向。
6.一种控制虚拟环境中虚拟对象下落的装置,其特征在于,所述装置包括:
显示模块,用于显示虚拟环境界面,所述虚拟环境界面中包括对虚拟环境进行观察的画面,所述虚拟环境中的虚拟对象处于下落状态;
第一获取模块,用于获取所述虚拟对象在所述虚拟环境中所处的第一位置,所述第一位置为所述虚拟对象处于下落状态时的动态位置;根据所述第一位置确定所述虚拟环境中目标地点的第二位置,所述目标地点根据所述虚拟对象在所述虚拟环境中所处的位置确定得到,所述目标地点是所述虚拟环境中与目标射线或模拟下落轨迹存在交点的地点,所述目标射线以所述第一位置为起点,以重力方向为射线方向且不可见,所述模拟下落轨迹是基于所述第一位置以及所述虚拟对象的运动速度生成的,所述模拟下落轨迹以所述第一位置为起点且不可见;根据初始下落位置对应的第一高度以及所述第二位置对应的第二高度,确定高度差;
控制模块,用于若所述高度差大于第一高度差阈值,则控制所述虚拟对象自动使用滑翔道具,其中,使用所述滑翔道具后所述虚拟对象的下落速度小于使用所述滑翔道具前所述虚拟对象的下落速度;
滑翔控件显示模块,用于若所述高度差小于所述第一高度差阈值,且大于第二高度差阈值,则在所述虚拟环境界面中显示滑翔控件,所述滑翔控件是复用的跳跃控件,所述跳跃控件用于控制所述虚拟对象在地面上进行跳跃,所述第二高度差阈值是在确定出所述第一高度差阈值的基础上确定得到的,且所述第二高度差阈值低于所述第一高度差阈值;
滑翔道具使用模块,用于当接收到对所述滑翔控件的触发操作时,根据所述触发操作控制所述虚拟对象使用所述滑翔道具。
7.一种终端,其特征在于,所述终端包括:处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现如权利要求1至5任一项所述的控制虚拟环境中虚拟对象下落的方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一段程序,所述至少一段程序由处理器加载并执行以实现如权利要求1至5任一项所述的控制虚拟环境中虚拟对象下落的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911176245.9A CN110882543B (zh) | 2019-11-26 | 2019-11-26 | 控制虚拟环境中虚拟对象下落的方法、装置及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911176245.9A CN110882543B (zh) | 2019-11-26 | 2019-11-26 | 控制虚拟环境中虚拟对象下落的方法、装置及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110882543A CN110882543A (zh) | 2020-03-17 |
CN110882543B true CN110882543B (zh) | 2022-05-17 |
Family
ID=69748844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911176245.9A Active CN110882543B (zh) | 2019-11-26 | 2019-11-26 | 控制虚拟环境中虚拟对象下落的方法、装置及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110882543B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114519935B (zh) * | 2020-11-20 | 2023-06-06 | 华为技术有限公司 | 道路识别方法以及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2069853A (en) * | 1980-02-23 | 1981-09-03 | Murphy D | Parachute darts |
CN108579087A (zh) * | 2018-04-10 | 2018-09-28 | 网易(杭州)网络有限公司 | 一种游戏角色的控制方法及装置 |
CN108970124A (zh) * | 2018-07-05 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 组队匹配方法、装置、系统及可读介质 |
CN109200582A (zh) * | 2018-08-02 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 控制虚拟对象与投掷物交互的方法、装置及存储介质 |
CN109364475A (zh) * | 2017-12-15 | 2019-02-22 | 鲸彩在线科技(大连)有限公司 | 虚拟角色控制方法、装置、终端、系统及介质 |
-
2019
- 2019-11-26 CN CN201911176245.9A patent/CN110882543B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2069853A (en) * | 1980-02-23 | 1981-09-03 | Murphy D | Parachute darts |
CN109364475A (zh) * | 2017-12-15 | 2019-02-22 | 鲸彩在线科技(大连)有限公司 | 虚拟角色控制方法、装置、终端、系统及介质 |
CN108579087A (zh) * | 2018-04-10 | 2018-09-28 | 网易(杭州)网络有限公司 | 一种游戏角色的控制方法及装置 |
CN108970124A (zh) * | 2018-07-05 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 组队匹配方法、装置、系统及可读介质 |
CN109200582A (zh) * | 2018-08-02 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 控制虚拟对象与投掷物交互的方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110882543A (zh) | 2020-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10569176B2 (en) | Video game gameplay having nuanced character movements and dynamic movement indicators | |
CN110507994B (zh) | 控制虚拟飞行器飞行的方法、装置、设备及存储介质 | |
CN110917619B (zh) | 互动道具控制方法、装置、终端及存储介质 | |
CN110732135B (zh) | 虚拟场景显示方法、装置、电子设备及存储介质 | |
CN112138384B (zh) | 虚拟投掷道具的使用方法、装置、终端及存储介质 | |
CN112121422B (zh) | 界面显示方法、装置、设备及存储介质 | |
JP7431955B2 (ja) | 仮想環境における仮想キャラクタ制御方法、装置及びコンピュータプログラム | |
CN112121414B (zh) | 虚拟场景中的追踪方法、装置、电子设备及存储介质 | |
CN112221141B (zh) | 控制虚拟对象使用虚拟道具的方法及装置 | |
CN110585706B (zh) | 互动道具控制方法、装置、终端及存储介质 | |
US20230082060A1 (en) | Method and apparatus for displaying virtual scene, method and apparatus for processing virtual scene, and device | |
CN111921198B (zh) | 虚拟道具的控制方法、装置、设备及计算机可读存储介质 | |
US20230072503A1 (en) | Display method and apparatus for virtual vehicle, device, and storage medium | |
CN110882545A (zh) | 虚拟对象控制方法、装置、电子设备及存储介质 | |
CN112316429A (zh) | 虚拟对象的控制方法、装置、终端及存储介质 | |
KR20230145430A (ko) | 가상 환경에서의 좌표축 표시 방법 및 장치, 그리고 단말기 및 매체 | |
TWI803147B (zh) | 虛擬對象控制方法、裝置、設備、儲存媒體及程式産品 | |
CN113694526B (zh) | 虚拟对象的控制方法、系统、装置、设备、介质及程序 | |
CN110882543B (zh) | 控制虚拟环境中虚拟对象下落的方法、装置及终端 | |
CN114344905A (zh) | 虚拟对象的团队交互处理方法、装置、设备、介质及程序 | |
CN112138385B (zh) | 虚拟射击道具的瞄准方法、装置、电子设备及存储介质 | |
CN111265876B (zh) | 虚拟环境中的道具使用方法、装置、设备及存储介质 | |
CN110585708B (zh) | 虚拟环境中从飞行器着陆的方法、装置及可读存储介质 | |
CN112090067A (zh) | 虚拟载具的控制方法、装置、设备及计算机可读存储介质 | |
US20230016383A1 (en) | Controlling a virtual objectbased on strength values |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40022168 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |