欢迎光临小豌豆知识网!
当前位置:首页 > 生活技术 > 运动娱乐> 射击轨迹的展示方法、装置、电子设备及存储介质独创技术41667字

射击轨迹的展示方法、装置、电子设备及存储介质

2021-02-14 15:21:53

射击轨迹的展示方法、装置、电子设备及存储介质

  技术领域

  本公开涉及AR技术领域,具体而言,涉及一种射击轨迹的展示方法、装置、电子设备及存储介质。

  背景技术

  增强现实(Augmented Reality,AR)技术是一种将虚拟信息与真实世界巧妙融合的技术,目前已经应用于多种领域,比如影视制作、动漫科技、游戏、教育等。

  目前AR技术在多人射击类游戏的应用场景较少,如何能够增加AR技术应用于多人射击类游戏时的逼真效果,是值得研究的问题。

  发明内容

  本公开实施例至少提供一种射击轨迹的展示方案。

  第一方面,本公开实施例提供了一种射击轨迹的展示方法,包括:

  实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据,以及每个所述AR设备针对匹配的虚拟飞行器的位姿控制数据和子弹发射控制数据;

  基于针对每个所述虚拟飞行器的位姿控制数据,以及针对所述虚拟飞行器的子弹发射控制数据,确定所述虚拟飞行器发射的子弹的轨迹信息;

  针对每个AR设备,基于所述AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对所述AR设备的至少一个子弹的融合轨迹展示数据,并将该融合轨迹展示数据发送至该AR设备进行展示。

  本公开实施例中,可以根据该AR设备的位姿数据,以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据,即多个用户可以分别通过各自携带的AR设备看到虚拟飞行器发射的子弹的轨迹,通过该方式可以实现AR技术在多人游戏类领域中的应用,并且可以供各个不同位置的用户从不同的视角看到子弹的轨迹,从而使得展示内容更加逼真。

  在一种可能的实施方式中,所述基于针对每个所述虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定所述虚拟飞行器发射的子弹在轨迹信息,包括:

  基于针对每个虚拟飞行器的位姿控制数据,确定该虚拟飞行器的位姿数据;

  基于该虚拟飞行器的位姿数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射子弹的初始位置、发射方向以及射击力度;

  基于该虚拟飞行器发射子弹的初始位置、发射方向以及与该射击力度,确定该虚拟飞行器发射的子弹的轨迹信息。

  本公开实施例中,可以结合虚拟飞行器的位姿数据,以及针对该虚拟飞行器的子弹发射控制数据,确定出该虚拟飞行器发射的子弹在目标现实场景中的轨迹信息,便于直观地向用户展示AR场景中虚拟飞行器发射的子弹轨迹,使得展示内容更加逼真。

  在一种可能的实施方式中,所述针对每个AR设备,基于所述AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对所述AR设备的至少一个子弹的融合轨迹展示数据,包括:

  基于各个虚拟飞行器发射的子弹的轨迹信息,确定所述至少一个子弹的融合轨迹特效数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及所述至少一个子弹对应的融合轨迹特效数据,确定针对该AR设备的至少一个子弹的融合轨迹展示数据。

  在一种可能的实施方式中,所述展示方法还包括:

  基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中;

  在确定存在至少一个目标虚拟飞行器被子弹击中,确定所述至少一个目标虚拟飞行器被所述子弹击中时的特效数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及所述至少一个目标虚拟飞行器被所述子弹击中时的特效数据,生成针对该AR设备的融合射击展示数据,并将该融合射击展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,所述基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中,包括:

  基于每个虚拟飞行器的当前位姿数据以及在预设时长内针对该虚拟飞行器的位姿控制数据,确定该虚拟飞行器在所述预设时长内的移动轨迹;

  基于每个子弹在所述预设时长内的轨迹信息,以及每个虚拟飞行器在所述预设时长内的移动轨迹,确定是否存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交;

  在确定存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交时,确定存在至少一个目标虚拟飞行器被子弹击中。

  在一种可能的实施方式中,所述展示方法还包括:

  响应于存在目标虚拟飞行器被子弹击中,对所述目标虚拟飞行器的位姿数据进行更新,得到所述目标虚拟飞行器对应的新位姿数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及所述目标虚拟飞行器对应的新位姿数据,生成针对AR设备的所述目标虚拟飞行器的位姿变化展示数据,并将该位姿变化展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,所述实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据,包括:

  实时获取关联AR设备组中每个AR设备针对所述目标现实场景拍摄的现实场景图像;

  基于每个AR设备拍摄的所述现实场景图像,以及预先建立的用于表征所述目标现实场景的三维场景模型,确定该AR设备在所述目标现实场景中的位姿数据。

  第二方面,本公开实施例提供了一种射击轨迹的展示装置,包括:

  获取模块,用于实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据,以及每个所述AR设备针对匹配的虚拟飞行器的位姿控制数据和子弹发射控制数据;

  确定模块,用于基于针对每个所述虚拟飞行器的位姿控制数据,以及针对所述虚拟飞行器的子弹发射控制数据,确定所述虚拟飞行器发射的子弹的轨迹信息;

  生成模块,用于针对每个AR设备,基于所述AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对所述AR设备的至少一个子弹的融合轨迹展示数据,并将该融合轨迹展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,所述确定模块在用于基于针对每个所述虚拟飞行器的位姿控制数据,以及针对所述虚拟飞行器的子弹发射控制数据,确定所述虚拟飞行器发射的子弹在轨迹信息时,包括:

  基于针对每个虚拟飞行器的位姿控制数据,确定该虚拟飞行器的位姿数据;

  基于该虚拟飞行器的位姿数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射子弹的初始位置、发射方向以及射击力度;

  基于该虚拟飞行器发射子弹的初始位置、发射方向以及与该射击力度,确定该虚拟飞行器发射的子弹的轨迹信息。

  在一种可能的实施方式中,所述生成模块在用于针对每个AR设备,基于所述AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对所述AR设备的至少一个子弹的融合轨迹展示数据时,包括:

  基于各个虚拟飞行器发射的子弹的轨迹信息,确定所述至少一个子弹的融合轨迹特效数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及所述至少一个子弹对应的融合轨迹特效数据,确定针对该AR设备的至少一个子弹的融合轨迹展示数据。

  在一种可能的实施方式中,所述确定模块还用于:

  基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中;

  在确定存在至少一个目标虚拟飞行器被子弹击中,确定所述至少一个目标虚拟飞行器被所述子弹击中时的特效数据;

  所述生成模块,还用于针对每个AR设备,基于该AR设备的位姿数据,以及所述至少一个目标虚拟飞行器被所述子弹击中时的特效数据,生成针对该AR设备的融合射击展示数据,并将该融合射击展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,所述确定模块在用于基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中时,包括:

  基于每个虚拟飞行器的当前位姿数据以及在预设时长内针对该虚拟飞行器的位姿控制数据,确定该虚拟飞行器在所述预设时长内的移动轨迹;

  基于每个子弹在所述预设时长内的轨迹信息,以及每个虚拟飞行器在所述预设时长内的移动轨迹,确定是否存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交;

  在确定存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交时,确定存在至少一个目标虚拟飞行器被子弹击中。

  在一种可能的实施方式中,所述生成模块还用于:

  响应于存在目标虚拟飞行器被子弹击中,对所述目标虚拟飞行器的位姿数据进行更新,得到所述目标虚拟飞行器对应的新位姿数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及所述目标虚拟飞行器对应的新位姿数据,生成针对AR设备的所述目标虚拟飞行器的位姿变化展示数据,并将该位姿变化展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,所述获取模块在用于实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据时,包括:

  实时获取关联AR设备组中每个AR设备针对所述目标现实场景拍摄的现实场景图像;

  基于每个AR设备拍摄的所述现实场景图像,以及预先建立的用于表征所述目标现实场景的三维场景模型,确定该AR设备在所述目标现实场景中的位姿数据。

  第三方面,本公开实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面所述的展示方法的步骤。

  第四方面,本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面所述的展示方法的步骤。

  为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

  附图说明

  为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

  图1示出了本公开实施例所提供的一种射击轨迹的展示方法的流程图;

  图2示出了本公开实施例所提供的一种确定AR设备的位姿数据的方法流程图;

  图3示出了本公开实施例所提供的一种确定子弹的轨迹信息的方法流程图;

  图4示出了本公开实施例所提供的一种确定针对每个AR设备的至少一个子弹的融合轨迹展示数据的方法流程图;

  图5示出了本公开实施例所提供的一种确定针对每个AR设备的融合射击展示数据的方法流程图;

  图6示出了本公开实施例所提供的一种射击轨迹的展示装置的示意图;

  图7示出了本公开实施例所提供的一种电子设备的示意图。

  具体实施方式

  为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

  应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

  本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。

  目前AR技术在多人射击类游戏的应用场景较少,比如多人参与的飞船大战游戏,每个用户可以通过携带的AR设备操控匹配的虚拟飞船,在类似应用场景中,如何能够通过AR技术使得游戏更具有逼真效果,为本公开要讨论的技术问题。

  基于上述研究,本公开提供了一种射击轨迹的展示方法,通过实时获取的每个AR设备在目标现实场景中的位姿数据,以及该AR设备针对匹配的虚拟飞行器的位姿控制数据和子弹发射控制数据,可以确定虚拟飞行器发射的子弹的轨迹信息,进一步针对每个AR设备,可以根据该AR设备的位姿数据,以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据,即多个用户可以分别通过各自携带的AR设备看到虚拟飞行器发射的子弹的轨迹,通过该方式可以实现AR技术在多人游戏类领域中的应用,并且可以供各个不同位置的用户从不同的视角看到子弹的轨迹,从而使得展示内容更加逼真。

  为便于对本实施例进行理解,首先对本公开实施例所公开的一种射击轨迹的展示方法进行详细介绍,本公开实施例所提供的射击轨迹的展示方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括服务器或其它处理设备。在一些可能的实现方式中,该射击轨迹的展示方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

  参见图1所示,为本公开实施例提供的射击轨迹的展示方法的流程图,该展示方法包括以下S101~S103:

  S101,实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据,以及每个AR设备针对匹配的虚拟飞行器的位姿控制数据和子弹发射控制数据。

  示例性地,关联AR设备组中每个AR设备可以共同体验同一个AR场景内容,在应用场景中,这些AR设备可以选择相同的AR体验包进入多人互动AR场景,比如,针对游戏类的AR场景,每个AR设备可以通过登录AR游戏账号,进入同一个AR房间体验AR场景,这样,进入相同的AR房间的AR设备可以作为关联AR设备组。

  示例性地,AR设备在目标现实场景中的位姿数据可以包括用户手持或佩戴AR设备时,用于显示虚拟操作对象的显示部件所在的位置和/或显示角度。

  其中,AR设备的显示部件具体指该AR设备中用于显示虚拟操作对象的部件,示例性地,AR设备为手机或者平板时,对应的显示部件可以为显示屏,当AR设备为AR眼镜时,对应的显示部件可以为用于显示虚拟飞行器的镜片。

  示例性地,本公开实施例可以通过每个AR设备针对目标现实场景拍摄的现实场景图像来确定该AR设备的位姿数据,具体将在后文进行解释说明。

  示例性地,每个AR设备匹配的虚拟操作对象可以是在该AR设备在登录AR账号后选择的待进行操控的虚拟飞行器,比如以AR场景为飞船大战场景为例,这里每个AR设备在登录AR账号后,可以选择要操控的虚拟作战飞船,比如可以选择匹配的虚拟作战飞船的编号,这样AR设备在进行AR体验过程中可以向服务器发送针对匹配编号的虚拟作战飞船的位姿控制数据和子弹发射控制数据。

  示例性地,位姿控制数据包括用于指示虚拟飞行器在飞行时的位姿的控制数据,具体可以包括针对虚拟飞行器的位置控制数据和/或姿态控制数据,其中位置控制数据可以决定虚拟飞行器飞向的目标位置,姿态控制数据可以决定虚拟飞行器的飞行姿态。

  示例性地,子弹发射控制数据包括但不限于以下一种或多种:

  用于指示虚拟飞行器是否发射子弹的数据、发射的子弹类型的数据以及发射子弹时对应的射击力度数据。

  S102,基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射的子弹的轨迹信息。

  针对每个虚拟飞行器,可以基于针对该虚拟飞行器的位姿控制数据,确定该虚拟飞行器的位姿数据,然后再基于针对该寻飞行器的子弹发射控制数据,可以确定该虚拟飞行器是否发射了子弹,以及发射的子弹类型和射击力度等。

  结合该虚拟飞行器的位姿数据、以及该虚拟飞行器发射子弹的相关数据,则可以确定该虚拟飞行器按照什么位姿发射的子弹,以及发射的子弹的类型和射击力度,从而确定该虚拟飞行器发射的子弹的轨迹信息。

  示例性地,比如任一虚拟飞行器向东发射了射程为1米的子弹,则该任一虚拟飞行器发射的子弹的轨迹信息可以为由该虚拟飞行器向东飞行1米,当然,为了使得展示效果更加逼真,这里可以考虑重力对子弹的影响,使得子弹的轨迹呈现为抛物线状。

  S103,针对每个AR设备,基于该AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据,并将该融合轨迹展示数据发送至该AR设备进行展示。

  每个AR设备在目标现实场景中的位姿数据不同,因此通过该AR设备针对目标现实场景的观看视野也不同,每个用户通过各自的AR设备观看到的子弹的轨迹的呈现特效也可能不同。

  示例性地,关联AR设备组中可以包含第一AR设备和第二AR设备,分别由用户A和用户B携带,当用户A和用户B可以通过各自携带的AR设备看到相同的子弹,比如均看到虚拟飞行器001发射的子弹,不同的是,当第一AR设备和第二AR设备的位姿数据不同时,用户A和用户B看到的虚拟飞行器001发射的子弹的视角不同,比如用户A看到子弹自己的右侧飞去,而用户B看到子弹自己的左侧飞去。

  本公开实施例中,可以根据该AR设备的位姿数据,以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据,即多个用户可以分别通过各自携带的AR设备看到虚拟飞行器发射的子弹的轨迹,通过该方式可以实现AR技术在多人游戏类领域中的应用,并且可以供各个不同位置的用户从不同的视角看到子弹的轨迹,从而使得展示内容更加逼真。

  下面将结合具体实施例对上述S101~S103进行阐述。

  针对上述S101,在实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据时,如图2所示,具体包括以下S1011~S1012:

  S1011,实时获取关联AR设备组中每个AR设备针对目标现实场景拍摄的现实场景图像;

  S1012,基于每个AR设备拍摄的现实场景图像,以及预先建立的用于表征目标现实场景的三维场景模型,确定该AR设备在目标现实场景中的位姿数据。

  示例性地,三维场景模型可以基于预先拍摄的该目标现实场景的多张样本图像来构建,具体在构建时,可以通过提取每张样本图像中的特征点进行构建,在生成三维场景模型后,可以保存三维场景模型中每个特征点对应的样本图像,以及该样本图像在该三维场景模型中对应的拍摄位姿,这样在获取到AR设备拍摄的该目标现实场景的现实场景图像后,可以对该现实场景图像进行特征点提取,基于提取的特征点确定与该现实场景图像匹配的样本图像,最终得到AR设备在该三维场景模型中的位姿数据。

  因为该三维场景模型为表征该目标现实场景的模型,因此可以将AR设备在三维场景模型中的位姿数据作为AR设备在目标现实场景中的位姿数据。

  此外,还可以通过AR设备安装的位姿传感器来确定该AR设备的位姿数据。

  或者,在另一种实施方式中,还可以将AR设备拍摄的现实场景图像输入预先存储的用于定位的神经网络模型,来确定拍摄该现实场景图像的AR设备对应的位姿数据。

  具体地,该神经网络可以基于预先拍摄现实场景得到的多张样本图像,和与每张样本图像对应的位姿数据,训练得到。

  这里的三维场景模型可以基于预先对该目标现实场景拍摄的多张现实场景图像来构建,在构建完成后,还可以再通过该目标现实场景对应的真实二维地图对构建完成的三维场景模型进行修正,得到表征该目标现实场景的准确度较高的三维场景模型。

  针对上述S102,在基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射的子弹在轨迹信息时,如图3所示,可以包括以下S1021~S1023:

  S1021,基于针对每个虚拟飞行器的位姿控制数据,确定该虚拟飞行器的位姿数据;

  S1022,基于该虚拟飞行器的位姿数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射子弹的初始位置、发射方向以及射击力度;

  S1023,基于该虚拟飞行器发射子弹的初始位置、发射方向以及与该射击力度,确定该虚拟飞行器发射的子弹的轨迹信息。

  示例性地,虚拟飞行器发射子弹的初始位置为目标现实场景中的A位置,发射方向为朝向该目标现实场景中的正东方向,射击力度为选择的预设三级力度,可以为该虚拟飞行器对应的最大力度,然后可以根据该射击力度以及重力确定该虚拟飞行器发射的子弹的抛物线形状,结合初始位置和发射方向,可以确定出该虚拟飞行器发射的子弹在该目标现实场景中的轨迹信息。

  本公开实施例中,可以结合虚拟飞行器的位姿数据,以及针对该虚拟飞行器的子弹发射控制数据,确定出该虚拟飞行器发射的子弹在目标现实场景中的轨迹信息,便于直观地向用户展示AR场景中虚拟飞行器发射的子弹轨迹,使得展示内容更加逼真。

  针对上述S103,在针对每个AR设备,基于该AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据时,如图4所示,可以包括以下S1031~S1032:

  S1031,基于各个虚拟飞行器发射的子弹的轨迹信息,确定至少一个子弹的融合轨迹特效数据;

  S1032,针对每个AR设备,基于该AR设备的位姿数据,以及至少一个子弹对应的融合轨迹特效数据,确定针对该AR设备的至少一个子弹的融合轨迹展示数据。

  在应用场景中,可能存在多个虚拟飞行器同时发射子弹的场景,这里可以基于每个虚拟飞行器发射的子弹的轨迹信息,对同一时间段内发射出的子弹的轨迹信息进行融合,得到至少一个子弹的融合轨迹特效数据,比如可以同时包括两个虚拟飞行器分别发射出的子弹的轨迹信息,其中一个子弹的轨迹信息为从A位置向东发射形成的轨迹,另一个子弹的轨迹信息为从B位置向西发射形成的轨迹,将这两个子弹的轨迹信息进行融合,即将融合轨迹特效数据中包含两个子弹的轨迹信息。

  在一种实施方式中,如图5所示,本公开实施例提供的展示方法还包括以下S501~S503:

  S501,基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中。

  具体地,在基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中时,可以包括:

  (1)基于每个虚拟飞行器的当前位姿数据以及在预设时长内针对该虚拟飞行器的位姿控制数据,确定该虚拟飞行器在预设时长内的移动轨迹;

  (2)基于每个子弹在预设时长内的轨迹信息,以及每个虚拟飞行器在预设时长内的移动轨迹,确定是否存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交;

  (3)在确定存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交时,确定存在至少一个目标虚拟飞行器被子弹击中。

  示例性地,子弹从射出到落下需要一段时长,可以将该时长设置为这里的预设时长,在该预设时长内,可以基于每个虚拟飞行器的当前位姿数据以及针对该虚拟飞行器的位姿控制数据,确定该虚拟飞行器的移动轨迹。

  另外,还可以根据目标虚拟飞行器在与任一子弹的飞行轨迹相交时对应的交点位置,确定该目标虚拟飞行器被该任一子弹射中的位置,比如,可以射中头部、尾部或者中部。

  S502,在确定存在至少一个目标虚拟飞行器被子弹击中,确定至少一个目标虚拟飞行器被子弹击中时的特效数据。

  示例性地,特效数据可以包括被子弹设射中的位置数据、爆炸数据等。

  S503,针对每个AR设备,基于该AR设备的位姿数据,以及至少一个目标虚拟飞行器被子弹击中时的特效数据,生成针对该AR设备的融合射击展示数据,并将该融合射击展示数据发送至该AR设备进行展示。

  同样地,因为每个AR设备在目标现实场景中的位姿数据不同,因此通过该AR设备针对目标现实场景的观看视野也不同,每个用户通过各自的AR设备观看到的目标虚拟飞行器被子弹射中时呈现特效也可能不同,因此需要针对每个AR设备,基于该AR设备的位姿数据和至少一个目标虚拟飞行器被子弹击中时的特效数据,生成针对该AR设备的融合射击展示数据。

  示例性地,该AR设备侧的用户,可以通过针对该AR设备的融合射击展示数据观看到目标虚拟飞行器在自己的观看视野中被射中的呈现画面。

  在一种可能的实施方式中,本公开实施例提供的展示方法还包括:

  (1)响应于存在目标虚拟飞行器被子弹击中,对目标虚拟飞行器的位姿数据进行更新,得到目标虚拟飞行器对应的新位姿数据;

  (2)针对每个AR设备,基于该AR设备的位姿数据,以及目标虚拟飞行器对应的新位姿数据,生成针对AR设备的目标虚拟飞行器的位姿变化展示数据,并将该位姿变化展示数据发送至该AR设备进行展示。

  具体地,可以基于目标虚拟飞行器被射中的位置,以及被射中的射击力度,确定该目标虚拟飞行器对应的新位姿数据,该新位姿数据可以用于表示目标虚拟飞行器在被射中后的位置变化和/姿态变化。

  进一步地,同样地因为每个AR设备在目标现实场景中的位姿数据不同,因此通过该AR设备针对目标现实场景的观看视野也不同,每个用户通过各自的AR设备观看到的目标虚拟飞行器被子弹射后的位姿变化展示数据也不同,因此需要针对每个AR设备,基于该AR设备的位姿数据和该目标虚拟飞行器被子弹击后的新位姿数据,生成针对该AR设备的位姿变化展示数据。

  示例性地,该AR设备侧的用户,可以通过针对该AR设备的位姿变化展示数据观看到目标虚拟飞行器在自己的观看视野中被射中后的位姿变化的呈现画面。

  本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

  基于同一技术构思,本公开实施例中还提供了与射击轨迹的展示方法对应的射击轨迹的展示装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述展示方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

  参照图6所示,为本公开实施例提供的一种射击轨迹的展示装置600的示意图,该射击轨迹的展示装置包括:

  获取模块601,用于实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据,以及每个AR设备针对匹配的虚拟飞行器的位姿控制数据和子弹发射控制数据;

  确定模块602,用于基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射的子弹的轨迹信息;

  生成模块603,用于针对每个AR设备,基于该AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据,并将该融合轨迹展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,确定模块602在用于基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射的子弹在轨迹信息时,包括:

  基于针对每个虚拟飞行器的位姿控制数据,确定该虚拟飞行器的位姿数据;

  基于该虚拟飞行器的位姿数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射子弹的初始位置、发射方向以及射击力度;

  基于该虚拟飞行器发射子弹的初始位置、发射方向以及与该射击力度,确定该虚拟飞行器发射的子弹的轨迹信息。

  在一种可能的实施方式中,生成模块603在用于针对每个AR设备,基于该AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据时,包括:

  基于各个虚拟飞行器发射的子弹的轨迹信息,确定至少一个子弹的融合轨迹特效数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及至少一个子弹对应的融合轨迹特效数据,确定针对该AR设备的至少一个子弹的融合轨迹展示数据。

  在一种可能的实施方式中,确定模块602还用于:

  基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中;

  在确定存在至少一个目标虚拟飞行器被子弹击中,确定至少一个目标虚拟飞行器被子弹击中时的特效数据;

  生成模块,还用于针对每个AR设备,基于该AR设备的位姿数据,以及至少一个目标虚拟飞行器被子弹击中时的特效数据,生成针对该AR设备的融合射击展示数据,并将该融合射击展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,确定模块602在用于基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定是否存在至少一个目标虚拟被发射的子弹击中时,包括:

  基于每个虚拟飞行器的当前位姿数据以及在预设时长内针对该虚拟飞行器的位姿控制数据,确定该虚拟飞行器在预设时长内的移动轨迹;

  基于每个子弹在预设时长内的轨迹信息,以及每个虚拟飞行器在预设时长内的移动轨迹,确定是否存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交;

  在确定存在目标虚拟飞行器的移动轨迹与任一子弹的飞行轨迹相交时,确定存在至少一个目标虚拟飞行器被子弹击中。

  在一种可能的实施方式中,生成模块603还用于:

  响应于存在目标虚拟飞行器被子弹击中,对目标虚拟飞行器的位姿数据进行更新,得到目标虚拟飞行器对应的新位姿数据;

  针对每个AR设备,基于该AR设备的位姿数据,以及目标虚拟飞行器对应的新位姿数据,生成针对AR设备的目标虚拟飞行器的位姿变化展示数据,并将该位姿变化展示数据发送至该AR设备进行展示。

  在一种可能的实施方式中,获取模块601在用于实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据时,包括:

  实时获取关联AR设备组中每个AR设备针对目标现实场景拍摄的现实场景图像;

  基于每个AR设备拍摄的现实场景图像,以及预先建立的用于表征目标现实场景的三维场景模型,确定该AR设备在目标现实场景中的位姿数据。

  关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

  对应于图1中的射击轨迹的展示方法,本公开实施例还提供了一种电子设备700,如图7所示,为本公开实施例提供的电子设备700结构示意图,包括:

  处理器71、存储器72、和总线73;存储器72用于存储执行指令,包括内存721和外部存储器722;这里的内存721也称内存储器,用于暂时存放处理器71中的运算数据,以及与硬盘等外部存储器722交换的数据,处理器71通过内存721与外部存储器722进行数据交换,当所述电子设备700运行时,所述处理器71与所述存储器72之间通过总线73通信,使得所述处理器71执行以下指令:实时获取关联AR设备组中每个AR设备在目标现实场景中的位姿数据,以及该AR设备针对匹配的虚拟飞行器的位姿控制数据和子弹发射控制数据;基于针对每个虚拟飞行器的位姿控制数据,以及针对该虚拟飞行器的子弹发射控制数据,确定该虚拟飞行器发射的子弹的轨迹信息;针对每个AR设备,基于该AR设备的位姿数据、以及各个虚拟飞行器发射的子弹的轨迹信息,生成针对该AR设备的至少一个子弹的融合轨迹展示数据,并将该融合轨迹展示数据发送至该AR设备进行展示。

  本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的射击轨迹的展示方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

  本公开实施例所提供的射击轨迹的展示方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的射击轨迹的展示方法的步骤,具体可参见上述方法实施例,在此不再赘述。

  本公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。

  所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

  所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

  另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

  所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

  最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

《射击轨迹的展示方法、装置、电子设备及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

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