Общий интерфейс генератора изображений
Общий интерфейс генератора изображений (CIGI) (произносится как sig-ee) — это протокол передачи данных, который обеспечивает связь между генератором изображений и симуляцией его хоста. Интерфейс разработан для продвижения стандартного способа связи главного устройства с генератором изображений (IG) в отрасли.
CIGI позволяет производителям совместимых со стандартами генераторов изображений использовать технологию Plug-and-Play и снижает затраты на интеграцию при обновлении визуальных систем.

Фон
[ редактировать ]В большинстве высококлассных симуляторов не все работает на одной машине, как в настоящее время реализовано популярное домашнее программное обеспечение Flight Simulator. Модель самолета запускается на одном компьютере, обычно называемом хостом, а программа визуальных эффектов или графов сцены запускается на другом, обычно называемом генератором изображений (IG). [1] Часто для отображения окружающей среды, созданной хостом, требуется несколько IG. CIGI — это интерфейс между «хостом» и IG.
Основная цель CIGI — извлечь выгоду из предыдущих инвестиций за счет использования общего интерфейса. CIGI разработан, чтобы помочь поставщикам и интеграторам IG-систем облегчить интеграцию, повторное использование кода и общее снижение затрат.
В прошлом большинство генераторов изображений имели собственный интерфейс; каждый хост должен был реализовать этот интерфейс, что делало замену генераторов изображений дорогостоящим испытанием. CIGI был создан для стандартизации интерфейса между хостом и генератором изображений, чтобы для переключения генераторов изображений требовались небольшие изменения. Инициативу CIGI в начале 21 века в значительной степени инициировала компания Boeing.
Последняя версия CIGI (CIGI 4.0) была разработана Организацией стандартов совместимости моделирования (SISO) в форме SISO-STD-013-2014, Стандарта для общего интерфейса генератора изображений (CIGI), версия 4.0, от 22 августа 2014 г. SISO-STD-013-2014 можно бесплатно получить в SISO. [2]
Определения
[ редактировать ]Генератор изображений . В этом контексте генератор изображений состоит из одного или нескольких каналов рендеринга, которые создают изображение, которое можно использовать для визуализации сцены «за окном», или изображений, созданных с помощью моделирования различных датчиков, таких как инфракрасный, дневной. ТВ, электрооптика и ночное видение.
Симуляция хоста . В этом контексте «Хост» — это вычислительная система, которая предоставляет информацию о моделируемом устройстве, чтобы генератор изображений мог отображать пользователю правильный пейзаж. Эта информация передается через CIGI в генератор изображений.
Созревание
[ редактировать ]CIGI 4 — это последняя версия стандарта, одобренная Организацией по стандартизации совместимости моделирования 22 августа 2014 года. CIGI стал международным стандартом SISO, известным как SISO-STD-013-2014; который содержит документ управления интерфейсом (ICD) CIGI версии 4.0. [3]
CIGI 4.0 — официальный стандарт, опубликованный SISO . Предыдущие версии CIGI, инициированные компанией Boeing, включают CIGI v3.3, [4] в ноябре 2008 г., версия 3.2 [5] Апрель 2006 г., версия 3.1 [6] Июнь 2004 г., версия 3 [7] Ноябрь 2003 г., т.2 [8] в марте 2002 г., а оригинал (v1) - в марте 2001 г. [9]
Зависимости протокола
[ редактировать ]UDP: Обычно CIGI использует UDP в качестве транспортного протокола, но CIGI не требует специального транспортного механизма, а только соответствие определения пакета. Трафик CIGI не имеет хорошо известного порта; однако использование портов 8004–8005 широко применяется коммерческими поставщиками генераторов изображений. [10]
Инструменты разработки
[ редактировать ]Эмулятор хоста
[ редактировать ]Эмулятор хоста можно использовать в качестве замены для управления интерфейсом, когда хост моделирования недоступен. Это хост-приложение генератора изображений на базе Windows, используемое для разработки, интеграции и тестирования генераторов изображений, использующих протокол CIGI. Он предоставляет графический интерфейс пользователя (GUI) для создания, изменения и удаления объектов; манипулирование взглядами; контроль экологических атрибутов и явлений; и другие функции хоста.
Эмулятор хоста имеет несколько функций, полезных для интеграции и тестирования. Режим свободного полета позволяет летать на самолетах и винтокрылых машинах, перемещаться по осям объекта и свободно вращаться с помощью джойстика или виджета, подобного джойстику. Функции сценариев и записи/воспроизведения поддерживают регрессионное тестирование, демонстрации и другие задачи, требующие точного воспроизведения определенных последовательностей событий. Функция отслеживания на уровне пакетов позволяет пользователю проверять содержимое сообщений CIGI, время отклика генератора изображений и задержки.
Окно монитора пульса отображает графическую временную историю частоты кадров данных генератора изображений. Другие функции включают явное создание пакетов, управление анимацией, всплывающие окна ракет и окно отображения ситуации (только Host Emulator 3.x).
Многоцелевой просмотрщик
[ редактировать ]Многофункциональная программа просмотра (MPV) обеспечивает базовые функции, ожидаемые от генератора изображений, такие как загрузка и отображение базы данных ландшафта, отображение объектов и т. д. Многоцелевое средство просмотра можно использовать в качестве суррогата для управления интерфейсом, когда настоящий генератор изображений недоступен. MPV способен работать как с операционными системами Windows, так и с Linux.
Библиотека классов CIGI
[ редактировать ]CCL — это объектно-ориентированный программный интерфейс, который автоматически обрабатывает композицию и декомпозицию сообщений (т. е. упаковку, распаковку и замену байтов в соответствии со спецификацией ICD) как на стороне хоста, так и на стороне генератора изображений. CCL интерпретирует сообщения хоста или генератора изображений на основе параметров времени компиляции. Он также выполняет обработку ошибок и перевод между различными версиями CIGI.
Каждый тип пакета имеет свой класс. Доступ к отдельным членам пакета осуществляется через средства доступа класса пакета. Исходящие сообщения создаются путем помещения каждого пакета в исходящий буфер с помощью оператора потоковой передачи. Входящие сообщения анализируются с использованием механизмов обратного вызова или событий, которые предоставляют использующей программе полностью заполненные объекты пакета.
Текущий набор инструментов
[ редактировать ]Набор инструментов разработки CIGI управляется и поддерживается группой поддержки продуктов SISO CIGI. Последние пакеты доступны на SourceForge.
Комментарии/предложения к пакету можно направить на форум обсуждений SISO по адресу: https://discussions.sisostds.org/index.htm?A0=SAC-PSG-CIGI.
Вайршарк
[ редактировать ]Wireshark — бесплатный анализатор пакетов с открытым исходным кодом. Он используется для устранения неполадок в сети, анализа, разработки программного обеспечения и протоколов связи, а также обучения. Wireshark предоставляет диссектор для пакетов CIGI. По состоянию на октябрь 2016 г. «Диссектор CIGI полностью функционален для версий CIGI 2 и 3. Версия 1 еще не реализована». [11]
Старые версии CIGI
[ редактировать ]Документ управления интерфейсом CIGI (ICD) и пакет разработки доступны в формате с открытым исходным кодом. Инструменты, ICD и сопроводительную пользовательскую документацию можно найти и загрузить с веб-сайта CIGI sourceforge .
Версия MPV для SourceForge ограничена в поддержке пакетов данных CIGI и будет расширяться по мере возникновения потребностей. MPV использует CIGI 3 в качестве интерфейса, но MPV обратно совместим с более ранними версиями CIGI благодаря использованию CCL. MPV использует библиотеку Open Scene Graph для рендеринга сцены. Граф сцены управляется в соответствии с командами CIGI, полученными от хоста через CCL. Сам MPV представляет собой прикладной уровень, состоящий из небольшого ядра, в значительной степени использующего архитектуру подключаемых модулей для простоты обслуживания и гибкости.
Разработчик может реализовать интерфейс с нуля, однако доступен полный набор инструментов интеграции. Эти инструменты состоят из трех элементов. Эмулятор хоста (HE), многоцелевая программа просмотра (MPV) и библиотека классов CIGI (CCL).
Ссылки
[ редактировать ]- ^ «Re: [Flightgear-devel] FW: Ошибка доставки почты: возврат сообщения отправителю» .
- ^ «Организация по стандартизации совместимости моделирования (SISO)» .
- ^ «Стандарты SISO» .
- ^ «CIGI: Спецификация интерфейса» .
- ^ http://cigi.sourceforge.net/files/CIGI_ICD_3_2.pdf [ только URL-адрес PDF ]
- ^ http://cigi.sourceforge.net/files/CIGI_ICD_3_1.pdf [ только URL-адрес PDF ]
- ^ http://cigi.sourceforge.net/files/CIGI_ICD_3.pdf [ только URL-адрес PDF ]
- ^ http://cigi.sourceforge.net/files/CIGI_ICD_2.pdf [ только URL-адрес PDF ]
- ^ http://cigi.sourceforge.net/files/CIGI_ICD_1.pdf [ только URL-адрес PDF ]
- ^ «ЦИГИ» .
- ^ «ЦИГИ» .
Внешние ссылки
[ редактировать ]- Веб-сайт Организации по стандартизации совместимости моделирования
- Веб-сайт Сорсфордж
- AAcuity PC-IG (генератор изображений, совместимый с CIGI)
И