getUniformMat4Array method

UniformArray<UniformMat4Slot> getUniformMat4Array(
  1. String name
)

Access the binding for a mat4[] uniform named name.

Example:

uniform mat4[10] uMatricies;
void updateShader(ui.FragmentShader shader) {
  final ui.UniformArray<ui.UniformMat4Slot> mats = shader.getUniformMat4Array('uMatricies');
  mats[0].set(
    1.0, 0.0, 0.0, 1.0,
    1.0, 0.5, 0.0, 0.4,
    1.0, 0.3, 1.2, 0.2,
    0.0, 0.0, 1.0, 0.3,
  );
}

Implementation

UniformArray<UniformMat4Slot> getUniformMat4Array(String name) {
  return _getUniformArray<UniformMat4Slot>(
    name,
    16, // 4 floats per element
    (components) => UniformMat4Slot._(
      components[0],
      components[1],
      components[2],
      components[3],
      components[4],
      components[5],
      components[6],
      components[7],
      components[8],
      components[9],
      components[10],
      components[11],
      components[12],
      components[13],
      components[14],
      components[15],
    ),
  );
}