欢迎光临小豌豆知识网!
当前位置:首页 > 生活技术 > 运动娱乐> 虚拟场景中的虚拟对象控制方法、计算机设备及存储介质独创技术77299字

虚拟场景中的虚拟对象控制方法、计算机设备及存储介质

2021-02-15 06:27:25

虚拟场景中的虚拟对象控制方法、计算机设备及存储介质

  技术领域

  本申请涉及虚拟场景技术领域,特别涉及一种虚拟场景中的虚拟对象控制方法、计算机设备及存储介质。

  背景技术

  对战游戏是多个用户账号在同一场景内进行竞技的游戏。在一种可能的实现方式中,对战游戏可以是多人在线战术竞技游戏(Multiplayer Online Battle Arena Games,MOBA),用户通过触发虚拟控件,操控虚拟对象对其它虚拟对象或者虚拟建筑等释放技能,以达到某种胜利条件。

  在相关技术中,用来控制释放技能的虚拟控件可以是圆形区域,其中包括控制快速释放技能区域以及控制主动瞄准区域。其中,控制快速释放技能区域是以虚拟控件的圆心点为圆心,以小于虚拟控件的半径的指定长度为半径的圆形区域,而控制主动瞄准区域是除去快速释放技能区域的虚拟控件中的环形区域。在用户按下激活虚拟控件之后,记录抬起点的所属区域,当抬起点属于控制快速释放技能区域时,控制虚拟对象快速释放技能;当抬起点属于控制主动瞄准区域时,控制虚拟对象按照瞄准信息释放技能。

  然而,相关技术中用户在进行按下和抬起的过程中,由于用户与虚拟控件接触的是一个面,而实际记录的按下点与抬起点可能与预期位置产生偏差,可能出现预期抬起点在控制快速释放技能区域,实际却判定为抬起点在控制主动瞄准区域的情况,从而影响了技能释放方式的准确性,导致技能释放过程中的人机交互效率较低。

  发明内容

  本申请实施例提供了一种虚拟场景中的虚拟对象控制方法、计算机设备及存储介质,技术方案如下:

  一方面,提供了虚拟场景中的虚拟对象控制方法,所述方法包括:

  展示虚拟场景界面,所述虚拟场景界面中包含目标技能对应的触发控件;

  响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域;所述释放方式检测区域的大小与所述持续时长成反相关;

  响应于所述触控操作结束,基于结束点与所述释放方式检测区域的位置关系,获取所述目标技能的释放方式;所述结束点是所述触控操作结束的前一时刻的触控点;

  控制虚拟对象按照所述释放方式释放所述目标技能。

  一方面,提供了虚拟场景中的虚拟对象控制方法,所述方法包括:

  展示虚拟场景界面,所述虚拟场景界面中包含目标技能对应的触发控件;

  响应于接收到对所述触发控件的触控操作,以所述触发操作开始时的触控点为圆心,展示圆形的释放方式检测区域;所述释放方式检测区域的大小与所述触控操作的持续时长成反相关;

  响应于所述触控操作结束,且结束点处于所述释放方式检测区域内,控制虚拟对象在自动选择的方向或位置上释放所述目标技能;所述结束点是所述触控操作结束的前一时刻的触控点;

  响应于所述触控操作结束,且结束点处于所述释放方式检测区域外,控制所述虚拟对象在用户主动选择的方向或位置上释放所述目标技能。

  一方面,提供了虚拟场景中的虚拟对象控制装置,所述装置包括:

  界面展示模块,用于展示虚拟场景界面,所述虚拟场景界面中包含目标技能对应的触发控件;

  区域调整模块,用于响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域;所述释放方式检测区域的大小与所述持续时长成反相关;

  方式获取模块,用于响应于所述触控操作结束,基于结束点与所述释放方式检测区域的位置关系,获取所述目标技能的释放方式;所述结束点是所述触控操作结束的前一时刻的触控点;

  技能释放模块,用于控制虚拟对象按照所述释放方式释放所述目标技能。

  在一种可能的实现方式中,所述释放方式检测区域是以起始点为圆心的圆形区域,所述起始点是所述触控操作开始时的触控点;所述区域调整模块,包括:

  扩展半径获取子模块,用于基于所述持续时长以及扩展半径上限,获取所述释放方式检测区域的扩展半径;所述扩展半径与所述持续时长成反相关;

  第一半径获取子模块,用于在最小区域半径的基础上增加所述扩展半径,获得所述释放方式检测区域的区域半径;

  第一半径调整子模块,用于将所述释放方式检测区域的半径调整为所述区域半径。

  在一种可能的实现方式中,所述扩展半径获取子模块,包括:

  扩展比例确定单元,用于响应于所述持续时长小于时长阈值,基于所述持续时长和所述时长阈值确定扩展比例;

  扩展半径获取单元,用于基于所述扩展比例和所述扩展半径上限,获取所述扩展半径。

  在一种可能的实现方式中,所述扩展比例确定单元,用于,

  响应于所述持续时长小于时长阈值,将时长差值与所述时长阈值之间的比值,获取为所述扩展比例;所述时长差值是所述时长阈值与所述持续时长之间的差值;

  或者,

  响应于所述持续时长小于时长阈值,获取时长差值与所述时长阈值之间的比值所在的比值区间;获取与所述比值区间相对应的所述扩展比例;所述时长差值是所述时长阈值与所述持续时长之间的差值。

  在一种可能的实现方式中,所述扩展半径获取子模块,包括:

  扩展半径设置单元,用于响应于所述持续时长大于或者等于时长阈值,将所述扩展半径设置为零。

  在一种可能的实现方式中,所述装置还包括:

  控件位置获取子模块,用于基于所述持续时长以及扩展半径上限,获取所述释放方式检测区域的扩展半径之前,获取所述触发控件在所述虚拟场景界面的位置;

  第一上限获取子模块,用于基于所述触发控件在所述虚拟场景界面的位置,获取所述扩展半径上限。

  在一种可能的实现方式中,所述装置还包括:

  技能类型获取子模块,用于基于所述持续时长以及扩展半径上限,获取所述释放方式检测区域的扩展半径之前,获取所述目标技能的技能类型;

  第二上限获取子模块,用于基于所述目标技能的技能类型,获取所述扩展半径上限。

  在一种可能的实现方式中,所述释放方式检测区域是以起始点为圆心的圆形区域,所述起始点是所述触控操作开始时的触控点;所述区域调整模块,包括:

  缩小半径获取子模块,用于基于所述持续时长获取所述释放方式检测区域的缩小半径,所述缩小半径与所述持续时长成正相关;

  第二半径获取子模块,用于在初始半径的基础上减少所述缩小半径,获得所述释放方式检测区域的区域半径;

  第二半径调整子模块,用于将所述释放方式检测区域的半径调整为所述区域半径。

  在一种可能的实现方式中,所述区域调整模块,包括:

  控件位置获取子模块,用于响应于接收到对所述触发控件的触控操作,获取所述触发控件的位置信息,所述位置信息用于指示对应的控件是否处于所述虚拟场景界面的边缘位置;

  区域调整子模块,用于响应于所述触发控件的位置信息指示所述触发控件处于所述虚拟场景界面的边缘位置,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域。

  在一种可能的实现方式中,所述装置还包括:

  配置信息获取模块,用于响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域之前,读取区域扩展配置信息,所述区域扩展配置信息用于指示是否开启区域调整功能,所述区域调整功能是对所述释放方式检测区域进行调整的功能;

  所述区域调整模块,包括:

  步骤执行子模块,用于响应于所述区域扩展配置信息指示已开启所述区域调整功能,执行所述响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域的步骤。

  在一种可能的实现方式中,所述方式获取模块,包括:

  第一方式获取子模块,用于响应于所述触控操作结束,且所述结束点处于所述释放方式检测区域内,获取所述目标技能的释放方式为自动释放方式,所述自动释放方式用于指示在自动选择的方向或位置上释放技能;

  第二方式获取子模块,用于响应于所述触控操作结束,且所述结束点处于所述释放方式检测区域外,获取所述目标技能的释放方式为主动释放方式,所述在主动释放方式用于指示在用户主动选择的方向或位置上释放技能。

  一方面,提供了虚拟场景中的虚拟对象控制装置,所述装置包括:

  界面展示模块,用于展示虚拟场景界面,所述虚拟场景界面中包含目标技能对应的触发控件;

  区域展示模块,用于响应于接收到对所述触发控件的触控操作,以所述触发操作开始时的触控点为圆心,展示圆形的释放方式检测区域;所述释放方式检测区域的大小与所述触控操作的持续时长成反相关;

  第一技能释放模块,用于响应于所述触控操作结束,且结束点处于所述释放方式检测区域内,控制虚拟对象在自动选择的方向或位置上释放所述目标技能;所述结束点是所述触控操作结束的前一时刻的触控点;

  第二技能释放模块,用于响应于所述触控操作结束,且结束点处于所述释放方式检测区域外,控制所述虚拟对象在用户主动选择的方向或位置上释放所述目标技能。

  另一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述虚拟场景中的虚拟对象控制方法。

  又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述虚拟场景中的虚拟对象控制方法。

  至少一个方面涉及一种计算机程序产品,该计算机程序产品被配置为使得:在包括处理器和存储器的数据处理系统上执行时使数据处理系统执行上述方面的方法。该计算机程序产品可以被包括在有形的、非瞬时性的计算机可读介质中或在有形的、非瞬时性的计算机可读介质上提供。

  本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,进而提高技能释放控制过程中的人机交互效率。

  应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

  附图说明

  此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

  图1是本申请一个示例性的实施例提供的计算机系统的结构框图;

  图2是本申请一个示例性实施例提供的MOBA游戏的虚拟场景所提供的地图的示意图;

  图3是本申请一个示例性实施例提供的虚拟场景中的虚拟对象控制方法的流程图;

  图4是图3所示实施例涉及的虚拟场景界面的示意图;

  图5是图3所示实施例涉及的一种释放方式检测区域在虚拟场景中展示的示意图;

  图6是本申请一个示例性实施例提供的虚拟场景中的虚拟对象控制方法的流程图;

  图7是本申请一个示例性实施例提供的虚拟场景中的虚拟对象控制方法的流程图;

  图8是图7所示实施例涉及的一种技能类型的示意图;

  图9是图7所示实施例涉及的一种释放方式检测区域调整区域半径的过程示意图;

  图10是图7所示实施例涉及的一种持续对触发控件进行触发操作的情况下释放方式检测区域变化的示意图;

  图11是图7所示实施例涉及的一种实际触发点与期待触发点的分布示意图;

  图12是图7所示实施例涉及的一种区域半径确定的界面图;

  图13是图7所示实施例涉及的一种技能释放的界面图;

  图14是图7所示实施例涉及的技能释放方法的流程示意图;

  图15是本申请一个示例性实施例提供的判断触发控件按下后各个帧画面的逻辑流程图;

  图16是本申请一示例性实施例提供的一种虚拟场景中的虚拟对象控制装置的结构方框图;

  图17是本申请一示例性实施例提供的一种虚拟场景中的虚拟对象控制装置的结构方框图;

  图18是本申请一示例性实施例提供的计算机设备的结构框图。

  具体实施方式

  这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

  首先,对本申请实施例中涉及的名词进行介绍:

  1)虚拟场景

  虚拟场景是指应用程序在终端上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境场景,也可以是半仿真半虚构的三维环境场景,还可以是纯虚构的三维环境场景。虚拟场景可以是二维虚拟场景、2.5维虚拟场景和三维虚拟场景中的任意一种,下述实施例以虚拟场景是三维虚拟场景来举例说明,但对此不加以限定。可选地,该虚拟场景还用于至少两个虚拟角色之间的虚拟场景对战。可选地,该虚拟场景中具有可供至少两个虚拟角色使用的虚拟资源。可选地,该虚拟场景包括该虚拟世界包括正方形地图,该正方形地图包括对称的左下角区域和右上角区域,属于两个敌对阵营的虚拟角色分别占据其中一个区域,并以摧毁对方区域深处的目标建筑/据点/基地/水晶来作为胜利目标。

  2)虚拟对象

  虚拟对象是指在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物中的至少一种。可选地,当虚拟场景为三维虚拟场景时,虚拟对象可以是三维立体模型。每个虚拟对象在三维虚拟场景中具有自身的形状和体积,占据三维虚拟场景中的一部分空间。可选地,虚拟角色是基于三维人体骨骼技术构建的三维角色,该虚拟角色通过穿戴不同的皮肤来实现不同的外在形象。在一些实现方式中,虚拟角色也可以采用2.5维或2维模型来实现,本申请实施例对此不加以限定。

  3)多人在线战术竞技

  多人在线战术竞技是指在虚拟场景提供的地图上,分属至少两个敌对阵营的不同虚拟队伍分别占据各自的地图区域,以某一种胜利条件作为目标进行竞技。该胜利条件包括但不限于:占领据点或摧毁敌对阵营据点、击杀敌对阵营的虚拟角色、在指定场景和时间内保证自身的存活、抢夺到某种资源、在指定时间内比分超过对方中的至少一种。战术竞技可以以局单位来进行,每局战术竞技的地图可以相同,也可以不同。每个虚拟队伍包括一个或多个虚拟角色,比如1个、3个或5个。

  4)MOBA(Multiplayer Online Battle Arena,多人在线战术竞技)游戏

  MOBA游戏是一种在虚拟世界中提供若干个据点,处于不同阵营的用户控制虚拟角色在虚拟世界中对战,占领据点或摧毁敌对阵营据点的游戏。例如,MOBA游戏可将用户分成两个敌对阵营,将用户控制的虚拟角色分散在虚拟世界中互相竞争,以摧毁或占领敌方的全部据点作为胜利条件。MOBA游戏以局为单位,一局MOBA游戏的持续时间是从游戏开始的时刻至达成胜利条件的时刻。

  图1示出了本申请一个示例性实施例提供的计算机系统的结构框图。该计算机系统100包括:第一终端110、服务器集群120、第二终端130。

  第一终端110安装和运行有支持虚拟场景的客户端111,该客户端111可以是多人在线对战程序。当第一终端运行客户端111时,第一终端110的屏幕上显示客户端111的用户界面。该客户端可以是军事仿真程序、MOBA游戏、大逃杀射击游戏、SLG(Simulation Game,策略游戏)的任意一种。在本实施例中,以该客户端是MOBA游戏来举例说明。第一终端110是第一用户101使用的终端,第一用户101使用第一终端110控制位于虚拟场景中的第一虚拟角色进行活动,第一虚拟角色可以称为第一用户101的主控虚拟角色。第一虚拟角色的活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、飞行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟角色是第一虚拟人物,比如仿真人物角色或动漫人物角色。

  第二终端130安装和运行有支持虚拟场景的客户端131,该客户端131可以是多人在线对战程序。当第二终端130运行客户端131时,第二终端130的屏幕上显示客户端131的用户界面。该客户端可以是军事仿真程序、MOBA游戏、大逃杀射击游戏、SLG游戏中的任意一种,在本实施例中,以该客户端是MOBA游戏来举例说明。第二终端130是第二用户102使用的终端,第二用户102使用第二终端130控制位于虚拟场景中的第二虚拟角色进行活动,第二虚拟角色可以称为第二用户102的主控虚拟角色。示意性的,第二虚拟角色是第二虚拟人物,比如仿真人物角色或动漫人物角色。

  可选地,第一虚拟人物和第二虚拟人物处于同一虚拟场景中。可选地,第一虚拟人物和第二虚拟人物可以属于同一个阵营、同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选的,第一虚拟人物和第二虚拟人物可以属于不同的阵营、不同的队伍、不同的组织或具有敌对关系。

  可选地,第一终端110和第二终端130上安装的客户端是相同的,或两个终端上安装的客户端是不同操作系统平台(安卓或IOS)上的同一类型客户端。第一终端110可以泛指多个终端中的一个,第二终端130可以泛指多个终端中的另一个,本实施例仅以第一终端110和第二终端130来举例说明。第一终端110和第二终端130的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、MP1MP3播放器、MP4播放器、膝上型便携计算机和台式计算机中的至少一种。

  图1中仅示出了两个终端,但在不同实施例中存在多个其它终端140可以接入服务器集群120。可选地,还存在一个或多个终端140是开发者对应的终端,在终端140上安装有虚拟场景的客户端的开发和编辑平台,开发者可在终端140上对客户端进行编辑和更新,并将更新后的客户端安装包通过有线或无线网络传输至服务器集群120,第一终端110和第二终端110可从服务器集群120下载客户端安装包实现对客户端的更新。

  第一终端110、第二终端130以及其它终端140通过无线网络或有线网络与服务器集群120相连。

  服务器集群120包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器集群120用于为支持三维虚拟场景的客户端提供后台服务。可选地,服务器集群120承担主要计算工作,终端承担次要计算工作;或者,服务器集群120承担次要计算工作,终端承担主要计算工作;或者,服务器集群120和终端之间采用分布式计算架构进行协同计算。

  在一个示意性的例子中,服务器集群120包括服务器121和服务器126,服务器121包括处理器122、用户帐号数据库123、对战服务模块124、面向用户的输入/输出接口(Input/Output Interface,I/O接口)125。其中,处理器122用于加载服务器121中存储的指令,处理用户帐号数据库121和对战服务模块124中的数据;用户帐号数据库121用于存储第一终端110、第二终端130以及其它终端140所使用的用户帐号的数据,比如用户帐号的头像、用户帐号的昵称、用户帐号的战斗力指数,用户帐号所在的服务区;对战服务模块124用于提供多个对战房间供用户进行对战,比如1V1对战、3V3对战、5V5对战等;面向用户的I/O接口125用于通过无线网络或有线网络和第一终端110和/或第二终端130建立通信交换数据。可选地,服务器126内设置有智能信号模块127,该智能信号模块127用于实现下述实施例中提供的虚拟对象展示方法。

  图2示出了本申请一个示例性实施例示出的MOBA游戏的虚拟场景所提供的地图的示意图。该地图200呈正方形。该地图200沿对角线分为左下三角区域220和右上三角区域240。从左下三角区域220的左下角到右上三角区域240的右上角存在三条路线:上路21、中路22和下路23。在一场典型的对局中,需要10个虚拟角色分成两支阵营来进行竞技。第一阵营的5个虚拟角色占据左下三角区域220,第二阵营的5个虚拟角色占据右上三角区域240。第一阵营以摧毁或占领第二阵营的全部据点作为胜利条件,第二阵营以摧毁或占领第一阵营的全部据点作为胜利条件。

  示例性的,第一阵营的据点包括:9座防御塔24和第一基地25。其中,9座防御塔24在上路21、中路22和下路23中分别有3座;第一基地25位于左下三角区域220的左下角。

  示例性的,第二阵营的据点包括:9座防御塔24和第二基地26。其中,9座防御塔24在上路21、中路22和下路23中分别有3座;第二基地26位于右上三角区域220的右上角。

  在图2中虚线所在的位置,可称为河道区域。该河道区域属于第一阵营和第二阵营的共有区域,也是左下三角区域220和右上三角区域240的接壤区域。

  MOBA游戏需要各个虚拟角色在该地图200中获取资源,从而提升虚拟角色的战斗能力。该资源为通过击杀中立虚拟对象或者敌对虚拟对象获得的经验、金币或者增益(BUFF)效果。

  虚拟角色的战斗能力包括两部分:等级和装备,等级由积累的经验值来获得,装备由积累的金币来购买获得。在一场对局中,虚拟角色可以为10个,10个虚拟角色可以由服务器通过在线匹配10个用户帐号来得到。示例性的,服务器在线匹配2个或6个或10个用户帐号在同一个虚拟世界中进行竞技的界面。该2个或6个或10个虚拟角色分别属于敌对的两个阵营,两个阵营所对应的虚拟角色数量是相同的。比如,每个阵营具有5个虚拟角色,这5个虚拟角色的分工可以是:战士型角色、刺客型角色、法师型角色、辅助型(或肉盾型)角色和射手型角色。

  上述对战可以以局为单位来进行,每局对战的地图可以相同,也可以不同。每个阵营包括一个或多个虚拟角色,比如1个、3个或5个。

  在进行对战的过程中,用户操控的虚拟对象可以通过向敌方虚拟对象或者中立虚拟对象释放技能,以达到淘汰目标获取资源的目的,从而在对战过程中获得优势取得对战胜利的最终目的。其中,对战过程中出现的野怪都可以称为中立虚拟对象。在对战过程中,为了使用户操控虚拟对象释放技能达到预期的效果,提高用户操作的准确度,本申请提出一种控制虚拟对象释放技能的方案。

  请参考图3,其示出了本申请一个示例性的实施例提供的虚拟场景中的虚拟对象控制方法的流程图,该虚拟场景中的虚拟对象控制方法可以由计算机设备执行,该计算机设备可以包括终端和服务器中的至少一个,其中,上述终端可以是上述图1所示系统中的终端,服务器可以是上述图1所示系统中的服务器集群。如图3所示,该虚拟场景中的虚拟对象控制方法可以包括以下步骤:

  步骤301,展示虚拟场景界面,该虚拟场景界面中包含目标技能对应的触发控件。

  在一种可能的实现方式中,用户操控的虚拟对象可以具有的至少一种技能,一种技能可以对应一个触发控件。

  比如,请参考图4,其示出了本申请一示例性实施例示出的一种虚拟场景界面的示意图,如图4所示,由用户操控的虚拟对象42,具有技能1、技能2以及技能3,三个技能,其中三个技能各自对应一个触发控件41,当用户需要操控我方虚拟对象42向敌方虚拟对象43释放技能1时,确定技能1为目标技能,技能1对应的触发控件41为目标技能对应的触发控件。

  步骤302,响应于接收到对触发控件的触控操作,且触控操作未结束,基于触控操作的持续时长,调整目标技能的释放方式检测区域;释放方式检测区域的大小与持续时长成反相关。

  在本申请实施例中,当用户通过触发目标技能对应的触发控件,对虚拟对象进行操控时,用户需要对目标技能对应的触发控件进行触控操作,并且当用户持续对触发控件进行触控操作时,可以使终端持续接收到触控操作,并且可以获得该触控操作的持续时长。

  在一种可能的实现方式中,当用户触发目标技能对应的触发控件时,在对应的触发控件的周围生成一个该触发控件对应的目标技能的释放方式检测区域,该释放方式检测区域用来确定虚拟对象在释放该目标技能时使用的释放方式。

  在一种可能的实现方式中,触控操作的持续时长影响目标技能的释放方式检测区域的面积大小。

  在一种可能的实现方式中,释放方式检测区域的大小与持续时长成反相关,即持续时长越长,对应的释放方式检测区域的范围越小。

  在一种可能的实现方式中,释放方式检测区域是以起始点为圆心的圆形区域,起始点是触控操作开始时的触控点。

  比如,请参考图5,其示出了本申请一示例性实施例示出的一种释放方式检测区域在虚拟场景中展示的示意图,如图5所示,当用户对技能1对应的触发控件开始进行触控操作,在虚拟场景界面中的触发控件上的对应位置显示一个触控点图标51,同时生成一个以触控点图标51所在位置为圆心的圆形区域作为技能1对应的释放方式检测区域52。此时,释放方式检测区域52的面积为最大值,当用户进行持续的触控操作时,释放方式检测区域52的面积逐渐减小,直至减小到释放方式检测区域52的面积最小值。

  步骤303,响应于触控操作结束,基于结束点与释放方式检测区域的位置关系,获取目标技能的释放方式;结束点是触控操作结束的前一时刻的触控点。

  在本申请实施例中,根据结束触发操作的位置是否位于释放方式检测区域,确定选择的释放方式。

  步骤304,控制虚拟对象按照释放方式释放目标技能。

  在本申请实施例中,技能释放方式包括快速释放以及主动释放中的至少一种。

  在一种可能的实现方式中,不同的技能释放方案对应的虚拟技能释放的形式是不同的。

  综上所述,本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,进而提高技能释放控制过程中的人机交互效率。

  以游戏场景为例,在用户操控的虚拟角色所使用的终端上,在对战过程中,显示的虚拟场景界面上可以展示控制虚拟对象释放技能的过程。请参考图6,其示出了本申请一个示例性的实施例提供的虚拟场景中的虚拟对象控制方法的流程图,该虚拟场景中的虚拟对象控制方法可以由终端执行,其中,上述终端可以是上述图1所示系统中的终端。如图6所示,该虚拟场景中的虚拟对象控制方法可以包括以下步骤:

  步骤601,展示虚拟场景界面,虚拟场景界面中包含目标技能对应的触发控件。

  步骤602,响应于接收到对触发控件的触控操作,以触发操作开始时的触控点为圆心,展示圆形的释放方式检测区域;释放方式检测区域的大小与触控操作的持续时长成反相关。

  步骤603,响应于触控操作结束,且结束点处于释放方式检测区域内,控制虚拟对象在自动选择的方向或位置上释放目标技能;结束点是触控操作结束的前一时刻的触控点。

  步骤604,响应于触控操作结束,且结束点处于释放方式检测区域外,控制虚拟对象在用户主动选择的方向或位置上释放目标技能。

  综上所述,本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,进而提高技能释放控制过程中的人机交互效率。

  请参考图7,其示出了本申请一个示例性的实施例提供的虚拟场景中的虚拟对象控制方法的流程图,该虚拟场景中的虚拟对象控制方法可以由终端执行,其中,上述终端可以是上述图1所示系统中的终端。如图7所示,该虚拟场景中的虚拟对象控制方法可以包括以下步骤:

  步骤701,展示虚拟场景界面。

  在本申请实施例中,在虚拟场景界面中显示至少一个技能对应的触发控件,各个种类的虚拟角色具有的技能的种类可以是不同的,各个虚拟对象具有的技能包括主动技能或者被动技能,其中本申请方案针对的主要是主动技能。

  其中,主动技能可以包括角色主动技能以及装备主动技能,角色主动技能可以是由虚拟角色种类决定的虚拟对象自带的技能;装备主动技能可以是虚拟对象购买指定装备后添加的技能。

  在一种可能的实现方式中,至少一个技能对应的触发控件可以由用户自定义设置在虚拟场景画面的任意位置。

  步骤702,读取区域扩展配置信息。

  本申请实施例中,在用户终端进入到虚拟场景界面时,为了确定在进行技能释放的过程中是否需要展示可调整的释放方式检测区域,用户需要预先设置区域扩展配置信息,根据读取的区域扩展配置信息,可以指示在虚拟场景界面中的技能释放过程中是否需要展示可调整的释放方式检测区域。

  其中,区域扩展配置信息可以用于指示是否开启区域调整功能,区域调整功能是对释放方式检测区域进行调整的功能。

  比如,用户可以在设置界面中,开启或者关闭区域调整功能,当用户在设置界面中对区域调整功能设置完成后,在进入虚拟场景界面后可以直接读取用户预先设置的区域扩展配置信息,从而确定在虚拟场景界面中是否需要展示可调整的释放方式检测区域。

  在一种可能的实现方式中,响应于区域扩展配置信息指示已开启区域调整功能,执行响应于接收到对触发控件的触控操作,且触控操作未结束,基于触控操作的持续时长,调整目标技能的释放方式检测区域的步骤。

  步骤703,响应于接收到对目标技能对应的触发控件的触控操作,且触控操作未结束,基于触控操作的持续时长以及扩展半径上限,获取释放方式检测区域的扩展半径。

  在本申请实施例中,响应于接收到对触发控件的触控操作,且触控操作未结束,可以基于触控操作的持续时长,调整目标技能的释放方式检测区域,比如,在一种可能的实现方式中,通过获取扩展半径,来调整目标技能的释放方式检测区域的区域半径。

  其中,扩展半径与持续时长可以成反相关。

  在一种可能的实现方式中,响应于持续时长小于时长阈值,基于持续时长和时长阈值确定扩展比例。

  其中,当持续时长小于时长阈值时,也就是说触发操作的持续时长不超过释放方式检测区域范围可调整的时长阈值,释放方式检测区域的扩展半径可以通过如下两种方式得到的扩展比例进行获取。

  1)响应于持续时长小于时长阈值,将时长差值与时长阈值之间的比值,获取为扩展比例.

  其中,时长差值是时长阈值与持续时长之间的差值。

  比如,当触发操作的持续时长为0.5s,释放方式检测区域范围可调整时长阈值设置为0.6s时,可以将1/6作为扩展比例。

  2)响应于持续时长小于时长阈值,获取时长差值与时长阈值之间的比值所在的比值区间,获取与比值区间相对应的扩展比例。

  其中,时长差值是时长阈值与持续时长之间的差值。通过这种方法,可以获取固定的若干个扩展比例。

  比如,当触发操作的持续时长为0.5s,释放方式检测区域范围可调整时长阈值设置为0.6s时,比值为1/6,该比值所在的比值区间为0~0.2之间,所以可以得到相对应的扩展比例为0.1。若时长差值与时长阈值之间的比值在0.2~0.4之间时,可以得到相对应的扩展比例为0.3。通过这种方式可以得到若干个固定的扩展比例。

  在一种可能的实现方式中,基于扩展比例和扩展半径上限,获取扩展半径。

  其中,扩展半径可以是最小区域半径加上扩展比例与扩展半径上限的乘积。

  在另一种可能的实现方式中,响应于持续时长大于或者等于时长阈值,将扩展半径设置为零。

  其中,扩展半径上限可以是由策划预先设定的指定数值。或者,扩展半径上限可以根据触发控件在虚拟场景界面的位置或者目标技能的技能类型,进行适当的自动调整。

  触发控件在界面中的位置会影响用户操控虚拟对象选择目标技能的释放方式的准确度,因此触发控件在界面上的位置可以影响扩展半径上限。

  在一种可能的实现方式中,获取触发控件在虚拟场景界面的位置,然后基于触发控件在虚拟场景界面的位置,获取扩展半径上限。

  在一种可能的实现方式中,响应于接收到对触发控件的触控操作,获取触发控件的位置信息,位置信息用于指示对应的控件是否处于虚拟场景界面的边缘位置;响应于触发控件的位置信息指示触发控件处于虚拟场景界面的边缘位置,且触控操作未结束,基于触控操作的持续时长,调整目标技能的释放方式检测区域。

  比如,对于靠近界面边缘的位置的触发控件,如图4所示,技能1和技能3对应的触发控件41,在靠近界面边缘的位置的触发控件,用户在进行触发操作时相较于技能2对应的触发控件41不方便,并且操作难度较高,此时可以设置一个较大的扩展半径上限,以提高快捷施法时的操作准确性;而对于远离界面边缘位置的技能2对应的触发控件41,用户操作方便,操作难度低,此时可以设置一个较小的扩展半径上限,以提高主动施法的操作准确性。

  在一种可能的实现方式中,目标技能的技能类型包括方向类技能或者位置类技能。

  其中,方向类技能可以是向指定方向释放的一种技能,位置类技能可以是向指定位置释放的一种技能。

  在一种可能的实现方式中,获取目标技能的技能类型;基于目标技能的技能类型,获取扩展半径上限。

  比如,请参考图8,其示出了本申请一示例性实施例示出的一种技能类型的示意图。如图8(a)所示,方向类技能只需要选择方向,操作较为简单,因此用户主动施法时对于操作精度要求较低,可以设置一个较大的扩展半径上限,优先保证快速施法的操作准确性;而如图8(b)所示,位置类技能需要选择释放的位置,需要调整施法的方向和距离,操作较为复杂,因此用户主动施法时对于操作精度要求较高,可以设置一个较小的扩展半径上限,从而保证主动施法的操作准确性。

  步骤704,在最小区域半径的基础上增加扩展半径,获得释放方式检测区域的区域半径。

  在本申请实施例中,通过在最小区域半径的基础上增加扩展半径,可以获得释放方式检测区域的区域半径。

  在一种可能的实现方式中,释放方式检测区域的区域半径通过在最小区域半径的基础上增加扩展半径获得。

  其中,基于持续时长以及扩展半径上限,可以获取释放方式检测区域的扩展半径,在最小区域半径的基础上增加扩展半径,可以获得释放方式检测区域的区域半径,将释放方式检测区域的半径调整为区域半径。

  其中,扩展半径与持续时长成反相关。

  在一种可能的实现方式中,当持续时长小于时长阈值,基于持续时长和时长阈值确定扩展比例,基于扩展比例和扩展半径上限,获取扩展半径。

  比如,请参考图9,其示出了本申请一示例性实施例示出的一种释放方式检测区域调整区域半径的过程示意图。如图9所示,当触发控件接收到触发操作时,生成以最小区域半径R与扩展半径r的和作为半径,以触发控件的起始点点A作为圆心的释放方式检测区域,若时长阈值为t,并且持续时长为T时,实际上释放方式检测区域的范围大小可以通过如下方式确定:

  1)当持续时长T大于等于时长阈值t时,用户结束对触发控件的触控操作时的释放方式检测区域的半径为最小区域半径R,如图9(c)所示,即f(R)=R,释放方式检测区域为91c。

  2)当持续时长T小于时长阈值t时,用户结束对触发控件的触控操作时的释放方式检测区域的半径可以通过公式f(R)=R+(t-T)/t×r计算得到,其中f(R)为用户结束对触发控件的触控操作时的释放方式检测区域的半径,如图9(a)、(b)所示,释放方式检测区域随着持续时长T的增加,由91a到91b发生范围大小的调整。

  比如,请参考图10,其示出了本申请一个示例性的实施例提供的一种持续对触发控件进行触发操作的情况下释放方式检测区域变化的示意图,如图10(a)所示,当用户按下虚拟控件的时刻,生成第一区域1001a,其中第一区域1001a是以初始触发点A为圆心,以初始半径与指定的固定长度之和作为半径的圆形区域。当用户持续按下虚拟控件一段时长之后,由于用户与终端的屏幕相接触的是触碰面,并非是理想化的触发点,请参考图11,其示出了本申请一个示例性的实施例提供的一种实际触发点与期待触发点的分布示意图,当用户的手指与终端的屏幕接触时,用户按下触发控件的触发点可以是期待触发点1102,期待触发点可以位于释放方式检测区域1103中,当用户抬起手指离开虚拟控件时,可能终端实际识别的结束触发点为触发点1101,这会导致结束触发点1101位于非释放方式检测区域,从而导致实际使用的释放技能方案与预期的快速释放技能方案不同,发生偏差。因此,如图10(b)所示,当用户抬起手指离开触发控件时的结束触发点为B时,结束触发点B位于当前的释放方式检测区域1001b中,当前的释放方式检测区域1001b为以初始触发点A为圆心的圆形区域。

  步骤705,基于持续时长获取释放方式检测区域的缩小半径。

  在本申请实施例中,响应于接收到对触发控件的触控操作,且触控操作未结束,可以基于触控操作的持续时长,调整目标技能的释放方式检测区域,可以通过获取缩小半径,调整目标技能的释放方式检测区域的区域半径。

  其中,缩小半径与持续时长成正相关。

  一种可能的实现方式中,响应于持续时长小于时长阈值,基于持续时长和时长阈值确定缩小比例。

  其中,当持续时长小于时长阈值时,也就是说触发操作的持续时长不超过释放方式检测区域范围可调整的时长阈值,释放方式检测区域的缩小半径可以通过如下两种方式得到的缩小比例进行获取。

  1)响应于持续时长小于时长阈值,将时长差值与时长阈值之间的比值,获取为缩小比例.

  其中,时长差值是时长阈值与持续时长之间的差值。

  比如,当触发操作的持续时长为0.5s,释放方式检测区域范围可调整时长阈值设置为0.6s时,可以将1/6作为缩小比例。

  2)响应于持续时长小于时长阈值,获取时长差值与时长阈值之间的比值所在的比值区间,获取与比值区间相对应的缩小比例。

  其中,时长差值是时长阈值与持续时长之间的差值。通过这种方法,可以获取固定的若干个缩小比例。

  比如,当触发操作的持续时长为0.5s,释放方式检测区域范围可调整时长阈值设置为0.6s时,比值为1/6,该比值所在的比值区间为0~0.2之间,所以可以得到相对应的缩小比例为0.1。若时长差值与时长阈值之间的比值在0.2~0.4之间时,可以得到相对应的缩小比例为0.3。通过这种方式可以得到若干个固定的缩小比例。

  在一种可能的实现方式中,基于缩小比例和初始半径,获取缩小半径。

  其中,缩小半径可以是初始半径减去缩小比例与最小区域半径的乘积,缩小半径的最大值可以是初始半径与最小区域半径的差值。

  在另一种可能的实现方式中,响应于持续时长大于或者等于时长阈值,将缩小半径设置为缩小半径的最大值,即初始半径与最小区域半径的差值。

  步骤706,在初始半径的基础上减少缩小半径,获得释放方式检测区域的区域半径。

  在本申请实施例中,初始半径可以是触控操作开始时,释放方式检测区域的区域半径。

  其中,初始半径可以是由策划预先设置的固定的数值,初始半径还可以通过与获取扩展半径上限相同的方式进行获取,包括根据触发控件在虚拟场景界面的位置以及目标技能的技能类型获取对应的初始半径。

  其中,上述步骤703和步骤704所示的区域半径获取方法,与步骤705和步骤706所示的区域半径获取方法则一使用,也就是说,计算机设备按照步骤703和步骤704所示的方式来获取区域半径,或者,按照步骤705和步骤706所示的方式来获取区域半径。

  步骤707,将释放方式检测区域的半径调整为区域半径。

  在本申请实施例中,根据触发操作的持续时长,将释放方式检测区域的半径调整为区域半径。

  其中,根据触发操作的持续时长,将释放方式检测区域的半径调整为区域半径的方式可以是在初始半径的基础上增加扩展半径,或者减少缩小半径等,获得释放方式检测区域的区域半径。

  比如,请参考图12,其示出了本申请一个示例性的实施例提供的一种区域半径确定的界面图,如图12所示,当用户按下触发控件时,以触发点A为圆心,以最小区域半径的基础上增加扩展半径作为半径,生成释放方式检测区域1201。在对局界面中还存在我方虚拟对象1203和敌方虚拟对象1202,以及在按下触发控件后,我方虚拟对象对应的虚拟技能的技能释放作用范围1204。在技能释放作用范围1204中的敌方虚拟对象1202可以作为目标作用对象。

  步骤708,响应于触控操作结束,基于结束点与释放方式检测区域的位置关系,获取目标技能的释放方式。

  其中,结束点可以是触控操作结束的前一时刻的触控点。

  步骤709,响应于触控操作结束,且结束点处于释放方式检测区域内,获取目标技能的释放方式为自动释放方式。

  其中,自动释放方式用于指示在自动选择的方向或位置上释放技能,或者,自动释放方式用于指示向自动选择的目标对象释放技能。

  在一种可能的实现方式中,根据自动释放方式中预先设置的技能作用目标的条件,确定技能的作用范围内满足技能作用目标条件的虚拟对象作为虚拟技能作用目标,然后,获取虚拟技能作用目标的位置信息。

  步骤710,响应于触控操作结束,且结束点处于释放方式检测区域外,获取目标技能的释放方式为主动释放方式。

  其中,在主动释放方式用于指示在用户主动选择的方向或位置上释放技能,或者,自动释放方式用于指示向用户主动选择的目标对象释放技能。

  步骤711,控制虚拟对象按照释放方式释放目标技能。

  在一种可能的实现方式中,响应于触控操作结束,且结束点处于释放方式检测区域外,在触控操作结束之前,根据作用目标的位置信息,显示目标技能对应的技能指示器。

  比如,请参考图13,其示出了本申请一个示例性的实施例提供的一种技能释放的界面图,如图13所示,当用户结束触发操作时,用户操控的虚拟对象进入技能准备阶段,在界面上可以展示一个准备计时条1301,然后当准备计时条1301倒数计时完成时,可以向目标对象释放技能,此时,该技能对应的触发控件1302为不可选中状态,并且进入技能冷却计时。最终,技能特效显示在目标对象1303上。

  另外,请参考图14,其示出了本申请一个示例性的实施例提供的技能释放方法的流程示意图,如图14所示,该技能释放方法可以包括以下步骤:

  S1401,按下技能对应的触发控件。

  S1402,触发快速施法模式。

  S1403,判断用户是否结束触发,抬起释放技能。

  S1404,当判断用户结束触发抬起释放技能时,进行技能释放。

  S1405,当判断用户未结束触发抬起释放技能时,判断是否进入主动瞄准模式,若判断进入主动瞄准模式,则进行技能释放;若判断未进入主动瞄准模式,则进行技能释放,判断为快速施法模式,按照快速施法的过程,最终释放技能。

  综上所述,本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,进而提高技能释放控制过程中的人机交互效率。

  以游戏场景为例,上述实施例中提及的在触发控件按下后,各个帧画面的触发点均进行技能释放方法的判断,请参考图15,其示出了本申请一个示例性的实施例提供的判断触发控件按下后各个帧画面的逻辑流程图,如图15所示,该逻辑流程可以包括以下步骤:

  首先帧更新开始(S1501)判断是否触发触发控件并且进行拖动操作(S1502),当判断触发触发控件并且进行拖动操作时,记录玩家拖动的操作位置(S1503),将当前拖动的位置赋值给变量p2(S1504),当判断未触发触发控件并且进行拖动操作时,此时玩家仅仅按下了触发控件(S1505),并且将isOutDeadZone(释放方式检测区域之外的区域)这个标记置为false(S1506)。之后记录触发按下时的位置p1,然后将p1的值赋值给变量p2(S1507)。接着,判断isOutDeadZone,如果true表示当前技能已经处于拖动过程中了(S1514),通过p2-p1可以计算出主动施法时的瞄准点(S1515),如果标记置为false表示还在不处于拖动状态,计算p2-p1的长度是否大于d(死区半径为策划配置)(S1509),如果是则设置isOutDeadZone这个标记置为true(S1511),去设置当前技能进入拖动状态,通过如下公式可以计算出新的p1点(S1512)。

  p1′=p1+normalize(p2-p1)×N×d

  已更新后的p1点为中心,修改技能按钮状态为拖动(S1513)。新的p1点会在原p1的基础上朝着p2的朝向上,跳动的距离由策划配置的参数N用来表示移动释放方式检测区域的百分比。

  比如,当初始触发点的触发位置信息赋值给变量p1,结束触发点的触发位置信息赋值给变量p2,则拖动距离可以通过|p1-p2|计算得到。结束时刻对应的释放方式检测区域的半径d可以通过如下公式计算:

  d=R+r×Max(curTime-buttonDownTime/t,0)

  其中,R是释放方式检测区域的最小区域半径,r是扩增半径,curTime是当前时间,而buttonDownTime是触发控件按下的初始时间,而t是释放方式检测区域可调整的最大时间,其中R、r、t都可以是由策划配置的固定常量。

  其中,根据预先配置的移动参数、拖动距离以及当前时刻对应的第一区域的半径,确定移动长度,移动参数用来表示初始触发位置移动的百分比。然后将初始触发位置的坐标点更新为,向结束触发位置的方向移动移动长度的距离的位置坐标点。更新后的初始触发位置可以表示为,

  p1′=p1+normalize(p2-p1)×N×d

  其中,p1′为更新后的初始触发位置,p1为初始触发位置的赋值,N为预先配置的移动参数,d为当前时刻对应的第一区域的半径。

  综上所述,本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,进而提高技能释放控制过程中的人机交互效率。

  图16是根据一示例性实施例示出的一种虚拟场景中的虚拟对象控制装置的结构方框图。该虚拟场景中的虚拟对象控制装置可以用于计算机设备中,以执行图3或图7对应实施例所示的方法中的全部或者部分步骤。该虚拟场景中的虚拟对象控制装置可以包括:

  界面展示模块1610,用于展示虚拟场景界面,所述虚拟场景界面中包含目标技能对应的触发控件;

  区域调整模块1620,用于响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域;所述释放方式检测区域的大小与所述持续时长成反相关;

  方式获取模块1630,用于响应于所述触控操作结束,基于结束点与所述释放方式检测区域的位置关系,获取所述目标技能的释放方式;所述结束点是所述触控操作结束的前一时刻的触控点;

  技能释放模块1640,用于控制虚拟对象按照所述释放方式释放所述目标技能。

  在一种可能的实现方式中,所述释放方式检测区域是以起始点为圆心的圆形区域,所述起始点是所述触控操作开始时的触控点;所述区域调整模块1620,包括:

  扩展半径获取子模块,用于基于所述持续时长以及扩展半径上限,获取所述释放方式检测区域的扩展半径;所述扩展半径与所述持续时长成反相关;

  第一半径获取子模块,用于在最小区域半径的基础上增加所述扩展半径,获得所述释放方式检测区域的区域半径;

  第一半径调整子模块,用于将所述释放方式检测区域的半径调整为所述区域半径。

  在一种可能的实现方式中,所述扩展半径获取子模块,包括:

  扩展比例确定单元,用于响应于所述持续时长小于时长阈值,基于所述持续时长和所述时长阈值确定扩展比例;

  扩展半径获取单元,用于基于所述扩展比例和所述扩展半径上限,获取所述扩展半径。

  在一种可能的实现方式中,所述扩展比例确定单元,用于,

  响应于所述持续时长小于时长阈值,将时长差值与所述时长阈值之间的比值,获取为所述扩展比例;所述时长差值是所述时长阈值与所述持续时长之间的差值;

  或者,

  响应于所述持续时长小于时长阈值,获取时长差值与所述时长阈值之间的比值所在的比值区间;获取与所述比值区间相对应的所述扩展比例;所述时长差值是所述时长阈值与所述持续时长之间的差值。

  在一种可能的实现方式中,所述扩展半径获取子模块,包括:

  扩展半径设置单元,用于响应于所述持续时长大于或者等于时长阈值,将所述扩展半径设置为零。

  在一种可能的实现方式中,所述装置还包括:

  控件位置获取子模块,用于基于所述持续时长以及扩展半径上限,获取所述释放方式检测区域的扩展半径之前,获取所述触发控件在所述虚拟场景界面的位置;

  第一上限获取子模块,用于基于所述触发控件在所述虚拟场景界面的位置,获取所述扩展半径上限。

  在一种可能的实现方式中,所述装置还包括:

  技能类型获取子模块,用于基于所述持续时长以及扩展半径上限,获取所述释放方式检测区域的扩展半径之前,获取所述目标技能的技能类型;

  第二上限获取子模块,用于基于所述目标技能的技能类型,获取所述扩展半径上限。

  在一种可能的实现方式中,所述释放方式检测区域是以起始点为圆心的圆形区域,所述起始点是所述触控操作开始时的触控点;所述区域调整模块1620,包括:

  缩小半径获取子模块,用于基于所述持续时长获取所述释放方式检测区域的缩小半径,所述缩小半径与所述持续时长成正相关;

  第二半径获取子模块,用于在初始半径的基础上减少所述缩小半径,获得所述释放方式检测区域的区域半径;

  第二半径调整子模块,用于将所述释放方式检测区域的半径调整为所述区域半径。

  在一种可能的实现方式中,所述区域调整模块1620,包括:

  控件位置获取子模块,用于响应于接收到对所述触发控件的触控操作,获取所述触发控件的位置信息,所述位置信息用于指示对应的控件是否处于所述虚拟场景界面的边缘位置;

  区域调整子模块,用于响应于所述触发控件的位置信息指示所述触发控件处于所述虚拟场景界面的边缘位置,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域。

  在一种可能的实现方式中,所述装置还包括:

  配置信息获取模块,用于响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域之前,读取区域扩展配置信息,所述区域扩展配置信息用于指示是否开启区域调整功能,所述区域调整功能是对所述释放方式检测区域进行调整的功能;

  所述区域调整模块1620,包括:

  步骤执行子模块,用于响应于所述区域扩展配置信息指示已开启所述区域调整功能,执行所述响应于接收到对所述触发控件的触控操作,且所述触控操作未结束,基于所述触控操作的持续时长,调整所述目标技能的释放方式检测区域的步骤。

  在一种可能的实现方式中,所述方式获取模块1630,包括:

  第一方式获取子模块,用于响应于所述触控操作结束,且所述结束点处于所述释放方式检测区域内,获取所述目标技能的释放方式为自动释放方式,所述自动释放方式用于指示在自动选择的方向或位置上释放技能;

  第二方式获取子模块,用于响应于所述触控操作结束,且所述结束点处于所述释放方式检测区域外,获取所述目标技能的释放方式为主动释放方式,所述在主动释放方式用于指示在用户主动选择的方向或位置上释放技能。

  综上所述,本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,由于不同的释放方式的运行算法是不同的,从而提高了调用运行算法的准确性,进而节约了终端的处理资源和电量资源。

  图17是根据一示例性实施例示出的一种虚拟场景中的虚拟对象控制装置的结构方框图。该虚拟场景中的虚拟对象控制装置可以用于终端中,以执行图6或图7对应实施例所示的方法中,由终端执行的全部或者部分步骤。该虚拟场景中的虚拟对象控制装置可以包括:

  界面展示模块1710,用于展示虚拟场景界面,所述虚拟场景界面中包含目标技能对应的触发控件;

  区域展示模块1720,用于响应于接收到对所述触发控件的触控操作,以所述触发操作开始时的触控点为圆心,展示圆形的释放方式检测区域;所述释放方式检测区域的大小与所述触控操作的持续时长成反相关;

  第一技能释放模块1730,用于响应于所述触控操作结束,且结束点处于所述释放方式检测区域内,控制虚拟对象在自动选择的方向或位置上释放所述目标技能;所述结束点是所述触控操作结束的前一时刻的触控点;

  第二技能释放模块1740,用于响应于所述触控操作结束,且结束点处于所述释放方式检测区域外,控制所述虚拟对象在用户主动选择的方向或位置上释放所述目标技能。

  综上所述,本申请通过展示一个包含有目标技能对应的触发控件的虚拟场景界面,当该触发控件接收到触控操作时,根据接收到的触控操作的持续时长可以调整目标技能的释放方式检测区域,当完成触控操作时,可以根据触控结束点与释放方式检测区域的位置关系,获得目标技能的释放方式,使用户操控的虚拟对象按照对应的释放方式释放目标技能。通过调整目标技能的释放方式检测区域,可以提高释放方式判断的准确性,由于不同的释放方式的运行算法是不同的,从而提高了调用运行算法的准确性,进而节约了终端的处理资源和电量资源。

  图18是根据一示例性实施例示出的计算机设备1800的结构框图。该计算机设备1800可以是用户终端,比如智能手机、平板电脑、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。计算机设备1800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

  通常,计算机设备1800包括有:处理器1801和存储器1802。

  处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

  存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1801所执行以实现本申请中方法实施例提供的方法中的全部或者部分步骤。

  在一些实施例中,计算机设备1800还可选包括有:外围设备接口1803和至少一个外围设备。处理器1801、存储器1802和外围设备接口1803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1803相连。具体地,外围设备包括:射频电路1804、触摸显示屏1805、摄像头1806、音频电路1807、定位组件1808和电源1809中的至少一种。

  外围设备接口1803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1801和存储器1802。在一些实施例中,处理器1801、存储器1802和外围设备接口1803被集成在同一芯片或电路板上;在一些其他实施例中,处理器1801、存储器1802和外围设备接口1803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

  射频电路1804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。

  显示屏1805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1805是触摸显示屏时,显示屏1805还具有采集在显示屏1805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1801进行处理。此时,显示屏1805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1805可以为一个,设置计算机设备1800的前面板;在另一些实施例中,显示屏1805可以为至少两个,分别设置在计算机设备1800的不同表面或呈折叠设计;在再一些实施例中,显示屏1805可以是柔性显示屏,设置在计算机设备1800的弯曲表面上或折叠面上。甚至,显示屏1805还可以设置成非矩形的不规则图形,也即异形屏。显示屏1805可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(OrganicLight-Emitting Diode,有机发光二极管)等材质制备。

  摄像头组件1806用于采集图像或视频。可选地,摄像头组件1806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

  音频电路1807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1801进行处理,或者输入至射频电路1804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在计算机设备1800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1801或射频电路1804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1807还可以包括耳机插孔。

  定位组件1808用于定位计算机设备1800的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件1808可以是基于美国的GPS(Global Positioning System,全球定位系统)、中国的北斗系统、俄罗斯的GLONASS(Global Navigation Satellite System,全球卫星导航系统)或者欧洲的伽利略系统的定位组件。

  电源1809用于为计算机设备1800中的各个组件进行供电。电源1809可以是交流电、直流电、一次性电池或可充电电池。当电源1809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

  在一些实施例中,计算机设备1800还包括有一个或多个传感器1810。该一个或多个传感器1810包括但不限于:加速度传感器1811、陀螺仪传感器1812、压力传感器1813、指纹传感器1812、光学传感器1815以及接近传感器1816。

  加速度传感器1811可以检测以计算机设备1800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1811可以用于检测重力加速度在三个坐标轴上的分量。处理器1801可以根据加速度传感器1811采集的重力加速度信号,控制触摸显示屏1805以横向视图或纵向视图进行用户界面的显示。加速度传感器1811还可以用于游戏或者用户的运动数据的采集。

  陀螺仪传感器1812可以检测计算机设备1800的机体方向及转动角度,陀螺仪传感器1812可以与加速度传感器1811协同采集用户对计算机设备1800的3D动作。处理器1801根据陀螺仪传感器1812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。

  压力传感器1813可以设置在计算机设备1800的侧边框和/或触摸显示屏1805的下层。当压力传感器1813设置在计算机设备1800的侧边框时,可以检测用户对计算机设备1800的握持信号,由处理器1801根据压力传感器1813采集的握持信号进行左右手识别或快捷操作。当压力传感器1813设置在触摸显示屏1805的下层时,由处理器1801根据用户对触摸显示屏1805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

  指纹传感器1814用于采集用户的指纹,由处理器1801根据指纹传感器1814采集到的指纹识别用户的身份,或者,由指纹传感器1814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1814可以被设置计算机设备1800的正面、背面或侧面。当计算机设备1800上设置有物理按键或厂商Logo时,指纹传感器1814可以与物理按键或厂商Logo集成在一起。

  光学传感器1815用于采集环境光强度。在一个实施例中,处理器1801可以根据光学传感器1815采集的环境光强度,控制触摸显示屏1805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1805的显示亮度;当环境光强度较低时,调低触摸显示屏1805的显示亮度。在另一个实施例中,处理器1801还可以根据光学传感器1815采集的环境光强度,动态调整摄像头组件1806的拍摄参数。

  接近传感器1816,也称距离传感器,通常设置在计算机设备1800的前面板。接近传感器1816用于采集用户与计算机设备1800的正面之间的距离。在一个实施例中,当接近传感器1816检测到用户与计算机设备1800的正面之间的距离逐渐变小时,由处理器1801控制触摸显示屏1805从亮屏状态切换为息屏状态;当接近传感器1816检测到用户与计算机设备1800的正面之间的距离逐渐变大时,由处理器1801控制触摸显示屏1805从息屏状态切换为亮屏状态。

  本领域技术人员可以理解,图18中示出的结构并不构成对计算机设备1800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

  在一示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括至少一条指令、至少一段程序、代码集或指令集的存储器,上述至少一条指令、至少一段程序、代码集或指令集可由处理器执行以完成上述图3或图6或图7对应实施例所示的方法的全部或者部分步骤。例如,所述非临时性计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、随机存取存储器(Random Access Memory,RAM)、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、磁带、软盘和光数据存储设备等。

  本申请实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述图3或图6或图7对应实施例所示的方法的全部或者部分步骤。

  本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。

  应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

《虚拟场景中的虚拟对象控制方法、计算机设备及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

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