图1 FlightGear 基本视窗效果图
一、FlightGear 简介
David Murr 于1996年4月发起开发新飞行模拟器的倡议,既而于1997年7月发布了第一个跨平台版本。之后,FlightGear 从最初粗糙的空气动力学模型开始,逐渐引入了自然特性(阳光、月光和星光等)、天气特性(云、雾和风等)、平显、仪表板、电子导航系统、机场与跑道以及网络互联操作等众多的特性。时至今日,FlightGear 已成为了 Linux 下最著名的开源飞行模拟软件,其强大真实的飞行仿真功能足以让大家过一把飞行瘾,而绝对不会出现 Lock on 游戏中摔不死的情况。
图2 玩家 Curt Olson 配置的全景视图
图3 航母起降
FlightGear的程序构架是开放式的,源代码树只有一级,方便大家给 FlightGear 增添功能。正因为如此,众多的飞行模拟爱好者为 FlightGear 开发了数十种飞机模型,提供了大量的机场数据和场景。
FlightGear 不仅博得了广大的飞行模拟爱好者的青睐,也赢得了许多公司和研究机构的信任,比如著名的飞行管理和地面设备公司ARINC、英国威尔士大学的飞行智能机器人研究和美国 Illinois 大学于智能结冰系统的研究等都使用了 FlightGear。据说国内也有研究人员汉化了 FlighGear,并把其用于研究项目之中。FlightGear的专业性可见一斑,因而能够在娱乐的同时感受挑战,享受获取知识的乐趣,做到娱乐学习两不误,真正领略 Free and Flying。
二、FlightGear 的安装
1. 二进制安装
FlightGear 官方网站为Fedora Core、Debian和Slackwre等发行版提供了二进制安装包。装这些系统朋友直接下载安装即可,省去了编译的麻烦。国内linuxfans的发行版 Magic Linux系统也提供编译好的二进制包,在这里下载 flightgear-0.9.8-1mgc.rpm 安装包。
二进制安装最常见的问题就是缺少某些库(如同Windows下缺少动态链接库一样),只要找出相应的软件包安装进系统就可以正常安装 FlightGear 二进制包了。下面以Magic Linux 1.2/2.0 提供的FlightGear-0.9.8为例做一简单说明:
第一步:下载Magic Linux 提供的 FlightGear-0.9.8 RPM包,双击安装,如图4所示。系统提示“没有满足依赖关系”,关闭“KPackage”;
第二步:下载相应的 FlightGear 相应的依赖包,地址如下:
http://www.magiclinux.org/dev/2.0/cd2/RPMS/Game/supportlib/
下载freeglut、metakit、openal、plib和simgear目录中的所有安装包到本地磁盘;
第三步:安装上述软件包;可以用双击调用“KPackage”逐个安装,也可以在超级用户(root)模式下用控制台集体快速安装(如图5);
图4 不满足依赖关系
图5 控制台安装依赖包
第四步:再次双击FlightGear-0.9.8 RPM包,如图7所示,然后依照提示完成安装;
图6 完全满足依赖关系
安装完成之后,单击“游戏”(或者games)中的“学航出更”启动 FlightGear。
其它操作系统的二进制包安装与上述内容类似,这里就不一一赘述了。
2. FlightGear 源码编译安装也很简单,步骤如下:
第一步:安装显卡3D驱动,保证启动 OpenGL 3D 加速;
第二步:安装PLIB的最新稳定版本(http://plib.sourceforge.net,大多数发行版已经自带了已经自带了二进制包);
第三步:安装SimGear的最新稳定版本(http://www.simgear.org/downloads.html,大多数发行版已经自带了二进制包);
第四步:下载编译FlightGear基本包(http://www.flightgear.org/Downloads/source.shtml)。
源码编译安装一般不会出现依赖性问题,但要注意执行完 Make install 之后,不要把编译目录删除掉,否则就丢失安装信息,不方便卸载软件了。
安装完成之后,进入 /usr/local/FlighGear/bin 目录下执行 fgfs 命令即可享受飞行了。fgfs 可以带参数,参数的详细内容请参考 FlightGear 文档,下节将举例简单说明。
三、启动 FlightGear
在启动 FlightGear 之前,需要配置 FlightGear 的运行环境,FlightGear 提供了丰富的配置选项,对于初学者来说难免有些繁杂,因此,为了增强直观性,笔者以 Windows 版本(版本号:0.9.9)作为引子快速介绍 FlightGear 的操作选项,同时说明 Linux 的配置参数,以方便读者熟悉配置项目。这里主要以键盘来操作,当然,你也可以装上飞行控制杆来控制飞机。
第一步:启动 FlightGear 之后,进入机型选择界面如图7所示,选择喜爱机型。在 Linux 系统下,增加启动参数“--aircraft=飞机代号”;
图7 选择机型
对于初学者,笔者建议选择“Cessna 172P Skyhawk(1981 model), 2D panel”,赛斯纳(Cessna) 172 系列是世界使用最多的四座教练机。从1957开始,已经生产了35,000多架飞机,目前还在使用。该机型操作容易,失速特性好,非常适合于初级训练。
第二步:选择机场(见图8)。新手可直接单击 Next 跳过选择,进入默认的机场环境。在 Linux 系统下使用参数“--airport-id=机场代码”。
图8 选择机场环境
第三步:基本设置(如图9)。这是进入实际飞行前的最后一个步骤,可以选择分辨率、游戏模式、3D云以及飞行的时间等等。还可以单击“Adanveced...”进入高级选项(如图10)。高级选项中提供了15个选项:
General 一般 常用
Features 特性 常用
Flight Model 飞行计算模型 常用
Freeze 冻结
Initial Position 初始位置
Rendering 渲染 常用
Time 时间
Network 网络
Input/Output 输入/输出 常用
Avionics 航电 常用
Properties 属性
Debugging 调试
Environment 环境 常用
Weather 天气 常用
Clouds 云 常用
图9 基本设置
图10 高级选项
“基本选项”和“高级选项”中的每项内容在都可以在命令行中加上参数来实现,因此在 Linux 系统中可以参照 FlightGear 安装目录下 doc 目录里的“getstart.pdf”第3.4节的详细说明完成相应的设置。
完成设置之后,就可以单击“Run”进入飞行界面了。本例的 Flightgear 运行配置归纳起来在 Linux 系统中只需在命令行中运行如下命令即可:
fgfs --aircraft=c172p-2dpanel --disable-random-objects --timeofday=noon
第四步:执行飞行任务(如图11和图12),进入FlightGear 之后,各个版本的运行界面完全一致。
图11 FlightGear初始化
图12 仪表板
由此,便可以执行模拟飞行任务了,比如起飞、爬升、巡航、下滑、进场和着陆等。当然飞行模拟并不像 CS 那样容易上手,欲想出色的完成一个航线任务,是要具备一定的飞行力学知识,并进行相当长一段时间的飞行训练才能胜任的。不过不用担心,孰能生巧,模拟飞行其实是非常简单的。下一节给出键盘操纵飞机的基本步骤,供读者参考。
四、键盘操纵
以“Cessna 172P Skyhawk(1981 model), 2D panel”为例,执行如下操作:
首先,启动发动机。按“Shift + ]”三次把“点火开关”(如图13)置于“Both”位置;按空格键启动发动机。
图13 点火开关与刹车
然后,执行放襟翼,推油门,滑跑,拉杆起飞等动作,开始飞行之旅。限于篇幅本文不能详细介绍各种飞行动作的要领,好在这方面的资料网上很多,例如:中国飞行模拟组织(http://www.cfso.org)的官方网站即提供许多有用的信息可供下载。下面给出 FlightGear 键盘操纵飞机的常用操作说明(见表1),也可以在 FlightGear 的“Help”菜单中的“Basic Keys”和“Commnon Aircraft Keys”选项里获取部分按键说明。
表1 常用操作
************************************
按键说明
操纵面(在数字键盘上,控制航向、滚转和俯仰等,必须激活数字锁定)
9/3
推力:9增加推力,3减小推力
4/6
副翼:4向左滚转,6向右滚转
8/2
升降舵:8推杆低头,2拉杆抬头
0/Enter
方向舵:0向右偏航,Enter向右偏航
5
居中副翼/升降舵/方向舵
************************************
观察方位(在数字键盘上,必须关闭数字锁定)
Shift + 8
正前方
Shift + 7
左前方
Shift + 4
左侧方
Shift + 1
左后方
Shift + 2
正后方
Shift + 3
右后方
Shift + 6
右侧方
Shift + 9
右前方
************************************
显示选项
P
仪表板开关
C
2D/3D驾驶舱开关(2D和3D模型都可用时才起作用)
S
仪表排列形式切换开关
Shift + F5/F6
左右移动2D仪表板
Shift + F7/F5
上下移动2D仪表板
Shift + F3
从特性列表导入仪表板
i/I
最小化/最大化仪表板
h/H
打开关闭HUD/改变HUD的颜色
x/X
放大/缩小
v/V
切换飞行员的观测模式
Ctril + c
开关仪表板鼠标操作指示标记
z/Z
改变能见度(好/坏)
F8
开关雾特效
F10
显示/隐藏菜单栏
************************************
自动驾驶及相关控制
Ctril + A
高度保持开关
Ctril + G
下滑角跟随开关
Ctril + H
航向保持开关
Ctril + N
NAV 开关
Ctril + T
地形跟随开关
Ctril + U
高度增加 1000 英尺(紧急情况)
Enter
增加航向自动驾驶
F6
开关目标自动驾驶:当前航向/航路点
F11
高度自动驾驶对话框
F12
航向自动驾驶对话框
************************************
发动机控制
SPACE
启动发动机
!
选择第一台发动机
@
选择第二台发动机
#
选择第三台发动机
$
选择第四台发动机
}
增加点火电源
{
消减点火电源
~
选择所有发动机
************************************
襟翼、起落架与刹车
]/[
放/收襟翼
g/G
收/放起落架
B
刹车锁死开关
b
刹车(全部轮胎)
,
左轮胎刹车
.
右轮胎刹车
是不是有了以上的键盘操作表就可以玩好飞行模拟(如图14和15)了呢?显然这种想法是不正确的。飞行模拟游戏决不等同于“F-22”等空战模拟游戏,除了娴熟的(键盘、游戏杆和鼠标)操作技巧之外,它还熟练运用飞行力学、空中管制和导航等相关知识,因此,要想自由的飞行就必须付出学习的代价,正如美国人写在越战纪念碑上一句话:Freedom is not free!下一节,简单介绍一下起落航线供读者参考。
图14 进场着陆(第四转弯)模拟
图15 空中加油模拟
五、起落航线
在介绍起落航线之前,我们先来认识一下“Cessna 172P Skyhawk”飞机的仪表面板,如图16所示。常用的仪表有空速表、地平仪、高度表、罗盘(指南针)、航向陀螺仪和协调转弯指示仪。
图16 Cessna 172P Skyhawk 的仪表面板
起落航线是飞行训练的基础科目,顾名思义,它就是航空器按照一定的程序(航线)完成起飞到着陆的一整套过程(如图17)。当然对于玩家来说,完成这么复杂的飞行动作颇具挑战性,不过这也是飞行模拟的魅力所在。
图17 某型飞机的起落航线示意图
图17种给出了起落航线的大致轮廓,对于飞好本航线还是远远不够的,笔者推荐有兴趣的读者访问http://www.cfso.org/train_dep/traffic.htm,这篇文章详细介绍了起落航线相关的飞行知识。
这里笔者对初学者给出几点建议:
1. 飞机的操作有较长的时间历程(有延迟),不能指望它立即对舵面操纵指令做出响应;
2. 操纵动作不能过猛,不要猛推/拉杆和突然正/反向压杆;
3 初学的首要任务是保持好飞机姿态,然后再慢慢尝试机动动作;
4. 着陆要领是在适当高度(低于450米)把襟翼放置在最大位置,发动机油门放到最小(视飞机的姿态灵活的微调油门,但要保持发动机处于慢车状态),保持飞机抬头姿态,自然下沉着陆,不要以俯冲的姿态进入着陆(进近)航线;
5. 操作失败不要灰心丧气,学习一点飞行知识再继续努力。
六、增添机型和场景
FlightGear 官方网站提供了多达70余种机型供广大飞行爱好者选用,从运输机及到战斗机、从最新的F-22到老旧的MiG-15bis,从Being到Airbus,应有尽有,能够满足广大玩家的需求。下载地址为:http://www.flightgear.org/Downloads/aircraft/。机型的安装也很简单,只要解压 .tgz 文件到 Aircraft 目录即可。相信在众多开发的者的努力下,机型的种类和数量将会继续增长。当然,读者也可以导入自己的模型进入FlightGear,试想把我国最新的战机F-10放进FlightGear,那一定很美妙。
飞行仿真离不开模拟场景,逼真的仿真场景往往能极大的提高玩家的兴趣,而 FlightGear 基本程序仅提供了美国旧金山周围一小块空域的场景,如果想在更大范围内飞行,例如从纽约飞往北京,那是不是没有办法玩了呢?不用担心,FlightGear 官方网站提供多达 3 DVD 的全球场景数据供玩家使用。下载地址:http://www.flightgear.org/Downloads/scenery.html。场景的安装与机型的安装类似,只要把 .tgz 文件解压到 Scenery 目录即可。
至此,FlightGear 基本上介绍完了,希望笔者的介绍能够起到抛砖引玉的作用,祝愿大家飞行愉快。
相关的网站:
FlightGear 官方主页及官方下载地址
http://www.flightgear.org/Downloads/
Magic Linux 提供的 FlightGear 二进制包及其依赖软件
http://www.magiclinux.org/dev/2.0/cd2/RPMS/Game/
http://www.magiclinux.org/dev/2.0/cd2/RPMS/Game/supportlib/
欢迎光临 FlightGear飞行模拟器 (http://flightgear.org.cn/) | Powered by Discuz! X3.2 |