Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

MaterialPropertyBlock

класс в UnityEngine / Реализовано в: UnityEngine.CoreModule

Описание

Блок материальных значений для применения.

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 Устанавливает свойство векторного массива.
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3