Описание
Блок материальных значений для применения.
MaterialPropertyBlock используется Graphics.DrawMesh и Renderer.SetPropertyBlock. Используйте его в ситуациях, когда вы хотите рисовать несколько объектов из одного и того же материала, но с немного разными свойствами. Например, если вы хотите немного изменить цвет каждой нарисованной сетки. Изменение состояния рендеринга не поддерживается.
Двигатель ландшафта Unity использует MaterialPropertyBlock для рисования деревьев; все они используют один и тот же материал, но каждое дерево имеет разный цвет, масштаб и фактор ветра.
Блок, переданный в Graphics.DrawMesh или Renderer.SetPropertyBlock, копируется, поэтому наиболее эффективный способ использования это чтобы создать один блок и повторно использовать его для всех вызовов DrawMesh. Используйте SetFloat, SetVector, SetColor, SetMatrix, SetTexture, SetBuffer для добавления или замены значения.
Смотрите так же: Graphics.DrawMesh, Material.
Свойства
isEmpty | Блок свойств материала пуст? (Только чтение) |
Публичные Методы
Clear | Очистить значения свойств материала. |
CopyProbeOcclusionArrayFrom | Эта функция копирует весь исходный массив в массив свойств Vector4 с именем unity_ProbesOcclusion для использования с инстансным рендерингом Shadowmask. |
CopySHCoefficientArraysFrom | Эта функция преобразует и копирует весь исходный массив в 7 массивов свойств Vector4 с именами unity_SHAr, unity_SHAg, unity_SHAb, unity_SHBr, unity_SHBg, unity_SHBb и unity_SHC для использования с инстансным рендерингом светового зонда. |
GetColor | Получает цвет из блока свойств. |
GetFloat | Получает число с плавающей запятой из блока свойств. |
GetFloatArray | Получает массив с плавающей запятой из блока свойств. |
GetInt | Получает int из блока свойств. |
GetMatrix | Получает матрицу из блока свойств. |
GetMatrixArray | Получает массив матриц из блока свойств. |
GetTexture | Получает текстуру из блока свойств. |
GetVector | Получает вектор из блока свойств. |
GetVectorArray | Получает векторный массив из блока свойств. |
SetBuffer | Устанавливает свойство буфера. |
SetColor | Устанавливает свойство цвета. |
SetConstantBuffer | Устанавливает ComputeBuffer или GraphicsBuffer в качестве именованного буфера констант для MaterialPropertyBlock. |
SetFloat | Устанавливает свойство с плавающей запятой. |
SetFloatArray | Устанавливает свойство массива с плавающей запятой. |
SetInt | Добавляет свойство в блок. Если свойство int с данным именем уже существует, старое значение заменяется. |
SetMatrix | Устанавливает свойство матрицы. |
SetMatrixArray | Устанавливает свойство массива матриц. |
SetTexture | Устанавливает свойство текстуры. |
SetVector | Устанавливает свойство вектора. |
SetVectorArray | Устанавливает свойство векторного массива. |