WebGLRenderingContext: blendEquationSeparate() Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die Methode WebGLRenderingContext.blendEquationSeparate() des WebGL API wird verwendet, um die RGB-Blendgleichung und die Alpha-Blendgleichung getrennt festzulegen.

Die Blendgleichung bestimmt, wie ein neues Pixel mit einem bereits im WebGLFramebuffer vorhandenen Pixel kombiniert wird.

Syntax

js
blendEquationSeparate(modeRGB, modeAlpha)

Parameter

modeRGB

Ein GLenum, der angibt, wie die Rot-, Grün- und Blaukomponenten der Quell- und Ziel-Farben kombiniert werden. Muss eine der folgenden sein:

  • gl.FUNC_ADD: Quelle + Ziel (Standardwert),

  • gl.FUNC_SUBTRACT: Quelle - Ziel,

  • gl.FUNC_REVERSE_SUBTRACT: Ziel - Quelle,

  • Bei Verwendung der EXT_blend_minmax Erweiterung:

    • ext.MIN_EXT: Minimum von Quelle und Ziel,
    • ext.MAX_EXT: Maximum von Quelle und Ziel.
  • Bei Verwendung eines WebGL 2 Kontextes sind zusätzlich die folgenden Werte verfügbar:

    • gl.MIN: Minimum von Quelle und Ziel,
    • gl.MAX: Maximum von Quelle und Ziel.
modeAlpha

Ein GLenum, der angibt, wie die Alphakomponente (Transparenz) der Quell- und Zielfarben kombiniert wird. Muss eine der folgenden sein:

  • gl.FUNC_ADD: Quelle + Ziel (Standardwert),

  • gl.FUNC_SUBTRACT: Quelle - Ziel,

  • gl.FUNC_REVERSE_SUBTRACT: Ziel - Quelle,

  • Bei Verwendung der EXT_blend_minmax Erweiterung:

    • ext.MIN_EXT: Minimum von Quelle und Ziel,
    • ext.MAX_EXT: Maximum von Quelle und Ziel.
  • Bei Verwendung eines WebGL 2 Kontextes sind zusätzlich die folgenden Werte verfügbar:

    • gl.MIN: Minimum von Quelle und Ziel,
    • gl.MAX: Maximum von Quelle und Ziel.

Rückgabewert

Keiner (undefined).

Ausnahmen

Wenn mode nicht einer der drei möglichen Werte ist, wird ein gl.INVALID_ENUM Fehler ausgelöst.

Beispiele

Um die Blendgleichungen festzulegen, verwenden Sie:

js
gl.blendEquationSeparate(gl.FUNC_ADD, gl.FUNC_SUBTRACT);

Um die aktuellen Blendgleichungen abzurufen, fragen Sie die Konstanten BLEND_EQUATION, BLEND_EQUATION_RGB und BLEND_EQUATION_ALPHA ab, die gl.FUNC_ADD, gl.FUNC_SUBTRACT, gl.FUNC_REVERSE_SUBTRACT oder, wenn die EXT_blend_minmax aktiviert ist: ext.MIN_EXT oder ext.MAX_EXT zurückgeben.

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

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

Spezifikationen

Specification
WebGL Specification
# 5.14.3

Browser-Kompatibilität

Siehe auch