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 WebGLRenderingContext.blendEquationSeparate()-Methode der WebGL API wird verwendet, um die RGB-Blend-Gleichung und die Alpha-Blend-Gleichung separat festzulegen.

Die Blend-Gleichung bestimmt, wie ein neues Pixel mit einem Pixel, das bereits im WebGLFramebuffer enthalten ist, kombiniert wird.

Syntax

js
blendEquationSeparate(modeRGB, modeAlpha)

Parameter

modeRGB

Ein GLenum, das angibt, wie die roten, grünen und blauen Komponenten von Quell- und Ziel-Farben kombiniert werden. Muss entweder 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-Kontext stehen zusätzlich folgende Werte zur Verfügung:

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

Ein GLenum, das angibt, wie die Alphakomponente (Transparenz) von Quell- und Ziel-Farben kombiniert wird. Muss entweder 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-Kontext stehen zusätzlich folgende Werte zur Verfügung:

    • 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 geworfen.

Beispiele

Um die Blend-Gleichungen festzulegen, verwenden Sie:

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

Um die aktuellen Blend-Gleichungen zu erhalten, fragen Sie die BLEND_EQUATION, BLEND_EQUATION_RGB und BLEND_EQUATION_ALPHA-Konstanten ab, die gl.FUNC_ADD, gl.FUNC_SUBTRACT, gl.FUNC_REVERSE_SUBTRACT oder, falls 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

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
blendEquationSeparate

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch