三维虚拟场景浏览系统研究
2013-04-29王若柔
王若柔
摘 要:如今,虚拟现实技术己经成为计算机技术中研究和应用的热点,其中虚拟校园就是其在教育领域的典型应用。本文分析了虚拟现实技术及其研究现状,并对所研究系统的构架、组织方式、创建平台及使用软件等进行了较为详细的阐述,分析了其构建过程与方法,最终完成系统的设计。
关键词:虚拟校园;三维虚拟场景;C#
一、虚拟现实技术
虚拟现实(Virtual Reality,简称VR),又称为灵境技术。其特征是沉浸性、交互性和多感知性,是一种可以创建和体验虚拟世界的计算机系统。其中,虚拟校园是虚拟城市建设计划的核心平台,在此核心平台之上的各种数据库及其系统集成构成了虚拟校园的核心应用。针对虚拟校园漫游系统的研究具有诸多意义,其可为虚拟社区、虚拟城市等虚拟浏览系统的研究建立起示范、试验作用。
二、三维虚拟场景制作
1.外业拍摄
外业拍摄即地面摄影影像采集,是三维场景建设的基础工作之一,良好的外业拍摄作业有助于后期三维建模过程中最大限度地保证模型的真实性,更真实地表现现实世界中的各种景观事物。
2.底图校正
此步骤要求对虚拟浏览系统范围内航拍影像底图进行校正,所使用的软件为ArcGIS,校正后得到坐标正确且与实际地貌特征相符的底图,以備后期使用。
3.CAD即计算机辅助设计(Computer Aided Design)
CAD图纸为创建三维模型提供了所需要的基本资料。通过AutoCAD的提取处理,得到相应地区的CAD底图及坐标信息,以便导入3dsMax进行后期建模。
4.纹理图样的处理
三维虚拟场景制作工作中的基础部分,主要应用的软件为Adobe公司的Photoshop,主要工作是根据外业拍摄工作中得到的数据编辑处理出三维建模过程所需的纹理图样,用于模型的贴图处理。
5.三维模型制作
本论文所采用的三维场景的建立技术主要是建立在3ds Max平台之上。在导入CAD底图后根据CAD文件绘制模型轮廓,在此基础之上创建立体模型,随后对模型贴图。
三、三维虚拟场景浏览系统的功能实现
建立好三维模型后,我们将使用Microsoft Visual Studio 2010 软件,利用C#语言进行编程,最终形成一套完整的三维虚拟场景浏览系统。
三维虚拟场景浏览系统主要实现功能为虚拟校园中模型的显示、场景漫游及相关设置、场景内属性及坐标的查询、距离量算等。
1.系统模块结构及功能介绍
建立C3Dmodel模块,将其定义为本系统核心模块,其主要功能为调用3D模型,使之正常显示。其作用主要包括加载模型中顶点数目、模型中面的数目、模型纹理坐标数目、模型对象名称、对象法向量、纹理UV坐标以及存储对象对应纹理名称、判断是否具有纹理映射。
2.系统主要模块
(1)读入对象数据。此段代码主要实现的功能为读入对象数据。
(2)载入透明纹理。本段代码主要实现的功能为载入浏览系统中模型所需的透明纹理,以保证模型的正常显示。
(3)显示效果的控制。改变显示效果菜单栏下有“显示/隐藏影像图”和“打开/关闭背景音乐”两个选项,用于系统的基础功能控制,单击后即可生效;改变显示内容菜单栏下有“显示天空”“显示模型”“显示雾效”和“显示雪景”四个选项,用于调控不同显示内容;为实现效果控制,对应视窗界面下的各项效果控制命令,不同命令的初始默认值不同,用true 和 false 控制开关。
(4)漫游浏览功能的实现。本系统设计通过键盘操作可进行在虚拟场景中漫游,用户手动漫游方式主要依靠键盘操作。对应功能如下:“W”——向前移动;“S”——向后移动;“A”——向左旋转;“D”——向右旋转;“+”——视点抬高;“-”——视点降低。用户可通过以上按键在此三维虚拟场景中进行漫游,全方位地体验本系统。
(5)步长设置功能的实现。浏览菜单栏下有“视点复位”“自动漫游”和“步长设置”三个选项,下面主要对“步长设置”功能进行介绍。本系统提供了步长设置功能,用户可通过设置不同的步长值来调控漫游过程中的步长幅度。配合键盘按键“W”“S”“A”“D”可实现场景漫游浏览。点击“步长设置”命令后,即弹出“漫游步长参数设置”窗口,用户可对前后移动步长、左右旋转角度及视点升降角度进行设置。其中,前后移动步长值对应“W”键和“S”键操作步长值,左右旋转角度步长值对应“A”键和“D”键操作步长值,视点升降角度步长值对应“+”键和“-”键操作步长值。设置完成后点击“确定”即可,如若不想保存此设置则需点击“取消”。
(6)查询量算功能的实现。查询量算菜单栏下有“属性查询”“坐标查询”和“距离量算”三个选项。首先需要对系统中的查询量算操作进行控制,目的是实现此系统的空间量算功能;当用户选择此三位虚拟场景浏览系统的“距离量算”功能时,视窗中将显示测量用线划,本段代码即实现此线划的显示;在属性查询状态下点击虚拟场景中模型,当系统数据库中有用户所查询的模型信息时,将弹出“地物属性”窗口。
(7)坐标查询功能。本系统提供了坐标查询功能,用户可在视窗中点击虚拟场景中任意空间点,系统将提供给用户该点的空间坐标位置。点击“坐标查询”命令后,系统进入坐标查询状态,此状态下在鼠标点击虚拟场景中任意点,即可弹出对应对话框显示该点坐标。若想退出坐标查询状态只需再次点击“坐标查询”命令即可。
(8)距离量算功能。本系统提供了距离量算功能,用户可在视窗中通过鼠标选择两个目标点,以测量出该两点间的距离。点击“距离量算”命令后,系统进入距离量算状态,此状态下在鼠标点击虚拟场景中任意点后,将出现红色线划随鼠标移动,直至在虚拟场景中再次点击鼠标左键选取另一点,此时单击鼠标右键,系统将计算出此两点间距离并将弹出对话框告知用户。若想量算其他两点间距离,只需重新选择点即可。若想退出距离量算状态只需再次点击“距离量算”命令即可。
四、总结
本文以三维虚拟场景浏览系统为主要研究对象,对其构建过程进行了较为细致的分析。对在构建系统过程中使用到的各种软件进行了介绍,并对相关的使用方法进行了概括,是在虚拟校园领域的又一次探索和实践。
参考文献:
[1]The Virtual Reality Modeling Language International Standard[S].ISO/IEC14772,1997.
[2]伍周凯.建筑三维建模高级技法[M].北京:机械工业出版社,2001.
[3]高志清.3ds Max4.0效果图及动画制作入门与深造[M].北京:中国水利水电出版社,2002.