Documentation de Gambas - /comp/gb.opengl/gl/getintegerv

/comp/gb.opengl/gl/getintegerv

# Gl.GetIntegerv (gb.opengl)

Static Function GetIntegerv ( Parameter As Integer ] ) As Integer[]

Return the value or values of a selected parameter.

### Parameters

pname

  Specifies the parameter value to be returned. The symbolic constants in the list below are accepted.

params

  Returns the value or values of the specified parameter.

### C Specification

void glGetIntegeri_v( | GLenum | pname,
| GLuint | index,
| GLint | data);

### C Specification

void glGetInteger64i_v( | GLenum | pname,
| GLuint | index,
| GLint64 | data);

### Parameters

pname

  Specifies the parameter value to be returned. The symbolic constants in the list below are accepted.

index

  Specifies the index of the particular element being queried.

data

  Returns the value or values of the specified parameter.

### Description

These four commands return values for simple state variables in GL. pname is a symbolic constant indicating the state variable to be returned, and params is a pointer to an array of the indicated type in which to place the returned data.

Type conversion is performed if params has a different type than the state variable value being requested. If Gl.GetBooleanv is called, a floating-point (or integer) value is converted to Gl.FALSE if and only if it is 0.0 (or 0). Otherwise, it is converted to Gl.TRUE. If Gl.GetIntegerv is called, boolean values are returned as Gl.TRUE or Gl.FALSE, and most floating-point values are rounded to the nearest integer value. Floating-point colors and normals, however, are returned with a linear mapping that maps 1.0 to the most positive representable integer value and -1.0 to the most negative representable integer value. If Gl.GetFloatv or Gl.GetDoublev is called, boolean values are returned as Gl.TRUE or Gl.FALSE, and integer values are converted to floating-point values.

The following symbolic constants are accepted by pname:

Gl.ACTIVE_TEXTURE

  params returns a single value indicating the active multitexture unit. The initial value is Gl.TEXTURE0. See Gl.ActiveTexture.

Gl.ALIASED_LINE_WIDTH_RANGE

  params returns a pair of values indicating the range of widths supported for aliased lines. See Gl.LineWidth.

Gl.SMOOTH_LINE_WIDTH_RANGE

  params returns a pair of values indicating the range of widths supported for smooth (antialiased) lines. See Gl.LineWidth.

Gl.SMOOTH_LINE_WIDTH_GRANULARITY

  params returns a single value indicating the level of quantization applied to smooth line width parameters.

Gl.ARRAY_BUFFER_BINDING

  params returns a single value, the name of the buffer object currently bound to the target Gl.ARRAY_BUFFER. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See Gl.BindBuffer.

Gl.BLEND

  params returns a single boolean value indicating whether blending is enabled. The initial value is Gl.FALSE. See Gl.BlendFunc.

Gl.BLEND_COLOR

  params returns four values, the red, green, blue, and alpha values which are the components of the blend color. See Gl.BlendColor.

Gl.BLEND_DST_ALPHA

  params returns one value, the symbolic constant identifying the alpha destination blend function. The initial value is Gl.ZERO. See Gl.BlendFunc and Gl.BlendFuncSeparate.

Gl.BLEND_DST_RGB

  params returns one value, the symbolic constant identifying the RGB destination blend function. The initial value is Gl.ZERO. See Gl.BlendFunc and Gl.BlendFuncSeparate.

Gl.BLEND_EQUATION_RGB

  params returns one value, a symbolic constant indicating whether the RGB blend equation is Gl.FUNC_ADD, Gl.FUNC_SUBTRACT, Gl.FUNC_REVERSE_SUBTRACT, Gl.MIN or Gl.MAX. See Gl.BlendEquationSeparate.

Gl.BLEND_EQUATION_ALPHA

  params returns one value, a symbolic constant indicating whether the Alpha blend equation is Gl.FUNC_ADD, Gl.FUNC_SUBTRACT, Gl.FUNC_REVERSE_SUBTRACT, Gl.MIN or Gl.MAX. See Gl.BlendEquationSeparate.

Gl.BLEND_SRC_ALPHA

  params returns one value, the symbolic constant identifying the alpha source blend function. The initial value is Gl.ONE. See Gl.BlendFunc and Gl.BlendFuncSeparate.

Gl.BLEND_SRC_RGB

  params returns one value, the symbolic constant identifying the RGB source blend function. The initial value is Gl.ONE. See Gl.BlendFunc and Gl.BlendFuncSeparate.

Gl.COLOR_CLEAR_VALUE

  params returns four values: the red, green, blue, and alpha values used to clear the color buffers. Integer values, if requested, are linearly mapped from the internal floating-point representation such that 1.0 returns the most positive representable integer value, and -1.0 returns the most negative representable integer value. The initial value is (0, 0, 0, 0). See Gl.ClearColor.

Gl.COLOR_LOGIC_OP

  params returns a single boolean value indicating whether a fragment's RGBA color values are merged into the framebuffer using a logical operation. The initial value is Gl.FALSE. See Gl.LogicOp.

Gl.COLOR_WRITEMASK

  params returns four boolean values: the red, green, blue, and alpha write enables for the color buffers. The initial value is (Gl.TRUE, Gl.TRUE, Gl.TRUE, Gl.TRUE). See Gl.ColorMask.

Gl.COMPRESSED_TEXTURE_FORMATS

  params returns a list of symbolic constants of length Gl.NUM_COMPRESSED_TEXTURE_FORMATS indicating which compressed texture formats are available. See Gl.CompressedTexImage2D.

Gl.CULL_FACE

  params returns a single boolean value indicating whether polygon culling is enabled. The initial value is Gl.FALSE. See Gl.CullFace.

Gl.CURRENT_PROGRAM

  params returns one value, the name of the program object that is currently active, or 0 if no program object is active. See Glu.seProgram.

Gl.DEPTH_CLEAR_VALUE

  params returns one value, the value that is used to clear the depth buffer. Integer values, if requested, are linearly mapped from the internal floating-point representation such that 1.0 returns the most positive representable integer value, and -1.0 returns the most negative representable integer value. The initial value is 1. See Gl.ClearDepth.

Gl.DEPTH_FUNC

  params returns one value, the symbolic constant that indicates the depth comparison function. The initial value is Gl.LESS. See Gl.DepthFunc.

Gl.DEPTH_RANGE

  params returns two values: the near and far mapping limits for the depth buffer. Integer values, if requested, are linearly mapped from the internal floating-point representation such that 1.0 returns the most positive representable integer value, and -1.0 returns the most negative representable integer value. The initial value is (0, 1). See Gl.DepthRange.

Gl.DEPTH_TEST

  params returns a single boolean value indicating whether depth testing of fragments is enabled. The initial value is Gl.FALSE. See Gl.DepthFunc and Gl.DepthRange.

Gl.DEPTH_WRITEMASK

  params returns a single boolean value indicating if the depth buffer is enabled for writing. The initial value is Gl.TRUE. See Gl.DepthMask.

Gl.DITHER

  params returns a single boolean value indicating whether dithering of fragment colors and indices is enabled. The initial value is Gl.TRUE.

Gl.DOUBLEBUFFER

  params returns a single boolean value indicating whether double buffering is supported.

Gl.DRAW_BUFFER

  params returns one value, a symbolic constant indicating which buffers are being drawn to. See Gl.DrawBuffer. The initial value is Gl.BACK if there are back buffers, otherwise it is Gl.FRONT.

Gl.DRAW_BUFFERi

  params returns one value, a symbolic constant indicating which buffers are being drawn to by the corresponding output color. See Gl.DrawBuffers. The initial value of Gl.DRAW_BUFFER0 is Gl.BACK if there are back buffers, otherwise it is Gl.FRONT. The initial values of draw buffers for all other output colors is Gl.NONE.

Gl.DRAW_FRAMEBFUFER_BINDING

  params returns one value, the name of the framebuffer object currently bound to the Gl.DRAW_FRAMEBUFFER target. If the default framebuffer is bound, this value will be zero. The initial value is zero. See Gl.BindFramebuffer.

Gl.READ_FRAMEBFUFER_BINDING

  params returns one value, the name of the framebuffer object currently bound to the Gl.READ_FRAMEBUFFER target. If the default framebuffer is bound, this value will be zero. The initial value is zero. See Gl.BindFramebuffer.

Gl.ELEMENT_ARRAY_BUFFER_BINDING

  params returns a single value, the name of the buffer object currently bound to the target Gl.ELEMENT_ARRAY_BUFFER. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See Gl.BindBuffer.

Gl.RENDERBUFFER_BINDING

  params returns a single value, the name of the renderbuffer object currently bound to the target Gl.RENDERBUFFER. If no renderbuffer object is bound to this target, 0 is returned. The initial value is 0. See Gl.BindRenderbuffer.

Gl.FRAGMENT_SHADER_DERIVATIVE_HINT

  params returns one value, a symbolic constant indicating the mode of the derivative accuracy hint for fragment shaders. The initial value is Gl.DONT_CARE. See Gl.Hint.

Gl.LINE_SMOOTH

  params returns a single boolean value indicating whether antialiasing of lines is enabled. The initial value is Gl.FALSE. See Gl.LineWidth.

Gl.LINE_SMOOTH_HINT

  params returns one value, a symbolic constant indicating the mode of the line antialiasing hint. The initial value is Gl.DONT_CARE. See Gl.Hint.

Gl.LINE_WIDTH

  params returns one value, the line width as specified with Gl.LineWidth. The initial value is 1.

Gl.LINE_WIDTH_GRANULARITY

  params returns one value, the width difference between adjacent supported widths for antialiased lines. See Gl.LineWidth.

Gl.LINE_WIDTH_RANGE

  params returns two values: the smallest and largest supported widths for antialiased lines. See Gl.LineWidth.

Gl.LOGIC_OP_MODE

  params returns one value, a symbolic constant indicating the selected logic operation mode. The initial value is Gl.COPY. See Gl.LogicOp.

Gl.MAX_3D_TEXTURE_SIZE

  params returns one value, a rough estimate of the largest 3D texture that the GL can handle. The value must be at least 64. Use Gl.PROXY_TEXTURE_3D to determine if a texture is too large. See Gl.TexImage3D.

Gl.MAX_CLIP_DISTANCES

  params returns one value, the maximum number of application-defined clipping distances. The value must be at least 8.

Gl.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS

  params returns one value, the number of words for fragment shader uniform variables in all uniform blocks (including default). The value must be at least 1. See Glu.niform.

Gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS

  params returns one value, the maximum supported texture image units that can be used to access texture maps from the vertex shader and the fragment processor combined. If both the vertex shader and the fragment processing stage access the same texture image unit, then that counts as using two texture image units against this limit. The value must be at least 48. See Gl.ActiveTexture.

Gl.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS

  params returns one value, the number of words for vertex shader uniform variables in all uniform blocks (including default). The value must be at least 1. See Glu.niform.

Gl.MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS

  params returns one value, the number of words for geometry shader uniform variables in all uniform blocks (including default). The value must be at least 1. See Glu.niform.

Gl.MAX_VARYING_COMPONENTS

  params returns one value, the number components for varying variables, which must be at least 60.

Gl.MAX_COMBINED_UNIFORM_BLOCKS

  params returns one value, the maximum number of uniform blocks per program. The value must be at least 36. See Glu.niformBlockBinding.

Gl.MAX_CUBE_MAP_TEXTURE_SIZE

  params returns one value. The value gives a rough estimate of the largest cube-map texture that the GL can handle. The value must be at least 1024. Use Gl.PROXY_TEXTURE_CUBE_MAP to determine if a texture is too large. See Gl.TexImage2D.

Gl.MAX_DRAW_BUFFERS

  params returns one value, the maximum number of simultaneous outputs that may be written in a fragment shader. The value must be at least 8. See Gl.DrawBuffers.

Gl.MAX_DUALSOURCE_DRAW_BUFFERS

  params returns one value, the maximum number of active draw buffers when using dual-source blending. The value must be at least 1. See Gl.BlendFunc and Gl.BlendFuncSeparate.

Gl.MAX_ELEMENTS_INDICES

  params returns one value, the recommended maximum number of vertex array indices. See Gl.DrawRangeElements.

Gl.MAX_ELEMENTS_VERTICES

  params returns one value, the recommended maximum number of vertex array vertices. See Gl.DrawRangeElements.

Gl.MAX_FRAGMENT_UNIFORM_COMPONENTS

  params returns one value, the maximum number of individual floating-point, integer, or boolean values that can be held in uniform variable storage for a fragment shader. The value must be at least 1024. See Glu.niform.

Gl.MAX_FRAGMENT_UNIFORM_BLOCKS

  params returns one value, the maximum number of uniform blocks per fragment shader. The value must be at least 12. See Glu.niformBlockBinding.

Gl.MAX_FRAGMENT_INPUT_COMPONENTS

  params returns one value, the maximum number of components of the inputs read by the fragment shader, which must be at least 128.

Gl.MIN_PROGRAM_TEXEL_OFFSET

  params returns one value, the minimum texel offset allowed in a texture lookup, which must be at most -8.

Gl.MAX_PROGRAM_TEXEL_OFFSET

  params returns one value, the maximum texel offset allowed in a texture lookup, which must be at least 7.

Gl.MAX_RECTANGLE_TEXTURE_SIZE

  params returns one value. The value gives a rough estimate of the largest rectangular texture that the GL can handle. The value must be at least 1024. Use Gl.PROXY_RECTANGLE_TEXTURE to determine if a texture is too large. See Gl.TexImage2D.

Gl.MAX_TEXTURE_IMAGE_UNITS

  params returns one value, the maximum supported texture image units that can be used to access texture maps from the fragment shader. The value must be at least 16. See Gl.ActiveTexture.

Gl.MAX_TEXTURE_LOD_BIAS

  params returns one value, the maximum, absolute value of the texture level-of-detail bias. The value must be at least 2.0.

Gl.MAX_TEXTURE_SIZE

  params returns one value. The value gives a rough estimate of the largest texture that the GL can handle. The value must be at least 1024. Use a proxy texture target such as Gl.PROXY_TEXTURE_1D or Gl.PROXY_TEXTURE_2D to determine if a texture is too large. See Gl.TexImage1D and Gl.TexImage2D.

Gl.MAX_RENDERBUFFER_SIZE

  params returns one value. The value indicates the maximum supported size for renderbuffers. See Gl.FramebufferRenderbuffer.

Gl.MAX_ARRAY_TEXTURE_LAYERS

  params returns one value. The value indicates the maximum number of layers allowed in an array texture, and must be at least 256. See Gl.TexImage2D.

Gl.MAX_TEXTURE_BUFFER_SIZE

  params returns one value. The value gives the maximum number of texels allowed in the texel array of a texture buffer object. Value must be at least 65536.

Gl.MAX_UNIFORM_BLOCK_SIZE

  params returns one value, the maximum size in basic machine units of a uniform block. The value must be at least 16384. See Glu.niformBlockBinding.

Gl.MAX_VARYING_FLOATS

  params returns one value, the maximum number of interpolators available for processing varying variables used by vertex and fragment shaders. This value represents the number of individual floating-point values that can be interpolated; varying variables declared as vectors, matrices, and arrays will all consume multiple interpolators. The value must be at least 32.

Gl.MAX_VERTEX_ATTRIBS

  params returns one value, the maximum number of 4-component generic vertex attributes accessible to a vertex shader. The value must be at least 16. See Gl.VertexAttrib.

Gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS

  params returns one value, the maximum supported texture image units that can be used to access texture maps from the vertex shader. The value may be at least 16. See Gl.ActiveTexture.

Gl.MAX_GEOMETRY_TEXTURE_IMAGE_UNITS

  params returns one value, the maximum supported texture image units that can be used to access texture maps from the geometry shader. The value must be at least 16. See Gl.ActiveTexture.

Gl.MAX_VERTEX_UNIFORM_COMPONENTS

  params returns one value, the maximum number of individual floating-point, integer, or boolean values that can be held in uniform variable storage for a vertex shader. The value must be at least 1024. See Glu.niform.

Gl.MAX_VERTEX_OUTPUT_COMPONENTS

  params returns one value, the maximum number of components of output written by a vertex shader, which must be at least 64.

Gl.MAX_GEOMETRY_UNIFORM_COMPONENTS

  params returns one value, the maximum number of individual floating-point, integer, or boolean values that can be held in uniform variable storage for a geometry shader. The value must be at least 1024. See Glu.niform.

Gl.MAX_SAMPLE_MASK_WORDS

  params returns one value, the maximum number of sample mask words.

Gl.MAX_COLOR_TEXTURE_SAMPLES

  params returns one value, the maximum number of samples in a color multisample texture.

Gl.MAX_DEPTH_TEXTURE_SAMPLES

  params returns one value, the maximum number of samples in a multisample depth or depth-stencil texture.

Gl.MAX_DEPTH_TEXTURE_SAMPLES

  params returns one value, the maximum number of samples in a multisample depth or depth-stencil texture.

Gl.MAX_INTEGER_SAMPLES

  params returns one value, the maximum number of samples supported in integer format multisample buffers.

Gl.MAX_SERVER_WAIT_TIMEOUT

  params returns one value, the maximum Gl.WaitSync timeout interval.

Gl.MAX_UNIFORM_BUFFER_BINDINGS

  params returns one value, the maximum number of uniform buffer binding points on the context, which must be at least 36.

Gl.MAX_UNIFORM_BLOCK_SIZE

  params returns one value, the maximum size in basic machine units of a uniform block, which must be at least 16384.

Gl.UNIFORM_BUFFER_OFFSET_ALIGNMENT

  params returns one value, the minimum required alignment for uniform buffer sizes and offsets.

Gl.MAX_VERTEX_UNIFORM_BLOCKS

  params returns one value, the maximum number of uniform blocks per vertex shader. The value must be at least 12. See Glu.niformBlockBinding.

Gl.MAX_GEOMETRY_UNIFORM_BLOCKS

  params returns one value, the maximum number of uniform blocks per geometry shader. The value must be at least 12. See Glu.niformBlockBinding.

Gl.MAX_GEOMETRY_INPUT_COMPONENTS

  params returns one value, the maximum number of components of inputs read by a geometry shader, which must be at least 64.

Gl.MAX_GEOMETRY_OUTPUT_COMPONENTS

  params returns one value, the maximum number of components of outputs written by a geometry shader, which must be at least 128.

Gl.MAX_VIEWPORT_DIMS

  params returns two values: the maximum supported width and height of the viewport. These must be at least as large as the visible dimensions of the display being rendered to. See Gl.Viewport.

Gl.NUM_COMPRESSED_TEXTURE_FORMATS

  params returns a single integer value indicating the number of available compressed texture formats. The minimum value is 4. See Gl.CompressedTexImage2D.

Gl.PACK_ALIGNMENT

  params returns one value, the byte alignment used for writing pixel data to memory. The initial value is 4. See Gl.PixelStore.

Gl.PACK_IMAGE_HEIGHT

  params returns one value, the image height used for writing pixel data to memory. The initial value is 0. See Gl.PixelStore.

Gl.PACK_LSB_FIRST

  params returns a single boolean value indicating whether single-bit pixels being written to memory are written first to the least significant bit of each unsigned byte. The initial value is Gl.FALSE. See Gl.PixelStore.

Gl.PACK_ROW_LENGTH

  params returns one value, the row length used for writing pixel data to memory. The initial value is 0. See Gl.PixelStore.

Gl.PACK_SKIP_IMAGES

  params returns one value, the number of pixel images skipped before the first pixel is written into memory. The initial value is 0. See Gl.PixelStore.

Gl.PACK_SKIP_PIXELS

  params returns one value, the number of pixel locations skipped before the first pixel is written into memory. The initial value is 0. See Gl.PixelStore.

Gl.PACK_SKIP_ROWS

  params returns one value, the number of rows of pixel locations skipped before the first pixel is written into memory. The initial value is 0. See Gl.PixelStore.

Gl.PACK_SWAP_BYTES

  params returns a single boolean value indicating whether the bytes of two-byte and four-byte pixel indices and components are swapped before being written to memory. The initial value is Gl.FALSE. See Gl.PixelStore.

Gl.PIXEL_PACK_BUFFER_BINDING

  params returns a single value, the name of the buffer object currently bound to the target Gl.PIXEL_PACK_BUFFER. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See Gl.BindBuffer.

Gl.PIXEL_UNPACK_BUFFER_BINDING

  params returns a single value, the name of the buffer object currently bound to the target Gl.PIXEL_UNPACK_BUFFER. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See Gl.BindBuffer.

Gl.POINT_FADE_THRESHOLD_SIZE

  params returns one value, the point size threshold for determining the point size. See Gl.PointParameter.

Gl.PRIMITIVE_RESTART_INDEX

  params returns one value, the current primitive restart index. The initial value is 0. See Gl.PrimitiveRestartIndex.

Gl.PROVOKING_VERTEX

  params returns one value, the currently selected provoking vertex convention. The initial value is Gl.LAST_VERTEX_CONVENTION. See Gl.ProvokingVertex.

Gl.POINT_SIZE

  params returns one value, the point size as specified by Gl.PointSize. The initial value is 1.

Gl.POINT_SIZE_GRANULARITY

  params returns one value, the size difference between adjacent supported sizes for antialiased points. See Gl.PointSize.

Gl.POINT_SIZE_RANGE

  params returns two values: the smallest and largest supported sizes for antialiased points. The smallest size must be at most 1, and the largest size must be at least 1. See Gl.PointSize.

Gl.POLYGON_OFFSET_FACTOR

  params returns one value, the scaling factor used to determine the variable offset that is added to the depth value of each fragment generated when a polygon is rasterized. The initial value is 0. See Gl.PolygonOffset.

Gl.POLYGON_OFFSET_UNITS

  params returns one value. This value is multiplied by an implementation-specific value and then added to the depth value of each fragment generated when a polygon is rasterized. The initial value is 0. See Gl.PolygonOffset.

Gl.POLYGON_OFFSET_FILL

  params returns a single boolean value indicating whether polygon offset is enabled for polygons in fill mode. The initial value is Gl.FALSE. See Gl.PolygonOffset.

Gl.POLYGON_OFFSET_LINE

  params returns a single boolean value indicating whether polygon offset is enabled for polygons in line mode. The initial value is Gl.FALSE. See Gl.PolygonOffset.

Gl.POLYGON_OFFSET_POINT

  params returns a single boolean value indicating whether polygon offset is enabled for polygons in point mode. The initial value is Gl.FALSE. See Gl.PolygonOffset.

Gl.POLYGON_SMOOTH

  params returns a single boolean value indicating whether antialiasing of polygons is enabled. The initial value is Gl.FALSE. See Gl.PolygonMode.

Gl.POLYGON_SMOOTH_HINT

  params returns one value, a symbolic constant indicating the mode of the polygon antialiasing hint. The initial value is Gl.DONT_CARE. See Gl.Hint.

Gl.READ_BUFFER

  params returns one value, a symbolic constant indicating which color buffer is selected for reading. The initial value is Gl.BACK if there is a back buffer, otherwise it is Gl.FRONT. See Gl.ReadPixels.

Gl.SAMPLE_BUFFERS

  params returns a single integer value indicating the number of sample buffers associated with the framebuffer. See Gl.SampleCoverage.

Gl.SAMPLE_COVERAGE_VALUE

  params returns a single positive floating-point value indicating the current sample coverage value. See Gl.SampleCoverage.

Gl.SAMPLE_COVERAGE_INVERT

  params returns a single boolean value indicating if the temporary coverage value should be inverted. See Gl.SampleCoverage.

Gl.SAMPLER_BINDING

  params returns a single value, the name of the sampler object currently bound to the active texture unit. The initial value is 0. See Gl.BindSampler.

Gl.SAMPLES

  params returns a single integer value indicating the coverage mask size. See Gl.SampleCoverage.

Gl.SCISSOR_BOX

  params returns four values: the x and y window coordinates of the scissor box, followed by its width and height. Initially the x and y window coordinates are both 0 and the width and height are set to the size of the window. See Gl.Scissor.

Gl.SCISSOR_TEST

  params returns a single boolean value indicating whether scissoring is enabled. The initial value is Gl.FALSE. See Gl.Scissor.

Gl.STENCIL_BACK_FAIL

  params returns one value, a symbolic constant indicating what action is taken for back-facing polygons when the stencil test fails. The initial value is Gl.KEEP. See Gl.StencilOpSeparate.

Gl.STENCIL_BACK_FUNC

  params returns one value, a symbolic constant indicating what function is used for back-facing polygons to compare the stencil reference value with the stencil buffer value. The initial value is Gl.ALWAYS. See Gl.StencilFuncSeparate.

Gl.STENCIL_BACK_PASS_DEPTH_FAIL

  params returns one value, a symbolic constant indicating what action is taken for back-facing polygons when the stencil test passes, but the depth test fails. The initial value is Gl.KEEP. See Gl.StencilOpSeparate.

Gl.STENCIL_BACK_PASS_DEPTH_PASS

  params returns one value, a symbolic constant indicating what action is taken for back-facing polygons when the stencil test passes and the depth test passes. The initial value is Gl.KEEP. See Gl.StencilOpSeparate.

Gl.STENCIL_BACK_REF

  params returns one value, the reference value that is compared with the contents of the stencil buffer for back-facing polygons. The initial value is 0. See Gl.StencilFuncSeparate.

Gl.STENCIL_BACK_VALUE_MASK

  params returns one value, the mask that is used for back-facing polygons to mask both the stencil reference value and the stencil buffer value before they are compared. The initial value is all 1's. See Gl.StencilFuncSeparate.

Gl.STENCIL_BACK_WRITEMASK

  params returns one value, the mask that controls writing of the stencil bitplanes for back-facing polygons. The initial value is all 1's. See Gl.StencilMaskSeparate.

Gl.STENCIL_CLEAR_VALUE

  params returns one value, the index to which the stencil bitplanes are cleared. The initial value is 0. See Gl.ClearStencil.

Gl.STENCIL_FAIL

  params returns one value, a symbolic constant indicating what action is taken when the stencil test fails. The initial value is Gl.KEEP. See Gl.StencilOp. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilOpSeparate.

Gl.STENCIL_FUNC

  params returns one value, a symbolic constant indicating what function is used to compare the stencil reference value with the stencil buffer value. The initial value is Gl.ALWAYS. See Gl.StencilFunc. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilFuncSeparate.

Gl.STENCIL_PASS_DEPTH_FAIL

  params returns one value, a symbolic constant indicating what action is taken when the stencil test passes, but the depth test fails. The initial value is Gl.KEEP. See Gl.StencilOp. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilOpSeparate.

Gl.STENCIL_PASS_DEPTH_PASS

  params returns one value, a symbolic constant indicating what action is taken when the stencil test passes and the depth test passes. The initial value is Gl.KEEP. See Gl.StencilOp. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilOpSeparate.

Gl.STENCIL_REF

  params returns one value, the reference value that is compared with the contents of the stencil buffer. The initial value is 0. See Gl.StencilFunc. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilFuncSeparate.

Gl.STENCIL_TEST

  params returns a single boolean value indicating whether stencil testing of fragments is enabled. The initial value is Gl.FALSE. See Gl.StencilFunc and Gl.StencilOp.

Gl.STENCIL_VALUE_MASK

  params returns one value, the mask that is used to mask both the stencil reference value and the stencil buffer value before they are compared. The initial value is all 1's. See Gl.StencilFunc. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilFuncSeparate.

Gl.STENCIL_WRITEMASK

  params returns one value, the mask that controls writing of the stencil bitplanes. The initial value is all 1's. See Gl.StencilMask. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See Gl.StencilMaskSeparate.

Gl.STEREO

  params returns a single boolean value indicating whether stereo buffers (left and right) are supported.

Gl.SUBPIXEL_BITS

  params returns one value, an estimate of the number of bits of subpixel resolution that are used to position rasterized geometry in window coordinates. The value must be at least 4.

Gl.TEXTURE_BINDING_1D

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_1D. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_1D_ARRAY

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_1D_ARRAY. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_2D

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_2D. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_2D_ARRAY

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_2D_ARRAY. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_2D_MULTISAMPLE

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_2D_MULTISAMPLE. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_2D_MULTISAMPLE_ARRAY. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_3D

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_3D. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_BUFFER

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_BUFFER. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_CUBE_MAP

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_CUBE_MAP. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_BINDING_RECTANGLE

  params returns a single value, the name of the texture currently bound to the target Gl.TEXTURE_RECTANGLE. The initial value is 0. See Gl.BindTexture.

Gl.TEXTURE_COMPRESSION_HINT

  params returns a single value indicating the mode of the texture compression hint. The initial value is Gl.DONT_CARE.

Gl.TEXTURE_BUFFER_BINDING

  params returns a single value, the name of the texture buffer object currently bound. The initial value is 0. See Gl.BindBuffer.

Gl.TIMESTAMP

  params returns a single value, the 64-bit value of the current GL time. See Gl.QueryCounter.

Gl.TRANSFORM_FEEDBACK_BUFFER_BINDING

  When used with non-indexed variants of Gl.Get (such as Gl.GetIntegerv), params returns a single value, the name of the buffer object currently bound to the target Gl.TRANSFORM_FEEDBACK_BUFFER. If no buffer object is bound to this target, 0 is returned. When used with indexed variants of Gl.Get (such as Gl.GetIntegeri_v), params returns a single value, the name of the buffer object bound to the indexed transform feedback attribute stream. The initial value is 0 for all targets. See Gl.BindBuffer, Gl.BindBufferBase, and Gl.BindBufferRange.

Gl.TRANSFORM_FEEDBACK_BUFFER_START

  When used with indexed variants of Gl.Get (such as Gl.GetInteger64i_v), params returns a single value, the start offset of the binding range for each transform feedback attribute stream. The initial value is 0 for all streams. See Gl.BindBufferRange.

Gl.TRANSFORM_FEEDBACK_BUFFER_SIZE

  When used with indexed variants of Gl.Get (such as Gl.GetInteger64i_v), params returns a single value, the size of the binding range for each transform feedback attribute stream. The initial value is 0 for all streams. See Gl.BindBufferRange.

Gl.UNIFORM_BUFFER_BINDING

  When used with non-indexed variants of Gl.Get (such as Gl.GetIntegerv), params returns a single value, the name of the buffer object currently bound to the target Gl.UNIFORM_BUFFER. If no buffer object is bound to this target, 0 is returned. When used with indexed variants of Gl.Get (such as Gl.GetIntegeri_v), params returns a single value, the name of the buffer object bound to the indexed uniform buffer binding point. The initial value is 0 for all targets. See Gl.BindBuffer, Gl.BindBufferBase, and Gl.BindBufferRange.

Gl.UNIFORM_BUFFER_START

  When used with indexed variants of Gl.Get (such as Gl.GetInteger64i_v), params returns a single value, the start offset of the binding range for each indexed uniform buffer binding. The initial value is 0 for all bindings. See Gl.BindBufferRange.

Gl.UNIFORM_BUFFER_SIZE

  When used with indexed variants of Gl.Get (such as Gl.GetInteger64i_v), params returns a single value, the size of the binding range for each indexed uniform buffer binding. The initial value is 0 for all bindings. See Gl.BindBufferRange.

Gl.UNIFORM_BUFFER_OFFSET_ALIGNMENT

  params returns a single value, the minimum required alignment for uniform buffer sizes and offset. The initial value is 1. See Glu.niformBlockBinding.

Gl.UNPACK_ALIGNMENT

  params returns one value, the byte alignment used for reading pixel data from memory. The initial value is 4. See Gl.PixelStore.

Gl.UNPACK_IMAGE_HEIGHT

  params returns one value, the image height used for reading pixel data from memory. The initial is 0. See Gl.PixelStore.

Gl.UNPACK_LSB_FIRST

  params returns a single boolean value indicating whether single-bit pixels being read from memory are read first from the least significant bit of each unsigned byte. The initial value is Gl.FALSE. See Gl.PixelStore.

Gl.UNPACK_ROW_LENGTH

  params returns one value, the row length used for reading pixel data from memory. The initial value is 0. See Gl.PixelStore.

Gl.UNPACK_SKIP_IMAGES

  params returns one value, the number of pixel images skipped before the first pixel is read from memory. The initial value is 0. See Gl.PixelStore.

Gl.UNPACK_SKIP_PIXELS

  params returns one value, the number of pixel locations skipped before the first pixel is read from memory. The initial value is 0. See Gl.PixelStore.

Gl.UNPACK_SKIP_ROWS

  params returns one value, the number of rows of pixel locations skipped before the first pixel is read from memory. The initial value is 0. See Gl.PixelStore.

Gl.UNPACK_SWAP_BYTES

  params returns a single boolean value indicating whether the bytes of two-byte and four-byte pixel indices and components are swapped after being read from memory. The initial value is Gl.FALSE. See Gl.PixelStore.

Gl.NUM_EXTENSIONS

  params returns one value, the number of extensions supported by the GL implementation for the current context. See Gl.GetString.

Gl.MAJOR_VERSION

  params returns one value, the major version number of the OpenGL API supported by the current context.

Gl.MINOR_VERSION

  params returns one value, the minor version number of the OpenGL API supported by the current context.

Gl.CONTEXT_FLAGS

  params returns one value, the flags with which the context was created (such as debugging functionality).

Gl.VERTEX_PROGRAM_POINT_SIZE

  params returns a single boolean value indicating whether vertex program point size mode is enabled. If enabled, and a vertex shader is active, then the point size is taken from the shader built-in gl_PointSize. If disabled, and a vertex shader is active, then the point size is taken from the point state as specified by Gl.PointSize. The initial value is Gl.FALSE.

Gl.VIEWPORT

  params returns four values: the x and y window coordinates of the viewport, followed by its width and height. Initially the x and y window coordinates are both set to 0, and the width and height are set to the width and height of the window into which the GL will do its rendering. See Gl.Viewport.

Many of the boolean parameters can also be queried more easily using Gl.IsEnabled.

### Notes

The following parameters return the associated value for the active texture unit: Gl.TEXTURE_1D, Gl.TEXTURE_BINDING_1D, Gl.TEXTURE_2D, Gl.TEXTURE_BINDING_2D, Gl.TEXTURE_3D and Gl.TEXTURE_BINDING_3D.

Gl.MAX_RECTANGLE_TEXTURE_SIZE, Gl.MAX_TEXTURE_BUFFER_SIZE, Gl.UNIFORM_BUFFER_BINDING, Gl.TEXTURE_BUFFER_BINDING, Gl.MAX_VERTEX_UNIFORM_BLOCKS, Gl.MAX_FRAGMENT_UNIFORM_BLOCKS, Gl.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS, Gl.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS Gl.MAX_COMBINED_UNIFORM_BLOCKS, Gl.MAX_UNIFORM_BLOCK_SIZE, and Gl.UNIFORM_BUFFER_OFFSET_ALIGNMENT are available only if the GL version is 3.1 or greater.

Gl.MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS, Gl.MAX_GEOMETRY_UNIFORM_BLOCKS, Gl.MAX_GEOMETRY_INPUT_COMPONENTS, Gl.MAX_GEOMETRY_OUTPUT_COMPONENTS, Gl.MAX_GEOMETRY_OUTPUT_VERTICES, Gl.MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS and Gl.MAX_GEOMETRY_TEXTURE_IMAGE_UNITS are available only if the GL version is 3.2 or greater.

Gl.GetInteger64v and Gl.GetInteger64i_v are available only if the GL version is 3.2 or greater.

Gl.MAX_DUALSOURCE_DRAW_BUFFERS, Gl.SAMPLER_BINDING, and Gl.TIMESTAMP are available only if the GL version is 3.3 or greater.

### Errors

Gl.INVALID_ENUM is generated if pname is not an accepted value.

Gl.INVALID_VALUE is generated on any of Gl.GetBooleani_v, Gl.GetIntegeri_v, or Gl.GetInteger64i_v if index is outside of the valid range for the indexed state target.

### See also

Gl.GetActiveUniform,

- Gl.GetAttachedShaders,

Gl.GetAttribLocation, Gl.GetBufferParameter, Gl.GetBufferPointerv, Gl.GetBufferSubData, Gl.GetCompressedTexImage,

- Gl.GetError,

Gl.GetProgram,

- Gl.GetProgramInfoLog,

Gl.GetQueryiv, Gl.GetQueryObject, Gl.GetShader,

- Gl.GetShaderInfoLog,

- Gl.GetShaderSource,

Gl.GetString, Gl.GetTexImage, Gl.GetTexLevelParameter, Gl.GetTexParameter, Gl.GetUniform, Gl.GetUniformLocation, Gl.GetVertexAttrib, Gl.GetVertexAttribPointerv,

- Gl.IsEnabled

See original documentation on OpenGL website