WebGLRenderingContext.blendEquation()

WebGL APIWebGLRenderingContext.blendEquation() 方法用于将 RGB 混合方程和阿尔法混合方程设置为单个方程。

混合方程式确定新像素如何与 WebGLFramebuffer 中的像素组合。

语法

void gl.blendEquation(mode);

参数

mode

GLenum (en-US) 指定源和目标颜色的组合方式。必须是:

  • gl.FUNC_ADD: 源 + 目的地(默认值),
  • gl.FUNC_SUBTRACT: 源 - 目的地,
  • gl.FUNC_REVERSE_SUBTRACT: 目的地 - 源
  • 当使用 EXT_blend_minmax (en-US) 扩展名时:
    • ext.MIN_EXT: 最小的源和目的地,
    • ext.MAX_EXT: 最大源和目的地。
  • 当使用 WebGL 2 上下文 时,可以使用以下值:
    • gl.MIN: 最小的源和目的地,
    • gl.MAX: 最大源和目的地。

异常

如果模式不是三个可能的值之一,则会抛出 gl.INVALID_ENUM 错误。

返回值

None.

示例

要设置混合方程式,请使用:

js
gl.blendEquation(gl.FUNC_ADD);
gl.blendEquation(gl.FUNC_SUBTRACT);
gl.blendEquation(gl.FUNC_REVERSE_SUBTRACT);

要获得混合方程,请查询返回 gl.FUNC_ADD,gl.FUNC_SUBTRACT,gl.FUNC_REVERSE_SUBTRACT 或 EXT_blend_minmax (en-US) 的 BLEND_EQUATION,BLEND_EQUATION_RGB 和 BLEND_EQUATION_ALPHA 常量:ext.MIN_EXT 或 ext.MAX_EXT。

js
gl.getParameter(gl.BLEND_EQUATION_RGB) === gl.FUNC_ADD;
// true

gl.getParameter(gl.BLEND_EQUATION_ALPHA) === gl.FUNC_ADD;
// true

规范

Specification
WebGL Specification
# 5.14.3

浏览器兼容性

BCD tables only load in the browser

参见