虚拟现实(Virtual Reality, VR)是一种可以创建和体验虚拟世界的计算机系统,它利用计算机模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,使用户如同身临其境一般,可以及时、没有限制地观察三维空间内的事物。虚拟校园漫游是虚拟现实技术在教育领域的一个应用,它利用虚拟现实技术和计算机图形学等技术,实现对校园场景的仿真再现,对校园进行交互式的浏览。
VRML(Virtual Reality Modeling Language,虚拟现实建模语言)是一种基于Web面向对象的三维造型语言,是构建虚拟漫游系统的有力工具。VRML使用ASCII文件来描述三维模型及渲染信息和动画过程,而将真正的生成工作放在本地实现。目前VRML2.0已经成为国际标准。VRML通过节点进行三维描述,任何对象都用节点表示,可以通过标准形状节点和高级形状节点,创造虚拟环境中的静态虚拟对象;通过各种动态造型节点和时间传感器节点,实现动态建模;通过传感器节点和视点控制,使系统能与用户交互。
本文基于VRML实现了一种可交互的动态数字虚拟校园漫游系统。建立一个数字虚拟校园的一般流程包括:设计方案、拍照、准备素材、建模、编辑wrl文件、添加互动代码、发布。在三维建模过程中,对于简单的三维模型可以直接由VRML代码实现,但是对于复杂或不规则的三维模型,则要借助3DSMAX等可视化三维建模工具生成VRML。3DSMAX导出的VRML模型文件相对较小,这对于网络传输的实时性是有利的。
渲染过程首先要确定一个摄像机(即视点),3DMAX缺省提供4个摄像机,即顶视图、正视图、侧视图和透视图。实际应用中最常见的渲染是透视图,透视图的摄像机基本遵循真实摄像机原理,所以才能在屏幕上展示出具备真实立体感的三维目标。确定视点之后还需要确定场景光源,以便增加场景的空间感。在VRML中光源被表示为灯光节点,包括SpotLight,PointLight等。确定了视点和光源之后,还要确定目标表面的材质。3DSMax提供了一些简单的纹理图样,用户可以直接使用。但如真实目标纹理比较复杂,则需通过数码相机拍摄目标来获取相应的纹理贴图,并可运用图像处理软件(如Photoshop等)对其进行拉伸、旋转、拼接、细化等处理,以满足场景需要。
为了提高在Web中传输速度,对VRML文件的优化进行了研究。VRML文件通过压缩可以减小文件容量,这对网络传输非常有利。例如,中国矿业大学(北京)校园的科技楼三维模型,未压缩前的wrl文件体积为364Kb,压缩后的文件体积是80Kb。通过这种方式,可以大大提高虚拟校园漫游系统的性能,为用户提供更加流畅的体验。