虚拟城市开发(精品).docx

上传人:安*** 文档编号:17887562 上传时间:2022-05-26 格式:DOCX 页数:9 大小:20.14KB
返回 下载 相关 举报
虚拟城市开发(精品).docx_第1页
第1页 / 共9页
虚拟城市开发(精品).docx_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《虚拟城市开发(精品).docx》由会员分享,可在线阅读,更多相关《虚拟城市开发(精品).docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、虚拟城市开发长期以来,城市规划人员的一个重要的工作就是进行各种设计或规划图的绘制,但是这些图纸并不能给人们提供一个直观的、富有真实感的场景。后来,人们固然也使用纸板或木料来制作三维模型,以实现城市景观的三维可视化。但其制作的工作量宏大、费用昂贵、须具备较高的制作技巧,而且仅能从外围观看,无法进入,修改也很困难。鉴于以上原因,在计算机上建立三维虚拟城市成为必然。虚拟城市的建立能够全方位地、直观地给人们提供有关城市的各种具有真实感的场景信息,并能够以第一人称的身份进入城市,感遭到与实地观察类似的真实感。虚拟城市的各种模型易于修改,而且能够实现城市信息的查询与分析功能。这些都是传统的方法所无法比较的

2、。本文用制作实例的方式讨论了虚拟城市的开发技术。1虚拟城市开发的基本原理要建立虚拟城市,首先要建立三维城市模型。三维城市空间中的典型实体对象一般具有下面几种:城市中的各种建筑物、街道、绿地、公共场所、城市地形、树木等。除此以外,还有一些辅助性的设施,如消防栓、变电站、喷泉、公园的长椅等。这些模型的制作能够采用编程的方法或者现有的三维模型制作软件来完成。所谓编程的方法是在程序中利用三维空间中的坐标点和图形绘制函数来实现模型的建立,由于城市模型的造型特别复杂,因此很难确定模型的详细几何数据,此方法多用来制作地形模型,对于其他模型的制作则很少采用。制作城市模型的最好的方法是使用现有的成熟的三维设计软

3、件,如:3dsmax、truespace等。虚拟城市除了能实现城市信息的三维可视化外,其另一个重要的功能就是能实现城市专题信息的查询功能,甚至实现一定的分析功能。能够将虚拟城市定义为下面公式:虚拟城市=三维城市模型+专题信息+查询功能+分析功能要实现一个虚拟城市系统可考虑下面两种方案:一种方案是利用高级语言和三维图形开发库的方法,常用的开发语言是c+,常用的图形开发库是opengl3d或者directx3d。此方法的特点是开发的灵敏性强、能实现功能复杂的应用系统。其缺点是开发者须熟练把握编程技术,并且具备较高的计算机图形学知识。另外,还要学习opengl3d或者directx3d的复杂开发技术

4、。此方案的实现难度大,一般用户根本无法胜任。其实现的应用系统也很难知足网上使用的要求。第二种方案是使用专用的三维虚拟开发工具,目前广泛使用的是vrml语言。vrml虚拟现实造型语言是一种描绘交互式三维世界和对象的文件格式。vrml允许描绘对象并把对象组合到虚拟场景中,能够实现仿真系统,可模拟动画、具有动力学特性的物体。vrml能构造一个全交互的世界,其中的对象能对外部事件做出响应,并可在其中任意穿行。另外,其重要特性是支持虚拟场景的网上,并可实现多用户的实时介入。vrml比高级语言容易把握,并且无须再去了解opengl3d或者directx3d之类的三维图形开发库,这对于普通用户来讲无疑是一个

5、福音。若配以java程序的支持,可以实现功能较强大的系统。综合以上两种方法,对于功能不太复杂的应用,采用后一种方法较为适宜。下面我们将就后一种方案具体介绍虚拟城市开发的技术细节。2虚拟城市的开发技术21三维城市模型的建立虚拟场景的建立和建筑cad中的场景的建立有着很大的区别,它首先强调的是模型的简单化,这是由虚拟现实的实时性要求决定的。在响应速度和场景的真实性发生冲突时,应牺牲一定的真实性,只要能在视觉上到达基本真实即可。因而,常用一些简单的框架来代替复杂模型,但为了保证一定的真实性,可采用贴图的方式来弥补视觉上的缺乏。贴图有下面两种制作方法:一种是使用绘画软件进行手工绘制、另一种是对建筑物的

6、各个观察面进行拍照,然后用扫描仪扫描成相关贴图材质。第一种方法的颜色可限定在256色内,其压缩的比例较大,贴图文件较小,生成的场景文件也较小,合适网上传递和实时性的要求。后一种方法视觉效果好,但文件的压缩比例较小,贴图文件较大,生成的场景大,在网上传递和实时性方面不如前一种方法好。无论用哪一种方法都需考虑贴图的分辨率和尺寸,为了便于下载和渲染,在质量和大小允许的情况下,一幅贴图限为320*240或240*320像素、分辨率为72dpi,用jpeg压缩采用最高压缩比后约为20k字节。根据以上所述的贴图制作方法,虚拟场景中的对象模型可分为下面几类:(a)由简单几何体组成的简单模型:该类模型常用作远

7、处建筑物的替身,在lod方法中采用;(b)赋予手绘贴图的模型;(c)赋予照片材质的模型;(d)赋予手绘和照片混合材质的模型;(e)具有全部细节的精致模型;21虚拟城市交互查询功能的建立为虚拟城市模型参加交互和查询功能可采用两种方法:通过编程参加相应的交互和查询功能、利用vrml的辅助工具来完成交互和查询功能的参加。后一种方法比拟合适普通的用户。kinetix制作了特殊的vrml输出嵌入程序,能够输出场景,包括几何、材质、动画制作等,嵌入程序可以制作特殊的vrml辅助工具来规定场景的交互元素。运行vrml嵌入程序vrmlout.exe即可安装vrml嵌入程序。通过vrml嵌入程序,可设置下面辅助

8、工具:anchor:可将某一实体作为热门,当被点击时,取出网上所指定的文件。若为vrml场景文件,则该场景被下载显示。若为其他类型文件,由阅读器决定怎样处理;touchsensor:对从指定设备的输入产生相应的事件,这些事件表示用户能否指向特定几何体,同时也表示用户何时何处按下定位设备的按钮;proxsensor:接近感悟器,指定当用户进入、离开或在立方体的区域内移动时产生的事件;timesensor:在时间变化是发出事件,可用来控制动画,可以用于某一时刻进行某项活动,或于某一时间间隔中产生事件;navinfo:描绘有关观察者和观察形式的物理特性;background:设定场景的背景;fog:

9、设置雾化的效果;sound:设定声音片段的有效范围,以产生随距离改变的音响效果;billboard:是某一对象随用户一起旋转,以使之始终面向用户;lod:允许阅读器在物体表示的不同层次细节间自动切换;inline:可在文件中引入外部文件的场景,避免重复制作。通过以上辅助工具,就可制作出虚拟城市场景及其交互和查询功能。23若干开发技巧介绍2.3.1减少文件大小的方法(1)使用实例:对于在场景中屡次使用的对象,可在该对象初次使用时用def给物体命名,以后仅需通过名字即可引用该物体。(2)使用原型:原型物体是指那些使用频繁且改动不大的物体。使用它可减少文件的大小。由于使用了def/use方法,物体一

10、旦定义,只要指定发生变化的公共接口即可。另外,原型显示出场景层次中哪一部分可修改,阅读器可自由地优化那些不修改的部分。(3)压缩文件:在文件前,使用gzip工具压缩vrml文件和相关的文件,大约可是文件减小10100倍。2.3.2提高渲染速度的技巧(1)简化场景:简化场景有下面方法:减少多边形的数目,这可极大地提高执行的性能;使用纹理代替多边形造型,既可美化场景又可提高性能;使用灰度图的纹理;尽量少用光源,这将有效地提高渲染的速度;使用布告板节点,此节点允许在场景中使用二维图象来模拟三维造型并旋转,进而始终面对观察者。此法既减小了文件又不影响真实效果,可用来制作树木、电线杆、路牌、消防栓等辅助

11、性对象;(2)场景分割:将大的场景分为多个相对独立的小场景,通过anchor节点为场景中逻辑上分离的部分建立连接关系;(3)自适应lod节点:若在lod的range域中未明确指定详细值,阅读器会在给定时刻决定哪一层物体需要显示。该节点允许根据硬件平台的能力调整场景的细节程度。在建立一条街道时,由于街道两边有很多精细的建筑物,要对它们进行实时渲染是不可能的,但又不能不可见,仅需让用户能以一定的速度前进即可。在此,可为每个建筑物建立两个lod节点,一个是没有明确范围的外部lod,另一个是具有near和far范围的内部lod节点。内部节点能按建筑物与摄像机的距离调整层次,外部自适应lod节点允许阅读

12、器调整必要的多个建筑物以赶上场景的动态变化。(4)碰撞检测要花费大量的处理时间,为提高对复杂物体的碰撞检测速度,可在collision节点的proxy替身域指定某一更为简单的几何体作为该形体的替身,它与被替代的原形体占用大致一样的空间。这样,可大大减少检测时间。3结束语以上介绍了虚拟城市的基本原理和制作技巧,对于进行其他领域的虚拟现实应用制作同样有效,仅为场景中实体的不同。用vrml制作虚拟现实入门容易,但要到达很高的视觉效果和运行速度并非易事,须对vrml和图形学进行深化了解才可胜任。我们用它制作了虚拟校园,其运行效果较为满意。能够相信,随着vrml的不断发展,我们将可用它制作出功能愈加强大的虚拟现实应用。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 升学试题

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁