public class NVViewportArray
extends java.lang.Object
OpenGL ES is modeled on a pipeline of operations. The final stage in this pipeline before rasterization is the viewport transformation. This stage transforms vertices from view space into window coordinates and allows the application to specify a rectangular region of screen space into which OpenGL should draw primitives. Unextended OpenGL implementations provide a single viewport per context. In order to draw primitives into multiple viewports, the OpenGL viewport may be changed between several draw calls. With the advent of Geometry Shaders, it has become possible for an application to amplify geometry and produce multiple output primitives for each primitive input to the Geometry Shader. It is possible to direct these primitives to render into a selected render target. However, all render targets share the same, global OpenGL viewport.
This extension enhances OpenGL by providing a mechanism to expose multiple viewports. Each viewport is specified as a rectangle. The destination viewport may be selected per-primitive by the geometry shader. This allows the Geometry Shader to produce different versions of primitives destined for separate viewport rectangles on the same surface. Additionally, when combined with multiple framebuffer attachments, it allows a different viewport rectangle to be selected for each. This extension also exposes a separate scissor rectangle for each viewport. Finally, the viewport bounds are now floating point quantities allowing fractional pixel offsets to be applied during the viewport transform.
Requires GLES 3.1 and EXT_geometry_shader.
| Modifier and Type | Field and Description |
|---|---|
static int |
GL_MAX_VIEWPORTS_NV
Accepted by the
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v. |
static int |
GL_VIEWPORT_BOUNDS_RANGE_NV
Accepted by the
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v. |
static int |
GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV
Accepted by the
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v. |
static int |
GL_VIEWPORT_SUBPIXEL_BITS_NV
Accepted by the
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v. |
| Modifier and Type | Method and Description |
|---|---|
static void |
glDepthRangeArrayfvNV(int first,
float[] v)
Array version of:
DepthRangeArrayfvNV |
static void |
glDepthRangeArrayfvNV(int first,
java.nio.FloatBuffer v) |
static void |
glDepthRangeIndexedfNV(int index,
float n,
float f) |
static void |
glDisableiNV(int target,
int index) |
static void |
glEnableiNV(int target,
int index) |
static void |
glGetFloati_vNV(int target,
int index,
float[] data)
Array version of:
GetFloati_vNV |
static void |
glGetFloati_vNV(int target,
int index,
java.nio.FloatBuffer data) |
static float |
glGetFloatiNV(int target,
int index) |
static boolean |
glIsEnablediNV(int target,
int index) |
static void |
glScissorArrayvNV(int first,
int[] v)
Array version of:
ScissorArrayvNV |
static void |
glScissorArrayvNV(int first,
java.nio.IntBuffer v) |
static void |
glScissorIndexedNV(int index,
int left,
int bottom,
int width,
int height) |
static void |
glScissorIndexedvNV(int index,
int[] v)
Array version of:
ScissorIndexedvNV |
static void |
glScissorIndexedvNV(int index,
java.nio.IntBuffer v) |
static void |
glViewportArrayvNV(int first,
float[] v)
Array version of:
ViewportArrayvNV |
static void |
glViewportArrayvNV(int first,
java.nio.FloatBuffer v) |
static void |
glViewportIndexedfNV(int index,
float x,
float y,
float w,
float h) |
static void |
glViewportIndexedfvNV(int index,
float[] v)
Array version of:
ViewportIndexedfvNV |
static void |
glViewportIndexedfvNV(int index,
java.nio.FloatBuffer v) |
static void |
nglDepthRangeArrayfvNV(int first,
int count,
long v) |
static void |
nglGetFloati_vNV(int target,
int index,
long data) |
static void |
nglScissorArrayvNV(int first,
int count,
long v) |
static void |
nglScissorIndexedvNV(int index,
long v) |
static void |
nglViewportArrayvNV(int first,
int count,
long v) |
static void |
nglViewportIndexedfvNV(int index,
long v) |
public static final int GL_MAX_VIEWPORTS_NV
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.public static final int GL_VIEWPORT_SUBPIXEL_BITS_NV
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.public static final int GL_VIEWPORT_BOUNDS_RANGE_NV
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.public static final int GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV
pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.public static void nglViewportArrayvNV(int first,
int count,
long v)
public static void glViewportArrayvNV(int first,
java.nio.FloatBuffer v)
public static void glViewportIndexedfNV(int index,
float x,
float y,
float w,
float h)
public static void nglViewportIndexedfvNV(int index,
long v)
public static void glViewportIndexedfvNV(int index,
java.nio.FloatBuffer v)
public static void nglScissorArrayvNV(int first,
int count,
long v)
public static void glScissorArrayvNV(int first,
java.nio.IntBuffer v)
public static void glScissorIndexedNV(int index,
int left,
int bottom,
int width,
int height)
public static void nglScissorIndexedvNV(int index,
long v)
public static void glScissorIndexedvNV(int index,
java.nio.IntBuffer v)
public static void nglDepthRangeArrayfvNV(int first,
int count,
long v)
public static void glDepthRangeArrayfvNV(int first,
java.nio.FloatBuffer v)
public static void glDepthRangeIndexedfNV(int index,
float n,
float f)
public static void nglGetFloati_vNV(int target,
int index,
long data)
public static void glGetFloati_vNV(int target,
int index,
java.nio.FloatBuffer data)
public static float glGetFloatiNV(int target,
int index)
public static void glEnableiNV(int target,
int index)
public static void glDisableiNV(int target,
int index)
public static boolean glIsEnablediNV(int target,
int index)
public static void glViewportArrayvNV(int first,
float[] v)
ViewportArrayvNVpublic static void glViewportIndexedfvNV(int index,
float[] v)
ViewportIndexedfvNVpublic static void glScissorArrayvNV(int first,
int[] v)
ScissorArrayvNVpublic static void glScissorIndexedvNV(int index,
int[] v)
ScissorIndexedvNVpublic static void glDepthRangeArrayfvNV(int first,
float[] v)
DepthRangeArrayfvNVpublic static void glGetFloati_vNV(int target,
int index,
float[] data)
GetFloati_vNVCopyright LWJGL. All Rights Reserved. License terms.