game:cities:cities_skylines:moding:shader_flag

Это старая версия документа!


Шейдер Flag (Флаг)

Шейдер flag используется для создания пропов с объектами, которые движутся на ветру — например, флагов или тканей.

В одном пропе можно использовать несколько текстур флагов, которые меняются в зависимости от положения пропа, так же, как это реализовано у стандартных флагов.

Предполагается, что вы знакомы с обычным процессом создания ассетов пропов.

Различные примеры пропов с применением шейдера flag.

Текстуры работают так же, как у обычных пропов.

Меш моделируется стандартным способом.

Используйте форматы с поддержкой вертекс-цвета, такие как FBX (2015 или старше) или DAE.

Если у вас несколько текстур флагов на одной текстуре, то UV-развёртка должна быть выполнена на нижний правый флаг.

Цвета вершин определяют, какие части пропа реагируют на движение ветра и, при использовании нескольких текстур, каким образом меняется UV-развёртка.

- Если вы не планируете использовать несколько текстур в одном пропе, как у стандартных флагов, то можно использовать полный диапазон от белого до чёрного для задания интенсивности движения каждого вертекса:

  1. Белый — отсутствие движения
  2. Чёрный — максимальное движение

- Если используете несколько текстур в одном пропе, нельзя применять оттенки серого — это нарушит UV-развёртку при смене текстур. В таком случае вся раскраска должна быть полностью чёрной, и управлять силой ветра нельзя.

Vertex paint примеров пропов. Только флаг слева использует несколько текстур внутри одного пропа.

LOD-модели также движутся на ветру и должны обрабатываться аналогично основным моделям. Текстура LOD должна совпадать с основной, но может иметь более низкое разрешение.

Скрипт доступен [здесь](#) *(замени ссылкой)*.

Для использования нескольких текстур в одном пропе с переключением по позиции, как у стандартных флагов, текстуры должны быть расположены в регулярной сетке. Если вы не используете несколько текстур — параметры сетки можно оставить по умолчанию.

Сетка флагов для примера пропа: 5 колонок, 1 ряд; верхний левый угол (0,0), нижний правый (1024, 364).

- Колонки и ряды — количество столбцов и строк в сетке текстур. - Верхний левый и нижний правый углы — координаты в пикселях этих углов сетки относительно верхнего левого угла текстуры (0,0).

  • Сила (Strength)

Пересчитывает vertex paint для уменьшения силы ветрового движения. Если используется несколько текстур в одном пропе, управление силой отключено, чтобы не сломать UV-развёртку.

  • Ось (Axis)

Определяет ориентацию оси вращения ветрового движения по координатам X, Y, Z.

  Ось задаётся вектором — например, одинаковые значения X и Y повернут ось на 45°.  
  Важно: в игре ось Y — высота, поэтому оси Y и Z меняются местами относительно стандартных 3D-программ.
  • Точка поворота (Pivot)

Определяет точку смещения оси, вокруг которой происходит движение, позволяя перемещать эту ось в пространстве.

  • game/cities/cities_skylines/moding/shader_flag.1753448659.txt.gz
  • Последнее изменение: 2025/07/25 20:04
  • Lex