Traditional OpenGL includes fixed-function blending that combines source colors with the existing content of a render buffer in a variety of ways. A number of extensions have enhanced this functionality by adding further sources of blending weights and methods to combine them. However, the inputs to the fixed-function blending units are constrained to a source color (as output from fragment shading), destination color (as the current content of the frame buffer) or constants that may be used in their place.
This extension adds new blending functions whereby a fragment shader may output two colors, one of which is treated as the source color, and the other
used as a blending factor for either source or destination colors. Furthermore, this extension increases orthogonality by allowing the
SRC_ALPHA_SATURATE function to be used as the destination weight.
Requires ARB_fragment_shader and EXT_gpu_shader4. Promoted to core in OpenGL 3..
| Modifier and Type | Field and Description |
|---|---|
| public static final int | GL_MAX_DUAL_SOURCE_DRAW_BUFFERS
Accepted by the |
| public static final int | GL_ONE_MINUS_SRC1_ALPHA
Accepted by the |
| public static final int | GL_ONE_MINUS_SRC1_COLOR
Accepted by the |
| public static final int | GL_SRC1_COLOR
Accepted by the |
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| public static void | glBindFragDataLocationIndexed(int
the name of the program containing varying out variable whose binding to modify program, int the color number to bind the user-defined varying out variable to colorNumber, int the index of the color input to bind the user-defined varying out variable to index, ByteBuffer the name of the user-defined varying out variable whose binding to modify name)Binds a user-defined varying out variable to a fragment shader color number and index. |
| public static void | glBindFragDataLocationIndexed(int
the name of the program containing varying out variable whose binding to modify program, int the color number to bind the user-defined varying out variable to colorNumber, int the index of the color input to bind the user-defined varying out variable to index, CharSequence the name of the user-defined varying out variable whose binding to modify name)Binds a user-defined varying out variable to a fragment shader color number and index. |
| public static int | glGetFragDataIndex(int
the name of the program containing varying out variable whose binding to query program, ByteBuffer the name of the user-defined varying out variable whose index to query name)Queries the bindings of color indices to user-defined varying out variables. |
| public static int | glGetFragDataIndex(int
the name of the program containing varying out variable whose binding to query program, CharSequence the name of the user-defined varying out variable whose index to query name)Queries the bindings of color indices to user-defined varying out variables. |
| public static void | nglBindFragDataLocationIndexed(int program, int colorNumber, int index, long name)
Unsafe version of: |
| public static int |
| GL_MAX_DUAL_SOURCE_DRAW_BUFFERS | back to summary |
|---|---|
| public static final int GL_MAX_DUAL_SOURCE_DRAW_BUFFERS Accepted by the | |
| GL_ONE_MINUS_SRC1_ALPHA | back to summary |
|---|---|
| public static final int GL_ONE_MINUS_SRC1_ALPHA Accepted by the | |
| GL_ONE_MINUS_SRC1_COLOR | back to summary |
|---|---|
| public static final int GL_ONE_MINUS_SRC1_COLOR Accepted by the | |
| GL_SRC1_COLOR | back to summary |
|---|---|
| public static final int GL_SRC1_COLOR Accepted by the | |
| ARBBlendFuncExtended | back to summary |
|---|---|
| protected ARBBlendFuncExtended() | |
| glBindFragDataLocationIndexed | back to summary |
|---|---|
| public static void glBindFragDataLocationIndexed(int program, int colorNumber, int index, ByteBuffer name) Binds a user-defined varying out variable to a fragment shader color number and index.
| |
| glBindFragDataLocationIndexed | back to summary |
|---|---|
| public static void glBindFragDataLocationIndexed(int program, int colorNumber, int index, CharSequence name) Binds a user-defined varying out variable to a fragment shader color number and index.
| |
| glGetFragDataIndex | back to summary |
|---|---|
| public static int glGetFragDataIndex(int program, ByteBuffer name) Queries the bindings of color indices to user-defined varying out variables.
| |
| glGetFragDataIndex | back to summary |
|---|---|
| public static int glGetFragDataIndex(int program, CharSequence name) Queries the bindings of color indices to user-defined varying out variables.
| |
| nglBindFragDataLocationIndexed | back to summary |
|---|---|
| public static void nglBindFragDataLocationIndexed(int program, int colorNumber, int index, long name) Unsafe version of: | |
| nglGetFragDataIndex | back to summary |
|---|---|
| public static int nglGetFragDataIndex(int program, long name) Unsafe version of: | |