一种基于UE4引擎的虚拟现实场景实现方法及其系统技术方案

技术编号:22641013 阅读:112 留言:0更新日期:2019-11-26 16:00
本发明专利技术公开了一种基于UE4引擎的虚拟现实场景实现方法及系统。该方法包括如下步骤:将虚拟现实设备的HMD模块注入UE4引擎;在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口;当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态。该方法有效地解决了UE4引擎加载HMD定位器头部模块的冲突问题。通过将虚拟现实设备的HMD模块注入UE4引擎,以便使用时进行调用,满足了基于UE4引擎获得空间六自由度数据的移动端虚拟现实设备的需求。

A realization method and system of virtual reality scene based on UE4 engine

The invention discloses a virtual reality scene implementation method and system based on UE4 engine. The method includes the following steps: injecting HMD module of virtual reality device into UE4 engine; creating HMD calling interface for HMD module of virtual reality device in UE4 engine; when UE4 engine loads virtual reality device, obtaining position interface and attitude interface of HMD positioner of virtual reality device by calling HMD calling interface, and controlling through position interface and attitude interface of HMD positioner The status of the camera. This method effectively solves the conflict problem of loading HMD head module by UE4 engine. The HMD module of virtual reality device is injected into UE4 engine for calling when using, which meets the requirement of mobile virtual reality device based on UE4 engine to obtain spatial six degrees of freedom data.

【技术实现步骤摘要】
一种基于UE4引擎的虚拟现实场景实现方法及其系统
本专利技术涉及一种基于UE4引擎的虚拟现实场景实现方法,同时涉及相应的虚拟现实场景实现系统,属于虚拟现实

技术介绍
头戴显示装置(简称为HMD)是实现虚拟现实技术的重要环节之一。通过各种头戴显示装置向眼睛发送光学信号,利用双目立体视觉使用户双眼看到不同的图像,通常一只眼睛只能看到奇数帧图像,另一只眼睛只能看到偶数帧图像,利用奇、偶帧图像之间的不同(即视差)可以使用户产生强烈的立体感,实现3D仿真效果。当前,左、右眼的图像通常使用UnrealEngine4(简称为UE4)引擎生成,在UE4引擎中创建两个摄像机,两个摄像机之间的距离近似于人类双眼的间距,通过双目立体视觉原理,可以模拟出真实感强的3D影像。通过UE4引擎进行图像渲染并输出到头戴显示装置的过程为:1)将头戴显示装置中的姿态(包括旋转、位移)数据传递给UE4引擎;2)UE4引擎根据姿态数据和场景,创建两个摄像机并绘制画面;3)Steam从UE4引擎得到渲染画面,在SDK中进行畸变和其他优化处理;4)通过SDK将画面传输给HMD。UE4引擎针对HMD提供了统一接口IHeadMountedDisplay供第三方实现二次开发,然后通过HMD设备类型注册到UE4引擎内部。目前,市场上的移动式头戴显示装置,往往只能获得三自由度数据(旋转数据),而不能获得空间六自由度(包括旋转、位移)数据。如果需要获得空间六自由度数据则需要连接HMD定位器,并将位移数据通过HMD定位器连接到移动式头戴显示装置中。但是,现有的UE4引擎无法同时加载两个头部模块(头戴显示装置的头部模块和HMD定位器的头部模块),因为不清楚哪个头部模块控制摄像机姿态。因此,具有定位功能的移动端虚拟现实设备无法基于现有的UE4引擎实现。
技术实现思路
针对现有技术的不足,本专利技术所要解决的首要技术问题在于提供一种基于UE4引擎的虚拟现实场景实现方法。本专利技术所要解决的另一技术问题提供一种基于UE4引擎的虚拟现实场景实现系统。为实现上述专利技术目的,本专利技术采用下述的技术方案:根据本专利技术实施例的第一方面,提供一种基于UE4引擎的虚拟现实场景实现方法,包括如下步骤:将虚拟现实设备的HMD模块注入UE4引擎;在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口;当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态。其中较优地,将虚拟现实设备的HMD模块注入UE4引擎,包括如下步骤:设置设备模型接口,继承UE4引擎中模块特征接口以及加载模块接口,用于通知UE4引擎要加载的模块特征以及加载模块的接口;设置设备插件接口,继承设备模型接口,并加入新功能;设置实例化设备插件类,继承设备插件接口,加入逻辑处理功能,并将虚拟现实设备的HMD模块注入UE4引擎注入UE4引擎。其中较优地,设备插件接口继承设备模型接口时加入的新功能为获取加载虚拟现实设备的地址和判断虚拟现实设备是否被加载。其中较优地,实例化设备插件类继承设备插件接口时加入的逻辑处理功能包括加载模块;所述加载模块用于UE4引擎调用实例化设备HMD类。其中较优地,实例化设备插件类继承设备插件接口时加入的逻辑处理功能还包括模块开始加载以及模块关闭;所述模块开始加载好模块关闭用于UE4引擎对实例化设备HMD类的生命周期管理。其中较优地,在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口,包括如下步骤:设置虚拟现实设备接口,继承UE4引擎中模块特征接口,用于通知UE4引擎要加载的模块特征;设置实例化设备HMD类,继承虚拟现实设备接口,实例化设备HMD类即为HMD调用接口。其中较优地,当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态,包括如下步骤:当UE4引擎加载虚拟现实设备时,实例化设备插件类的模块开始加载,UE4引擎通过实例化设备插件类的加载模块调用实例化设备HMD类;调用实例化设备HMD类获取虚拟现实设备的HMD定位器的位置接口和姿态接口;当游戏结束时,UE4引擎通过调用实例化设备插件类的模块关闭功能将实例化设备HMD类进行关闭。根据本专利技术实施例的第二方面,提供一种基于UE4引擎的虚拟现实场景实现系统,包括处理器和存储器;所述存储器上存储有可用在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时实现如下步骤:将虚拟现实设备的HMD模块注入UE4引擎;在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口;当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态。其中较优地,当将虚拟现实设备的HMD模块注入UE4引擎时,所述计算机程序被所述处理器执行,还实现如下步骤;设置设备模型接口,继承UE4引擎中模块特征接口以及加载模块接口,用于通知UE4引擎要加载的模块特征以及加载模块的接口;设置设备插件接口,继承设备模型接口;设置实例化设备插件类,继承设备插件接口,加入逻辑处理功能,并将虚拟现实设备的HMD模块注入UE4引擎注入UE4引擎。其中较优地,当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态时,所述计算机程序被所述处理器执行,还实现如下步骤;当UE4引擎加载虚拟现实设备时,实例化设备插件类的模块开始加载,UE4引擎通过实例化设备插件类的加载模块调用实例化设备HMD类;调用实例化设备HMD类获取虚拟现实设备的HMD定位器的位置接口和姿态接口;当游戏结束时,UE4引擎通过调用实例化设备插件类的模块关闭功能将实例化设备HMD类进行关闭。本专利技术所提供的虚拟现实场景实现方法,将虚拟现实设备的HMD模块注入UE4引擎;然后,在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口;当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态。该方法通过将虚拟现实设备的HMD模块注入UE4引擎,便于在使用时进行调用,满足了基于UE4引擎获得空间六自由度数据的移动端虚拟现实设备的需求,有效地解决了UE4引擎加载HMD定位器头部模块的冲突问题。附图说明图1为本专利技术所提供的虚拟现实场景实现方法的流程图;图2为本专利技术所提供的基于UE4引擎的虚拟现实场景实现系统的结构示意图。...

【技术保护点】
1.一种基于UE4引擎的虚拟现实场景实现方法,其特征在于包括如下步骤:/n将虚拟现实设备的HMD模块注入UE4引擎;/n在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口;/n当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态。/n

【技术特征摘要】
1.一种基于UE4引擎的虚拟现实场景实现方法,其特征在于包括如下步骤:
将虚拟现实设备的HMD模块注入UE4引擎;
在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口;
当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置接口和姿态接口,通过HMD定位器的位置接口和姿态接口控制摄像机的状态。


2.如权利要求1所述的虚拟现实场景实现方法,其特征在于:
将虚拟现实设备的HMD模块注入UE4引擎,包括如下步骤:
设置设备模型接口,继承UE4引擎中模块特征接口以及加载模块接口,用于通知UE4引擎要加载的模块特征以及加载模块的接口;
设置设备插件接口,继承设备模型接口;
设置实例化设备插件类,继承设备插件接口,加入逻辑处理功能,并将虚拟现实设备的HMD模块注入UE4引擎注入UE4引擎。


3.如权利要求2所述的虚拟现实场景实现方法,其特征在于:
设备插件接口继承设备模型接口时加入新功能,所述新功能为获取加载虚拟现实设备的地址和判断虚拟现实设备是否被加载。


4.如权利要求2所述的虚拟现实场景实现方法,其特征在于:
实例化设备插件类继承设备插件接口时加入的逻辑处理功能包括加载模块;
所述加载模块用于UE4引擎调用实例化设备HMD类。


5.如权利要求2所述的虚拟现实场景实现方法,其特征在于:
实例化设备插件类继承设备插件接口时加入的逻辑处理功能还包括模块开始加载以及模块关闭;
所述模块开始加载好模块关闭用于UE4引擎对实例化设备HMD类的生命周期管理。


6.如权利要求1所述的虚拟现实场景实现方法,其特征在于:
在UE4引擎中为该虚拟现实设备的HMD模块创建HMD调用接口,包括如下步骤:
设置虚拟现实设备接口,继承UE4引擎中模块特征接口,用于通知UE4引擎要加载的模块特征;
设置实例化设备HMD类,继承虚拟现实设备接口,实例化设备HMD类即为HMD调用接口。


7.如权利要求1所述的虚拟现实场景实现方法,其特征在于:
当UE4引擎加载虚拟现实设备时,通过调用HMD调用接口获取虚拟现实设备的HMD定位器的位置...

【专利技术属性】
技术研发人员:王晓阳张佳宁张道宁
申请(专利权)人:北京凌宇智控科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1