OES_draw_buffers_indexed:blendEquationiOES() 方法
OES_draw_buffers_indexed WebGL 擴充套件的 blendEquationiOES() 方法用於為特定的繪圖緩衝區設定 RGB 混合方程和 alpha 混合方程。
請參閱 OES_draw_buffers_indexed.blendEquationSeparateiOES() 來單獨設定 RGB 和 alpha,以及 WebGLRenderingContext.blendEquation() 來獲取此方法的 WebGL 1 版本。
語法
js
blendEquationiOES(buf, mode)
引數
buf-
一個整數
i,指定與常量gl.DRAW_BUFFERi關聯的繪製緩衝區。請參閱 WebGL 繪製緩衝區常量。 模式-
一個
GLenum,指定如何組合源顏色和目標顏色。接受與WebGLRenderingContext.blendEquation()中mode引數相同的列舉值。
返回值
無(undefined)。
異常
- 如果
buf不是有效值,則會丟擲gl.INVALID_VALUE錯誤。 - 如果
mode不是可能值之一,則會丟擲gl.INVALID_ENUM錯誤。
示例
設定和獲取混合方程
你可以像這樣設定 gl.DRAW_BUFFER0 和 gl.DRAW_BUFFER1 繪圖緩衝區的混合方程:
js
const ext = gl.getExtension("OES_draw_buffers_indexed");
ext.blendEquationiOES(0, gl.FUNC_ADD);
ext.blendEquationiOES(1, gl.FUNC_SUBTRACT);
要獲取 gl.DRAW_BUFFER0 和 gl.DRAW_BUFFER1 繪圖緩衝區的混合方程,請使用 WebGL2RenderingContext.getIndexedParameter() 查詢 BLEND_EQUATION_RGB 和 BLEND_EQUATION_ALPHA 常量。
js
// For gl.DRAW_BUFFER0
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 0);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 0);
// For gl.DRAW_BUFFER0
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 1);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 1);
規範
| 規範 |
|---|
| WebGL OES_draw_buffers_indexed 擴充套件規範 |
瀏覽器相容性
載入中…