Top Description Fields Constructors Methods
org.lwjgl.opengles

public Class NVViewportArray

extends Object
Class Inheritance
Imports
java.nio.*, org.lwjgl.system.*

Native bindings to the NV_viewport_array extension.

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.

Field Summary

Modifier and TypeField and Description
public static final int
GL_MAX_VIEWPORTS_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

public static final int
GL_VIEWPORT_BOUNDS_RANGE_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

public static final int
GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

public static final int
GL_VIEWPORT_SUBPIXEL_BITS_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static void
public static void
glDepthRangeArrayfvNV(int first, float[] v)

Array version of: DepthRangeArrayfvNV

public static native void
glDepthRangeIndexedfNV(int index, float n, float f)

public static native void
glDisableiNV(int target, int index)

public static native void
glEnableiNV(int target, int index)

public static void
glGetFloati_vNV(int target, int index, FloatBuffer data)

public static void
glGetFloati_vNV(int target, int index, float[] data)

Array version of: GetFloati_vNV

public static float
glGetFloatiNV(int target, int index)

public static native boolean
glIsEnablediNV(int target, int index)

public static void
public static void
glScissorArrayvNV(int first, int[] v)

Array version of: ScissorArrayvNV

public static native void
glScissorIndexedNV(int index, int left, int bottom, int width, int height)

public static void
public static void
glScissorIndexedvNV(int index, int[] v)

Array version of: ScissorIndexedvNV

public static void
public static void
glViewportArrayvNV(int first, float[] v)

Array version of: ViewportArrayvNV

public static native void
glViewportIndexedfNV(int index, float x, float y, float w, float h)

public static void
public static void
glViewportIndexedfvNV(int index, float[] v)

Array version of: ViewportIndexedfvNV

public static native void
nglDepthRangeArrayfvNV(int first, int count, long v)

public static native void
nglGetFloati_vNV(int target, int index, long data)

public static native void
nglScissorArrayvNV(int first, int count, long v)

public static native void
nglScissorIndexedvNV(int index, long v)

public static native void
nglViewportArrayvNV(int first, int count, long v)

public static native void
nglViewportIndexedfvNV(int index, long v)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

GL_MAX_VIEWPORTS_NVback to summary
public static final int GL_MAX_VIEWPORTS_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

GL_VIEWPORT_BOUNDS_RANGE_NVback to summary
public static final int GL_VIEWPORT_BOUNDS_RANGE_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NVback to summary
public static final int GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

GL_VIEWPORT_SUBPIXEL_BITS_NVback to summary
public static final int GL_VIEWPORT_SUBPIXEL_BITS_NV

Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v.

Constructor Detail

NVViewportArrayback to summary
protected NVViewportArray()

Method Detail

glDepthRangeArrayfvNVback to summary
public static void glDepthRangeArrayfvNV(int first, FloatBuffer v)
glDepthRangeArrayfvNVback to summary
public static void glDepthRangeArrayfvNV(int first, float[] v)

Array version of: DepthRangeArrayfvNV

glDepthRangeIndexedfNVback to summary
public static native void glDepthRangeIndexedfNV(int index, float n, float f)
glDisableiNVback to summary
public static native void glDisableiNV(int target, int index)
glEnableiNVback to summary
public static native void glEnableiNV(int target, int index)
glGetFloati_vNVback to summary
public static void glGetFloati_vNV(int target, int index, FloatBuffer data)
glGetFloati_vNVback to summary
public static void glGetFloati_vNV(int target, int index, float[] data)

Array version of: GetFloati_vNV

glGetFloatiNVback to summary
public static float glGetFloatiNV(int target, int index)
Annotations
@NativeType:void
glIsEnablediNVback to summary
public static native boolean glIsEnablediNV(int target, int index)
Annotations
@NativeType:GLboolean
glScissorArrayvNVback to summary
public static void glScissorArrayvNV(int first, IntBuffer v)
glScissorArrayvNVback to summary
public static void glScissorArrayvNV(int first, int[] v)

Array version of: ScissorArrayvNV

glScissorIndexedNVback to summary
public static native void glScissorIndexedNV(int index, int left, int bottom, int width, int height)
glScissorIndexedvNVback to summary
public static void glScissorIndexedvNV(int index, IntBuffer v)
glScissorIndexedvNVback to summary
public static void glScissorIndexedvNV(int index, int[] v)

Array version of: ScissorIndexedvNV

glViewportArrayvNVback to summary
public static void glViewportArrayvNV(int first, FloatBuffer v)
glViewportArrayvNVback to summary
public static void glViewportArrayvNV(int first, float[] v)

Array version of: ViewportArrayvNV

glViewportIndexedfNVback to summary
public static native void glViewportIndexedfNV(int index, float x, float y, float w, float h)
glViewportIndexedfvNVback to summary
public static void glViewportIndexedfvNV(int index, FloatBuffer v)
glViewportIndexedfvNVback to summary
public static void glViewportIndexedfvNV(int index, float[] v)

Array version of: ViewportIndexedfvNV

nglDepthRangeArrayfvNVback to summary
public static native void nglDepthRangeArrayfvNV(int first, int count, long v)
nglGetFloati_vNVback to summary
public static native void nglGetFloati_vNV(int target, int index, long data)
nglScissorArrayvNVback to summary
public static native void nglScissorArrayvNV(int first, int count, long v)
nglScissorIndexedvNVback to summary
public static native void nglScissorIndexedvNV(int index, long v)
nglViewportArrayvNVback to summary
public static native void nglViewportArrayvNV(int first, int count, long v)
nglViewportIndexedfvNVback to summary
public static native void nglViewportIndexedfvNV(int index, long v)