虚拟道具的控制方法、装置、设备及计算机可读存储介质转让专利

申请号 : CN202011063383.9

文献号 : CN112121432B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 姚丽刘智洪

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请提供了一种虚拟道具的控制方法、装置、设备及计算机可读存储介质;方法包括:在虚拟场景的画面中呈现目标虚拟道具;响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面;响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。通过本申请,能够提高对目标射击道具的控制效率。

权利要求 :

1.一种虚拟道具的控制方法,其特征在于,所述方法包括:在虚拟场景的画面中呈现目标虚拟道具;

响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面;

响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;

在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。

2.如权利要求1所述的方法,其特征在于,所述在虚拟场景的画面中呈现目标虚拟道具,包括:在所述虚拟场景的画面中,呈现所述目标虚拟道具的操作控件;

当所述操作控件处于激活状态时,响应于针对所述操作控件的触发操作,在所述虚拟场景的画面中呈现目标虚拟道具。

3.如权利要求2所述的方法,其特征在于,所述在所述虚拟场景的画面中呈现目标虚拟道具之前,所述方法还包括:呈现所述第一虚拟对象在所述虚拟场景中,射击目标对象所取得的成绩;

当所述成绩达到成绩阈值时,采用目标样式呈现所述目标虚拟道具的操作控件;

其中,所述目标样式用于表征所述目标虚拟道具的操作控件处于所述激活状态。

4.如权利要求1所述的方法,其特征在于,所述在虚拟场景的画面中呈现目标虚拟道具,包括:当包含所述目标虚拟道具的目标区域内存在其它物体时,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具;

当包含所述目标虚拟道具的目标区域内不存在其它物体时,以第二呈现样式在虚拟场景的画面中呈现目标虚拟道具;

其中,所述第一呈现样式不同于所述第二呈现样式。

5.如权利要求1所述的方法,其特征在于,所述展示处于所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面之前,所述方法还包括:在所述虚拟场景的画面中,呈现所述目标虚拟道具的放置控件;

接收到针对所述放置控件的触发操作,当目标虚拟道具处于目标位置时,将所述目标虚拟道具固定于所述虚拟场景中的目标位置。

6.如权利要求1所述的方法,其特征在于,所述展示处于所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面之前,包括:当所述第一虚拟对象与所述目标虚拟道具之间距离小于距离阈值时,呈现所述目标虚拟道具的控制控件;

响应于针对所述控制控件的触发操作,触发针对所述目标虚拟道具的操作指令。

7.如权利要求1所述的方法,其特征在于,所述方法还包括:在第二虚拟对象移动所述目标虚拟道具的过程中,同步调整展示的所述视野画面。

8.如权利要求1所述的方法,其特征在于,所述方法还包括:呈现所述目标虚拟道具的离开控件;

响应于针对所述离开控件的触发操作,控制所述第一虚拟对象离开所述目标虚拟道具的内部,并展示所述第一虚拟对象处于所述目标虚拟道具外部时的视野画面。

9.如权利要求1所述的方法,其特征在于,所述方法还包括:呈现所述目标虚拟道具的使用时长;

当所述目标虚拟道具的使用时长到达时,取消呈现所述目标虚拟道具。

10.如权利要求1所述的方法,其特征在于,所述目标虚拟道具包括用于射击的射击组件和虚拟护盾,所述虚拟护盾位于所述射击组件的周围;所述方法还包括:当对所述第一虚拟对象射击的虚拟子弹射击至所述虚拟护盾时,通过所述虚拟护盾阻挡所述虚拟子弹针对所述虚拟对象的攻击。

11.如权利要求10所述的方法,其特征在于,所述方法还包括:呈现虚拟护盾的护盾值;

在通过所述虚拟道具阻挡所述虚拟子弹针对所述虚拟道具的攻击的过程中,根据虚拟子弹对所述虚拟护盾所造成的伤害,减少所述虚拟护盾的护盾值;

当所述虚拟护盾的护盾值不高于护盾值阈值时,呈现所述虚拟护盾失效的提示信息。

12.如权利要求1所述的方法,其特征在于,所述方法还包括:呈现目标虚拟道具的虚拟子弹的剩余数量、以及击杀的目标对象数量;

当击杀的目标对象数量达到数量阈值时,对目标虚拟道具进行虚拟子弹补充,并更新呈现的虚拟子弹的剩余数量。

13.一种虚拟道具的控制装置,其特征在于,所述装置包括:第一呈现模块,用于在虚拟场景的画面中呈现目标虚拟道具;

展示模块,用于响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面;

控制模块,用于响应于基于所述视野画面触发的射击指令,呈现控制所述第一虚拟对象使用所述目标虚拟道具进行射击;

第二呈现模块,用于在所述第一虚拟对象控制所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。

14.一种电子设备,其特征在于,包括:

存储器,用于存储可执行指令;

处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至12任一项所述的虚拟道具的控制方法。

15.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至12任一项所述的虚拟道具的控制方法。

说明书 :

虚拟道具的控制方法、装置、设备及计算机可读存储介质

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种虚拟道具的控制方法、装置、设备及计算机可读存储介质。

背景技术

[0002] 在虚拟场景下,通常设置有不同的虚拟道具,如射击道具、武装道具等。相关技术中的射击道具通常是由单人完成的,也即一个人既需要控制该射击道具移动,又需要控制该射击道具的射击,导致操作复杂,降低了用户体验。

发明内容

[0003] 本申请实施例提供一种虚拟道具的控制方法、装置、设备及计算机可读存储介质,能够提高对目标射击道具的控制效率。
[0004] 本申请实施例的技术方案是这样实现的:
[0005] 本申请实施例提供一种虚拟道具的控制方法,包括:
[0006] 在虚拟场景的画面中呈现目标虚拟道具;
[0007] 响应于针对所述目标虚拟道具的操作指令,展示所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面;
[0008] 响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;
[0009] 在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。
[0010] 本申请实施例提供一种虚拟道具的控制装置,包括:
[0011] 第一呈现模块,用于在虚拟场景的画面中呈现目标虚拟道具;
[0012] 展示模块,用于响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的虚拟对象对应所述目标虚拟道具外部的视野画面;
[0013] 控制模块,用于响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;
[0014] 第二呈现模块,用于在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。
[0015] 上述方案中,所述第一呈现模块,还用于在所述虚拟场景的画面中,呈现所述目标虚拟道具的操作控件;
[0016] 当所述操作控件处于激活状态时,响应于针对所述操作控件的触发操作,在所述虚拟场景的画面中呈现目标虚拟道具。
[0017] 上述方案中,所述第一呈现模块,还用于呈现所述虚拟对象在所述虚拟场景中,射击目标对象所取得的成绩;
[0018] 当所述成绩达到成绩阈值时,采用目标样式呈现所述目标虚拟道具的操作控件;
[0019] 其中,所述目标样式用于表征所述目标虚拟道具的操作控件处于所述激活状态。
[0020] 上述方案中,所述第一呈现模块,还用于当包含所述目标虚拟道具的目标区域内存在其它物体时,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具;
[0021] 当包含所述目标虚拟道具的目标区域内不存在其它物体时,以第二呈现样式在虚拟场景的画面中呈现目标虚拟道具;
[0022] 其中,所述第一呈现样式不同于所述第二呈现样式。
[0023] 上述方案中,所述控制模块,还用于在所述虚拟场景的画面中,呈现所述目标虚拟道具的放置控件;
[0024] 接收到针对所述放置控件的触发操作,当目标虚拟道具处于目标位置时,将所述目标虚拟道具固定于所述虚拟场景中的目标位置。
[0025] 上述方案中,所述展示模块,还用于当所述第一虚拟对象与所述目标虚拟道具之间的距离小于距离阈值时,呈现所述目标虚拟道具的控制控件;
[0026] 响应于针对所述控制控件的触发操作,触发针对所述目标虚拟道具的操作指令。
[0027] 上述方案中,所述控制模块,还用于在第二虚拟对象移动所述目标虚拟道具的过程中,同步调整展示的所述视野画面。
[0028] 上述方案中,所述控制模块,还用于呈现所述目标虚拟道具的离开控件;
[0029] 响应于针对所述离开控件的触发操作,控制所述虚拟对象离开所述目标虚拟道具的内部,并
[0030] 展示所述虚拟对象处于所述目标虚拟道具外部时的视野画面。
[0031] 上述方案中,所述第一呈现模块,还用于呈现所述目标虚拟道具的使用时长;
[0032] 当所述目标虚拟道具的使用时长到达时,取消呈现所述目标虚拟道具。
[0033] 上述方案中,所述目标虚拟道具包括用于射击的射击组件和虚拟护盾,所述虚拟护盾位于所述射击组件的周围;
[0034] 所述控制模块,还用于当对所述虚拟对象射击的虚拟子弹射击至所述虚拟护盾时,通过所述虚拟护盾阻挡所述虚拟子弹针对所述虚拟对象的攻击。
[0035] 上述方案中,所述控制模块,还用于呈现虚拟护盾的生命值;
[0036] 在通过所述虚拟道具阻挡所述虚拟子弹针对所述虚拟道具的攻击的过程中,根据虚拟子弹对所述虚拟护盾所造成的伤害,减少所述虚拟护盾的生命值;
[0037] 当所述虚拟护盾的生命值不高于生命值阈值时,呈现所述虚拟护盾失效的提示信息。
[0038] 上述方案中,所述第二呈现模块,还用于呈现目标虚拟道具的虚拟子弹的剩余数量、以及击杀的目标对象数量;
[0039] 当击杀的目标对象数量达到数量阈值时,对目标虚拟道具进行虚拟子弹补充,并更新呈现的虚拟子弹的剩余数量。
[0040] 本申请实施例提供一种电子设备,包括:
[0041] 存储器,用于存储可执行指令;
[0042] 处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的虚拟道具的控制方法。
[0043] 本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的虚拟道具的控制方法。
[0044] 本申请实施例具有以下有益效果:
[0045] 本申请通过响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的第一虚拟对象对应所述目标虚拟道具外部的视野画面;响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程;如此,由于在第一虚拟对象控制目标虚拟道具射击时,由第二虚拟对象移动目标虚拟道具,能够对目标虚拟道具的射击方向位置进行调整,且通过两个虚拟对象合作完成对目标虚拟道具的控制,提高了控制效率,简化了用户的操作。

附图说明

[0046] 图1为本申请实施例提供的虚拟道具的控制方法的一个可选的实施场景示意图;
[0047] 图2为本申请实施例提供的电子设备500的一个可选的结构示意图;
[0048] 图3为本申请实施例提供的虚拟道具的控制方法的一个可选的流程示意图;
[0049] 图4是本申请实施例提供的虚拟道具显示界面示意图;
[0050] 图5是本申请实施例提供的虚拟道具显示界面示意图;
[0051] 图6是本申请实施例提供的虚拟场景的画面示意图;
[0052] 图7A‑7B是本申请实施例提供的目标虚拟道具呈现的界面示意图;
[0053] 图8是本申请实施例提供的目标虚拟道具呈现的界面示意图;
[0054] 图9是本申请实施例提供的目标虚拟道具的放置界面示意图;
[0055] 图10是本申请实施例目标虚拟道具呈现的界面示意图;
[0056] 图11是本申请实施例提供的目标虚拟道具呈现的界面示意图;
[0057] 图12是本申请实施例提供的视野画面呈现的界面示意图;
[0058] 图13是本申请实施例提供的控制控件呈现的界面示意图;
[0059] 图14是本申请实施例提供的目标虚拟道具的示意图;
[0060] 图15是本申请实施例提供的视野画面示意图;
[0061] 图16是本申请实施例提供的目标虚拟道具的示意图;
[0062] 图17是本申请实施例提供的视野画面的示意图;
[0063] 图18是本申请实施例提供的目标虚拟道具的呈现界面示意图;
[0064] 图19是本申请实施例提供的虚拟道具的控制方法的一个可选的流程示意图;
[0065] 图20是本申请实施例提供的虚拟道具的控制方法的流程示意图;
[0066] 图21是本申请提供的目标虚拟道具的设计界面示意图;
[0067] 图22是本申请实施例提供的操作界面示意图;
[0068] 图23是本申请实施例提供的虚拟道具的控制装置的结构示意图。

具体实施方式

[0069] 为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0070] 在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解“, 一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
[0071] 在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
[0072] 除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
[0073] 对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0074] 1)客户端,终端中运行的用于提供各种服务的应用程序,例如视频播放客户端、游戏客户端等。
[0075] 2)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
[0076] 3)虚拟场景,是应用程序在终端上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。虚拟场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本申请实施例对虚拟场景的维度不加以限定。例如,虚拟场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该虚拟场景中进行移动。
[0077] 4)虚拟对象,虚拟场景中可以进行交互的各种人和物的形象,或在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在虚拟场景中显示的人物、动物、植物、油桶、墙壁、石块等。该虚拟对象可以是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象。虚拟场景中可以包括多个虚拟对象,每个虚拟对象在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。
[0078] 可选地,该虚拟对象可以是通过客户端上的操作进行控制的用户角色,也可以是通过训练设置在虚拟场景对战中的人工智能(AI,Artificial Intelligence),还可以是设置在虚拟场景互动中的非用户角色(NPC,Non‑Player Character)。可选地,该虚拟对象可以是在虚拟场景中进行对抗式交互的虚拟人物。可选地,该虚拟场景中参与互动的虚拟对象的数量可以是预先设置的,也可以是根据加入互动的客户端的数量动态确定的。
[0079] 以射击类游戏为例,用户可以控制虚拟对象在该虚拟场景的天空中自由下落、滑翔或者打开降落伞进行下落等,在陆地上中跑动、跳动、爬行、弯腰前行等,也可以控制虚拟对象在海洋中游泳、漂浮或者下潜等,当然,用户也可以控制虚拟对象乘坐虚拟载具在该虚拟场景中进行移动,例如,该虚拟载具可以是虚拟汽车、虚拟飞行器、虚拟游艇等,在此仅以上述场景进行举例说明,本申请实施例对此不作具体限定。用户也可以控制虚拟对象通过虚拟道具与其他虚拟对象进行对抗式的交互,例如,该虚拟道具可以是手雷、集束雷、粘性手雷等投掷类虚拟道具,也可以是机枪、手枪、步枪等射击类虚拟道具,本申请对虚拟道具的类型不作具体限定。
[0080] 5)场景数据,表示虚拟场景中的对象在交互过程中受所表现的各种特征,例如,可以包括对象在虚拟场景中的位置。当然,根据虚拟场景的类型可以包括不同类型的特征;例如,在游戏的虚拟场景中,场景数据可以包括虚拟场景中配置的各种功能时需要等待的时间(取决于在特定时间内能够使用同一功能的次数),还可以表示游戏角色的各种状态的属性值,例如包括生命值(也称为红量)和魔法值(也称为蓝量)等。
[0081] 参见图1,图1为本申请实施例提供的虚拟道具的控制方法的一个可选的实施场景示意图,为实现支撑一个示例性应用,终端(示例性示出了终端400‑1和终端400‑2)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合,使用无线链路实现数据传输。
[0082] 在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content Delivery Network)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
[0083] 在实际实施时,终端安装和运行有支持虚拟场景的应用程序。该应用程序可以是第一人称射击游戏(FPS,First‑Person Shooting game)、第三人称射击游戏、多人在线战术竞技游戏(MOBA,Multiplayer Online Battle Arena game s)、虚拟现实应用程序、三维地图程序、军事仿真程序或者多人枪战类生存游戏中的任意一种。用户使用终端400操作位于虚拟场景中的虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,该虚拟对象是虚拟人物,比如仿真人物角色或动漫人物角色。
[0084] 在一个示例性的场景中,终端400‑1控制的第一虚拟对象和其他终端400‑2控制的第二虚拟对象处于同一虚拟场景中,此时第一虚拟对象可以在虚拟场景中与第二虚拟对象进行互动。在一些实施例中,第一虚拟对象与第二虚拟对象可以为同盟关系,例如,第一虚拟对象与第二虚拟对象属于同一队伍和组织,在虚拟场景中还存在与第一虚拟对象为敌对关系的虚拟对象,敌对关系的虚拟对象之间可以进行,可以在陆地上以互相射击的方式进行对抗式交互。
[0085] 在一个示例性场景中,终端400‑1控制第一虚拟对象与终端400‑2控制的第二虚拟对象共同对其它虚拟对象进行攻击时,在终端上呈现以第一虚拟对象视角对虚拟场景观察得到的虚拟场景的画面,并在虚拟场景的画面中呈现目标虚拟道具;响应于针对目标虚拟道具的操作指令,展示处于目标虚拟道具内部的第一虚拟对象对应目标虚拟道具外部的视野画面;响应于基于视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。
[0086] 其中,虚拟场景的画面中包括对象交互环境、交互对象等,虚拟场景的画面基于虚拟场景数据而得到。在实际实施时,终端400在虚拟场景的画面中呈现第一虚拟对象;当终端400接收到针对目标虚拟道具的操作指令,控制第一虚拟对象进入目标虚拟道具,并展示处于目标虚拟道具内部的第一虚拟对象对应目标虚拟道具外部的视野画面;响应于基于视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;在所述第一虚拟对象使用所述目标虚拟道具射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。
[0087] 在一个示例性场景中,在军事虚拟仿真应用中,采用虚拟场景技术使受训者在视觉和听觉上真实体验战场环境、熟悉将作战区域的环境特征,通过必要的设备与虚拟环境中的对象进行交互作用,虚拟战场环境的实现方法可通过相应的三维战场环境图形图像库,包括作战背景、战地场景、各种武器装备和作战人员等,通过背景生成与图像合成创造一种险象环生、几近真实的立体战场环境。
[0088] 在实际实施时,终端控制第一虚拟对象(如模拟作战人员)对城市A进行攻击时,在终端上呈现以第一虚拟对象视角对虚拟场景观察得到的虚拟场景的画面,并在虚拟场景的画面中呈现目标虚拟道具;响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的虚拟对象对应所述目标虚拟道具外部的视野画面;响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。
[0089] 参见图2,图2为本申请实施例提供的电子设备500的一个可选的结构示意图,在实际应用中,电子设备500可以为图1中的终端400或服务器200,以电子设备为图1所示的终端400为例,对实施本申请实施例的虚拟道具的控制方法的计算机设备进行说明。图2所示的电子设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。
电子设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统540。
[0090] 处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
[0091] 用户接口530包括使得能够呈现媒体内容的一个或多个输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口530还包括一个或多个输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
[0092] 存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
[0093] 存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本申请实施例描述的存储器550旨在包括任意适合类型的存储器。
[0094] 在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
[0095] 操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
[0096] 网络通信模块552,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
[0097] 呈现模块553,用于经由一个或多个与用户接口530相关联的输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
[0098] 输入处理模块554,用于对一个或多个来自一个或多个输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
[0099] 在一些实施例中,本申请实施例提供的虚拟道具的控制装置可以采用软件方式实现,图2示出了存储在存储器550中的虚拟道具的控制装置555,其可以是程序和插件等形式的软件,包括以下软件模块:第一呈现模块5551、展示模块5552、控制模块5553和第二呈现模块5554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
[0100] 将在下文中说明各个模块的功能。
[0101] 在另一些实施例中,本申请实施例提供的虚拟道具的控制装置可以采用硬件方式实现,作为示例,本申请实施例提供的虚拟道具的控制装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的虚拟道具的控制方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field‑Pro grammable Gate Array)或其他电子元件。
[0102] 接下来对本申请实施例的提供的虚拟道具的控制方法进行说明,在实际实施时,本申请实施例提供的虚拟道具的控制方法可由服务器或终端单独实施,还可由服务器及终端协同实施。
[0103] 参见图3,图3为本申请实施例提供的虚拟道具的控制方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。
[0104] 步骤301:终端在虚拟场景的画面中呈现目标虚拟道具。
[0105] 在实际应用中,终端上安装有支持虚拟场景的应用程序。该应用程序可以是第一人称射击游戏、第三人称射击游戏、多人在线战术竞技游戏、虚拟现实应用程序、三维地图程序、军事仿真程序或者多人枪战类生存游戏中的任意一种。用户可以使用终端操作位于虚拟场景中的虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,该虚拟对象是虚拟人物,比如仿真人物角色或动漫人物角色。
[0106] 当玩家打开终端上的应用程序,且终端运行该应用程序时,终端呈现虚拟场景的画面,这里,虚拟场景的画面是以第一人称对象视角对虚拟场景观察得到,或是以第三人称视角对虚拟场景观察得到,虚拟场景的画面中包括交互对象及对象交互环境,如互为敌对关系的第一虚拟对象与第二虚拟对象在虚拟场景中进行互动。
[0107] 这里的目标虚拟道具为虚拟射击道具,用于对目标对象进行射击。在实际实施时,可以在虚拟对象的手部位置呈现目标虚拟道具,也即虚拟对象手持目标虚拟道具;也可以在虚拟场景的画面中,显示虚拟道具状态栏,并在虚拟道具状态栏中呈现目标虚拟道具;还可以通过其他方式呈现目标虚拟道具。
[0108] 在一些实施例中,在虚拟场景的画面中呈现目标虚拟道具之前,还可以通过以下方式确定目标虚拟道具:
[0109] 在虚拟场景的画面中呈现包括至少一个虚拟道具的选择界面;响应于基于选择界面触发的虚拟道具的选择操作,将所选择的虚拟道具确定为目标虚拟道具的操作控件。
[0110] 这里,终端呈现虚拟场景的画面之前或在呈现虚拟场景的画面过程中,终端可呈现用于进行道具选择的选择界面,该选择界面中包括至少一个虚拟道具,其中,虚拟道具可以以操作控件的形式呈现,这里的操作控件为可以是虚拟道具对应的图标,也可以是虚拟道具对应的按键,该选择界面可以为占据整个终端的显示界面,也可以为占据终端的整个显示界面的部分显示界面,如该选择界面可悬浮于对象交互界面上。当玩家触发选择界面中的目标虚拟道具的操作控件后,可以在虚拟场景的画面中呈现目标虚拟道具。
[0111] 在实际实施时,终端在接收到基于选择界面触发的虚拟道具的选择操作时,采用区别于其它虚拟道具的显示样式,显示被选择的虚拟道具,如高亮显示被选择的虚拟道具,同时呈现对应被选择的虚拟道具的确定功能项;当用户触发确定功能项时,终端将被选择的虚拟道具确定为目标虚拟道具。这里,在高亮显示被选择的虚拟道具的同时,还可以呈现目标虚拟道具的介绍。
[0112] 参见图4,图4是本申请实施例提供的虚拟道具显示界面示意图,当用户触发图4示出的虚拟道具的选择界面401上的虚拟道具的操作控件402时,对所选择的操作控件402进行高亮显示,并呈现操作控件402所对应的虚拟道具的介绍信息403;当用户点击确定功能项404后,终端将该虚拟道具确定为目标虚拟道具,并显示“已装备”的提示信息,已告知用户已经将该虚拟道具作为目标虚拟道具。
[0113] 在一些实施例中,可通过以下方式呈现目标虚拟道具:在所述虚拟场景的画面中,呈现所述目标虚拟道具的操作控件;当所述操作控件处于激活状态时,响应于针对所述操作控件的触发操作,在所述虚拟场景的画面中呈现目标虚拟道具。
[0114] 在实际实施时,目标虚拟道具的操作控件默认是无法使用的,也即该目标虚拟道具处于未激活状态,只有当目标虚拟道具的操作控件处于激活状态时,才能够使用该目标虚拟道具。
[0115] 这里,当目标虚拟道具处于激活状态时,用户可以点击该目标虚拟道具的操作控件,以使虚拟对象装备该目标虚拟道具。需要说明的是,这里针对操作控件的触发操作不限于点击,还可以是长按、双击、滑动等操作,这里不做限定。
[0116] 参见图5,图5是本申请实施例提供的虚拟道具显示界面示意图,当虚拟场景的画面中的操作控件处于激活状态时,用户点击该操作控件,将虚拟场景的画面中的虚拟人物所持的虚拟道具501,切换为目标虚拟道具502。
[0117] 在一些实施例中,在虚拟场景的画面中呈现目标虚拟道具之前,终端可以呈现虚拟对象在虚拟场景中,射击目标对象所取得的成绩;当成绩达到成绩阈值时,采用目标样式呈现目标虚拟道具的操作控件;其中,目标样式用于表征目标虚拟道具的操作控件处于激活状态。
[0118] 在实际实施时,射击目标对象所取得的成绩,可以是虚拟对象击杀的目标对象的数量,也可以是虚拟对象射击目标对象所得到的任务积分;还可以是射击目标对象所取得的虚拟资源的资源值。
[0119] 例如,以交互成绩为虚拟对象击杀的其它虚拟对象的数量,当虚拟对象击杀其它虚拟对象的数量为20、且数量阈值为15时,则可激活目标虚拟道具的操作控件,即目标虚拟道具处于可被利用状态,终端可控制虚拟对象使用该目标虚拟道具。
[0120] 示例性地,参见图6,图6是本申请实施例提供的虚拟场景的画面示意图,虚拟对象每击杀一个目标对象,能够获得相应的分数,当虚拟对象连续击杀多个目标对象时,能够获得加倍的分数,图中601为获得的分数,也即设计目标对象所获得的成绩;当获得的分数达到成绩阈值时,目标虚拟对象的操作控件602由灰色变为高亮,以表征目标虚拟道具的操作控件处于激活状态。
[0121] 在一些实施例中,可以通过以下方式呈现目标虚拟道具:
[0122] 当包含所述目标虚拟道具的目标区域内存在其它物体时,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具;当包含所述目标虚拟道具的目标区域内不存在其它物体时,以第二呈现样式在虚拟场景的画面中呈现目标虚拟道具;其中,所述第一呈现样式不同于所述第二呈现样式。
[0123] 在实际实施时,当包含目标虚拟道具的目标区域内存在其它物体,说明目标虚拟道具不能被放置在当前位置;相对的,当包含目标虚拟道具的目标区域内存在其它物体,说明目标虚拟道具不能被放置在当前位置。这里,采用第一呈现样式表征目标虚拟道具为不可放置状态,采用第二呈现样式表征目标虚拟道具为可放置状态。
[0124] 参见图7A‑7B,图7A‑7B是本申请实施例提供的目标虚拟道具呈现的界面示意图,图7A中包含目标虚拟道具的目标区域内不存在其它物体,图7B中包含目标虚拟道具的目标区域内存在墙壁,也即,图7A中的目标虚拟道具为可放置状态,图7B中的目标虚拟道具为不可放置状态,因此,图7A中目标虚拟道具的呈现样式不同于图7B中目标虚拟道具的呈现样式。
[0125] 在一些实施例中,终端可以确定包含目标虚拟道具的一个长方体区域,当该长方体区域与其它物体交叉时,确定目标虚拟道具不能被放置在当前位置,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具;当该长方体区域与其它物体未交叉时,确定目标虚拟道具可以被放置在当前位置,以第二呈现样式在虚拟场景的画面中呈现目标虚拟道具。
[0126] 在实际实施时,设置一个包含目标虚拟道具的长方体区域,并对每一帧虚拟场景的画面进行检测,当检测到该长方体区域与其它物品交叉时,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具;相应的,当检测到该长方体区域未与其它物品交叉时,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具。
[0127] 参见图8,图8是本申请实施例提供的目标虚拟道具呈现的界面示意图,确定包含目标虚拟道具801的长方体区域802,有图可知,长方体区域802与墙体交叉,也即目标虚拟道具不能放置在当前位置,这时,可以采用红色(第一呈现样式)呈现目标虚拟道具,以提示用户当前位置不能放置目标虚拟道具。
[0128] 在一些实施例中,在展示处于目标虚拟道具内部的第一虚拟对象对应目标虚拟道具外部的视野画面之前,终端响应于针对目标虚拟道具的位置调整指令,将目标虚拟道具固定于虚拟场景中位置调整指令所指示的目标位置。
[0129] 在实际实施时,目标虚拟道具需要被固定在某一位置后,才能够用于射击。当目标虚拟道具刚被呈现于虚拟场景的画面中时,其处于预放置状态,用户需要触发目标虚拟道具的位置调整指令,将其固定于虚拟场景中位置调整指令所指示的目标位置,才能够进一步控制目标虚拟道具射击。
[0130] 在一些实施例中,终端还可以在所述虚拟场景的画面中,呈现所述目标虚拟道具的放置控件;接收到针对所述放置控件的触发操作,当目标虚拟道具处于目标位置时,将所述目标虚拟道具固定于所述虚拟场景中的目标位置。
[0131] 在实际实施时,终端可以接收用户触发的移动指令,控制目标虚拟道具移动,当目标虚拟道具被移动到用户想要放置该目标虚拟道具的位置时,就可以执行针对放置控件的触发操作,以控制第一虚拟对象将目标虚拟道具固定于当前位置。
[0132] 这里,仅当目标虚拟道具为可放置状态时,才能够触发针对目标虚拟道具的位置调整指令,也即,当目标虚拟道具所处的位置是不可以放置该目标虚拟道具的位置时,即使用户执行了针对放置控件的触发操作,也无法触发针对目标虚拟道具的位置调整指令。
[0133] 参见图9,图9是本申请实施例提供的目标虚拟道具的放置界面示意图,在虚拟场景的画面中,呈现放置控件901,当接收到针对该放置控件的触发操作,控制虚拟对象将目标虚拟道具固定于当前放置控件所处的位置。这里,在接收到针对放置控件的触发操作时,目标虚拟道具所处的位置就是目标位置。
[0134] 在一些实施例中,可以通过以下方式将目标虚拟道具固定于所述虚拟场景中所述位置调整指令所指示的目标位置:呈现虚拟固定支架,并通过所述虚拟固定支架,将所述目标虚拟道具固定于所述虚拟场景中所述位置调整指令所指示的目标位置。
[0135] 在实际实施时,通过虚拟固定支架对目标虚拟道具进行固定,如三角固定支架,参见图10,图10是本申请实施例目标虚拟道具呈现的界面示意图,目标虚拟道具1001通过三角固定支架1002固定在目标位置。
[0136] 在一些实施例中,在将目标虚拟道具固定于虚拟场景中位置调整指令所指示的目标位置后,终端还可以呈现所述目标虚拟道具的位置调整控件;响应于针对所述位置调整控件的触发操作,控制所述虚拟对象握持所述目标虚拟道具;响应于针对所述目标虚拟道具的移动指令,根据所述移动指令,展示所述虚拟对象握持所述目标虚拟道具移动的过程。
[0137] 在实际实施时,在将目标虚拟道具固定于虚拟场景中位置调整指令所指示的目标位置之后,还可以对固定目标虚拟道具的位置进行调整,也即,控制虚拟对象将目标虚拟道具拿起来,使虚拟对象握持目标虚拟道具;然后通过针对目标虚拟道具的指令,控制虚拟对象握持目标虚拟道具移动,也即虚拟对象与目标虚拟道具是一同移动的,并展示虚拟对象握持所述目标虚拟道具移动的过程。
[0138] 这里,当虚拟对象将目标虚拟道具拿起来后,目标虚拟道具处于预放置状态,当控制虚拟对象将目标虚拟道具移动至用户想要放置目标虚拟道具的位置时,可以触发目标虚拟道具的位置调整指令,将其固定于虚拟场景中相应的位置。
[0139] 例如,参见图11,图11是本申请实施例提供的目标虚拟道具呈现的界面示意图,当目标虚拟道具已经被固定在目标位置时,在虚拟场景的画面中呈现位置调整控件1101,当用户点击位置调整控件1101,控制虚拟对象握持目标虚拟道具;此时,可以控制虚拟对象握持目标虚拟道具移动。
[0140] 步骤302:响应于针对目标虚拟道具的操作指令,展示处于目标虚拟道具内部的第一虚拟对象对应目标虚拟道具外部的视野画面。
[0141] 这里,第一虚拟对象为当前终端控制的虚拟对象。在实际实施时,当接收到针对目标虚拟道具的操作指令,控制第一虚拟对象进入目标虚拟道具的内部,并展示虚拟对象在目标虚拟道具内部观察到的画面,也即第一虚拟对象从目标虚拟道具内部观察到的目标虚拟道具外部的视野画面。
[0142] 其中,控制第一虚拟对象进入目标虚拟道具的内部,指的是控制第一虚拟对象与目标虚拟道具融为一体,也即将目标虚拟道具挂载在第一虚拟对象手的节点上,以使第一虚拟对象能够操作目标虚拟道具,如控制目标虚拟道具射击。
[0143] 这里,在展示虚拟对象从目标虚拟道具内部观察到的目标虚拟道具外部的视野画面的同时,还可以展示目标虚拟道具的内部画面,参见图12,图12是本申请实施例提供的视野画面呈现的界面示意图,当接收到针对目标虚拟道具的操作指令,展示目标虚拟道具的内部画面1201,以及处于目标虚拟道具内部的虚拟对象对应目标虚拟道具外部的视野画面1202。
[0144] 在一些实施例中,当第一虚拟对象所处位置与目标位置之间的距离小于距离阈值时,呈现目标虚拟道具的控制控件;响应于针对控制控件的触发操作,触发针对目标虚拟道具的操作指令。
[0145] 在实际实施时,目标虚拟道具可以是被放置在虚拟场景中的目标位置,终端可以控制第一虚拟对象向目标虚拟道具移动,在虚拟对象移动的过程中,实时监测第一虚拟对象与目标虚拟道具之间的距离,仅当第一虚拟对象与目标虚拟道具之间的距离小于距离阈值时,也即第一虚拟对象处于目标虚拟道具附近时,才会呈现目标虚拟道具的控制控件,以使用户可以通过触发控制控件来触发针对目标虚拟道具的操作指令。
[0146] 这里,终端会实时监测第一虚拟对象所处位置,并获取第一虚拟对象所处位置与目标位置之间的距离,当第一虚拟对象移动到与目标位置之间的距离小于距离阈值的位置时,认为第一虚拟对象处于目标虚拟道具附近,呈现目标虚拟道具的控制控件;当第一虚拟对象移动到与目标位置之间的距离大于距离阈值的位置,认为第一虚拟对象不在目标虚拟道具附近,取消呈现目标虚拟道具的控制控件。
[0147] 例如,图13是本申请实施例提供的控制控件呈现的界面示意图,参见图13,当虚拟对象距离目标虚拟道具较远时,未呈现控制控件;当虚拟对象移动到目标虚拟道具附近时,呈现目标虚拟道具的控制控件1301。
[0148] 在一些实施例中,目标虚拟道具上会挂载至少一个碰撞盒子,当虚拟对象碰撞到目标虚拟道具上的碰撞盒子时,就认为虚拟对象处于目标虚拟道具附近,呈现目标虚拟道具的控制控件。参见图14,图14是本申请实施例提供的目标虚拟道具的示意图,目标虚拟道具上挂载了多个碰撞盒子。
[0149] 步骤303:响应于基于视野画面触发的射击指令,控制第一虚拟对象使用目标虚拟道具进行射击。
[0150] 这里,射击指令可以由用户触发射击控件生成,这里的射击控件可以为开火按键,针对射击控件的触发方式可以是点击、双击、长按、滑动中的至少一种;射击指令也可以是通过识别用户的语音指令或肢体动作生成。
[0151] 在实际实施时,在控制第一虚拟对象使用目标虚拟道具进行射击的过程中,终端会获取第一虚拟对象使用目标虚拟道具进行射击的多帧图像,将获取到的多帧图像进行渲染,以在图形界面中展示第一虚拟对象使用目标虚拟道具进行射击的动态过程。
[0152] 步骤304:在第一虚拟对象使用目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动目标虚拟道具,以改变目标虚拟道具的位置的过程。
[0153] 在实际实施时,在目标虚拟道具进行射击的过程中,控制第二虚拟对象的用户,可以通过相应的终端触发针对目标虚拟道具的移动指令,以控制第二虚拟对象移动目标虚拟道具;在第二虚拟道具对象移动目标虚拟道具的过程中,控制第一虚拟对象的终端上会呈现第二虚拟道具移动目标虚拟道具,以改变目标虚拟道具的位置的过程。
[0154] 其中,针对目标虚拟道具的移动指令可以是用户触发滑动轮盘生成,也可以是用户滑动屏幕生成,这里不对移动指令的生成方式进行限定。
[0155] 在一些实施例中,终端在第二虚拟对象移动目标虚拟道具的过程中,同步调整展示的视野画面。
[0156] 这里,第二虚拟对象移动目标虚拟道具时,目标虚拟道具的位置会随之变化,第一虚拟对象从目标虚拟道具内部观察到的目标虚拟道具外部的视野画面也会发生变化。
[0157] 作为示例,参见图15,图15是本申请实施例提供的视野画面示意图,图15中展示的是第一虚拟对象从目标虚拟道具内部观察到的目标虚拟道具外部的视野画面,第一虚拟对象在目标虚拟道具内部控制目标虚拟道具射击,同时,第二虚拟对象1501位于目标虚拟道具外部控制目标虚拟道具移动,在移动的过程中,呈现的视野画面随之改变,也即,目标虚拟对象1502本来位于瞄准镜的左侧,第二虚拟对象1501控制目标虚拟道具移动后,目标虚拟对象位于瞄准镜中,如此,当第一虚拟对象控制目标虚拟道具射击时,就能够射击到目标虚拟对象。
[0158] 这里,在第二虚拟对象移动目标虚拟道具时,实际上是将目标虚拟道具挂载在第二虚拟对象手的节点上,使得虚拟对象可以推动该目标虚拟道具、或旋转该目标虚拟道具。参见图16,图16是本申请实施例提供的目标虚拟道具的示意图,由代码1601可知,目标虚拟道具挂载在虚拟对象手的节点上。
[0159] 在一些实施例中,终端还可以呈现所述目标虚拟道具的离开控件;响应于针对所述离开控件的触发操作,控制所述虚拟对象离开所述目标虚拟道具的内部,并展示所述虚拟对象处于所述目标虚拟道具外部时的视野画面。
[0160] 在实际实施时,当虚拟对象处于目标虚拟道具内部时,可以呈现离开控件,当用户点击该离开控件时,控制虚拟对象离开该目标虚拟道具,由于虚拟对象从目标虚拟道具内部移动到了目标虚拟道具外部,其对应的视野画面也会发生改变,这里展示的画面由虚拟对象处于所述目标虚拟道具内部时的视野画面,切换为虚拟对象处于所述目标虚拟道具外部时的视野画面。
[0161] 图17是本申请实施例提供的视野画面的示意图,参见图17,展示的画面由虚拟对象处于所述目标虚拟道具内部时的视野画面、及离开控件1701,当用户点击离开控件,展示的画面由虚拟对象处于所述目标虚拟道具外部时的视野画面,并对虚拟对象握持的虚拟道具进行切换。
[0162] 在一些实施例中,终端还可以呈现目标虚拟道具的使用时长;当目标虚拟道具的使用时长到达时,取消呈现所述目标虚拟道具。
[0163] 在实际实施时,目标虚拟道具只能够在固定时长内使用,也即当目标虚拟道具呈现后,会对目标虚拟道具的使用时长进行计时,当目标虚拟的使用时长达到了所能使用的时长,自动取消呈现目标虚拟道具。
[0164] 图18是本申请实施例提供的目标虚拟道具的呈现界面示意图,参见图18,在虚拟场景的画面中,以倒计时的形式呈现目标虚拟道具的使用时长,当倒计时到零时,取消呈现目标虚拟道具。
[0165] 在一些实施例中,目标虚拟道具包括用于射击的射击组件和虚拟护盾,虚拟护盾位于所述射击组件的周围;当对所述第一虚拟对象射击的虚拟子弹射击至所述虚拟护盾时,通过所述虚拟护盾阻挡所述虚拟子弹针对所述第一虚拟对象的攻击。
[0166] 参见图10,可以看到目标虚拟道具1001,包括射击组件1001A和虚拟护盾1001B,虚拟护盾1001B位于所述射击组件的周围。在实际实施时,虚拟护盾用于阻挡敌人的攻击,也即,若敌人对虚拟对象射击的虚拟子弹的路线经过虚拟互动时,虚拟互动就能够阻挡该虚拟子弹对虚拟对象的攻击。
[0167] 需要说明的是,在第一虚拟对象手持目标虚拟道具、或第一虚拟对象位于目标虚拟道具内部时,均可以通过虚拟护盾阻挡虚拟子弹对第一虚拟对象的攻击。
[0168] 在一些实施例中,呈现虚拟护盾的护盾值;在通过所述虚拟道具阻挡所述虚拟子弹针对所述虚拟道具的攻击的过程中,根据虚拟子弹对所述虚拟护盾所造成的伤害,减少所述虚拟护盾的护盾值;当所述虚拟护盾的护盾值不高于护盾值阈值时,呈现所述虚拟护盾失效的提示信息。
[0169] 在实际应用中,虚拟护盾所能抵挡的伤害是有限的,在虚拟护盾承受的总伤害达到一定阈值时,就不能够再用于阻挡虚拟子弹的攻击。这里护盾值的初始值就是所能抵挡的总伤害,每受到一次虚拟子弹的攻击,就会减少相应数值的护盾值;当护盾值不高于护盾值阈值时,就不能够再抵挡虚拟子弹攻击,通过呈现虚拟护盾的提示信息告知用户其不能够再抵挡伤害。
[0170] 在一些实施例中,终端呈现目标虚拟道具的虚拟子弹的剩余数量、以及击杀的目标对象数量;当击杀的目标对象数量达到数量阈值时,对目标虚拟道具进行虚拟子弹补充,并更新呈现的虚拟子弹的剩余数量。
[0171] 在实际实施时,目标虚拟道具中虚拟子弹的数量是有限的,在目标虚拟道具射击的过程中,虚拟子弹的剩余数量不断减少,在虚拟子弹用完之前,若第一虚拟对象通过目标虚拟道具击杀了足够多的目标对象,就能够获得虚拟子弹,以对目标虚拟道具进行虚拟子弹补充。
[0172] 本申请通过响应于针对所述目标虚拟道具的位置调整指令,将所述目标虚拟道具固定于所述虚拟场景中所述位置调整指令所指示的目标位置;响应于针对所述目标虚拟道具的操作指令,展示所述目标虚拟道具的内部画面,以及所述目标虚拟道具位于所述目标位置时,处于所述目标虚拟道具内部的虚拟对象对应所述目标虚拟道具外部的视野画面;响应于基于所述视野画面触发的针对目标对象的射击指令,控制所述目标虚拟道具射击所述目标对象;如此,在将目标虚拟道具固定于目标位置时,可以控制虚拟对象进入虚拟道具内部,进而根据处于所述目标虚拟道具内部的虚拟对象对应所述目标虚拟道具外部的视野画面,来控制目标虚拟道具射击目标对象,使得用户能够自主操作和控制目标虚拟道具,提高了对目标虚拟道具的射击准确性。
[0173] 下面继续说明本申请实施例提供的虚拟道具的一个可选的控制方法,该虚拟道具的控制方法由终端及服务器协同实施,图19是本申请实施例提供的虚拟道具的控制方法的流程示意图,参见图19,本申请实施例提供的虚拟道具的控制方法包括:
[0174] 步骤1901:终端呈现开始游戏按键。
[0175] 步骤1902:终端响应于针对游戏按键的点击操作,发送虚拟场景的场景数据的获取请求至服务器。
[0176] 步骤1903:服务器将场景数据发送给终端。
[0177] 步骤1904:终端基于接收到的场景数据进行渲染,呈现虚拟场景的画面。
[0178] 步骤1905:呈现第一虚拟对象在虚拟场景中,射击目标对象所取得的成绩。
[0179] 步骤1906:当成绩达到成绩阈值时,高亮显示目标虚拟道具的操作控件。
[0180] 步骤1907:响应于针对操作控件的点击操作,向服务器发送目标虚拟道具的获取请求。
[0181] 步骤1908:服务器根据用户的账户信息,获取用户所选取的目标虚拟道具的数据,并发送给终端。
[0182] 步骤1909:终端基于目标虚拟道具的数据进行渲染,并呈现目标虚拟道具。
[0183] 步骤1910:当第一虚拟对象所处位置与目标位置之间的距离小于距离阈值时,呈现目标虚拟道具的控制控件。
[0184] 步骤1911:响应于针对控制控件的触发操作,展示处于目标虚拟道具内部的第一虚拟对象对应目标虚拟道具外部的视野画面。
[0185] 步骤1912:接收到针对目标虚拟道具的射击指令,控制第一虚拟对象使用目标虚拟道具进行射击的过程。
[0186] 步骤1913:在第一虚拟对象使用目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动目标虚拟道具,以改变目标虚拟道具的位置的过程。
[0187] 步骤1914:当目标虚拟道具的使用时长到达时,取消呈现目标虚拟道具。
[0188] 下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。本申请提供一种虚拟道具的控制方法,用户在放置目标虚拟道具后,可以控制第一虚拟对象进入该目标虚拟道具;进入后可以控制目标虚拟道具进行射击,在控制目标虚拟道具射击的过程中,控制第二虚拟对象的用户可以控制第二虚拟对象移动目标虚拟道具,以改变目标虚拟道具的位置;并且,该目标虚拟道具上面设置有一个防护盾牌,可抵挡敌人的攻击。如此,使得能够通过合作控制目标虚拟道具的移动及射击。
[0189] 图20是本申请实施例提供的虚拟道具的控制方法的流程示意图,参见图20,本申请实施例提供的虚拟道具的控制方法包括:
[0190] 步骤2001:装备目标虚拟道具。
[0191] 在实际实施时,用户首先需要装备该目标虚拟道具,并进入到游戏中进行对战。这里,目标虚拟道具为手动机关枪,其不同于常规的主武器或副武器,属于比较强大的功能性武器,因而将其归类为大招技能武器,每个用户在游戏开始之前都能装备一个连杀技能武器。在实际应用中,可以通过虚拟道具的选择界面装备目标虚拟道具。
[0192] 例如,参见图4,当用户触发图4示出的虚拟道具的选择界面401上的虚拟道具的操作控件402时,对所选择的操作控件402进行高亮显示,并呈现操作控件402所对应的虚拟道具的介绍信息403;当用户点击确定功能项404后,终端将该虚拟道具确定为目标虚拟道具,并显示“已装备”的提示信息,已告知用户已经将该虚拟道具作为目标虚拟道具。
[0193] 步骤2002:判断是否击杀敌人,若是执行步骤2003;否则,执行步骤2001。
[0194] 步骤2003:获得分数。
[0195] 步骤2004:判断分数是否达到分数阈值,若是,执行步骤2005;否则,执行步骤2003。
[0196] 步骤2005:高亮显示目标虚拟道具的操作控件。
[0197] 当装备了目标虚拟道具之后,会在虚拟场景的画面中呈现目标虚拟道具的操作控件。目标虚拟道具的操作控件默认是无法使用的,也即该目标虚拟道具处于未激活状态。要使用该目标虚拟道具必须先激活目标虚拟道具,而激活该目标虚拟道具的方式就是获得足够多的奖励分数,而获得分数的方式就是击杀足够多的敌人。在实际应用中,每击杀一个敌人就能够获得一个分数,如果想获得多倍的分数需要在短时间内多个敌人,也即连续击杀,当得到的分数达到分数阈值时,目标虚拟道具的操作控件就会高亮显示,以告知用户,该目标虚拟道具已经被激活。
[0198] 这里,每个虚拟道具所需要的分数都不一样,通常越强大的虚拟道具需要的分数越多,相应的要激活所需要的时间就会越久,当用户的分数足够的时候就会激活该虚拟道具。
[0199] 步骤2006:判断是否接收到针对操作控件的点击操作,若是,执行步骤2007;否则,返回步骤2005。
[0200] 步骤2007:进入预放置状态。
[0201] 这里,当用户点击该操作控件,就会进入预放置状态。在预放置状态下,呈现目标虚拟道具的模型。
[0202] 步骤2008:判断是否可放置,若是,执行步骤2009;否者执行步骤2010。
[0203] 这里,以模型中心点为原点,设置一个长方体范围;然后对每一帧图像,检测该长方体是否有碰撞到障碍物,如果有,则表示交叉了,无法进行放置,并显示红色模型,以提示用户当前位置不可放置目标虚拟道具;否则,表示没有交叉,可以进行放置,显示蓝色模型,以提示用户当前位置可放置目标虚拟道具。参见图21,图21是本申请提供的目标虚拟道具的设计界面示意图,由图21中的2101可知,该更换颜色的方式并非是更换了一个模型,而是直接替换了材质。
[0204] 步骤2009:显示蓝色模型。
[0205] 步骤2010:显示红色模型。
[0206] 步骤2011:判断是否移动位置,若是,执行步骤1908;否则,执行步骤1910。
[0207] 这里,可以控制虚拟对象移动,在虚拟对象移动的同时,目标虚拟道具的模型也随之移动。
[0208] 步骤2012:判断是否点击开火键,若是,执行步骤1913;否则,执行步骤1909。
[0209] 这里,在预放置状态下,开火键用于在接收到触发操作时,控制虚拟对象将目标虚拟道具放置到当前位置。
[0210] 步骤2013:放置目标虚拟道具。
[0211] 这里,将目标虚拟道具固定在当前位置。
[0212] 步骤2014:判断是否靠近目标虚拟道具,若是,执行步骤1915;否则,步骤2013。
[0213] 在实际应用中,目标虚拟道具上会挂载至少一个碰撞盒子,当虚拟对象碰撞到目标虚拟道具上的碰撞盒子时,就认为虚拟对象靠近。参见图14,目标虚拟道具1401上挂载了多个碰撞盒子。
[0214] 步骤2015:显示操作界面。
[0215] 这里,在放置目标虚拟道具之后,可以控制虚拟对象移动,此时,虚拟对象移动的过程中,目标虚拟道具所处的位置是不变的,仅在虚拟对象处于目标虚拟道具附近时,才会呈现操作界面。其中,操作界面中包括操作按键(控制控件)和拿起按键(位置调整控件)。图22是本申请实施例提供的操作界面示意图,参见图22,操作界面中包括制控件2201和位置调整控件2202。
[0216] 这里的操作按键用于在接收到触发操作时,控制虚拟对象进入目标虚拟道具内部;拿起按键用于在接收到触发操作时,回到预放置状态,这样可以重新选择目标虚拟道具放置的位置并执行放置操作。
[0217] 步骤2016:判断是否接收到针对操作按键的点击操作,若是,执行步骤1917;否则,执行步骤2015。
[0218] 步骤2017:控制进入目标虚拟道具内部。
[0219] 这里,当第一虚拟对象进入目标虚拟道具内部时,可以通过第一虚拟对象控制目标虚拟道具进行射击;在第一虚拟对象射击的过程中,控制第二虚拟对象的用户,可以控制第二虚拟对象移动目标虚拟道具,以改变目标虚拟道具的位置。
[0220] 这里,第二虚拟对象移动目标虚拟道具时,目标虚拟道具的位置会随之变化,第一虚拟对象从目标虚拟道具内部观察到的目标虚拟道具外部的视野画面也会发生变化。
[0221] 这里,在第二虚拟对象移动目标虚拟道具时,实际上是将目标虚拟道具挂载在第二虚拟对象手的节点上,使得虚拟对象可以推动该目标虚拟道具、或旋转该目标虚拟道具。在一些实施例中,在虚拟对象进入目标虚拟道具内部时,还可以呈现离开按键,当用户点击离开按键时,控制虚拟道具离开目标虚拟道具内部。
[0222] 步骤2018:判断使用时间是否结束,若是,执行步骤1919;否则,执行步骤2017。
[0223] 目标虚拟道具中虚拟子弹的数量是有限的,在目标虚拟道具射击的过程中,虚拟子弹的剩余数量不断减少,在虚拟子弹用完之前,若第一虚拟对象通过目标虚拟道具击杀了足够多的目标对象,就能够获得虚拟子弹,以对目标虚拟道具进行虚拟子弹补充。
[0224] 另外,该目标虚拟道具包括虚拟盾牌,可以减少被敌人攻击的伤害。在实际应用中,虚拟护盾所能抵挡的伤害是有限的,在虚拟护盾承受的总伤害达到一定阈值时,就不能够再用于阻挡虚拟子弹的攻击。这里护盾值的初始值就是所能抵挡的总伤害,每受到一次虚拟子弹的攻击,就会减少相应数值的护盾值;当护盾值不高于护盾值阈值时,就不能够再抵挡虚拟子弹攻击,通过呈现虚拟护盾的提示信息告知用户其不能够再抵挡伤害。
[0225] 步骤2019:取消呈现目标虚拟道具。
[0226] 本申请实施例能够通过合作控制目标虚拟道具的移动及射击,提高控制效率。
[0227] 参见图23,图23为本申请实施例提供的虚拟道具的控制装置的结构组成示意图,如图23所示,本申请实施例提供的虚拟道具的控制装置555,包括:
[0228] 第一呈现模块5551,用于在虚拟场景的画面中呈现目标虚拟道具;
[0229] 展示模块5552,用于响应于针对所述目标虚拟道具的操作指令,展示处于所述目标虚拟道具内部的虚拟对象对应所述目标虚拟道具外部的视野画面;
[0230] 控制模块5553,用于响应于基于所述视野画面触发的射击指令,控制所述第一虚拟对象使用所述目标虚拟道具进行射击;
[0231] 第二呈现模块4554,用于在所述第一虚拟对象使用所述目标虚拟道具进行射击的过程中,呈现第二虚拟对象移动所述目标虚拟道具,以改变所述目标虚拟道具的位置的过程。
[0232] 在一些实施例中,所述第一呈现模块5551,还用于在所述虚拟场景的画面中,呈现所述目标虚拟道具的操作控件;
[0233] 当所述操作控件处于激活状态时,响应于针对所述操作控件的触发操作,在所述虚拟场景的画面中呈现目标虚拟道具。
[0234] 在一些实施例中,所述第一呈现模块5551,还用于呈现所述虚拟对象在所述虚拟场景中,射击目标对象所取得的成绩;
[0235] 当所述成绩达到成绩阈值时,采用目标样式呈现所述目标虚拟道具的操作控件;
[0236] 其中,所述目标样式用于表征所述目标虚拟道具的操作控件处于所述激活状态。
[0237] 在一些实施例中,所述第一呈现模块5551,还用于当包含所述目标虚拟道具的目标区域内存在其它物体时,以第一呈现样式在虚拟场景的画面中呈现目标虚拟道具;
[0238] 当包含所述目标虚拟道具的目标区域内不存在其它物体时,以第二呈现样式在虚拟场景的画面中呈现目标虚拟道具;
[0239] 其中,所述第一呈现样式不同于所述第二呈现样式。
[0240] 在一些实施例中,所述控制模块5553,还用于在所述虚拟场景的画面中,呈现所述目标虚拟道具的放置控件;
[0241] 接收到针对所述放置控件的触发操作,当目标虚拟道具处于目标位置时,将所述目标虚拟道具固定于所述虚拟场景中的目标位置。
[0242] 在一些实施例中,所述展示模块5552,还用于当所述第一虚拟对象与所述目标虚拟道具之间的距离小于距离阈值时,呈现所述目标虚拟道具的控制控件;
[0243] 响应于针对所述控制控件的触发操作,触发针对所述目标虚拟道具的操作指令。
[0244] 在一些实施例中,所述控制模块5553,还用于在第二虚拟对象移动所述目标虚拟道具的过程中,同步调整展示的所述视野画面。
[0245] 在一些实施例中,所述控制模块5553,还用于呈现所述目标虚拟道具的离开控件;
[0246] 响应于针对所述离开控件的触发操作,控制所述虚拟对象离开所述目标虚拟道具的内部,并
[0247] 展示所述虚拟对象处于所述目标虚拟道具外部时的视野画面。
[0248] 在一些实施例中,所述第一呈现模块5551,还用于呈现所述目标虚拟道具的使用时长;
[0249] 当所述目标虚拟道具的使用时长到达时,取消呈现所述目标虚拟道具。
[0250] 在一些实施例中,所述目标虚拟道具包括用于射击的射击组件和虚拟护盾,所述虚拟护盾位于所述射击组件的周围;
[0251] 所述控制模块5553,还用于当对所述虚拟对象射击的虚拟子弹射击至所述虚拟护盾时,通过所述虚拟护盾阻挡所述虚拟子弹针对所述虚拟对象的攻击。
[0252] 在一些实施例中,所述控制模块5553,还用于呈现虚拟护盾的生命值;
[0253] 在通过所述虚拟道具阻挡所述虚拟子弹针对所述虚拟道具的攻击的过程中,根据虚拟子弹对所述虚拟护盾所造成的伤害,减少所述虚拟护盾的生命值;
[0254] 当所述虚拟护盾的生命值不高于生命值阈值时,呈现所述虚拟护盾失效的提示信息。
[0255] 在一些实施例中,所述第二呈现模块5554,还用于呈现目标虚拟道具的虚拟子弹的剩余数量、以及击杀的目标对象数量;
[0256] 当击杀的目标对象数量达到数量阈值时,对目标虚拟道具进行虚拟子弹补充,并更新呈现的虚拟子弹的剩余数量。
[0257] 本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的虚拟道具的控制方法。
[0258] 本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图3示出的方法。
[0259] 在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EP ROM、EEPROM、闪存、磁表面存储器、光盘、或CD‑ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0260] 在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0261] 作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(H TML,Hyper Text Markup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0262] 作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0263] 以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。