虚拟城市的开发技术探讨_第1页
虚拟城市的开发技术探讨_第2页
虚拟城市的开发技术探讨_第3页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、虚拟城市的开发技术探讨虚拟城市的开发技术探讨虚拟城市的开发技术探讨武汉测绘科技大学土地科学学院 涂超摘要:本文介绍了虚拟城市的原理及其开发技术,阐述了虚 拟现实应用开发基本手段和过程,并进一步叙述了优化应用的常 用技巧。关键词:虚拟城市,VRML, LOD长期以来,城市规划人员的一 个重要的工作就是进行各种设计或规划图的绘制,但是这些图纸 并不能给人们提供一个宜观的、富有真实感的场景。后来,人们 虽然也使用纸板或木料来制作三维模型,以实现城市景观的三维 可视化。但其制作的工作量巨大、费用昂贵、须具备较高的制作 技巧,而且仅能从外围观看,无法进入,修改也很困难。鉴于以 上原因,

2、在计算机上建立三维虚拟城市成为必然。虚拟城市的建 立能够全方位地、直观地给人们提供有关城市的各种具有真实感 的场景信息,并可以以第一人称的身份进入城市,感受到与实地 观察相似的真实感。虚拟城市的各种模型易于修改,而且可以实 现城市信息的查询与分析功能。这些都是传统的方法所无法比拟 的。本文用制作实例的方式探讨了虚拟城市的开发技术。1.虚拟城市开发的基本原理第1页共1页要建立虚拟城市,首先要建立三维城市模型。三维城市空间 中的典型实体对象一般具有以下几种:城市中的各种建筑物、街 道、绿地、公共场所、城市地形、树木等。除此以外,还有一些 辅助性的设滋,如消防栓、变电站、喷泉、公园的长椅等。这些 模

3、型的制作可以采用编程的方法或者现有的三维模型制作软件来 完成。所谓编程的方法是在程序中利用三维空间中的坐标点和图 形绘制函数来实现模型的建立,由于城市模型的造型十分复杂, 因而很难确定模型的具体几何数据,此方法多用来制作地形模 型,对于其他模型的制作则很少采用。制作城市模型的最好的方 法是使用现有的成熟的三维设计软件,如:3DSMAX. TRUESPACE 等。虚拟城市除了能实现城市信息的三维可视化外,其另一个重 要的功能就是能实现城市专题信息的查询功能,甚至实现一定的 分析功能。可以将虚拟城市定义为以下公式:虚拟城市二三维城市模型+专题信息+查询功能+分析功能要实现一个虚拟城市系统可考虑以下

4、两种方案:一种方案是利用高级语言和三维图形开发库的方法,常用的 开发语言是C+,常用的图形开发库是OpenGL3D或者 Directx3Do此方法的特点是开发的灵活性强、能实现功能复杂的 应用系统。其缺点是开发者须熟练掌握编程技术,并且具备较高 的计算机图形学知识。另外,还要学习OpenGL3D或者Directx3D第1页共1页 的复杂开发技术。此方案的实现难度大,一般用户根本无法胜 任。其实现的应用系统也很难满足网上使用的要求。第二种方案是使用专用的三维虚拟开发工具,目前广泛使用 的是VRML语言。VRML (虚拟现实造型语言)是一种描述交互式三 维世界和对象的文件格式。VRML允许描述对象

5、并把对象组合到虚 拟场景中,可以实现仿真系统,可模拟动画、具有动力学特性的 物体。VRML能构造一个全交互的世界,其中的对象能对外部事件 做出响应,并可在其中任意穿行。另外,其重要特性是支持虚拟 场景的网上发布,并可实现多用户的实时参与。VRML比高级语言 容易掌握,并且无须再去了解OpenGL3D或者D让ectx3D之类的三 维图形开发库,这对于普通用户来说无疑是一个福音。若配以 Java程序的支持,也可实现功能较强大的系统。综合以上两种方法,对于功能不太复杂的应用,采用后一种 方法较为合适。下面我们将就后一种方案详细介绍虚拟城市开发 的技术细节。2.虚拟城市的开发技术2. 1.三维城市模型

6、的建立虚拟场景的建立和建筑CAD中的场景的建立有着很大的区 别,它首先强调的是模型的简单化,这是由虚拟现实的实时性要 求决定的。在响应速度和场景的真实性发生冲突时,应牺牲一定 的真实性,只要能在视觉上达到基本真实即可。因此,常用一些 简单的框架来代替复杂模型,但为了保证一定的真实性,可采用第1页共1页 贴图的方式来弥补视觉上的不足。贴图有以下两种制作方法:一 种是使用绘画软件进行手工绘制、另一种是对建筑物的各个观察 面进行拍照,然后用扫描仪扫描成相关贴图材质。第一种方法的 颜色可限定在256色内,其压缩的比例较大,贴图文件较小,生 成的场景文件也较小,适合网上传递和实时性的要求。后一种方 法视

7、觉效果好,但文件的压缩比例较小,贴图文件较大,生成的 场景大,在网上传递和实时性方面不如前一种方法好。无论用哪 一种方法都需考虑贴图的分辨率和尺寸,为了便于下载和渲染, 在质量和大小允许的情况下,一幅贴图限为320*240 (或 240*320)像素、分辨率为72dpi,用JPEG压缩(采用最高压缩 比)后约为20K字节。根据以上所述的贴图制作方法,虚拟场景中的对象模型可分 为以下几类:(a) 由简单几何体组成的简单模型:该类模型常用作远处建筑 物的替身,在L0D方法中采用;(b) 赋予手绘贴图的模型;(c) 赋予照片材质的模型;(d) 赋予手绘和照片混合材质的模型;(e) 具有全部细节的精致

8、模型;2. 1.虚拟城市交互查询功 能的建立第1页共1页为虚拟城市模型加入交互和查询功能可采用两种方法:通过 编程加入相应的交互和查询功能、利用VRML的辅助工具来完成交 互和查询功能的加入。后一种方法比较适合普通的用户。Kiix制作了特殊的VRML输出嵌入程序,可以输出场景,包括 几何、材质、动画制作等,嵌入程序也可制作特殊的VRML辅助工 具来规定场景的交互元素。运行VRML嵌入 程序VRMLOUT. EXE即 可安装VRML嵌入程序。通过VRML嵌入程序,可设置以下辅助工 具:Anchor:可将某一实体作为热点,当被点击时,取出网上所指 定的文件。若为VRML场景文件,则该场景被下载显示

9、。若为其他 类型文件,由浏览器决定如何处理;TouchSensor:对从指定设备的输入产生相应的事件,这些事 件表示用户是否指向特定几何体,同时也表示用户何时何处按下 定位设备的按钮;ProxSensor:接近感知器,指定当用户进入、离开或在立方体 的'区域内移动时产生的事件;TimeSensor:在时间变化是发出事件,可用来控制动画,也可 用于某一时刻进行某项活动,或于某一时间间隔中产生事件;Navlnfo:描述有关观察者和观察模式的物理特性;Background:设定场景的背景;Fog:设置雾化的效果;第1页共1页Sound:设定声音片段的有效范围,以产生随距离改变的音响 效果;B

10、illboard:是某一对象随用户一起旋转,以使之始终面向用 户;L0D:允许浏览器在物体表示的不同层次细节间自动切换;Inline:可在文件中引入外部文件的场景,避免重复制作。通过以上辅助工具,就可制作出虚拟城市场景及其交互和查 询功能。2. 3.若干开发技巧介绍2. 3. 1减少文件大小的方法(1) 使用实例:对于在场景中多次使用的对象,可在该对象 首次使用时用DEF给物体命名,以后仅需通过名字即可引用该物 体。(2) 使用原型:原型物体是指那些使用频繁且改动不大的物 体。使用它可减少文件的大小。由于使用了 DEF/USE方法,物体 一旦定义,只要指定发生变化的公共接口即可。另外,原型显示

11、 出场景层次中哪一部分可修改,浏览器可自由地优化那些不修改 的部分。(3) 压缩文件:在发布文件前,使用gzipX具压缩VRML文 件和相关的文件,大约可是文件减小10100倍。2. 3.2提髙渲染速度的技巧(1) 简化场景:简化场景有以下方法:第1页共1页减少多边形的数目,这可极大地提高执行的性能;使用纹理代替多边形造型,既可美化场景又可提高性能;使用灰度图的纹理;尽量少用光源,这将有效地提高渲染的速度;使用布告板节点,此节点允许在场景中使用二维图象来模 拟三维造型并旋转,从而始终面对观察者。此法既减小了文件又 不影响真实效果,可用来制作树木、电线杆、路牌、消防栓等辅 助性对象;(2) 场景

12、分割:将大的场景分为多个相对独立的小场景,通过 Anchor节点为场景中逻辑上分离的部分建立连接关系;(3) 自适应LOD节点:若在LOD的range域中未明确指定具体 值,浏览器会在给定时刻决定哪一层物体需要显示。该节点允许 根据硬件平台的能力调整场景的细节程度。在建立一条街道时,由于街道两边有许多精细的建筑物,要对它们进行实时渲染是不 可能的,但又不能不可见,仅需让用户能以一定的速度前进即 可。在此,可为每个建筑物建立两个LOD节点,一个是没有明确 范围的外部LOD,另一个是具有near和far范围的内部LOD节 点。内部节点能按建筑物与摄像机的距离调整层次,外部”自适应 LOD “节点允许浏览器调整必要的多个建筑物以赶上场景的动态变 化。(4) 碰撞检测要花费大量的处理时间,为提高对复杂物体的 碰撞检测速度,可在Collision节点的proxy (替身)域指定某一第1页共1页 更为简单的几何体作为该形体的替身,它与被替代的原形体占用 大致相同的空间。这样,可大大减少检测时间。3.结束语以上 介绍了虚拟城市的基本原理和制作技巧,对于进行其他领域的虚 拟现实应用制作同样有效,仅为场景中实体的不同。用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论