WebGLRenderingContext: uniform[1234][fi][v]() 方法

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

注意:此功能在 Web Workers 中可用。

WebGL APIWebGLRenderingContext.uniform[1234][fi][v]() 方法用於指定 uniform 變數的值。在程式物件成功連結時,程式物件中定義的所有活動的 uniform 變數都將初始化為 0。它們將保留呼叫此方法分配給它們的值,直到程式物件發生下一次成功的連結操作,屆時它們將再次初始化為 0。

注意: 此處描述的許多函式都有擴充套件的 WebGL 2 介面,可以在 WebGL2RenderingContext.uniform[1234][uif][v]() 下找到。

語法

js
uniform1f(location, v0)
uniform1fv(location, value)
uniform1i(location, v0)
uniform1iv(location, value)

uniform2f(location, v0, v1)
uniform2fv(location, value)
uniform2i(location, v0, v1)
uniform2iv(location, value)

uniform3f(location, v0, v1, v2)
uniform3fv(location, value)
uniform3i(location, v0, v1, v2)
uniform3iv(location, value)

uniform4f(location, v0, v1, v2, v3)
uniform4fv(location, value)
uniform4i(location, v0, v1, v2, v3)
uniform4iv(location, value)

引數

location

一個包含要修改的 uniform 屬性位置的 WebGLUniformLocation 物件。

value, v0, v1, v2, v3

用於 uniform 變數的新值。可能型別

  • 浮點 Number,用於浮點值(方法名帶有“f”)。
  • 浮點數序列(例如 Float32Array 或數字的 Array),用於浮點向量方法(方法名帶有“fv”)。
  • 整數 Number,用於整數值(方法名帶有“i”)。
  • Int32Array,用於整數向量方法(方法名帶有“iv”)。

返回值

無(undefined)。

示例

js
gl.uniform1f(u_alpha, 0.8);

規範

規範
WebGL 規範
# 5.14.10

瀏覽器相容性

另見