Объявление
public static void SetGlobalConstantBuffer(string name, ComputeBuffer value, int offset, int size);public static void SetGlobalConstantBuffer(int nameID, ComputeBuffer value, int offset, int size);
public static void SetGlobalConstantBuffer(string name, GraphicsBuffer value, int offset, int size);
public static void SetGlobalConstantBuffer(int nameID, GraphicsBuffer value, int offset, int size);
Параметры
nameID | Идентификатор имени буфера констант, полученный с помощью Shader.PropertyToID. |
name | Имя буфера констант для переопределения. |
value | Буфер для переопределения постоянных значений буфера или нуль для удаления привязки. |
offset | Смещение в байтах от начала буфера для привязки. Должно быть кратно SystemInfo.constantBufferOffsetAlignment или 0, если это значение равно 0. |
size | Количество байтов для привязки. |
Описание
Устанавливает ComputeBuffer или GraphicsBuffer в качестве именованного буфера констант для всех типов шейдеров.
Об использовании см. Material.SetConstantBuffer. Если постоянный буфер связан как глобально, так и для каждого материала, используется буфер для каждого материала. Однако если константный буфер привязан глобально, он переопределяет все параметры шейдера во всех материалах, находящихся в любом константном буфере с заданным именем. Используйте эту функцию с особой осторожностью, особенно когда вы используете постоянные имена буферов, которые обычно используются, так как это может иметь непредвиденные последствия.