论文部分内容阅读
摘 要:虚拟现实技术己经成为计算机技术中研究、开发和应用的热点,广泛应用于教育、军事、建筑、医疗、工业设计等各个领域。虚拟校园是虚拟现实技术在现代教育中的应用,它实现了对校园三维景观和教学环境的数字化和虚拟化,在学校的教学资源管理、环境规划和学校发展等许多方面发挥了重要的作用。
关键词:三维场景建模;LOD技术;漫游交互功能
一、引言
虚拟现实技术(Virtual Reality)是一种综合计算机图形技术、多媒体技术、传感与测量技术、人机交互技术、网络技术、微电子技术、立体显示技术以及仿真技术等多种科学技术发展起来的计算机领域的最新技术。它的兴起,为人机交互界面的发展开创了新的研究领域,为智能工程的应用提供了新的界面工具,为各类工程的大规模数据可视化提供了新的描述方法。虚拟环境是由计算机生成的,通过视、听、触觉等作用于用户,使之产生身临其境感觉的交互式视景仿真。
二、虚拟校园三维场景的构建
1、在3d max中,利用多边形建模技术,根据制作的校园总规划平面图确定建筑物的具体位置,再认真观察现场照片确定建筑物具体结构,采用自下向上的方法制作。制作时,要对形体高度的概括,大力控制面的数量,消除冗余的多边形面,降低整个场景的复杂度,做到形体准确、概括、数据量小,从而降低场景实时渲染的复杂度,保障系统能够流畅运行。对建好的素模进行材质制作,贴上处理好的纹理和材质,使其与真实景物相符,可以用数码相机进行拍照,然后传入计算机,运用Photoshop软件进行斜切、扭曲等调整及切割原始图像、调整对比度、部分颜色填充的改动等纠正处理后,以JPG、TGA等格式存储,作为模型的贴图库。
2、虚拟校园系统中的地理对象按空间分布特性分为两类:一类是以场景为基础,在空间上连续分布的地形景观对象,如地形;另一类是以离散实体为特性,以独立的个体而存在的地物对象,如建筑物、树木、路灯等。在建模过程中,应该依据不同的事物区别对待。虚拟校园环境中的地物对象有建筑物、花园、路灯、树和宣传栏等,这些对象因其不同的结构特点而采取不同的方式来构建其虚拟模型。对于复杂结构地物对象,必须采用多细节层次LOD技术进行多层次处理和表达。LOD是Level of Detail的缩写,意为层次细节度,指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。构建LOD模型时遵循由近到远的顺序,即先建立精细的近景模型,再逐步简化到中景和远景模型,这样有利于保持模型效果的一致性,避免因为远景粗模创建的不合理而影响近景的制作。使用LOD技术能确保后面漫游的实时性。
三、虚拟校园漫游系统交互功能的实现
交互漫游就是用户采用多种输入设备相结合,可以随意控制漫游时的速度、方向、视角等。其中控制输入设备的方式有鼠标和键盘。键盘控制速度和前进、后退的方向,鼠标控制俯仰、左右及旋转的操作。其实现的具体步骤如下:
1、键盘和鼠标的捕获
要捕捉用户的动作,就需要相应的硬件输入设备,在微机上配备的最重要的交互设备是键盘、鼠标。键盘是人机交互使用频繁的一种外部设备,键盘对应的动作控制可由按键或按键的组合来实现。每次我们松开或按下一个按键时,都会产生一个事件。在应用程序中通过捕捉用户相应的按键动作,转换成相应的控制命令,就可以控制场景的变换。鼠标是目前微机上人机交互的一种非常简便易用的输入设备,Windows下的多数操作可由鼠标来完成。如果想查询三维场景中的某个物体的信息,就需要相应的定位选择设备,这种定位用键盘无法完成,需要借助于鼠标的定点功能来完成。因此,在完成实际的用户动作输入时往往借助于两种或两种以上的设备组合。在openGL的函数库中有相应的捕获函数,本虚拟校园漫游系统使用了OPenGL中提供的键盘和鼠标捕捉函数。
2、漫游控制
在本系统的实现中,利用键盘的Q键控制上升、E键控制下降、W键控制前进、S键控制后退、A键控制左移、D键控制右移,四个方向键控制旋转。当用户的角度发生变化时,场景内的物体就要做出相应的变化,即要进行重绘。其具体实现的方法有两种:一是通过直接改变场景中三维物体的坐标来完成;二是借助于视点变换来完成交互场景画面的改变。直接改变坐标将涉及到场景中所有物体坐标的重新变换,而且多次变换会产生误差累积现象,从而造成场景的畸变。因此,在实时交互时,通过改变用户视点的方法来完成对场景的重新绘制。OPenGL中提供了专门用于进行视点变换的函数gluLookAt(),该函数实际上封装了一系列平移和旋转命令,它由眼睛的位置、参考点、向上矢量导出取景矩阵,把目标点映射到负Z轴,观察点在原点。使用投影矩阵时,场景中的映射到视见区中心,向上矢量映射到y轴,但向上矢量不一定平行于从视点到参考线的视线。在虚拟校园的漫游中,由于人站立的方向始终向上,可以捕获鼠标和键盘的操作,通过相关鼠标的位移量或键盘的操作(如果通过键盘操作,可以通过一个变量来预先定义和调整移动速度)来计算出人眼和参考点的变化(利用相关的三维几何知识),然后通过gluLookAt()自动生成相应的三维场景。
参考文献:
[1]施贵刚,基于软件的虚拟现实关键技术研究,电脑知识与技术,1009-3044(2006)02-0174-02。
[2]李敏,基于OpenGL的虚拟校园漫游系统的设计与实现,山东大学硕士学位论文,2008。
[3]李振波,孟祥旭,向辉.复杂虚拟场景构造及交互漫游实现研究,系统仿真学报.2002.1(9):l~2。
关键词:三维场景建模;LOD技术;漫游交互功能
一、引言
虚拟现实技术(Virtual Reality)是一种综合计算机图形技术、多媒体技术、传感与测量技术、人机交互技术、网络技术、微电子技术、立体显示技术以及仿真技术等多种科学技术发展起来的计算机领域的最新技术。它的兴起,为人机交互界面的发展开创了新的研究领域,为智能工程的应用提供了新的界面工具,为各类工程的大规模数据可视化提供了新的描述方法。虚拟环境是由计算机生成的,通过视、听、触觉等作用于用户,使之产生身临其境感觉的交互式视景仿真。
二、虚拟校园三维场景的构建
1、在3d max中,利用多边形建模技术,根据制作的校园总规划平面图确定建筑物的具体位置,再认真观察现场照片确定建筑物具体结构,采用自下向上的方法制作。制作时,要对形体高度的概括,大力控制面的数量,消除冗余的多边形面,降低整个场景的复杂度,做到形体准确、概括、数据量小,从而降低场景实时渲染的复杂度,保障系统能够流畅运行。对建好的素模进行材质制作,贴上处理好的纹理和材质,使其与真实景物相符,可以用数码相机进行拍照,然后传入计算机,运用Photoshop软件进行斜切、扭曲等调整及切割原始图像、调整对比度、部分颜色填充的改动等纠正处理后,以JPG、TGA等格式存储,作为模型的贴图库。
2、虚拟校园系统中的地理对象按空间分布特性分为两类:一类是以场景为基础,在空间上连续分布的地形景观对象,如地形;另一类是以离散实体为特性,以独立的个体而存在的地物对象,如建筑物、树木、路灯等。在建模过程中,应该依据不同的事物区别对待。虚拟校园环境中的地物对象有建筑物、花园、路灯、树和宣传栏等,这些对象因其不同的结构特点而采取不同的方式来构建其虚拟模型。对于复杂结构地物对象,必须采用多细节层次LOD技术进行多层次处理和表达。LOD是Level of Detail的缩写,意为层次细节度,指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。构建LOD模型时遵循由近到远的顺序,即先建立精细的近景模型,再逐步简化到中景和远景模型,这样有利于保持模型效果的一致性,避免因为远景粗模创建的不合理而影响近景的制作。使用LOD技术能确保后面漫游的实时性。
三、虚拟校园漫游系统交互功能的实现
交互漫游就是用户采用多种输入设备相结合,可以随意控制漫游时的速度、方向、视角等。其中控制输入设备的方式有鼠标和键盘。键盘控制速度和前进、后退的方向,鼠标控制俯仰、左右及旋转的操作。其实现的具体步骤如下:
1、键盘和鼠标的捕获
要捕捉用户的动作,就需要相应的硬件输入设备,在微机上配备的最重要的交互设备是键盘、鼠标。键盘是人机交互使用频繁的一种外部设备,键盘对应的动作控制可由按键或按键的组合来实现。每次我们松开或按下一个按键时,都会产生一个事件。在应用程序中通过捕捉用户相应的按键动作,转换成相应的控制命令,就可以控制场景的变换。鼠标是目前微机上人机交互的一种非常简便易用的输入设备,Windows下的多数操作可由鼠标来完成。如果想查询三维场景中的某个物体的信息,就需要相应的定位选择设备,这种定位用键盘无法完成,需要借助于鼠标的定点功能来完成。因此,在完成实际的用户动作输入时往往借助于两种或两种以上的设备组合。在openGL的函数库中有相应的捕获函数,本虚拟校园漫游系统使用了OPenGL中提供的键盘和鼠标捕捉函数。
2、漫游控制
在本系统的实现中,利用键盘的Q键控制上升、E键控制下降、W键控制前进、S键控制后退、A键控制左移、D键控制右移,四个方向键控制旋转。当用户的角度发生变化时,场景内的物体就要做出相应的变化,即要进行重绘。其具体实现的方法有两种:一是通过直接改变场景中三维物体的坐标来完成;二是借助于视点变换来完成交互场景画面的改变。直接改变坐标将涉及到场景中所有物体坐标的重新变换,而且多次变换会产生误差累积现象,从而造成场景的畸变。因此,在实时交互时,通过改变用户视点的方法来完成对场景的重新绘制。OPenGL中提供了专门用于进行视点变换的函数gluLookAt(),该函数实际上封装了一系列平移和旋转命令,它由眼睛的位置、参考点、向上矢量导出取景矩阵,把目标点映射到负Z轴,观察点在原点。使用投影矩阵时,场景中的映射到视见区中心,向上矢量映射到y轴,但向上矢量不一定平行于从视点到参考线的视线。在虚拟校园的漫游中,由于人站立的方向始终向上,可以捕获鼠标和键盘的操作,通过相关鼠标的位移量或键盘的操作(如果通过键盘操作,可以通过一个变量来预先定义和调整移动速度)来计算出人眼和参考点的变化(利用相关的三维几何知识),然后通过gluLookAt()自动生成相应的三维场景。
参考文献:
[1]施贵刚,基于软件的虚拟现实关键技术研究,电脑知识与技术,1009-3044(2006)02-0174-02。
[2]李敏,基于OpenGL的虚拟校园漫游系统的设计与实现,山东大学硕士学位论文,2008。
[3]李振波,孟祥旭,向辉.复杂虚拟场景构造及交互漫游实现研究,系统仿真学报.2002.1(9):l~2。