Конверсия текстур в 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-текстур происходит согласно следующим предположениям:

КомпонентПредположение для конверсии

metallic

Высокое значение параметра specular соответствует физическим свойствам металла. Учитывается нижний порог яркости specular, за которым начинаются металлы.

roughness

Чем выше значение параметра specular, тем более гладкий и отражающий материал. Учитывается минимальное значение яркости specular, чтобы избежать очень гладких поверхностей. Параметр specular_power исходной схемы отвечает за размер пятна блика, что косвенно указывает на степень гладкости поверхности

ambient occlusion

Ambient occlusion запечен в diffuse текстуре. Нижние значения яркости диффузной текстуры берутся в качестве признака ambient occlusion

Блоки конверсии

Название блока конверсииВходной пинВыходные пины

specular

to

metallic and roughness

specular

  • metallic

  • roughness

diffuse

to

ambient occlusion

diffuse с запеченной lightmap

  • чистый diffuse

  • ambient occlusion

Создание схемы для автоматической конверсии набора Phong- текстур в PBR-материал

  1. Запустить Редактор схем.

  2. Открыть схему Phong-материала

  3. Добавить в схему блоки конверсии

  4. Подключить к входным пинам блоков конверсии Phong-текстуры diffuse и specular.

  5. Из выходящих пинов блоков конверсии свести все данные в блок Material с выбранным методом освещения.

  6. Сохранить схему в папку /gem2.

Пример использования блоков конверсии в схеме материала bump из папки gem2/

В Редакторе схем можно создавать новые схемы для PBR-материалов

Способы конверсии Phong-текстур в PBR

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

С помощью блоков конверсии в схеме материала наборы Phong-текстур (diffuse, specular) преобразовываются в компоненты diffuse, ambient occlusion, metallic и roughness для PBR-материала автоматически во время рендера.

Частично-автоматическая конверсия

Карту lightmap вынести из diffuse текстуры и сохранить в отдельную текстуру ambient occlusion с помощью графического редактора.

Карта specular преобразовывается в компоненты metallic и roughness с помощью блока конверсии в схеме материала.

Конверсия с помощью графического редактора

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

  1. Из Phong-текстуры diffuse перенести карту lightmap в отдельную текстуру ambient occlusion.

  2. Преобразовать Phong-текстуру specular в карту roughness. Для этого в большинстве случаев достаточно сделать инверсию изображения specular и подкорректировать его слоем levels.

  3. На основе Phong-текстуры specular создать карту metalic, оставив самые яркие участки белыми (metallic = 1).

  4. В Редакторе схем собрать схему для PBR-материала, используя текстурные карты для PBR-материала

Назначение схемы PBR-материала на модель

При создании новых моделей рекомендуется назначать на модель материалы из папки pbr/

Схемы материалов из папки gem2/ поддерживают автоматическую конверсию набора Phong-текстур в PBR-материал во время рендера

Переэкспорт модели

  1. В программе 3D Max назначить на модель схему PBR-материала.

  2. Экспортировать модель в игру с помощью Плагина для 3d Max. В процессе эскорта в папке с моделью автоматически перезаписывается файл .material, в котором прописаны схема материала и пути к текстурам для компонент PBR-материала.

Без переэкспорта модели

  1. Открыть с помощью текстового редактора файл .material из папки с моделью.

  2. Заменить название схемы материала и пути к соответствующим PBR-текстурам (текстуры должны быть в формате .dds)

Last updated