This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
* Some parts of this feature may have varying levels of support.
Note: This feature is available in Web Workers.
The WebGL2RenderingContext.uniformMatrix[234]x[234]fv() methods of the WebGL 2 API specify matrix values for uniform variables.
Note: There are no 2x2, 3x3, and 4x4 versions of this method. They are abbreviated in 2, 3, and 4, respectively. See the syntax below.
uniformMatrix2fv(location, transpose, data) uniformMatrix2fv(location, transpose, data, srcOffset) uniformMatrix2fv(location, transpose, data, srcOffset, srcLength) uniformMatrix3x2fv(location, transpose, data) uniformMatrix3x2fv(location, transpose, data, srcOffset) uniformMatrix3x2fv(location, transpose, data, srcOffset, srcLength) uniformMatrix4x2fv(location, transpose, data) uniformMatrix4x2fv(location, transpose, data, srcOffset) uniformMatrix4x2fv(location, transpose, data, srcOffset, srcLength) uniformMatrix2x3fv(location, transpose, data) uniformMatrix2x3fv(location, transpose, data, srcOffset) uniformMatrix2x3fv(location, transpose, data, srcOffset, srcLength) uniformMatrix3fv(location, transpose, data) uniformMatrix3fv(location, transpose, data, srcOffset) uniformMatrix3fv(location, transpose, data, srcOffset, srcLength) uniformMatrix4x3fv(location, transpose, data) uniformMatrix4x3fv(location, transpose, data, srcOffset) uniformMatrix4x3fv(location, transpose, data, srcOffset, srcLength) uniformMatrix2x4fv(location, transpose, data) uniformMatrix2x4fv(location, transpose, data, srcOffset) uniformMatrix2x4fv(location, transpose, data, srcOffset, srcLength) uniformMatrix3x4fv(location, transpose, data) uniformMatrix3x4fv(location, transpose, data, srcOffset) uniformMatrix3x4fv(location, transpose, data, srcOffset, srcLength) uniformMatrix4fv(location, transpose, data) uniformMatrix4fv(location, transpose, data, srcOffset) uniformMatrix4fv(location, transpose, data, srcOffset, srcLength)
locationA WebGLUniformLocation object containing the location of the uniform attribute to modify.
transposeA GLboolean specifying whether to transpose the matrix.
dataA Float32Array of float values.
None (undefined).
gl.uniformMatrix2x3fv(loc, false, [1, 2, 3, 4, 5, 6]);
| Specification |
|---|
| WebGL Specification> # 5.14.10> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
uniformMatrix |
56 | 79 | 51 | 43 | 15 | 58 | 51 | 43 | 15 | 7.0 | 58 | 15 |
value_param_accepts_SharedArrayBuffer |
60 | 79 | 79 | 47 | No | 60 | 79 | 44 | No | 8.0 | 60 | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/uniformMatrix