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

Переменные освещения в встроенной ссылке Render Pipeline

Найдите встроенные переменные шейдера, которые управляют освещением в Встроенном Render Pipeline.

Параметры света передаются шейдерам разными способами в зависимости от того, Путь отображения используется, и которое LightMode Пропускной знак используется в шейдере.

Форвардное представление (ForwardBase и ForwardAdd типы пропусков):

Имя Тип Значение
_LightColor0 (заявлено в UnityLightingCommon.cginc) fixed4 Светлый цвет.
_WorldSpaceLightPos0 float4 (плавающий) Направленные огни: (мировое космическое направление, 0); другие огни: (мировое космическое положение, 1).
unity_WorldToLight (заявлено в AutoLight.cginc) float4x4 Матрица «мир-к-свету». Используется для выборки текстур cookie и затухания.
unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0 float4 (плавающий) (только для прохода ForwardBase) мировые пространственные позиции первых четырех незначительных точечных огней.
unity_4LightAtten0 float4 (плавающий) (только для ForwardBase) коэффициенты затухания первых четырех несущественных точечных огней.
unity_LightColor half4[4] (только для пропуска ForwardBase) цвета первых четырех несущественных точечных огней.
unity_WorldToShadow float4x4[4] Одна матрица для Spot Lights, до четырех для направленных световых каскадов.

Отложенное затенение, используемое в шейдере освещения (все заявлено в UnityDeferredLibrary.cginc):

Имя Тип Значение
_LightColor float4 (плавающий) Светлый цвет.
unity_WorldToLight float4x4 Матрица «мир-к-свету». Используется для выборки текстур cookie и затухания.
unity_WorldToShadow float4x4[4] Одна матрица для Spot Lights, до четырех для направленных световых каскадов.

Коэффициенты сферических гармоник (используемые зондами окружающей среды и освещения) установлены для типов проходов ForwardBase и Deferred. Они содержат SH третьего порядка для оценки с помощью нормы мирового пространства (см. ShadeSH9 из UnityCG.cginc). Все переменные имеют тип half4, unity_SHAr и аналогичные названия.

Вертикально-освещённое отображение (Vertex тип пропуска):

Для типа прохода Vertex настраивается до 8 светильников; всегда сортируются начиная с самого яркого. Таким образом, если вы хотите отобразить объекты, подвергающиеся воздействию двух светильников одновременно, вы можете просто взять первые два элемента в массивах. Если на объект воздействует меньше восьми светильников, то остальные будут иметь чёрный цвет.

Имя Тип Значение
unity_LightColor half4[8] Светлые цвета.
unity_LightPosition float4[8] Положения огней в пространстве обзора. (-direction,0) для направляющих огней; (положение,1) для точечных огней или лучевой фары.
unity_LightAtten half4[8] Коэффициенты ослабления света. x cos(spotAngle/2) или -1 для огней, не являющихся фокусными; y - 1/cos(spotAngle/4) или 1 для огней, не являющихся фокусными; z квадратичное затухание; w - квадратный световой диапазон.
unity_SpotDirection float4[8] Положения ближних огней в пространстве обзора; (0,0,1,0) для неближних огней.

Дополнительные ресурсы