# Настройка Environment

## Light <a href="#id-8m360baq3x7q" id="id-8m360baq3x7q"></a>

### Параметры блока light

<figure><img src="/files/Zi4Mwp1WWpLMnzfGjHRl" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="265">Параметр</th><th width="353">Описание</th><th>Примечание</th></tr></thead><tbody><tr><td><code>direction</code></td><td>Направление, откуда светит Солнце</td><td></td></tr><tr><td><code>ambient</code></td><td>Цвет рассеянного света</td><td>Параметр только для <strong>Phong</strong> </td></tr><tr><td><code>ambient_intensity</code></td><td>Яркость рассеянного света</td><td>Параметр только для <strong>Phong</strong></td></tr><tr><td><code>diffuse</code></td><td>Цвет света от Солнца</td><td></td></tr><tr><td><code>diffuse_intensity</code></td><td>Яркость света от Солнца</td><td></td></tr><tr><td><code>specular_intensity</code></td><td>Яркость бликов</td><td></td></tr><tr><td><code>environment_intensity</code></td><td>Яркость освещения от неба</td><td>Параметр только для <strong>PBR</strong></td></tr><tr><td><code>lights_intensity</code></td><td>Множитель интенсивности для локальных источников света</td><td></td></tr><tr><td><code>envmap_amount</code></td><td>Яркость освещения от неба в некоторых схемах</td><td></td></tr><tr><td><code>night</code></td><td>День или ночь для геймплея</td><td></td></tr><tr><td><code>night_vision</code></td><td>Множитель дальности обзора ночью для солдат</td><td></td></tr><tr><td><code>color_saturation</code></td><td><p>Насыщенность цвета принимает значения  [0..2]: </p><ul><li>0 - серое;</li><li>1 - нормальное; </li><li>2 - пересвеченная яркость.</li></ul></td><td></td></tr><tr><td><code>fx_additive_intensity</code></td><td>Яркость для аддитивных спецэффектов</td><td></td></tr><tr><td><code>fx_blend_intensity</code></td><td>Яркость для <strong>blend-</strong>спецэффектов</td><td></td></tr></tbody></table>

{% hint style="warning" %}
Солнце на текстуре неба и направление света должны совпадать. \
Расположение Солнца регулируется в блоке `sky` с помощью параметра `relative_rotation`
{% endhint %}

### Highlight параметры подсветки юнитов  <a href="#id-5efjhn50elrg" id="id-5efjhn50elrg"></a>

Используется для выделения активных юнитов на карте - своих / чужих / союзников, чтобы их было хорошо видно на карте.

Выделение юнитов работает путем подмены настроек основного источника света (Солнца)  и добавления дополнительного освещения

* плюсы: юниты хорошо видно на карте
* минусы: ломает нормальное освещение

#### Опция `Highlight units` в настройках игры <a href="#amlh5aw4jevg" id="amlh5aw4jevg"></a>

Выделение юнитов включается/выключается в Настройках игры \[Options].

Вкладка Игра \[Game], опция Подсветка юнитов \[Highlight units]

![](/files/wxq9KKF2Il1PmqYxMzB5)

#### Параметры Highlight в пресете освещения <a href="#wfoc3elomg0z" id="wfoc3elomg0z"></a>

<figure><img src="/files/0MpKYOgNiq6PIVVK6dKp" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Параметры, которые не работают для  [PBR](/documentation/gem-rts-v1-ru/tekstury-i-materialy/physically-based-rendering/osnovnye-parametry-v-pbr.md):

* `ambient_bounced`&#x20;
* `rim_intensity`
* `rim_glossiness`
  {% endhint %}

<table><thead><tr><th width="260">Параметр</th><th width="399">Описание</th><th>Диапазон значений</th></tr></thead><tbody><tr><td><code>brightness</code></td><td><p>Используется для вычисления <code>ambient</code>/<code>diffuse</code> в новом источнике освещения для подсветки юнитов. <br>Значения базовых цветов берутся из параметров:</p><p><code>light/ambient</code> и <code>light/diffuse</code></p></td><td>[0..100]</td></tr><tr><td><code>ambient_bounced</code></td><td>Свет идет снизу и сбоков. <br>Базовый цвет - <code>light/ambient</code></td><td>[0..100]</td></tr><tr><td><code>rim_intensity</code></td><td>Яркость света перпендикулярного направлению камеры, чтобы показать контуры объекта</td><td>[0..1]</td></tr><tr><td><code>rim_glossiness</code></td><td>Насколько пятно подсветки собрано или расплывчато на краях</td><td>[0..1]</td></tr><tr><td><code>highlight_brightness</code></td><td>Новый ambient при наведении курсора на юнит. <br>Базовый цвет - <code>light/ambient</code></td><td>[0..100]</td></tr></tbody></table>

Диапазоны значений параметров яркости `brightness`, `ambient_bounced`, `highlight_brightness`:

<table><thead><tr><th width="211">Диапазон значений</th><th>Описание</th></tr></thead><tbody><tr><td>0</td><td>Черный</td></tr><tr><td>1...49</td><td>Переход от черного к базовому цвету</td></tr><tr><td>50</td><td>Базовый цвет</td></tr><tr><td>51...99</td><td>Переход от базового цвета к белому</td></tr><tr><td>100</td><td>Белый цвет</td></tr></tbody></table>

## Sky <a href="#ertci1veebzg" id="ertci1veebzg"></a>

Блок параметров для настройки неба.

<figure><img src="/files/RU7sSgHOD450CtVRYmSU" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Расположение Солнца на текстуре неба и направление света должны соответствовать
{% endhint %}

<table><thead><tr><th width="270">Параметр</th><th width="248">Описание</th><th>Примечание</th></tr></thead><tbody><tr><td><code>enable</code></td><td>Включено/выключено</td><td></td></tr><tr><td><code>mesh</code></td><td>Модель неба. <br><br>Можно использовать разные модели, но рекомендовано использовать модель неба <code>sky_farspace</code></td><td><p>В модели <code>sky_farspace</code><strong>:</strong> </p><ul><li>альфа используется для плавного перехода в <code>haze</code>;</li><li>параметры из материала неба выводятся в блок sky;</li><li>второй набор UV можно использовать для облаков.</li></ul></td></tr><tr><td><code>color</code></td><td>Цвет для подкраски текстуры неба</td><td>По умолчанию выставлен white</td></tr><tr><td><code>global_environment</code></td><td>Основная текстура неба</td><td></td></tr><tr><td><code>relative_rotation</code></td><td>Вращение неба в радианах</td><td></td></tr><tr><td><code>sky</code></td><td></td><td>Менять значение этого параметра не надо</td></tr><tr><td>textures/<code>clouds_mask</code></td><td>Маска для плавного ухода облаков в нулевую видимость</td><td>Желательно делать текстуру в формате RF16, чтобы не было banding. Маска хорошо работает, рекомендовано ее не менять</td></tr><tr><td>textures/<code>clouds</code></td><td>Текстура плывущих по небу облаков</td><td></td></tr><tr><td><code>clouds_scale</code></td><td>Масштаб облаков</td><td></td></tr><tr><td><code>clouds_pan_y</code><br><code>clouds_pan_x</code></td><td>Скорость движения облаков по небу по разным осям</td><td></td></tr><tr><td><code>clouds_opacity</code></td><td>Плотность облаков</td><td>[0..1]</td></tr><tr><td><code>clouds_opacity2</code></td><td>Плотность облаков</td><td>[0..1]</td></tr><tr><td><code>clouds_color</code></td><td>Подкраска облаков</td><td></td></tr><tr><td><code>clouds_color_luminosity</code></td><td>Яркость облаков</td><td></td></tr><tr><td><code>environment_luminosity</code></td><td>Множитель яркости неба</td><td></td></tr><tr><td><code>tone</code></td><td>Общая подкраска неба и облаков</td><td></td></tr><tr><td><code>tone_luminosity</code></td><td>Общий множитель яркости для неба и облаков</td><td></td></tr><tr><td><code>global_luminosity</code></td><td>Общий множитель яркости неба и облаков</td><td></td></tr><tr><td><code>haze_falloff_start</code></td><td>Начало наложения тумана по нижней границы неба</td><td></td></tr><tr><td><code>haze_falloff_end</code></td><td>Конец наложения тумана по нижней границы неба</td><td></td></tr><tr><td><code>haze_falloff_power</code></td><td>Интенсивность тумана</td><td></td></tr></tbody></table>

{% hint style="info" %}
Чтобы цвет не деградировал в белый или серый, его яркости должны быть в широком диапазоне. Для этого используются HDR текстуры для неба.&#x20;
{% endhint %}

{% hint style="info" %}
Регулировать яркость неба можно параметром `global_luminosity` или изменением яркости на самой текстуре.
{% endhint %}

Рекомендуемые диапазоны для HDR-тектур  неба:

* Яркие участки - \[1,0..2,0];
* Tемные - \[0,001..0,01]

Инструмент для конвертирования HDRI текстур в cubemap версии: [HDRI to CubeMap](https://matheowis.github.io/HDRI-to-CubeMap/).

## Настройка погодных условий <a href="#id-7gwtwquhswyq" id="id-7gwtwquhswyq"></a>

<figure><img src="/files/6SnzJTI7Lwdn1fYLTUoe" alt=""><figcaption></figcaption></figure>

### Wind <a href="#id-7gwtwquhswyq" id="id-7gwtwquhswyq"></a>

Создание эффекта ветра в игре.

**Параметры ветра:**

<table data-header-hidden><thead><tr><th width="166">Параметр</th><th>Описание</th></tr></thead><tbody><tr><td><code>direction</code></td><td>Направление ветра.<br>Влияет на направление проигрывания спецэффектов [vfx] и направление раскачивания деревьев.</td></tr><tr><td>power</td><td><p>Сила ветра по <a href="https://ru.wikipedia.org/wiki/Шкала_Бофорта">шкале Бофорта</a>:</p><ul><li>0 - нет ветра (штиль);</li><li>10 - шторм.</li></ul></td></tr></tbody></table>

### Haze <a href="#fslvkduo5tqr" id="fslvkduo5tqr"></a>

Создает эффект затуманивания на краях видимости.\
Используется для скрытия объектов за пределами дальности видимости объектов и на краях карты

**Параметры тумана:**

<table data-header-hidden><thead><tr><th width="194">Параметр</th><th>Описание</th></tr></thead><tbody><tr><td><code>enabled</code></td><td>Включен/выключен</td></tr><tr><td><code>color</code></td><td>Цвет тумана</td></tr><tr><td><code>intensity</code></td><td>Яркость тумана. <br>Используется также для HDR неба. <br>Во избежание свечения тумана, необходимо уменьшить значение этого параметра</td></tr><tr><td><code>start</code></td><td>Начало тумана, в игровых единицах</td></tr><tr><td><code>end</code></td><td>Максимальная насыщенность тумана, в игровых единицах</td></tr></tbody></table>

### Weather

Включает погодные эффекты - снег или дождь.

**Параметры погоды:**

<table data-header-hidden><thead><tr><th width="156">Параметр</th><th>Описание</th></tr></thead><tbody><tr><td><code>enable</code></td><td>Флажок включает/выключает проигрывание погодных условий</td></tr><tr><td><code>density</code></td><td>Плотность эффектов</td></tr><tr><td><code>rain</code></td><td>Признак дождя</td></tr><tr><td><code>fx</code></td><td>Какой спецэффект показывать</td></tr><tr><td><code>sound</code></td><td>Выбор звукого эффекта [sfx], поддерживающий атмосферные явления дождя или снега</td></tr></tbody></table>

### Thunder

Гром и молния.

**Параметры грома и молнии:**

<table data-header-hidden><thead><tr><th width="162">Параметр</th><th>Описание</th></tr></thead><tbody><tr><td><code>enable</code></td><td>Включен/выключен</td></tr><tr><td><code>interval</code></td><td>Диапазондля случайного выбора времени молнии и грома,  в секундах </td></tr><tr><td><code>color</code></td><td>Цвет молнии</td></tr><tr><td><code>sound</code></td><td>Звук, который будет проигрываться после удара молнии</td></tr></tbody></table>

## Дополнительные визуальные эффекты

### Video Overlay

Наложение видео поверх картинки.

<table data-header-hidden><thead><tr><th width="167">Параметр</th><th>Описание</th></tr></thead><tbody><tr><td><code>enable</code></td><td>Включен/выключен</td></tr><tr><td><code>file</code></td><td>Ссылка на файл видео, которое необходимо наложить</td></tr><tr><td><code>color</code></td><td>Цвет подкраски видео</td></tr></tbody></table>

### Lens Flare

Эффекты от солнца в линзах.

<table data-header-hidden><thead><tr><th width="170">Параметр</th><th>Описание</th></tr></thead><tbody><tr><td><code>enable</code></td><td>Включен/выключен</td></tr><tr><td><code>preset</code></td><td>Имя конфига со спрайтами, находящимися в папке <code>resource\set\lens_flare</code></td></tr><tr><td><code>brightness</code></td><td>Яркость эффекта</td></tr><tr><td>attenuation</td><td>Параметр не используется</td></tr><tr><td><code>fade</code></td><td>Время проявления эффекта при попадании солнечных лучей в экран и исчезновения эффекта, когда солнце пропадает с экрана.</td></tr></tbody></table>

## Post process <a href="#wn1ze7bhvy5m" id="wn1ze7bhvy5m"></a>

<figure><img src="/files/3KFAYjMjJy7d2rDT14os" alt=""><figcaption><p>Список блоков для настройки постпроцессов</p></figcaption></figure>

Постпроцессы в освещении  – это эффекты и техники, которые применяются после основного рендеринга сцены, чтобы улучшить визуальное качество освещения, добавить реалистичности и стилизовать изображение.&#x20;

### Eye adaptation <a href="#sawncv28nqfd" id="sawncv28nqfd"></a>

Автоматическая подстройка яркости по картинке

<figure><img src="/files/CqU9lIudUB4RGgmDZZZi" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="257">Параметр</th><th>Описание</th><th>Примечание</th></tr></thead><tbody><tr><td><code>enabled</code></td><td>Включена</td><td></td></tr><tr><td><code>target_exposure</code></td><td>Увеличение / уменьшение яркости картинки перед наложением tonemapping кривой</td><td></td></tr><tr><td><code>exposure_min</code></td><td>Минимальное значение экспозиции, ниже которого яркость изображения не будет уменьшаться. </td><td>Позволяет сохранить темные сцены действительно темными</td></tr><tr><td><code>exposure_max</code></td><td>Максимальное значение экспозиции, выше которого яркость изображения не будет увеличиваться. <br>Помогает избежать пересвета и потери деталей в ярких сценах</td><td>Можно использовать для создания эффектов, когда сцена должна быть очень яркой, но контролируемо-яркой</td></tr><tr><td><code>rate</code></td><td>Скорость адаптации по яркости</td><td></td></tr><tr><td><code>fix_exposure</code></td><td>Игнорировать данные яркости картинки для вычисления экспозиции</td><td></td></tr><tr><td><code>fix_whitepoint</code></td><td>Игнорировать данные яркости картинки для вычисления точки белого</td><td>Не работает с ACES tonemapper</td></tr></tbody></table>

{% hint style="info" %}
Параметры `exposure_min` и `exposure_max` используются для управления диапазоном яркости сцены при автоматической адаптации экспозиции (`eye_adaptation`). \
Эти параметры помогают поддерживать визуальную целостность сцены в различных условиях освещения.
{% endhint %}

### Tone Mapping

**Tone Mapping** — это процесс преобразования диапазона яркостей HDR к LDR диапазону^ для корректного отображения изображений на стандартных экранах. \
HDR изображения содержат более широкий диапазон светлых и темных значений, чем могут воспроизвести обычные дисплеи. Tone Mapping помогает сохранить детали и контраст изображений при отображении на экране.

<figure><img src="/files/NrFfH4e2sMApMGT2XHGG" alt=""><figcaption></figcaption></figure>

| Параметр  | Описание                                                                                                                                                                   | Примечание                                                                                                           |
| --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `enabled` | Включает или выключает использование tonemapper                                                                                                                            | Если выключить, то tonemapper не будет использоваться - цвета в диапазоне \[0..1] будут напрямую выводиться на экран |
| `aces`    | <p>Включает стандартный <strong>ACES tonemapper,</strong> который эмулирует съёмку на киноплёнку. <br>В режиме <strong>ACES</strong> все параметры кривой игнорируются</p> | В пресетах освещения для  MoWII должен быть включен                                                                  |

{% hint style="info" %}
Как правило, добиться нужного эффекта можно с помощью настройки параметра `target_exposure` в блоке [eye\_adaptation](#sawncv28nqfd) или [LUT](#ucx5r13sq6e0)
{% endhint %}

При выключении флажка `aces` становятся доступны параметры ручной настройки **Tone Mapping**

![](/files/CKrRNbWgjdthYhGH5DZO)

**Расшифровка гистограммы:**

* `Toe` (хвост кривой) - нижний изгиб кривой;
* `Shoulder` (плечо) - верхний изгиб кривой;
* `Linear` (линейная часть) - прямая соединяющая `toe` и `shoulder`.

#### Параметры ручной настройки кривой tonemapper

| Параметр                            | Описание                                                                                  | Примечание                         |
| ----------------------------------- | ----------------------------------------------------------------------------------------- | ---------------------------------- |
| `white_point`                       | Интенсивность HDR сцены, которая соответствует белому цвету в результирующей LDR картинке |                                    |
| `linear_angle`                      | Наклон линейной части кривой                                                              | Контраст в средних тонах           |
| `shoulder_length`                   | Задаёт форму `shoulder`                                                                   | Контраст в светлых тонах           |
| `shoulder_strength`                 | Задаёт крутизну `shoulder`                                                                | Контраст в светлых тонах           |
| `toe_numerator` и `toe_denominator` | Задают форму `toe`                                                                        | Контраст в темных тонах            |
| `toe_strength`                      | Задаёт крутизну `toe`                                                                     | Регулирует контраст в темных тонах |

Влияние каждого из параметров на выходящую яркость пересекается. Например, если крутить параметр `toe`, то будет затронута и средняя часть кривой, если `shoulder_strength` - то вся кривая будет изменяться в большей или меньшей степени. Поэтому для настройки необходимо последовательно настраивать сразу ряд параметров (`white_point` **->** `linear_angle` **->** `shoulder` **->** `toe`).

В процессе настройки может возникнуть ситуация, когда промежуточные изменения параметров приводят к некорректному отображению изображения, что затрудняет оценку их влияния. \
Поэтому в редакторе была добавлена возможность отображения гистограммы, отображающей диапазон входящей яркости и функцию конвертации HDR в LDR. \
С её помощью можно смотреть, как влияют параметры на процесс тонемаппинга на промежуточных этапах настройки.&#x20;

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

#### Параметры консольных команд для гистограммы

<table><thead><tr><th width="311">Консольная команда</th><th width="169">Описание</th><th>Примечание</th></tr></thead><tbody><tr><td>v_hdrHistogramOn [0 | 1]</td><td>Выключает | Включает отображение гистограммы</td><td>По умолчанию 0</td></tr><tr><td>v_hdrHistogramLinearRange</td><td>Задаёт шкалу входящей яркости</td><td><p>Значения:</p><p>0 - линейная, <br>1 - десятичный логарифм.<br>По умолчанию выставлено значение 0.</p></td></tr><tr><td>v_hdrHistogramFixedLumRange</td><td>Максимальная входящая яркость</td><td>По умолчанию выставлено значение 0, что задаёт максимальную шкалу равной максимальной яркости сцены,  если адаптация включена. <br>Иначе необходимо задавать максимальную яркость сцены с помощью значения для этой команды.</td></tr><tr><td>v_hdrHistogramScaleBinHeight</td><td>Масштабирует высоту столбцов гистограммы</td><td>0 - без масштабирования</td></tr></tbody></table>

### Glare <a href="#pcn3hs1tjni2" id="pcn3hs1tjni2"></a>

Засветка вокруг ярких участков экрана

* `treshold` - порог яркости, выше которого появляется засветка
* `scale` - настройка мощности засветки

### Blue Shift <a href="#m8f1uv1hmlo9" id="m8f1uv1hmlo9"></a>

Картинка становится серой в неосвещенных местах, что полезно для ночных карт

* `enabled` - включить/ выключить
* `threshold` - порог яркости, при котором начинает действовать переход в серое

### Depth of field <a href="#id-45b62ddf83cy" id="id-45b62ddf83cy"></a>

Симуляция работы камеры.

<figure><img src="https://lh7-us.googleusercontent.com/tw_p8u3rP4L7Tq3jXGywCJu5-1I9_NB9__2vPtoNt8EERazIfkEKL1CFYmUZ8odLAB0kd-xVqxFEgQgDL33VuItpeh3qVB1c5ID94lW8T-9mAVcoO31OJkHFJiBgV2nydmq0-CWUeVviPriLbYACOg" alt=""><figcaption></figcaption></figure>

Описание параметров блока `depth_of_field`:

* `enable` - включен / выключен
* `focus` - расстояние от камеры до центра зоны фокуса
* `width` - ширина зоны фокуса
* `far` - расстояние от дальней границы зоны фокуса
* `near` - расстояние от ближней границы зоны фокуса

<figure><img src="/files/llotiBsyAN2VdTJJbweV" alt="" width="563"><figcaption></figcaption></figure>

### SSAO <a href="#qysrpbb2cxda" id="qysrpbb2cxda"></a>

SSAO сокращенно от screen space ambient occlusion. \
Эмуляция затеменения на стыках поверхностей

* `enable` - включен / выключен
* `standard` - стандартные параметры или расширенные

### LUT <a href="#ucx5r13sq6e0" id="ucx5r13sq6e0"></a>

Вместо модификаторов brightness, contrast, saturate, tone подстройка картинки реализуется текстурой.

Референсная текстура, которая при её использовании не изменяет цветов называется `lut_default.tga`

## Локальные источники света <a href="#nngtvcdxcni" id="nngtvcdxcni"></a>

{% hint style="info" %}
На яркость свечения локального источника влияет параметр глобального освещения `light_intensity`.  \
При рассчете результирующей яркости свечения локальных источников параметры яркости перемножаются.
{% endhint %}

**Параметры локального источника света:**

* `intensity` - задаёт яркость свечения в центре
* `radius` - насколько далеко светит
* `compression` - сжатие кривой затухания к центру
  * диапазон значений \[2..100], по умолчанию используется значение 2
  * <https://www.desmos.com/calculator/idd5vac3q0>

### Примеры кривых затухания <a href="#id-3zipoqod89vm" id="id-3zipoqod89vm"></a>

По оси x - нормированное от 0 до 1 расстояние до центра

По оси y - нормированная от 0 до 1 интенсивность

| <p><img src="/files/cDiMOXVLx6TY2JjZewuT" alt="" data-size="original"></p><p>compression = 2</p> | <p><img src="/files/bZMc0Hz6gL5snttvu1VH" alt="" data-size="original"></p><p>compression = 16</p> | <p><img src="/files/p9N1gl8x9qvd7zHjqOyK" alt="" data-size="original"></p><p>compression = 100</p> |
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bestway-1.gitbook.io/documentation/gem-rts-v1-ru/redaktor/redaktor-okruzheniya/nastroi-ka-environment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
