王海丰
(琼州学院电子信息工程学院,海南三亚572022)
虚拟现实[1](Virtual Reality VR)是二十世纪九十年代初发展起来的一门新兴技术,它融计算机图形学、人工智能、数字图像处理、人机接口技术、传感器技术以及高度并行的实时计算技术和人的行为等于一体,利用各种先进的硬件技术及软件工具,设计出合理的硬件、软件及交互手段,使参与者能交互式地观察和操纵系统生成的虚拟世界。由于网络技术快速发展,使得虚拟现实在教育教学[2]、政府城市规划[3]、商业领域以及娱乐等诸多领域发挥着越来越重要的作用,对人们的生活和生产产生了深远的影响。
随着海南国际旅游岛建设上升为国家战略,星级酒店、大旅行社、名胜景点等,开始自建网站或借用电子旅行社开拓网络销售渠道。但宣传手段仅限于文字、图像、影像,形式单一、死板生硬,在真实感、交互性和观赏效果等方面与真实环境相差甚远。
虚拟现实技术可以使用户融入到真实环境中,并可以实现与环境中的对象进行自然的、实时的交互,从而使用户产生一种沉浸在虚拟环境中的真实感觉。本文研究建立一个基于VRML的虚拟酒店漫游系统,综合运用3DMAX和VRML语言、Java等技术,加入听觉、触觉等辅助功能,实现三维虚拟酒店漫游系统,浏览者可以通过互联网漫游虚拟酒店系统,获得身临其境的感受,并实现旅游业酒店预定的信息化、立体化、多样化。
虚拟现实建模语言(Virtual Reality Modeling Language VRML)是继HTML之后的第二代Web语言,同HTML一样VRML用一种ASCII的描述性语言来描述三维物体及其行为,可以构建虚拟境界,并集成文本、图像、音响、MPEG影像等多种媒体类型,并可以通过内建节点或者内嵌Java、JavaScript等语言程序代码实现对对象的交互控制。由于VRML在虚拟现实、场景展示、仿真系统等方面表现出的优良特性和应用前景,它已经成为计算机领域当前研究的热点之一。
1.1 虚拟环境的构建虚拟酒店建设的基础是场景建模,它也是整个设计的核心,建模的好坏会直接影响到后续工作的成败。由于直接用VRML程序代码来建造模型工作量大且复杂繁琐,我们采用3DS MAX进行三维场景构建。根据酒店的建筑设计图纸对每个部件的几何模型进行单独建模。利用3DS MAX对模型进行材质渲染,利用3D MAX的材质编辑器对部件进行材质编辑,主要包括漫反射颜色、光滑度、高光点的颜色、光强、以及透明和自发光等。并对部件的纹理、光照、颜色等进行渲染和烘焙,利用Render To Texture功能,烘焙(TBaker)出高真实感、高精度的光照贴图,然后构建酒店楼体的整体场景,并按照酒店平面图坐标位置构建植物模型以及绿化区域,从而构建出整体的三维虚拟场景。最终将构建好的三维场景输出单个的.wrl文件,并通过VRML的Inline节点方便地将不同部分集成为最后的虚拟场景模型。
1.2 交互功能的创建VRML自身交互是通过VRML内建节点来实现的,通过VRML提供的传感器来检测浏览者在虚拟场景中的动作,当浏览者点击到一个附带有传感器的造型时,传感器就输出一个事件,这个事件就被路由到其他节点来开始一个动画。这样就可以通过事件的传递,实现浏览者和虚拟环境的交互。
由于VRML语言不具有高级编程语言所具有的特征,不能和外界建立交互,为了使虚拟场景能够和外部取得通信,采用VRML和Java、JavaScript等高级语言结合来实现交互功能,VRML和Java之间的通讯是通过Script节点和Script类来实现的,Script节点中的域url指定一段实现事件处理的Java程序代码或JavaS-cript脚本,然后将程序计算返回的结果递交给Script节点的输出事件,再通过Route To将该事件传递给场景某对象的相关域,达到改变场景的目的;或者直接由Script节点中指定的第三方程序控制VRML场景[4]。利用JavaScript脚本可以实现诸如旋转门的转动等复杂动画。图1是Script节点和Java通信的示意图。
1.3 优化处理与发布VRML语言设计的造型和动画等最后要嵌入到网页中在网络上传输,这样就要求所生成的文件要尽可能的小,这就需要对场景中的对象、视点等进行加工,降低场景的复杂度,减少场景总量,可以采用纹理贴图技术减少不必要的多边形;采用多细节层次模型技术,根据视点与该物体的距离决定模型调用同一对象的不同细节程序的模型;对场景中的不可见面进行删除和隐藏;采用Inline节点等来减少主程序代码量。优化后可以提高浏览器的性能和渲染速度,增强场景的真实感及用户交互实时性。利用VRMLPad及其插件也可以对VRML文件的场景进行优化。具体如图2所示。
图1 Script节点和Java的通信
图2 VRMLPad优化菜单
VRML文件可以直接嵌入到HTML文档中进行发布,通过超链接可以把HTML文件和VRML文件链接到一起,浏览者需要装有专门的VRML插件才可以正常的调用和浏览VRML文件。
通过虚拟现实技术实现基于Web的酒店漫游系统,打破以往酒店只能通过图片、视频等宣传方式,使浏览者通过互联网就能进入到虚拟酒店中进行漫游,在虚拟环境中,用户可以自由地对酒店环境进行欣赏,并可以根据自己的需要随时变换视角,进行任意角度的场景浏览,可以使没有亲临过酒店的访问者能获得身临其境的感受,并能实时产生与真实世界相同的感觉,使人与计算机融为一体。并实现旅游业酒店预定的信息化、立体化、多样化。将虚拟现实技术与基于Web技术的酒店电子商务平台相结合,实现酒店全方位、立体化、网络化的经营与管理。为用户提供全方位、人性化的解决方案,提高游客的满意度。
虚拟浏览方式可以带给用户新奇、交互的在线体验方式,有利于开发潜在的用户,给企业带来更多的机遇,提高酒店企业竞争力,为展示企业形象探索了一种新的模式。预示着未来酒店业宣传的全新发展方向。
[1]洪炳镕等.虚拟现实及其应用[M].北京:国防工业出版社,2005.
[2]王春香,朱军,孟令奎.基于VRML的交互式虚拟教室建模[J].地理空间信息,2009,7(1):114-117.
[3]刘增良,陈品祥,贾光军等.虚拟现实技术在城市规划管理中的应用研究与实践[J].测绘通报.2010,(05):45-47.
[4]李欣.虚拟现实及其教育应用[M].北京:科学出版社,2008,6.