CN114425163A - 虚拟对象的控制方法、装置、终端、存储介质及程序产品 - Google Patents

虚拟对象的控制方法、装置、终端、存储介质及程序产品 Download PDF

Info

Publication number
CN114425163A
CN114425163A CN202210108217.9A CN202210108217A CN114425163A CN 114425163 A CN114425163 A CN 114425163A CN 202210108217 A CN202210108217 A CN 202210108217A CN 114425163 A CN114425163 A CN 114425163A
Authority
CN
China
Prior art keywords
virtual object
target position
virtual
controlling
target
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.)
Pending
Application number
CN202210108217.9A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210108217.9A priority Critical patent/CN114425163A/zh
Publication of CN114425163A publication Critical patent/CN114425163A/zh
Pending legal-status Critical Current

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/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请实施例公开了一种虚拟对象的控制方法、装置、终端、存储介质及程序产品,属于计算机技术领域。该方法包括:显示第一虚拟对象以及第二虚拟对象,第二虚拟对象是自动跟随第一虚拟对象移动的虚拟对象;控制第一虚拟对象在虚拟环境中移动;在第一虚拟对象移动的情况下,控制第二虚拟对象向虚拟环境中的目标位置移动,目标位置位于第一虚拟对象在移动过程中的前方区域。本申请实施例提供的方法,可使第二虚拟对象向第一虚拟对象前方位置自动移动,无需再基于第一虚拟对象的实时位置进行移动,从而使第二虚拟对象的跟随表现更为自然,有助于提高处于自动跟随状态的虚拟对象的拟人性,从而可提高游戏的真实性。

Description

虚拟对象的控制方法、装置、终端、存储介质及程序产品
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种虚拟对象的控制方法、装置、终端、存储介质及程序产品。
背景技术
目前,在游戏中,存在自动跟随功能,可使其他玩家控制的虚拟对象或人工智能(Artificial Intelligence,AI)虚拟对象自动跟随目标虚拟对象移动。
相关技术中,在控制其他虚拟对象跟随目标虚拟对象移动时,基于目标虚拟对象的移动轨迹控制其他虚拟对象移动。
然而,采用该种方式控制其他虚拟对象移动时,其他虚拟对象的移动轨迹与目标虚拟对象始终保持相同,移动过程较为机械生硬,造成跟随过程的真实性较差。
发明内容
本申请实施例提供了一种虚拟对象的控制方法、装置、终端、存储介质及程序产品,能够提高处于自动跟随状态的虚拟对象的拟人性,有助于提高游戏真实性。所述技术方案如下:
一方面,本申请实施例提供了一种虚拟对象的控制方法,所述方法包括:
显示第一虚拟对象以及第二虚拟对象,所述第二虚拟对象是自动跟随所述第一虚拟对象移动的虚拟对象;
控制所述第一虚拟对象在虚拟环境中移动;
在所述第一虚拟对象移动的情况下,控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,所述目标位置位于所述第一虚拟对象在移动过程中的前方区域。
另一方面,本申请实施例提供了一种虚拟对象的控制装置,所述装置包括:
第一显示模块,用于显示第一虚拟对象以及第二虚拟对象,所述第二虚拟对象是自动跟随所述第一虚拟对象移动的虚拟对象;
第一控制模块,用于控制所述第一虚拟对象在虚拟环境中移动;
第二控制模块,用于在所述第一虚拟对象移动的情况下,控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,所述目标位置位于所述第一虚拟对象在移动过程中的前方区域。
另一方面,本申请实施例提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的虚拟对象的控制方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的虚拟对象的控制方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。终端的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该终端执行上述方面的各种可选实现方式中提供虚拟对象的控制方法。
本申请实施例提供的技术方案的有益效果至少包括:
本申请实施例中,当第二虚拟对象处于自动跟随第一虚拟对象移动的状态时,将控制第二虚拟对象向第一虚拟对象的前方区域中目标位置移动。相较于相关技术中跟随目标的移动路径进行自动跟随的方式,本申请实施例提供的方法可使第二虚拟对象向第一虚拟对象前方位置自动移动,无需再基于第一虚拟对象的实时位置进行移动,即与第一虚拟对象的移动路径不同,从而使第二虚拟对象的跟随表现更为自然,有助于提高处于自动跟随状态的虚拟对象的拟人性,从而可提高游戏的真实性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的实施环境的示意图;
图2示出了本申请一个示例性实施例提供的虚拟对象的控制方法的流程图;
图3示出了本申请一个示例性实施例示出的虚拟对象的控制过程的界面示意图;
图4示出了本申请另一个示例性实施例提供的虚拟对象的控制方法的流程图;
图5示出了本申请一个示例性实施例示出的目标位置选取过程的示意图;
图6示出了本申请另一个示例性实施例示出的目标位置选取过程的示意图;
图7示出了本申请一个示例性实施例提供的控制第二虚拟对象移动过程的流程图;
图8示出了本申请另一个示例性实施例提供的虚拟对象的控制方法的流程图;
图9示出了本申请一个示例性实施例提供的控制第二虚拟对象移动过程的流程图;
图10是本申请一个示例性实施例提供的虚拟对象的控制装置的结构框图;
图11示出了本申请一个示例性实施例提供的终端的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
首先,对本申请实施例中涉及的名词进行介绍:
虚拟环境:是应用程序在终端上运行时显示(或提供)的虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的环境,还可以是纯虚构的环境。虚拟环境可以是二维虚拟环境、2.5维虚拟环境和三维虚拟环境中的任意一种,本申请对此不加以限定。下述实施例以虚拟环境是三维虚拟环境为例进行说明。
虚拟对象:是指虚拟环境中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在三维虚拟环境中显示的人物、动物。可选地,虚拟对象是基于动画骨骼技术创建的三维立体模型。每个虚拟对象在三维虚拟环境中具有自身的形状和体积,占据三维虚拟环境中的一部分空间。
虚拟道具:是指虚拟对象在虚拟环境中能够使用的道具,包括能够改变其他虚拟对象的属性值的虚拟道具,补给道具,防御道具,用于虚拟对象释放技能时通过手部展示的虚拟道具,以及虚拟对象的部分身体躯干,比如手部、腿部。其中,能够改变其他虚拟对象的属性值的虚拟道具,包括远距离虚拟道具,近距离虚拟道具,投掷类虚拟道具。
请参考图1,其示出了本申请一个实施例提供的实施环境的示意图。该实施环境可以包括:第一终端110、服务器120和第二终端130。
第一终端110运行有支持虚拟环境的应用程序111,该应用程序111可以是多人在线对战程序。当第一终端运行应用程序111时,第一终端110的屏幕上显示应用程序111的用户界面。该应用程序111可以是多人在线战术竞技(Multiplayer Online Battle Arena,MOBA)游戏、大逃杀射击游戏、模拟战略游戏(Simulation Game,SLG)的任意一种。在本实施例中,以该应用程序111是第一人称射击(First-Person Shooting,FPS)游戏来举例说明。第一终端110是第一用户112使用的终端,第一用户112使用第一终端110控制位于虚拟环境中的第一虚拟对象进行活动,第一虚拟对象可以称为第一用户112的主控虚拟对象。第一虚拟对象的活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、飞行、跳跃、驾驶、拾取、射击、攻击、投掷、释放技能中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物或动漫人物。
第二终端130运行有支持虚拟环境的应用程序131,该应用程序131可以是多人在线对战程序。当第二终端130运行应用程序131时,第二终端130的屏幕上显示应用程序131的用户界面。该客户端可以是MOBA游戏、大逃杀射击游戏、SLG游戏中的任意一种,在本实施例中,以该应用程序131是FPS游戏来举例说明。第二终端130是第二用户132使用的终端,第二用户132使用第二终端130控制位于虚拟环境中的第二虚拟对象进行活动,第二虚拟对象可以称为第二用户132的主控虚拟角色。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物或动漫人物。
可选地,第一虚拟对象和第二虚拟对象处于同一虚拟世界中。可选地,第一虚拟对象和第二虚拟对象可以属于同一个阵营、同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选的,第一虚拟对象和第二虚拟对象可以属于不同的阵营、不同的队伍、不同的组织或具有敌对关系。
可选地,第一终端110和第二终端130上运行的应用程序是相同的,或两个终端上运行的应用程序是不同操作系统平台(安卓或IOS)上的同一类型应用程序。第一终端110可以泛指多个终端中的一个,第二终端130可以泛指多个终端中的另一个,本实施例仅以第一终端110和第二终端130来举例说明。第一终端110和第二终端130的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio Layer III,MP3)播放器、动态影像专家压缩标准音频层面4(Moving Picture Experts Group Audio Layer IV,MP4)播放器、膝上型便携计算机和台式计算机中的至少一种。
需要说明的是,第一终端或第二终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。
图1中仅示出了两个终端,但在不同实施例中存在多个其它终端可以接入服务器120。可选地,还存在一个或多个终端是开发者对应的终端,在该终端上安装有支持虚拟环境的应用程序的开发和编辑平台,开发者可在该终端上对应用程序进行编辑和更新,并将更新后的应用程序安装包通过有线或无线网络传输至服务器120,第一终端110和第二终端130可从服务器120下载应用程序安装包实现对应用程序的更新。
第一终端110、第二终端130以及其它终端通过无线网络或有线网络与服务器120相连。
服务器120包括一台服务器、多台服务器组成的服务器集群、云计算平台和虚拟化中心中的至少一种。服务器120用于为支持虚拟环境的应用程序提供后台服务。可选地,服务器120承担主要计算工作,终端承担次要计算工作;或者,服务器120承担次要计算工作,终端承担主要计算工作;或者,服务器120和终端之间采用分布式计算架构进行协同计算。
在一个示意性的例子中,服务器120包括存储器121、处理器122、用户账号数据库123、对战服务模块124、面向用户的输入/输出接口(Input/Output Interface,I/O接口)125。其中,处理器122用于加载服务器120中存储的指令,处理用户账号数据库123和对战服务模块124中的数据;用户账号数据库123用于存储第一终端110、第二终端130以及其它终端所使用的用户账号的数据,比如用户账号的头像、用户账号的昵称、用户账号的战斗力指数,用户账号所在的服务区;对战服务模块124用于提供多个对战房间供用户进行对战,比如1V1对战、3V3对战、5V5对战等;面向用户的I/O接口125用于通过无线网络或有线网络和第一终端110和/或第二终端130建立通信交换数据。
请参考图2,其示出了本申请一个示例性实施例提供的虚拟对象的控制方法的流程图。本实施例以该方法用于图1所示实施环境中的第一终端110或第二终端130或该实施环境中的其它终端为例进行说明,该方法包括如下步骤:
步骤201,显示第一虚拟对象以及第二虚拟对象,第二虚拟对象是自动跟随第一虚拟对象移动的虚拟对象。
在一种可能的实施方式中,第一虚拟对象为跟随目标,第二虚拟对象是处于自动跟随状态的虚拟对象,且其跟随第一虚拟对象移动。
其中,第一虚拟对象可为真实玩家控制的虚拟对象或者AI虚拟对象,即第二虚拟对象跟随被真实玩家控制处于移动状态的虚拟对象或跟随处于移动状态的AI虚拟对象。
可选的,第二虚拟对象为对局分配的AI虚拟对象、被设置为自动跟随模式的虚拟对象以及第一虚拟对象所拥有的虚拟对象中的至少一种。
即第二虚拟对象也可为真实玩家控制的虚拟对象或者AI虚拟对象。当第二虚拟对象为真实玩家控制的虚拟对象时,其为被设置为自动跟随模式且跟随第一虚拟对象移动的虚拟对象。当第二虚拟对象为AI虚拟对象时,其可为对局自动分配的与第一虚拟对象属于相同阵营的虚拟对象,或者,其可为第一虚拟对象所拥有的虚拟对象,比如,虚拟宠物,从而在对局中自动跟随第一虚拟对象移动。
需要说明的是,第二虚拟对象可为多个处于自动跟随状态的虚拟对象。
步骤202,控制第一虚拟对象在虚拟环境中移动。
可选的,在控制第一虚拟对象移动过程中,终端对第一虚拟对象移动画面进行显示。
其中,控制第一虚拟对象移动可由终端执行,也可由服务器执行。当第一虚拟对象为玩家控制的虚拟对象时,在接收到控制操作后,终端可基于控制操作控制第一虚拟对象移动,或者将控制操作发送至服务器,由服务器控制第一虚拟对象移动,并由终端进行显示。
当第一虚拟对象为AI虚拟对象时,可由服务器控制第一虚拟对象移动,并由终端进行显示。
步骤203,在第一虚拟对象移动的情况下,控制第二虚拟对象向虚拟环境中的目标位置移动,目标位置位于第一虚拟对象在移动过程中的前方区域。
在第一虚拟对象移动过程中,需控制第二虚拟对象跟随第一虚拟对象移动。本申请实施例中,控制第二虚拟对象跟随第一虚拟对象移动时,将控制第二虚拟对象向第一虚拟对象前方区域中的目标位置移动。
其中,第一虚拟对象的前方区域是以第一虚拟对象的朝向为中心的目标范围。当第一虚拟对象的朝向变化时,其前方区域跟随变化。可选的,第一虚拟对象的前方区域可为以第一虚拟对象朝向为中心线的扇形区域、方形区域、锥形区域等,本实施例对此不做限定。
目标位置可为前方区域中任意一点,在前方区域变化时,目标位置可随前方区域变化,且每次变化过程中,其在前方区域中位置可不同。
且当第二虚拟对象包含多个虚拟对象时,各个虚拟对象对应目标位置可不同。
示意性的,如图3所示,在第一虚拟对象向朝向301移动时,前方区域可如区域302所示,第二虚拟对象303向目标位置304移动。
第二虚拟对象向目标位置移动过程可由终端控制执行,也可由服务器控制执行。在第二虚拟对象为真实玩家控制的虚拟对象且被设置为自动模式的虚拟对象时,确定目标位置以及控制第二虚拟对象向目标位置移动过程可由终端执行,或者,可由终端确定目标位置,将目标位置发送至服务器,由服务器控制第二虚拟对象向目标位置移动,并由终端进行显示。而当第二虚拟对象为AI虚拟对象时,可由服务器在前方区域中确定目标位置,并控制第二虚拟对象向目标位置移动。
其中,在控制第二虚拟对象移动时,可通过调用行为树中目标节点,并配置目标节点的跟随目标参数为第一虚拟对象,从而在目标节点被调用过程中,可在第一虚拟对象的前方区域中确定目标位置,从而控制第二虚拟对象向目标位置移动。
比如,可在行为树中调用Dogmove节点,并将该节点的目标(Target)参数配置为第一虚拟对象,在Dogmove节点被调用时,即可在第一虚拟对象移动过程中的前方区域内确定目标位置,作为第二虚拟对象的移动目标,从而控制第二虚拟对象向目标位置移动。
相较于相关技术中跟随第一虚拟对象移动轨迹移动的方式,本申请实施例中,可使第二虚拟对象自动向第一虚拟对象前方区域中目标位置移动,即使第二虚拟对象自动向第一虚拟对象前进方向移动,无需根据第一虚拟对象位置移动,由于无需根据第一虚拟对象位置移动,第二虚拟对象可在第一虚拟对象周侧以及前方移动,从而可提高第二虚拟对象自动跟随的拟人性。
综上所述,本申请实施例中,当第二虚拟对象处于自动跟随第一虚拟对象移动的状态时,将控制第二虚拟对象向第一虚拟对象的前方区域中目标位置移动。相较于相关技术中跟随目标的移动路径进行自动跟随的方式,本申请实施例提供的方法可使第二虚拟对象向第一虚拟对象前方位置自动移动,无需再基于第一虚拟对象的实时位置进行移动,即与第一虚拟对象的移动路径不同,从而使第二虚拟对象的跟随表现更为自然,有助于提高处于自动跟随状态的虚拟对象的拟人性,从而可提高游戏的真实性。
其中,控制第一虚拟对象与第二虚拟对象移动过程由终端或服务器执行,为便于表述,下述实施例将以由终端执行为例进行说明,但并不对此构成限定。且为进一步提高第二虚拟对象自动跟随的拟人性,每隔一段时间,对目标位置进行更新,从而使第二虚拟对象在不同时间以不同位置为目标进行移动。下面将以实例性实施例进行说明。
请参考图4,其示出了本申请一个示例性实施例提供的虚拟对象的控制方法的流程图。本实施例以该方法用于图1所示实施环境中的第一终端110或第二终端130或该实施环境中的其它终端为例进行说明,该方法包括如下步骤:
步骤401,显示第一虚拟对象以及第二虚拟对象。
步骤402,控制第一虚拟对象在虚拟环境中移动。
步骤401与步骤402的实施方式可参考上述步骤201与步骤202,本实施例不再赘述。
步骤403,确定第一虚拟对象的前方区域。
当第二虚拟对象开始处于自动跟随状态,且第一虚拟对象开始移动后,终端可基于第一虚拟对象的朝向,确定第一虚拟对象的前方区域,其中,前方区域可为预先设定的以第一虚拟对象朝向为中心线,且位于第一虚拟对象前方的固定大小的区域。
步骤404,从前方区域中选取目标位置。
当确定当前第一虚拟对象的前方区域后,在可前方区域中选取目标位置,从而控制第二虚拟对象向目标位置移动。
示意性的,如图5所示,第一虚拟对象501的前方区域为区域502。
由于第一虚拟对象的前方区域可能存在变化,若需控制第二虚拟对象跟随第一虚拟对象,则需对目标位置进行更新。
在一种可能的实施方式中,每隔目标时间间隔,从前方区域中选取目标位置,其中,每次选取的目标位置不同。
示意性的,目标时间间隔可为2s,每隔2s,在第一虚拟对象的前方区域中重新选取目标位置。而在每次选取目标位置时,若相邻两次目标位置距离较远,则将造成第二虚拟对象跟随过程中晃动较大,跟随拟人性较差。因此,在一种可能的实施方式中,每次选取目标位置时,可基于上一次选取的目标位置进行选取,该种方式可包括如下步骤:
步骤一、基于上一次选取得到的目标位置,确定前方区域内的目标范围,目标范围以上一次选取得到的目标位置为中心。
可选的,在每次选取目标位置的过程中,以上一次选取得到的目标位置为中心,确定半径为目标长度确定的范围,并将该范围与前方区域的交集确定为前方区域内的目标范围。
示意性的,如图5所示,在第一虚拟对象501的前方区域502中选取第一目标位置503后,达到2s后,重新在第一虚拟对象501的前方区域504中选取目标位置,此次选取过程中,首先基于第一目标位置503确定前方区域504中目标范围505,并在目标范围505中选取得到更新后的第二目标位置506。
由于每隔目标时间间隔,在前方区域中的目标范围内重新选取目标位置。而在一种可能的场景下,在两次选取目标位置间隔期间,第一虚拟对象的朝向可能存在较大变化,该种情形下,以上一次选取得到的目标位置为中心,且半径为目标长度的范围与前方区域可能不存在交集,即无法得到前方区域内的目标范围,因此,当基于上一次选取的目标位置,确定前方区域内的目标范围时,可首先确定第一虚拟对象的前方区域的变化情况。
可选的,在朝向变化值小于朝向阈值的情况下,基于上一次选取得到的目标位置,确定前方区域内的目标范围,朝向变化值是第一虚拟对象的实时朝向与上一次选取目标位置时第一虚拟对象的朝向间的差值。
其中,朝向阈值可为预先设定阈值,比如,可为90°。
示意性的,如图5所示,当重新在第一虚拟对象501的前方区域504中选取目标位置时,此时朝向与选取第一目标位置503时,第一虚拟对象的朝向变化小于朝向阈值,因此,可确定前方区域504的目标范围505,并在目标范围505内选取得到第二目标位置506。
步骤二、从目标范围内选取目标位置。
在一种可能的实施方式中,可在目标范围内随机选取目标位置。
或者,在另一种可能的实施方式中,可根据预先设定的间隔确定前方区域中各个候选位置,从而在确定目标范围后,在位于目标范围内的候选位置中随机选取得到目标位置。
可选的,对于不同形状的前方区域可预先设定不同的间隔参数,比如,对于方形区域,可预先设定两个候选位置间的距离间隔,从而确定得到方形区域中各个候选位置;而对于扇形区域,可预先设定距离间隔以及角度间隔,从而确定扇形区域中各个候选位置。
在朝向变化值小于朝向阈值的情况下,可在前方区域内的目标范围中随机选取目标位置。而当朝向变化至大于朝向阈值的情况下,选取目标位置可包括如下步骤:
步骤一、在朝向变化值大于朝向阈值的情况下,确定前方区域中各个候选位置的抽取优先级,抽取优先级与位置距离呈负相关关系,位置距离为候选位置与上一次选取得到的目标位置间距离。
当确定朝向变化值大于朝向阈值时,根据与上一次选取得到的目标位置间距离确定前方区域中各个候选位置的抽选优先级。其中,候选位置可为前方区域中任意位置,或者,可为根据预先设定间隔参数确定得到的各个候选位置。
抽选优先级即用于指示候选位置被选取为目标位置的优先级。当候选位置与上一次选取得到的目标位置间距离越小时,相应的抽选优先级越高。
步骤二、基于抽取优先级,从各个候选位置中选取目标位置,目标位置的抽取优先级高于其他候选位置的抽取优先级。
在一种可能的实施方式中,确定各个候选位置的抽选优先级后,在最高优先级对应的候选位置中目标位置。其中,在最高优先级对应的候选位置仅包含一个位置时,可直接将该候选位置确定为目标位置;而在最高优先级对应的候选位置包含多个时,可在多个最高优先级对应的候选位置中随机选取得到目标位置。
在另一种可能的实施方式中,为进一步提高第二虚拟对象的拟人化,当最高优先级对应的候选位置包含多个时,可进一步根据与第一虚拟对象间距离确定目标位置。该种方式可包括如下步骤:
步骤一、在各个候选位置中存在至少两个备选位置的情况下,确定至少两个备选位置与第二虚拟对象间的距离,备选位置对应的抽取优先级为最高优先级。
当候选位置中存在至少两个最高优先级对应的候选位置,即至少两个备选位置时,可首先确定至少两个备选位置与第二虚拟对象间的距离。当备选位置与第二虚拟对象间距离较远时,若控制第二虚拟对象向备选位置移动,则第二虚拟对象将向与第一虚拟对象距离较远的方向移动。
示意性的,如图6所示,当在第一虚拟对象位于位置601时,确定前方区域为区域602,且在前方区域602中选取第一目标位置603后,到达目标时间间隔时,第一虚拟对象位于位置604,此时,确定前方区域为区域605,且由于第一虚拟对象位于位置604相较于位于位置601时朝向变化值大于朝向阈值90°,因此,确定前方区域605中各个候选位置与第一目标位置603中距离,得到第一备选位置606以及第二备选位置607,两个位置抽选优先级均为最高优先级,此时,由于第一虚拟对象位于位置604且向左后方移动,而第二虚拟对象位于位置608,与第二备选位置607距离较近,向第二备选位置607移动与第一虚拟对象的移动方向更为接近。
步骤二、将最短距离对应的备选位置确定为目标位置。
确定各个备选位置与上一次选取得到目标位置之间的距离后,将备选位置中与上一选取得到的目标位置之间距离最近的备选位置确定为目标位置,从而使第二虚拟对象跟随状态更符合实际跟随状态,提高跟随拟人性。
结合上述示例,如图6所示,由于第二备选位置607与第二虚拟对象608距离较近,因此,将第二备选位置607确定为第二目标位置。
步骤405,控制第二虚拟对象向目标位置移动。
在每次选取目标位置后,控制第二虚拟对象向目标位置移动。其中,控制第二虚拟对象向目标位置移动时,可控制第二虚拟对象向目标位置以直线方式移动,或者曲线方式移动,本实施例对此不做限定。且在控制第二虚拟对象向目标位置移动过程中,若路径中存在虚拟障碍物,则可控制第二虚拟对象绕开虚拟障碍物,并继续向目标位置移动。
在一种可能的实施方式中,基于目标位置控制第二虚拟对象移动的过程可包括如下步骤:
步骤701,确定第一虚拟对象;
步骤702,确定第一虚拟对象的前方区域;
步骤703,确定是否选取目标位置,若是,则执行步骤705,若否,则执行步骤704;
步骤704,在前方区域中随机选取目标位置;
步骤705,以目标位置为中心,确定前方区域中目标范围,以及在目标范围内重新选取目标位置;
步骤706,控制第二虚拟对象向目标位置移动;
步骤707,确定是否达到目标时间间隔,若是,则执行步骤703,若否,则执行步骤706。
本实施例中,每隔目标时间间隔,重新选取目标位置,从而使第二虚拟对象向第一虚拟对象前方不同位置处移动,从而使第二虚拟对象跟随表现更为自然,有助于提高第二虚拟对象自动跟随的拟人性。
且本实施例中,在选取目标位置时,若第一虚拟对象的朝向与上一次选取目标位置时第一虚拟对象的朝向变化较小时,可基于上一次选取得到目标位置确定前方区域中目标范围,并在目标范围内选取目标位置,从而使相邻两次选取目标位置的变化较小,使第二虚拟对象跟随状态较为平稳,避免持续晃动,有助于提高第二虚拟对象自动跟随的拟人性。
且在第一虚拟对象朝向变化较大的情况下,可根据与上一次选取得到目标位置确定抽选优先级,并基于抽选优先级得到多个备选位置后,可进一步根据与第二虚拟对象间距离确定最终目标位置,使第二虚拟对象改变朝向与第一虚拟对象朝向改变更为接近,从而提高第二虚拟对象自动跟随的自然性。
在一种可能的实施方式中,在控制第二虚拟对象向目标位置移动过程中,可控制第二虚拟对象以不同移动速度移动,从而进一步提高第二虚拟对象自动跟随的拟人性。下面将以示例性实施例进行说明。
步骤801,显示第一虚拟对象以及第二虚拟对象。
步骤802,控制第一虚拟对象在虚拟环境中移动。
步骤801与步骤802的实施方式可参考上述步骤201与步骤202,本实施例不再赘述。
步骤803,确定第一虚拟对象的前方区域。
步骤803可参考上述步骤403,本实施例不再赘述。
步骤804,从前方区域中选取目标位置,以及基于第二虚拟对象与目标位置间的间隔距离,确定第二虚拟对象的移动速度。
本实施例中,可基于目标位置与第二虚拟对象间的间隔距离,确定第二虚拟对象的移动速度,从而使第二虚拟对象跟随第一虚拟对象移动过程中,以不同速度移动。
可选的,在间隔距离大于第一距离阈值的情况下,确定第二虚拟对象的移动速度为第一速度,第一速度大于第一虚拟对象的移动速度。
其中,第一距离阈值可为预先设定的阈值,当确定第二虚拟对象与目标位置间的间隔距离大于第一距离阈值时,确定第二虚拟对象与第一虚拟对象距离较远,此时,可控制第二虚拟对象加快速度追赶第一虚拟对象,使第二虚拟对象跟随状态更为自然。
即当间隔距离大于第一距离阈值时,第二虚拟对象移动速度为大于第一虚拟对象当前移动速度的第一速度。
需要说明的时,当目标位置变化后,重新确定第二虚拟对象与更新后目标位置间的间距距离,并基于重新确定的间隔距离确定第二虚拟对象的移动速度。
可选的,在间隔距离小于第一距离阈值且大于第二距离阈值的情况下,确定第二虚拟对象的移动速度为第二速度,第二速度与第一虚拟对象的移动速度相同。
第二距离阈值小于第一距离阈值,在间距距离小于第一距离阈值且大于第二距离阈值的情况下,可确定第一虚拟对象与第二虚拟对象距离较近,此时,可控制第二虚拟对象与第一虚拟对象保持相同的移动速度移动。
可选的,在间隔距离小于第二距离阈值的情况下,确定第二虚拟对象的移动速度为第三速度,第三速度小于第一虚拟对象的移动速度。
而当第二虚拟对象与目标位置间的间隔距离小于第二距离阈值时,第二虚拟对象将位于第一虚拟对象前方,且第二虚拟对象在第一虚拟对象前方较远位置时,此时,需控制第二虚拟对象降低速度,从而缩小与第一虚拟对象间距离。
即在间隔距离小于第二距离阈值的情况下,确定第二虚拟对象的移动速度为小于第一虚拟对象当前移动速度的第三速度。
可选的,通过间隔距离与第一距离阈值以及第二距离阈值之间的大小关系,控制第二虚拟对象的跟随速度,从而控制第二虚拟对象与第一虚拟对象间距离。而当第一虚拟对象处于不同移动状态时,对第二虚拟对象与第一虚拟对象间距离远近的需求不同。比如,当第一虚拟对象处于奔跑状态时,第一虚拟对象与第二虚拟对象间距离可保持较远距离,而当第一虚拟对象处于匍匐前进状态时,第一虚拟对象与第二虚拟对象间距离需保持较近距离。因此,在一种可能的实施方式中,根据第一虚拟对象的移动状态确定第一距离阈值以及第二距离阈值。
可选的,第一虚拟对象的移动状态与第一距离阈值以及第二距离阈值的对应关系可预先设定,不同移动状态对应不同距离阈值。
可选的,在第一虚拟对象处于第一移动状态时,第一距离阈值为第一阈值,第二距离阈值为第二阈值,其中,第一移动状态下第一虚拟对象的移动速度大于第一虚拟对象直立行走的移动速度。
其中,第一移动状态可为奔跑状态。当第一虚拟对象处于奔跑状态时,可确定第一距离阈值为第一阈值,而第二距离阈值为第二阈值。
可选的,在第二虚拟对象处于第二移动状态时,第一距离阈值为第三阈值,第二距离阈值为第四阈值,其中,第二移动状态下第一虚拟对象的移动速度小于第一虚拟对象直立行走的移动速度。
其中,第二移动状态可为匍匐前进状态、下蹲行走状态、手持道具行走状态等。当第一虚拟对象处于第二移动状态时,可确定第一距离阈值为第三阈值,而第二距离阈值为第四阈值。
其中,第一阈值大于第三阈值,第二阈值小于第四阈值。
即在第一虚拟对象处于第一移动状态下的第一距离阈值相较于第二移动状态下的第一距离阈值较大,从而使第二虚拟对象在第一虚拟对象处于第一移动状态下且距离第一虚拟对象较远时,再加快移动速度,追赶第一虚拟对象;且使第二虚拟对象在第一虚拟对象处于第二移动状态下且距离第一虚拟对象相对较近时,即需加快移动速度,追赶第一虚拟对象,避免与第一虚拟对象距离较远。
除此之外,还可根据移动状态调整第二距离阈值。即在第一虚拟对象处于第一移动状态下的第二距离阈值相较于第二移动状态下的第二距离阈值较小,从而使第二虚拟对象在第一虚拟对象处于第一移动状态下且超过第一虚拟对象较远时,再降低移动速度,缩小与第一虚拟对象间距离;且使第二虚拟对象在第一虚拟对象处于第二移动状态下且超过第一虚拟对象距离相对较近时,即需降低移动速度,缩短与第一虚拟对象间距离,避免与第一虚拟对象距离较远。
步骤805,基于第二虚拟对象的移动速度,控制第二虚拟对象向目标位置移动。
当确定第二虚拟对象移动速度后,可基于移动速度控制第二虚拟对象向目标位置移动。
其中,当第二虚拟对象的移动速度为第一速度时,第二虚拟对象将加速追赶第一虚拟对象,为使第二虚拟对象尽快追赶第一虚拟对象,可在加速同时控制第二虚拟对象执行加速动作,从而尽快缩小第一虚拟对象与第二虚拟对象之间距离,且可提高第二虚拟对象自动跟随的拟人化。
即在移动速度为第一速度的情况下,控制第二虚拟对象以第一速度向目标位置移动,以及控制第二虚拟对象执行加速动作。
其中,加速动作可包括向前跳跃、滑行、以及使用虚拟道具加速等至少一种。且在一种可能的实施方式中,由于加速动作可进一步加快第二虚拟对象速度,因此,当第一虚拟对象与第二虚拟对象之间距离较远时,以第一速度控制第二虚拟对象移动,且在该过程中,控制第二虚拟对象执行加速动作,而当第一虚拟对象与第二虚拟对象之间距离相对较近时,仅以第一速度控制第二虚拟对象移动即可。
可选的,在第二虚拟对象与目标位置间间隔距离大于第四距离阈值的情况下,控制第二虚拟对象以第一速度向目标位置移动,以及控制第二虚拟对象执行加速动作。其中,第四距离阈值大于第一距离阈值。
而当移动速度为第二速度的情况下,控制第二虚拟对象保持第二速度向目标位置移动。
当第二虚拟对象的移动速度为第三速度的情况下,第二虚拟对象移动速度小于第一虚拟对象移动速度,此时,第一虚拟对象与第二虚拟对象之间距离将缩小,相应的,为使距离尽快缩小,可控制第二虚拟对象执行减速动作,从而尽快缩小第一虚拟对象与第二虚拟对象之间距离,且进一步提高第二虚拟对象自动跟随的拟人化。
即在移动速度为第三速度的情况下,控制第二虚拟对象以第三速度向目标位置移动,以及控制第二虚拟对象执行减速动作。
其中,减速动作可包括虚拟对象回头、后退、以及使用虚拟道具减速中至少一种。且在一种可能的实施方式中,由于减速动作可加快缩短第一虚拟对象与第二虚拟对象间距离,因此,当第二虚拟对象超过第一虚拟对象较远时,以第三速度控制第二虚拟对象移动,且在该过程中,控制第二虚拟对象执行减速动作,而当第一虚拟对象与第二虚拟对象之间距离相对较近时,仅以第三速度控制第二虚拟对象移动即可。
可选的,在第二虚拟对象与目标位置间间隔距离小于第五距离阈值的情况下,控制第二虚拟对象以第三速度向目标位置移动,以及控制第二虚拟对象执行减速动作。其中,第五距离阈值小于第二距离阈值,且大于第三距离阈值。
步骤806,在间隔距离小于第三距离阈值的情况下,控制第二虚拟对象停止移动,其中,第三距离阈值小于第二距离阈值。
在一种可能的实施方式中,预先设定有第三距离阈值,基于间隔距离与第三距离阈值之间的关系,确定是否控制第二虚拟对象停止移动。
在间隔距离小于第二距离阈值时,移动速度小于第一虚拟对象之间的移动速度,而当间隔距离小于第三距离阈值时,表示第二虚拟对象与目标位置间距离接近,第一虚拟对象停止移动,此时,控制第二虚拟对象停止移动。该种情况下,在间隔距离小于第三距离阈值的情况下,才控制第二虚拟对象停止移动,而并第一虚拟对象停止后,第二虚拟对象立刻停止,可使跟随状态更为自然。
且在控制第二虚拟对象停止移动后,由于第一虚拟对象可能仅暂时停止移动,因此,在达到目标时间间隔后,可重新选取目标位置,并确定第二虚拟对象与目标位置间间隔距离,在间隔距离大于第三距离阈值的情况下,则可控制第二虚拟对象继续向目标位置移动。
在一种可能的实施方式中,控制第二虚拟对象移动可包括如下步骤:
步骤901,间隔距离是否小于等于第三距离阈值,若是,则执行步骤910,若否,则执行步骤902;
步骤902,确定第二虚拟对象是否在移动,若是,则执行步骤904,若否,则执行步骤903;
步骤903,控制第二虚拟对象移动;
步骤904,间隔距离是否大于第一距离阈值,若是,则执行步骤905,若否,则执行步骤906;
步骤905,控制第二虚拟对象以第一速度移动;
步骤906,间隔距离是否小于第一距离阈值且大于第二距离阈值,若是,则执行步骤907,若否,则执行步骤908;
步骤907,控制第二虚拟对象以第二速度移动;
步骤908,间隔距离是否小于第二距离阈值,若是,执行步骤909;
步骤909,控制第二虚拟对象以第三速度移动;
步骤910,控制第二虚拟对象停止移动;
步骤911,确定是否达到目标时间间隔,若是,则执行步骤901,若否,则执行步骤910。
本实施例中,基于第二虚拟对象与目标位置间距离,确定第二虚拟对象向目标位置移动过程中的速度,从而使第二虚拟对象在不同时段以不同速度向目标位置移动,使第二虚拟对象跟随状态更为自然,有助于提高第二虚拟对象自动跟随拟人化。
且本实施例中,在第二虚拟对象加速或减速过程中,可分别控制第二虚拟对象执行加速动作或减速动作,从而进一步提高第二虚拟对象自动跟随的拟人性。
图10是本申请一个示例性实施例提供的虚拟对象的控制装置的结构框图,该装置包括:
第一显示模块1001,用于显示第一虚拟对象以及第二虚拟对象,所述第二虚拟对象是自动跟随所述第一虚拟对象移动的虚拟对象;
第一控制模块1002,用于控制所述第一虚拟对象在虚拟环境中移动;
第二控制模块1003,用于在所述第一虚拟对象移动的情况下,控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,所述目标位置位于所述第一虚拟对象在移动过程中的前方区域。
可选的,所述第二控制模块1003,包括:
确定单元,用于确定所述第一虚拟对象的前方区域;
选取单元,用于从所述前方区域中选取所述目标位置;
第一控制单元,用于控制所述第二虚拟对象向所述目标位置移动。
可选的,所述选取单元,还用于:
每隔目标时间间隔,从所述前方区域中选取所述目标位置,其中,每次选取的所述目标位置不同。
可选的,所述选取单元,还用于:
基于上一次选取得到的所述目标位置,确定所述前方区域内的目标范围,所述目标范围以上一次选取得到的所述目标位置为中心;
从所述目标范围内选取所述目标位置。
可选的,所述选取单元,还用于:
在朝向变化值小于朝向阈值的情况下,基于上一次选取得到的所述目标位置,确定所述前方区域内的目标范围,所述朝向变化值是所述第一虚拟对象的实时朝向与上一次选取所述目标位置时所述第一虚拟对象的朝向间的差值;
所述装置还包括:
确定模块,用于在所述朝向变化值大于所述朝向阈值的情况下,确定所述前方区域中各个候选位置的抽取优先级,所述抽取优先级与位置距离呈负相关关系,所述位置距离为候选位置与上一次选取得到的所述目标位置间距离;
选取模块,用于基于所述抽取优先级,从各个所述候选位置中选取所述目标位置,所述目标位置的抽取优先级高于其他候选位置的抽取优先级。
可选的,所述选取模块,包括:
第二确定单元,用于在各个所述候选位置中存在至少两个备选位置的情况下,确定至少两个所述备选位置与所述第二虚拟对象间的距离,所述备选位置对应的抽取优先级为最高优先级;
第三确定单元,用于将最短距离对应的备选位置确定为所述目标位置。
可选的,所述第二控制模块1003,还包括:
第四确定单元,用于基于所述第二虚拟对象与所述目标位置间的间隔距离,确定所述第二虚拟对象的移动速度;
第二控制单元,用于基于所述第二虚拟对象的移动速度,控制所述第二虚拟对象向所述目标位置移动。
可选的,所述第二控制单元,还用于:
在所述间隔距离大于第一距离阈值的情况下,确定所述第二虚拟对象的移动速度为第一速度,所述第一速度大于所述第一虚拟对象的移动速度;
在所述间隔距离小于所述第一距离阈值且大于第二距离阈值的情况下,确定所述第二虚拟对象的移动速度为第二速度,所述第二速度与所述第一虚拟对象的移动速度相同;
在所述间隔距离小于所述第二距离阈值的情况下,确定所述第二虚拟对象的移动速度为第三速度,所述第三速度小于所述第一虚拟对象的移动速度。
可选的,所述装置还包括:
停止模块,用于在所述间隔距离小于第三距离阈值的情况下,控制所述第二虚拟对象停止移动,其中,所述第三距离阈值小于所述第二距离阈值。
可选的,在所述第一虚拟对象处于第一移动状态时,所述第一距离阈值为第一阈值,所述第二距离阈值为第二阈值,其中,第一移动状态下所述第一虚拟对象的移动速度大于所述第一虚拟对象直立行走的移动速度;
在所述第二虚拟对象处于第二移动状态时,所述第一距离阈值为第三阈值,所述第二距离阈值为第四阈值,其中,第二移动状态下所述第一虚拟对象的移动速度小于所述第一虚拟对象直立行走的移动速度;
其中,所述第一阈值大于所述第三阈值,所述第二阈值小于所述第四阈值。
可选的,所述第二控制单元,还用于:
在所述移动速度为所述第一速度的情况下,控制所述第二虚拟对象以所述第一速度向所述目标位置移动,以及控制所述第二虚拟对象执行加速动作;
在所述移动速度为所述第三速度的情况下,控制所述第二虚拟对象以所述第三速度向所述目标位置移动,以及控制所述第二虚拟对象执行减速动作。
可选的,所述第二虚拟对象为对局分配的AI虚拟对象、被设置为自动跟随模式的虚拟对象以及所述第一虚拟对象所拥有的虚拟对象中的至少一种。
综上所述,本申请实施例中,当第二虚拟对象处于自动跟随第一虚拟对象移动的状态时,将控制第二虚拟对象向第一虚拟对象的前方区域中目标位置移动。相较于相关技术中跟随目标的移动路径进行自动跟随的方式,本申请实施例提供的方法可使第二虚拟对象向第一虚拟对象前方位置自动移动,无需再基于第一虚拟对象的实时位置进行移动,即与第一虚拟对象的移动路径不同,从而使第二虚拟对象的跟随表现更为自然,有助于提高处于自动跟随状态的虚拟对象的拟人性,从而可提高游戏的真实性。
请参考图11,其示出了本申请一个示例性实施例提供的终端1100的结构框图。该终端1100可以是便携式移动终端,比如:智能手机、平板电脑、动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio Layer III,MP3)播放器、动态影像专家压缩标准音频层面4(Moving Picture Experts Group Audio Layer IV,MP4)播放器。终端1100还可能被称为用户设备、便携式终端等其他名称。
通常,终端1100包括有:处理器1101和存储器1102。
处理器1101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1101可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器1101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1101可以在集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1101还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1101所执行以实现本申请实施例提供的方法。
在一些实施例中,终端1100还可选包括有:外围设备接口1103和至少一个外围设备。
外围设备接口1103可被用于将输入/输出(Input/Output,I/O)相关的至少一个外围设备连接到处理器1101和存储器1102。在一些实施例中,处理器1101、存储器1102和外围设备接口1103被集成在同一芯片或电路板上;在一些其他实施例中,处理器1101、存储器1102和外围设备接口1103中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
本领域技术人员可以理解,图11中示出的结构并不构成对终端1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的虚拟对象的控制方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。终端的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该终端执行上述方面的各种可选实现方式中提供的虚拟对象的控制方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读存储介质中或者作为计算机可读存储介质上的一个或多个指令或代码进行传输。计算机可读存储介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (16)

1.一种虚拟对象的控制方法,其特征在于,所述方法包括:
显示第一虚拟对象以及第二虚拟对象,所述第二虚拟对象是自动跟随所述第一虚拟对象移动的虚拟对象;
控制所述第一虚拟对象在虚拟环境中移动;
在所述第一虚拟对象移动的情况下,控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,所述目标位置位于所述第一虚拟对象在移动过程中的前方区域。
2.根据权利要求1所述的方法,其特征在于,所述控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,包括:
确定所述第一虚拟对象的前方区域;
从所述前方区域中选取所述目标位置;
控制所述第二虚拟对象向所述目标位置移动。
3.根据权利要求2所述的方法,其特征在于,所述从所述前方区域中选取所述目标位置,包括:
每隔目标时间间隔,从所述前方区域中选取所述目标位置,其中,每次选取的所述目标位置不同。
4.根据权利要求3所述的方法,其特征在于,所述从所述前方区域中选取所述目标位置,包括:
基于上一次选取得到的所述目标位置,确定所述前方区域内的目标范围,所述目标范围以上一次选取得到的所述目标位置为中心;
从所述目标范围内选取所述目标位置。
5.根据权利要求4所述的方法,其特征在于,所述基于上一次选取得到的所述目标位置,确定所述前方区域内的目标范围,包括:
在朝向变化值小于朝向阈值的情况下,基于上一次选取得到的所述目标位置,确定所述前方区域内的目标范围,所述朝向变化值是所述第一虚拟对象的实时朝向与上一次选取所述目标位置时所述第一虚拟对象的朝向间的差值;
所述方法还包括:
在所述朝向变化值大于所述朝向阈值的情况下,确定所述前方区域中各个候选位置的抽取优先级,所述抽取优先级与位置距离呈负相关关系,所述位置距离为候选位置与上一次选取得到的所述目标位置间距离;
基于所述抽取优先级,从各个所述候选位置中选取所述目标位置,所述目标位置的抽取优先级高于其他候选位置的抽取优先级。
6.根据权利要求5所述的方法,其特征在于,所述基于所述抽取优先级,从各个所述候选位置中选取所述目标位置,包括:
在各个所述候选位置中存在至少两个备选位置的情况下,确定至少两个所述备选位置与所述第二虚拟对象间的距离,所述备选位置对应的抽取优先级为最高优先级;
将最短距离对应的备选位置确定为所述目标位置。
7.根据权利要求1至6任一所述的方法,其特征在于,所述控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,包括:
基于所述第二虚拟对象与所述目标位置间的间隔距离,确定所述第二虚拟对象的移动速度;
基于所述第二虚拟对象的移动速度,控制所述第二虚拟对象向所述目标位置移动。
8.根据权利要求7所述的方法,其特征在于,所述基于所述第二虚拟对象与所述目标位置间的移动距离,确定所述第二虚拟对象的移动速度,包括:
在所述间隔距离大于第一距离阈值的情况下,确定所述第二虚拟对象的移动速度为第一速度,所述第一速度大于所述第一虚拟对象的移动速度;
在所述间隔距离小于所述第一距离阈值且大于第二距离阈值的情况下,确定所述第二虚拟对象的移动速度为第二速度,所述第二速度与所述第一虚拟对象的移动速度相同;
在所述间隔距离小于所述第二距离阈值的情况下,确定所述第二虚拟对象的移动速度为第三速度,所述第三速度小于所述第一虚拟对象的移动速度。
9.根据权利要求8所述的方法,其特征在于,所述控制所述第二虚拟对象向所述虚拟环境中的目标位置移动之后,所述方法还包括:
在所述间隔距离小于第三距离阈值的情况下,控制所述第二虚拟对象停止移动,其中,所述第三距离阈值小于所述第二距离阈值。
10.根据权利要求8所述的方法,其特征在于,
在所述第一虚拟对象处于第一移动状态时,所述第一距离阈值为第一阈值,所述第二距离阈值为第二阈值,其中,第一移动状态下所述第一虚拟对象的移动速度大于所述第一虚拟对象直立行走的移动速度;
在所述第二虚拟对象处于第二移动状态时,所述第一距离阈值为第三阈值,所述第二距离阈值为第四阈值,其中,第二移动状态下所述第一虚拟对象的移动速度小于所述第一虚拟对象直立行走的移动速度;
其中,所述第一阈值大于所述第三阈值,所述第二阈值小于所述第四阈值。
11.根据权利要求8所述的方法,其特征在于,所述基于所述第二虚拟对象的移动速度,控制所述第二虚拟对象向所述目标位置移动,包括:
在所述移动速度为所述第一速度的情况下,控制所述第二虚拟对象以所述第一速度向所述目标位置移动,以及控制所述第二虚拟对象执行加速动作;
在所述移动速度为所述第三速度的情况下,控制所述第二虚拟对象以所述第三速度向所述目标位置移动,以及控制所述第二虚拟对象执行减速动作。
12.根据权利要求1至6任一所述的方法,其特征在于,所述第二虚拟对象为对局分配的AI虚拟对象、被设置为自动跟随模式的虚拟对象以及所述第一虚拟对象所拥有的虚拟对象中的至少一种。
13.一种虚拟对象的控制装置,其特征在于,所述装置包括:
第一显示模块,用于显示第一虚拟对象以及第二虚拟对象,所述第二虚拟对象是自动跟随所述第一虚拟对象移动的虚拟对象;
第一控制模块,用于控制所述第一虚拟对象在虚拟环境中移动;
第二控制模块,用于在所述第一虚拟对象移动的情况下,控制所述第二虚拟对象向所述虚拟环境中的目标位置移动,所述目标位置位于所述第一虚拟对象在移动过程中的前方区域。
14.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至12任一所述的虚拟对象的控制方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至12任一所述的虚拟对象的控制方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,终端的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令以实现如权利要求1至12任一所述的虚拟对象的控制方法。
CN202210108217.9A 2022-01-28 2022-01-28 虚拟对象的控制方法、装置、终端、存储介质及程序产品 Pending CN114425163A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210108217.9A CN114425163A (zh) 2022-01-28 2022-01-28 虚拟对象的控制方法、装置、终端、存储介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210108217.9A CN114425163A (zh) 2022-01-28 2022-01-28 虚拟对象的控制方法、装置、终端、存储介质及程序产品

Publications (1)

Publication Number Publication Date
CN114425163A true CN114425163A (zh) 2022-05-03

Family

ID=81312687

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210108217.9A Pending CN114425163A (zh) 2022-01-28 2022-01-28 虚拟对象的控制方法、装置、终端、存储介质及程序产品

Country Status (1)

Country Link
CN (1) CN114425163A (zh)

Similar Documents

Publication Publication Date Title
JP7476235B2 (ja) 仮想オブジェクトの制御方法、装置、デバイス及びコンピュータプログラム
WO2021244322A1 (zh) 瞄准虚拟对象的方法、装置、设备及存储介质
CN112138384B (zh) 虚拟投掷道具的使用方法、装置、终端及存储介质
US11890542B2 (en) Virtual object control method and apparatus, terminal, and storage medium
US11931653B2 (en) Virtual object control method and apparatus, terminal, and storage medium
WO2022184128A1 (zh) 虚拟对象的技能释放方法、装置、设备及存储介质
US20230054065A1 (en) Delivery of virtual effect
JP7492611B2 (ja) バーチャルシーンにおけるデータ処理方法、装置、コンピュータデバイス、及びコンピュータプログラム
TWI803147B (zh) 虛擬對象控制方法、裝置、設備、儲存媒體及程式産品
US20230330530A1 (en) Prop control method and apparatus in virtual scene, device, and storage medium
CN114225372A (zh) 虚拟对象的控制方法、装置、终端、存储介质及程序产品
CN114344903A (zh) 控制虚拟对象拾取虚拟道具的方法、终端及存储介质
JP2023164787A (ja) 仮想環境の画面表示方法、装置、機器及びコンピュータプログラム
CN113018862B (zh) 虚拟对象的控制方法、装置、电子设备及存储介质
US20230086441A1 (en) Method and apparatus for displaying picture in virtual scene, device, storage medium, and program product
CN114307150B (zh) 虚拟对象之间的互动方法、装置、设备、介质及程序产品
CN114042309B (zh) 虚拟道具的使用方法、装置、终端及存储介质
CN114425163A (zh) 虚拟对象的控制方法、装置、终端、存储介质及程序产品
CN112138392B (zh) 虚拟对象的控制方法、装置、终端及存储介质
EP3950078B1 (en) Virtual object control method and apparatus, and terminal and storage medium
TWI843042B (zh) 虛擬道具的投放方法、裝置、終端、儲存媒體及程式產品
US12019837B2 (en) Control display method and apparatus, device, medium, and program product
CN114288670B (zh) 虚拟对象的互动方法、装置、设备及存储介质
KR102677420B1 (ko) 가상 객체 제어 방법 및 장치, 단말, 및 저장 매체
WO2024078225A1 (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40071573

Country of ref document: HK