UDK虚拟仿真系统在矿山的应用初探

时间:2022-08-14 03:03:30

UDK虚拟仿真系统在矿山的应用初探

摘 要:随着矿山虚拟仿真系统系统技术研究的日益深入和广泛,对虚拟场景的真实感和沉浸感都提出更高的要求。为解决上述问题,本文提出一种新的虚拟博物馆系统开发解决方案,采用UDK引擎构建虚拟矿山的新方式,通过三维建模、UV贴图、法线贴图、虚拟场景构建、实时布料动画、脚本程序设计等手段,实现整个博物馆的自动游览和交互漫游。唐公塔煤矿虚拟仿真系统项目实践证明,本方案达到照片级别的实时渲染效果,并且给用户带来良好的互动体验,具备产业化应用价值。

关键词:UDK;虚拟仿真系统;矿山

中图分类号:TP391 文献标识码:A

文章编号:1005-5312(2012)17-0276-02

近年来,国内虚拟矿山建设取得一系列的成果,但是大多数是基于Unity3d,Virtools,或是其他的一些开源虚拟平台,其中共同的弱点是缺乏沉浸式的真实感,这些平台中的灯光,材质,粒子系统等模块在还原真实感的表现力还存在些许不尽人意的地方,为了更好体现虚拟矿山真实的场景语义,本系统在对唐公塔煤矿的主要建筑物三维重建和虚拟漫游实现的过程中,应用了强大的基于Unreal3游戏引擎的UDK开发工具包。本项目现在应用于鄂尔多斯市唐公塔煤矿,UDK矿山虚拟仿真系统系统实现了将煤矿经营、生产、安全、管理决策等信息的有机集成,在全3D的立体可视境下进行矿山企业的各种管控活动,帮助企业建立起真正意义的绿色矿山、效益矿山和安全矿山。本文将重点探讨场景创建,交互漫游,生产仿真,等可视化部分。

可视化部分主要包括主体建筑和周边场景,其中主体建筑由主副两个厂区、地上和地下两大部分组成,周边场景则包括,储煤仓,办公楼、机械设备、地下巷道、树木、停车场、警卫室等等,一应俱全。矿山虚拟仿真系统系统就是将地面与井下的各类设备、设施、巷道、井筒、硐室进行三维立体构建,创建出全真实的虚拟矿山环境,使用者可点击鼠标,操作键盘,轻松地在整个矿山内进行自由的漫游、浏览,该功能模块是可视化矿山管理的基础模块,并可用于员工培训。生产仿真的功能,模拟了矿山企业井下生产、地面生产的主要工艺过程,使得新员工在下井前就可以在电脑面前进行真实的培训,可以有效的降低企业培训成本,提高员工作业素质。

Unreal3引擎是基于DirectX9.0、DirectX10.0、OpenGL2.0等新一代图形接口推出的游戏开发引擎,支持64位HDR高精度动态渲染、多种类光照和高级动态阴影特效,可以在低多边形数量(通常在5000~15000多边形)的模型上,实现数百万个多边形模型才有的高渲染精度,这样就可以用最低的计算资源做到极高画质渲染,符合虚拟场景的真实感要求。此外,Unreal3引擎之中还集成了PhysX物理引擎、SpeedTree植被引擎、EAX5.0音效引擎、AI引擎等,并且包括场景编辑器、动画编辑器、粒子编辑器等多种所见即所得的编辑工具,结合支持面向对象技术的UnrealScript语言,可以提供多种互动体验。

本系统采用、3DSMAX、Maya、ZBrush、Photoshop、BodyPainte等工具构建三维场景,利用UDK实现场景漫游。具体工作步骤包括三维建模及贴图、UDK虚拟场景制作、实时布料动画、自动漫游制作、交互漫游实现等。

场景创建本系统主要采用3DSMAX和工具进行场景建模工作。为了让3DSMAX单位与引擎单位比例一致,在UDK中,6英尺的人物高度为96单位,从而可以得出UDK中1单位约等于2厘米,以此作为尺寸依据,参照CAD图纸,最终制作的矿山的全部场景。这里采用了3DSMAX的多边形建模技术,整个场景三角形面数约为七百万个。其中的人物模型及贴图制作如雕塑,岩石,等,在建模时主要采用Maya、Photoshop和ZBrush工具,其中Maya工具用于根据数码照片创建模型,Photoshop工具用于制作模型贴图及法线贴图,ZBrush工具用来增加模型的细节效果和映射法线。模型及贴图制作流程包括制作三维模型、展开模型UV、绘制模型贴图、制作法线贴图等几个步骤。利用UDK制作虚拟场景本系统利用UDK的场景编辑器及PhysX物理引擎完成场景及特效制作。

利用UDK的内容浏览器组件可以导入矿山数字资源,通过场景编辑器,依照景物在矿山中的实际摆放位置设计虚拟场景;添加平行光、太阳光、镜头光晕、大气等效果。为了加强场景漫游的真实感,,还利用UDK强大的仿真系统制作出燃烧的火焰,飘荡的云彩,潺潺流水,飞翔鸟儿,飘动的红旗效果。自动漫游功能实现自动漫游通过UDK的Matinee编辑器实现。通过添加摄像机控制类,实现摄像机的运行;通过AmbientSoundSimple类,为场景添加背景音乐。

交互漫游中需要解决的问题有碰撞检测、事件触发、用户UI、界面HUD的显示等。

碰撞检测。如果场景结构复杂,物体较多,可以通过UDK构建静态物体包围盒来简化物体之间的碰撞检测。具体方法为,在UDK的静态物体编辑器的菜单中,通过Collision菜单设置不同级别的碰撞检测,对于复杂场景,在利用3DSMAX等建模工具导出为UDK支持格式时,应拆分为不同物体导出,而后在场景编辑器中重新组合。UDK支持多个级别的碰撞检测。

事件触发。UDK中的事件触发组件包括自动触发、交互触发等多种类型,可根据不同情况设置不同的触发类型,从而带给用户良好的交互体验。例如,在场景的入口和出口处应用自动触发器,可以实现多个虚拟场景的切换;对需要解说的部分应用自动触发器,当用户走近该物体时,可以自动触发对文物的解说,类似现实场景的红外感应;对需要用户进一部了解的文物应用交互触发器,可以利用UI界面显示出矿山设备介绍,场景描述等信息。在UDK中,事件触发范围为圆柱体区域,可以通过设置圆柱体的高度和半径来修改事件触发范围。

UI的编辑利用了UDK的外挂Scalform编辑器实现系统菜单功能,通过Flash设计好带有Alpha通道的图形代码的用户界面,并将之导入UDK,而后在Kimset编辑器中的GFX模块,来实现与Flash脚本的关联,相比传统的UI编辑器能够是用户界面更加美观且富于变化。HUD是平视显示器(HeadUpDisplay)的简称,是目前普遍运用在航空器上的飞行辅助仪器。平视的意思是指飞行员不需要低头,就能够看到他需要的重要资讯。在虚拟矿山系统中借鉴了这个概念,把制作单位等信息以类似HUD的方式显示在交互漫游画面上。当然,要获得这些信息可以有别的方式,菜单有着专门的界面,可以容纳更大的信息量,但却不能和漫游画面同时出现。调出菜单意味着中断漫游流程,HUD则在提供必要信息的同时完全避免了这个问题。

使用HUD需要利用Unreal3引擎提供的支持面向对象编程技术的UnrealScript语言,类似C语言风格。通过建立VRMuseumInfo、VRPawn、VRPlayerCon troller、VRHud等类,可以实现界面HUD的绘制,在添加镜头光晕、大气雾化效果等后,最终实现的虚拟矿山的交互漫游。

应用Unreal3引擎的UDK工具,来开放矿山虚拟仿真系统系统,国内在相关领域的应用尚属首次,相对于国内同类虚拟矿山系统,大大提高了产品沉浸式的真实感;在碰撞检测、交互语义、实时动画、实时阴影、大气雾化效果等方面,达到了次世代游戏般的震撼的视觉感受,探索了一条将世界一流游戏引擎应用于虚拟矿山的新思路,具有较强的应用和推广价值。

参考文献:

[1]潘志庚等.分布式虚拟环境综述[J].软件学报,2000,11(4):461-467.

[2]刘箴.河姆渡遗址博物馆虚拟展示系统的研究[J].系统仿真学报,2009,21(7):1945-1949.

[3]朱淮冰,金小刚.布料动画模拟综述[J].计算机辅助设计与图形学报,2004,16(5):45-48.

[4]刘晓艳,林珲,张宏.虚拟城市建设原理与方法[M].北京:科学出版社,2003.

上一篇:论装修中如何控制室内污染 下一篇:甘南藏区经济发展中税收制约因素分析与改革建...