虚拟环境中的飞行轨迹显示方法、装置、设备及存储介质转让专利

申请号 : CN202010209995.8

文献号 : CN111437602B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 卢志棠

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

摘要 :

本申请公开了虚拟环境中的飞行轨迹显示方法、装置、设备及存储介质。方法包括:接收第一终端发送的第一发射信息;基于第一终端的标识,得到目标索引以及维护的资源地址和索引的目标对应关系;将目标对应关系和初始对应关系之间的增量信息发送给至少一个第二终端;向至少一个第二终端中满足条件的第二终端发送第二发射信息,第二终端用于生成目标虚拟飞行物的飞行轨迹,在虚拟环境中显示目标虚拟飞行物的飞行轨迹。基于上述过程,服务器与第二终端之间先同步增量信息,同步后,服务器仅需向第二终端发送包括生成飞行轨迹的必须数据的发射信息,有利于降低显示飞行轨迹的延迟,降低网络带宽和带宽波峰,飞行轨迹的显示效果较好。

权利要求 :

1.一种虚拟环境中的飞行轨迹显示方法,其特征在于,所述方法应用于服务器,所述方法包括:

接收第一终端发送的第一发射信息,所述第一发射信息包括所述第一终端的标识和目标虚拟飞行物的初始飞行数据;

基于所述第一终端的标识,对维护的资源地址和索引的初始对应关系进行处理,得到所述目标虚拟飞行物对应的目标索引以及维护的资源地址和索引的目标对应关系,所述资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址,所述索引用于标识虚拟飞行物;

将所述目标对应关系和所述初始对应关系之间的增量信息发送给至少一个第二终端,所述至少一个第二终端为与所述第一终端显示同一虚拟环境的终端;

向所述至少一个第二终端中满足条件的第二终端发送第二发射信息,所述第二发射信息包括所述目标索引和所述初始飞行数据,所述第二终端用于基于本地维护的资源地址和索引的目标对应关系,获取所述目标索引对应的目标资源地址,基于所述目标资源地址指示的目标资源和所述初始飞行数据,生成目标虚拟飞行物的飞行轨迹,在所述虚拟环境中显示所述目标虚拟飞行物的飞行轨迹。

2.根据权利要求1所述的方法,其特征在于,基于所述第一终端的标识,对维护的资源地址和索引的初始对应关系进行处理,得到所述目标虚拟飞行物对应的目标索引以及维护的资源地址和索引的目标对应关系,包括:基于所述第一终端的标识,确定所述目标虚拟飞行物的目标资源地址;

响应于基于所述初始对应关系未获取到所述目标资源地址对应的索引,创建所述目标虚拟飞行物对应的目标索引;基于所述目标资源地址和所述目标索引之间的对应关系更新所述初始对应关系,得到维护的资源地址和索引的目标对应关系;

响应于基于所述初始对应关系获取到所述目标资源地址对应的索引,将所述目标资源地址对应的索引作为所述目标虚拟飞行物对应的目标索引;将所述初始对应关系作为维护的资源地址和索引的目标对应关系。

3.根据权利要求2所述的方法,其特征在于,所述初始对应关系基于第一初始查找表和第二初始查找表维护,所述目标对应关系基于第一目标查找表和第二目标查找表维护;所述第一初始查找表和所述第一目标查找表用于基于索引查找资源地址,所述第二初始查找表和所述第二目标查找表用于基于资源地址查找索引;

所述响应于基于所述初始对应关系未获取到所述目标资源地址对应的索引,创建所述目标虚拟飞行物对应的目标索引,基于所述目标资源地址和所述目标索引之间的对应关系更新所述初始对应关系,得到维护的资源地址和索引的目标对应关系,包括:响应于在所述第二初始查找表中未查找到所述目标资源地址对应的索引,创建所述目标虚拟飞行物对应的目标索引;将所述目标资源地址和所述目标索引添加至所述第一初始查找表中,得到所述第一目标查找表;将所述目标资源地址和所述目标索引添加至所述第二初始查找表中,得到所述第二目标查找表。

4.根据权利要求3所述的方法,其特征在于,所述响应于基于所述初始对应关系获取到所述目标资源地址对应的索引,将所述目标资源地址对应的索引作为所述目标虚拟飞行物对应的目标索引,将所述初始对应关系作为维护的资源地址和索引的目标对应关系,包括:响应于在所述第二初始查找表中查找到所述目标资源地址对应的索引,将所述目标资源地址对应的索引作为所述目标虚拟飞行物对应的目标索引,将所述第一初始查找表作为所述第一目标查找表,将所述第二初始查找表作为所述第二目标查找表。

5.根据权利要求3所述的方法,其特征在于,所述将所述目标对应关系和所述初始对应关系之间的增量信息发送给至少一个第二终端,包括:将所述第一目标查找表和所述第一初始查找表之间的第一增量信息,以及所述第二目标查找表和所述第二初始查找表之间的第二增量信息发送给至少一个第二终端。

6.根据权利要求1所述的方法,其特征在于,所述将所述目标对应关系和所述初始对应关系之间的增量信息发送给至少一个第二终端之前,所述方法还包括:基于游戏开始指令,将需要维护的资源地址和索引的对应关系同步至所述至少一个第二终端的本地。

7.一种虚拟环境中的飞行轨迹显示方法,其特征在于,所述方法应用于第二终端,所述方法包括:

将服务器发送的增量信息同步至本地维护的资源地址和索引的初始对应关系中,得到本地维护的资源地址和索引的目标对应关系,所述资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址,所述索引用于标识虚拟飞行物;

接收所述服务器发送的第二发射信息,所述第二发射信息包括目标虚拟飞行物对应的目标索引和初始飞行数据;

基于本地维护的所述资源地址和索引的目标对应关系,获取所述目标索引对应的目标资源地址;

基于所述目标资源地址指示的目标资源和所述初始飞行数据,生成所述目标虚拟飞行物的飞行轨迹,在虚拟环境中显示所述目标虚拟飞行物的飞行轨迹。

8.根据权利要求7所述的方法,其特征在于,所述初始对应关系基于第一初始查找表和第二初始查找表维护,所述目标对应关系基于第一目标查找表和第二目标查找表维护;所述第一初始查找表和所述第一目标查找表用于基于索引查找资源地址,所述第二初始查找表和所述第二目标查找表用于基于资源地址查找索引;

所述将服务器发送的增量信息同步至本地维护的资源地址和索引的初始对应关系中,得到本地维护的资源地址和索引的目标对应关系,包括:将所述服务器发送的所述第一目标查找表和所述第一初始查找表之间的第一增量信息同步至所述第一初始查找表中,得到所述第一目标查找表;

将所述服务器发送的所述第二目标查找表和所述第二初始查找表之间的第二增量信息同步至所述第二初始查找表中,得到所述第二目标查找表;

所述基于本地维护的所述资源地址和索引的目标对应关系,获取所述目标索引对应的目标资源地址,包括:

从所述第一目标查找表中查找所述目标索引对应的目标资源地址。

9.根据权利要求7所述的方法,其特征在于,所述目标资源地址指示的目标资源包括网格组件、粒子特效组件和抛体移动计算组件,所述基于所述目标资源地址指示的目标资源和所述初始飞行数据,生成所述目标虚拟飞行物的飞行轨迹,包括:基于所述初始飞行数据,利用所述网格组件、所述粒子特效组件和所述抛体移动计算组件生成所述目标虚拟飞行物的飞行轨迹。

10.根据权利要求7所述的方法,其特征在于,所述在所述虚拟环境中显示所述目标虚拟飞行物的飞行轨迹之后,所述方法还包括:在所述虚拟环境中显示所述目标虚拟飞行物对应的特效动画。

11.根据权利要求7所述的方法,其特征在于,所述方法还包括:基于本地虚拟飞行物的发射指令,从本地提取所述本地虚拟飞行物的资源;

基于所述本地虚拟飞行物的资源和所述本地虚拟飞行物的初始飞行数据,生成所述本地虚拟飞行物的飞行轨迹,在所述虚拟环境中显示所述本地虚拟飞行物的飞行轨迹。

12.一种虚拟环境中的飞行轨迹显示装置,其特征在于,所述装置应用于服务器,所述装置包括:

接收模块,用于接收第一终端发送的第一发射信息,所述第一发射信息包括所述第一终端的标识和目标虚拟飞行物的初始飞行数据;

处理模块,用于基于所述第一终端的标识,对维护的资源地址和索引的初始对应关系进行处理,得到所述目标虚拟飞行物对应的目标索引以及维护的资源地址和索引的目标对应关系,所述资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址,所述索引用于标识虚拟飞行物;

发送模块,用于将所述目标对应关系和所述初始对应关系之间的增量信息发送给至少一个第二终端,所述至少一个第二终端为与所述第一终端显示同一虚拟环境的终端;

所述发送模块,还用于向所述至少一个第二终端中满足条件的第二终端发送第二发射信息,所述第二发射信息包括所述目标索引和所述初始飞行数据,所述第二终端用于基于本地维护的资源地址和索引的目标对应关系,获取所述目标索引对应的目标资源地址,基于所述目标资源地址指示的目标资源和所述初始飞行数据,生成目标虚拟飞行物的飞行轨迹,在所述虚拟环境中显示所述目标虚拟飞行物的飞行轨迹。

13.一种虚拟环境中的飞行轨迹显示装置,其特征在于,所述装置应用于第二终端,所述装置包括:

同步模块,用于将服务器发送的增量信息同步至本地维护的资源地址和索引的初始对应关系中,得到本地维护的资源地址和索引的目标对应关系,所述资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址,所述索引用于标识虚拟飞行物;

接收模块,用于接收所述服务器发送的第二发射信息,所述第二发射信息包括目标虚拟飞行物对应的目标索引和初始飞行数据;

获取模块,用于基于本地维护的所述资源地址和索引的目标对应关系,获取所述目标索引对应的目标资源地址;

生成模块,用于基于所述目标资源地址指示的目标资源和所述初始飞行数据,生成所述目标虚拟飞行物的飞行轨迹;

显示模块,用于在虚拟环境中显示所述目标虚拟飞行物的飞行轨迹。

14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至6任一所述的虚拟环境中的飞行轨迹显示方法,或者如权利要求7至11任一所述的虚拟环境中的飞行轨迹显示方法。

15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至6任一所述的虚拟环境中的飞行轨迹显示方法,或者如权利要求7至11任一所述的虚拟环境中的飞行轨迹显示方法。

说明书 :

虚拟环境中的飞行轨迹显示方法、装置、设备及存储介质

技术领域

[0001] 本申请实施例涉及计算机技术领域,特别涉及一种虚拟环境中的飞行轨迹显示方法、装置、设备及存储介质。

背景技术

[0002] 在诸如智能手机、平板电脑之类的终端上,存在很多具有虚拟环境的应用程序,如:虚拟现实应用程序、军事仿真程序、FPS(First‑Person Shooting Game,第一人称射击
游戏)、TPS(Third‑Person Shooting Game,第三人称射击游戏)、MOBA(Multiplayer 
Online Battle Arena Games,多人在线战术竞技游戏)等。在这些应用程序中,用户可以通
过第一终端控制虚拟对象发射虚拟飞行物,然后第一终端和显示同一虚拟环境的第二终端
可以在该虚拟环境中显示该虚拟飞行物的飞行轨迹,提高用户在虚拟环境中的游戏体验。
[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] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于
本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
[0047] 图1是本申请实施例提供的一种虚拟环境中的飞行轨迹显示方法的实施环境的示意图;
[0048] 图2是本申请实施例提供的一种虚拟环境中的飞行轨迹显示方法流程图;
[0049] 图3是本申请实施例提供的一种虚拟飞行物系统的同步过程的示意图;
[0050] 图4是本申请实施例提供的一种目标资源地址指示的目标资源的示意图;
[0051] 图5是本申请实施例提供的一种虚拟飞行物的飞行轨迹的示意图;
[0052] 图6是本申请实施例提供的一种虚拟飞行物的飞行轨迹的示意图;
[0053] 图7是本申请实施例提供的一种虚拟飞行物的飞行轨迹的示意图;
[0054] 图8是本申请实施例提供的一种事件管理器的示意图;
[0055] 图9是本申请实施例提供的一种第一终端、服务器、第二终端之间的交互过程示意图;
[0056] 图10是本申请实施例提供的一种虚拟环境中的飞行轨迹显示方案的实现过程示意图;
[0057] 图11是本申请实施例提供的一种网络带宽波峰的测试结果示意图;
[0058] 图12是本申请实施例提供的一种虚拟环境中的飞行轨迹显示装置示意图;
[0059] 图13是本申请实施例提供的一种虚拟环境中的飞行轨迹显示装置示意图;
[0060] 图14是本申请实施例提供的一种虚拟环境中的飞行轨迹显示装置示意图;
[0061] 图15是本申请实施例提供的一种终端的结构示意图;
[0062] 图16是本申请实施例提供的一种服务器的结构示意图。

具体实施方式

[0063] 为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
[0064] 首先,对本申请实施例中涉及的若干个名词进行解释:
[0065] 虚拟环境:是应用程序在终端上运行时提供(或显示)的二维虚拟环境、2.5维虚拟环境或三维虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构
的环境,也可以是纯虚构的环境。
[0066] 虚拟对象:虚拟对象是指在虚拟环境中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等。用户可通过外设部件或点击触摸显示屏的方式操控虚拟对
象。每个虚拟对象在虚拟环境中具有自身的形状和体积,占据虚拟环境中的一部分空间。示
例性地,当虚拟环境为三维虚拟环境时,虚拟对象是基于动画骨骼技术创建的三维立体模
型。
[0067] 目标对象:是虚拟对象在虚拟环境中的攻击目标。用户可通过终端控制虚拟对象对目标对象进行攻击。示例性地,目标对象是虚拟环境中的建筑、物品、生物、交通工具、其
它虚拟对象中的至少一种。
[0068] 虚拟飞行物:虚拟环境中虚拟对象所使用的武器发射的飞行物。例如,用户操控虚拟对象使用枪械对目标对象进行攻击,枪械的子弹就是一种虚拟飞行物;再例如,用户操控
虚拟对象使用手雷对目标对象进行攻击,手雷也是一种虚拟飞行物。
[0069] 飞行轨迹:虚拟环境中虚拟飞行物的运行轨迹。例如,用户操控的虚拟对象使用枪械对目标对象开火并命中目标对象,用户界面上显示的子弹从枪械的枪口飞出一直飞行到
目标对象上的轨迹就是飞行轨迹;再例如,用户操控的虚拟对象使用手雷对目标对象投掷
并命中目标对象,用户界面上显示的手雷从虚拟对象的手上飞出呈抛物线命中目标对象的
轨迹就是飞行轨迹。
[0070] 本申请实施例提供了一种虚拟环境中的飞行轨迹显示方法,请参考图1,其示出了本申请实施例提供的虚拟环境中的飞行轨迹显示方法的实施环境的示意图。该实施环境可
以包括:第一终端11、服务器12和第二终端13。
[0071] 第一终端11安装和运行有支持虚拟环境的应用程序。该应用程序可以是军事仿真应用程序、TPS游戏、FPS游戏、MOBA游戏、多人枪战类生存游戏中的任意一种。第一终端11是
第一用户使用的终端,第一用户使用第一终端11控制位于虚拟环境中的第一虚拟对象进行
活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、
攻击、投掷中的至少一种。在本申请实施例中,第一终端是指虚拟飞行物的发射终端。
[0072] 服务器12用于为支持虚拟环境的应用程序提供后台服务。在一种可能实现方式中,服务器12承担主要计算工作,第一终端11和第二终端13承担次要计算工作;或者,服务
器12承担次要计算工作,第一终端11和第二终端13承担主要计算工作;或者,服务器12、第
一终端11和第二终端13三者之间采用分布式计算架构进行协同计算。
[0073] 第二终端13安装和运行有与第一终端同样的支持虚拟环境的应用程序。第二终端13是第二用户使用的终端,第二用户使用第二终端13控制位于虚拟环境中的第二虚拟对象
进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、
射击、攻击、投掷中的至少一种。在一种可能实现方式中,第二虚拟对象和第一虚拟对象处
于同一虚拟环境中。第一虚拟对象和第二虚拟对象可以属于同一个队伍、同一个组织、具有
好友关系或具有临时性的通讯权限。在本申请实施例中,第二终端是指与第一终端显示同
一虚拟环境的终端。
[0074] 在一种可能实现方式中,第一终端11和第二终端13可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电
子产品,例如PC(Personal Computer,个人计算机)、手机、智能手机、PDA(Personal 
Digital Assistant,个人数字助手)、可穿戴设备、掌上电脑PPC(Pocket PC)、平板电脑、智
能车机、智能电视、智能音箱等。服务器12可以是一台服务器,也可以是由多台服务器组成
的服务器集群,或者是一个云计算服务中心。第一终端11与服务器12通过有线或无线网络
建立通信连接,第二终端13与服务器12通过有线或无线网络建立通信连接。
[0075] 本领域技术人员应能理解上述第一终端11、服务器12和第二终端13仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围
以内,并在此以引用方式包含于此。
[0076] 基于上述图1所示的实施环境,本申请实施例提供一种虚拟环境中的飞行轨迹显示方法,以该方法应用于服务器12和第二终端13的交互过程为例。如图2所示,本申请实施
例提供的方法可以包括如下步骤:
[0077] 在步骤201中,服务器接收第一终端发送的第一发射信息,第一发射信息包括第一终端的标识和目标虚拟飞行物的初始飞行数据。
[0078] 第一终端是指在显示的虚拟环境中发射目标虚拟飞行物的终端。第一终端是第一用户使用的终端,第一用户可以使用第一终端控制位于虚拟环境中的第一虚拟对象发射目
标虚拟飞行物,以攻击目标对象。在一种可能实现方式中,第一虚拟对象是指虚拟人物角
色,比如仿真人物角色或动漫人物角色;目标对象是虚拟环境中的建筑、物品、生物、交通工
具、其它虚拟对象中的至少一种。
[0079] 需要说明的是,本申请实施例对目标虚拟飞行物的类型不加以限定,可以根据不同的使用场景而有所不同。示例性地,当第一用户使用第一终端控制第一虚拟对象使用枪
械对目标对象进行攻击时,目标虚拟飞行物是指该枪械的子弹;当第一用户使用第一终端
操控第一虚拟对象使用手雷对目标对象进行攻击时,目标虚拟飞行物是指手雷。
[0080] 第一用户可通过操作外设部件在第一终端触发目标虚拟飞行物的发射指令,或者,通过在第一终端的触摸屏上触控目标虚拟飞行物对应的控制元素触发目标虚拟飞行物
的发射指令。当第一终端检测到目标虚拟飞行物的发射指令时,第一终端可以获取该目标
虚拟飞行物的初始飞行数据,然后将包括第一终端的标识和初始飞行数据的第一发射信息
发送至服务器。
[0081] 第一终端的标识用于标识该第一终端,包括但不限于使用第一终端的第一用户的身份标识、第一终端控制的第一虚拟形象的昵称、第一终端控制的第一虚拟形象的登录账
号等。目标虚拟飞行物的初始飞行数据是指需要上报服务器的数据,包括但不限于目标虚
拟飞行物在虚拟环境中的初始位置和目标虚拟飞行物的初始飞行速度。目标虚拟飞行物在
虚拟环境中的初始位置可以用目标虚拟飞行物在虚拟环境中的初始坐标表示;目标虚拟飞
行物的初始飞行速度包括初始飞行速率和初始飞行方向。
[0082] 第一终端将第一发射信息发送至服务器后,服务器接收第一终端发送的第一发射信息。在一种可能实现方式中,在接收第一终端发送的第一发射信息后,服务器可以对第一
发射信息进行有效性验证,当第一发射信息的有效性验证通过时,执行后续步骤;当第一发
射信息的有效性验证不通过时,不执行后续步骤,此时,服务器可以向第一终端反馈无效响
应。
[0083] 在一种可能实现方式中,服务器对第一发射信息进行有效性验证的方式包括但不限于以下两种:
[0084] 方式一:服务器检测第一终端中的第一虚拟对象的目标虚拟飞行物的剩余量是否大于0;若剩余量大于0,则确定第一发射信息的有效性验证通过;若剩余量等于0,则确定第
一发射信息的有效性验证不通过。
[0085] 方式二:服务器检测第一终端中的第一虚拟对象的目标虚拟飞行物的能量值是否不小于参考阈值;若能量值不小于参考阈值,则确定第一发射信息的有效性验证通过;若能
量至小于参考阈值,则确定第一发射信息的有效性验证不通过。
[0086] 在一种可能实现方式中,第一终端和服务器中均具有虚拟对象控制器。第一终端的虚拟对象控制器与服务器的虚拟对象控制器之间具有网络连接。第一终端可以基于虚拟
对象控制器之间的网络连接向服务器发送第一发射信息。第一终端的虚拟对象控制器用于
获取第一虚拟对象的活动信息,当第一用户通过第一终端控制第一虚拟对象发射目标虚拟
飞行物时,第一终端的虚拟对象控制器即可采集目标虚拟飞行物的初始飞行数据,然后将
包括初始飞行数据和第一终端的标识的第一发射信息通过虚拟对象控制器之间的网络连
接发送至服务器。服务器的虚拟对象控制器用于与各个终端的虚拟对象控制器之间进行网
络通信,服务器的虚拟对象控制器可以接收第一终端的虚拟对象控制器发送的第一发射信
息。
[0087] 在一种可能实现方式中,第一终端在检测到目标虚拟飞行物的发射指令后,除向服务器发送第一发射信息外,还可以在本地生成目标虚拟飞行物的飞行轨迹,并在虚拟环
境中显示目标虚拟飞行物的飞行轨迹。在一种可能实现方式中,第一终端在本地生成目标
虚拟飞行物的飞行轨迹的过程可以为:第一终端在本地提取目标虚拟飞行物的目标资源;
基于目标虚拟飞行物的目标资源和目标虚拟飞行物的初始飞行数据,生成目标虚拟飞行物
的飞行轨迹。第一终端本地存储有目标虚拟飞行物的目标资源,在检测到目标虚拟飞行物
的发射指令时,第一终端可以在本地提取出用于生成该目标虚拟飞行物的飞行轨迹的目标
资源,然后结合初始飞行数据生成目标虚拟飞行物的飞行轨迹。
[0088] 在一种可能实现方式中,目标资源包括网格组件、粒子特效组件和抛体移动计算组件,这些组件可以结合初始飞行数据生成目标虚拟飞行物的飞行轨迹。网格组件用于管
理真实的mesh(网格),能够生成目标虚拟飞行物的实体;粒子特效组件用于表现飞行轨迹
中的特效,比如,目标虚拟飞行物的拖尾特效、飞行轨迹的烟雾特效等;抛体移动计算组件
为物理仿真的计算组件,用于模拟目标虚拟飞行物的真实抛体行为。在初始飞行数据的基
础上,利用这些组件,可以生成包含目标虚拟飞行物实体、粒子特效和抛体行为的飞行轨
迹,更加接近真实的飞行轨迹,有利于满足硬核玩家的需求,实现更好的游戏体验。
[0089] 需要说明的是,虚拟飞行物对应的资源可以由开发人员进行设置,也可以根据应用场景灵活调整,本申请实施例对比不加以限定。不同的虚拟飞行物可以对应不同的资源,
也可以对应相同的资源。即使不同的虚拟飞行物对应相同的资源,由于不同的虚拟飞行物
的初始飞行数据不同,生成的飞行轨迹也不同。此外,对于同一虚拟飞行物,如果不同发射
情况下的初始飞行数据不同,利用该虚拟飞行物的资源生成的飞行轨迹也不同。
[0090] 在一种可能实现方式中,第一终端还可以检测目标虚拟飞行物是否命中目标对象,若目标虚拟飞行物命中目标对象,第一终端可以向服务器上报命中信息,以由服务器对
该命中信息进行合法性校验。
[0091] 在一种可能实现方式中,服务器在接收第一发射信息后,可以基于第一发射信息,生成目标虚拟飞行物的飞行轨迹。然后基于该目标虚拟飞行物的飞行轨迹对第一终端上报
的命中信息进行合法性校验。示例性地,第一用户可能在第一终端上安装了作弊程序对虚
拟飞行物的命中率进行篡改,此种情况下,服务器可以基于目标虚拟飞行物的飞行轨迹检
测第一终端上报的命中信息是否进行过篡改,若第一终端上报的命中信息进行过篡改,则
该命中信息的合法性校验不通过;若第一终端上报的命中信息未进行过篡改,则该命中信
息的合法性校验通过。
[0092] 在一种可能实现方式中,服务器在确定第一终端上报的命中信息的合法性校验通过后,可以计算目标虚拟飞行物对目标对象的伤害值,然后将伤害值反馈至第一终端,以由
第一终端显示目标对象的伤害值。
[0093] 在一种可能实现方式中,服务器计算目标虚拟飞行物对目标对象的伤害值的方式可以为:服务器根据目标虚拟飞行物的飞行速度和具体类型,计算目标虚拟飞行物对目标
对象的伤害值。比如,当目标虚拟飞行物为手雷时,根据手雷以及手雷对应的飞行速度计算
手雷对目标对象的伤害值。
[0094] 在另一种可能实现方式中,服务器计算目标虚拟飞行物对目标对象的伤害值的方式还可以为:服务器根据目标虚拟飞行物的飞行速度、目标虚拟飞行物的具体类型以及目
标对象的防御值,计算目标虚拟飞行物对目标对象的伤害值。目标对象的防御值可以是目
标对象的护甲、目标对象的闪避概率、目标虚拟飞行物与目标对象之间的障碍物中的至少
一种。
[0095] 在步骤202中,服务器基于第一终端的标识,对维护的资源地址和索引的初始对应关系进行处理,得到目标虚拟飞行物对应的目标索引以及维护的资源地址和索引的目标对
应关系。
[0096] 资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址。需要说明的是,由于终端在安装游戏包的过程中,已将该游戏中涉及到的生成虚拟飞行物的飞行轨迹所需
的资源存储在终端本地,所以资源地址是指终端本地安装的游戏包下的地址,通常情况下,
同一资源在不同终端本地的地址是一样的。索引用于标识虚拟飞行物。在一种可能实现方
式中,索引是指虚拟飞行物的GUID(Globally Unique Identifier,全局唯一标识符),GUID
是一种由算法生成的二进制长度为128位的数字标识符。
[0097] 资源地址和索引的初始对应关系是指在服务器接收到第一发射信息之前,服务器中维护的资源地址和索引的对应关系。在接收到第一发射信息后,服务器可以对初始对应
关系进行处理,得到维护的资源地址和索引的目标对应关系以及目标虚拟飞行物对应的目
标索引。
[0098] 在一种可能实现方式中,在步骤202之前,还包括:服务器基于游戏开始指令,创建虚拟飞行物系统。虚拟飞行物系统用于维护资源地址和索引的对应关系。也就是说,服务器
通过虚拟飞行物系统维护资源地址和索引的对应关系。在每场游戏开始时,服务器创建一
个用于维护该场游戏中涉及的资源地址和索引的对应关系的虚拟飞行物系统。服务器在创
建虚拟飞行物系统后,可以将该虚拟飞行物系统同步至参与该场游戏的各个终端本地。在
本申请实施例中,服务器将虚拟飞行物系统同步至第一终端本地和第二终端本地。例如,虚
拟飞行物系统的同步过程可以如图3所示,服务器将创建的虚拟飞行物系统301同步至第一
终端本地,得到第一终端的本地虚拟飞行物系统302;服务器将创建的虚拟飞行物系统301
同步至第二终端本地,得到第二终端的本地虚拟飞行物系统303。
[0099] 在同步后,服务器的虚拟飞行物系统可以与各个终端的本地虚拟飞行物系统之间保持网络连接。需要说明的是,服务器在游戏开始时创建的虚拟飞行物系统维护的资源地
址和索引的对应关系为空的对应关系,随着游戏进行过程中虚拟飞行物的不断发射,虚拟
飞行物系统维护的资源地址和索引的对应关系不断扩增。
[0100] 在一种可能实现方式中,服务器中的初始对应关系和目标对应关系的维护方式包括但不限于以下两种:
[0101] 维护方式一:初始对应关系基于初始关系表维护,目标对应关系基于目标关系表维护。初始关系表和目标关系表用于管理资源地址和索引的相互对应关系。
[0102] 在该种维护方式一中,初始关系表为更新前的关系表,目标关系表为更新后的关系表,服务器仅基于一个关系表维护资源地址和索引的对应关系,有利于提高资源地址和
索引的对应关系的更新速度,便于达到快速同步的目的。
[0103] 在一种可能实现方式中,服务器的虚拟飞行物系统基于一个关系表维护资源地址和索引的对应关系。
[0104] 维护方式二:初始对应关系基于第一初始查找表和第二初始查找表维护,目标对应关系基于第一目标查找表和第二目标查找表维护,第一初始查找表和第一目标查找表用
于基于索引查找资源地址,第二初始查找表和第二目标查找表用于基于资源地址查找索
引。
[0105] 查找表可以用key‑value(键‑值对)的形式记录资源地址和索引。在第一初始查找表和第一目标查找表中将索引作为key,将资源地址作为value;在第二初始查找表和第二
目标查找表中将资源地址作为key,将索引作为value。
[0106] 在该种维护方式二中,第一初始查找表为更新前的第一查找表,第一目标查找表为更新后的第一查找表,第二初始查找表为更新前的第二查找表,第二目标查找表为更新
后的第二查找表。
[0107] 在一种可能实现方式中,服务器的虚拟飞行物系统基于第一查找表和第二查找表这两个查找表维护资源地址和索引的对应关系。如图3所示,服务器的虚拟飞行物系统301
基于第一查找表3011和第二查找表3012这两个查找表维护资源地址和索引的对应关系。
[0108] 此种维护方式二下,可以基于key快速查找到对应的value,有利于提高基于索引查找资源地址,以及根据资源地址查找索引的速度,便于网络序列化。
[0109] 在一种可能实现方式中,步骤202的实现过程包括以下三个步骤:
[0110] 步骤1:基于第一终端的标识,确定目标虚拟飞行物的目标资源地址。
[0111] 由于第一终端中的第一虚拟对象在使用某一武器前,需要向服务器发送使用请求,当服务器反馈确认使用指令后,第一终端才可以使用该武器。所以,服务器中记录有各
个终端的虚拟对象当前使用的武器情况。
[0112] 在接收到第一发射信息后,服务器可以基于第一终端的标识,确定第一终端的第一虚拟对象当前使用的武器,然后可以确定目标虚拟飞行物的类型,进而可以在预先设置
好的目标虚拟飞行物的类型和生成飞行轨迹所需资源的地址的对应关系中,确定目标虚拟
飞行物的目标资源地址。
[0113] 需要说明的是,由于服务器记录有各个终端的虚拟对象当前使用的武器情况,所以服务器能够基于第一终端的标识,直接确定目标资源地址,无需第一终端发送目标资源
地址,可以节省第一发射信息所占用的网络资源。
[0114] 在确定目标虚拟飞行物的目标资源地址后,服务器检测基于维护的资源地址和索引的初始对应关系是否获取到目标资源地址对应的索引。若基于维护的资源地址和索引的
初始对应关系未获取到目标资源地址对应的索引,则执行步骤2;若基于维护的资源地址和
索引的初始对应关系获取到目标资源地址对应的索引,则执行步骤3。
[0115] 步骤2:响应于基于初始对应关系未获取到目标资源地址对应的索引,创建目标虚拟飞行物对应的目标索引,基于目标资源地址和目标索引之间的对应关系更新初始对应关
系,得到维护的资源地址和索引的目标对应关系。
[0116] 当基于初始对应关系未获取到目标资源地址对应的索引时,说明服务器当前维护的对应关系中不存在目标资源地址和索引的对应关系,此时,创建目标虚拟飞行物对应的
目标索引。在一种可能实现方式中,当索引是指虚拟飞行物的GUID时,服务器创建目标索引
的方式可以为:服务器基于算法生成一个新的二进制长度为128位的数字标识符作为目标
索引。在得到目标索引后,服务器基于目标资源地址和目标索引之间的对应关系更新初始
对应关系,得到维护的资源地址和索引的目标对应关系。
[0117] 在一种可能实现方式中,对应于服务器中的初始对应关系和目标对应关系的两种维护方式,该步骤2的实现方式包括以下两种:
[0118] 实现方式一:响应于在初始关系表中未查询到目标资源地址对应的索引,创建目标虚拟飞行物对应的目标索引;将目标资源地址和目标索引之间的对应关系添加至初始关
系表中,得到目标关系表。
[0119] 此种实现方式一发生在服务器中的初始对应关系和目标对应关系的维护方式为维护方式一的情况下。
[0120] 实现方式二:响应于在第二初始查找表中未查找到目标资源地址对应的索引,创建目标虚拟飞行物对应的目标索引;将目标资源地址和目标索引添加至第一初始查找表
中,得到第一目标查找表;将目标资源地址和目标索引添加至第二初始查找表中,得到第二
目标查找表。
[0121] 此种实现方式二发生在服务器中的初始对应关系和目标对应关系的维护方式为维护方式二的情况下。
[0122] 将目标资源地址和目标索引添加至第一初始查找表中,得到第一目标查找表的过程可以为:将目标索引作为key,将目标资源地址作为value,将该新的key‑value添加至第
一初始查找表中,得到第一目标查找表;将目标资源地址和目标索引添加至第二初始查找
表中,得到第二目标查找表的方式可以为:将资源地址作为key,将目标索引作为value,将
该新的key‑value添加至第二初始查找表中,得到第二目标查找表。
[0123] 步骤3:响应于基于初始对应关系获取到目标资源地址对应的索引,将目标资源地址对应的索引作为目标虚拟飞行物对应的目标索引,将初始对应关系作为维护的资源地址
和索引的目标对应关系。
[0124] 当基于初始对应关系获取到目标资源地址对应的索引时,直接将目标资源地址对应的索引作为目标虚拟飞行物对应的目标索引,将初始对应关系作为目标对应关系。
[0125] 在一种可能实现方式中,对应于服务器中的初始对应关系和目标对应关系的两种维护方式,该步骤3的实现方式包括以下两种:
[0126] 方式一:响应于在初始关系表中查询到目标资源地址对应的索引,将目标资源地址对应的索引作为目标虚拟飞行物对应的目标索引,将初始关系表作为目标关系表。
[0127] 此种实现方式一发生在服务器中的初始对应关系和目标对应关系的维护方式为维护方式一的情况下。
[0128] 方式二:响应于在第二初始查找表中查找到目标资源地址对应的索引,将目标资源地址对应的索引作为目标虚拟飞行物对应的目标索引,将第一初始查找表作为第一目标
查找表,将第二初始查找表作为第二目标查找表。
[0129] 此种实现方式二发生在服务器中的初始对应关系和目标对应关系的维护方式为维护方式二的情况下。
[0130] 在步骤203中,服务器将目标对应关系和初始对应关系之间的增量信息发送给至少一个第二终端。
[0131] 其中,至少一个第二终端为与第一终端显示同一虚拟环境的终端。
[0132] 服务器在得到目标对应关系后,可以获取目标对应关系和初始对应关系之间的增量信息,然后将增量信息发送给至少一个第二终端。需要说明的是,在实现步骤203之前,还
包括:服务器基于游戏开始指令,将需要维护的资源地址和索引的对应关系同步至该至少
一个第二终端的本地。在一种可能实现方式中,服务器将需要维护的资源地址和索引的对
应关系同步至该至少一个第二终端的本地的方式可以为:服务器将创建的虚拟飞行物系统
同步至该至少一个第二终端的本地。该虚拟飞行物系统中包括需要维护的资源地址和索引
的对应关系。在同步后,服务器的虚拟飞行物系统与第二终端的本地虚拟飞行物系统之间
保持网络连接。在此基础下,服务器可以通过虚拟飞行物系统将增量信息发送给至少一个
第二终端。
[0133] 目标对应关系和初始对应关系之间的增量信息用于指示与初始对应关系相比,目标对应关系中增加的信息。需要说明的是,本申请实施例对增量信息的数据量不加以限定。
当基于初始对应关系未获取到目标资源地址对应的索引时,增量信息的数据量不为0,增量
信息为与目标资源地址和目标索引的对应关系对应的信息;当基于初始对应关系获取到目
标资源地址对应的索引时,初始对应关系与目标对应关系相同,增量信息的数据量为0。
[0134] 在一种可能实现方式中,服务器将增量信息发送给至少一个第二终端的方式可以为:服务器向至少一个第二终端发送携带增量信息的同步指令。在一种可能实现方式中,当
增量信息的数据量为0时,服务器将增量信息发送给至少一个第二终端的方式可以为:服务
器向第二终端发送携带空信息的同步指令。该携带空信息的同步指令可以告知第二终端无
需同步新的信息。
[0135] 在一种可能实现方式中,对应于服务器中的初始对应关系和目标对应关系的两种维护方式,目标对应关系和初始对应关系之间的增量信息有两种表示方式:
[0136] 表示方式一:目标对应关系和初始对应关系之间的增量信息用目标关系表和初始关系表之间的增量信息表示。
[0137] 此种表示方式一发生在服务器中的初始对应关系和目标对应关系的维护方式为维护方式一的情况下。
[0138] 表示方式二:目标对应关系和初始对应关系之间的增量信息用第一目标查找表和第一初始查找表之间的第一增量信息,以及第二目标查找表和第二初始查找表之间的第二
增量信息表示。
[0139] 此种表示方式二发生在服务器中的初始对应关系和目标对应关系的维护方式为维护方式二的情况下。
[0140] 对应于上述两种表示方式,服务器将目标对应关系和初始对应关系之间的增量信息发送给至少一个第二终端的方式包括以下两种:
[0141] 方式一:服务器将目标关系表和初始关系表之间的增量信息发送给至少一个第二终端。
[0142] 方式二:服务器将第一目标查找表和第一初始查找表之间的第一增量信息,以及第二目标查找表和第二初始查找表之间的第二增量信息发送给至少一个第二终端。
[0143] 需要说明的是,由于两个查找表用于维护相同的对应关系,所以第一增量信息和第二增量信息的数据量相同。在一种可能实现方式中,当第一目标查找表和第一初始查找
表相同时,第一增量信息的数据量为0,第二增量信息的数据量也为0。
[0144] 需要说明的是,服务器除了将目标对应关系和初始对应关系之间的增量信息发送至第二终端外,还可以将目标对应关系和初始对应关系之间的增量信息发送至第一终端,
以使第一终端更新本地维护的资源地址和索引的对应关系。
[0145] 在步骤204中,第二终端将服务器发送的增量信息同步至本地维护的资源地址和索引的初始对应关系中,得到本地维护的资源地址和索引的目标对应关系。
[0146] 其中,资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址,索引用于标识虚拟飞行物。此处的执行主体第二终端是指服务器发送增量信息的至少一个第二终端
中的任一第二终端。
[0147] 在一种可能实现方式中,第二终端可以通过本地虚拟飞行物系统维护资源地址和索引的对应关系。第二终端将服务器发送的增量信息同步至本地维护的资源地址和索引的
初始对应关系中,得到本地维护的资源地址和索引的目标对应关系的过程可以为:第二终
端将服务器通过虚拟飞行物系统发送的增量信息同步至本地虚拟飞行物系统维护的资源
地址和索引的初始对应关系中,得到本地虚拟飞行物系统维护的资源地址和索引的目标对
应关系。
[0148] 本地虚拟飞行物系统是将服务器创建的虚拟飞行物系统同步至本地后得到的,服务器的虚拟飞行物系统与第二终端的本地虚拟飞行物系统之间保持网络连接。第二终端可
以接收服务器通过虚拟飞行物系统发送的增量信息。第二终端的本地虚拟飞行物系统维护
的资源地址和索引的初始对应关系与服务器的虚拟飞行物系统维护的资源地址和索引的
初始对应关系相同。在接收增量信息后,第二终端将增量信息同步至本地虚拟飞行物系统
维护的资源地址和索引的初始对应关系中,可以得到本地虚拟飞行物系统维护的资源地址
和索引的目标对应关系。在同步增量信息后,第二终端的本地虚拟飞行物系统维护的资源
地址和索引的目标对应关系与服务器的虚拟飞行物系统维护的资源地址和索引的目标对
应关系相同。
[0149] 在一种可能实现方式中,当服务器向第二终端发送携带增量信息的同步指令时,第二终端基于同步指令,将增量信息同步至本地维护的资源地址和索引的初始对应关系
中,得到本地维护的资源地址和索引的目标对应关系。
[0150] 第二终端中的初始对应关系和目标对应关系的维护方式与服务器中的初始对应关系和目标对应关系的维护方式相同。对应于服务器中的初始对应关系和目标对应关系的
两种维护方式,第二终端中的初始对应关系和目标对应关系也具有两种维护方式:
[0151] 维护方式一:初始对应关系基于初始关系表维护,目标对应关系基于目标关系表维护。初始关系表和目标关系表用于管理资源地址和索引的相互对应关系。
[0152] 维护方式二:初始对应关系基于第一初始查找表和第二初始查找表维护,目标对应关系基于第一目标查找表和第二目标查找表维护,第一初始查找表和第一目标查找表用
于基于索引查找资源地址,第二初始查找表和第二目标查找表用于基于资源地址查找索
引。
[0153] 查找表可以用key‑value(键‑值对)的形式记录资源地址和索引。在第一初始查找表和第一目标查找表中将索引作为key,将资源地址作为value;在第二初始查找表和第二
目标查找表中将资源地址作为key,将索引作为value。
[0154] 由于服务器在两种维护方式下具有两种将目标对应关系和初始对应关系之间的增量信息发送给至少一个第二终端的方式,所以第二终端在两种维护方式下也具有两种将
服务器发送的增量信息同步至本地维护的资源地址和索引的初始对应关系中,得到本地维
护的资源地址和索引的目标对应关系的方式:
[0155] 方式一:第二终端将服务器发送的增量信息同步至初始关系表中,得到目标关系表。
[0156] 此种方式一发生在第二终端中的初始对应关系和目标对应关系的维护方式为维护方式一的情况下。
[0157] 方式二:第二终端将服务器发送的第一目标查找表和第一初始查找表之间的第一增量信息同步至第一初始查找表中,得到第一目标查找表;将服务器发送的第二目标查找
表和第二初始查找表之间的第二变量信息同步至第二初始查找表中,得到第二目标查找
表。
[0158] 此种方式二发生在第二终端中的初始对应关系和目标对应关系的维护方式为维护方式二的情况下。
[0159] 需要说明的是,当服务器发送的增量信息的数据量为0时,第二终端本地维护的目标对应关系与初始对应关系相同。
[0160] 基于步骤203和步骤204,可以由服务器获取增量信息,然后将增量信息发送给第二终端,第二终端将增量信息同步至本地维护的资源地址和索引的对应关系中。此种同步
过程可以保证第二终端本地维护的对应关系与服务器维护的对应关系一致。
[0161] 由于服务器在游戏开始时创建的虚拟飞行物系统维护的资源地址和索引的对应关系为空的对应关系,所以在该场游戏的前段过程中,增量信息的数据量较大,第二终端对
本地维护的对应关系不断进行更新,随着游戏进程的推进,本地维护的对应关系中可能已
经涵盖各种虚拟飞行物的资源地址和索引的对应关系,此时,第二终端无需对本地维护的
对应关系进行更新,可以从本地维护的对应关系中直接调用需要的数据。
[0162] 在步骤205中,服务器向至少一个第二终端中满足条件的第二终端发送第二发射信息。
[0163] 其中,第二发射信息包括目标索引和初始飞行数据。
[0164] 在将增量信息同步至至少一个第二终端本地维护的资源地址和索引的对应关系后,服务器向第二终端发送第二发射信息,以使第二终端根据第二发射信息和本地维护的
资源地址和索引的对应关系生成并显示目标虚拟飞行物的飞行轨迹。
[0165] 在一种可能实现方式中,服务器向满足条件的第二终端发送第二发射信息的过程可以为:服务器的虚拟对象控制器通过与满足条件的第二终端的虚拟对象控制器之间的网
络连接向满足条件的第二终端发送第二发射信息。
[0166] 在一种可能实现方式中,满足条件的第二终端包括但不限于以下两种情况:
[0167] 情况一:将与第一终端显示同一虚拟环境的全部第二终端均作为满足条件的第二终端。
[0168] 情况二:将与目标虚拟飞行物之间的相关性满足相关性条件的第二终端作为满足条件的第二终端。
[0169] 在此种情况二下,服务器需要先获取第二终端与目标虚拟飞行物之间的相关性。第二终端与目标虚拟飞行物之间的相关性用于指示在第二终端的虚拟环境中显示目标虚
拟飞行物的飞行轨迹的适合程度。第二终端与目标虚拟飞行物之间的相关性越大,说明在
第二终端的虚拟环境中越适合显示目标虚拟飞行物的飞行轨迹;第二终端与目标虚拟飞行
物之间的相关性越小,说明在第二终端的虚拟环境中越不适合显示目标虚拟飞行物的飞行
轨迹。
[0170] 在一种可能实现方式中,服务器获取第二终端与目标虚拟飞行物之间的相关性的方式可以为:服务器获取目标虚拟飞行物的飞行轨迹在虚拟环境中的起始位置和终止位
置,将起始位置和终止位置之间的连线作为目标线段;基于第二终端的虚拟对象在虚拟环
境中所处的位置与目标线段之间的距离,确定第二终端与目标虚拟飞行物之间的相关性。
虚拟对象在虚拟环境中所处的位置与目标线段之间的距离越小,第二终端与目标虚拟飞行
物之间的相关性越大;虚拟对象在虚拟环境中所处的位置与目标线段之间的距离越大,第
二终端与目标虚拟飞行物之间的相关性越小。
[0171] 本申请实施例对基于第二终端的虚拟对象在虚拟环境中所处的位置与目标线段之间的距离,确定第二终端与目标虚拟飞行物之间的相关性的方式不加以限定,只要能够
使相关性和距离之间为负相关关系即可。示例性地,可以将虚拟对象在虚拟环境中所处的
位置与目标线段之间的距离的倒数作为第二终端与目标虚拟飞行物之间的相关性。
[0172] 在一种可能实现方式中,服务器基于虚拟飞行物系统获取第二终端与目标虚拟飞行物之间的相关性。
[0173] 满足相关性条件可以是指相关性不小于相关性阈值。相关性阈值可以根据经验设置,也可以根据应用场景灵活调整,本申请实施例对此不加以限定。
[0174] 当第二终端满足相关性条件时,说明第二终端与目标虚拟飞行物之间的相关性较大,在第二终端的虚拟环境中适合显示目标虚拟飞行物的飞行轨迹。服务器向满足相关性
条件的第二终端发送第二发射信息,可以仅使适合显示目标虚拟飞行物的飞行轨迹的第二
终端生成并在虚拟环境中显示飞行轨迹,节省带宽资源。
[0175] 在步骤206中,第二终端接收服务器发送的第二发射信息,第二发射信息包括目标虚拟飞行物对应的目标索引和初始飞行数据。
[0176] 服务器向第二终端发送第二发射信息后,第二终端接收服务器发送的第二发射信息。在一种可能实现方式中,第二终端接收服务器发送的第二发射信息的方式为:第二终端
的虚拟对象控制器接收服务器的虚拟对象控制器发送的第二发射信息。
[0177] 需要说明的是,当服务器仅向满足相关性条件的第二终端发送第二发射信息时,此步骤中的第二终端是指满足相关性条件的第二终端。
[0178] 第二终端接收的第二发射信息中包括目标虚拟飞行物对应的目标索引和初始飞行数据。目标索引和初始飞行数据为生成飞行轨迹所必须的数据,也就是说,该第二发射信
息中仅包括生成飞行轨迹所必须的数据,数据量较小,有利于提高传输速度,节省带宽资
源。
[0179] 在步骤207中,第二终端基于本地维护的资源地址和索引的目标对应关系,获取目标索引对应的目标资源地址。
[0180] 由于本地维护的资源地址和索引的目标对应关系是将服务器发送的增量信息同步至初始对应关系后得到的,所以本地维护的资源地址和目标对应关系中必然包括目标索
引对应的目标资源地址。也就是说,第二终端可以基于本地维护的资源地址和索引的目标
对应关系,获取目标索引对应的目标资源地址。
[0181] 对应于第二终端中的初始对应关系和目标对应关系的两种维护方式,第二终端基于本地维护的资源地址和索引的目标对应关系,获取目标索引对应的目标资源地址的实现
方式包括以下两种:
[0182] 方式一:第二终端从目标关系表中查询目标索引对应的目标资源地址。
[0183] 此种方式一发生在第二终端中的初始对应关系和目标对应关系的维护方式为维护方式一的情况下。此种方式一中的查询过程可以为遍历查询过程。
[0184] 方式二:第二终端从第一目标查找表中查找目标索引对应的目标资源地址。
[0185] 此种方式二发生在第二终端中的初始对应关系和目标对应关系的维护方式为维护方式二的情况下。
[0186] 由于第一目标查找表中将索引作为key,将资源地址作为value,所以可以基于目标索引的key,从第一目标查找表中查找到目标索引的key对应的value,该value即为目标
索引对应的目标资源地址。该查找过程可以为一次查找过程,查找速度较快。
[0187] 在步骤208中,第二终端基于目标资源地址指示的目标资源和初始飞行数据,生成目标虚拟飞行物的飞行轨迹,在虚拟环境中显示目标虚拟飞行物的飞行轨迹。
[0188] 在一种可能实现方式中,目标资源地址指示的目标资源包括网格组件、粒子特效组件和抛体移动计算组件。第二终端基于目标资源地址指示的目标资源和初始飞行数据,
生成目标虚拟飞行物的飞行轨迹的过程为:基于初始飞行数据,利用网格组件、粒子特效组
件和抛体移动计算组件生成目标虚拟飞行物的飞行轨迹。示例性地,如图4所示,目标资源
地址指示的目标资源400包括网格组件401、粒子特效组件402和抛体移动计算组件403。
[0189] 网格组件用于管理真实的mesh(网格),能够生成目标虚拟飞行物的实体;粒子特效组件用于表现飞行轨迹中的特效,比如,目标虚拟飞行物的拖尾特效、飞行轨迹的烟雾特
效等;抛体移动计算组件为物理仿真的计算组件,用于模拟目标虚拟飞行物的真实抛体行
为。在初始飞行数据的基础上,利用这些组件,可以生成包含目标虚拟飞行物实体、粒子特
效和抛体行为的飞行轨迹,更加接近真实的飞行轨迹,有利于满足硬核玩家的需求,实现更
好的游戏体验。
[0190] 在生成目标虚拟飞行物的飞行轨迹后,第二终端在虚拟环境中显示目标虚拟飞行物的飞行轨迹,以使第二终端的使用用户观看到目标虚拟飞行物在虚拟环境中的飞行轨
迹,提升游戏体验。
[0191] 第二终端可以在虚拟环境中显示不同虚拟飞行物的不同飞行轨迹。示例性地,具有冰属性的虚拟飞行物的飞行轨迹可以如图5中的501所示;具有火属性的虚拟飞行物的飞
行轨迹可以如图6中的601所示,该具有火属性的虚拟飞行物的飞行轨迹601为类似T型的飞
行轨迹,在虚拟飞行物离开武器后,先仅有一条飞行轨迹,然后该条飞行轨迹分裂成两条飞
行轨迹;具有爆炸属性的虚拟飞行物的飞行轨迹可以如图7中的701所示。
[0192] 在一种可能实现方式中,在虚拟环境中显示目标虚拟飞行物的飞行轨迹后,第二终端可以在虚拟环境中显示目标虚拟飞行物对应的特效动画。该特效动画可以是指在目标
虚拟飞行物命中目标对象后显示的技能动画,用于提示目标对象已被命中。
[0193] 特效动画的显示过程可以基于服务器中的事件管理器实现,当服务器确定目标虚拟飞行物命中目标对象时,触发特效动画显示事件,服务器中的事件管理器利用委托模型
响应该特效动画显示事件,向第二终端同步特效动画显示指令,第二终端基于特效动画显
示指令在虚拟环境中显示目标虚拟飞行物对应的特效动画。需要说明的是,服务器中的事
件管理器还可以向第一终端同步特效动画显示指令,第一终端同样基于特效动画显示指令
在虚拟环境中显示目标虚拟飞行物对应的特效动画。
[0194] 不同的虚拟飞行物可以对应不同的特效动画,本申请实施例对此不加以限定。示例性的,目标虚拟飞行物对应的特效动画可以为图7中的702所示的爆炸动画。
[0195] 服务器中的事件管理器可以管理多个特效动画显示事件。如图8所示,事件管理器可以基于虚拟飞行物管理特效动画显示事件0、特效动画显示事件1和特效动画显示事件2。
[0196] 需要说明的是,第二终端除了可以显示其他终端发射的目标虚拟飞行物的飞行轨迹外,还可以显示该第二终端发射的本地虚拟飞行物的飞行轨迹。该过程可以包括以下步
骤:基于本地虚拟飞行物的发射指令,从本地提取本地虚拟飞行物的资源;基于本地虚拟飞
行物的资源和本地虚拟飞行物的初始飞行数据,生成本地虚拟飞行物的飞行轨迹,在虚拟
环境中显示本地虚拟飞行物的飞行轨迹。该过程可以参见步骤201中介绍的第一终端在本
地生成目标虚拟飞行物的飞行轨迹的过程,此处不再赘述。
[0197] 需要说明的是,当第二终端作为发射终端时,可以将本地虚拟飞行物的发射信息发送至服务器;服务器基于该发射信息获取增量信息,将增量信息同步至与该第二终端显
示同一虚拟环境的第三终端中;第三终端完成生成并显示本地虚拟飞行物的飞行轨迹的过
程。
[0198] 综上所述,第一终端、服务器、第二终端之间的交互过程可以如图9中的步骤1‑步骤9所示。1、服务器基于游戏开始指令,创建虚拟飞行物系统;2、服务器将虚拟飞行物系统
同步至第一终端本地,并保持网络连接;3、服务器将虚拟飞行物系统同步至第二终端本地,
并保持网络连接;4、第一终端向服务器发送第一发射信息;5、第一终端本地生成目标虚拟
飞行物的飞行轨迹;6、服务器基于第一发射信息更新虚拟飞行物系统,将增量信息同步至
各个终端;7、服务器生成目标虚拟飞行物的飞行轨迹;8、服务器通过虚拟飞行物系统获取
第二终端与目标虚拟飞行物之间的相关性,向满足相关性条件的第二终端发送第二发射信
息;9、第二终端基于第二发射信息和本地虚拟飞行物系统生成目标虚拟飞行物的飞行轨
迹。
[0199] 虚拟环境中的飞行轨迹显示方案的实现过程可以如图10所示。第一终端的虚拟对象控制器1001在本地生成目标虚拟飞行物的飞行轨迹1002;第一终端的虚拟对象控制器
1001向服务器的虚拟对象控制器1003发送第一发射信息;服务器的虚拟对象控制器1003基
于第一发射信息,生成目标虚拟飞行物的飞行轨迹1004;服务器基于第一发射信息更新虚
拟飞行物系统1005,将增量信息同步至第一终端的本地虚拟飞行物系统1006和第二终端的
本地虚拟飞行物系统1007;服务器通过虚拟飞行物系统1005获取第二终端和目标虚拟飞行
物之间的相关性,通过服务器的虚拟对象控制器1003向第二终端的虚拟对象控制器1008发
送第二发射信息;第二终端的虚拟对象控制器1008基于第二发射信息和本地虚拟飞行物系
统1007生成目标虚拟飞行物的飞行轨迹1009,在虚拟环境中显示目标虚拟飞行物的飞行轨
迹1009。
[0200] 基于本申请实施例提供的方法,可以实现虚拟飞行物的真实飞行轨迹表现。在实现在除发射终端外的其他终端生成并显示真实飞行轨迹的过程中,基于虚拟飞行物系统优
化网络同步过程,避免虚拟飞行物通道的重复创建与销毁;采用虚拟飞行物系统和虚拟对
象控制器协同工作,只同步生成目标虚拟飞行物的飞行轨迹必须的数据,大量减少需要同
步的数据量的大小,提升网络性能和终端性能。
[0201] 本申请实施例对需要同步的网络数据采用了FTR(Fast TArray Replication,快速动态数组同步),重新实现了网络序列化,避免更新某一数据时,对全部数据重新进行网
络复制,节省网络资源。另外,利用Pool(池)管理虚拟飞行物,在本地虚拟飞行物系统中保
留出现过的虚拟飞行物的资源地址和索引的信息,便于在再次显示同一虚拟飞行物的飞行
轨迹时直接进行调用,降低终端的性能开销。
[0202] 分别测试利用本申请实施例提供的方法和利用相关技术中的方法在虚拟环境中显示飞行轨迹的网络带宽均值,得到的测试结果为:利用相关技术中的方法在虚拟环境中
显示飞行轨迹的网络带宽均值为0.55KB/s;利用本申请实施例提供的方法在虚拟环境中显
示飞行轨迹的网络带宽均值为0.18KB/s,网络带宽均值减少了约67.27%。说明利用本申请
实施例提供的方法在虚拟环境中显示飞行轨迹能够有效降低网络带宽均值。
[0203] 此外,分别测试利用本申请实施例提供的方法和利用相关技术中的方法在虚拟环境中显示飞行轨迹的网络带宽波峰,得到的测试结果可以如图11所示,利用相关技术中的
方法在虚拟环境中显示飞行轨迹的网络带宽波峰为203.4KB/s(如图11中的(1)所示);利用
本申请实施例提供的方法在虚拟环境中显示飞行轨迹的网络带宽波峰为74.8KB/s(如图11
中的(2)所示),网络带宽波峰减少了约63.23%。说明利用本申请实施例提供的方法在虚拟
环境中显示飞行轨迹能够有效降低网络带宽波峰。
[0204] 在本申请实施例中,在接收到第一终端发射的第一发射信息后,服务器先将增量信息发送给至少一个第二终端,然后向满足条件的第二终端发送第二发射信息,第二终端
先将增量信息同步至本地,然后再基于同步后得到的目标对应关系和第二发射信息生成目
标虚拟飞行物的飞行轨迹并在虚拟环境中进行显示。基于上述过程,在每次显示飞行轨迹
之前,服务器与第二终端之间先同步增量信息,在同步增量信息后,服务器仅需向第二终端
发送包括生成飞行轨迹的必须数据的发射信息,此过程无需建立虚拟飞行物通道,并且发
送的数据较少,有利于降低第二终端显示飞行轨迹的延迟,有利于降低网络带宽和带宽波
峰,虚拟环境中的飞行轨迹显示效果较好,有利于提升用户体验。
[0205] 参见图12,本申请实施例提供了一种虚拟环境中的飞行轨迹显示装置,该装置应用于服务器,通过图12所示的如下模块,实现上述图2的虚拟环境中的飞行轨迹显示方法中
服务器所执行的功能。该装置包括:
[0206] 接收模块1201,用于接收第一终端发送的第一发射信息,第一发射信息包括第一终端的标识和目标虚拟飞行物的初始飞行数据;
[0207] 处理模块1202,用于基于第一终端的标识,对维护的资源地址和索引的初始对应关系进行处理,得到目标虚拟飞行物对应的目标索引以及维护的资源地址和索引的目标对
应关系,资源地址用于指示生成虚拟飞行物的飞行轨迹所需资源的地址,索引用于标识虚
拟飞行物;
[0208] 发送模块1203,用于将目标对应关系和初始对应关系之间的增量信息发送给至少一个第二终端,至少一个第二终端为与第一终端显示同一虚拟环境的终端;
[0209] 发送模块1203,还用于向至少一个第二终端中满足条件的第二终端发送第二发射信息,第二发射信息包括目标索引和初始飞行数据,第二终端用于基于本地维护的资源地
址和索引的目标对应关系,获取目标索引对应的目标资源地址,基于目标资源地址指示的
目标资源和初始飞行数据,生成目标虚拟飞行物的飞行轨迹,在虚拟环境中显示目标虚拟
飞行物的飞行轨迹。
[0210] 在一种可能实现方式中,处理模块1202,用于基于第一终端的标识,确定目标虚拟飞行物的目标资源地址;响应于基于初始对应关系未获取到目标资源地址对应的索引,创
建目标虚拟飞行物对应的目标索引;基于目标资源地址和目标索引之间的对应关系更新初
始对应关系,得到维护的资源地址和索引的目标对应关系;响应于基于初始对应关系获取
到目标资源地址对应的索引,将目标资源地址对应的索引作为目标虚拟飞行物对应的目标
索引;将初始对应关系作为维护的资源地址和索引的目标对应关系。
[0211] 在一种可能实现方式中,初始对应关系基于第一初始查找表和第二初始查找表维护,目标对应关系基于第一目标查找表和第二目标查找表维护;第一初始查找表和第一目
标查找表用于基于索引查找资源地址,第二初始查找表和第二目标查找表用于基于资源地
址查找索引;
[0212] 处理模块1202,还用于响应于在第二初始查找表中未查找到目标资源地址对应的索引,创建目标虚拟飞行物对应的目标索引;将目标资源地址和目标索引添加至第一初始
查找表中,得到第一目标查找表;将目标资源地址和目标索引添加至第二初始查找表中,得
到第二目标查找表。
[0213] 在一种可能实现方式中,处理模块1202,还用于响应于在第二初始查找表中查找到目标资源地址对应的索引,将目标资源地址对应的索引作为目标虚拟飞行物对应的目标
索引,将第一初始查找表作为第一目标查找表,将第二初始查找表作为第二目标查找表。
[0214] 在一种可能实现方式中,发送模块1203,还用于将第一目标查找表和第一初始查找表之间的第一增量信息,以及第二目标查找表和第二初始查找表之间的第二增量信息发
送给至少一个第二终端。
[0215] 在一种可能实现方式中,参见图13,该装置还包括:
[0216] 同步模块1204,用于基于游戏开始指令,将需要维护的资源地址和索引的对应关系同步至至少一个第二终端的本地。
[0217] 在本申请实施例中,在接收到第一终端发射的第一发射信息后,服务器先将增量信息发送给至少一个第二终端,然后向满足条件的第二终端发送第二发射信息,第二终端
先将增量信息同步至本地,然后再基于同步后得到的目标对应关系和第二发射信息生成目
标虚拟飞行物的飞行轨迹并在虚拟环境中进行显示。基于上述过程,在每次显示飞行轨迹
之前,服务器与第二终端之间先同步增量信息,在同步增量信息后,服务器仅需向第二终端
发送包括生成飞行轨迹的必须数据的发射信息,此过程无需建立虚拟飞行物通道,并且发
送的数据较少,有利于降低第二终端显示飞行轨迹的延迟,有利于降低网络带宽和带宽波
峰,虚拟环境中的飞行轨迹显示效果较好,有利于提升用户体验。
[0218] 参见图14,本申请实施例提供了一种虚拟环境中的飞行轨迹显示装置,该装置应用于第二终端,通过图14所示的如下模块,实现上述图2的虚拟环境中的飞行轨迹显示方法
中第二终端所执行的功能。该装置包括:
[0219] 同步模块1401,用于将服务器发送的增量信息同步至本地维护的资源地址和索引的初始对应关系中,得到本地维护的资源地址和索引的目标对应关系,资源地址用于指示
生成虚拟飞行物的飞行轨迹所需资源的地址,索引用于标识虚拟飞行物;
[0220] 接收模块1402,用于接收服务器发送的目标发射信息,目标发射信息包括目标虚拟飞行物对应的目标索引和初始飞行数据;
[0221] 获取模块1403,用于基于本地维护的资源地址和索引的目标对应关系,获取目标索引对应的目标资源地址;
[0222] 生成模块1404,用于基于目标资源地址指示的目标资源和初始飞行数据,生成目标虚拟飞行物的飞行轨迹;
[0223] 显示模块1405,用于在虚拟环境中显示目标虚拟飞行物的飞行轨迹。
[0224] 在一种可能实现方式中,初始对应关系基于第一初始查找表和第二初始查找表维护,目标对应关系基于第一目标查找表和第二目标查找表维护;第一初始查找表和第一目
标查找表用于基于索引查找资源地址,第二初始查找表和第二目标查找表用于基于资源地
址查找索引;
[0225] 同步模块1401,用于将服务器发送的第一目标查找表和第一初始查找表之间的第一增量信息同步至第一初始查找表中,得到第一目标查找表;将服务器发送的第二目标查
找表和第二初始查找表之间的第二增量信息同步至第二初始查找表中,得到第二目标查找
表;
[0226] 获取模块1403,用于从第一目标查找表中查找目标索引对应的目标资源地址。
[0227] 在一种可能实现方式中,目标资源地址指示的目标资源包括网格组件、粒子特效组件和抛体移动计算组件,生成模块1404,用于基于初始飞行数据,利用网格组件、粒子特
效组件和抛体移动计算组件生成目标虚拟飞行物的飞行轨迹。
[0228] 在一种可能实现方式中,显示模块1405,还用于在虚拟环境中显示目标虚拟飞行物对应的特效动画。
[0229] 在一种可能实现方式中,获取模块1403,还用于基于本地虚拟飞行物的发射指令,从本地提取本地虚拟飞行物的资源;
[0230] 生成模块1404,还用于基于本地虚拟飞行物的资源和本地虚拟飞行物的初始飞行数据,生成本地虚拟飞行物的飞行轨迹;
[0231] 显示模块1405,还用于在虚拟环境中显示本地虚拟飞行物的飞行轨迹。
[0232] 在本申请实施例中,在接收到第一终端发射的第一发射信息后,服务器先将增量信息发送给至少一个第二终端,然后向满足条件的第二终端发送第二发射信息,第二终端
先将增量信息同步至本地,然后再基于同步后得到的目标对应关系和第二发射信息生成目
标虚拟飞行物的飞行轨迹并在虚拟环境中进行显示。基于上述过程,在每次显示飞行轨迹
之前,服务器与第二终端之间先同步增量信息,在同步增量信息后,服务器仅需向第二终端
发送包括生成飞行轨迹的必须数据的发射信息,此过程无需建立虚拟飞行物通道,并且发
送的数据较少,有利于降低第二终端显示飞行轨迹的延迟,有利于降低网络带宽和带宽波
峰,虚拟环境中的飞行轨迹显示效果较好,有利于提升用户体验。
[0233] 需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,
即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,
上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这
里不再赘述。
[0234] 图15是本申请实施例提供的一种终端的结构示意图。该终端可以是:智能手机、平板电脑、笔记本电脑或台式电脑。终端还可能被称为用户设备、便携式终端、膝上型终端、台
式终端等其他名称。
[0235] 通常,终端包括有:处理器1501和存储器1502。
[0236] 处理器1501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field‑
Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程
逻辑阵列)中的至少一种硬件形式来实现。处理器1501也可以包括主处理器和协处理器,主
处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing 
Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在
一些实施例中,处理器1501可以集成有GPU(Graphics Processing Unit,图像处理器),GPU
用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1501还可以包括
AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计
算操作。
[0237] 存储器1502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1502还可包括高速随机存取存储器,以及非易失性存储器,比如一个
或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1502中的非暂态的计算机可
读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1501所执行以实现本申
请中方法实施例提供的虚拟环境中的飞行轨迹显示方法。
[0238] 在一些实施例中,终端还可选包括有:外围设备接口1503和至少一个外围设备。处理器1501、存储器1502和外围设备接口1503之间可以通过总线或信号线相连。各个外围设
备可以通过总线、信号线或电路板与外围设备接口1503相连。具体地,外围设备包括:射频
电路1504、触摸显示屏1505、摄像头组件1506、音频电路1507、定位组件1508和电源1509中
的至少一种。
[0239] 外围设备接口1503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1501和存储器1502。在一些实施例中,处理器1501、存储器1502和外围
设备接口1503被集成在同一芯片或电路板上;在一些其他实施例中,处理器1501、存储器
1502和外围设备接口1503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施
例对此不加以限定。
[0240] 射频电路1504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1504将电信
号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路
1504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解
码芯片组、用户身份模块卡等等。射频电路1504可以通过至少一种无线通信协议来与其它
终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及
5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电
路1504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请
对此不加以限定。
[0241] 显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在
显示屏1505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处
理器1501进行处理。此时,显示屏1505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按
钮和/或软键盘。在一些实施例中,显示屏1505可以为一个,设置在终端的前面板;在另一些
实施例中,显示屏1505可以为至少两个,分别设置在终端的不同表面或呈折叠设计;在再一
些实施例中,显示屏1505可以是柔性显示屏,设置在终端的弯曲表面上或折叠面上。甚至,
显示屏1505还可以设置成非矩形的不规则图形,也即异形屏。显示屏1505可以采用LCD
(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light‑Emitting Diode,有机发
光二极管)等材质制备。
[0242] 摄像头组件1506用于采集图像或视频。可选地,摄像头组件1506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在
一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄
像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广
角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合
拍摄功能。在一些实施例中,摄像头组件1506还可以包括闪光灯。闪光灯可以是单色温闪光
灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于
不同色温下的光线补偿。
[0243] 音频电路1507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1501进行处理,或者输入至射频电路1504以实现语音通
信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端的不同部位。麦克
风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1501或射频电路
1504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当
扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信
号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1507还可以包
括耳机插孔。
[0244] 定位组件1508用于定位终端的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件1508可以是基于美国的GPS(Global Positioning 
System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的
定位组件。
[0245] 电源1509用于为终端中的各个组件进行供电。电源1509可以是交流电、直流电、一次性电池或可充电电池。当电源1509包括可充电电池时,该可充电电池可以支持有线充电
或无线充电。该可充电电池还可以用于支持快充技术。
[0246] 在一些实施例中,终端还包括有一个或多个传感器1510。该一个或多个传感器1510包括但不限于:加速度传感器1511、陀螺仪传感器1512、压力传感器1513、指纹传感器
1514、光学传感器1515以及接近传感器1516。
[0247] 加速度传感器1511可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1511可以用于检测重力加速度在三个坐标轴上的分量。处理器1501可
以根据加速度传感器1511采集的重力加速度信号,控制触摸显示屏1505以横向视图或纵向
视图进行用户界面的显示。加速度传感器1511还可以用于游戏或者用户的运动数据的采
集。
[0248] 陀螺仪传感器1512可以检测终端的机体方向及转动角度,陀螺仪传感器1512可以与加速度传感器1511协同采集用户对终端的3D动作。处理器1501根据陀螺仪传感器1512采
集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图
像稳定、游戏控制以及惯性导航。
[0249] 压力传感器1513可以设置在终端的侧边框和/或触摸显示屏1505的下层。当压力传感器1513设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器1501根据
压力传感器1513采集的握持信号进行左右手识别或快捷操作。当压力传感器1513设置在触
摸显示屏1505的下层时,由处理器1501根据用户对触摸显示屏1505的压力操作,实现对UI
界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜
单控件中的至少一种。
[0250] 指纹传感器1514用于采集用户的指纹,由处理器1501根据指纹传感器1514采集到的指纹识别用户的身份,或者,由指纹传感器1514根据采集到的指纹识别用户的身份。在识
别出用户的身份为可信身份时,由处理器1501授权该用户执行相关的敏感操作,该敏感操
作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1514可以被设
置在终端的正面、背面或侧面。当终端上设置有物理按键或厂商Logo时,指纹传感器1514可
以与物理按键或厂商Logo集成在一起。
[0251] 光学传感器1515用于采集环境光强度。在一个实施例中,处理器1501可以根据光学传感器1515采集的环境光强度,控制触摸显示屏1505的显示亮度。具体地,当环境光强度
较高时,调高触摸显示屏1505的显示亮度;当环境光强度较低时,调低触摸显示屏1505的显
示亮度。在另一个实施例中,处理器1501还可以根据光学传感器1515采集的环境光强度,动
态调整摄像头组件1506的拍摄参数。
[0252] 接近传感器1516,也称距离传感器,通常设置在终端的前面板。接近传感器1516用于采集用户与终端的正面之间的距离。在一个实施例中,当接近传感器1516检测到用户与
终端的正面之间的距离逐渐变小时,由处理器1501控制触摸显示屏1505从亮屏状态切换为
息屏状态;当接近传感器1516检测到用户与终端的正面之间的距离逐渐变大时,由处理器
1501控制触摸显示屏1505从息屏状态切换为亮屏状态。
[0253] 本领域技术人员可以理解,图15中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
[0254] 图16是本申请实施例提供的一种服务器的结构示意图,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)
1601和一个或多个存储器1602,其中,该一个或多个存储器1602中存储有至少一条程序代
码,该至少一条程序代码由该一个或多个处理器1601加载并执行,以实现上述各个方法实
施例提供的虚拟环境中的飞行轨迹显示方法。当然,该服务器还可以具有有线或无线网络
接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实
现设备功能的部件,在此不做赘述。
[0255] 在示例性实施例中,还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条程序代码。该至少一条程序代码由一个或者一个以上处理
器加载并执行,以实现上述任一种虚拟环境中的飞行轨迹显示方法。
[0256] 在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由计算机设备的处理器加载并执行,以
实现上述任一种虚拟环境中的飞行轨迹显示方法。
[0257] 可选地,上述计算机可读存储介质可以是只读存储器(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read‑Only 
Memory,CD‑ROM)、磁带、软盘和光数据存储设备等。
[0258] 应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A
和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0259] 需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理
解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在
这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表
与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请
的一些方面相一致的装置和方法的例子。
[0260] 以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。