基于 OGRE 引擎的直升机
模拟器视景仿真
OGRE Engine Based Virtual Scene
of Helicopter Simulator
(申请清华大学工学硕士学位论文)
培 养 单 位 : 自动化系
学 科 : 控 制 科 学 与 工 程
研 究 生 : 胡 业 磊
指 导 教 师 : 邹 红 星 教 授
二○一一年五月
基
于
O
G
R
E
引
擎
的
直
升
机
模
拟
器
视
景
仿
真
胡
业
磊
关于学位论文使用授权的说明
本人完全了解清华大学有关保留、使用学位论文的规定,即:
清华大学拥有在著作权法规定范围内学位论文的使用权,其中包
括:(1)已获学位的研究生必须按学校规定提交学位论文,学校可
以采用影印、缩印或其他复制手段保存研究生上交的学位论文;(2)
为教学和科研目的,学校可以将公开的学位论文作为资料在图书馆、
资料室等场所供校内师生阅读,或在校园网上供校内师生浏览部分内
容。
本人保证遵守上述规定。
(保密的论文在解密后遵守此规定)
作者签名:
导师签名:
日 期:
日 期:
摘 要
摘 要
当前,以信息化和机械化为标志的军队现代化建设正在进行,军事装备水
平不断提高,作战训练手段进一步丰富。武装直升机作为一种重要的军事装备,
在局部战争和非军事领域发挥着越来越重要的作用。直升机模拟器是进行驾驶
训练和战术训练的有效平台,降低训练风险和成本,提高训练效率。在直升机
模拟器整个系统中,视景仿真系统是重要组成部分,为飞行员提供了 70% 的信
息。直升机飞行高度低、速度快,对视景系统提出较高的要求。
视景仿真是计算机三维图形技术的应用,有多种开发平台。经过在多款开
发工具上的实践和充分比较,本文选取 OGRE 图形引擎作为直升机模拟器视景
仿真的平台。根据直升机模拟器的特点,提出了基于 OGRE 引擎的视景仿真总
体结构,分析了若干关键技术并给出实现结果,开发出视景仿真软件,本文主
要工作有:
1)将双目立体图形技术应用在直升机模拟器上,实时地为用户的左右眼呈
现不同的画面,提高虚拟场景的沉浸感和逼真度。
2)对于模糊动态物体,诸如雨雪、尾迹、烟雾和爆炸,以“粒子系统”方
法建模,以粒子脚本方式呈现;用基于构造的方法在着色器单元中绘制水面形
状,以法线贴图方式生成动态细节,添加菲涅尔和 HDR 两种效果的修正,实现
较为逼真的水面。
3)利用建模软件 3D max 和插件 oFusion 实现 3D 模型创建,完成复杂虚拟
场景创建和管理,包括城市场景和野外场景;实现 OGRE 场景中的地形仿真。
4)运用优化策略渲染海量模型(森林、草坪),利用插件 PagedGeometry
实现;通过 OGRE 的 Overlay 类实现虚拟仪表的绘制和驱动;利用合成器实现夜
视和热成像效果;实现一天中不同时间段的天空效果。
5)设计了完整应的用程序框架,应用抽象工厂、观察者等设计模式,保证
框架的通用性和灵活性。并在框架的基础上开发出视景仿真软件,展示视景仿
真结果,具备多任务场景、三维音频和网络通信等作用,软件功能完善。
关键词:直升机模拟器 OGRE 引擎 视景仿真 虚拟现实
I
Abstract
Abstract
Military modernization construction is currently in progress in China. Military
equipment level is on the rise while training method is enriched. As an important
military equipment, armed helicopter plays a more and more important role in local
war and non-military arena. Helicopter simulator is an effective training equipment
which can reduce the risk, decrease cost of training, improve training efficiency.
Helicopter simulator contains several parts of which virtual scene simulation is a key
one which provides users 70% of all information. The characteristics of Low flight
height and high speed makes the scene simulation system face a big challenge. There
are several kinds of software platforms for virtual reality. As an open-source virtual
reality software platform, OGRE is popular among graphic application developers.
Based on the development practice of multiple virtual reality software, OGRE is
chose as tool for the helicopter virtual scene simulation. According to the
characteristics of helicopter simulator, this paper puts forward the general structure of
the virtual scene simulation and the main contributions are as follows:
1) Virtual 3D model creation by 3D modeling software with the oFusion
plug-in. Terrain simulation based on OGRE engine.
2) The application of the technique of particle systems for modeling a class of
fuzzy objects and water wave simulation based on shader language.
3) Optimal rendering strategies for a huge quantity of 3D models through a
plug-in called PagedGeometry. Virtual instruments created by professional picture
process software and rendered through the interface of overlay in OGRE engine.
4) Demonstration program based on a flexible application framework which is
attached audio system with the Fmod library and UI system with the CEGUI library.
5)
Improvement of scene appearance with 3D Stereo technology.
Keywords: helicopter simulator OGRE scene simulation virtual reality
II
目 录
目 录
第 1 章 引 言 .......................................................................................................... 1
1.1 研究背景 ......................................................................................................... 1
1.1.1 虚拟现实技术 .......................................................................................... 2
1.1.2 直升机模拟器概述 .................................................................................. 3
1.2 论文的主要工作和章节安排 ......................................................................... 4
第 2 章 视景仿真技术及软件平台 .......................................................................... 6
2.1 真实感三维图形绘制理论 ............................................................................. 6
2.1.1 三维图形绘制流水线 .............................................................................. 6
2.1.2 可编程绘制流水线 .................................................................................. 7
2.2 视景仿真软件平台 ......................................................................................... 9
2.2.1 两种图形函数库和图形引擎 .................................................................. 9
2.2.2 面向军事领域的视景仿真软件 Vega ................................................... 10
2.2.3 通用视景仿真软件 Virtools Dev........................................................... 12
2.2.4 通用的图形引擎 OGRE ........................................................................ 14
2.3 本章小结 ....................................................................................................... 15
第 3 章 OGRE 平台上的视景仿真 ........................................................................ 16
3.1 OGRE 开发的准备工作 ............................................................................... 16
3.1.1 开发条件的准备 .................................................................................... 16
3.1.2
OGRE 开发入门 .................................................................................... 18
3.2 OGRE 类库架构分析 ................................................................................... 20
3.2.1
3.2.2
3.2.3
Ogre 场景组织和渲染体系 ................................................................... 20
Ogre 用到的设计模式 ........................................................................... 22
Ogre 的脚本机制 ................................................................................... 26
3.2.4 模型 Mesh 文件的格式 ......................................................................... 28
3.3 本章小结 ....................................................................................................... 30
第 4 章 基于 OGRE 直升机模拟器视景仿真设计 ............................................... 31
III
目 录
4.1 直升机模拟器的总体设计 ........................................................................... 31
4.2 视景仿真的设计实现 ................................................................................... 33
4.2.1 开发平台 ................................................................................................ 33
4.2.2 需求分析 ................................................................................................ 34
4.2.3 应用程序框架和类库结构设计 ............................................................ 35
4.2.4 视景仿真软件实现结果 ........................................................................ 39
4.3 本章小结 ....................................................................................................... 42
第 5 章 OGRE 视景仿真关键技术实现 ................................................................ 43
5.1 本章引论 ....................................................................................................... 43
5.2 实体模型创建和场景管理 ........................................................................... 43
5.3 基于粒子系统的视觉效果 ........................................................................... 46
5.3.1 在 OGRE 平台上应用粒子系统 ........................................................... 47
5.3.2 烟雾的粒子脚本 .................................................................................... 48
5.3.3 雨的粒子脚本 ........................................................................................ 50
5.4 水面和波浪 ................................................................................................... 51
5.4.1 水面模拟原理 ........................................................................................ 51
5.4.2 利用着色器实现水面模拟 .................................................................... 52
5.4.3 水面的顶点着色器 ................................................................................ 52
5.4.4 水面的像素着色器 ................................................................................ 54
5.5 森林和草地 ................................................................................................... 57
5.6 虚拟仪表 ....................................................................................................... 59
5.6.1 虚拟仪表的创建 .................................................................................... 59
5.6.2 虚拟仪表的驱动 .................................................................................... 61
5.7 三维音频效果 ............................................................................................... 64
5.8 地形仿真 ....................................................................................................... 66
5.9 输入控制系统 ............................................................................................... 69
5.10 联网通信系统 ............................................................................................... 70
5.11 视景仿真效果的优化 ................................................................................... 73
5.12 本章小结 ....................................................................................................... 76
第 6 章 结论与展望 ................................................................................................ 77
IV