Конверсия текстур в Gem RTS
Введение
Конверсия текстур необходима для преобразования наборов текстур, созданных для Phong-материалов в компоненты PBR-материалов (PBR - Physically Based Rendering). В движке Gem RTS процесс конверсии может выполняться автоматически с помощью схем материалов, созданных в Редакторе схем.
Различия между текстурными компонентами для Phong и PBR материалов
Компоненты Phong-материала:
в текстурную карту
diffuse
запекаетсяlightmap
, которая находится в исходном .tif файле в отдельном верхнем слое и накладывается на карту цвета с помощью параметра наложения multiply;для имитации бликов используется текстурная карта
specular
Компоненты PBR-материала:
в текстуре
diffuse
остается только цвет материала, а картаlightmap
переносится в отдельную текстуруambient occlusion
.для имитации бликов и шероховатостей поверхности используются текстурные карты
metallic
иroughness
Конверсия текстур с помощью Редактора схем
С помощью Блоков конверсии в Редакторе схем можно создавать схемы материалов, которые осуществляют конверсию набора Phong-текстур в PBR-материал автоматически в процессе рендера.
Конверсия работает по принципу преобразования набора Phong-текстур (diffuse и specular) в PBR-компоненты metallic, roughness, ambient occlusion. Генерация PBR-материалов из набора Phong-текстур происходит согласно следующим предположениям:
Компонент | Предположение для конверсии |
---|---|
| Высокое значение параметра |
| Чем выше значение параметра specular, тем более гладкий и отражающий материал.
Учитывается минимальное значение яркости |
|
|
Блоки конверсии
Название блока конверсии | Входной пин | Выходные пины |
---|---|---|
specular to metallic and roughness | specular |
|
diffuse to ambient occlusion | diffuse с запеченной lightmap |
|
Создание схемы для автоматической конверсии набора Phong- текстур в PBR-материал
Запустить Редактор схем.
Открыть схему Phong-материала
Добавить в схему блоки конверсии
Подключить к входным пинам блоков конверсии Phong-текстуры diffuse и specular.
Из выходящих пинов блоков конверсии свести все данные в блок Material с выбранным методом освещения.
Сохранить схему в папку /gem2.
Пример использования блоков конверсии в схеме материала bump из папки gem2/
В Редакторе схем можно создавать новые схемы для PBR-материалов
Способы конверсии Phong-текстур в PBR
Автоматическая конверсия
С помощью блоков конверсии в схеме материала наборы Phong-текстур (diffuse
, specular
) преобразовываются в компоненты diffuse
, ambient occlusion
, metallic
и roughness
для PBR-материала автоматически во время рендера.
Частично-автоматическая конверсия
Карту lightmap
вынести из diffuse
текстуры и сохранить в отдельную текстуру ambient occlusion
с помощью графического редактора.
Карта specular
преобразовывается в компоненты metallic
и roughness
с помощью блока конверсии в схеме материала.
Конверсия с помощью графического редактора
Алгоритм действий:
Из Phong-текстуры
diffuse
перенести картуlightmap
в отдельную текстуруambient occlusion
.Преобразовать Phong-текстуру
specular
в картуroughness
. Для этого в большинстве случаев достаточно сделать инверсию изображения specular и подкорректировать его слоем levels.На основе Phong-текстуры
specular
создать картуmetalic
, оставив самые яркие участки белыми (metallic = 1
).В Редакторе схем собрать схему для PBR-материала, используя текстурные карты для PBR-материала
Назначение схемы PBR-материала на модель
При создании новых моделей рекомендуется назначать на модель материалы из папки pbr/
Схемы материалов из папки gem2/
поддерживают автоматическую конверсию набора Phong-текстур в PBR-материал во время рендера
Переэкспорт модели
В программе 3D Max назначить на модель схему PBR-материала.
Экспортировать модель в игру с помощью Плагина для 3d Max. В процессе эскорта в папке с моделью автоматически перезаписывается файл .material, в котором прописаны схема материала и пути к текстурам для компонент PBR-материала.
Без переэкспорта модели
Открыть с помощью текстового редактора файл .material из папки с моделью.
Заменить название схемы материала и пути к соответствующим PBR-текстурам (текстуры должны быть в формате .dds)
Last updated