Unity 6.3
0 онлайн 26 гостей 3 в системе
Вход

Проверка и корректировка материалов во встроенном Render Pipeline

Проверить альбедо

В таблицах материалов Unity стандартный диапазон яркости определяется как 50–243 sRGB для неметаллов и 186–255 sRGB для металлов. Режим проверки альбедо раскрашивает пиксели вне этих диапазонов разными цветами, чтобы указать, что значение слишком низкое или слишком высокое.

В приведенном ниже примере первая текстура ниже минимального значения яркости и поэтому слишком темна. Четвертая текстура выше максимального значения яркости и поэтому слишком ярка.

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

диаграммы материалов яркость значений альбедо имеет драматическое влияние на количество диффузного света отскока генерируется, так что это важно для Глобальное освещение Запекание, чтобы убедиться, что ваши различные типы материалов находятся в пределах правильных диапазонов яркости, пропорционально друг другу. Чтобы помочь вам получить эти значения правильно, вы можете выбрать из предустановок в раскрывающемся списке Luminance Validation, который предоставляет общие значения альбедо материалов для проверки диапазона яркости определенных типов материалов.

Проверка зеркала

На диаграммах материалов Unity определены два отдельных диапазона цвета зеркального отражения:

  • Неметаллические материалы: 40-75 sRGB
  • Металлические материалы: 155 — 255 sRGB

В Unity все неметаллические материалы имеют постоянный зеркальный цвет, который всегда находится в правильном диапазоне. Однако, для металлических материалов характерно наличие слишком низких зеркальных значений. Чтобы помочь вам идентифицировать металлические материалы с этой проблемой, режим Validate Metal Specular в Material Validator окрашивает все пиксели, имеющие слишком низкое зеркальное значение цвета. Это включает все неметаллические материалы по определению.

В нижеприведенном примере левый материал ниже минимального зеркального значения и поэтому слишком темный. Это также относится к фону Scene. Правый материал имеет зеркальные значения в пределах допустимого диапазона.

Scene с двумя металлическими материалами. Слева неправильные металлические зеркальные значения
Scene с двумя металлическими материалами. Слева неправильные металлические зеркальные значения
Тот же Scene с включенным проверяющим материалом и установленным на проверку Metal зеркальным
Тот же Scene с включенным проверяющим материалом и установленным на Проверить Metal Зеркальное

Подтверждение чистоты металлов

Unity определяет физические затеняющие материалы с зеркальным цветом более 155 sRGB как металлические. Для Unity для определения металлического материала как чистого металла

Если неметаллическая поверхность имеет слишком высокое зеркальное значение цвета, но имеет ненулевое альбедо, это часто является следствием ошибки автора. В проверке материалов также есть опция под названием Проверить чистые металлы. При включении этой опции проверка материалов окрашивает желтым любой материал, который Unity определяет как металлический, но который имеет ненулевое альбедо. Пример этого можно увидеть на изображениях ниже. На нем показаны три материала, левый и правый материалы являются чистыми металлами, но средний материал не является чистым металлом, поэтому проверка материалов окрашивает его желтым:

Scene с тремя металлическими материалами. Средний материал не является чистым металлом (он имеет ненулевое значение альбедо)
Scene с тремя металлическими материалами. Средний материал не является чистым металлом (он имеет ненулевое значение альбедо)
То же самое Scene с включенным проверяющим материалом и установленным на проверку Metal зеркальным, с включенной проверкой чистых металлов)
Тот же Scene с включенным Материал Validator и установленным Validate Metal Specular, с включенной Проверкой чистых металлов)

На втором изображении выше фон красный, потому что Материалы на фоне ниже минимального зеркального значения для режима Validate Metal Specular Validator.

Для сложных материалов, которые сочетают в себе металлические и неметаллические свойства, проверка чистого металла, скорее всего, выявить некоторые недействительные пиксели, но если Материал полностью недействителен, это обычно признак авторской ошибки.

Переопределение значений яркости по умолчанию

В зависимости от художественного стиля вашего проекта значения яркости материалов могут отличаться от заданных диапазонов. В этом случае встроенные значения альбедо, которые использует Material Validator, можно заменить своими. Чтобы переопределить заданные диапазоны яркости, назначьте массив AlbedoSwatchInfo значения для каждого желаемого типа материала к свойству EditorGraphicsSettings.albedoSwatches.