GL_EXT_draw_buffers_indexed#

Supported Hardware#

Series6, Series6XE, Series6XT

Valid APIs#

OpenGL ES 3.x

This extension is also compatible with OpenGL ES 2.0 drivers that support EXT_draw_buffers.

Description#

This extension builds upon the EXT_draw_buffers extension. In EXT_draw_buffers (part of OpenGL ES 3.0), separate values could be written to each colour buffer, but the blend enable, blend functions, blend equations and colour write masks are global and apply to all colour outputs.

This extension provides the ability to independently:

  • enable or disable blending,

  • set the blend equations,

  • set the blend functions, and

  • set the colour write masks per colour output.

This extension introduces indexed versions of the enable, blend equation, blend function, and colour mask commands, as well as associated indexed queries in order to control and query these states independently on a per-colour output basis.

Example#

EnableiEXT(BLEND, 0);
DisableiEXT(BLEND, 0);
IsEnablediEXT(BLEND, 0);
BlendEquationiEXT(0, FUNC_ADD);
BlendEquationSeparateiEXT(0, FUNC_ADD, FUNC_SUBTRACT);
BlendFunciEXT(0, ZERO, ONE);
BlendFuncSeparateiEXT(0, SRC_COLOR, DST_COLOR, CONSTANT_ALPHA, SRC_ALPHA_SATURATE);
ColorMaskiEXT(0, EGL_TRUE, EGL_TRUE, EGL_TRUE, EGL_TRUE);