getUniformFloat method
Access the float binding for uniform named name with optional offset
index. Example index values: 1 for 'foo.y', 2 for 'foo.b'.
Example:
uniform float uScale;
uniform sampler2D uTexture;
uniform vec2 uMagnitude;
uniform vec4 uColor;
void updateShader(ui.FragmentShader shader) {
shader.getUniformFloat('uScale');
shader.getUniformFloat('uMagnitude', 0);
shader.getUniformFloat('uMagnitude', 1);
shader.getUniformFloat('uColor', 0);
shader.getUniformFloat('uColor', 1);
shader.getUniformFloat('uColor', 2);
shader.getUniformFloat('uColor', 3);
}
Implementation
UniformFloatSlot getUniformFloat(String name, [int? index]) {
index ??= 0;
final int shaderIndex = _program._getUniformFloatIndex(name, index);
final result = UniformFloatSlot._(this, name, index, shaderIndex);
_slots.removeWhere((WeakReference<UniformFloatSlot> ref) => ref.target == null);
_slots.add(WeakReference<UniformFloatSlot>(result));
return result;
}