Tuo Cielo trafficmodels
English
     Категории
     Последние заметки
     Теги



     Архив
« Назад

      Посадочные фары.

      2012-11-23


    Как известно, Искусственный интеллект в симуляторе большим умом не блещет. Помимо всех остальных упрощений, самолеты зачем-то летают с включенным посадочным светом до высоты 10000 футов. Не знаю, как обстоят дела в странах загнивающего капитализма, а у нас выключение фар происходит гораздо раньше. Впрочем, с этим можно достаточно просто бороться. Например, на Ту-154 я сделал так, чтобы посадочные фары выключались на высоте 150 метров. Однако, отражение света фар, нарисованное на ночной текстуре выключается именно на десяти тысячах футов над уровнем моря. Казалось бы, ну и шут с ним, с отражением, можно и без него обойтись. Обычно для таких фар отражения не рисуют.

    Но некоторое время назад, мне пришла в голову идея, как заставить отражение работать вместе с фарами. Идея очень простая, все работает также, как фары. Мы берем кусочек фюзеляжа, там, где должно быть освещено, и помещаем сверху точно такой-же кусок меша, с точно таким-же мапингом и диффузом, но с нарисованным светом на ночной карте. Когда не нужно (когда фары не горят), этот меш просто становится невидим.

    На рисунке ниже показано, как я это сделал. Деталь 1 - это меш с освещением, и он исчезает на высоте 150 метров над землей. Деталь 2 - это дополнительная деталь, которая появляется при включении посадочных фар (LIGHT LANDING) и освещения салона (LIGHT CABIN). Деталь 1 (потомок) прилинкована к детали 2 (родитель). Таким образом, вся эта конструкция появляется при включении фар, и исчезает на высоте 150 метров (когда фары выключаются). А благодаря параметру LIGHT CABIN, не появляется в светлое время суток, когда ночная текстура не включается (я попробовал сперва по- другому, и увидел, что днем эту деталь видно в некоторых ракурсах). Тут еще такой момент: эту поверхность нужно отодвигать достаточно далеко от поверхности фюзеляжа (где-то на на 3-4 сантиметра), иначе, при некоторых углах обзора, она начинает мерцать.

    Ниже показаны коды.

Код для детали 2:
<part>
  <name>puchok_dop</name>
    <visible_in_range>
      <parameter>
        <code>
          { (A:LIGHT LANDING, bool) (A:LIGHT CABIN, bool) if{ 20 } els{ 0 } * }
        </code>
      </parameter>
        <minvalue>1</minvalue>
    </visible_in_range>
</part>

Код для детали 1:
<part>
  <name>puchok</name>
    <visible_in_range>
      <parameter>
        <code>
          (A:RADIO HEIGHT, meters) 155 > if{ 20 } els{ 0 }
        </code>
      </parameter>
        <maxvalue>1</maxvalue>
    </visible_in_range>
</part>

    Две детали (и два кода) пришлось делать из-за того, что три параметра подряд (LIGHT LANDING, LIGHT CABIN и RADIO HEIGHT) не работают, а работают только два.

    Чтобы вся эта штука работала, надо найти соответствующий кусок текстуры. Поскольку свободного места там давно уже нету, я взял кусок мапинга с левой половины фюзеляжа, и перетащил его на правую (эти кусочки все равно симметричны). А в пустое место я вставил мапинг для нашей детали, которая будет светиться.

    После этого я настроил направленные источники света, согласно расположению фар:

    Попутно поставив фонарик для подсветки лого на хвосте:

    Когда результат меня устроил, я запёк получившийся свет в текстуру. Ниже показан кусочек получившегося результата, который потом будет вставлен в ночную карту.

    Теперь все работает как нужно. Текстура пока еще не дорисована, и поэтому свет от фар на крыле выглядит странно:

    У этого способа есть недостаток: нет рефлексов на боках фюзеляжа, которые от посадочных фар под крылом. А нет их потому, что поступать с боками также как с кусочком носа нельзя - правый и левый бок отличаются дверями, люками, расшивкой и, частенько, окраской. Напомню, что другой способ не предусматривает этих отражений вообще. Второй недостаток - теперь надо опять перекомпилировать все пятьдесят (или сколько их там у меня) модификаций.

  Теги:   Ту-154  XML  3D Max  
просмотров: 3810      

« Назад


      Комментарии

Комментариев нет


  Добавте свой комментарий
Пожалуйста, воздержитесь от оскорбительных и идиотских заявлений

Не нажимайте сюда      Это не спам