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