ND Display, FMC /MCDU — Программирование

Привет,

дело движется к зиме, а значит времени посидеть за компом прибавиться,

хотел попробовать изминить-создать дефолтную FMC /MCDU и ND Display на одном из самолётов,

понимаю что дело не простое, но есть желание.

Что хочу изменить:

Сам показ маршрута на ND Display, не просто красные линии, но и SID / STAR.

В FMC /MCDU всё то,что есть у платников, например А320/А330, B757/B777.

 

Может кто хочет вместе со мной этим заняться, буду только рад.

Одним Plane Maker здесь не обойтись,

наверное придётся работать и C #.

Где можно хоть какую то информацию взять, с чего начинать?

Для Виндовс различные проложения делал, а вот как для Х-плейна,

пока не пойму.

Буду рад любой информации.

 

П.С Это не коммерческий проект, только для личного развития и конечно же для любимого хобби!

Ответов: 19

1. C# вряд-ли. Тут или писать родной плагин на C (ставим Visual Studio и вперед), или брать SASL и колбасить на LUA. Второй вариант естественно проще в освоении. Для небольших поделок пойдет.

2. Допилить существующее вряд-ли получится потому-что они вшито глубоко в Иксы. Надо писать все самому с нуля.

3. С чего начинать. Я думаю что с кастомного ND. А значит в первую очередь нужно научится читать файлы навдаты (родные или кастомные). Вгружаем навдату в память (думаю тут интересно будет с организацией хранения всей этой бурды), после чего можно приступать к рисованию хотя-бы основных точек/маяков/АП/… вокруг крафта, масштабирование и т.д. Ну а потом уже можно и маршрутами с ФМС заняться.

Угу, мучать дефолт бесполезно. Нужно с нуля.

 

НД только текстурами сделать думаю не получится. Взять ту же линию маршрута, которую нужно гнуть в нужных местах и с нужным радиусом.

В сасле есть такая возможность

По сути для векторной графики понадобится только 

drawTriangle(x1, y1, x2, y2, x3, y3, red, green, blue, alpha)
 

Интересная задумка, только опоздала на несколько лет

 

1. C# вряд-ли. Тут или писать родной плагин на C (ставим Visual Studio и вперед), или брать SASL и колбасить на LUA. Второй вариант естественно проще в освоении. Для небольших поделок пойдет.

2. Допилить существующее вряд-ли получится потому-что они вшито глубоко в Иксы. Надо писать все самому с нуля.

3. С чего начинать. Я думаю что с кастомного ND. А значит в первую очередь нужно научится читать файлы навдаты (родные или кастомные). Вгружаем навдату в память (думаю тут интересно будет с организацией хранения всей этой бурды), после чего можно приступать к рисованию хотя-бы основных точек/маяков/АП/… вокруг крафта, масштабирование и т.д. Ну а потом уже можно и маршрутами с ФМС заняться.

Слышал много о SASL и LUA,

но не доводилось с ними персонально познакомиться,

где брать сие чудо и инфомацию к ним?

Интересная задумка, только опоздала на несколько лет

 

не совсем то, что нужно.

Понятное дело, что не совсем, у всех же свои предпочтения. Там просто окошечки PFD, ND, EICAS, MFD, CDU… масштабируемые, можно через сеть повесить, а можно на том же компе что и сим, поверх его окна прилепить хоть на боинг, хоть на сессну, но частью кокпита их не сделать, да. А вы все-таки дефолтные приборы своими хотите заменить (правда PFD, ND, MFD — таких дефолтных приборов вроде как нет)?

Понятное дело, что не совсем, у всех же свои предпочтения. Там просто окошечки PFD, ND, EICAS, MFD, CDU… масштабируемые, можно через сеть повесить, а можно на том же компе что и сим, поверх его окна прилепить хоть на боинг, хоть на сессну, но частью кокпита их не сделать, да. А вы все-таки дефолтные приборы своими хотите заменить (правда PFD, ND, MFD — таких дефолтных приборов вроде как нет)?

 

можно прилипить поверх окна, но не вставить в кабину.

Моя задумка заменить пока ND и FMC другими.

Слышал много о SASL и LUA,

но не доводилось с ними персонально познакомиться,

где брать сие чудо и инфомацию к ним?

SASL
http://www.1-sim.com

http://forums.x-plan…scussion-forum/
 

Слышал много о SASL и LUA,
но не доводилось с ними персонально познакомиться,
где брать сие чудо и инфомацию к ним?

Скайтичер чуть выше дал ссылки. От себя добавлю что мануал достаточно скуп и не даёт представление как с этим всем взлететь. Поэтому, если уже есть опыт программирования и разгребания чужого кода, то рекомендовал бы обучаться на примерах. Это могут быть как Каренадовские модели, так и многие бесплатные самолёты с орга ( ил-14, ил-96, Piaggio Avanti и прочие).

Спасибо большое,
как понимаю чтобы проверить изменения нужно будет ЛА постоянно перезагружать в х плейне и смотреть.
Есть какой нибудь другой вариант?
 

Ах да, забыл этот момент.
Перезагрузку плага можно назначить на кнопку в настройках управления сима.

1.JPG

Логи идут в общий лог сима log.txt в его корне. Ошибки смотреть там.

также можно использовать в скрипте print(my_data), будет выводиться туда же.

Сообщение отредактировано skyteacher: 26 August 2016 — 11:08

Опыт программирования есть, но не в этой отрасли.
Пока не доходит как в SASL это все делается, мануалы посмотрел, но с места не сдвинулся.
Может есть видео где, как это в SASL делается

Gesendet von iPhone mit Tapatalk

Еще добавлю: DatarefEditor видит только те датарефы, которые записаны в DataRefs.txt. Свои переменные посмотреть в нем непросто. Вот тут в примерах есть DataRefInspector, он позволяет вбивать имя датарефа вручную. Примеры старые, будет ли работать с десяткой — не знаю.

На данный момент датареф едитор как раз видит. Не забивал себе голову, с изменением чего это связано.

Разумеется я не добавлял ничего в тхт файл, сасл в папке самолета. Датареф  эдитор 12.11 с сквакбокса. Сим 10.45

Снимок.JPG

 

Сообщение отредактировано skyteacher: 26 August 2016 — 13:17

Опыт программирования есть, но не в этой отрасли.
Пока не доходит как в SASL это все делается, мануалы посмотрел, но с места не сдвинулся.
Может есть видео где, как это в SASL делается
 

Может и есть, но не припоминаю.
Расскажу, как обычно оно выглядит в модельках.

Скачанный сасл ложится в папку plugins  желаемой модельки ЛА. Если папки нет, то создайте. Получится my_aircraft/plugins/sasl
Дальше. В папке самолета создается файлик avionics.lua (именно с таким названием, плаг будет его искать).
В нем обычно создают дополнительные датарефы(переменные сима) и подключают другие скрипты.
Другие скрипты размещают в папке Custom Avionics

Вам, чтобы поиграться на первый момент можно калякать прямо в avionics.lua.

Основные моменты.

Список дефолтных датарефов находится в X-Plane_folder/ Resources/plugins/DataRefs.txt

Возьмем например датареф управления закрылками.

defineProperty(«flap», globalPropertyf(«sim/flightmodel/controls/flaprqst»))

«flap» произвольное имя, как обращаться к датарефе в скрипте. globalPropertyf — «f» в конце слова означает флоат, может быть и «i» целые числа. Другое как правило не встречается.

чтобы прочесть датареф используется get(flap) 
чтобы записать set(flap, my_parameter)

 

Также крайне часто используется 

 

function update()

— внутри этой функции все повторяется с частотой fps симулятора

end

Т.е простейшие каракули уборки закрылков по скорости будут выглядеть так:

 

defineProperty(«flap», globalPropertyf(«sim/flightmodel/controls/flaprqst»))
defineProperty(«ias», globalPropertyf(«sim/flightmodel/position/indicated_airspeed»))

 

flaps_up_speed = 200

 

function update()

        if get(ias)  > flaps_up_speed then
              set(flap, 0)

        end

end

Чтобы подключить дополнительные скрипты

 

components = {

my_scripit1 {},

my_scripit2 {},

my_scripit3 {},

}

 

Ну это вкраце, что бы завелось хоть что то.

Сообщение отредактировано skyteacher: 26 August 2016 — 10:55

Спасибо большое,
как понимаю чтобы проверить изменения нужно будет ЛА постоянно перезагружать в х плейне и смотреть.
Есть какой нибудь другой вариант?

Gesendet von iPhone mit Tapatalk

Спасибо за информацию!
Начну потихоньку вникать.

Gesendet von iPhone mit Tapatalk

Я еще вот тут смотрю датарефы. Описание местами кривое, местами отсутствует, но хоть что-то. А дальше можно в плагинах смотреть актуальные значеия через DatarefEditor и делать выводы

http://www.xsquawkbo…s/DataRefs.html

Еще добавлю: DatarefEditor видит только те датарефы, которые записаны в DataRefs.txt. Свои переменные посмотреть в нем непросто. Вот тут в примерах есть DataRefInspector, он позволяет вбивать имя датарефа вручную. Примеры старые, будет ли работать с десяткой — не знаю.

Сообщение отредактировано САБ: 26 August 2016 — 12:50

А желания нет ни у кого вместе заняться этим?
Если что, в личку!

Gesendet von iPhone mit Tapatalk

На данный момент датареф едитор как раз видит. Не забивал себе голову, с изменением чего это связано.

Спасибо. Отстал я слегка, надо обновиться.