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

Объявление

public void SetConstantBuffer(string name, ComputeBuffer value, int offset, int size);

public void SetConstantBuffer(int nameID, ComputeBuffer value, int offset, int size);

public void SetConstantBuffer(string name, GraphicsBuffer value, int offset, int size);

public void SetConstantBuffer(int nameID, GraphicsBuffer value, int offset, int size);

Параметры

name Имя буфера констант для переопределения.
value ComputeBuffer для переопределения постоянных значений буфера или null для удаления привязки..
offset Смещение в байтах от начала буфера для привязки. Должно быть кратно SystemInfo.constantBufferOffsetAlignment или 0, если это значение равно 0.
size Количество байтов для привязки.
nameID Идентификатор свойства шейдера буфера констант для переопределения.

Описание

Устанавливает ComputeBuffer или GraphicsBuffer в качестве именованного постоянного буфера для материала.

Этот метод можно использовать для переопределения всех параметров шейдера, находящихся в постоянном буфере с заданным именем. Параметры переопределяются содержимым данного буфера. Чтобы использовать этот метод, должно быть верно следующее: ComputeBuffer или GraphicsBuffer должен быть создан с соответствующим ComputeBufferType.Constant или флаг GraphicsBuffer.Target.Constant. Структура данных буфера констант должна точно совпадать с данными, представленными в буфере. Все различные варианты шейдера для этого Материала должны использовать один и тот же макет константного буфера для данного константного буфера.

После того, как эта функция была вызвана с ненулевым ComputeBuffer, любые вызовы Material.SetFloat и т. д. не будут иметь никакого эффекта, если они содержат имя параметра, указывающее на переменная внутри переопределенного буфера констант.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3