Jump to content

Archived

This topic is now archived and is closed to further replies.

Анархо-пилот

Настройка джойстика

Recommended Posts

Анархо-пилот

Доброго времени суток! Интересует вопрос: можно ли как-то уменьшить чувствительность определённых осей джойстика непосредственно через конфиг-файл Флайтгира? Дело в том, что реакция симулятора на небольшие колебания ручки джойстика сильно мешает при управлении лёгкими самолётами, а найти нормальную программу для настройки джойстика в Ubuntu мне не удалось. Во всех симуляторах, с которыми я имел дело до этого (MSFS9, MSFSX, Крылатые Хищники), нужная опция доступна в окне настроек устройств ввода. Сдесь же надо что-то самому думать. На скриншоте - конфигурация оси для элеронов. Можно ли вписать туда нечто, что уменьшит чувствительность? Заранее благодарю!

post-112246-0-58528800-1484409688_thumb.png

Share this post


Link to post
Share on other sites
AndyRadist

Настройка джойстика выполняется в xml файле Вашего джойстика, который находится в папке программы fgfs в подпапке Inputs. Ниже фрагмент кода, где чувствмтельность уменьшена в 4 раза вблизи нейтрали <factor type="double">0.25</factor> и в уменьшена в два раза при максимальном отклонении добавлением строки, которая указывает, во сколько раз увеличить чувствительность на краю <power type="int">2</power>. В результате вблизи нейтрали джойстик работает очень плавно и точно, но на предельных отклонениях позволяет делать довольно энергичные манёвры. Вы сами для себя на практике определите нужные параметры:

<?xml version="1.0"?>

<PropertyList>
  <name type="string">Logitech Logitech Force 3D Pro</name>
  <axis>
    <desc type="string">Aileron</desc>
    <binding>
      <command type="string">property-scale</command>
      <property type="string">/controls/flight/aileron</property>
      <factor type="double">0.25</factor>
      <power type="int">2</power>
      <offset type="double">0</offset>
    </binding>
  </axis>
  <axis n="1">
    <desc type="string">Elevator</desc>
    <binding>
      <command type="string">property-scale</command>
      <property type="string">/controls/flight/elevator</property>
      <factor type="double">-0.25</factor>
      <power type="int">2</power>
      <offset type="double">0</offset>
    </binding>
  </axis>
  <axis n="2">
    <desc type="string">Rudder</desc>
    <binding>
      <command type="string">property-scale</command>
      <property type="string">/controls/flight/rudder</property>
      <factor type="double">0.25</factor>
      <power type="int">2</power>
      <offset type="double">0</offset>
    </binding>
  </axis>

 

Share this post


Link to post
Share on other sites
Анархо-пилот

AndyRadist, добрый вечер и с наступающим Новым годом!

Вы не совсем правы относительно того, за что отвечают параметры <factor type="double">0.25</factor> и <power type="int">2</power>. Так, первый определяет отклонение органа управления при полном отклонении ручки джойстика, а второй - степенную зависимость отклонения органа управления от отклонения ручки джойстика. То есть в предложенной Вами конфигурации отклонение рулей имеет квадратичную зависимость от отклонения ручки (что действительно уменьшает чувствительность управления при малых отклонения и увеличивает при больших), а при полном отклонении джойстика управляющие поверхности отклоняются лишь на одну четверть. При <factor type="double">1</factor> и <power type="int">2</power> управление станет действительно комфортным; колебания джойстика мешать не будут.

Я нашёл другое решение: использование стандартной конфигурации джойстика, которая для моей модели имеется. Её xml-файл находится в корне установки FlightGear в папке Input. Разработчики симулятора предлагают следующую настройку для осей:

<?xml version="1.0"?>

<PropertyList>
  <name type="string">Logitech Logitech Extreme 3D</name>
<axis n="0">
  <desc>Aileron</desc>
  <binding>
   <command>property-scale</command>
   <property>/controls/flight/aileron</property>
   <squared type="bool">true</squared>
  </binding>
 </axis>

 <axis n="1">
  <desc>Elevator</desc>
  <binding>
   <command>property-scale</command>
   <property>/controls/flight/elevator</property>
   <factor type="double">-1.0</factor>
   <squared type="bool">true</squared>
  </binding>
 </axis>

 <axis>
  <desc>Rudder</desc>
  <number>
   <unix>2</unix>
   <windows>3</windows>
   <mac>2</mac>
  </number>
  <binding>
   <command>property-scale</command>
   <property>/controls/flight/rudder</property>
   <factor type="double">1.0</factor>
  </binding>
 </axis>

 

Команда <squared type="bool">true</squared> тоже отвечает за квадратичную зависимость отклонения рулей от ручки. Причём для руля направления её почему-то не добавили. Проблема в том, что после любого изменения конфигурации джойстика через диалоговое окно симулятора, конфигурации осей сбрасываются на линейные, как на моём первом скриншоте. Я предпочитаю настраивать кнопки на свой вкус, поэтому после назначения кнопок в окне симулятора пришлось копировать часть xml-кода, отвечающую за оси, из исходного файла (который в корне установки FlightGear) в пользовательский (который в папке fgfs).

В любом случае большое спасибо за то, что помогли окончательно разобраться в значении команд xml-файла и поставить точку в вопросе настройки джойстика!

Share this post


Link to post
Share on other sites

×
×
  • Create New...