мови

Тема-значок Питання Gpws не працює на будь-якому літаку

більше
2 років 2 місяців тому # 760 by aamalk

Я долучився навколо 5 додати на літаках, які сказали, що це gpws, але я не чую щось, коли я landing.do потрібно включити його де-небудь, або він працює автоматично?

будь ласка Увійти or Створити аккаунт приєднатися до розмови.

більше
1 рік 9 місяців тому - 1 рік 9 місяців тому # 937 by DRCW

повне г, повне г,, показали, від, номер, XNUMX FSX звукові файли активуються за допомогою dll-файлів, а бітова версія 64 активує їх за допомогою XML. Якщо ви сміливі, можете конвертувати ці файли в xml
Датчик: dsd_fsx_xml_sound.gau
Хоча його назва стосується FSX, цей показник також буде працювати в FS2004. Він базується на dsd_xml_sound3.gau.

Синтаксис Panel.cfg
gauge10 = dsd_fsx_xml_sound! Звук, 2,2,2,2,. / датчики / dsd_xml_sound.ini
gauge11 = dsd_fsx_xml_sound! налагоджувач, 420,550,600,80

Найважливішою зміною функції калібрування є спосіб, у який він обробляє налаштування гучності. Попередні версії датчика використовували діапазон від 0 до 100, щоб отримати / встановити рівні гучності. Я змінив цей діапазон на діапазон, який використовується DirectSound, -10000 (представляє дуже, дуже тихо) до 0 (представляє повний обсяг). Якщо ця зміна призведе до виникнення проблем з існуючим кодом, ви можете встановити змінну (L: Old Volume Control), щоб примусово повернути датчик до старого методу обробки налаштувань гучності. Дивись нижче.

Для тих, хто не використовував попередні версії датчика, кожен звук контролюється окремим XML L: Variable (далі - LVar). Ви керуєте звуком, встановлюючи керуючу змінну (LVar) на значення, яке відповідає до потрібної дії. Ви призначаєте LVars звукам, використовуючи файл конфігурації. Вкажіть файл конфігурації в panel.cfg, як п'ятий параметр елемента калібрувального звуку - див. При оцінці наведеного рядка конфігураційного файлу датчик буде дотримуватися наступних методів:

1. Ви вказуєте відносний шлях, починаючи його з "крапкою" - див. Приклад синтаксису вище. Ця точка ефективно закріплює нас в основній теці FS. У наведеному вище прикладі файл .ini знаходиться в основній теці FS-датчиків, і він називається dsd_xml_sound.ini. Ви не обмежені папкою FS-датчиків, ви можете вказати будь-яку папку, яка вам подобається Ваш єдиний виклик полягає в тому, щоб кінцевий користувач мав папку, яку ви вказали в їхній папці FS. Це метод, використаний попередніми варіантами вимірювання звуку.

2. Крім того, ви можете побудувати абсолютний шлях до вашого конфігураційного файлу. Датчик буде шукати своє власне ім'я. Забираючи назву самого датчика, ми залишаємо шлях до певної папки, де встановлено датчик. Для цього імені шляху ви додасте певну папку та ім'я файлу для вашого конфігураційного файлу. Наприклад, мій звичайний тестовий літак встановлюється в папку:
D: \fsx\ Літак \ b777_300
Встановлення датчика в папці панелі і, таким чином, зазначення файлу конфігурації:
gauge37 = dsd_fsx_xml_sound! Звук, 2,2,2,2, \ dsd_fsx_test_sound.ini
призведе до специфікації конфігурації
D: \fsx\ Літак \ b777_300 \ панель \ dsd_fsx_test_sound.ini - розміщення файлу конфігурації у папці панелі літака із звукоміром
Зверніть увагу, що за допомогою цього методу на початку панелі параметрів panel.cfg не існує "точки", але рядок починається з символу / або. Датчик буде обробляти символи / і еквівалентно.

3. Якщо датчик не знаходить точку або косу риску на початку рядка параметрів, він шукатиме рядок для символу двокрапки ":" Якщо він знайде його, він вважатиме, що ви надали повний шлях, включаючи букву диска, до конфігураційного файлу і спробує завантажити його без будь-яких коригувань.
Я не рекомендую цей підхід для іншого, окрім приватного використання на власному комп’ютері. Вказівка ​​рядка конфігураційного файла типу "D: \fsx\ gauges \ sound_config.ini ”задає проблеми, якщо ви розповсюджуєте панель. Ми дійсно не знаємо, де кінцевий користувач встановив FS.

4. Якщо датчик не знайде символ ":", він припускає, що ви намагаєтеся вказати шлях таким же чином, як і в процедурі 2, вище. Вона буде додавати рядок параметрів до шляху, з якого завантажується датчик, забезпечуючи при цьому необхідний символ. Перебуваючи на прикладі мого тестового літака, з датчиком, завантаженим з папки панелі, надаючи рядок конфігураційного файлу так:
gauge37 = dsd_fsx_xml_sound! Звук, 2,2,2,2, панель_звуків \ dsd_fsx_test_sound.ini
призведе до специфікації конфігурації
D: \fsx\ Літак \ b777_300 \ панель \ панель_звуків \ dsd_fsx_test_sound.ini

5. Файл налаштування за замовчуванням. Якщо не вказано жодного конфігураційного файлу, або якщо датчик не може знайти вказаний файл, він буде використовувати ім'я за замовчуванням. Датчик буде шукати своє власне ім'я (у випадку, якщо ви або кінцевий користувач його перейменували), витягніть розширення файлу “.gau” і додайте “.ini” Файл налаштування за замовчуванням знаходиться в тій же папці, датчик з такою ж назвою бази. Цей метод має зменшити вимогу вказувати файл конфігурації у багатьох випадках. Зауважте, що якщо датчик використовує типовий параметр, оскільки ви не вказали файл конфігурації, він просто зробить це без додаткових труднощів. Однак, якщо він використовує типовий параметр, оскільки він не може знайти вказаний вами файл, він з'явиться у вікні повідомлень Windows, у якому вам буде повідомлено про це.

Створення конфігураційного файлу
Файл конфігурації використовується для ряду речей. Найважливішим з них є встановлення з'єднання між звуками, які ви хочете відтворити, і лаварами, які ви будете використовувати для керування цими звуками. Якщо ви подивитеся на приклад перегляду файлу .ini у кінці цього документа, ви побачите, що він містить три заголовки розділів. Один з них позначений як [Звуки], а другий позначений як [LVars]. Кожен має список нумерованих записів. Нумерація - це спосіб встановлення зв'язку між звуком і LVar. Зверніть увагу, що це єдине значення для нумерації записів. Звук при вході Sound00 поєднується з LVar на Lvar00, звук при вході Sound01 поєднується з LVar на Lvar01 і т.д.

Як ви, можливо, вже зібралися до цього моменту, вказавши в конфігураційному файлі LVars, ви просто надасте назву. Ви не додаєте “L:” на початку, або “, номер” в кінці. Це не має нічого спільного з тим, як ви отримаєте доступ до змінних у XML, це стосується лише того, як датчик C / C ++ працює з цими змінними.

Коли ви створюєте записи для самих звуків у вашому конфігураційному файлі, ви можете, якщо хочете, вказати том, який буде застосовано до звуку, коли він завантажується. Див. Перші два звукові записи у прикладі .ini нижче. Ця опція корисна, якщо ви або кінцевий користувач вашого продукту відчуєте певний звук або звуки, як записано, занадто голосно. Ви можете вказати обсяг, який буде використовуватися, і, отже, не треба турбуватися про встановлення його в межах датчика. Визначення налаштування гучності таким чином не перешкодить вам пізніше змінити рівень гучності.

Коли ви вказуєте звуки в конфігураційному файлі, датчик буде дотримуватися тих самих протоколів для вказівки імен звуків, як і для вказівки імені файлу конфігурації. Ви можете використовувати відносний шлях (починаючи з "крапки" і посилаючись на папку в дереві папок FS), або можете побудувати абсолютний шлях, використовуючи шлях до файлу конфігурації як базовий (вказавши / \ t перший символ рядка параметрів, або перерахування папки та файлу без провідної косої риси.) Див. першу установку звуку у зразку .ini файлу нижче. Вона вказує папку з назвою PanelSounds, розташовану в папці, де знаходиться файл конфігурації, як розташування звукового файлу.
Датчик не перевірятиме окремі звукові назви під час вимірювання навантаження. Тим не менш, він буде використовувати вікно повідомлення Windows, щоб сповістити користувача, що певний звук не може бути знайдений, коли робиться спроба відтворення звуку.

Параметри третьої групи [Config] розглядаються пізніше.

Робота зі звуками
Щоб керувати певним звуком, потрібно лише встановити його відповідний LVar на значення, вказане нижче для потрібної дії:
1 (> L: SomeXMLControlVar, число) відтворюватиме звук один раз, без змін у налаштуваннях гучності або панорамування.
0 (> L: SomeOtherXMLControlVar, число) зупинить звук, якщо він відтворюється.
8 (> L: YetAnotherXMLControlVar, number) спочатку отримає поточні налаштування обсягу та панорамування. Потім вони будуть застосовані до звуку, про який йде мова, і, нарешті, з початком відтворення звуку в циклічному режимі.

Змінні контрольні датчики можуть використовувати такі значення:
0 - зупинка звуку
1 - відтворення звуку один раз, не змінюючи існуючих налаштувань гучності або панорамування.
2 - Відтворення звуку як цикл, без зміни існуючих параметрів гучності або панорамування.
3 - Встановіть гучність звуку, використовуючи налаштування, знайдені у вказаній змінної VolumeIn, див. Нижче.
4 - Отримати поточну настройку гучності звуку, розмістивши його у вказаній змінної VolumeOut.
5 - Встановлює панорамування звуку, використовуючи налаштування, знайдені у вказаній змінної PanIn.
6 - Отримати поточні налаштування панорамування звуку, помістивши його у вказану змінну PanOut.
7 - відтворення звуку один раз, але спочатку встановіть гучність і панорамування до параметрів, знайдених у змінних VolumeIn і PanIn.
8 - відтворення звуку у вигляді циклу, але спочатку встановіть гучність і панорамування до параметрів, знайдених у змінних VolumeIn і PanIn.
9 - Отримати стан циклічного відтворення звуку. Повернеться 1, якщо звук відтворення циклічний, 0, якщо звук в режимі відтворення один раз або взагалі не відтворюється.
10 - Вивантаження звуку. Звуки автоматично вивантажуватимуться на виході з датчика, але якщо звуковий файл великий, і ви закінчили з ним, ви можете негайно вивантажити його і відновити пам'ять. Ця команда також може бути корисною під час тестування. Ви можете вносити зміни в звук і перезавантажувати його, не перезавантажуючи всю панель.
11 - завантаження звуку за допомогою голосового пристрою Windows. За замовчуванням датчик буде використовувати звуковий пристрій Windows для відтворення звуків. Якщо ви хочете використовувати голосовий пристрій Windows (зазвичай це друга звукова карта або USB-пристрій звуку), ви можете використовувати значення 11 для завантаження звуку для відтворення на голосовому пристрої. Всі інші команди, якщо їм доводиться завантажувати звук перед виконанням власних функцій, завантажують звук для пристрою звуку Windows. Якщо ви хочете використовувати голосовий пристрій, вам потрібно буде скористатися цією командою, щоб спочатку завантажити звук, перш ніж робити з ним щось ще. Якщо голосовий пристрій буде таким самим пристроєм, що і звуковий пристрій, звук буде завантажено за допомогою доступного звукового пристрою. Якщо потрібно, щоб звук відтворювався через гарнітуру користувача, якщо він присутній, можна використовувати це значення. Якщо інший користувач не має гарнітури, той самий звук відтворюватиметься будь-яким звуковим пристроєм, який користувач має. До цього пакету входить утиліта, яка дозволить користувачеві чітко вказати звукові пристрої для використання датчика. Я очікую, що майже у всіх випадках ця утиліта не буде потрібна. Це буде потрібно лише тоді, коли користувач вважає, що значення за замовчуванням Windows не підходять для FS, але не бажає змінювати стандартні значення Windows.
12 - як 11 вище, але завантажує звук за допомогою звукового пристрою Windows.

У розділі Config файлу .ini можна встановити такі елементи. Всі вони показані з відповідними значеннями за замовчуванням.

MaxSounds = 10
Типовим є 10, але максимальний - 1000. (Так, ви читаєте це право!) Я не бачу, щоб хтось користувався багатьма, але пам'ять тепер виділяється динамічно, так що немає ніякої шкоди в дуже високій межі. Це дозволить спеціалізованим користувачам уникати завантаження більш ніж одного примірника датчика на одній панелі. Я бачив це. Збереження максимальної кількості звуків, які ви фактично використовуєте, дозволить мінімізувати використання процесора та пам'яті за допомогою датчика.

ErrorFlag = -1
У разі виникнення будь-якої помилки контрольна змінна датчика буде встановлена ​​на це значення. Типовим є -1. Ви можете вибрати будь-яке ціле значення, окрім діапазону від 1 до 99, який зарезервований для фактичних команд. У датчику тепер є декілька вбудованих вікон повідомлень Windows, які з'являться у разі помилки. Я сподіваюся, що єдиний, який ви побачите, буде виникати, якщо датчик не знайде звуковий файл, вказаний у файлі .ini. Щоб полегшити вирішення проблем, він повідомить користувача, який файл не був знайдений. Якщо виникла помилка, будь-які подальші зміни в контрольній змінній цього звуку будуть проігноровані. Інші звуки будуть оброблені.

GlobalCommands = DSDGlobals
Цю змінну можна встановити до значень 3.
1 - зупиняє всі поточні звуки.
2 - вимикає всі звуки. Вона встановлює їх обсяг до -10000, але не заважає їм реально грати.
3 - вмикає всі звуки, попередньо приглушені. Він відновлює попередньо збережені налаштування гучності.
У кожному випадку змінна буде скинута на 0.

VolumeVarIn = dsd_xml_sound_volume_in
Використовуйте цю змінну, щоб вказати параметр гучності для використання з командою SetVolume (3). Гучність визначається як значення між 0 (повний об'єм) і -10000 (затухання 100 db, нечутливо).

PanVarIn = dsd_xml_sound_pan_in
Використовуйте цю змінну для визначення параметрів панорамування для використання з командою SetPan (5). Панорамування задається як значення між -10000 (повне ліворуч) і 10000 (повне право). 0 по центру.

VolumeVarOut = dsd_xml_sound_volume_out
Використовуйте цю змінну для отримання налаштування обсягу, отриманого за допомогою команди GetVolume (4).

PanVarOut = dsd_xml_sound_pan_out
Використовуйте цю змінну для отримання налаштувань панорамування, отриманих за допомогою команди GetPan (6).

LoopOut = dsd_xml_sound_loop_out
Використовуйте цю змінну для отримання налаштування циклу, отриманого за допомогою команди Get Looping Status (9).

VolumePlayed = dsd_volume_played
Ця змінна автоматично отримає налаштування гучності, що використовується при видачі останньої звукової команди. Зауважте, що цей рівень гучності може більше не застосовуватися - він може бути змінений командою SetVolume.

PanPlayed = dsd_pan_played
Ця змінна автоматично отримає налаштування панорамування, яке використовується, коли була видана остання команда відтворення. Зауважте, що ця настройка панорамування може більше не застосовуватися - вона може бути змінена командою SetPan.

LoopPlayed = dsd_loop_played
Ця змінна автоматично отримає налаштування циклу, що використовується при видачі останньої команди відтворення.

Інші LVARS, імена не доступні для вибору:

FSSoundIsOn:
І в FS9, і в FSX, ця змінна поверне 1, якщо звуки FS активні, а 0 - якщо їх немає. Власні звуки датчика будуть відповідати статусу звуку FS - вони відключать звук, якщо звук FS вимкнено або якщо сим призупинено.

Старий контроль гучності:
Встановлюється. Якщо встановлено значення 1, датчик буде використовувати старий діапазон гучності 0 до 100, 100, що представляє повний об'єм, а 0 - повністю приглушений. Якщо встановлено значення 0, датчик буде використовувати фактичний діапазон DirectSound, який є -10000 для повністю приглушеного, до 0, який представляє повний обсяг. Зверніть увагу, що якщо в маніпуляторі зустрічаються позитивні значення для томів у розділі [Звуки] файлу .ini, то можна припустити, що ви хочете використовувати старий діапазон і відповідно встановите цю змінну. Для технічно схильних діапазон DirectSound представляє ослаблення в 100ths децибел, тому значення -10000 являє собою ослаблення децибел 100. Не змінюйте цю змінну, як тільки вона буде встановлена ​​- трапиться погане.

Голос: Доступно:
Ця змінна позначає, чи доступний окремий голосовий пристрій. Повертає 1, якщо в системі є окремі звукові та голосові пристрої Windows, і 0 інакше.

FSVersionMajor, FSVersionMinor, FSVersionBuild:
Ці змінні повертають детальну інформацію про версію Flight Simulator, на якій працює датчик.
FSVersionMajor повертає 9 для FS2004 і 10 для FSX. Поставляється в тому випадку, якщо ви хочете використовувати будь-який код, що стосується версії, у власних датчиках.

SimConnected:
FSX Тільки. Повертає 1, якщо було встановлено посилання на SimConnect і 0, якщо воно не було.

FSSimIsPaused:
Повертає 1, якщо моделювання призупинено, і 0, якщо це не так.

SoundIsMuted:
І в FS9, і в FSX, ця змінна поверне 1, якщо датчик вимкнув власні звуки та 0, якщо звуки не відключені.

UserMutedSounds
І в FS9, і в FSX, ця змінна поверне 1, якщо датчик XML відключив звуки, встановивши змінну GlobalCommands на значення 2. У той час як окремі звуки можна буде відключити, відрегулювавши їх рівень гучності, звуки не вимкнеться автоматично зі зміною змінної звуку або стану паузи. Вам потрібно буде вручну ввімкнути звук, встановивши змінну Global Commands на 3. Якщо звуки не були настільки приглушеними, змінна матиме значення нуля.

ViewSystemStatus:
FSX Тільки. Отримано через SimConnect.
0 - Зовнішній вигляд (spot).
1 - вигляд кокпіту 2D
Вид 2 - 3D VC
4 - Ортогональний (карта) вигляд
Повідомлення ViewSystem:
FSX Тільки. Значення за замовчуванням дорівнює нулю. Якщо встановлено ненульове значення, значення ViewSystemStatus вище буде опубліковано у вікні повідомлення Windows щоразу, коли воно змінюється. Очевидно, лише для експериментів.

Час дня:
Тільки FS2004. Повертає змінну Time of Day, в іншому випадку.

Приклад .ini:
За винятком перших двох записів у розділі [Звуки], наступний приклад ілюструє значення за замовчуванням, які датчик буде використовувати за відсутності вказаного користувачем значення, або за відсутності конфігураційного файлу взагалі. Перша запис звуку ілюструє специфікацію звуку, розташованого в папці з назвою PanelSounds, причому ця папка розташована в папці панелі літака. Перші два звукові записи показують специфікацію значення гучності, яке буде призначено звуку, коли воно спочатку завантажується датчиком. Перший і третій вказівки ілюструють специфікацію файлу в папці, в якій ця папка розташована в тій же папці, що й файл конфігурації.

[Налаштування]
MaxSounds = 10
GlobalCommands = DSDGlobals
VolumeVarIn = dsd_xml_sound_volume_in
PanVarIn = dsd_xml_sound_pan_in
VolumeVarOut = dsd_xml_sound_volume_out
PanVarOut = dsd_xml_sound_pan_out
LoopOut = dsd_xml_sound_loop_out
VolumePlayed = dsd_volume_played
PanPlayed = dsd_pan_played
LoopPlayed = dsd_loop_played

[Звуки]
Sound00 = Панельні звуки \ t
Звук: dsd_xml_01.wav, -01
Sound02 = Звук dsd dsd_xml_02.wav
Звук dsd_xml_03.wav
Звук dsd_xml_04.wav
Звук dsd_xml_05.wav
Звук dsd_xml_06.wav
Звук dsd_xml_07.wav
Звук dsd_xml_08.wav
Звук dsd_xml_09.wav
Звук dsd_xml_100.wav
Звук dsd_xml_999.wav

[LVars]
Lvar00 = dsd_fsx_sound_id_00
Lvar01 = dsd_fsx_sound_id_01
Lvar02 = dsd_fsx_sound_id_02
Lvar03 = dsd_fsx_sound_id_03
Lvar04 = dsd_fsx_sound_id_04
Lvar05 = dsd_fsx_sound_id_05
Lvar06 = dsd_fsx_sound_id_06
Lvar07 = dsd_fsx_sound_id_07
Lvar08 = dsd_fsx_sound_id_08
Lvar09 = dsd_fsx_sound_id_09
LVar100 = dsd_fsx_sound_id_100
LVar999 = dsd_fsx_sound_id_999

Останнє редагування: 1 рік 9 місяців тому DRCW.

будь ласка Увійти or Створити аккаунт приєднатися до розмови.

  • Не дозволено: щоб створити нову тему.
  • Не дозволено: відповісти.
  • Не дозволено: , щоб додати Файли.
  • Не дозволено: для редагування повідомлення.
Час створення сторінки: 0.153 секунд
мови