多种虚拟现实技术的互补实现虚拟场景从宏观到微观的展示
摘 要
通过3D GIS反应地球经纬度上的地理信息,3dsMax和AutoCAD等软件设计三维场景,Java3D设计复杂的三维几何物体,VRML展示小物体的交互性能;此外对于复杂的场景,为了减少开发周期可采用3D全景技术实现大范围的地理风貌和室内场景的展示。通过各种虚拟现实技术的互补实现虚拟场景从宏观场景到微观场景的全面展示。
【关键词】虚拟现实 GIS 3dsMax Java3D VRML 全景
1 引言
虚拟现实,英文名为Virtual Reality,简称VR技术。随着计算机硬件软件技术的发展以及人们越来越认识到它的重要作用,虚拟技术在各行各业都得到了不同程度的发展,并且越来越显示出广阔的应用前景,在军事、教学、制造工业、建筑与城市规划、娱乐业、医学、石油工业中等都有广泛的应用。虚拟现实技术主要包括桌面级的虚拟现实、投入的虚拟现实、增强现实性的虚拟现实、分布式虚拟现实。文章涉及的内容属于桌面级的虚拟现实,发挥各种虚拟现实软件的特点,探讨如何将各种软件融合到一起,充分发挥虚拟现实技术的强大作用。
2 三维GIS——宏观展示
地理信息系统(Geographic Information System,GIS)是一种特定的十分重要的空间信息系统,它是在计算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统。位置可能由经度、纬度和海拔的x,y,z坐标来标注,或是由其他地理编码系统比如ZIP码,又或是高速公路英里标志来表示。地理信息系统广泛应用于资源调查、环境评估、灾害预测、国土管理、城市规划、石油管道、邮电通讯、交通运输、军事公安、水利电力、公共设施管理、农林牧业、统计、商业金融等几乎所有领域。GIS开发工具和软件很多,例如ARCGIS、MAPGIS、mapinfo等等,开发语言几乎主流的开发语言都支持,例如C++、C#、VB、java。
3 3dsMax和AutoCAD等软件—设计三维场景
目前常用三维软件很多,比较流行的三维软件如:3dsMax、Maya、Softimage/XSI、Lightwave 3D、PRO-E等。3D MAX的制作流程简洁高效,操作简便,广泛应用于广告、影视、工业设计、建筑设计、三维动画、多媒体制作、游戏、辅助教学以及工程可视化等领域;AutoCAD具有强大的编辑功能,可以移动、复制、旋转、阵列、拉伸、延长、修剪、缩放对象等,可创建3D实体及表面模型,AutoCAD提供了多种图形图像数据交换格式及相应命令;Maya的CG功能十分全面,建模、粒子系统、毛发生成、植物创建、衣料仿真等等,MAYA软件应用主要是动画片制作、电影制作、电视栏目包装、电视广告、游戏动画制作等。
4 Java 3D——几何形状复杂且相对位置要求严格
计算机图形系统的开发平台从早期的GKS、PHIGS等发展到OpenGL等,再发展到现在的Java3D等,Java 3D集成了底层的图形库OpenGL与DirectX功能,并增加了声音功能,对集合形体采用场景式管理。Java语言强大的网络功能与Java 3D强大的图形图像处理功能相结合,Java3D与Java一样,一次便可跨平台运行。Java 3D能够贵场景的可视化进行并行计算与优化,能够自动应用计算机硬件的加速功能,并且提高图形显示的效率,能够对场景进行预编译。
5 VRML——交互性要求的需要
VRML(Virtual reality modeling language)与其它实现三维场景的技术手段(如OpenGL,3DSMAX)相比,具有语法简单、三维建模功能强大、便于网上发布、良好的交互功能等优点。在交互性方面,仅依赖于VRML本身还存在很大的局限性,例如物体的非线性运动等。VRML与JavaScript、Java的交互,使得VRML具有强大的编程能力,从而更加灵活、方便的对场景和造型进行控制,同时实现了在Web页上对VRML场景进行有效控制。
Java是一种跨平台的、面向对象的、解释的、健壮的、自动回收内存的、安全的、可移植的、多线程的、动态的语言。通过Java,可以实现用户和VRML虚拟场景之间丰富、便捷的人机交互。虚拟现实不仅仅是一个演示媒体,而且还是一个设计工具,例如定制高脚脸盆龙头,如图1所示,用户通过对主管高度、支管高度、支管长度、主管圆径、支管圆径的尺寸定制,支管、颜色的外观定制、单孔、双控的功能定制、模拟防水等,可直接显示高脚脸盆龙头的定制结果。
6 3D全景展示——复杂环境及局部环境展示
360度全景不但有360度的视角,更可以带来三维立体的视觉感,让观者犹如身临其境。相对来说,三维建模立体感和沉浸感无疑比360度全景景更强,360度全景的拍摄和制作投入少,制作简单,例如只需要全景图的拼接(现在多数照相机具备全景图拍摄的功能)和Pan02V的简单操作,一个全景从拍摄到完成制作发布只需要短短的几分钟时间,360度全景无疑是性价比较高的选择。它的数据量很小,对系统的要求低,适合各种方式,各种终端设备上观看。全景虚拟现实的需求领域比较广泛,可用于展示房产、观光景点、汽车、酒店、校园、文化和体育场馆、公司办公环境等。
7 结束语
文章简单介绍了用户宏观展示的三维GIS、普遍用于设计三维场景的软件3dsMax、AutoCAD等,设计几何形状复杂且相对位置要求严格的Java 3D,用于交互性需要的VRML,用于复杂环境及其局部环境展示的3D全景展示。下一步工作是,通过具体的系统实现,将各种虚拟现实软件融合到一起,将虚拟现实场景从宏观到微观,从整体到局部,从简单到复杂的展示,达到更好的视觉效果和人机交互的效果。
参考文献
[1]村姑,Vulture,Zfj3000,Dan,Yixi,KAER,Gaoshan2013,方小莉.虚拟现实技术[EB/OL].http://wiki.mbalib.com/wiki/虚拟现实技术,2014-6-20.
[2]zcb.地理信息系统[EB/OL].http://www.baike.com/wiki/地理信息系统,2014-05-11.
[3]kiss5_2011.gis软件[EB/OL].http://baike.so.com/doc/5421363.html,2013-05-27.
[4]115798202. 3ds max[EB/OL].http://baike.baidu.com/view/11137.htm?fr=aladdin#9,2014-06-12.
[5]java118 AutoCAD[EB/OL].http://baike.baidu.com/view/25199.htm?fr=Aladdin,2014-05-27.
[6]兔子.198510.MAYA软件[EB/OL].2014-05-24.
[7]高新瑞.Java、Java 3D与计算机几何设计[M].北京:电子工业出版社,2007:1-8.
[8]俞敏,杨力.VRML与外部程序交互的研究[J].计算机工程,2005,31(19):82-84.
[9]陆昌辉,周正平,倪文志,等.使用VRML与Java创建网络虚拟环境[M].北京:北京大学出版社,2003.
[10]全政环.3600全景技术的应用和发展历程[J].电脑知识与技术,2010,6(3):713-715.
作者简介
陈树敏(1982-),女,河北省廊坊市人。硕士研究生学历。现为广东省计算中心工程师。主要研究方向为并行计算、Java研发、统计分析。
蔡建新(1981-),男,硕士研究生学历,现为广东省计算中心工程师。主要研究方向为项目管理、计算机技术研发。
作者单位
1.广东省计算中心平台技术支持部 广东省广州市 510033
2.广东省计算中心广东省高性能计算重点实验室 广东省广州市 510033