This extension allows selecting among draw buffers as the rendering target. This may be among multiple primary buffers pertaining to platform-specific stereoscopic or multiview displays or among offscreen framebuffer object color attachments.
To remove any artificial limitations imposed on the number of possible buffers, draw buffers are identified not as individual enums, but as pairs of values consisting of an enum representing buffer locations such as COLOR_ATTACHMENT_EXT or MULTIVIEW_EXT, and an integer representing an identifying index of buffers of this location. These (location, index) pairs are used to specify draw buffer targets using a new DrawBuffersIndexedEXT call.
Rendering to buffers of location MULTIVIEW_EXT associated with the context allows rendering to multiview buffers created by EGL using EGL_EXT_multiview_window for stereoscopic displays.
Rendering to COLOR_ATTACHMENT_EXT buffers allows implementations to increase the number of potential color attachments indefinitely to renderbuffers and textures.
This extension allows the traditional quad buffer stereoscopic rendering method that has proven effective by indicating a left or right draw buffer and rendering to each accordingly, but is also dynamic enough to handle an arbitrary number of color buffer targets all using the same shader. This grants the user maximum flexibility as well as a familiar interface.
| Modifier and Type | Field and Description |
|---|---|
| public static final int | GL_COLOR_ATTACHMENT_EXT
Accepted by the |
| public static final int | GL_DRAW_BUFFER_EXT
Accepted by the |
| public static final int | GL_MAX_MULTIVIEW_BUFFERS_EXT
Accepted by the |
| public static final int | GL_MULTIVIEW_EXT
Accepted by the |
| public static final int | GL_READ_BUFFER_EXT
Accepted by the |
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| public static void | |
| public static void | |
| public static void | |
| public static void | |
| public static int | |
| public static native void | |
| public static native void | |
| public static native void |
| GL_COLOR_ATTACHMENT_EXT | back to summary |
|---|---|
| public static final int GL_COLOR_ATTACHMENT_EXT Accepted by the | |
| GL_DRAW_BUFFER_EXT | back to summary |
|---|---|
| public static final int GL_DRAW_BUFFER_EXT Accepted by the | |
| GL_MAX_MULTIVIEW_BUFFERS_EXT | back to summary |
|---|---|
| public static final int GL_MAX_MULTIVIEW_BUFFERS_EXT Accepted by the | |
| GL_MULTIVIEW_EXT | back to summary |
|---|---|
| public static final int GL_MULTIVIEW_EXT Accepted by the | |
| GL_READ_BUFFER_EXT | back to summary |
|---|---|
| public static final int GL_READ_BUFFER_EXT Accepted by the | |
| EXTMultiviewDrawBuffers | back to summary |
|---|---|
| protected EXTMultiviewDrawBuffers() | |
| glDrawBuffersIndexedEXT | back to summary |
|---|---|
| public static void glDrawBuffersIndexedEXT(IntBuffer location, IntBuffer indices) | |
| glDrawBuffersIndexedEXT | back to summary |
|---|---|
| public static void glDrawBuffersIndexedEXT(int[] location, int[] indices) Array version of: | |
| glGetIntegeri_vEXT | back to summary |
|---|---|
| public static void glGetIntegeri_vEXT(int target, int index, IntBuffer data) | |
| glGetIntegeri_vEXT | back to summary |
|---|---|
| public static void glGetIntegeri_vEXT(int target, int index, int[] data) Array version of: | |
| glGetIntegeriEXT | back to summary |
|---|---|
public static int glGetIntegeriEXT(int target, int index)
| |
| glReadBufferIndexedEXT | back to summary |
|---|---|
| public static native void glReadBufferIndexedEXT(int src, int index) | |
| nglDrawBuffersIndexedEXT | back to summary |
|---|---|
| public static native void nglDrawBuffersIndexedEXT(int n, long location, long indices) | |
| nglGetIntegeri_vEXT | back to summary |
|---|---|
| public static native void nglGetIntegeri_vEXT(int target, int index, long data) | |