此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

WebGL2RenderingContext:uniformMatrix[234]x[234]fv() 方法

基线
广泛可用
*

自 2021年9月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

* 此特性的某些部分的支持程度可能有所不同。

备注: 此特性在 Web Worker 中可用。

WebGL 2 API 的 WebGL2RenderingContext.uniformMatrix[234]x[234]fv() 方法用于为 uniform 变量指定矩阵数值。

备注:此方法并没有真正名为 2x2、3x3 和 4x4 的版本,它们分别被简写为 2、3 和 4。请参阅下方语法说明。

语法

js
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)

参数

location

WebGLUniformLocation 对象,包含要修改的 uniform 属性的位置。

transpose

GLboolean,用于指定是否对矩阵进行转置。

data

一个由浮点数组成的 Float32Array。

返回值

无(undefined)。

示例

js
gl.uniformMatrix2x3fv(loc, false, [1, 2, 3, 4, 5, 6]);

规范

规范
WebGL Specification
# 5.14.10

浏览器兼容性

参见