OES_draw_buffers_indexed: blendEquationSeparateiOES() Methode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Dezember 2022.
Die blendEquationSeparateiOES()-Methode der OES_draw_buffers_indexed WebGL-Erweiterung legt die RGB- und Alpha-Mischgleichungen separat für einen bestimmten Zeichenpuffer fest.
Siehe OES_draw_buffers_indexed.blendEquationiOES() zum gleichzeitigen Setzen von RGB und Alpha sowie WebGLRenderingContext.blendEquationSeparate() für die WebGL 1-Version dieser Methode.
Syntax
blendEquationSeparateiOES(buf, modeRGB, modeAlpha)
Parameter
buf-
Ein ganzzahliger Wert
i, der den Zeichenpuffer angibt, der mit der Konstantegl.DRAW_BUFFERiassoziiert ist, siehe WebGL-Zeichenpufferkonstanten. modeRGB-
Ein
GLenum, der angibt, wie Quell- und Ziel-RGB-Farbkomponenten kombiniert werden. Akzeptiert dieselben Enums wie dermodeRGB-Parameter inWebGLRenderingContext.blendEquationSeparate(). modeAlpha-
Ein
GLenum, der angibt, wie Quell- und Ziel-Alpha-Farbkomponenten kombiniert werden. Akzeptiert dieselben Enums wie dermodeAlpha-Parameter inWebGLRenderingContext.blendEquationSeparate().
Rückgabewert
Keiner (undefined).
Ausnahmen
- Wenn
bufkein gültiger Wert ist, wird eingl.INVALID_VALUE-Fehler ausgelöst. - Wenn
modeRGBodermodeAlphanicht auf einen der möglichen Werte gesetzt sind, wird eingl.INVALID_ENUM-Fehler ausgelöst.
Beispiele
>Setzen und Abfragen von Mischgleichungen
Das Folgende setzt die Mischgleichungen für die Zeichenpuffer gl.DRAW_BUFFER0 (Aufruf, wenn buf 0 ist) und gl.DRAW_BUFFER1 (Aufruf, wenn buf 1 ist).
const ext = gl.getExtension("OES_draw_buffers_indexed");
ext.blendEquationSeparateiOES(0, gl.FUNC_ADD, gl.FUNC_SUBTRACT);
ext.blendEquationSeparateiOES(1, gl.FUNC_ADD, gl.FUNC_SUBTRACT);
Um die Mischgleichungen für gl.DRAW_BUFFER0 und gl.DRAW_BUFFER1 zu erhalten, fragen Sie die Konstanten BLEND_EQUATION_RGB und BLEND_EQUATION_ALPHA mit WebGL2RenderingContext.getIndexedParameter() ab:
// For gl.DRAW_BUFFER0
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 0);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 0);
// for gl.DRAW_BUFFER1
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 1);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 1);
Spezifikationen
| Specification |
|---|
| WebGL OES_draw_buffers_indexed Extension Specification> |
Browser-Kompatibilität
Loading…