# Редактор cпецэффектов

## Введение

**Редактор спецэффектов** в Gem RTS является встроенным инструментом для создания,  настройки и модификации спецэффектов для игр, разработанных на этом движке.&#x20;

**Инструментарий Редактора спецэффектов** обеспечивает интуитивно понятное  проектирование спецэффектов с помощью системы блоков-шаблонов, позволяя разработчикам легко добавлять и настраивать параметры поведения элементов спецэффектов на основе:

* частиц и их физических свойств;
* спрайтов;
* декалей;
* световых эффектов;
* звукового сопровождения.

Возможность обновления  спецэффектов в реальном времени делает редактор спецэффектов неотъемлемой частью процесса разработки игр, позволяя создавать более реалистичные и красочные сцены, в зависимости от целей проекта.

{% hint style="info" %}
Список существующих в проекте спецэффектов можно изучить в разделе **fx** списка пресетов объектов на вкладке **entity** в редакторе карт или редакторе миссий.
{% endhint %}

### Каталог категорий спецэффектов

<figure><img src="/files/xGglLcfWyIDtxKef5fSc" alt="" width="563"><figcaption><p>Папка существующих спецэффектов</p></figcaption></figure>

{% hint style="info" %}
Систематитизация спецэффектов по категориям не несет никакой функциональности и служит исключительно целям упорядочивания эффектов для облегчения поиска нужного эффекта.
{% endhint %}

<table><thead><tr><th width="145">Категория</th><th>Описание</th></tr></thead><tbody><tr><td> сommon</td><td>Общая</td></tr><tr><td>detonation</td><td>Эффекты, сопровождающиеся детонацией</td></tr><tr><td>dust</td><td>Эффекты пыли. <br>Обычно используются для спавна пыли при разрушениях строений и при движении юнитов по соответствующим типам территорий</td></tr><tr><td>flash</td><td><p>Эффекты, сопровождающиеся вспышкой света:</p><ul><li>эффекты, сопровождающие выстрелы</li><li>эффекты электрической сварки</li><li>стопсигналы</li></ul></td></tr><tr><td>hit</td><td>Эффекты попаданий</td></tr><tr><td>light</td><td>Эффекты для объектов, которые светят: фары, лампы, фонари, факелы</td></tr><tr><td>smoke</td><td>Эффекты дыма и открытого огня</td></tr><tr><td>water</td><td>эффекты для поверхности воды</td></tr><tr><td>weapon</td><td>специфические эффекты для разных видов оружия</td></tr></tbody></table>

{% hint style="info" %}
Большинство пресетов спецэффектов используются для спавна эффектов  непосредственно во время игры игровым движком или скриптами миссий.

Если в списке свойств объекта выбранного спецэффекта отсутствует параметр **storeable**, то данный пресет спецэффекта не предназначен для выставления в качестве объекта антуража на карте или в миссии.&#x20;
{% endhint %}

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

## Запуск Редактора спецэффектов

Запуск **Редактора спецэффектов** осуществляется по нажатию клавиши **F4** из активного окна [Редактора карт](/documentation/gem-rts-v1-ru/redaktor/redaktor-kart.md) или [Редактора миссий](/documentation/gem-rts-v1-ru/redaktor/redaktor-missii.md). \
Это позволяет разработчикам эффективно переключаться между редактированием карт или миссий и настройкой спецэффектов, что значительно ускоряет процесс разработки и тестирования, и позволяет точнее адаптировать спецэффекты к игровым сценариям.

## Элементы окна редактора спецэффектов

<figure><img src="/files/Mm623VlVQlt3S7cF7NAK" alt=""><figcaption><p>Элементы окна редактора спецэффектов</p></figcaption></figure>

1. Меню основных функций (New, Open, Save, Save as)
2. Рабочая область редактора спецэффектов
3. Refresh - кнопка обновления визуализации спецэффекта
4. Инструмент настройки размеров рабочей области &#x20;

## **Контекстное меню редактора спецэффектов**

Наполнение и редактирование тела спецэффекта происходит с помощью контекстного меню. \
Контекстное меню открывается по клику ПКМ на нужном элементе спецэффекта и отображает доступные команды и опции, связанные с выбранным элементом или контекстом работы с ним.

Контекстное меню состоит из блоков и доступных команд работы с блоками.

### Команды контекстного меню

Список доступных команд также зависит от выбранного элемента. \
В таблице представлен полный набор команд:

<table><thead><tr><th width="125">Действие</th><th width="456">Описание</th><th>Клавиша</th></tr></thead><tbody><tr><td>Add inside</td><td>Добавить новый блок или элемент внутрь текущего блока</td><td>ALT + INSERT</td></tr><tr><td>Copy</td><td>Копировать текущий выбранный блок</td><td>ALT + C</td></tr><tr><td>Delete</td><td>Удалить текущий выбранный блок</td><td>DELETE</td></tr><tr><td>Up</td><td>Переместить выбранный блок вверх в иерархии</td><td>ALT + UP</td></tr><tr><td>Down</td><td>Переместить выбранный блок вниз в иерархии</td><td>ALT + DOWN</td></tr><tr><td>Turn on</td><td>Включить выбранный блок</td><td></td></tr><tr><td>Turn off</td><td>Выключить выбранный блок</td><td></td></tr></tbody></table>

### Блоки первого уровня

<figure><img src="/files/FdnuPOW2u7ilcHfeXbXh" alt=""><figcaption><p>Блоки первого уровня в контекстном меню Редактора спецэффпектов</p></figcaption></figure>

<table><thead><tr><th width="151">Блок</th><th>Описание</th></tr></thead><tbody><tr><td><a href="/pages/RiutFIefNywuNuleQ8yG">spriteview</a></td><td>Управление визуализацией спрайта</td></tr><tr><td><a href="/pages/PggSDAUym0DSGrDeNJNs">decalview</a></td><td>Управление визуализацией декаля</td></tr><tr><td><a href="/pages/zIlgCEjQzh7YRRZ0dJcU">lightview</a></td><td>Управление визуализацией спецэффекта на основе источника света</td></tr><tr><td><a href="/pages/j4Qe2ANas2e08p2EIy5k">particleview</a></td><td>Визуализация движения частиц</td></tr><tr><td><a href="/pages/0lYjdFQ3j2w7ca1L6hLD">soundview</a></td><td>Подключение и управление звуковым сопровождением эффекта</td></tr><tr><td><a href="/pages/0lYjdFQ3j2w7ca1L6hLD">damage</a></td><td>Настройка урона, наносимого эффектом</td></tr><tr><td><a href="/pages/0lYjdFQ3j2w7ca1L6hLD">storeable</a></td><td>Добавляет в свойства эффекта возможность сохранения эффекта на карте или в миссии</td></tr><tr><td><a href="/pages/0lYjdFQ3j2w7ca1L6hLD">fire</a></td><td>Добавляет свойства открытого огня в спецэффект. При спавне такого эффекта возможно возгорание объектов окружения в радиусе действия эффекта</td></tr></tbody></table>

### Блоки второго уровня

Список блоков второго уровня зависит от выбранного элемента первого уровня.&#x20;

{% hint style="info" %}
Состав и описание блоков второго уровня представлен на страницах описаний блоков первого уровня.
{% endhint %}

<figure><img src="/files/yYIlOesIOv8TRjT4FamF" alt=""><figcaption><p>Блоки второго уровня на примере блока spriteview</p></figcaption></figure>

<table data-card-size="large" data-view="cards"><thead><tr><th data-type="content-ref"></th><th data-hidden></th><th data-hidden></th><th data-hidden></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><a href="/pages/RiutFIefNywuNuleQ8yG">/pages/RiutFIefNywuNuleQ8yG</a></td><td></td><td></td><td></td><td><a href="/files/7PiLyqlIStMHdiy0XHd4">/files/7PiLyqlIStMHdiy0XHd4</a></td></tr><tr><td><a href="/pages/PggSDAUym0DSGrDeNJNs">/pages/PggSDAUym0DSGrDeNJNs</a></td><td></td><td></td><td></td><td><a href="/files/7PiLyqlIStMHdiy0XHd4">/files/7PiLyqlIStMHdiy0XHd4</a></td></tr><tr><td><a href="/pages/zIlgCEjQzh7YRRZ0dJcU">/pages/zIlgCEjQzh7YRRZ0dJcU</a></td><td></td><td></td><td></td><td><a href="/files/7PiLyqlIStMHdiy0XHd4">/files/7PiLyqlIStMHdiy0XHd4</a></td></tr><tr><td><a href="/pages/j4Qe2ANas2e08p2EIy5k">/pages/j4Qe2ANas2e08p2EIy5k</a></td><td></td><td></td><td></td><td><a href="/files/7PiLyqlIStMHdiy0XHd4">/files/7PiLyqlIStMHdiy0XHd4</a></td></tr></tbody></table>

## **Создание спецэффекта с нуля**

### 1. Создание нового спецэффекта

Процесс создания нового спецэффекта начинается автоматически сразу при запуске Редактора спецэффектов или по нажатию кнопки New. Редактор создает пустой SDL файл с расширением .def

<figure><img src="/files/Kax6DLKmu5hF3sH3lFV3" alt="" width="563"><figcaption><p>Окно Редактора спецэффектов в режиме создания нового спецэффекта</p></figcaption></figure>

### 2. Сохранение эффекта

Сразу после создания нового спецэффекта рекомендуется его сохранить.

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

<figure><img src="/files/RIO3jxddDmSSeGSte43T" alt="" width="563"><figcaption><p>Окно функции "Сохранить как" в редакторе спецэффектов</p></figcaption></figure>

#### **Алгоритм действий при первом сохранении:**

1. В каталоге существующих эффектов выбрать подходящую категорию.
2. В поле **File** ввести имя спецэффекта

После того, как файл спецэффекта получил имя, вносимые изменения сохраняются с помощью функции **Save**.

#### Правила именования спецэффекта

* Имена должны быть уникальными, так как вызов в движке нужного эффекта для спавна происходит по его имени, соответственно название спецэффекта не должно пересекаться с названием любой другой сущности.
* Игровой движок не чувствителен к регистру, поэтому такие имена как name, Name и NAME являются идентичными
* Рекомендуется создавать составные имена, отражающие суть эффекта, кратко описывая его назначение и классификацию.
* В имени можно использовать латинские буквы, арабские цифры, знаки тире и нижнего подчеркивания
* Использование слеша автоматически создает новую категорию спецэффектов, если такой еще не существует, в противном случае, задает путь сохранения спецэффекта.

{% hint style="warning" %}
Для избежания визуальных ошибок во время игры необходимо следить, чтобы все спецэффекты имели **уникальные имена**.\
Игровой движок игнорирует название каталога, в котором находится файл спецэффекта. Имеет значение только имя эффекта.
{% endhint %}

<figure><img src="/files/zqlxgN38mDGGagfvGPA5" alt=""><figcaption><p>Окно функции Save as (Сохранить как)</p></figcaption></figure>

### 3. Наполнение спецэффекта

Рабочая область редактора спецэффектов позволяет добавлять блоки для настройки параметров спецэффекта.&#x20;

#### Алгоритм действий

1. Добавить блоки первого уровня и настроить значения параметров блоков первого уровня
2. При необходимости добавить блоки второго уровня для нужных параметров и настроить значения параметров

Кнопка **Refresh** позволит обновить визуализацию спецэффекта после внесенных изменений без необходимости перегружать редактор.

## Создание спецэффекта на основе имеющегося

1. Выбрать в редакторе карт подходящий спецэффект из списка доступных пресетов.
2. Запустить редактор спецэффекто&#x432;**.**
3. Нажать кнопку Открыть \[Open]
4. Найти в списке эффектов выбранный спецэффект и нажать кнопку **оk**

{% hint style="info" %}
Для быстрого поиска можно воспользоваться вводом имени нужного эффекта в поле File
{% endhint %}

5. Сохранить открывшийся файл под новым именем с помощью функции Save as
6. Настроить параметры нового эффекта:
   * удалить или отключить ненужные блоки;
   * настроить значения параметров в блоках первого и второго уровней;
   * добавить необходимые блоки первого и второго уровня, если это необходимо;
7. Сохранить спецэффект с помощью функции Save


---

# 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-fx.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.
