FlightGear
FlightGear — свободный авиасимулятор с открытым исходным кодом. Распространяется на условиях лицензии GPLv2. Работает на платформах Microsoft (R) Windows (TM), GNU/Linux, Mac OS, FreeBSD, IRIX, Solaris и др.
FlightGear дает свободу. Вам не надо ждать, пока разработчики выпустят следующий большой релиз и надеяться, что он будет включать в себя функционал, который вы хотели бы иметь в симуляторе. Вам не придется ждать разработчиков летательных аппаратов, пока они создадут и добавят в FlightGear ваш любимый самолет. Вы можете сделать все это сами (и это может быть частью вашей учебы или работы), либо сотрудничать с разработчиками FlightGear.
FlightGear дает контроль. Что-то не нравится? Измените это и поделитесь вашими наработками и идеями с сообществом FlightGear. Вы можете влиять на курс развития и разработки, который формируется сообществом FlightGear, но вы также можете полностью перестроить его согласно своим потребностям, если у вас появится такое желание и потенциал.
FlightGear - гибкий проект. Он, конечно, может использоваться просто для приятного времяпровождения, но он также используется учреждениями и институтами для серьезных исследований аэродинамики.
Содержание
- 1 Возможности
- 1.1 в FlightGear можно летать экипажем
- 1.2 FlightGear имеет подвижную камеру обзора
- 1.3 FlightGear умеет разделять изображение по нескольким мониторам
- 1.4 FlightGear умеет включать реальные ветры на эшелонах
- 1.5 в FlightGear можно "цеплять" и "тянуть" планеры
- 1.6 FlightGear имеет мощный встроенный скриптовый язык программирования
- 1.7 FlightGear позволяет осуществлять дозаправку в воздухе
- 1.8 FlightGear имеет встроенный веб-интерфейс, телнет и сервер скриншотов
- 1.9 FlightGear позволяет создавать собственные протоколы обмена данными
- 1.10 FlightGear использует несколько уникальных моделей динамики полета
- 2 История
- 3 См. также
- 4 Ссылки
Возможности
- FlightGear используется на нескольких профессиональных авиатренажерах, сертифицированных FAA.
- В FlightGear округлая (сферическая?) модель земного шара. Используется WGS-84.
- В FlightGear неровные (не плоские) взлетно-посадочные полосы, как в реальной жизни. Превышения двух торцов одной полосы может сильно отличаться.
- Расположение основных небесных светил (звезд и планет) в FlightGear очень точное и зависит от вашего положения на земле и небе, а также от текущих даты и времени.
- Исходный код автопилота FlightGear автономно использовался в реальных БПЛА для реальных полетов.
- Динамика полета вертолетов в FlightGear является одной из самых реалистичных среди авиасимуляторов для персональных компьютеров.
в FlightGear можно летать экипажем
Технически FlightGear позволяет осуществлять совместное управление самолетом и летать по сети экипажем. Практически это реализовано на нескольких моделях - на Cessna 127P, Blackburn Buccaneer, Grumman F-14 Tomcat и на дирижаблях Submarine Scout и Zeppelin NT. Также есть планы по внедрению управления экипажем на ПТ Ту-154Б. (подробнее на англ.)
FlightGear имеет подвижную камеру обзора
Вы можете как угодно крутить "головой", двигаться по кабине/салону в любом направлении, пересаживаться с одного места на другое. Симулятор позволяет добавить неограниченное количество своих "видов". Наиболее наглядно это реализовано в проекте портирования ПТ Ту-154Б, где нажимая цифры 1-2-3-4-5 вы перемещаетесь на место КВС, второго пилота, штурмана или бортинженера, а нажатие тильды (~) "приближает" определенный участок приборной панели самолета. Камерой можно управлять с помощью скриптов.
FlightGear умеет разделять изображение по нескольким мониторам
Графический движок OpenSceneGraph, на основе которого работает FlightGear, позволяет использовать несколько мониторов/проекторов для вывода графического изображения.
FlightGear умеет включать реальные ветры на эшелонах
Небольшое расширение позволяет использовать реальные данные о направлении и силе ветра на больших эшелонах. Данные берутся с сервера Jeppesen.
в FlightGear можно "цеплять" и "тянуть" планеры
В трех летательных аппаратах реализована возможность цеплять и тянуть планеры (Beaver, Rallye-MS893E, J3), а три модели планеров могут к ним цепляться (ASK21, Bocian, DG-300). Цепляться можно как в онлайновом мультиплеере, так и в оффлайне с помощью AI-бота. (подробнее на англ.)
FlightGear имеет мощный встроенный скриптовый язык программирования
Скриптовый объектно-ориентированный язык программирования Nasal имеет синтаксис, схожий с ECMA/JavaScript, Python и Perl. Он позволяет сильно расширить возможности моделей летательных аппаратов, используя сложные логические условия, циклы и функции. Гидро- и электро-системы могут быть реализованы в крайней степени реалистично, благодаря Nasal.
FlightGear позволяет осуществлять дозаправку в воздухе
В симуляторе реализованы два самолета-заправщика (KC135-E, KA6-D) и несколько самолетов (A4F, A-6E, A-10, F-14 Tomcat, Lightning, F-117 Nighthawk и T38), которые могут заправляться от них в воздухе. Заправка может осуществляться как в онлайне, когда заправщиком и заправляемым управляют два реальных человека по сети, так и в оффлайне, запустив соответствующий сценарий при запуске FlightGear. (подробнее на англ.)
FlightGear имеет встроенный веб-интерфейс, телнет и сервер скриншотов
Запустив FlightGear с соответствующими параметрами, к нему затем можно подключиться различными способами. Включив веб-интерфейс, вы (или кто-то другой по сети) можете "зайти" в параметры FG с помощью любого веб-браузера, исследовать дерево свойств, изменить необходимые значения. Включив телнет-сервер вы можете подключить к симулятору программу или скрипт, используя протокол Telnet. Включив JPEG-сервер вы можете: расшаривать текущий обзор (статично); расшаривать текущие скриншоты в виде слайд-шоу (динамично) на веб-страничке; автоматически делать скриншоты с определенной периодичностью и сохранять их в локальную директорию.
FlightGear позволяет создавать собственные протоколы обмена данными
Симулятор позволяет создавать произвольные протоколы обмена данными на основе сетевых протоколов TCP и UDP, либо сохранять в файл необходимые данные в необходимой форме с необходимой периодичностью (например, для моделирования МСРП). При этом протоколы могут быть как текстовыми (ASCII), так и бинарными. Создание собственного протокола осуществляется в стандартной для FG форме - при помощи обычных XML-файлов. (подробнее на англ.)
FlightGear использует несколько уникальных моделей динамики полета
Первые версии FG основывались на модели динамики полета (FDM) LaRCsim, созданной NASA. С 2000 года моделью динамики по-умолчанию стала JSBSim. Для просчета динамики полета она использует введенные в конфигурацию модели параметры о поведении реального ЛА в соответствующих условиях. В 2002 году добавилась ещё одна модель динамики - YASim. Эта FDM просчитывает динамику полета на основе просчёта поверхностей ЛА. Модель динамики UIUC, разработанная Applied Aerodynamics Group в Университете Иллиноиса, также используется в FlightGear. Изначально эта FDM разрабатывалась для проекта Smart Icing System Project. FLightGear может также использовать данные внешних FDM в качестве источника динамики полета, например, данные из программы Matlab. Существует также модель динамики, используемая для летательных аппаратов легче воздуха (аэростатов). В целом же FG позволяет моделлерам крайне реалистично воссоздать динамику полета ЛА и поддерживает авторотацию, воздушную подушку, любое количество двигателей и многое другое. (подробнее на англ.)
История
Проект был создан в 1996 году, а в 1997 года вышел первый релиз симулятора, основанный на OpenGL. Проект возглавляется Кёртисом Олсеном (Curtis Olsen). В декабре 2007 года вышел последний релиз, основанный на графическом движке Plib - версия 1.0. 21 декабря 2008 года вышел релиз 1.9, основанный на новом графическом движке - библиотеке OpenSceneGraph (OSG).
Версия 2.0
FlightGear 2.0.0 основан на OpenSceneGraph, как и предыдущий релиз 1.9.0. Наряду с множеством внутренних изменений в исходном коде симулятора, версия 2.0.0 содержит множество улучшений в графике и озвучке. Что нового в FG 2.0:
Звук
- Полностью переписанный код звуковой подсистемы
- Эффекты Допплера
- Учет дистанции до источника звука
- 3D-позиционированные источники звука
- Назначение звуков внешним объектам (например, AI-самолетам)
- Выбор звуковой карты пользователем
- Визуальные эффекты
- Использование шейдеров для динамических текстур
- Использование отдельных Effects-файлов
- Улучшенные 3D-облака
- Изменения цвета объекта, основанные на погодных условиях
- Динамические эффекты воды
- Текстовая анимация, основанная на OSGText
Юзабилити
- Возможность сохранения скриншотов в большем количестве форматов
- Использование выбранного пользователем звукового устройства
- Более понятные настройки погоды через GUI и/или командную строку
- Внутренние улучшения
- Улучшенное дерево свойств (property tree)
- Более эффективный «ground cache»
- Множественные улучшения в планировщике полета
- Очищенный от большого количества предупреждений компилятора код
- Улучшена модель атмосферы
Окружение
- Более реалистичное поведение ILS
- Улучшения автопилота
- Базовая функция «autobrake»
- Воздушные потоки в горной местности, используемые для полетов на планерах
- Планировщик полетов стал удобнее
- Лесные пожары, которые можно гасить с помощью пожарных самолетов в т. ч. в онлайне
- Частоты станций и радиалы могут быть отправлены в Atlas
Утилиты
- Новый Python-скрипт, позволяющий визуализировать поверхности YaSim-конфигурации в 3D-редакторе Blender
AI
- Трафик теперь может взлетать и садиться в том же аэропорту
- Возможность добавления различного наземного транспорта – автомобилей, грузовиков, поездов
- Для некоторых самолетов стали доступны буксировщики (push-back)
- Улучшена функциональность радара – теперь он показывает и сопровождающие AI-самолеты
- AI-объекты теперь цельные
- Предварительная (тестовая) поддержка SID/STAR-процедур для AI-самолетов
Версия 1.9
Версия FlightGear 1.9.0 выпущена на основе кода, основательно переписанного за два года. После выпуска релиза 1.0.0 в декабре 2007 года, сообщество разработчиков FlightGear направило все свои усилия на завершение работы, начатой в октябре 2006, когда было принято решение о создании ветки, основанной на новом графическом движке — библиотеке OpenSceneGraph. Данный движок расширяет графические возможности симулятора FlightGear.
Релиз 1.9.0 содержит много новых замечательных возможностей, некоторые из которых перечислены ниже:
- Основные улучшения
- Тщательный пересмотр графической части кода, учитывая переход на библиотеку OpenSceneGraph
- Простая настройка мульти-дисплейных систем при единственном запущенном процессе FlightGear
- Многопоточная подгрузка 3D-моделей
- Природные осадки, основанные на новой системе частиц (particle system)
- Новые динамически настраиваемые 3D-облака
- Анимация "pick", позволяющая создавать более удобные кликабельные панели инструментов
- Изменения в графическом меню для удобства полетов на онлайн-серверах
- Теперь можно запускаться с парковки, а не с взлетно-посадочной полосы
- Рендеринг деревьев и леса, основанный на шейдерах (shader)
- Поддержка PNG-текстур (раньше можно было только SGI/RGB)
- Более 200 типов самолетов теперь доступны для скачивания
- Появились линии электропередач
- Возможность летать в строе с ведомыми, управляемыми компьютером самолетами
- Улучшения в коде
- Улучшена динамика полета
- Небольшие изменения в анимации
- Улучшено поведение AI-самолетов при рулении
- Множество изменений в графическом интерфейсе
- Значительно улучшен код, отвечающий за полеты по маршрутам
- Улучшена безопасность Nasal-кода (скриптового языка)
- Улучшена поддержка GPS-приборов
- Создавать AI-объекты стало проще
- Берега в сценариях стали ещё более точными
См. также
- X-Plane
- Microsoft Flight Simulator
- Авиасимулятор FlightGear
- Введение в моделирование для авиасимулятора FlightGear
- Основы аэродинамики JSBSim для авиасимулятора FlightGear