Рубрики
Component "Material" (.mat) HLSL

Material «понятие»

это инстанс шейдера
файл с расширением .mat

экземпляр какого-то шейдера, в котором мы заранее настраиваем значения свойств этого шейдера.

«/» слеш в имени шейдера
разбирает парсингом как меню
чем больше слешей, тем больше вложенностей в меню имени шейдера

Плюсы

  • изменение шейдера можно делать на лету
  • нам не требуется перекомпиляции
  • шейдер хранится в видеопамяти
  • шейдер выполняется всеми тысячами процессоров

Минус

требуется только бинарный шейдер компилировать

Подразделение на секции

  1. Properties
    отображается в инспекторе материала
    в этой секции описываем значения констант для второй секции
    написан на языке ShaderLab и является оберткой Unity для работы с шейдером под множеством устройств
  2. SubShader
    этой секции может быть несколько
    присутствие уникальных особенностей это параметры для Unity
    Tags, Cull,ZWrite,Fog,Blend
  • каждый шейдер
    это минимум три программы по порядку
  1. вертексный #pragma vertex name
  2. геометрический #pragma geo name
  3. фрагметный (пиксельный) #pragma fragment name