基于三维动画的虚拟场景实现——动态实体的运动控制和特效毕业设计论文.doc
-
资源ID:3939605
资源大小:677.50KB
全文页数:50页
- 资源格式: DOC
下载积分:8金币
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
基于三维动画的虚拟场景实现——动态实体的运动控制和特效毕业设计论文.doc
本科毕业设计论文题 目基于三维动画的虚拟场景实现动态实体的运动控制和特效毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 设计论文 毕业 任务书一、题目基于三维动画的虚拟场景实现动态实体的运动控制和特效二、指导思想和目的要求综合运用所学的基础理论知识和专业技术知识,研究学习虚拟仿真技术,通过学习书本知识和网络资源,分析并解决项目中遇到的各种问题,通过对基于三维动画的虚拟场景实现这个项目的开发,学习和掌握如何利用OpenGL进行三维仿真。三、主要技术指标1. 研究基于OpenGL的软件开发环境,实现飞机飞行及导弹飞行实时动画。2. 研究OpenGL的纹理映射技术,利用该技术实现虚拟场景中场景和物体的贴图。3. 研究基于粒子系统的特殊效果从而对粒子系统进行参数化设计和实时绘制。四、进度和要求知识准备阶段 11月26日2月1日 了解国内外多方面资料。实验与设计阶段 2月2日 3月1日 开始进行编程实验并考虑设计问题。完成设计阶段 3月2日4月7日 完成系统的设计。编码阶段 4月8日5月7日 完成相应的编码并开始准备测试。测试阶段 5月8日5月30日 进行系统的测试。五、主要参考书及参考资料【1】 曾建超,俞志和. 虚拟现实的技术及其应用M. 北京:清华大学出版社,1996. 5-88.【2】 汪成为,高文,王行仁. 虚拟现实技术的理论、实现及其应用M. 北京: 清华大学出版社,1996. 25-108.【3】 康风举. 现代仿真技术与应用M. 北京:国防工业出版社,2001. 200-210.【4】 Whitechen. 虚拟现实技术的研究现状R. 编号5413, 北京: BBS水木清华站, 2003.【5】 汪成为. 灵境技术的理论、实现与应用M. 北京:清华大学出版社,1996. 100-120.【6】 于维平,朱一凡,等. 多媒体仿真研究与发展J. 系统仿真学报,1997, 9: 10-20.【7】 王乘,周均清,等. Creator可视化仿真建模技术M. 武汉: 华中科技大学出版社,2005. 6-8.【8】 武裕国,杜莹. 利用C+模板设计可扩展的粒子系统A. 第四届全国虚拟现实与可视化学术会义论文集C. 大连:大连海事大学出版社,2004. 637-638.【9】 Michael E Goss. Motion Simulation-A Real Time Particle System for Display of Ship WaresJ .IEEE Computer Graphics & Applications, 1990,1: 30-35P.【10】 Unbescheiden M, Trembilski .A Cloud EnvironmentsJ.IEEE Visualization Proceedings Simulation, 1998, 1: 98-104P.【11】 Szeliski Richard,Tonnesen David. Surface modeling with oriented particle systemsJ.Computer Graphics, 1992, 26(4): 185-194P.学生 _ 指导教师 _ 系主任 _目 录摘 要IABSTRACTII第1章 绪论11.1虚拟现实技术的概况11.1.1虚拟现实的概念及起源11.1.2虚拟现实的特点11.1.3虚拟现实技术的应用41.2虚拟场景仿真技术的发展和国内外研究现状41.2.1虚拟场景仿真技术的发展41.2.2虚拟场景仿真技术的国内外研究现状51.3问题的提出6第2章 虚拟场景仿真软件的系统设计思想82.1虚拟场景仿真软件系统的整体结构82.1.1模型系统82.1.2坐标系统92.1.3背景系统112.1.4特效系统112.1.5控制系统112.2虚拟场景仿真软件的设计流程122.3仿真软件实施方案论证132.3.1仿真软件开发环境的选择132.3.2采取的研究方法和技术路线142.3.3三维物体几何建模技术和工具的选择152.4虚拟场景仿真软件的总体概述162.4.1虚拟场景仿真软件的两种工作方式162.4.2虚拟场景仿真软件的表现方法172.5 本章小结18第3章 基于粒子系统的模糊景物的模拟193.1粒子系统的基本原理193.2粒子系统随机范围的设置203.3 粒子系统的设计213.4飞机尾焰仿真223.4.1飞机尾焰的粒子系统模型223.4.2用OpenGL表现尾焰特效243.4.3仿真结果及结论25第4章 系统实现及调试274.1软件的使用界面274.2软件的运行环境284.3软件调试28第5章 总结与展望335.1本文的主要工作总结335.2后续工作展望34致 谢35参考文献36毕业设计小结37附录38摘 要虚拟现实技术是当前计算机领域中的一个重要的分支,它刚兴起就表现出极其迅猛的发展势头,在工业设计与制造、数字化城市、虚拟建筑、教育与培训、展览及娱乐等方面都将发挥重要的作用。虚拟现实技术中场景(虚拟场景)的建模始终是研究的核心问题,也是需要首先解决的问题,现在世界范围内,对于这个问题的解决主要有两种方法:基于图形(几何)的建模与绘制方法(GBMR)和基于图像的建模与绘制方法(IBMR),此两种方法各有其优缺点。本论文紧紧围绕当今热门的虚拟场景建模技术进行了研究。重点研究了基于图形和基于图像的建模和绘制技术,以及场景的取景变换、光照、消隐、和纹理映射等真实感增强技术。本文主要研究工作及所取得的研究成果如下:1. 基于OpenGL的软件开发环境,实现了一个飞机飞行及其导弹飞行实时动画,实时显示飞行器的运动轨迹和飞行场面,较好的反映了仿真的效果。2. 设计了基于粒子系统的特殊效果,把粒子系统的行为模型和几何模型统一起来,对粒子系统的属性及随机性作了理论性的分析研究,并对粒子系统进行了参数化设计和实时绘制。3. 对OpenGL的纹理映射技术及原理进行阐述,并摸索出一套合理的纹理映射方法,在使用过程中实现了对纹理的管理。利用纹理映射技术实现了虚拟场景中场景和物体的贴图。关键词 虚拟场景图, OpenGL纹理映射, 粒子系统, GBMR, IBMRABSTRACTThe Virtual Reality (VR) technology is a very important branch among computer science,it had expressed rapid increase growing tendency as soon as came forth,and it would play an important role in industry & manufacture, digital city,virtual building,training & education,exhibits and entertainment and so on. Modeling and rendering for virtual scene (Virtual Environment) is always the kernel problem in VR, and the problem must be solved at first. Nowadays, there are two methods to solve the problem: Graphics (Geometry) Based Modeling and Rendering (GBMR),Image Based Modeling and Rendering (IBMR),the existing two kinds of methods are provided with their own advantage and disadvantage.This paper had researched the fashion modeling technology of VE. My research focus on GBMR & IBMR,VE realism increasing technology as coordinate transforming,lighting & shading,hidden surface removal,and texture mapping etc. Its main research work and results are as follows:1. The virtual scene simulation platform is a software development environment based on OpenGL; it shows the plane fly and the missile tracing. 2. Detailed analyzed the attribute and the realized process of particle system,had made theoretically the analysis to the randomness of the particle system,unified the particle system behavior model and the geometry model, and had realized the dynamic environment (rain, snow, mist and dust and so on)modeling by using the particle granule system.3. Demonstrated the technology and theory of the texture mapping, established a reasonable method of texture mapping,and realized the management of texture in use. Utilized the technology to realize the texture mapping of the scene and object in the virtual scene.Key words Virtual Scene graph, OpenGL Texture mapping, Particle system, GBMR, IBMR第1章 绪论1.1虚拟现实技术的概况1.1.1虚拟现实的概念及起源虚拟现实(Virtual Reality,简称VR),是一种基于可计算信息的沉浸式交互环境,具体地说,就是采用以计算机技术为核心的现代高科技生成逼真的视、听、触觉一体化的特定范围的虚拟环境,用户借助必要的设备以自然的方式与虚拟环境中的对象进行交互作用、相互影响,从而产生亲临等同真实环境的感受和体验。VR思想的起源可追溯到1965年Ivan Sutherland在IFIP会议上的<<终极的显示>>报告,而Virtual Reality一词是80年代初美国VPL公司的创建人之一Jaron Lanier提出来的。VR系统在若干领域的成功应用,导致了它在90年代的兴起。虚拟现实是高度发展的计算机技术在各种领域的应用过程中的结晶和反映,不仅包括图形学、图像处理、模式识别、网络技术、并行处理技术、人工智能等高性能计算技术,而且涉及数学、物理、通信,甚至与气象、地理、美学、心理学和社会学等相关1。1.1.2虚拟现实的特点虚拟现实技术是一种高度逼真地模拟人在自然环境中视、听、动等行为的人机界面技术,是一种可以创建和体验虚拟世界的计算机系统。从概念上讲,虚拟现实是一种由计算机和电子技术创造的新世界,是一个看似真实的模拟环境,通过多种传感设备,用户可根据自身的感觉,使用人的自然技能对虚拟世界中的物体进行考察和操作,参与其中的事件;同时提供视、听、触等直观而又自然的实时感知,并使参与者“沉浸”于模拟环境中。脱离不同的应用背景,VR技术是把抽象、复杂的计算机数据空间表示为直观的、用户熟悉的事物。其技术实质在于提供了一种高级的人与计算机交互的接口。VR具有三个最突出的特征,即三“I”,特征可以由此来区分相邻技术,如多媒体技术、科学计算可视化技术。这三个特征是交互性(Interaction)、想象性(Imagination)和沉浸感(Immersion)。如图1.1表示出了三者的关系。 图1.1 虚拟现实的三角形表示沉浸感是指用户作为主角存在于虚拟环境中的真实程度,要求计算机所创建的三维虚拟环境能使“参与者”得到全身心置于该环境之中的体验。理想的虚拟环境应该达到使用户难以分辨真假的程度(例如可视场景应随着视点的变化而变化),甚至超越真实,如实现比现实更逼真的照明和音响效果等。交互性是指用户对虚拟环境内的物体的可操作程度和从环境得到反馈的自然程度(包括实时性),使参与者通过使用专用设备实现用人类自然技能对虚拟环境中的实体进行交互考察与操作。因此,VR技术将从根本上改变人与计算机系统的交互操作方式。例如,用户可以用手直接抓取虚拟环境中的物体,这时手有触摸感,并可以感觉物体的重量,场景中被抓的物体也立刻随着手的移动而移动。想象力是指用户沉浸在多维信息空间中,依靠自己的感知和认知能力全方位地获取知识,发挥主观能动性,寻求解答,形成新的概念。由于VR并不只是一种媒介或一个高级终端用户界面,它的应用能解决在工程、医学、军事等方面的问题,这些应用是VR与设计者并行操作,为发挥它们的创造性而设计的。这极大地依赖于人类的想象力。VR的最主要的技术特征是沉浸感,即投入感。VR的追求目标是力图使用户在计算机所创建的三维虚拟环境中处于一种全身心投入的感觉状态,有身临其境的感觉,即所谓“沉浸感”。在该环境中的一切看上去是真的、听起来是真的、动起来也是真的,一切感觉逼真。用户觉得自己是虚拟环境中的一个部分,而不是旁观者。他感到被虚拟景物所包围,可以在这一环境中自由走动,与物体相互作用,如同在已有经验的现实世界中一样。导致“沉浸感”,其原因是用户对计算机环境的虚拟物体产生了类似于对现实物体的存在意识或幻觉.为此,必须具备三种基本的技术要素:1. 图像(Imagery)虚拟物体要有三维结构的显示,其中包括主要由以双目视差、运动视差提供的深度信息,图像显示要有足够大的视场,造成在图像世界内观察;而不是窗口观察的感觉;显示画面符合观察者当前的视点,能跟随视线变化;物体图像能得到不同层次的细节审视。2. 交互(Interaction)虚拟物体与用户间的交互是三维的,用户是交互的主体:用户能觉得自己是在虚拟环境中参与对物体的控制。交互是多感知的,用户可以使用与现实生活不同的方式(例如手语)与虚拟物体交互。3. 行为(Behavior)虚拟物体在独自活动时、或相互作用时、或在与用户的交互作用中,其动态都要有一定的表现,这些表现或者服从于自然规律,或者遵循设计者想象的规律,这也称之为VR系统的自主性(autonomy)。自主性是指虚拟环境中物体依据物理定律动作的程度。如当受到力的推动时,物体会向力的方向移动、翻倒或从桌面落到地面等等。上述技术要素之间是相互关联的,它们对于用户的“存在”意识的影响,进而导致“沉浸感”的过程实际上是基于人的认知机理,因此可以说心理学是虚拟现实的物理学。VR的“沉浸感”特征使它与一般的交互式三维计算机图形有较大的不同:用户可以沉浸于数据空间,可以从数据空间向外观察,从而可以使用户能以更自然、更直接的方式与数据交互。利用沉浸功能,使用户暂时与现实环境隔离,投入到虚拟环境中,从而能更真实地注视数据。VR界面也可以给技术人员及创作人员提供真实数据,以便正确地创建虚拟环境,这样有助于用户更快、更全面地分析理解数据。因此,VR技术从根本上改变了人与计算机系统的交互操作方式。1.1.3虚拟现实技术的应用VR【2】可以应用在商业上,创建虚拟商店、虚拟房地产漫游、建筑物可视化、虚拟旅游景点漫游、虚拟博物馆等。例如日本就出现了可以帮助顾客买房、购房的虚拟现实服务,在日本松下公司的“虚拟厨房”里,顾客可以把自己想买的设备和餐具安置在厨房的相应地方,看看是否合适,虽然认识到这一切都是虚拟的,但还是会被它的那逼真的效果所迷惑,一不小心就会全身心的投入进去,并且最终买走了自己称心的商品。虚拟现实技术为人们提供了一种理想的教学手段,目前己被广泛应用在军事教学、体育训练和医学实习中,对于第一次走上手术台的医生来说,通过虚拟现实技术的帮助,他们可以在显示器上一遍一遍的模拟手术,移动人体内的器官,寻找最佳手术方案,这种模拟器显示的人体结构可以达到乱真的程度。在航天领域,VR技术也大有用武之地。例如,失重是航天技术中的一个必须克服的困难,因为在失重情况下物体的运动难以预测,因此为了在太空中进行精确的操作,需要进行长时间的仿真训练,以适应失重时操作的特点。VR技术就是实现该操作的合适的选择。再如,美国宇航局Ames研究中心的科学家将探索的火星数据进行处理后,得到了火星的虚拟现实图像,研究人员可以看到全方位的火星表面景象:高山、平川、河流、以及纵横的沟壑里被风化的斑斑的巨石,都显得十分清晰逼真,而且不论你从哪个方向看这些图,视野中的景象都会随着你的头的转动而改变,就好像真的置身于火星上漫游。1.2虚拟场景仿真技术的发展和国内外研究现状1.2.1虚拟场景仿真技术的发展随着计算机与计算机图形学技术的发展,仿真从最早的数字仿真,发展到了今天的可视化仿真、多媒体仿真与虚拟现实仿真。虚拟现实技术是在综合计算机图形技术、计算机仿真技术、传感技术、显示技术等多种学科技术的基础上发展起来的,是九十年代计算机领域的最新技术之一。它以仿真的形式给用户创造一个反映实体对象变化与相互作用的三维图形环境,通过头盔显示器、数据手套等辅助传感设备,使人可以“进入”这种虚拟的环境直接观察事物的内在变化,并与事物发生相互作用,给人一种“身临其境”的真实感。可视化仿真技术的目标是把由数值计算或实验获得的大量数据按照其自身的物理背景进行有机地结合,用图像的方式来展示数据所表现的内容和相互关系,便于把握过程的整体演进,发现其内在规律,丰富科学研究的途径,缩短研究周期。可视化仿真就是将数据结果转换为图形或动画形式,使仿真结果可视化并具有直观性【3】。多媒体仿真技术是指计算机综合处理各种媒体信息,包括文字、图形、动画、图像、声音、视频等,在各种信息间建立逻辑连接,并集成一个有交互功能的多媒体系统。多媒体的本质不仅是信息的集成,而且也是设备和软件的集成,并通过逻辑连接形成一个有机整体,又可实现交互控制,所以说数字化、集成性和交互性是多媒体的核心【4】。虚拟现实技术是指计算机产生的三维交互环境,在使用中,用户是“投入”到这个环境中去,让用户在人工合成的环境中获得“进入角色”的休验。虚拟现实技术的主要内容是:实时三维图形生成技术、多传感器交互技术,以及高分辨显示技术。在“需求牵引”和“技术推动”下,近年来虚拟现实已经取得的一些技术成果,并已集成了一些很有实用前景的应用系统,而且智能虚拟世界也在不断地发展。1.2.2虚拟场景仿真技术的国内外研究现状美国在该领域的基础研究主要集中在感知、用户界面、后台软件和硬件四个方面。美国宇航局(NASA)研究的重点放在对空间站操纵的实时仿真上,他们大量运用了面向座舱的飞行模拟技术。华盛顿大学华盛顿技术中心的人机界面技术实验室(HIT Lab)进行感觉、知觉、认知和运动控制能力的研究。Dave Sims等人研制出虚拟现实撤退模型来观看系统如何运作。乔治梅森大学研制出一套在动态虚拟环境中的流体实时仿真系统。美国Wright-Patterson空军基地的“3D图像和计算机图形实验室”是在SGI4D/400工作站上建立了空间卫星的虚拟环境来仿真近地空间和描述3D图形卫星模型环绕地球轨道的运行状态,使得仿真者对仿真对象信息的把握更加充分【5】。德国Damastadt的Fraunhofe;计算机图形学研究所开发一种名为“虚拟设计”的组合工具,可使得图像伴随声音实时显示。德国国家数学与计算机研究中心(GMD)专门成立了一个部门,研究虚拟现实表演,冲突检测,装订在箱子中的物体的移动,高速变换以及运动控制。英国的Bristol有限公司发现虚拟现实应用的焦点应该集中在软件与整体综合技术上,该公司将VIZ分成三大类别:实际环境检测、虚拟环境控制、虚拟环境显示。日本是当前虚拟场景仿真技术的研究与开发领先的国家之一,主要致力于建立大规模虚拟现实知识库的研究。另外在虚拟现实的游戏方面的研究也做了很多工作。东京技术学院精密和智能实验室研究了一个用于建立三维模型的人性化界面。东京大学的广獭研究室重点研究虚拟现实的可视化问题,现在己经有了4项成果:一个类似CAVE的系统、用HMD在建筑群中漫游、人体测量和模型随动、飞行仿真器。我国和一些发达国家相比在该领域还有一定的差距。我国的九五规划、国家自然科学基金会、国家高技术研究发展计划等都把虚拟环境仿真列入了研究项目。北京航空航天大学计算机系是国内最早进行虚拟现实研究、最有权威的单位之一,他们着重研究了虚拟环境中物体物理特性的表示与处理;在虚拟现实中的视觉接口方面开发出了部分硬件,并提出了有关算法及实现方法;实现了分布式虚拟环境网络设计,建立了网上虚拟现实研究论坛,可以提供实时三维动态数据库,提供虚拟现实演示环境,提供用于飞行员训练的虚拟现实系统,提供开发虚拟现实应用系统的开发平台,并将要实现与有关单位的远程连接。浙江大学CAD&CG国家重点实验室开发出了一套桌面型虚拟建筑环境实时漫游系统,该系统采用了层面迭加的绘制技术和预消隐技术,实现了立体视觉,同时还提供了方便的交互工具,使整个系统的实时性和画面的真实感都达到了较高的水平。中视典数字科技有限公司从事虚拟现实与仿真、多媒体技术、三维动画研究与开发也都取的不错的效果,成功开发出拥有自主知识产权的虚拟场景浏览器软件VR-Platform。1.3问题的提出当前,虚拟现实(VR)技术已在欧美、台湾等地区广泛使用,并己广泛应用于城市规划、旅游、产品、房地产、服装展示、展览等领域。但在国内规划领域目前却应用不多,这是因为:1.从应用来说涉及范田太广,三维数据模型需求量太大,这就使得三维建模与数据处理的工作量太大。2.当前所生成的模型在不同环境下很难作到与周边环境的融合,这就大大降低了模型的三维表现效果。3.当前市场的三维软件主要擅长对三维模型的建立,而没有将各种三维建模与虚拟场景仿真等高新技术手段结合在一起的直观展示的软件。基于以上考虑,提出了研究“基于OpenGL的虚拟场景仿真平台”的开发。研究如何利用当前最新的三维建模与虚拟场景仿真技术,实现虚拟环境的管理、维护和虚拟场景的逼真显示等功能,提供实现对对象的管理,如真实感图形显示、三维场景管理、声音管理、地形调度等,实现对对象的交互以及实时对象维护等虚拟场景仿真平台程序所需的多项功能,以适应对不同人群的应用需求。本文研究的是一个虚拟现实与计算机图形学技术结合的飞机飞行动画。文中根据一定的飞机运动规律模拟特定飞行器的运动,可以进行手动控制飞机的飞行,三维场景绘制主要用来显示飞行器飞行的画面,根据计算机图形学的一些算法实时绘制飞行场面。当然,一个高性能、逼真的实时三维动画生成系统需要处理大量计算,这就需要使用高速计算机,或者有多台计算机和专用硬件运算电路等构成的并行处理系统。考虑到目前的投资能力和技术可行性,日前系统的硬件平台为AMD Athlon 1.8GHz,内存DDR1G,显示器为AcerAF706.软件平台是网络功能强大的Windows XP,编程环境可视化的面向对象的编程语言Microsoft Visual C+ 6.0和强大的三维软件包OpenGL 1.2。第2章 虚拟场景仿真软件的系统设计思想2.1虚拟场景仿真软件系统的整体结构本文设计的虚拟场景仿真软件主要包括:模型系统、坐标系统、背景系统、特效系统和控制系统等。每个系统又由一个或多个功能模块组成,整体结构如图2.1所示。虚虚拟场景仿真软件坐标系统背景系统特效系统控制系统机场和跑道天空和太阳机体坐标系视点坐标系雾化效果光照效果键盘控制地面坐标系模型系统飞机三维模型 图2.1 虚拟场景仿真软件的整体结构2.1.1模型系统进行飞行仿真首先是要绘制一个外型精细的飞机模型,而绘制飞机模型的方法很多,即可以利用OpenGL图形库中的点、线、多边形结合的方法来绘制,也可以采用一些专业的三维建模软件进行绘制。由于使用OpenGL程序构建飞机模型外观上比较粗糙,建模时的直观性较差,建模后必须通过程序的运行才能看到效果,这样在建模的过程中不得不反复的运行程序来看模型图像,将会有许多时间浪费在反复运行程序上,而且修改模型时的效率较低。同时在OpenGL中并没有提供建模的高级命令,因此建模过程比较繁琐,编程量较大。而利用一些专业的三维建模软件建模时不仅不需要编程而且可以很直观的构造模型,模型的外观也更为精细。考虑各种软件的实际应用领域及各自的优缺点,再结合本课题的设计要求,最终决定采用专业建模软件3DS MAX来建立虚拟场景仿真系统的飞机模型。飞机模型是虚拟场景仿真系统中的主体,它绘制的越精细,外形和真正的飞机实体越接近,就越能给人以更加逼真的视觉效果。因此建立飞机模型是进行虚拟场景仿真软件设计的第一步,也是构成飞行仿真系统的必不可少的一部份。2.1.2坐标系统虚拟场景仿真软件中,坐标系统是场景绘制和管理的基础。虚拟场景仿真系统程序中包含三种坐标系:地面坐标系、机体坐标系和视点坐标系。地面坐标系主要用于绘制地形时确定大地的位置坐标,它是与地球固连的坐标系。除此之外,在描述飞机的质心位置和姿态角以及速度时,一般取该坐标系为参考标准。地面坐标系原点A固定在地面的某点,铅垂轴AYd向上为正,横轴AXd与纵轴AZd为水平面内互相垂直的两轴。本文中取纵轴-AZd为飞机的飞行航线,用AZd = L表示航程,AXd = Z表示侧向偏离(向右为正)、AYd = H表示飞行高度,地面坐标系如图2.2所示。 图2-2 地面坐标系机体坐标系主要用来描述飞机飞行姿态角以及实现飞机的跟踪视角。机体坐标系是与飞机固连的坐标系,原点在飞机的重心上,纵轴OZt在飞机对称平面内,平行于翼弦,指向机头为正;立轴OYt也在飞机对称平面内并垂直于OZt,指向座舱盖为正;横轴OXt与YOZ平面垂直,指向右翼为正。本文将飞机原点取在飞机质心,而各轴平行于地面坐标系的三个轴,这种机体坐标系为飞机牵连地面坐标系,如图2.3所示。 图2.3 机体坐标系视点坐标系即摄像机坐标系,z轴指向镜头方向,x轴和Y轴分别为摄像机的水平和垂直方向。本文采用的是飞机跟踪视角,即视点坐标系与机体坐标系的两坐标原点固联,即两原点始终保持一段固定的距离,也即视点坐标系随机体坐标系进行移动,机体坐标系相对于视点坐标系没有位移运动,只有绕各轴的旋转运动,因此在三维图形仿真视窗中可以看见飞机飞行时的姿态变化,而地面坐标系在XOZ平面内有位移运动,仿真程序中通过飞行场景的移动来体现飞机的飞行运动。2.1.3背景系统开发虚拟场景仿真软件,除了有外形精细的飞机模型以外,环境背景的模拟也是十分重要的,环境背景的绘制不仅会给人以身临其境的感觉,使仿真软件更加逼真,而目通过背景的移动能更好的体现飞机的飞行运动。本文中的环境背景主要包括草地、山脉、机场、跑道、太阳、天空和水。它们是构成飞机飞行运动三维图形仿真软件的基本场景。设计中应用了OpenGL强大的渲染功能,如生成纹理,混合操作、纹理映射等,从而将各种环境背景高效的融合到一起,实现飞行仿真软件中环境背景的模拟。2.1.4特效系统有了飞机模型,又有了环境背景的衬托,就已经具备了虚拟场景仿真的基本条件,但是飞行仿真的效果可能还不尽人意,因为在自然界中,除了一些有表面体积的物体以外,还有一些没有固定形体而又是自然界中固有的东西,比如空气、阳光和雾。我们之所以能看到物体,能分辨出物体的形状和颜色,其实就是因为有光的存在,光照的重要性不仅仅是因为它使人可以看见物体,而且它和反光表面、颜色和各种其它的特殊视角效果一起使三维图形更加具有真实感。木文中为了更好的模拟现实世界,对虚拟场景仿真软件系统中添加了光照和雾化的特效处理,利用OpenGL中的光照函数给了维场景设置环境光、漫射光和镜面反射光,由此来模拟现实世界中的几种光照,使模型和场景的显示效果更加逼真。另外,向场景中添加雾,除了给人带来真实的雾感之外,它还可以模糊远处的物体,使它们随着观察者的靠近而逐渐的清晰起来。这样既可以减少同一时间内场景中几何物体的数目,又可以在物体进入视锥体时防止它们突然的跳入用户的视野,使模拟仿真软件的效果更加逼真。2.1.5控制系统虚拟场景仿真软件的控制系统包括键盘控制。为使仿真软件不受外界条件限制,在不具备Futaba遥控器的情况下能灵活控制,虚拟场景仿真软件也可以采用键盘来模拟控制飞机飞行的各种姿态角及速度的变化,达到模拟仿真的效果。2.2虚拟场景仿真软件的设计流程本文开发虚拟场景仿真软件,其设计流程主要包含三个步骤:第一步:首先利用专业建模软件3DS MAX来建立飞机模型。第二步:其次是将飞机模型文件格式进行转换并导入工程。虽然3DS MAX建模方便,效果逼真,但是用3DS MAX制作的动画没有交互性,无法实时控制,而OpenGL的实时控制功能强大,因此需要将3DS MAX建立的飞机模型文件进行转换,转换后将新模型文件添加到仿真程序工程中。第三步:最后利用OpenGL中的绘制及双缓存技术实现仿真。当飞机模型能正常显示时,再利用OpenGL中的强大绘制及渲染功能为飞机飞行运动三维图形仿真程序添加场景,结合雾化、灯光等特效处理,使场景显示效果更加逼真;根据飞机姿态角的变化,改变地形坐标和视点坐标,使飞机模型的飞行运动和场景的改变相结合;再利用双缓存技术(后台缓存中执行绘制指令,在前台缓存中进行图像显示)在屏幕上显示飞机飞行三维图形仿真过程。由于计算机的计算速度较快,所以可以实现显示图像的连续变化,达到平滑的动画效果。虚拟场景仿真软件的设计流程如图2.4所示。 图2.4 虚拟场景仿真软件的设计流程2.3仿真软件实施方案论证在软件平台上,整个场景仿真平台系统的操作系统已经选定为Windows XP操作系统。Windows XP操作系统是PC平台窗口环境事实上的工业标准,Windows XP操作系统所提供的标准服务有以下几种:1.提供与设备无关的I/O功能;2.高效的内存管理突破了常规内存限制,允许程序透明地存取扩充内存和扩展内存;3.支持多任务处理。下面就开发场景仿真系统的场景仿真开发工具进行阐述和选型。2.3.1仿真软件开发环境的选择仿真软件开发环境工具选定为Microsoft公司的Microsoft Visual C+ 6.0 Visual C+ 6.0编译器具有很优秀的兼容性,它不仅支持ANSI标准C,C+而且还支持微软的扩展C, C+,以及Unix的C, C+,是Windows 9X上操作最方便,功能最强大的C和C+编译平台。Visual C+ 6.0中的Microsoft基础类库(MFC)生成Windows GUI(图形用户接口)程序。MFC是Visual C+的核心,称为“应用程序框架”,它一方面封装了Windows95 API,另一方面使用称为“消息映射”的机制把Windows消息和命令传递到窗口、文档、视图以及MFC应用程序的其他对象。Visual C+ 6.0支持Win32平台(Windows 95, 98/NT4.0, 5.0)应用程序(Application)服务(Service)和控件(Control)的开发。Visual C+ 6.0还有以下特点:1.Visual C+ 集成开发环境(IDE)Visual C+ 6.0开发环境Developer Studio是由Win32环境下运行的一套集成开发工具所组成,包括文本编辑器(Text Editor)资源编辑器(Resource Editor)项目建立工具(Project Build Facilities)优化编译器(Optimizing Compiler)增量连接器(Incremental Linker)源代码浏览器(Source Code Browser)集成调试器(Integrated Debugger)等。2.使用向导(Wizard)-计算机辅助应用程序设计在Visual C+ 6.0中可以使用各种向导(Wizards). MFC类库(Microsoft Foundation Class Library)和活动模板库(Active Template Library简称ATL)来开发Windows应用程序,向导实质上是一种计算机辅助程序设计工具,用于帮助用户自动生成各种不同类型应用程序风格的基本框架。3.方便编程的集成数据库访问Visual C+ 6.0允许用户建立强有力的数据库应用程序:可以使用ODBC类(开放数据库)和高性能的32位ODBC驱动程序来访问各种数据库管理系统如Visual Foxpr