道具特效显示方法、装置、计算机设备及存储介质与流程

文档序号:29088037发布日期:2022-03-02 01:56阅读:219来源:国知局

1.本技术实施例涉及计算机技术领域,特别涉及一种道具特效显示方法、装置、计算机设备及存储介质。


背景技术:

2.随着计算机技术的发展,网络游戏越来越丰富多样。在网络游戏中,任一虚拟道具被触发时,会显示虚拟道具的道具特效,以提升显示效果。但对于多个虚拟道具被触发的情况,需要显示多个虚拟道具的道具特效,这样需要占用较多的资源。


技术实现要素:

3.本技术实施例提供了一种道具特效显示方法、装置、计算机设备及存储介质,能够节省显示道具特效所需占用的资源。所述技术方案如下:
4.一方面,提供了一种道具特效显示方法,所述方法包括:
5.显示本端设备控制的第一虚拟对象的视野画面;
6.在被触发的虚拟道具位于所述第一虚拟对象的视野内且所述虚拟道具与所述第一虚拟对象之间的距离不大于目标距离的情况下,显示所述虚拟道具的道具特效;
7.在被触发的虚拟道具位于所述视野内且所述虚拟道具与所述第一虚拟对象之间的距离大于所述目标距离的情况下,不显示所述虚拟道具的道具特效。
8.另一方面,提供了一种道具特效显示装置,所述装置包括:
9.显示模块,用于显示本端设备控制的第一虚拟对象的视野画面;
10.所述显示模块,还用于在被触发的虚拟道具位于所述第一虚拟对象的视野内且所述虚拟道具与所述第一虚拟对象之间的距离不大于目标距离的情况下,显示所述虚拟道具的道具特效;
11.所述显示模块,还用于在被触发的虚拟道具位于所述视野内且所述虚拟道具与所述第一虚拟对象之间的距离大于所述目标距离的情况下,不显示所述虚拟道具的道具特效。
12.在另一种可能实现方式中,所述显示模块,用于在所述虚拟道具被触发、手持所述虚拟道具的第二虚拟对象位于所述视野内且所述第二虚拟对象与所述第一虚拟对象之间的距离不大于所述目标距离的情况下,显示所述虚拟道具的道具特效。
13.在另一种可能实现方式中,所述显示模块,用于在任一虚拟枪械被触发、手持所述虚拟枪械的第二虚拟对象位于所述视野内且所述第二虚拟对象与所述第一虚拟对象之间的距离不大于所述目标距离的情况下,显示所述虚拟枪械的开火特效。
14.在另一种可能实现方式中,所述显示模块,用于在所述虚拟道具被触发后在所述视野内移动且所述虚拟道具与所述第一虚拟对象之间的距离不大于所述目标距离的情况下,显示所述虚拟道具的道具特效。
15.在另一种可能实现方式中,所述显示模块,用于在任一虚拟子弹被射出后在所述
视野内移动且所述虚拟子弹与所述第一虚拟对象之间的距离不大于所述目标距离的情况下,显示所述虚拟子弹的移动特效。
16.在另一种可能实现方式中,所述显示模块,用于在所述虚拟道具被触发后与任一虚拟物品接触、接触位置在所述视野内且所述接触位置与所述第一虚拟对象的位置之间的距离不大于所述目标距离的情况下,在所述接触位置显示所述虚拟道具的道具特效。
17.在另一种可能实现方式中,所述显示模块,用于在任一虚拟子弹被射出后与所述虚拟物品接触、接触位置在所述视野内且所述接触位置与所述第一虚拟对象的位置之间的距离不大于所述目标距离的情况下,在所述接触位置显示所述虚拟子弹的弹孔特效。
18.在另一种可能实现方式中,所述显示模块,包括:
19.确定单元,用于在所述虚拟子弹被射出后与所述虚拟物品接触、所述接触位置在所述视野内且所述接触位置与所述第一虚拟对象的位置之间的距离不大于所述目标距离的情况下,确定与所述虚拟物品匹配的弹孔特效;
20.显示单元,用于在所述接触位置显示所确定的弹孔特效。
21.在另一种可能实现方式中,所述装置还包括:
22.获取模块,用于在所述虚拟道具被触发的情况下,获取所述第一虚拟对象的位置及手持所述虚拟道具的第二虚拟对象的位置;
23.显示模块,用于在所述第二虚拟对象的位置在所述视野内且所述第二虚拟对象的位置与所述第一虚拟对象的位置之间的距离不大于所述目标距离的情况下,显示所述虚拟道具的道具特效。
24.在另一种可能实现方式中,所述装置还包括:
25.获取模块,用于在所述虚拟道具被触发的情况下,获取所述第一虚拟对象的位置及手持所述虚拟道具的第二虚拟对象的位置;
26.确定模块,用于基于所述第二虚拟对象的位置、所述第二虚拟对象的朝向及所述第二虚拟对象与所述虚拟道具之间的相对位置关系,确定所述虚拟道具的位置;
27.显示模块,用于在所述虚拟道具的位置在所述视野内且所述虚拟道具的位置与所述第一虚拟对象的位置之间的距离不大于所述目标距离的情况下,显示所述虚拟道具的道具特效。
28.在另一种可能实现方式中,所述装置还包括:
29.获取模块,用于在所述虚拟道具被触发且开始移动的情况下,获取所述第一虚拟对象的位置及触发所述虚拟道具的第三虚拟对象的位置;
30.确定模块,用于基于所述第三虚拟对象的位置及所述虚拟道具的移动方向,确定所述虚拟道具当前的位置;
31.显示模块,用于在所述虚拟道具在所述视野内移动且所述虚拟道具的位置与所述第一虚拟对象的位置之间的距离不大于所述目标距离的情况下,显示所述虚拟道具的移动特效。
32.另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行以实现如上述方面所述的道具特效显示方法所执行的操作。
33.另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有
至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行以实现如上述方面所述的道具特效显示方法所执行的操作。
34.再一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述方面所述的道具特效显示方法所执行的操作。
35.本技术实施例提供的技术方案带来的有益效果至少包括:
36.本技术实施例提供的方法、装置、计算机设备及存储介质,基于本端设备控制的虚拟对象的视野及目标距离来确定是否显示被触发的虚拟道具的道具特效,仅在被触发的虚拟道具在本端设备控制的虚拟对象的视野内且该虚拟道具与该虚拟对象之间的距离小于目标距离的情况下,才会显示该虚拟道具的道具特效,无需显示在视野内但与该虚拟对象之间的距离大于目标距离的虚拟道具的道具特效,从而节省了显示道具特效所需占用的资源。
附图说明
37.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1是本技术实施例提供的一种实施环境的结构示意图;
39.图2是本技术实施例提供的一种道具特效显示方法的流程图;
40.图3是本技术实施例提供的一种道具特效显示方法的流程图;
41.图4是本技术实施例提供的一种虚拟场景的示意图;
42.图5是本技术实施例提供的一种虚拟场景的示意图;
43.图6是本技术实施例提供的一种虚拟场景的示意图;
44.图7是本技术实施例提供的一种道具特效显示方法的流程图;
45.图8是本技术实施例提供的一种道具特效显示方法的流程图;
46.图9是本技术实施例提供的一种弹孔特效的示意图;
47.图10是本技术实施例提供的一种弹孔特效的示意图;
48.图11是本技术实施例提供的一种弹孔特效的示意图;
49.图12是本技术实施例提供的一种道具特效显示方法的流程图;
50.图13是本技术实施例提供的一种开火特效及移动特效的示意图;
51.图14是本技术实施例提供的一种开火特效及移动特效的示意图;
52.图15是本技术实施例提供的一种道具特效显示方法的流程图;
53.图16是本技术实施例提供的一种道具特效显示装置的结构示意图;
54.图17是本技术实施例提供的一种道具特效显示装置的结构示意图;
55.图18是本技术实施例提供的一种终端的结构示意图;
56.图19是本技术实施例提供的一种服务器的结构示意图。
具体实施方式
57.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本技术
实施方式作进一步地详细描述。
58.本技术所使用的术语“第一”、“第二”、“第三”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本技术的范围的情况下,可以将第一虚拟对象称为第二虚拟对象,且类似地,可将第二虚拟对象称为第一虚拟对象。
59.本技术所使用的术语“至少一个”、“多个”、“每个”、“任一”,至少一个包括一个、两个或两个以上,多个包括两个或两个以上,而每个是指对应的多个中的每一个,任一是指多个中的任意一个。举例来说,多个虚拟对象包括3个虚拟对象,而每个是指这3个虚拟对象中的每一个虚拟对象,任一是指这3个虚拟对象中的任意一个虚拟对象,能够是第一个虚拟对象,或者,是第二个虚拟对象,或者,是第三个虚拟对象。
60.为了便于理解本技术实施例,先对本技术实施例涉及到的一些名词进行解释:
61.移动端:包括手机、平板或者其他手持便携游戏设备。
62.射击类游戏:射击类游戏包括第一人称射击游戏、第三人称射击游戏或者其他使用热兵器类进行远程攻击的游戏。
63.虚拟场景:是应用程序在终端上运行时显示(或提供)的虚拟场景。该虚拟场景是对真实世界的仿真环境,或者是半仿真半虚构的虚拟环境,或者是纯虚构的虚拟环境。虚拟场景是二维虚拟场景、2.5维虚拟场景或三维虚拟场景中的任意一种,本技术对此不加以限定。例如,虚拟场景包括天空、陆地、海洋等,该陆地包括沙漠、城市等环境元素,用户能够控制虚拟对象在该虚拟场景中进行移动。当然,在该虚拟场景中还包括虚拟物品,例如,投掷物、建筑物、载具、虚拟场景中的虚拟对象用于武装自己或与其他虚拟对象进行战斗所需的兵器等道具,该虚拟场景还能够用于模拟不同天气下的真实环境,例如,晴天、雨天、雾天或黑夜等天气。各种各样的场景元素增强了虚拟场景的多样性和真实性。
64.虚拟对象:是指在虚拟场景中可活动的虚拟角色,该可活动对象是虚拟人物、虚拟动物、动漫人物等。该虚拟对象是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象。虚拟场景中包括多个虚拟对象,每个虚拟对象在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。可选地,该虚拟对象是通过在客户端上操作进行控制的角色,或者是通过训练设置在虚拟环境对战中的人工智能(artificial intelligence,ai),或者是设置在虚拟场景对战中的非玩家角色(non-player character,npc)。可选地,该虚拟对象是在虚拟场景中进行竞技的虚拟人物。可选地,该虚拟场景对战中的虚拟对象的数量是预设设置的,或者是根据加入对战的客户端的数量动态确定的,本技术实施例对此不作限定。
65.可选地,用户能够控制虚拟对象在该虚拟场景中进行移动,以射击类游戏为例,用户控制虚拟对象在该虚拟场景的天空中自由下落、滑翔或者打开降落伞进行下落等,在陆地上中跑动、跳动、爬行、弯腰前行等,或者控制虚拟对象在海洋中游泳、漂浮或者下潜等,或者控制虚拟对象乘坐载具在该虚拟场景中进行移动。用户还能够控制虚拟对象在该虚拟场景中进出建筑物,发现并拾取该虚拟场景中的虚拟道具(例如,投掷物、兵器等道具),从而通过拾取的虚拟道具与其他虚拟对象进行战斗,例如,该虚拟道具是衣物、头盔、防弹衣、医疗品、冷兵器或热兵器等,或者是其他虚拟对象被淘汰后遗留的虚拟道具。在此仅以上述场景进行举例说明,本技术实施例对此不作具体限定。
66.虚拟道具:是指能够与虚拟场景中的虚拟对象可使用的道具。以射击类游戏为例,
射击类游戏中设置有虚拟炸弹、虚拟手雷等投掷物道具,还设置有虚拟枪械、虚拟弓弩等射击道具,虚拟枪械射击出的虚拟子弹、虚拟弓弩射出的虚拟箭也可称为虚拟道具,投掷物道具和射击道具能够对被攻击的虚拟对象造成伤害。虚拟道具还能够辅助虚拟对象达到某种目的,例如,烟雾弹能够辅助虚拟对象遮掩身形。需要说明的是,本技术实施例对虚拟道具的类型不作限定。
67.本技术实施例提供的道具特效方法,由计算机设备执行中。可选地,该计算机设备为终端或服务器。可选地,该服务器是独立的物理服务器,或者,是多个物理服务器构成的服务器集群或者分布式系统,或者,是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。可选地,该终端是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能语音交互设备、智能家电及车载终端等,但并不局限于此。
68.在一些实施例中,本技术实施例所涉及的计算机程序可被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备能够组成区块链系统。
69.在一些实施例中,该计算机设备提供为终端。图1是本技术实施例提供的一种实施环境的示意图。参见图1,该实施环境包括至少一个终端101(图1中以2个为例)和服务器102。终端101和服务器102之间通过无线或者有线网络连接。
70.终端101上安装有由服务器102提供服务的目标应用,该目标应用支持虚拟场景显示,例如该目标应用为军事仿真应用、角色扮演类游戏(role-playing game,rpg)、多人在线战术竞技游戏(multiplayer online battle arena games,moba)、多人枪战类生存游戏中的任意一种。该终端101是任一用户使用的终端,该用户使用该终端101操作位于虚拟场景中的虚拟对象进行活动,该活动包括爬行、步行、奔跑、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。
71.在一种可能实现方式中,不同的用户分别使用不同的终端控制虚拟对象,且不同的终端控制的虚拟对象位于同一虚拟场景中,此时,不同的虚拟对象能够进行活动。本技术以第一终端控制第一虚拟对象为例,第一终端显示该第一虚拟对象的视野画面,在虚拟场景中,该第一虚拟对象或其他终端控制的虚拟对象均能够触发虚拟道具。如果任一虚拟道具被触发、该虚拟道具在该第一虚拟对象的视野内且与第一虚拟对象之间的距离不大于目标距离,在该视野内显示该虚拟道具的道具特效,如果该虚拟道具被触发但该虚拟道具不在该第一虚拟对象的视野内,或者,该虚拟道具被触发、该虚拟道具在该第一虚拟对象的视野内但与第一虚拟对象之间的距离大于目标距离,不显示该虚拟道具的道具特效。
72.图2是本技术实施例提供的一种道具特效显示方法的流程图,由终端执行,如图2所示,该方法包括:
73.201、终端显示本端设备控制的第一虚拟对象的视野画面。
74.其中,该第一虚拟对象为该终端控制的虚拟对象,例如,该虚拟对象为虚拟人物、虚拟动物或虚拟车辆等。该视野画面中显示有以第一虚拟对象的视角观察到的虚拟场景,例如,该视野画面是以该第一虚拟对象的第一人称视角显示的视野对应的画面,或者,是以
该第一虚拟对象对应的第三人称视角显示的视野对应的画面。例如,该第一虚拟对象为虚拟人物,以该第一虚拟对象的第一人称视角来观看虚拟场景,显示出该第一虚拟对象的视野画面,以模拟出真人来观察一真实场景所能观察到的视野。例如,该视野画面包括虚拟建筑物、载具或虚拟对象等。
75.202、终端在被触发的虚拟道具位于第一虚拟对象的视野内且该虚拟道具与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
76.其中,该虚拟道具为虚拟场景中的任意类型的道具,且虚拟道具能够被触发。例如,该虚拟道具为虚拟枪械、虚拟手雷或虚拟子弹等。该目标距离为任意的距离,例如,该目标距离为100米或200米等。该道具特效为虚拟道具被触发时所呈现的效果,例如,虚拟道具为虚拟枪械,该虚拟枪械的道具特效为开火特效,以呈现出虚拟道具进行开火的效果。再例如,虚拟道具为虚拟子弹,虚拟子弹的道具特效为移动特效或弹孔特效,移动特效能够呈现出虚拟子弹的移动效果,弹孔特效能够呈现出虚拟子弹所形成的弹孔。
77.在本技术实施例中,视野包括以该第一虚拟对象的视角所观察到的部分虚拟场景,第一虚拟对象的视野与该第一虚拟对象的视野画面对应,该视野画面中显示有第一虚拟对象的视野内的虚拟场景。被触发的虚拟道具在该第一虚拟对象的视野内,表示能够查看到被触发的虚拟道具。目标距离能够表示该视野内能呈现出道具特效的最大距离,即被触发的虚拟道具在该视野内且与第一虚拟对象之间的距离不大于目标距离,表示在该视野内能够看到该虚拟道具,也能够看到该虚拟道具被触发时的道具特效,则在该视野画面中显示该虚拟道具的道具特。
78.203、终端在被触发的虚拟道具位于视野内且虚拟道具与第一虚拟对象之间的距离大于目标距离的情况下,不显示虚拟道具的道具特效。
79.在本技术实施例中,被触发的虚拟道具在该视野内但与第一虚拟对象之间的距离大于目标距离,表示在该视野内能够看到该虚拟道具,但看不到该虚拟道具被触发时的道具特效,即使显示该虚拟道具的道具特效,道具特效的显示效果也不明显,因此,在该视野画面中不再显示该虚拟道具的道具特效,以节省显示道具特效所需占用的资源。
80.本技术实施例提供的方法,基于本端设备控制的虚拟对象的视野及目标距离来确定是否显示被触发的虚拟道具的道具特效,仅在被触发的虚拟道具在本端设备控制的虚拟对象的视野内且该虚拟道具与该虚拟对象之间的距离小于目标距离的情况下,才会显示该虚拟道具的道具特效,无需显示在视野内但与该虚拟对象之间的距离大于目标距离的虚拟道具的道具特效,从而节省了显示道具特效所需占用的资源。
81.在图2所示实施例的基础上,虚拟道具为可被虚拟对象手持的虚拟道具,在虚拟道具被触发时,确定手持虚拟道具的第二虚拟对象的位置是否在视野内及该第二虚拟对象与第一虚拟对象之间的距离是否大于目标距离,以此来确定是否显示虚拟道具的道具特效,具体过程详见下述实施例。
82.图3是本技术实施例提供的一种道具特效显示方法的流程图,由终端执行,如图3所示,该方法包括:
83.301、终端显示本端设备控制的第一虚拟对象的视野画面。
84.在本技术实施例中,终端显示的视野画面中呈现出第一虚拟对象的视野内所包含的虚拟场景。
85.在一种可能实现方式中,该视野内的任一位置与第一虚拟对象的位置之间的距离不大于可视距离。
86.其中,可视距离为第一虚拟对象所能观察到的最远距离,该可视距离为任意的距离,例如,该可是距离为1000米。该视野内仅包括与第一虚拟对象的位置之间的距离不大于可视距离、且第一虚拟对象的视野内所能观察到的位置。例如,第一位置与第一虚拟对象的位置之间的距离不大于可视距离,但该第一位置在第一虚拟对象的背后,则第一虚拟对象的视野内观察不到该第一位置,则该第一位置不在该视野内。或者,任一第一位置与第一虚拟对象的位置之间的距离不大于可视距离,但该第一位置与第一虚拟对象之间存在障碍物,以第一虚拟对象的视野观察虚拟场景时,该第一位置被障碍物遮挡导致观察不到该第一位置,则该第一位置也不在该视野内。如图4所示,虚拟对象401与虚拟对象402之间存在障碍物403,即使虚拟对象401与虚拟对象402之间的距离相近,但该虚拟对象402不在该虚拟对象401的视野内。
87.可选地,采用发送射线的方式,确定两个位置之间是否有障碍物,也即是:从该第一虚拟对象的位置开始,向第一位置发射射线,在该射线到达该第一位置的过程中未与虚拟物品接触的情况下,确定第一位置与第一虚拟对象的位置之间不存在障碍物;在该射线未到达该第一位置时与虚拟物品接触的情况下,确定第一位置与第一虚拟对象的位置之间存在障碍物。如图5所示,第一虚拟对象基于射击道具进行射击,从图5中所示的镜头所在的位置发射一条射线501,该镜头是指虚拟枪械的枪口,图5中该射线501与虚拟对象旁边的箱子的碰撞盒子发生碰断,则表示该射线501未射在待检测的虚拟对象身上,而是射在了虚拟对象旁边的箱子上。
88.在一种可能实现方式中,第一虚拟对象对应有虚拟摄像机,该步骤301包括:终端显示该虚拟摄像机拍摄到的虚拟场景。
89.其中,以该虚拟摄像机拍摄到的虚拟场景,即为该第一虚拟对象的视野画面。可选地,第一虚拟对象的视野画面以第一人称视角或第三人称视角来显示,基于第一虚拟摄像机拍摄到的虚拟场景为以第一人称视角来显示的视野画面,基于第二虚拟摄像机拍摄到的虚拟场景为第三人称视角来显示的视野画面。
90.其中,第一虚拟摄像机与第二虚拟摄像机的位置不同。例如,第一虚拟摄像机的位置与第一虚拟对象的眼睛所处的位置相同,第二虚拟摄像机的位置在第一虚拟对象的头部的后上方,在以第一人称视角来显示的视野画面中,仅显示第一虚拟对象的手臂及手持的虚拟道具,而在以第三人称视角来显示的视野画面中,能够显示出第一虚拟对象的背部、手臂及手持的虚拟道具。
91.302、终端在虚拟道具被触发、手持虚拟道具的第二虚拟对象位于第一虚拟对象的视野内且第二虚拟对象与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
92.在本技术实施例中,第二虚拟对象与第一虚拟对象位于同一虚拟场景中。可选地,第二虚拟对象为其他终端控制的虚拟对象,或者,为非玩家角色。例如,该虚拟场景为多人竞技场景,每个玩家通过终端控制一个虚拟对象,多个玩家通过控制的多个虚拟对象能够在虚拟场景中实现多人竞技。再例如,该虚拟场景为单机场景,在该虚拟场景中,仅第一虚拟对象为玩家通过终端控制的虚拟对象,该虚拟场景中的其他虚拟对象为非玩家角色,玩
家通过控制的第一虚拟对象与虚拟场景中的非玩家角色进行对战。
93.该虚拟道具为虚拟场景中可被虚拟对象手持的虚拟道具,例如,该虚拟道具为虚拟枪械、虚拟弓弩等射击道具,或者,该虚拟道具为虚拟炸弹、虚拟手雷等投掷物道具。在虚拟对象手持该虚拟道具时能够触发该虚拟道具,例如,该虚拟道具为虚拟枪械,虚拟对象手持虚拟枪械时能够基于手持的虚拟枪械进行射击;或者,该虚拟道具为虚拟手雷,在虚拟对象手持虚拟手雷时能够拔掉虚拟手雷的引线;或者,该虚拟道具为燃烧瓶,在虚拟对象手持燃烧瓶时能够点燃手持的燃烧瓶。
94.对于不同的虚拟道具,在虚拟道具被触发时的道具特效不同。例如,该虚拟道具为虚拟手雷,在虚拟对象拔掉手持的虚拟手雷的引线时,该虚拟手雷会冒烟,即该虚拟手雷被触发时的道具特效为烟雾特效;或者,该虚拟道具为燃烧瓶,在虚拟对象点燃手持的燃烧瓶时,该燃烧瓶会呈现燃烧的特效,即该燃烧瓶被触发时的道具特效为燃烧特效。
95.由于虚拟道具被触发时,该虚拟道具是由第二虚拟对象手持的,手持该虚拟道具的第二虚拟对象的位置与该虚拟道具的位置相近,因此,能够将该第二虚拟对象的位置作为该虚拟道具的位置,则确定该第二虚拟对象是否在第一虚拟对象的视野内,相当于确定了虚拟道具是否在第一虚拟对象的视野内,确定第二虚拟对象与第一虚拟对象之间的距离是否大于目标距离,相当于确定了第二虚拟对象与第一虚拟对象之间的距离是否大于目标距离,从而确定是否显示该虚拟道具被触发时的道具特效。
96.在一种可能实现方式中,该步骤302包括:终端在虚拟道具被触发、手持虚拟道具的第二虚拟对象位于视野内且第二虚拟对象与第一虚拟对象之间的距离不大于目标距离的情况下,加载该虚拟道具的道具特效,显示加载完成的道具特效。
97.在确定需要显示虚拟道具的道具特效时,加载该虚拟道具的道具特效,在加载完成后显示,以呈现出该虚拟道具被触发是的道具特效。
98.在一种可能实现方式中,第一虚拟对象的视野内与第一虚拟对象的位置之间的距离不大于目标距离的位置,构成了特效可视范围。如果任一虚拟道具被触发,且虚拟道具在特效可视范围内,则在视野画面中显示出该虚拟道具的道具特效;如果任一虚拟道具被触发,且虚拟道具不在特效可视范围内,则在视野画面中不显示出该虚拟道具的道具特效。即该虚拟道具不在特效可视范围内,即使显示虚拟道具的道具特效,但特效显示效果也不明显,因此,不显示不在特效可视范围内的道具特效,这样也不会降低显示效果,同时也能节省显示特效所占用的资源。在本技术实施例中,仅显示特效可视范围内的被触发的虚拟道具的道具特效,特效可视范围外的且视野内的虚拟道具被触发时不显示道具特效,这样无需频繁的加载虚拟道具的道具特效,从而节省了显示特效所需占用的资源。
99.在一种可能实现方式中,该步骤302包括:在任一虚拟枪械被触发、手持虚拟枪械的第二虚拟对象位于视野内且第二虚拟对象与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟枪械的开火特效。
100.在本技术实施例中,虚拟道具为虚拟枪械,第二虚拟对象基于手持的虚拟枪械进行射击,如果该第二虚拟对象在视野内且在特效可视范围内,在视野画面中显示该虚拟枪械的开火特效,例如,显示虚拟枪械的枪口冒出火光。
101.303、终端在虚拟道具被触发的、手持虚拟道具的第二虚拟对象位于视野内且第二虚拟对象与第一虚拟对象之间的距离大于目标距离的情况下,不显示虚拟道具的道具特
效。
102.在一些实施例中,该步骤303包括:在任一虚拟枪械被触发、手持虚拟枪械的第二虚拟对象位于视野内且第二虚拟对象与第一虚拟对象之间的距离大于目标距离的情况下,不显示该虚拟枪械的开火特效。
103.在一种可能实现方式中,在步骤301之后,先获取手持虚拟道具的第二虚拟对象的位置,之后以该第二虚拟对象的位置来确定是否显示虚拟道具的道具特效,此过程包括以下步骤304-306:
104.304、终端在任一虚拟道具被触发的情况下,获取第一虚拟对象的位置及手持虚拟道具的第二虚拟对象的位置。
105.其中,第一虚拟对象的位置表示该第一虚拟对象在虚拟场景中的位置,第二虚拟对象的位置表示该第二虚拟对象在虚拟场景中的位置。该位置能够以任意形式表示,例如,该位置以坐标的形式表示。
106.在一种可能实现方式中,该步骤304包括:终端在任一虚拟道具被触发的情况下,检查该终端控制的第一虚拟对象的位置以及手持该虚拟道具的第二虚拟对象的位置。
107.在本技术实施例中,终端能够检查虚拟场景中任一虚拟对象的位置。在任一虚拟道具被触发的情况下,终端检测控制的第一虚拟对象以及手持该虚拟道具的第二虚拟对象在虚拟场景中的位置。
108.可选地,终端获取虚拟对象的位置的过程包括:终端响应于任一虚拟道具的触发指令,检查该终端控制的第一虚拟对象的位置以及手持该虚拟道具的第二虚拟对象的位置。
109.其中,该触发指令指示触发该虚拟道具。
110.例如,在单机游戏场景下,第二虚拟对象为非玩家角色,第一虚拟对象与虚拟场景中的非玩家角色进行对战,在对战过程中,终端基于运行的单机游戏的游戏逻辑,生成一个触发指令,该触发指令指示一个非玩家角色触发手持的虚拟道具,则终端获取该非玩家角色的位置以及第一虚拟对象的位置。
111.在一种可能实现方式中,该第二虚拟对象为其他终端控制的虚拟对象,则该步骤304包括:终端接收服务器同步的对任一虚拟对象的触发指令及手持该虚拟道具的第二虚拟对象的位置,获取第一虚拟对象的位置。
112.其中,触发指令是由控制该第二虚拟对象的终端向服务器发送的。
113.在本技术实施例中,每个终端控制一个虚拟对象,多个终端控制的虚拟对象位于同一个虚拟场景中。对于任一终端,终端会检测控制的虚拟对象在虚拟场景中的位置,向服务器同步检测到的位置,并且,在该终端检测到对控制的虚拟对象手持的虚拟道具的触发操作时,向服务器同步虚拟道具的触发指令,服务器接收终端同步的虚拟对象的位置及虚拟道具的触发指令,将虚拟对象的位置及虚拟道具的触发指令同步给其他终端,以便其他终端后续确定是否显示被触发的虚拟道具的道具特效。
114.305、终端在第二虚拟对象的位置在视野内且第二虚拟对象的位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
115.在本技术实施例中,终端获取到该第二虚拟对象的位置后,在该第二虚拟对象的位置在第一虚拟对象的视野内且第二虚拟对象的位置与第一虚拟对象的位置之间的距离
不大于目标距离的情况下,确定该第二虚拟对象的位置在特效可视范围内,即确定虚拟物品在特效可视范围内,因此,能够显示出该虚拟道具的道具特效。通过将手持虚拟道具的虚拟对象的位置作为虚拟道具的位置,基于虚拟对象的位置便于判断出是否需要显示虚拟道具的道具特效,以简化确定虚拟道具的位置的过程,从而保证能够及时显示出虚拟道具的道具特效。
116.在一种可能实现方式中,虚拟道具的道具特效是一种具有显示范围的特效。
117.虚拟道具的道具特效为具有显示范围的特效,即使被触发的虚拟道具不在第一虚拟对象的视野内但手持该虚拟道具的第二虚拟对象在该视野内,也能够显示出该虚拟道具的道具特效,从而保证显示道具特效的准确性。如图6所示,虚拟对象601在第一虚拟对象的视野内且该虚拟对象601在特效可视范围内,但该虚拟对象601手持的虚拟枪械不在视野内,在该虚拟对象601基于手持的虚拟枪械进行射击时,加载并显示该虚拟枪械的开火特效,在视野的边缘能够看到部分开火特效。
118.在一种可能实现方式中,确定该第二虚拟对象的位置是否在视野内的过程包括:基于该第二虚拟对象的位置,向第一虚拟对象对应的虚拟摄像机所拍摄的视角画面进行人投影,如果该第二虚拟对象的位置投影在该视角画面上,确定该第二虚拟对象的位置在该视野内,如果该第二虚拟对象的位置未投影在该视角画面上,确定该第二虚拟对象的位置未在该视野内。
119.在本技术实施例中,该虚拟摄像机所拍摄的视角画面包含的虚拟场景,即为该第一虚拟对象的视野内的虚拟场景。基于该第二虚拟对象的位置向该虚拟摄像机拍摄的视角画面进行投影,以确定该第二虚拟对象的位置是否在该第一虚拟对象的视野内。
120.可选地,基于第二虚拟对象的位置及虚拟摄像机所拍摄的视角画面,确定第二虚拟对象的位置是否在第一虚拟对象的视野内的过程,包括:确定该虚拟摄像机在虚拟场景中的位置及该虚拟摄像机的拍摄方向,基于第一坐标系与第二坐标系之间映射关系,将第二虚拟对象的位置映射到虚拟摄像机所在的平面上,得到第二虚拟对象的位置对应的映射位置,如果该映射位置在该虚拟摄像机的视角范围内,确定该第二虚拟对象的位置在该视野内,如果该映射位置不在该虚拟摄像机的视角范围内,确定该第二虚拟对象的位置未在该视野内。
121.其中,第一坐标系为虚拟场景中的坐标系,该第一坐标系以虚拟场景中的任一点为原点,第二虚拟对象的位置、虚拟摄像机的位置均是以第一坐标系下的坐标来表示的,第二坐标系为虚拟摄像机的坐标系,该第二坐标系以虚拟摄像机的拍摄方向与虚拟镜头的交点为原点,该映射位置以第二坐标系下的坐标表示,该映射关系用于将第一坐标系下的坐标映射到第二坐标系下。视角范围为第二坐标系下虚拟摄像机所拍摄到的范围,例如,该视角范围以矩阵的形式表示,能够投影在该视角范围内的位置,即为虚拟摄像机所能拍摄到的位置。因此,基于该投影位置是否在该视角范围内,确定第二虚拟对象的位置是否在第一虚拟对象的视野内。
122.306、终端在第二虚拟对象的位置在视野内且第二虚拟对象的位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,不显示虚拟道具的道具特效。
123.该步骤306与上述步骤305同理,在此不再赘述。
124.需要说明的是,本技术实施例是以终端获取到第一虚拟对象的位置及第二虚拟对
象的位置后,由终端来确定第二虚拟对象的位置是否在视野内及第二对象的位置与第一虚拟对象的位置之间的距离是否大于目标距离的,而在另一实施例中,由服务器来确定第二虚拟对象的位置是否在视野内及第二对象的位置与第一虚拟对象的位置之间的距离是否大于目标距离,在服务器确定第二虚拟对象的位置在第一虚拟对象的视野内且第二对象的位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,向终端发送显示通知,终端基于该显示通知,在视野画面中显示虚拟道具的道具特效。
125.在一种可能实现方式中,服务器与终端交互,由终端显示虚拟道具的道具特效的过程包括:其他终端检测到对控制的第二虚拟对象手持的虚拟道具的触发操作时,向服务器同步第二虚拟对象的位置及该虚拟道具的触发指令,服务器接收该其他终端同步的第二虚拟对象的位置及该虚拟道具的触发指令,基于第一虚拟对象的位置及视线方向,确定第一虚拟对象的视野,基于第二虚拟对象的位置,确定该第二虚拟对象的位置是否在该第一虚拟对象的视野内及第二对象的位置与第一虚拟对象的位置之间的距离是否大于目标距离,在服务器确定第二虚拟对象的位置在第一虚拟对象的视野内且第二对象的位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,向终端发送显示通知,终端接收该显示通知,基于该显示通知,在视野画面中显示第二虚拟对象手持的虚拟道具的道具特效。
126.其中,显示通知指示第二虚拟对象手持的虚拟道具被触发且在第一虚拟对象的特效可视范围内。
127.本技术实施例提供的方法,基于本端设备控制的虚拟对象的视野及目标距离来确定是否显示被触发的虚拟道具的道具特效,仅在被触发的虚拟道具在本端设备控制的虚拟对象的视野内且该虚拟道具与该虚拟对象之间的距离小于目标距离的情况下,才会显示该虚拟道具的道具特效,无需显示在视野内但与该虚拟对象之间的距离大于目标距离的虚拟道具的道具特效,从而节省了显示道具特效所需占用的资源。
128.并且,通过将手持虚拟道具的虚拟对象的位置作为虚拟道具的位置,基于虚拟对象的位置便于判断出是否需要显示虚拟道具的道具特效,以简化确定虚拟道具的位置的过程,从而保证能够及时显示出虚拟道具的道具特效。
129.并且,虚拟道具的道具特效为具有显示范围的特效,即使被触发的虚拟道具不在第一虚拟对象的视野内但手持该虚拟道具的第二虚拟对象在该视野内,也能够显示出该虚拟道具的道具特效,从而保证显示道具特效的准确性。
130.在图2所示实施例的基础上,虚拟道具被触发后能够进行移动,仅在该虚拟道具在第一虚拟对象的视野内移动,且与第一虚拟对象之间的距离小于目标距离的情况下,才显示该虚拟道具的道具特效,具体过程详见下述实施例。
131.图7是本技术实施例提供的一种道具特效显示方法的流程图,由终端执行,如图7所示,该方法包括:
132.701、终端显示本端设备控制的第一虚拟对象的视野画面。
133.该步骤与上述步骤201和301同理,在此不再赘述。
134.702、终端在虚拟道具被触发后在第一虚拟对象的视野内移动且虚拟道具与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
135.在本技术实施例中,虚拟道具被触发后能够进行移动,如果该虚拟道具在第一虚拟对象的视野内移动,且在移动过程中虚拟道具与第一虚拟对象之间的距离不大于目标距
离的情况下,在视野画面中显示虚拟道具的道具特效。可选地,在虚拟道具移动的情况下,显示的道具特效为移动特效。例如,虚拟道具为虚拟对象投掷出的燃烧瓶,在燃烧瓶移动的过程中,显示燃烧瓶移动燃烧的特效。
136.在一种可能实现方式中,该步骤702包括:在任一虚拟子弹被射出后在视野内移动且虚拟子弹与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟子弹的移动特效。
137.其中,该虚拟子弹是由虚拟场景中的任一虚拟对象基于手持的虚拟枪械射出的,该虚拟对象可能在该视野内,也可能不在该视野内。虚拟子弹的移动特效为任意类型的特效,例如,虚拟子弹的移动特效为一道火光。例如,如果虚拟子弹在该视野内移动且在一段移动距离内该虚拟子弹与第一虚拟对象之间的距离始终不大于目标距离,显示虚拟子弹的移动特效,呈现出该虚拟子弹的弹道轨迹。
138.可选地,该虚拟子弹被射出后进行移动直至与任一虚拟物品接触或移动距离达到最大距离。可选地,该虚拟子弹被射出后进行抛物线运动。最大距离表示射出该虚拟子弹的虚拟枪械的射程。
139.703、终端在虚拟道具被触发后在视野内移动且虚拟道具与第一虚拟对象之间的距离大于目标距离的情况下,不显示虚拟道具的道具特效。
140.在一种可能实现方式中,该步骤703包括:在任一虚拟子弹被射出后在视野内移动且虚拟子弹与第一虚拟对象之间的距离大于目标距离的情况下,在视野画面中不显示虚拟子弹的移动特效。
141.在一种可能实现方式中在步骤301之后,先获取手持虚拟道具的第二虚拟对象的位置,之后以该第二虚拟对象的位置来确定是否显示虚拟道具的道具特效,此过程包括以下步骤704-707:
142.704、终端在虚拟道具被触发且开始移动的情况下,获取第一虚拟对象的位置及触发虚拟道具的第三虚拟对象的位置。
143.在本技术实施例中,第三虚拟对象为虚拟场景中的任一虚拟对象,虚拟道具为能够移动的虚拟道具。例如,虚拟道具为虚拟子弹,虚拟子弹被射出后开始移动。再例如,虚拟道具为虚拟手雷,虚拟手雷被触发后且在虚拟对象将该虚拟手雷投掷出去时,该虚拟手雷开始移动。
144.该步骤与上述步骤304同理,在此不再赘述。
145.705、终端基于第三虚拟对象的位置及虚拟道具的移动方向,确定虚拟道具当前的位置。
146.其中,虚拟道具的移动方向能够表示虚拟道具朝哪个方向移动。例如,虚拟道具为虚拟子弹,该虚拟道具的移动方向为虚拟枪械射击该虚拟子弹时的射击方向;或者,该虚拟道具为虚拟手雷,该虚拟道具的移动方向为虚拟对象投掷该虚拟手雷的投掷方向。在本技术实施例中,虚拟道具被触发且开始移动时,是以第三虚拟对象的位置为起点,沿着虚拟道具的移动方向进行移动的,因此,基于该第三虚拟对象的位置及虚拟道具的移动方向即可确定出虚拟道具在移动过程中的位置。可选地,终端基于第三虚拟对象的位置及虚拟道具的移动方向,实时确定虚拟道具的位置。
147.在一种可能实现方式中,该步骤705包括:基于第三虚拟对象的位置、虚拟道具的
移动方向及虚拟道具的移动速度,实时确定虚拟道具的位置。
148.其中,该虚拟道具的移动速度为固定值或者符合重力条件的速度。虚拟道具以第三虚拟对象的位置为起点,以该移动速度沿着该移动方向移动,在该虚拟道具移动的过程中,能够基于该第三虚拟对象的位置、虚拟道具的移动方向及虚拟道具的移动速度,能够实时确定出虚拟道具的位置。
149.706、终端在虚拟道具在视野内移动且虚拟道具的位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,显示虚拟道具的移动特效。
150.在虚拟道具的位置在视野内且在虚拟道具的位置与第一虚拟对象的位置间的距离不大于目标距离的情况下,表示该虚拟道具在特效可视范围内,则显示该虚拟道具的移动特效。
151.707、终端在虚拟道具在视野内移动且虚拟道具的位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,不显示虚拟道具的移动特效。
152.由于在虚拟道具移动过程中,该虚拟道具的位置是实时变化的,则实时基于虚拟道具的位置来确定虚拟道具是否在特效可视范围内,仅在该虚拟道具在特效可视范围内时,显示该虚拟道具的移动特效。例如,虚拟道具移动过程中,从特效可视范围外移动至特效可视范围内,之后又移动出特效可视范围,则仅在虚拟道具在特效可视范围内移动时,显示虚拟道具的道具特效。
153.本技术实施例提供的方法,基于本端设备控制的虚拟对象的视野及目标距离来确定是否显示被触发的虚拟道具的道具特效,仅在被触发的虚拟道具在本端设备控制的虚拟对象的视野内且该虚拟道具与该虚拟对象之间的距离小于目标距离的情况下,才会显示该虚拟道具的道具特效,无需显示在视野内但与该虚拟对象之间的距离大于目标距离的虚拟道具的道具特效,从而节省了显示道具特效所需占用的资源。
154.并且,通过实时确定虚拟道具在移动过程中的位置,以虚拟道具的位置来确定虚拟道具是否在特效可视范围内,仅在虚拟道具在特效可视范围内移动的情况下,才会显示虚拟道具的移动特效,丰富了道具特效的显示样式,也保证了特效显示的准确性。
155.在图2所示实施例的基础上,在虚拟道具被触发后进行移动的过程中,虚拟道具会与虚拟物品接触,如果接触位置在特效可视范围内,会在接触位置显示虚拟道具的道具特效,具体过程详见下述实施例。
156.图8是本技术实施例提供的一种道具特效显示方法的流程图,由终端执行,如图8所示,该方法包括:
157.801、终端显示本端设备控制的第一虚拟对象的视野画面。
158.该步骤与上述步骤201和301同理,在此不再赘述。
159.802、终端在虚拟道具被触发后与任一虚拟物品接触、接触位置在第一虚拟对象的视野内且接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,在接触位置显示虚拟道具的道具特效。
160.在本技术实施例中,该虚拟道具被触发后会与虚拟场景中的任一虚拟物品接触,在虚拟道具与该虚拟物品接触时会产生一种道具特效,该道具特效能够呈现出该虚拟道具与虚拟物品接触的效果。例如,该虚拟道具为虚拟手雷,在虚拟手雷与地面接触时,在该接触位置上显示爆炸特效。
161.其中,确定该接触位置是否在视野内,与上述步骤305中确定第二虚拟对象的位置是否在视野内的过程同理,确定该接触位置与第一虚拟对象的位置之间的距离是否大于目标距离,与上述步骤305中确定第二虚拟对象的位置与第一虚拟对象的位置之间的距离是否大于目标距离的过程同理,在此不再赘述。
162.在一种可能实现方式中,该步骤802包括:在任一虚拟子弹被射出后与虚拟物品接触、接触位置在视野内且接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,在接触位置显示虚拟子弹的弹孔特效。
163.在本技术实施例中,虚拟子弹与虚拟物品接触表示虚拟子弹击中该虚拟物品,该虚拟子弹会在该虚拟物品上形成弹孔,因此,如果该接触位置在视野内且与第一虚拟对象之间的距离不大于目标距离,则在视野画面中的该接触位置显示该虚拟子弹的弹孔特效。如图9所示,第一虚拟对象基于手持的虚拟枪械进行射击,射出的子弹与墙壁接触,且接触位置在特效可视范围内,在墙壁上显示弹孔特效901。
164.可选地,在虚拟子弹被射出后与虚拟物品接触、接触位置在视野内且接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,确定与虚拟物品匹配的弹孔特效,在接触位置显示所确定的弹孔特效。
165.在本技术实施例中,不同的虚拟物品上形成的弹孔会不同,即在不同的虚拟物品上形成弹孔时产生的弹孔特效也是不同的,因此,在确定虚拟子弹与该虚拟物品接触时,获取与该虚拟物品匹配的弹孔特效,并在视野画面中的接触位置显示所确定的弹孔特效,丰富了弹孔特效的显示样式,保证了显示的弹孔特效的准确性。
166.可选地,获取与虚拟物品匹配的弹孔特效的过程包括:获取该虚拟物品的材质,查询数据库中与该材质匹配的弹孔特效。
167.其中,数据库中包括材质与弹孔特效之间的对应关系,在获取到虚拟物品的菜之后,查询该数据库中的对应关系,即可确定与材质匹配的弹孔特效。获取与该虚拟物品的材质匹配的弹孔特效,将与该材质匹配的弹孔特效,确定为与虚拟物品匹配的弹孔特效。在本技术实施例中,不同的虚拟物品的材质可能相同也,可能不同,如果两种虚拟物品的材质相同,则虚拟子弹分别与两种虚拟物品接触时,在接触位置显示的弹孔特效也会相同;如果两种虚拟物品的材质不同,则虚拟子弹分别与两种虚拟物品接触时,在接触位置显示的弹孔特效也会不同。
168.如图10所示,虚拟子弹射击到虚拟墙壁上产生的弹孔特效1001,与虚拟子弹射击到草地上产生的弹孔特效1002不同。
169.可选地,虚拟子弹是由其他终端控制虚拟对象基于手持的虚拟枪械弹射出的,则终端获取接触位置的过程包括:其他终端控制虚拟对象基于手持的虚拟枪械将该虚拟子弹射出后,从该虚拟枪械的位置发射射线,在该射线检测到任一虚拟物品的碰撞盒子,将该射线与该虚拟物品之间的接触位置,确定为该虚拟子弹与虚拟物品的接触位置,该其他终端将该接触位置同步至服务器,由服务器同步至控制第一虚拟对象的终端,使得该终端获取到接触位置。
170.可选地,虚拟子弹是由终端控制第一虚拟对象基于手持的虚拟枪械弹射出的,则终端获取接触位置的过程包括:终端控制第一虚拟对象基于手持的虚拟枪械将该虚拟子弹射出后,从该虚拟枪械的位置发射射线,在该射线检测到任一虚拟物品的碰撞盒子,将该射
线与该虚拟物品之间的接触位置,确定为该虚拟子弹与虚拟物品的接触位置。
171.803、终端在虚拟道具被触发后与任一虚拟物品接触、接触位置在视野内且接触位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,在接触位置不显示虚拟道具的道具特效。
172.其中,在虚拟子弹与虚拟物品接触,接触位置在视野内,但接触位置与第一虚拟对象之间的距离大于目标距离,即该接触位置不在特效可视范围内,即使显示虚拟子弹的弹孔特效,但特效显示效果不明显,因此,不显示不在特效可视范围内的弹孔特效,这样也不会降低显示效果,同时也能节省显示特效所占用的资源。如图11所示,虚拟子弹与虚拟物品的接触位置与第一虚拟对象之间的距离远,即使显示弹孔特效1101,弹孔特效1101显示效果不明显,因此,不再显示该弹孔特效1101。
173.在一种可能实现方式中,在步骤801之后,先获取虚拟道具与该虚拟物品的接触位置,之后以该接触位置来确定是否显示虚拟道具的道具特效,则该过程包括:在虚拟道具被触发后与任一虚拟物品接触的情况下,获取虚拟道具与该虚拟物品的接触位置;在该接触位置在视野内且该接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,在该接触位置显示虚拟道具的道具特效,在该接触位置在视野内且该接触位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,在该接触位置显示虚拟道具的道具特效。
174.其中,获取接触位置的过程与上述步骤802中获取接触位置的过程同理,在此不再赘述。
175.需要说明的是,本技术实施例是以虚拟道具与虚拟物品接触来说明的,而在另一实施例中,还能够是虚拟道具与虚拟对象接触。例如,终端控制第一虚拟对象基于手持的虚拟枪械进行射击,由该虚拟枪械的枪口发射射线进行碰撞检测,如果该射线检测到与其他虚拟对象的碰撞盒子,表示该虚拟枪械发出的子弹击中该其他虚拟对象,如果该射线未检测到与其他虚拟对象的碰撞盒子,表示该虚拟枪械发出的子弹未击中该其他虚拟对象。另外,还能通过射线检测到击中该其他虚拟对象的部位,基于击中的部位来确定对该其他虚拟对象造成的伤害,终端向服务器发送对该其他虚拟对象造成的伤害,服务器对该伤害进行验证后,将该其他虚拟对象的生命值减少该伤害对应的伤害值,并在该虚拟子弹击中该其他虚拟对象的位置显示虚拟子弹击中该其他虚拟对象的特效,如流血特效。
176.本技术实施例提供的方法,基于本端设备控制的虚拟对象的视野及目标距离来确定是否显示被触发的虚拟道具的道具特效,仅在被触发的虚拟道具在本端设备控制的虚拟对象的视野内且该虚拟道具与该虚拟对象之间的距离小于目标距离的情况下,才会显示该虚拟道具的道具特效,无需显示在视野内但与该虚拟对象之间的距离大于目标距离的虚拟道具的道具特效,从而节省了显示道具特效所需占用的资源。
177.并且,在虚拟道具与虚拟物品接触且接触位置在特效可视范围内的情况下,在接触位置显示虚拟道具的道具特效,以呈现出虚拟道具与虚拟物品接触,丰富了道具特效的显示样式。
178.并且,在虚拟道具与虚拟物品接触且接触位置在特效可视范围内的情况下,通过确定与虚拟物品匹配的道具特效,并在接触位置显示所确定的弹孔特效,丰富了弹孔特效的显示样式,保证了显示的弹孔特效的准确性。
179.在图2所示实施例的基础上,每个虚拟对象与手持的虚拟道具之间具有相对位置
关系,以第二虚拟对象的位置、第二虚拟对象的朝向以及相对位置关系来确定虚拟道具的位置,在虚拟道具被触发后,以虚拟道具的位置来确定虚拟道具是否在特效可视范围内,具体过程详见下述实施例。
180.图12是本技术实施例提供的一种道具特效显示方法的流程图,由终端执行,如图12所示,该方法包括:
181.1201、终端显示本端设备控制的第一虚拟对象的视野画面。
182.该步骤与上述步骤201和301同理,在此不再赘述。
183.1202、终端在虚拟道具被触发的情况下,获取第一虚拟对象的位置及手持虚拟道具的第二虚拟对象的位置。
184.该步骤与上述步骤304同理,在此不再赘述。
185.1203、终端基于第二虚拟对象的位置、第二虚拟对象的朝向及第二虚拟对象与虚拟道具之间的相对位置关系,确定虚拟道具的位置。
186.其中,相对位置关系用于表示虚拟对象手持虚拟道具时,虚拟对象的位置与虚拟道具的位置之间的关系。可选地,该相对位置关系为位置偏移向量来表示。第二虚拟对象的朝向为虚拟对象所面对的方向,由于虚拟对象手持的虚拟道具在虚拟对象的前方,通过虚拟对象的朝向,即可确定出虚拟道具的位置相对于第二虚拟对象的位置的偏移方向,通过该相对位置关系及偏移方向,即可确定出虚拟道具的位置。
187.1204、终端在虚拟道具的位置在第一虚拟对象的视野内且虚拟道具的位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
188.该步骤与上述步骤305同理,在此不再赘述。
189.1205、终端在虚拟道具的位置在视野内且虚拟道具的位置与第一虚拟对象的位置之间的距离大于目标距离的情况下,不显示虚拟道具的道具特效。
190.本技术实施例提供的方法,基于本端设备控制的虚拟对象的视野及目标距离来确定是否显示被触发的虚拟道具的道具特效,仅在被触发的虚拟道具在本端设备控制的虚拟对象的视野内且该虚拟道具与该虚拟对象之间的距离小于目标距离的情况下,才会在视野画面中显示该虚拟道具的道具特效,无需显示在视野内但与该虚拟对象之间的距离大于目标距离的虚拟道具的道具特效,从而节省了显示道具特效所需占用的资源。
191.并且,以第二虚拟对象的位置、第二虚拟对象的朝向以及相对位置关系来确定虚拟道具的位置,基于虚拟道具的位置来确定虚拟道具是否在特效可视范围内,保证了虚拟道具的位置的准确性,从而保证了显示特效的准确性。
192.需要说明的是,上述图2、图3、图7、图8及图12所示的实施例能够任意结合。如图13所示,第一虚拟对象手持虚拟枪械,第一虚拟对象基于虚拟枪械进行射击时,该虚拟枪械在特效可视范围内,显示该虚拟枪械的开火特效1301,由该虚拟枪械射出的虚拟子弹1302开始移动,在该虚拟子弹1302在特效可视范围内移动的过程中,显示虚拟子弹1302的移动特效1303,在该虚拟子弹1302击中虚拟物品,在该虚拟子弹1302与该虚拟物品的接触位置在特效可视范围内,在该接触位置显示虚拟子弹1302的弹孔特效。
193.如图14所示,显示第一虚拟对象的视野画面,该视野画面内显示有第二虚拟对象1401,第二虚拟对象1401基于手持的虚拟枪械1402进行射击时,该第二虚拟对象1401在特效可视范围内,在视野画面中显示该虚拟枪械1402的开火特效1403,由该虚拟枪械1402射
出的虚拟子弹1404开始移动,在该虚拟子弹1404在特效可视范围内移动的过程中,在视野画面中显示虚拟子弹1404的移动特效1405,在该虚拟子弹1404击中虚拟物品,在该虚拟子弹1404与该虚拟物品的接触位置在特效可视范围内,在该接触位置显示虚拟子弹1404的弹孔特效。
194.再例如,显示第一虚拟对象的视野画面,该视野画面外的第二虚拟对象基于手持的虚拟枪械进行射击,该第二虚拟对象不在特效可视范围内,在视野画面中不显示该虚拟枪械的开火特效,由该虚拟枪械射出的虚拟子弹开始移动,在该虚拟子弹进入特效可视范围内且在特效可视范围内移动的过程中,在视野画面中显示虚拟子弹的移动特效,在该虚拟子弹击中虚拟物品,在该虚拟子弹与该虚拟物品的接触位置在特效可视范围内,在该接触位置显示虚拟子弹的弹孔特效。
195.图15是本技术实施例提供的一种道具特效显示方法的流程图。本技术实施例的执行主体为上述实施环境中的任一终端。参见图15,该方法包括以下步骤:
196.1、在游戏开始时,第一终端显示终端控制的第一虚拟对象的视野画面。
197.2、第二终端控制虚拟对象基于手持的虚拟枪械进行开火时,确定该虚拟对象是否在该第一虚拟对象的视野中的特效可视范围内,如果否,则不现实该虚拟枪械的开火特效,如果是,则在视野画面中显示该虚拟枪械的开火特效。
198.3、第二终端从手持的虚拟枪械的枪口处发射射线进行射线检测,检测射线是否与障碍物的碰撞盒子发生碰撞,在未检测到发生碰撞时,继续射线检测,在检测到发生碰撞时,获取接触位置,将该接触位置通过服务器同步给第一终端。
199.4、第一终端确定该接触位置是否在特效可视范围内,如果是,则在接触位置显示弹孔特效,如果不是,则在接触位置不显示弹孔特效。
200.图16是本技术实施例提供的一种道具特效显示装置的结构示意图,如图16所示,该装置包括:
201.显示模块1601,用于显示本端设备控制的第一虚拟对象的视野画面;
202.显示模块1601,还用于在被触发的虚拟道具位于第一虚拟对象的视野内且虚拟道具与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效;
203.显示模块1601,还用于在被触发的虚拟道具位于视野内且虚拟道具与第一虚拟对象之间的距离大于目标距离的情况下,不显示虚拟道具的道具特效。
204.在一种可能实现方式中,显示模块1601,用于在虚拟道具被触发、手持虚拟道具的第二虚拟对象位于视野内且第二虚拟对象与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
205.在另一种可能实现方式中,显示模块1601,用于在任一虚拟枪械被触发、手持虚拟枪械的第二虚拟对象位于视野内且第二虚拟对象与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟枪械的开火特效。
206.在另一种可能实现方式中,显示模块1601,用于在虚拟道具被触发后在视野内移动且虚拟道具与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
207.在另一种可能实现方式中,显示模块1601,用于在任一虚拟子弹被射出后在视野内移动且虚拟子弹与第一虚拟对象之间的距离不大于目标距离的情况下,显示虚拟子弹的
移动特效。
208.在另一种可能实现方式中,显示模块1601,用于在虚拟道具被触发后与任一虚拟物品接触、接触位置在视野内且接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,在接触位置显示虚拟道具的道具特效。
209.在另一种可能实现方式中,显示模块1601,用于在任一虚拟子弹被射出后与虚拟物品接触、接触位置在视野内且接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,在接触位置显示虚拟子弹的弹孔特效。
210.在另一种可能实现方式中,如图17所示,显示模块1601,包括:
211.确定单元1611,用于在虚拟子弹被射出后与虚拟物品接触、接触位置在视野内且接触位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,确定与虚拟物品匹配的弹孔特效;
212.显示单元1612,用于在接触位置显示所确定的弹孔特效。
213.在另一种可能实现方式中,如图17所示,装置还包括:
214.获取模块1602,用于在虚拟道具被触发的情况下,获取第一虚拟对象的位置及手持虚拟道具的第二虚拟对象的位置;
215.显示模块1601,用于在第二虚拟对象的位置在视野内且第二虚拟对象的位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
216.在另一种可能实现方式中,如图17所示,装置还包括:
217.获取模块1602,用于在虚拟道具被触发的情况下,获取第一虚拟对象的位置及手持虚拟道具的第二虚拟对象的位置;
218.确定模块1603,用于基于第二虚拟对象的位置、第二虚拟对象的朝向及第二虚拟对象与虚拟道具之间的相对位置关系,确定虚拟道具的位置;
219.显示模块1601,用于在虚拟道具的位置在视野内且虚拟道具的位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,显示虚拟道具的道具特效。
220.在另一种可能实现方式中,如图17所示,装置还包括:
221.获取模块1602,用于在虚拟道具被触发且开始移动的情况下,获取第一虚拟对象的位置及触发虚拟道具的第三虚拟对象的位置;
222.确定模块1603,用于基于第三虚拟对象的位置及虚拟道具的移动方向,确定虚拟道具当前的位置;
223.显示模块1601,用于在虚拟道具在视野内移动且虚拟道具的位置与第一虚拟对象的位置之间的距离不大于目标距离的情况下,显示虚拟道具的移动特效。
224.需要说明的是:上述实施例提供的道具特效显示装置仅以上述各功能模块的划分进行举例说明,实际应用中,能够根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的道具特效显示装置与道具特效显示方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
225.本技术实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行以实现上述实施例的道具特效显示方法所执行的操作。
226.可选地,计算机设备提供为终端。图18示出了本技术一个示例性实施例提供的终端1800的结构框图。该终端1800可以是便携式移动终端,比如:智能手机、平板电脑、mp3播放器(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
227.终端1800包括有:处理器1801和存储器1802。
228.处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1801还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
229.存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储至少一个计算机程序,该至少一个计算机程序用于被处理器1801所执行以实现本技术中方法实施例提供的道具特效显示方法。
230.在一些实施例中,终端1800还可选包括有:外围设备接口1803和至少一个外围设备。处理器1801、存储器1802和外围设备接口1803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1803相连。具体地,外围设备包括:射频电路1804、显示屏1805、摄像头组件1806、音频电路1807、定位组件1808和电源1809中的至少一种。
231.外围设备接口1803可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1801和存储器1802。在一些实施例中,处理器1801、存储器1802和外围设备接口1803被集成在同一芯片或电路板上;在一些其他实施例中,处理器1801、存储器1802和外围设备接口1803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
232.射频电路1804用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路1804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1804包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wireless fidelity,无线保真)网络。在一些实施
例中,射频电路1804还可以包括nfc(near field communication,近距离无线通信)有关的电路,本技术对此不加以限定。
233.显示屏1805用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1805是触摸显示屏时,显示屏1805还具有采集在显示屏1805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1801进行处理。此时,显示屏1805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1805可以为一个,设置在终端1800的前面板;在另一些实施例中,显示屏1805可以为至少两个,分别设置在终端1800的不同表面或呈折叠设计;在另一些实施例中,显示屏1805可以是柔性显示屏,设置在终端1800的弯曲表面上或折叠面上。甚至,显示屏1805还可以设置成非矩形的不规则图形,也即异形屏。显示屏1805可以采用lcd(liquid crystal display,液晶显示屏)、oled(organic light-emitting diode,有机发光二极管)等材质制备。
234.摄像头组件1806用于采集图像或视频。可选地,摄像头组件1806包括前置摄像头和后置摄像头。前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
235.音频电路1807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1801进行处理,或者输入至射频电路1804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1801或射频电路1804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1807还可以包括耳机插孔。
236.定位组件1808用于定位终端1800的当前地理位置,以实现导航或lbs(location based service,基于位置的服务)。定位组件1808可以是基于美国的gps(global positioning system,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
237.电源1809用于为终端1800中的各个组件进行供电。电源1809可以是交流电、直流电、一次性电池或可充电电池。当电源1809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
238.在一些实施例中,终端1800还包括有一个或多个传感器1810。该一个或多个传感器1810包括但不限于:加速度传感器1811、陀螺仪传感器1812、压力传感器1813、指纹传感器1814、光学传感器1815以及接近传感器1816。
239.加速度传感器1811可以检测以终端1800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1811可以用于检测重力加速度在三个坐标轴上的分量。处理器1801可以根据加速度传感器1811采集的重力加速度信号,控制显示屏1805以横向视图或纵向视图进行用户界面的显示。加速度传感器1811还可以用于游戏或者用户的运动数据的采集。
240.陀螺仪传感器1812可以检测终端1800的机体方向及转动角度,陀螺仪传感器1812可以与加速度传感器1811协同采集用户对终端1800的3d动作。处理器1801根据陀螺仪传感器1812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。
241.压力传感器1813可以设置在终端1800的侧边框和/或显示屏1805的下层。当压力传感器1813设置在终端1800的侧边框时,可以检测用户对终端1800的握持信号,由处理器1801根据压力传感器1813采集的握持信号进行左右手识别或快捷操作。当压力传感器1813设置在显示屏1805的下层时,由处理器1801根据用户对显示屏1805的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
242.指纹传感器1814用于采集用户的指纹,由处理器1801根据指纹传感器1814采集到的指纹识别用户的身份,或者,由指纹传感器1814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1814可以被设置在终端1800的正面、背面或侧面。当终端1800上设置有物理按键或厂商logo时,指纹传感器1814可以与物理按键或厂商logo集成在一起。
243.光学传感器1815用于采集环境光强度。在一个实施例中,处理器1801可以根据光学传感器1815采集的环境光强度,控制显示屏1805的显示亮度。具体地,当环境光强度较高时,调高显示屏1805的显示亮度;当环境光强度较低时,调低显示屏1805的显示亮度。在另一个实施例中,处理器1801还可以根据光学传感器1815采集的环境光强度,动态调整摄像头组件1806的拍摄参数。
244.接近传感器1816,也称距离传感器,设置在终端1800的前面板。接近传感器1816用于采集用户与终端1800的正面之间的距离。在一个实施例中,当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变小时,由处理器1801控制显示屏1805从亮屏状态切换为息屏状态;当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变大时,由处理器1801控制显示屏1805从息屏状态切换为亮屏状态。
245.本领域技术人员可以理解,图18中示出的结构并不构成对终端1800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
246.可选地,计算机设备提供为服务器。图19是本技术实施例提供的一种服务器的结构示意图,该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)1901和一个或一个以上的存储器1902,其中,存储器1902中存储有至少一条计算机程序,至少一条计算机程序由处理器1901加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现
设备功能的部件,在此不做赘述。
247.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行以实现上述实施例的道具特效显示方法所执行的操作。
248.本技术实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述方面所述的道具特效显示方法所执行的操作。
249.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
250.以上所述仅为本技术实施例的可选实施例,并不用以限制本技术实施例,凡在本技术实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!
1