跨移动平台实现沉浸式虚拟现实的系统的制作方法

文档序号:6539270阅读:215来源:国知局
跨移动平台实现沉浸式虚拟现实的系统的制作方法
【专利摘要】本发明涉及一种跨移动平台实现沉浸式虚拟现实的系统,其采用DirectX3D渲染技术通过Pixel?Shader将虚拟三维场景渲染出的图片进行失真校正和失真缩放,并分割绘制到HMD设备的左右双眼屏幕,并保持每秒60帧以上的刷新频率;从传感器中获取HMD设备的位置信息和朝向信息进行头部跟踪,并通过消息接口将坐标和旋转四元数信息反馈至应用程序;并采用无线通信技术实现客户端以及服务器端之间的交互。本发明的有益效果是:一款产品只需开发一次,增强现实借助计算机图形技术和可视化技术产生现实环境中不存在的虚拟对象,并通过传感技术将虚拟对象准确“放置”在真实环境中,借助显示设备将虚拟对象与真实环境融为一体。
【专利说明】跨移动平台实现沉浸式虚拟现实的系统
【技术领域】
[0001 ] 本发明涉及虚拟现实技术。
【背景技术】
[0002]虚拟现实,简称VR技术,是利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,让使用者如同身临其境一般,可以及时、没有限制地观察三度空间内的事物。
[0003]目前,在世界范围内,对移动互联网和虚拟现实同时支持的引擎主要有两款,它们分别是美国Epic公司的Unreal3引擎和丹麦Unity Technology公司的Unity3D引擎。
[0004]Unreal3引擎是传统PC和家用游戏机平台的龙头,数以千计的游戏和虚拟现实应用使用此引擎开发。当技术发展到移动互联网时代,Unreal3引擎也针对移动平台发布了相对应的引擎授权。但是,Unreal3引擎从一开始就被设计成高端引擎,无论从引擎的复杂程度、表现能力还是从授权的价格,使用者本身的技术和硬件配置要求,都是非常苛刻的。只有少数的大型公司和上市公司可以承担的起这款引擎。他一直占据着开发的高端市场,在移动平台发展十分缓慢。
[0005]Unity3D引擎是近两年发展迅速的3D跨平台引擎,他面向的是中端开发市场,目iu市场占有率居闻。
[0006]但是这两款引擎无论从设计上还是服务上,都不是针对中国开发者定制的。中国开发者在使用上会有诸多不便,以Unity3D为例,该引擎中文文档很不健全,在实现中文输入上默认也不支持,开发者在遇到问题时,无法得到快速有效的解决。遇到引擎设计缺陷时,由于官方不提供源代码,开发者将无能为力。
[0007]在国内,目前最好的3D虚拟现实引擎软件,是由深圳中视典数字科技有限公司开发的VRP。VRP是一款直接面向三维美工的中文虚拟现实软件平台,它的核心是中视典自主研发的虚拟现实3D引擎。它所有的操作都是以美工可以理解的方式进行,不需要程序员参与。如果操作者有良好的3DMAX建模和渲染基础,只要对VRP平台稍加学习和研究就可以很快制作出自己的虚拟现实场景。但是VRP的虚拟现实3D引擎与国外虚拟现实引擎在技术水平上差距非常大:不支持点着色,UV层只支持两层。不支持UV动画,想实现流动效果非常浪费贴图,贴图叠加方式少。且整个平台都没有给客户提供任何程序员可以介入的接口,不支持任何客户自己写的插件等等缺陷也让VRP在与国外引擎的竞争中处于下风。

【发明内容】

[0008]本发明为克服上述技术的缺陷,提供一种跨移动平台实现沉浸式虚拟现实的实现方案。
[0009]一种跨移动平台实现沉浸式虚拟现实的系统,包括服务器端和客户端,其中,所述服务器端将现实场景进行渲染,并传输至客户端的显示设备上显示。
[0010]进一步的,所述服务器端包括:[0011]虚拟现实引擎,其封装了 OpenGL和Direct3D渲染库,并可为多个系统提供硬件抽象层HAL来适配不同平台的硬件设备和图形接口 ;
[0012]所述客户端包括:头戴式显示设备,其可360度全景显示虚拟现实空间。
[0013]进一步的,所述虚拟现实引擎,采用DirectX3D渲染技术通过像素渲染器PixelShader将虚拟三维场景渲染出的图片进行失真校正和失真缩放,并分割绘制到所述头戴式显示设备的左右双眼屏幕。
[0014]进一步的,所述头戴式显示设备的左右双眼屏幕以不小于60帧每秒的频率进行刷新。
[0015]进一步的,所述头戴式显示设备为虚拟现实显示设备,所显示的虚拟现实空间为被三维虚拟物体扩充融合过的现实空间。
[0016]进一步的,所述服务器端可以为个人电脑、云服务器或其他可运行程序的设备。
[0017]进一步的,所述多个系统至少可以为PC、10S> Android或Windows phone系统。
[0018]进一步的,所述虚拟现实引擎包括处理模块,用于接收客户端反馈的信息,对反馈的信息进行处理,设置坐标矩阵,根据反馈的信息进行图像的处理,将处理过的图像通过头戴式显示设备的硬件抽象层HAL传输给客户端,用户通过双眼看到反馈后更新的画面。
[0019]进一步的,所述系统还包括一个或多个传感器,用于即时获取头戴式显示设备的位置信息和朝向信息,进行头部运动和眼睛方向的跟踪;所述传感器为加速度计、陀螺仪、罗盘和方向传感器的至少其中之一;所述系统还包括消息接口,用于将所述传感器获取的位置坐标和旋转四元数信息反馈至应用程序。
[0020]进一步的,所述应用程序通过所述虚拟现实引擎的渲染模块、物理碰撞模块、音效模块、核心模块对反馈的信息进行处理,设置坐标矩阵,将处理过的图像通过头戴式显示设备的硬件抽象层传输给所述设备,用户通过双眼看到反馈后更新的画面。
[0021]本发明还提供一种跨移动平台实现沉浸式虚拟现实的系统,该系统包括服务器端和客户端,其中,
[0022]服务器端包括:
[0023]消息接口,用于与客户端之间交互信息;处理模块,用于处理客户端反馈的信息,并将处理后的结果发送回客户端;图像渲染模块,对图像进行3D渲染,生成3D场景;像素渲染模块,对生成的3D场景进行失真校正和失真缩放;分割绘制模块,对渲染好的图像进行分割绘制;图像输出模块,将分割好的图像输出至客户端的头戴式显示设备的屏幕上。
[0024]客户端包括头戴式显示设备和移动客户端。
[0025]其中头戴式显示设备包括:
[0026]显示屏幕,用于将服务器端输出的图像进行显示,以使得用户可以观看,所述显示屏幕的刷新频率不低于60帧每秒;传感器,用于即时获取头戴式显示设备的位置信息和朝向信息,进行头部运动和眼睛方向的跟踪;消息接口,用于与服务器端交互信息;处理模块,用于处理传感器所获得的信息,将其转化为相应的位置坐标和旋转四元数信息,并将转化后的结果发送至服务器端。
[0027]移动客户端安装在移动设备上,包括:控制模块,通过在移动设备的屏幕上设置虚拟输入设备,通过交互式操作模拟服务器端的输入指令,控制虚拟场景或人物;处理模块,用于处理移动设备所接收到的信息,并将处理后的结果发送至相应的服务器端;消息接口,用于与服务器端交互信息;无线连接模块,用于与服务器建立无线连接。
[0028]本发明的有益效果是:
[0029]1、一款产品只需开发一次,就可以发布在包括PC, 1S, Android, Windows Phone等多平台。开发者完全不用考虑各平台内部构造的细节,只需了解引擎的开发规则即可。
[0030]2、增强现实借助计算机图形技术和可视化技术产生现实环境中不存在的虚拟对象,并通过传感技术将虚拟对象准确“放置”在真实环境中,借助显示设备将虚拟对象与真实环境融为一体。
[0031]3、对于大厅-房间类服务器应用,提供一套云服务器解决方案。
[0032]4、通过W1-Fi技术实现智能移动设备与电脑设备的交互。
【专利附图】

【附图说明】
[0033]图1为跨移动平台实现沉浸式虚拟现实的系统结构图。
[0034]图2为在头戴式显示设备HMD上看到的分割绘制的场景。
[0035]图3为通过无线通信技术实现智能移动设备与电脑设备交互模块的示例图。
【具体实施方式】
[0036]就特点和性能而言,OpenGL和Direct3D两种3D API可以说各有优势,如OpenGL具有很好的跨平台性、与硬件无关性,而Direct3D提供的立即模式编程却允许应用程序充分利用3D硬件的特性开发出更高性能的3D应用程序,这种编程模式被许多高性能3D应用程序开发者采用。考虑到目前两种3D API使用的实际情况,开发性能较好且同时支持两种3D API的应用程序就非常重要了。
[0037]如图1所示,本发明提供一种跨移动平台实现沉浸式虚拟现实的系统,其包括服务器端和客户端,所述服务器端将现实场景进行渲染,并传输至客户端的显示设备上显示。所述服务器端包括虚拟现实引擎。所述客户端包括头戴式显示设备HMD,被配置成可360度全景观看被三维虚拟物体扩充融合的现实空间。
[0038]跨平台渲染技术:
[0039]本发明的引擎封装了底层系统库(Direct3D和OpenGL)的所有细节,并为PC,10S,Android和Windows phone等系统提供了相应的接口(硬件抽象层HAL)来适配不同平台的硬件设备和图形接口,使之可以方便地跨平台实现多种3D特性。如:Terrain(地形),Water (水面效果),SkyBox (天空盒系统)Vegetat1n (植被系统),Reflect1n (反射),refract1n (折射)和 Shader 高级特性。如:Bloom(全屏泛光),HDR(High_Dynamic Range高动态光照渲染),Depth offield(景深),Mot1nblur (运动模糊)等。
[0040]本发明的引擎主要包括如下几个部分:Render System全景渲染模块,SceneManager 场景管理,Network System 网络服务,Physical simulat1n 物理模拟,Material-Texture 材质纹理,Shader 效果,1/0 输入输出,GUI 用户界面,AR (AugmentedReality)增强现实。
[0041 ] 移动设备物理模拟和操作特性:
[0042]本发明满足移动设备对物理引擎的三个主要要求:引擎轻量级、CPU资源消耗少、移动设备功能。在此基础上,除了可以实现Collis1n Detect1n(碰撞检测),RayDetect1n (射线检测),Gravity (重力),Joint (联合体模拟)Car (车辆模拟)等基本功能外,还支持移动设备的功能如:Gyroscope(回转仪罗盘),重力感应传感器。
[0043]AR (Augmented Reality)增强现实:
[0044]本发明运用摄像头控制,图像识别,标志体识别,虚拟物体编辑技术,通过智能手机摄像头(前摄像头和后摄像头),拍摄实时影像,将这些影像进行处理,加入3D虚拟物体。并通过手势,标志体等与其进行交互,实现虚拟与现实统一的身临其境感。
[0045]跨移动平台实现沉浸式虚拟现实的技术:
[0046]采用DirectX3D渲染技术通过Pixel Shader将虚拟三维场景渲染出的图片进行失真校正(Distort1n Correct1n)和失真缩放(Distort1n Scale),并分割绘制到头戴式显示设备HMD (Head-mounted display)设备的左右双眼屏幕,并保持每秒60巾贞以上的刷新频率,以使得用户获得更流畅的画面并保护用户的眼睛。
[0047]参见图2,分割绘制的图像在电脑显示器上显示左右看似重复、边缘还带有扭曲的图像,两幅画面其实分别对应了 HMD设备中左右眼应该看到的部分。图像以这种角度扭曲,在HMD设备上采用凸透镜将画面放大,就可以实现110度视角。而且左右两幅图虽然相似,但是其实是对应了人左右两只眼睛所看到的景物范围不同而特意调整的,这样当两眼同时看的时候就可以在视场上让两幅图像的部分重叠,达到完美还原360°视场的效果。
[0048]所述系统还包括一个或多个传感器,用于即时获取HMD设备的位置信息和朝向信息,进行头部运动和眼睛方向的跟踪;从传感器中获取HMD设备的位置信息和朝向信息进行头部跟踪(Head-tracking),并通过消息接口将坐标(Posit1n)和旋转四元数(Quatern1n)信息反馈至应用程序。应用程序通过所述虚拟现实引擎的渲染模块、物理碰撞模块、音效模块、核心模块对反馈的信息进行处理,设置坐标矩阵,将处理过的图像通过头戴式显示设备的硬件抽象层传输给所述设备,用户通过双眼看到反馈后更新的画面,还可以通过侦测用户眼睛的活动来完成一些简单的通过眨眼控制的动作。
[0049]传感器为加速度计、陀螺仪、罗盘和方向传感器的至少其中之一。
[0050]通过无线通信技术(如W1-Fi或蓝牙)实现智能移动设备与电脑设备的交互:
[0051]服务器端安装在被控制的远程设备上,服务器端可以为个人电脑、云服务器或其他可运行程序的设备。移动客户端安装在用户手持的智能移动设备上。用户使用移动设备通过虚拟键盘在屏幕上点击、划动远程模拟电脑输入设备(键盘/鼠标)等交互式操作,电脑设备反馈指令给移动设备(震动/播放音效),实现智能移动设备与电脑设备的交互,参见图3。
[0052]在使用本系统前,需要现在目标被控制机器上安装服务器端,等待手持设备的接入。接着用户开启手持设备客户端软件,查找局域网内目标设备,搜索到目标设备后,点击连接即可进入控制操作。例如,在手机客户端上,滑动手机屏幕,可以控制远程电脑上的鼠标左右上下移动。点击屏幕,可以模拟电脑上的鼠标点击。在手机屏幕上添加左右两个按键,可以控制电脑上的鼠标左右键按键操作。在手机客户端上开启软件盘界面或采用虚拟键盘,可以控制电脑上的键盘输入。
[0053]云服务器架构:
[0054]对于大厅-房间类服务器应用,如聊天室,竞技游戏,棋牌游戏等,应用需要服务器维护房间列表,生成房间信息,维护房间内玩家信息,即时通信和消息转发。[0055]针对上述需求,跨移动平台实现沉浸式虚拟现实的技术提供一套云服务器解决方案。客户端只需在后台注册应用,就会得到一个唯一的授权码。在云端,服务器为该客户端分配大厅-房间服务器空间,并随时保持开启状态,等待用户连入。开发者在引擎中使用这一授权码来标记应用。启动应用时就可以连接对应服务器,来使用云服务器提供的服务。
[0056]下面的实施例对本发明所提供的系统进行进一步的解释。
[0057]该系统包括服务器端和客户端。服务器端可以为个人电脑或者云端的服务器,客户端包括一头戴式显示设备和一移动客户端;以个人电脑和Oculus公司的Rift为例,移动客户端安装在一移动设备上,以智能手机为例,该个人电脑和智能手机可以通过无线的方式建立连接。
[0058]用户将头戴式显示设备Oculus Riff与个人电脑连接,并将个人电脑与安装有移动客户端的平板电脑通过WIFI或者蓝牙连接。Oculus公司的Rift可以提供水平方向90度,垂直方向110度的视场,视觉输入延迟低于20ms,传感器延迟低于30ms。加上内置陀螺仪和加速度计可以实时探测佩戴者的头部运动然后调整画面显示内容,用户置身其中浸润感更强。因此,尽管Oculus Riff的分辨率目前只有640x800 (由1280x800分屏而来,很快将会有1080P显示屏匹配),但凭借其优异的90度视场和极低的延迟,在虚拟现实方面依然胜过市面上各种商用型号HMD。
[0059]用户佩戴并将Riff设备启动之后,与个人电脑里所运行的相关应用程序建立数据连接,同时还可以选择通过移动客户端将手机与个人电脑进行连接,用户可以通过对Riff设备的动作控制或者通过手机上显示的虚拟键盘对个人电脑及Rift设备中的给用户双眼提供画面的两个屏幕进行控制和交互。
[0060]其中,个人电脑中运行的虚拟现实引擎,采用DirectX3D渲染技术通过像素渲染器Pixel Shader将虚拟三维场景渲染出的图片进行失真校正和失真缩放,并分割绘制到所述头戴式显示设备的左右双眼屏幕,以每秒60帧以上的频率进行刷新。
[0061]用户的控制动作通过内置在Rift设备中的传感器被捕捉,经过处理转化为相应的数据信息,通过与个人电脑的连接传输到个人电脑中的处理程序中,该处理程序对所得到的数据信息进行处理,然后将处理后的结果传回Rift设备。根据这些处理结果,Rift设备和/或个人电脑对所显示的图像进行处理,并显示给用户。例如当用户进行转头操作时,画面随着用户的转动而向相应的方向进行变化。
[0062]同时,该系统提供增强现实的功能,通过内置或外置的摄像头对实时影像进行拍摄并将相应的3D虚拟物体投射到用户所看到的3D虚拟现实图像中,该3D虚拟物体可以在图像中与用户进行交互,例如可以将一个花瓶投射到屏幕中,用户可以对其进行一些搬动等操作。
[0063]其中,用户的控制动作可以通过Rift设备内置的传感器来捕捉,当用户需要使用移动设备进行控制时,例如用户可能长时间佩戴头戴式设备而觉得太累时,可以在移动设备上显示虚拟的控制键盘,用户通过这些按键来控制视角,动作等。
[0064]用户对虚拟键盘的操作通过移动设备与个人电脑所建立的连接,发送至个人电脑进行处理,个人电脑将处理后的结果显示到个人电脑的屏幕,Rift设备的屏幕,并将处理结果反馈到移动设备即智能手机上,以使用户可以通过多个方面直观的感受到操作的流畅性。[0065]对于服务器为云端服务器的,实施方式与上面基本相同,Rift设备或者移动设备与云端服务器通过网络建立云连接,所有需要交互的数据和信息都通过云连接进行交互,而图像的渲染和处理在云端服务器上进行。这样就使得虚拟现实技术突破了空间的限制,可以应用到更广泛的领域。
[0066]本发明不局限于上述的优选实施方式,任何人应该得知在本发明的启示下做出的结构变化,凡是与本发明具有相同或者相近似的技术方案,均属于本发明的保护范围。
【权利要求】
1.一种跨移动平台实现沉浸式虚拟现实的系统,包括服务器端和客户端,其特征在于: 所述服务器端将现实场景进行渲染,并传输至客户端的显示设备上显示。
2.根据权利要求1所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于: 所述服务器端包括: 虚拟现实引擎,其封装了 OpenGL和Direct3D渲染库,并可为多个系统提供硬件抽象层HAL来适配不同平台的硬件设备和图形接口 ; 所述客户端包括:头戴式显示设备,其可360度全景显示虚拟现实空间。
3.根据权利要求2所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于: 所述虚拟现实引擎,采用DirectX3D渲染技术通过像素渲染器Pixel Shader将虚拟三维场景渲染出的图片进行失真校正和失真缩放,并分割绘制到所述头戴式显示设备的左右双眼屏幕。
4.根据权利要求3所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于: 所述头戴式显示设备的左右双眼屏幕以不小于60帧每秒的频率进行刷新。
5.根据权利要求2所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于: 所述头戴式显示设备为虚拟现实显示设备,所显示的虚拟现实空间为被三维虚拟物体扩充融合过的现实空间。
6.根据权利要求1所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于: 所述服务器端可以为个人电脑、云服务器或其他可运行程序的设备。
7.根据权利要求2所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于:所述多个系统至少可以为PC、1S、Android或Windows phone系统。
8.根据权利要求3所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于:所述虚拟现实引擎包括处理模块,用于接收客户端反馈的信息,对反馈的信息进行处理,设置坐标矩阵,根据反馈的信息进行图像的处理,将处理过的图像通过头戴式显示设备的硬件抽象层HAL传输给客户端,用户通过双眼看到反馈后更新的画面。
9.根据权利要求5所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于:所述系统还包括一个或多个传感器,用于即时获取头戴式显示设备的位置信息和朝向信息,进行头部运动和眼睛方向的跟踪;所述传感器为加速度计、陀螺仪、罗盘和方向传感器的至少其中之一; 所述系统还包括消息接口,用于将所述传感器获取的位置坐标和旋转四元数信息反馈至应用程序。
10.根据权利要求9所述的跨移动平台实现沉浸式虚拟现实的系统,其特征在于:所述应用程序通过所述虚拟现实引擎的渲染模块、物理碰撞模块、音效模块、核心模块对反馈的信息进行处理,设置坐标矩阵,将处理过的图像通过头戴式显示设备的硬件抽象层传输给所述设备,用户通过双眼看到反馈后更新的画面。
【文档编号】G06T17/00GK104035760SQ201410074939
【公开日】2014年9月10日 申请日期:2014年3月4日 优先权日:2014年3月4日
【发明者】刘洋 申请人:苏州天魂网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1