Ale писал(а):Ale, а как Ил-2 запустить на симе?
Сначала хотел сам создать файл для IL-2, но понял, что это не дело. Лучше написать инструкцию, хотя бы промежуточную
Значит внимательно читаем этот пост
http://mal4x.ru/viewtopic.php?p=5361#p5361Ну а последовательность подключения железа должна быть следующей.
Создаем или загружаем файл *.xml для нужной игры. В этом файле находится описание сигналов, поступающих из игры по UDP протоколу в следующем виде (пример для данных из IL-2):
<name="Yaw" enabled="true" type="text" prefix="42\" postfix="/" scale_add="0" scale_mul="0.5" />тут
name - имя сигнала (произвольное в общем случае. Т.е. я просто при потрошении игры узнал, что это сигнал "азимута", и присвоил ему имя "Yaw")
enabled - обрабатываем ("true") или нет ("false") данный сигнал
далее способ извлечения сигнала из буфера UDP. Из IL-2 сигналы поступают в текстовом виде, пронумерованные. Я знаю, что YAW сигнал идет под номером 42, т.е. после строки "42\" будет следовать величина этого сигнала в текстовом виде. Завершающий символ "/"
Вообще, описание протокола для IL-2 лежит в папке с игрой в файле - "DeviceLink.txt". Желающие могут ознакомиться
Ну а теперь собственно о подключении к контроллеру. После загрузки xml файла переходим во вкладку "Profile" / "A01" и создаем микс для первой оси.
1 - выбираем, какие сигналы должны участвовать. Видимо "крен" и "тангаж", т.е выбираем из первого выпадающего списка "Pitch", из второго "Roll" и включаем их соответствующими галочками.
2 - для каждого из сигнала прописываем последовательность обработки. Допустимые операнды я уже описывал. Дальше только дело фантазии. Важным являются операнды сглаживания (
Int()) и операнд масштабирования (
Mul()), который позволяет не только отмасштабировать сигнал, но и инвертировать его. Важно помнить, что обработка сигнала ведется в той последовательности, в какой записаны операнды.
3 - для второй оси (A02) повторяем те же действия. Сигнал "крен" (Roll) должен на эту ость должен поступать с другим знаком (относительно оси A01), что надо учесть в операнде Mul().
Важно! Не забываем после ЛЮБОГО изменения нажимать кнопочку "update". Иначе изменения не вступят в силу... Ну вот, собственно, и все. Осталось записать файл на диск (меню
File / Save SIM profile file ) и можно пробовать передать данные на контроллер.