Это старая версия документа!
Пометить шейдер
Обзор
Шейдер флага можно использовать для создания объектов, содержащих что-то, движущееся на ветру, например флаги или что-то еще. ткани.
Также возможно иметь несколько текстур внутри одного и того же флага, которые меняются в зависимости от положения объекта. опора, как это делают ванильные флаги.
В этой статье предполагается, что вы знакомы с обычным созданием реквизитов.
Различные примеры реквизита с использованием шейдера флага.
Текстуры
Текстуры работают так же, как и для любого обычного реквизита.
Сетка
Сетка моделируется как обычно.
Формат
Используйте формат, поддерживающий цвета вершин, например FBX (2015 или более ранняя версия) или DAE.
Несколько текстур флагов
Если у вас есть несколько текстур флага на вашей текстуре, флаг должен быть сопоставлен UV с правым нижним флагом.
Окраска вершин
Цвета вершин определяют, какие части используют движение ветра и UV-отображение текстур с несколькими флагами.
Если вы не планируете использовать несколько текстур флагов внутри одной опоры, например ванильные флаги, вы можете использовать полную диапазон от белого до черного, чтобы определить, сколько движения будет иметь каждая вершина.
Белый означает отсутствие движения, а черный означает максимальное движение.
Если вы будете использовать несколько текстур флагов внутри одной опоры, вы не можете использовать какой-либо оттенок серого, так как это нарушит UV-картирование, когда флаг пытается изменить текстуры. В этом случае флаг должен быть полностью черным, и нельзя контролировать силу воздействия ветра.
Вершинная краска примера реквизита. Только флаг слева использует несколько текстур флага в одной опоре.
LOD
ЛОД тоже движется на ветру, поэтому с ним тоже следует обращаться так, как описано выше. Текстура LOD должна соответствовать основной текстуре. но его можно уменьшить до более низкого разрешения.
Скрипт
Вы можете найти сценарий здесь.
Сетка флагов
Если вы используете несколько текстур флагов для одной и той же опоры и хотите, чтобы они менялись в зависимости от положения, как ванильные флаги, текстуры флагов должны иметь последовательную сетку. Если вы не используете несколько текстур флагов для тот же реквизит, тогда вы можете оставить параметры сетки флагов со значениями по умолчанию.
Сетка флагов для примера. 5 столбцов, 1 строка, верхний левый угол (0,0), нижний правый угол (1024, 364).
Столбцы и строки
Определяет, сколько столбцов и строк имеет сетка флагов на текстуре.
Вверху слева и внизу справа
Определяет координаты X и Y верхнего левого и нижнего правого углов всей сетки флагов на текстуре в пикселях следующим образом: измеряется от верхнего левого угла текстуры, который равен 0,0.
Параметры движения
Сила
Это приведет к пересчету краски вершин, чтобы уменьшить силу движения ветра. Если вы используете несколько текстур флагов на один реквизит, вы не можете контролировать силу, так как он нарушит отображение UV, когда флаг попытается изменить текстуру.
Ось
Это определяет ориентацию оси по X Y Z, вокруг которой происходит движение ветра.
Ориентация оси определяется вектором, поэтому, если вы установите одинаковое значение для X и Y, ось будет повернута на 45°.
Имейте в виду, что в игре ось Y представляет высоту, поэтому оси Y и Z меняются местами по сравнению с тем, что обычно используется в 3D-программах. использует.
Вращаться
Это определяет точку поворота, куда перемещается ось, поэтому вы можете перемещать ось, вокруг которой происходит движение.
Источник: https://cslmodding.info/shader/flag/ Сформировано автоматически: 2026-03-18 10:07 UTC