Объявление
public void SetFloats(string name, params float[] values);public void SetFloats(int nameID, params float[] values);
Параметры
name | Имя переменной массива в коде шейдера. |
nameID | Идентификатор имени свойства. Чтобы получить его, используйте Shader.PropertyToID. |
values | Массив значений для установки. |
Описание
Одновременно установить несколько последовательных параметров с плавающей запятой.
Эту функцию можно использовать для установки значений вектора с плавающей запятой, массива с плавающей запятой или массива с плавающей запятой. Например, float4 myArray[4] в вычислительном шейдере можно заполнить, передав 16 чисел с плавающей запятой. См. Вычислительные шейдеры для получения информации о правилах размещения данных и межплатформенной совместимости.
Этот API передает необработанные данные в буфер констант, поэтому предоставляемые данные должны соответствовать правилам размещения данных буфера констант HLSL. Это означает, что элементы массива должны быть выровнены по float4; например, данные float4 не требуют заполнения, данные float3 требуют одного заполнения float для каждого элемента, данные float2 требуют двух значений float и т. д.
Постоянные буферы совместно используются всеми ядрами в одном ресурсе вычислительного шейдера. Поэтому эта функция влияет на все ядра в этом ComputeShader.
Смотрите так же: SetFloat, SetInt, SetInts, SetBool, SetBuffer, SetMatrix, SetMatrixArray, SetTexture, SetVector, SetVectorArray.