<!DOCTYPE html>
<html lang="en"> <head><meta charset="utf-8"><title>glGet - OpenGL 4 - docs.gl</title><link rel="shortcut icon" href="/favicon.ico"><script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script><link rel="stylesheet" href="../jquery-ui.css"><script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js"></script><script src="../jquery-bonsai/jquery.bonsai.js"></script><link href="../jquery-bonsai/jquery.bonsai.css" rel="stylesheet" type="text/css"><script src="../jquery-cookie/jquery.cookie.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=MML_HTMLorMML"></script><link href="../style.css" rel="stylesheet" type="text/css"><link id="pagestyle" href="../style_light.css" rel="stylesheet" type="text/css"><script>
    window.current_api = "gl45";
    window.base_directory = "../";
  </script><script src="../docs.gl.search.js"></script><script src="../docs.gl.js"></script></head> <body> <div class="header-bg"> <div class="toggle-container"><a href="#" id="style_light">Light</a> | <a href="#" id="style_dark">Dark</a></div> <div class="header-container"> <div class="header-inner"> <a href="/"><h1 class="header-logo">docs.<span class="thicken">GL</span></h1></a> <input id="search" placeholder="search" size="50"><input id="search_button" type="submit" value="Go"> <span style="clear:both;"></span> </div> </div> </div> <div id="everything"> <div id="toc"> <div id="versions_container"> <select id="versions_dropdown"><option class="versions_option" value="gl21">OpenGL 2.1</option><option class="versions_option" value="gl30">OpenGL 3.0</option><option class="versions_option" value="gl31">OpenGL 3.1</option><option class="versions_option" value="gl32">OpenGL 3.2</option><option class="versions_option" value="gl33">OpenGL 3.3</option><option class="versions_option" value="gl40">OpenGL 4.0</option><option class="versions_option" value="gl41">OpenGL 4.1</option><option class="versions_option" value="gl42">OpenGL 4.2</option><option class="versions_option" value="gl43">OpenGL 4.3</option><option class="versions_option" value="gl44">OpenGL 4.4</option><option class="versions_option" value="gl45" selected>OpenGL 4.5</option><option class="versions_option" value="es20">OpenGL ES 2.0</option><option class="versions_option" value="es30">OpenGL ES 3.0</option><option class="versions_option" value="es31">OpenGL ES 3.1</option><option class="versions_option" value="sl40">GLSL 4.0</option><option class="versions_option" value="sl41">GLSL 4.1</option><option class="versions_option" value="sl42">GLSL 4.2</option><option class="versions_option" value="sl43">GLSL 4.3</option><option class="versions_option" value="sl44">GLSL 4.4</option><option class="versions_option" value="sl45">GLSL 4.5</option><option class="versions_option" value="el30">GLSL ES 3.0</option><option class="versions_option" value="el31">GLSL ES 3.1</option></select> </div> <input id="hide_deprecated" type="checkbox"> <label id="hide_label" for="hide_deprecated">Hide unavailable</label> <ul id="command_categories"><li class="category es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Textures<ul><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glActiveTexture</a></li><li><a class="rewritelink command es31 gl42 gl43 gl44 gl45">glBindImageTexture</a></li><li><a class="rewritelink command gl44 gl45">glBindImageTextures</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindTexture</a></li><li><a class="rewritelink command gl45">glBindTextureUnit</a></li><li><a class="rewritelink command gl44 gl45">glBindTextures</a></li><li><a class="rewritelink command gl44 gl45">glClearTexImage</a></li><li><a class="rewritelink command gl44 gl45">glClearTexSubImage</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCompressedTexImage1D</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCompressedTexImage2D</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCompressedTexImage3D</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCompressedTexSubImage1D</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCompressedTexSubImage2D</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCompressedTexSubImage3D</a></li><li><a class="rewritelink command gl43 gl44 gl45">glCopyImageSubData</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCopyTexImage1D</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCopyTexImage2D</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCopyTexSubImage1D</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCopyTexSubImage2D</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCopyTexSubImage3D</a></li><li><a class="rewritelink command gl45">glCreateTextures</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteTextures</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenTextures</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45 gl45">glGetCompressedTexImage</a></li><li><a class="rewritelink command gl45">glGetCompressedTextureSubImage</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45 gl45">glGetTexImage</a></li><li><a class="rewritelink command es31 es31 gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45 gl45 gl45">glGetTexLevelParameter</a></li><li><a class="rewritelink command es20 es20 es30 es30 es31 es31 gl20 gl20 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glGetTexParameter</a></li><li><a class="rewritelink command gl45">glGetTextureSubImage</a></li><li><a class="rewritelink command gl43 gl44 gl45">glInvalidateTexImage</a></li><li><a class="rewritelink command gl43 gl44 gl45">glInvalidateTexSubImage</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsTexture</a></li><li><a class="rewritelink command gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glTexBuffer</a></li><li><a class="rewritelink command gl43 gl44 gl45 gl45">glTexBufferRange</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glTexImage1D</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glTexImage2D</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glTexImage2DMultisample</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glTexImage3D</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glTexImage3DMultisample</a></li><li><a class="rewritelink command es20 es20 es20 es20 es30 es30 es30 es30 es31 es31 es31 es31 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glTexParameter</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45 gl45">glTexStorage1D</a></li><li><a class="rewritelink command es30 es31 gl42 gl43 gl44 gl45 gl45">glTexStorage2D</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45 gl45">glTexStorage2DMultisample</a></li><li><a class="rewritelink command es30 es31 gl42 gl43 gl44 gl45 gl45">glTexStorage3D</a></li><li><a class="rewritelink command gl43 gl44 gl45 gl45">glTexStorage3DMultisample</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glTexSubImage1D</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glTexSubImage2D</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glTexSubImage3D</a></li><li><a class="rewritelink command gl43 gl44 gl45">glTextureView</a></li></ul></li><li class="category es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Rendering<ul><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glClear</a></li><li><a class="rewritelink command es30 es30 es30 es30 es31 es31 es31 es31 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glClearBuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glClearColor</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glClearDepth</a></li><li><a class="rewritelink command es20 es30 es31">glClearDepthf</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glClearStencil</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glDrawBuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glFinish</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glFlush</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glReadBuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glReadPixels</a></li></ul></li><li class="category es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl20 gl21">Frame Buffers<ul><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindFramebuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindRenderbuffer</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glBlitFramebuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCheckFramebufferStatus</a></li><li><a class="rewritelink command gl45">glCreateFramebuffers</a></li><li><a class="rewritelink command gl45">glCreateRenderbuffers</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteFramebuffers</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteRenderbuffers</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glDrawBuffers</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45 gl45">glFramebufferParameteri</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glFramebufferRenderbuffer</a></li><li><a class="rewritelink command gl30 gl30 gl30 gl31 gl31 gl31 gl32 gl32 gl32 gl33 gl33 gl33 gl40 gl40 gl40 gl41 gl41 gl41 gl42 gl42 gl42 gl43 gl43 gl43 gl44 gl44 gl44 gl45 gl45 gl45 gl45">glFramebufferTexture</a></li><li><a class="rewritelink command es20 es30 es31">glFramebufferTexture2D</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glFramebufferTextureLayer</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenFramebuffers</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenRenderbuffers</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glGenerateMipmap</a></li><li><a class="rewritelink command gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glGetFramebufferAttachmentParameter</a></li><li><a class="rewritelink command es20 es30 es31">glGetFramebufferAttachmentParameteriv</a></li><li><a class="rewritelink command gl43 gl44 gl45">glGetFramebufferParameter</a></li><li><a class="rewritelink command es31">glGetFramebufferParameteriv</a></li><li><a class="rewritelink command gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glGetRenderbufferParameter</a></li><li><a class="rewritelink command es20 es30 es31">glGetRenderbufferParameteriv</a></li><li><a class="rewritelink command es30 es31 gl43 gl44 gl45 gl45 gl45">glInvalidateFramebuffer</a></li><li><a class="rewritelink command es30 es31 gl43 gl44 gl45">glInvalidateSubFramebuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsFramebuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsRenderbuffer</a></li><li><a class="rewritelink command es20 es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glRenderbufferStorage</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glRenderbufferStorageMultisample</a></li><li><a class="rewritelink command es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glSampleMaski</a></li></ul></li><li class="category es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Shaders<ul><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glAttachShader</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindAttribLocation</a></li><li><a class="rewritelink command gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindFragDataLocation</a></li><li><a class="rewritelink command gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindFragDataLocationIndexed</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCompileShader</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCreateProgram</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCreateShader</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glCreateShaderProgram</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteProgram</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteShader</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDetachShader</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45">glGetActiveAtomicCounterBufferiv</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveAttrib</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveSubroutineName</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveSubroutineUniform</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveSubroutineUniformName</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveUniform</a></li><li><a class="rewritelink command gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveUniformBlock</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveUniformBlockName</a></li><li><a class="rewritelink command es30 es31">glGetActiveUniformBlockiv</a></li><li><a class="rewritelink command gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveUniformName</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetActiveUniformsiv</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetAttachedShaders</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetAttribLocation</a></li><li><a class="rewritelink command gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetFragDataIndex</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetFragDataLocation</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetProgram</a></li><li><a class="rewritelink command es30 es31 gl41 gl42 gl43 gl44 gl45">glGetProgramBinary</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetProgramInfoLog</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45">glGetProgramResource</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45">glGetProgramResourceIndex</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45">glGetProgramResourceLocation</a></li><li><a class="rewritelink command gl43 gl44 gl45">glGetProgramResourceLocationIndex</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45">glGetProgramResourceName</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetProgramStage</a></li><li><a class="rewritelink command es20 es30 es31">glGetProgramiv</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetShader</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetShaderInfoLog</a></li><li><a class="rewritelink command es20 es30 es31 gl41 gl42 gl43 gl44 gl45">glGetShaderPrecisionFormat</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetShaderSource</a></li><li><a class="rewritelink command es20 es30 es31">glGetShaderiv</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetSubroutineIndex</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetSubroutineUniformLocation</a></li><li><a class="rewritelink command es20 es20 es30 es30 es30 es31 es31 es31 gl20 gl20 gl21 gl21 gl30 gl30 gl30 gl31 gl31 gl31 gl32 gl32 gl32 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glGetUniform</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetUniformBlockIndex</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetUniformIndices</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetUniformLocation</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetUniformSubroutine</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsProgram</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsShader</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glLinkProgram</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glMinSampleShading</a></li><li><a class="rewritelink command es30 es31 gl41 gl42 gl43 gl44 gl45">glProgramBinary</a></li><li><a class="rewritelink command gl41 gl42 gl43 gl44 gl45">glProgramParameter</a></li><li><a class="rewritelink command es30 es31">glProgramParameteri</a></li><li><a class="rewritelink command es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glProgramUniform</a></li><li><a class="rewritelink command es20 es30 es31 gl41 gl42 gl43 gl44 gl45">glReleaseShaderCompiler</a></li><li><a class="rewritelink command es20 es30 es31 gl41 gl42 gl43 gl44 gl45">glShaderBinary</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glShaderSource</a></li><li><a class="rewritelink command gl43 gl44 gl45">glShaderStorageBlockBinding</a></li><li><a class="rewritelink command es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es20 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glUniform</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glUniformBlockBinding</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glUniformSubroutines</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glUseProgram</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glUseProgramStages</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glValidateProgram</a></li></ul></li><li class="category es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Buffer Objects<ul><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindBuffer</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindBufferBase</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindBufferRange</a></li><li><a class="rewritelink command gl44 gl45">glBindBuffersBase</a></li><li><a class="rewritelink command gl44 gl45">glBindBuffersRange</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45 gl45">glBindVertexBuffer</a></li><li><a class="rewritelink command gl44 gl45 gl45">glBindVertexBuffers</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glBufferData</a></li><li><a class="rewritelink command gl44 gl45 gl45">glBufferStorage</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glBufferSubData</a></li><li><a class="rewritelink command gl43 gl44 gl45 gl45">glClearBufferData</a></li><li><a class="rewritelink command gl43 gl44 gl45 gl45">glClearBufferSubData</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glCopyBufferSubData</a></li><li><a class="rewritelink command gl45">glCreateBuffers</a></li><li><a class="rewritelink command gl45">glCreateVertexArrays</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteBuffers</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glDisableVertexAttribArray</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawArrays</a></li><li><a class="rewritelink command es31 gl40 gl41 gl42 gl43 gl44 gl45">glDrawArraysIndirect</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawArraysInstanced</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45">glDrawArraysInstancedBaseInstance</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawElements</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawElementsBaseVertex</a></li><li><a class="rewritelink command es31 gl40 gl41 gl42 gl43 gl44 gl45">glDrawElementsIndirect</a></li><li><a class="rewritelink command es30 es31 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawElementsInstanced</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45">glDrawElementsInstancedBaseInstance</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawElementsInstancedBaseVertex</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45">glDrawElementsInstancedBaseVertexBaseInstance</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawRangeElements</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDrawRangeElementsBaseVertex</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glEnableVertexAttribArray</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glFlushMappedBufferRange</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenBuffers</a></li><li><a class="rewritelink command es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45 gl45">glGetBufferParameter</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glGetBufferParameteriv</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glGetBufferPointerv</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glGetBufferSubData</a></li><li><a class="rewritelink command gl45 gl45">glGetVertexArrayIndexed</a></li><li><a class="rewritelink command gl45">glGetVertexArrayiv</a></li><li><a class="rewritelink command es20 es20 es30 es30 es30 es30 es31 es31 es31 es31 gl20 gl20 gl20 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45">glGetVertexAttrib</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetVertexAttribPointerv</a></li><li><a class="rewritelink command gl43 gl44 gl45">glInvalidateBufferData</a></li><li><a class="rewritelink command gl43 gl44 gl45">glInvalidateBufferSubData</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsBuffer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glMapBuffer</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glMapBufferRange</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glMultiDrawArrays</a></li><li><a class="rewritelink command gl43 gl44 gl45">glMultiDrawArraysIndirect</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glMultiDrawElements</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glMultiDrawElementsBaseVertex</a></li><li><a class="rewritelink command gl43 gl44 gl45">glMultiDrawElementsIndirect</a></li><li><a class="rewritelink command gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glPatchParameter</a></li><li><a class="rewritelink command gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glPrimitiveRestartIndex</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glProvokingVertex</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 gl45">glUnmapBuffer</a></li><li><a class="rewritelink command gl45">glVertexArrayElementBuffer</a></li><li><a class="rewritelink command es20 es20 es20 es20 es20 es20 es20 es20 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es30 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 es31 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glVertexAttrib</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45 gl45">glVertexAttribBinding</a></li><li><a class="rewritelink command es30 es31 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glVertexAttribDivisor</a></li><li><a class="rewritelink command es31 es31 gl43 gl43 gl43 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45">glVertexAttribFormat</a></li><li><a class="rewritelink command es20 es30 es30 es31 es31 gl20 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl41 gl42 gl42 gl42 gl43 gl43 gl43 gl44 gl44 gl44 gl45 gl45 gl45">glVertexAttribPointer</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45 gl45">glVertexBindingDivisor</a></li></ul></li><li class="category open_me es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">State Management<ul><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBlendColor</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glBlendEquation</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glBlendEquationSeparate</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glBlendFunc</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glBlendFuncSeparate</a></li><li><a class="rewritelink command gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glClampColor</a></li><li><a class="rewritelink command gl45">glClipControl</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glColorMask</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glCullFace</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDepthFunc</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDepthMask</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glDepthRange</a></li><li><a class="rewritelink command gl41 gl42 gl43 gl44 gl45">glDepthRangeArray</a></li><li><a class="rewritelink command gl41 gl42 gl43 gl44 gl45">glDepthRangeIndexed</a></li><li><a class="rewritelink command es20 es30 es31">glDepthRangef</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glDisable</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glEnable</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glFrontFace</a></li><li><a class="rewritelink command current es20 es20 es20 es30 es30 es30 es30 es30 es30 es31 es31 es31 es31 es31 es31 es31 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45 gl45">glGet</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetError</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glHint</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glIsEnabled</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glLineWidth</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glLogicOp</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glPixelStore</a></li><li><a class="rewritelink command es20 es30 es31">glPixelStorei</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl32 gl32 gl32 gl32 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45">glPointParameter</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glPointSize</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glPolygonMode</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glPolygonOffset</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glSampleCoverage</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glScissor</a></li><li><a class="rewritelink command gl41 gl42 gl43 gl44 gl45">glScissorArray</a></li><li><a class="rewritelink command gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glScissorIndexed</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glStencilFunc</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glStencilFuncSeparate</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glStencilMask</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glStencilMaskSeparate</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glStencilOp</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glStencilOpSeparate</a></li><li><a class="rewritelink command es20 es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glViewport</a></li><li><a class="rewritelink command gl41 gl42 gl43 gl44 gl45">glViewportArray</a></li><li><a class="rewritelink command gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glViewportIndexed</a></li></ul></li><li class="category es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Transform Feedback<ul><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBeginTransformFeedback</a></li><li><a class="rewritelink command es30 es31 gl40 gl41 gl42 gl43 gl44 gl45">glBindTransformFeedback</a></li><li><a class="rewritelink command gl45">glCreateTransformFeedbacks</a></li><li><a class="rewritelink command es30 es31 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteTransformFeedbacks</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glDrawTransformFeedback</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45">glDrawTransformFeedbackInstanced</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glDrawTransformFeedbackStream</a></li><li><a class="rewritelink command gl42 gl43 gl44 gl45">glDrawTransformFeedbackStreamInstanced</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glEndTransformFeedback</a></li><li><a class="rewritelink command es30 es31 gl40 gl41 gl42 gl43 gl44 gl45">glGenTransformFeedbacks</a></li><li><a class="rewritelink command gl45 gl45 gl45">glGetTransformFeedback</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetTransformFeedbackVarying</a></li><li><a class="rewritelink command es30 es31 gl40 gl41 gl42 gl43 gl44 gl45">glIsTransformFeedback</a></li><li><a class="rewritelink command es30 es31 gl40 gl41 gl42 gl43 gl44 gl45">glPauseTransformFeedback</a></li><li><a class="rewritelink command es30 es31 gl40 gl41 gl42 gl43 gl44 gl45">glResumeTransformFeedback</a></li><li><a class="rewritelink command gl45">glTransformFeedbackBufferBase</a></li><li><a class="rewritelink command gl45">glTransformFeedbackBufferRange</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glTransformFeedbackVaryings</a></li></ul></li><li class="category es31 gl43 gl44 gl45 gl42 es30 gl32 gl33 gl40 gl41 es20 gl20 gl21 gl30 gl31">Utility<ul><li><a class="rewritelink command es31 gl43 gl44 gl45">glDispatchCompute</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45">glDispatchComputeIndirect</a></li><li><a class="rewritelink command gl45">glGetGraphicsResetStatus</a></li><li><a class="rewritelink command gl42 gl43 gl43 gl44 gl44 gl45 gl45">glGetInternalformat</a></li><li><a class="rewritelink command es30 es31">glGetInternalformativ</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetMultisample</a></li><li><a class="rewritelink command es31">glGetMultisamplefv</a></li><li><a class="rewritelink command es20 es30 es30 es31 es31 gl20 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl40 gl40 gl41 gl41 gl42 gl42 gl43 gl43 gl44 gl44 gl45 gl45">glGetString</a></li><li><a class="rewritelink command es31 es31 gl42 gl43 gl44 gl45 gl45">glMemoryBarrier</a></li></ul></li><li class="category gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45 es30 es31 gl20 gl21">Queries<ul><li><a class="rewritelink command gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBeginConditionalRender</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBeginQuery</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glBeginQueryIndexed</a></li><li><a class="rewritelink command gl45">glCreateQueries</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteQueries</a></li><li><a class="rewritelink command gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glEndConditionalRender</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glEndQuery</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glEndQueryIndexed</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenQueries</a></li><li><a class="rewritelink command gl40 gl41 gl42 gl43 gl44 gl45">glGetQueryIndexed</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31 gl32 gl32 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45">glGetQueryObject</a></li><li><a class="rewritelink command es30 es31">glGetQueryObjectuiv</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetQueryiv</a></li><li><a class="rewritelink command es30 es31 gl20 gl21 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsQuery</a></li><li><a class="rewritelink command gl33 gl40 gl41 gl42 gl43 gl44 gl45">glQueryCounter</a></li></ul></li><li class="category es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Syncing<ul><li><a class="rewritelink command es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glClientWaitSync</a></li><li><a class="rewritelink command es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteSync</a></li><li><a class="rewritelink command es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glFenceSync</a></li><li><a class="rewritelink command gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGetSync</a></li><li><a class="rewritelink command es30 es31">glGetSynciv</a></li><li><a class="rewritelink command es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsSync</a></li><li><a class="rewritelink command gl45">glTextureBarrier</a></li><li><a class="rewritelink command es30 es31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glWaitSync</a></li></ul></li><li class="category es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Vertex Array Objects<ul><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindVertexArray</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteVertexArrays</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenVertexArrays</a></li><li><a class="rewritelink command es30 es31 gl30 gl31 gl32 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsVertexArray</a></li></ul></li><li class="category es30 es31 gl33 gl40 gl41 gl42 gl43 gl44 gl45">Samplers<ul><li><a class="rewritelink command es30 es31 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glBindSampler</a></li><li><a class="rewritelink command gl44 gl45">glBindSamplers</a></li><li><a class="rewritelink command gl45">glCreateSamplers</a></li><li><a class="rewritelink command es30 es31 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glDeleteSamplers</a></li><li><a class="rewritelink command es30 es31 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glGenSamplers</a></li><li><a class="rewritelink command es30 es30 es31 es31 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45">glGetSamplerParameter</a></li><li><a class="rewritelink command es30 es31 gl33 gl40 gl41 gl42 gl43 gl44 gl45">glIsSampler</a></li><li><a class="rewritelink command es30 es30 es30 es30 es31 es31 es31 es31 gl33 gl33 gl33 gl33 gl33 gl33 gl40 gl40 gl40 gl40 gl40 gl40 gl41 gl41 gl41 gl41 gl41 gl41 gl42 gl42 gl42 gl42 gl42 gl42 gl43 gl43 gl43 gl43 gl43 gl43 gl44 gl44 gl44 gl44 gl44 gl44 gl45 gl45 gl45 gl45 gl45 gl45">glSamplerParameter</a></li></ul></li><li class="category es31 gl41 gl42 gl43 gl44 gl45">Program Pipelines<ul><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glActiveShaderProgram</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glBindProgramPipeline</a></li><li><a class="rewritelink command gl45">glCreateProgramPipelines</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glDeleteProgramPipelines</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glGenProgramPipelines</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glGetProgramPipeline</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glGetProgramPipelineInfoLog</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glIsProgramPipeline</a></li><li><a class="rewritelink command es31 gl41 gl42 gl43 gl44 gl45">glValidateProgramPipeline</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">Immediate Mode<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glArrayElement</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glBegin</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glColor</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glEnd</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glEvalCoord</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glEvalMesh</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glEvalPoint</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glFogCoord</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glIndex</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glMaterial</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glMultiTexCoord</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glNormal</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glSecondaryColor</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glTexCoord</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glVertex</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">GL2 Rasterization<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glBitmap</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glClearIndex</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glClipPlane</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glCopyPixels</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glDrawPixels</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glFeedbackBuffer</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glFog</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glGetClipPlane</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl21 gl21 gl21 gl30 gl30 gl30 gl31 gl31 gl31">glGetMap</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl21 gl21 gl21 gl30 gl30 gl30 gl31 gl31 gl31">glGetPixelMap</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glGetPolygonStipple</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glInitNames</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glLineStipple</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glLoadName</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glMap1</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glMap2</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glMapGrid</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPassThrough</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPixelZoom</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPolygonStipple</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPopName</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPushName</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glRasterPos</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glRect</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glRenderMode</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glSelectBuffer</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31 gl31">glWindowPos</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">Client Arrays<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glColorPointer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glDisableClientState</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glEnableClientState</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glFogCoordPointer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glIndexPointer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glInterleavedArrays</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glNormalPointer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPopClientAttrib</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPushClientAttrib</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glSecondaryColorPointer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glTexCoordPointer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glVertexPointer</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">Fixed Function<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glAccum</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glAlphaFunc</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glClearAccum</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glColorMaterial</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glEdgeFlag</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glEdgeFlagPointer</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glGetLight</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glGetMaterial</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glGetTexEnv</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl21 gl21 gl21 gl30 gl30 gl30 gl31 gl31 gl31">glGetTexGen</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glIndexMask</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glLight</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glLightModel</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPopAttrib</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPushAttrib</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glShadeModel</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31">glTexEnv</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl20 gl20 gl20 gl21 gl21 gl21 gl21 gl21 gl21 gl30 gl30 gl30 gl30 gl30 gl30 gl31 gl31 gl31 gl31 gl31 gl31">glTexGen</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">Matrix State<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glFrustum</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glLoadIdentity</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glLoadMatrix</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glLoadTransposeMatrix</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glMatrixMode</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glMultMatrix</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glMultTransposeMatrix</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glOrtho</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPopMatrix</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPushMatrix</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glRotate</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glScale</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glTranslate</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">GL2 Textures<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glAreTexturesResident</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glClientActiveTexture</a></li><li><a class="rewritelink command gl20 gl20 gl20 gl21 gl21 gl21 gl30 gl30 gl30 gl31 gl31 gl31">glPixelMap</a></li><li><a class="rewritelink command gl20 gl20 gl21 gl21 gl30 gl30 gl31 gl31">glPixelTransfer</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glPrioritizeTextures</a></li></ul></li><li class="category gl20 gl21 gl30 gl31">Call Lists<ul><li><a class="rewritelink command gl20 gl21 gl30 gl31">glCallList</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glCallLists</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glDeleteLists</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glEndList</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glGenLists</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glIsList</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glListBase</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31">glNewList</a></li></ul></li><li class="category gl43 gl44 gl45 gl20 gl21 gl30 gl31 es31">Debug<ul><li><a class="rewritelink command gl43 gl44 gl45">glDebugMessageCallback</a></li><li><a class="rewritelink command gl43 gl44 gl45">glDebugMessageControl</a></li><li><a class="rewritelink command gl43 gl44 gl45">glDebugMessageInsert</a></li><li><a class="rewritelink command gl43 gl44 gl45">glGetDebugMessageLog</a></li><li><a class="rewritelink command gl43 gl44 gl45">glGetObjectLabel</a></li><li><a class="rewritelink command gl43 gl44 gl45">glGetObjectPtrLabel</a></li><li><a class="rewritelink command gl20 gl21 gl30 gl31 gl43 gl44 gl45">glGetPointerv</a></li><li><a class="rewritelink command es31 gl43 gl44 gl45">glGetProgramInterface</a></li><li><a class="rewritelink command gl43 gl44 gl45">glObjectLabel</a></li><li><a class="rewritelink command gl43 gl44 gl45">glObjectPtrLabel</a></li><li><a class="rewritelink command gl43 gl44 gl45">glPopDebugGroup</a></li><li><a class="rewritelink command gl43 gl44 gl45">glPushDebugGroup</a></li></ul></li></ul> <ul id="glsl_command_categories"><li class="category el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">Trigonometry<ul><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">acos</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">acosh</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">asin</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">asinh</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">atan</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">atanh</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">cos</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">cosh</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">degrees</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">radians</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">sin</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">sinh</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">tan</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">tanh</a></li></ul></li><li class="category el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">Mathematics<ul><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">abs</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">ceil</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">clamp</a></li><li><a class="rewritelink command el30 el30 el30 el31 el31 el31 sl33 sl33 sl33 sl40 sl40 sl40 sl41 sl41 sl41 sl42 sl42 sl42 sl43 sl43 sl43 sl44 sl44 sl44 sl45 sl45 sl45">dFdx</a></li><li><a class="rewritelink command el30 el30 el30 el31 el31 el31 sl33 sl33 sl33 sl40 sl40 sl40 sl41 sl41 sl41 sl42 sl42 sl42 sl43 sl43 sl43 sl44 sl44 sl44 sl45 sl45 sl45">dFdy</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">exp</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">exp2</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">floor</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">floor</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">fma</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">fract</a></li><li><a class="rewritelink command el30 el30 el30 el31 el31 el31 sl33 sl33 sl33 sl40 sl40 sl40 sl41 sl41 sl41 sl42 sl42 sl42 sl43 sl43 sl43 sl44 sl44 sl44 sl45 sl45 sl45">fwidth</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">inversesqrt</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">isinf</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">isnan</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">log</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">log2</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">max</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">min</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">mix</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">mod</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">modf</a></li><li><a class="rewritelink command sl33 sl33 sl33 sl33 sl33 sl40 sl40 sl40 sl40 sl40 sl41 sl41 sl41 sl41 sl41 sl42 sl42 sl42 sl42 sl42 sl43 sl43 sl43 sl43 sl43 sl44 sl44 sl44 sl44 sl44 sl45 sl45 sl45 sl45 sl45">noise</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">pow</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">round</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">roundEven</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">sign</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">smoothstep</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">sqrt</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">step</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">trunc</a></li></ul></li><li class="category el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">Floating-Point<ul><li><a class="rewritelink command el30 el30 el31 el31 sl33 sl33 sl40 sl40 sl41 sl41 sl42 sl42 sl43 sl43 sl44 sl44 sl45 sl45">floatBitsToInt</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">frexp</a></li><li><a class="rewritelink command el30 el30 el31 el31 sl33 sl33 sl40 sl40 sl41 sl41 sl42 sl42 sl43 sl43 sl44 sl44 sl45 sl45">intBitsToFloat</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">ldexp</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">packDouble2x32</a></li><li><a class="rewritelink command el30 el31 sl42 sl43 sl44 sl45">packHalf2x16</a></li><li><a class="rewritelink command el30 el30 el30 el30 el31 el31 el31 el31 sl41 sl41 sl41 sl41 sl42 sl42 sl42 sl42 sl43 sl43 sl43 sl43 sl44 sl44 sl44 sl44 sl45 sl45 sl45 sl45">packUnorm</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">unpackDouble2x32</a></li><li><a class="rewritelink command el30 el31 sl42 sl43 sl44 sl45">unpackHalf2x16</a></li><li><a class="rewritelink command el30 el30 el30 el30 el31 el31 el31 el31 sl41 sl41 sl41 sl41 sl42 sl42 sl42 sl42 sl43 sl43 sl43 sl43 sl44 sl44 sl44 sl44 sl45 sl45 sl45 sl45">unpackUnorm</a></li></ul></li><li class="category sl33 sl40 sl41 sl42 sl43 sl44 sl45 el30 el31">Built-In Variables<ul><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_ClipDistance</a></li><li><a class="rewritelink command sl45">gl_CullDistance</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_FragCoord</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_FragDepth</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_FrontFacing</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">gl_GlobalInvocationID</a></li><li><a class="rewritelink command sl45">gl_HelperInvocation</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_InstanceID</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_InvocationID</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_Layer</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">gl_LocalInvocationID</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">gl_LocalInvocationIndex</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_NumSamples</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">gl_NumWorkGroups</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_PatchVerticesIn</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_PointCoord</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_PointSize</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_Position</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_PrimitiveID</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_PrimitiveIDIn</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_SampleID</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_SampleMask</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_SampleMaskIn</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_SamplePosition</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_TessCoord</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_TessLevelInner</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">gl_TessLevelOuter</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_VertexID</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">gl_ViewportIndex</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">gl_WorkGroupID</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">gl_WorkGroupSize</a></li></ul></li><li class="category el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">Vector<ul><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">cross</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">distance</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">dot</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">equal</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">faceforward</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">length</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">normalize</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">notEqual</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">reflect</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">refract</a></li></ul></li><li class="category el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">Component Comparison<ul><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">all</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">any</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">greaterThan</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">greaterThanEqual</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">lessThan</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">lessThanEqual</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">not</a></li></ul></li><li class="category sl40 sl41 sl42 sl43 sl44 sl45 sl33">Geometry Shader<ul><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">EmitStreamVertex</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">EmitVertex</a></li><li><a class="rewritelink command sl33 sl40 sl41 sl42 sl43 sl44 sl45">EndPrimitive</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">EndStreamPrimitive</a></li></ul></li><li class="category sl40 sl41 sl42 sl43 sl44 sl45 el30 el31 sl33">Texture Sampling<ul><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">interpolateAtCentroid</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">interpolateAtOffset</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">interpolateAtSample</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">texelFetch</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">texelFetchOffset</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">texture</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">textureGather</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">textureGatherOffset</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">textureGatherOffsets</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureGrad</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureGradOffset</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureLod</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureLodOffset</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureOffset</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureProj</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureProjGrad</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureProjGradOffset</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureProjLod</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureProjLodOffset</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureProjOffset</a></li><li><a class="rewritelink command sl43 sl44 sl45">textureQueryLevels</a></li><li><a class="rewritelink command sl40 sl41 sl42 sl43 sl44 sl45">textureQueryLod</a></li><li><a class="rewritelink command sl45">textureSamples</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">textureSize</a></li></ul></li><li class="category el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">Matrix<ul><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">determinant</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">groupMemoryBarrier</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">inverse</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">matrixCompMult</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">outerProduct</a></li><li><a class="rewritelink command el30 el31 sl33 sl40 sl41 sl42 sl43 sl44 sl45">transpose</a></li></ul></li><li class="category el31 sl40 sl41 sl42 sl43 sl44 sl45">Integer<ul><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">bitCount</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">bitfieldExtract</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">bitfieldInsert</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">bitfieldReverse</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">findLSB</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">findMSB</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">uaddCarry</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">umulExtended</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">usubBorrow</a></li></ul></li><li class="category el31 sl42 sl43 sl44 sl45">Image<ul><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicAdd</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicAnd</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicCompSwap</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicExchange</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicMax</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicMin</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicOr</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageAtomicXor</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageLoad</a></li><li><a class="rewritelink command sl45">imageSamples</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">imageSize</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">imageStore</a></li></ul></li><li class="category el31 sl43 sl44 sl45 sl42">Atomic<ul><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicAdd</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicAnd</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicCompSwap</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">atomicCounter</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">atomicCounterDecrement</a></li><li><a class="rewritelink command el31 sl42 sl43 sl44 sl45">atomicCounterIncrement</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicExchange</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicMax</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicMin</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicOr</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">atomicXor</a></li></ul></li><li class="category el31 sl40 sl41 sl42 sl43 sl44 sl45">Memory Barrier<ul><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">barrier</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">groupMemoryBarrier</a></li><li><a class="rewritelink command el31 sl40 sl41 sl42 sl43 sl44 sl45">memoryBarrier</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">memoryBarrierAtomicCounter</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">memoryBarrierBuffer</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">memoryBarrierImage</a></li><li><a class="rewritelink command el31 sl43 sl44 sl45">memoryBarrierShared</a></li></ul></li></ul> </div> <div id="khronos"> <div id="command_versions"><a class="current" href="../gl4/glGet">OpenGL 4</a><br><a href="../gl3/glGet">OpenGL 3</a><br><a href="../gl2/glGet">OpenGL 2</a><br><a href="../es3/glGet">OpenGL ES 3</a><br><a href="../es2/glGet">OpenGL ES 2</a><br></div> <h1 id="command_title">glGet</h1> <div class="refentry" id="glGet"> <div class="titlepage"></div> <div class="refnamediv"> <h2>Name</h2> <p>glGet &#8212; return the value or values of a selected parameter</p> </div> <div class="refsynopsisdiv"> <h2>C Specification</h2> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetBooleanv</strong>(</code> </td> <td>GLenum <var class="pdparam">pname</var>, </td> </tr> <tr> <td> </td> <td>GLboolean * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetDoublev</strong>(</code> </td> <td>GLenum <var class="pdparam">pname</var>, </td> </tr> <tr> <td> </td> <td>GLdouble * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetFloatv</strong>(</code> </td> <td>GLenum <var class="pdparam">pname</var>, </td> </tr> <tr> <td> </td> <td>GLfloat * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetIntegerv</strong>(</code> </td> <td>GLenum <var class="pdparam">pname</var>, </td> </tr> <tr> <td> </td> <td>GLint * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetInteger64v</strong>(</code> </td> <td>GLenum <var class="pdparam">pname</var>, </td> </tr> <tr> <td> </td> <td>GLint64 * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetBooleani_v</strong>(</code> </td> <td>GLenum <var class="pdparam">target</var>, </td> </tr> <tr> <td> </td> <td>GLuint <var class="pdparam">index</var>, </td> </tr> <tr> <td> </td> <td>GLboolean * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetIntegeri_v</strong>(</code> </td> <td>GLenum <var class="pdparam">target</var>, </td> </tr> <tr> <td> </td> <td>GLuint <var class="pdparam">index</var>, </td> </tr> <tr> <td> </td> <td>GLint * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetFloati_v</strong>(</code> </td> <td>GLenum <var class="pdparam">target</var>, </td> </tr> <tr> <td> </td> <td>GLuint <var class="pdparam">index</var>, </td> </tr> <tr> <td> </td> <td>GLfloat * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetDoublei_v</strong>(</code> </td> <td>GLenum <var class="pdparam">target</var>, </td> </tr> <tr> <td> </td> <td>GLuint <var class="pdparam">index</var>, </td> </tr> <tr> <td> </td> <td>GLdouble * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> <div class="funcsynopsis"> <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> <tr> <td> <code class="funcdef">void <strong class="fsfunc">glGetInteger64i_v</strong>(</code> </td> <td>GLenum <var class="pdparam">target</var>, </td> </tr> <tr> <td> </td> <td>GLuint <var class="pdparam">index</var>, </td> </tr> <tr> <td> </td> <td>GLint64 * <var class="pdparam">data</var><code>)</code>;</td> </tr> </table> <div class="funcprototype-spacer"> </div> </div> </div> <div class="refsect1" id="parameters"> <h2>Parameters</h2> <div class="variablelist"> <dl class="variablelist"> <dt> <span class="term"> <em class="parameter"> <code>pname</code> </em> </span> </dt> <dd> <p> Specifies the parameter value to be returned for non-indexed versions of <code class="function">glGet</code>. The symbolic constants in the list below are accepted. </p> </dd> <dt> <span class="term"> <em class="parameter"> <code>target</code> </em> </span> </dt> <dd> <p> Specifies the parameter value to be returned for indexed versions of <code class="function">glGet</code>. The symbolic constants in the list below are accepted. </p> </dd> <dt> <span class="term"> <em class="parameter"> <code>index</code> </em> </span> </dt> <dd> <p> Specifies the index of the particular element being queried. </p> </dd> <dt> <span class="term"> <em class="parameter"> <code>data</code> </em> </span> </dt> <dd> <p> Returns the value or values of the specified parameter. </p> </dd> </dl> </div> </div> <div class="refsect1" id="description"> <h2>Description</h2> <p> These commands return values for simple state variables in GL. <em class="parameter"><code>pname</code></em> is a symbolic constant indicating the state variable to be returned, and <em class="parameter"><code>data</code></em> is a pointer to an array of the indicated type in which to place the returned data. </p> <p> Type conversion is performed if <em class="parameter"><code>data</code></em> has a different type than the state variable value being requested. If <code class="function">glGetBooleanv</code> is called, a floating-point (or integer) value is converted to <code class="constant">GL_FALSE</code> if and only if it is 0.0 (or 0). Otherwise, it is converted to <code class="constant">GL_TRUE</code>. If <code class="function">glGetIntegerv</code> is called, boolean values are returned as <code class="constant">GL_TRUE</code> or <code class="constant">GL_FALSE</code>, 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 <math overflow="scroll"> <mn>-1.0</mn> </math> to the most negative representable integer value. If <code class="function">glGetFloatv</code> or <code class="function">glGetDoublev</code> is called, boolean values are returned as <code class="constant">GL_TRUE</code> or <code class="constant">GL_FALSE</code>, and integer values are converted to floating-point values. </p> <p> The following symbolic constants are accepted by <em class="parameter"><code>pname</code></em>: </p> <div class="variablelist"> <dl class="variablelist"> <dt> <span class="term"> <code class="constant">GL_ACTIVE_TEXTURE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value indicating the active multitexture unit. The initial value is <code class="constant">GL_TEXTURE0</code>. See <a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_ALIASED_LINE_WIDTH_RANGE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a pair of values indicating the range of widths supported for aliased lines. See <a class="citerefentry" href="glLineWidth"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_ARRAY_BUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_ARRAY_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether blending is enabled. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_COLOR</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns four values, the red, green, blue, and alpha values which are the components of the blend color. See <a class="citerefentry" href="glBlendColor"><span class="citerefentry"><span class="refentrytitle">glBlendColor</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_DST_ALPHA</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the symbolic constant identifying the alpha destination blend function. The initial value is <code class="constant">GL_ZERO</code>. See <a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a> and <a class="citerefentry" href="glBlendFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_DST_RGB</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the symbolic constant identifying the RGB destination blend function. The initial value is <code class="constant">GL_ZERO</code>. See <a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a> and <a class="citerefentry" href="glBlendFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_EQUATION_RGB</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating whether the RGB blend equation is <code class="constant">GL_FUNC_ADD</code>, <code class="constant">GL_FUNC_SUBTRACT</code>, <code class="constant">GL_FUNC_REVERSE_SUBTRACT</code>, <code class="constant">GL_MIN</code> or <code class="constant">GL_MAX</code>. See <a class="citerefentry" href="glBlendEquationSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendEquationSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_EQUATION_ALPHA</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating whether the Alpha blend equation is <code class="constant">GL_FUNC_ADD</code>, <code class="constant">GL_FUNC_SUBTRACT</code>, <code class="constant">GL_FUNC_REVERSE_SUBTRACT</code>, <code class="constant">GL_MIN</code> or <code class="constant">GL_MAX</code>. See <a class="citerefentry" href="glBlendEquationSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendEquationSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_SRC_ALPHA</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the symbolic constant identifying the alpha source blend function. The initial value is <code class="constant">GL_ONE</code>. See <a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a> and <a class="citerefentry" href="glBlendFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_BLEND_SRC_RGB</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the symbolic constant identifying the RGB source blend function. The initial value is <code class="constant">GL_ONE</code>. See <a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a> and <a class="citerefentry" href="glBlendFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_COLOR_CLEAR_VALUE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <math overflow="scroll"> <mn>-1.0</mn> </math> returns the most negative representable integer value. The initial value is (0, 0, 0, 0). See <a class="citerefentry" href="glClearColor"><span class="citerefentry"><span class="refentrytitle">glClearColor</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_COLOR_LOGIC_OP</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glLogicOp"><span class="citerefentry"><span class="refentrytitle">glLogicOp</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_COLOR_WRITEMASK</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns four boolean values: the red, green, blue, and alpha write enables for the color buffers. The initial value is (<code class="constant">GL_TRUE</code>, <code class="constant">GL_TRUE</code>, <code class="constant">GL_TRUE</code>, <code class="constant">GL_TRUE</code>). See <a class="citerefentry" href="glColorMask"><span class="citerefentry"><span class="refentrytitle">glColorMask</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_COMPRESSED_TEXTURE_FORMATS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a list of symbolic constants of length <code class="constant">GL_NUM_COMPRESSED_TEXTURE_FORMATS</code> indicating which compressed texture formats are available. See <a class="citerefentry" href="glCompressedTexImage2D"><span class="citerefentry"><span class="refentrytitle">glCompressedTexImage2D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active shader storage blocks that may be accessed by a compute shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum total number of active shader storage blocks that may be accessed by all active shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_UNIFORM_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of uniform blocks per compute shader. The value must be at least 14. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum supported texture image units that can be used to access texture maps from the compute shader. The value may be at least 16. See <a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of individual floating-point, integer, or boolean values that can be held in uniform variable storage for a compute shader. The value must be at least 1024. See <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to compute shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counter buffers that may be accessed by a compute shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of words for compute shader uniform variables in all uniform blocks (including default). The value must be at least 1. See <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of invocations in a single local work group (i.e., the product of the three dimensions) that may be dispatched to a compute shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_WORK_GROUP_COUNT</code> </span> </dt> <dd> <p> Accepted by the indexed versions of <code class="function">glGet</code>. <em class="parameter"><code>data</code></em> the maximum number of work groups that may be dispatched to a compute shader. Indices 0, 1, and 2 correspond to the X, Y and Z dimensions, respectively. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMPUTE_WORK_GROUP_SIZE</code> </span> </dt> <dd> <p> Accepted by the indexed versions of <code class="function">glGet</code>. <em class="parameter"><code>data</code></em> the maximum size of a work groups that may be used during compilation of a compute shader. Indices 0, 1, and 2 correspond to the X, Y and Z dimensions, respectively. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DISPATCH_INDIRECT_BUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_DISPATCH_INDIRECT_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_DEBUG_GROUP_STACK_DEPTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum depth of the debug message group stack. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DEBUG_GROUP_STACK_DEPTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the current depth of the debug message group stack. </p> </dd> <dt> <span class="term"> <code class="constant">GL_CONTEXT_FLAGS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the flags with which the context was created (such as debugging functionality). </p> </dd> <dt> <span class="term"> <code class="constant">GL_CULL_FACE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether polygon culling is enabled. The initial value is <code class="constant">GL_BACK</code>. See <a class="citerefentry" href="glCullFace"><span class="citerefentry"><span class="refentrytitle">glCullFace</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_CURRENT_PROGRAM</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the name of the program object that is currently active, or 0 if no program object is active. See <a class="citerefentry" href="glUseProgram"><span class="citerefentry"><span class="refentrytitle">glUseProgram</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DEPTH_CLEAR_VALUE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <math overflow="scroll"> <mn>-1.0</mn> </math> returns the most negative representable integer value. The initial value is 1. See <a class="citerefentry" href="glClearDepth"><span class="citerefentry"><span class="refentrytitle">glClearDepth</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DEPTH_FUNC</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the symbolic constant that indicates the depth comparison function. The initial value is <code class="constant">GL_LESS</code>. See <a class="citerefentry" href="glDepthFunc"><span class="citerefentry"><span class="refentrytitle">glDepthFunc</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DEPTH_RANGE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <math overflow="scroll"> <mn>-1.0</mn> </math> returns the most negative representable integer value. The initial value is (0, 1). See <a class="citerefentry" href="glDepthRange"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DEPTH_TEST</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether depth testing of fragments is enabled. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glDepthFunc"><span class="citerefentry"><span class="refentrytitle">glDepthFunc</span></span></a> and <a class="citerefentry" href="glDepthRange"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DEPTH_WRITEMASK</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating if the depth buffer is enabled for writing. The initial value is <code class="constant">GL_TRUE</code>. See <a class="citerefentry" href="glDepthMask"><span class="citerefentry"><span class="refentrytitle">glDepthMask</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DITHER</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether dithering of fragment colors and indices is enabled. The initial value is <code class="constant">GL_TRUE</code>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DOUBLEBUFFER</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether double buffering is supported. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DRAW_BUFFER</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating which buffers are being drawn to. See <a class="citerefentry" href="glDrawBuffer"><span class="citerefentry"><span class="refentrytitle">glDrawBuffer</span></span></a>. The initial value is <code class="constant">GL_BACK</code> if there are back buffers, otherwise it is <code class="constant">GL_FRONT</code>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DRAW_BUFFER</code> <span class="emphasis"> <em>i</em> </span> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating which buffers are being drawn to by the corresponding output color. See <a class="citerefentry" href="glDrawBuffers"><span class="citerefentry"><span class="refentrytitle">glDrawBuffers</span></span></a>. The initial value of <code class="constant">GL_DRAW_BUFFER0</code> is <code class="constant">GL_BACK</code> if there are back buffers, otherwise it is <code class="constant">GL_FRONT</code>. The initial values of draw buffers for all other output colors is <code class="constant">GL_NONE</code>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_DRAW_FRAMEBUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the name of the framebuffer object currently bound to the <code class="constant">GL_DRAW_FRAMEBUFFER</code> target. If the default framebuffer is bound, this value will be zero. The initial value is zero. See <a class="citerefentry" href="glBindFramebuffer"><span class="citerefentry"><span class="refentrytitle">glBindFramebuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_READ_FRAMEBUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the name of the framebuffer object currently bound to the <code class="constant">GL_READ_FRAMEBUFFER</code> target. If the default framebuffer is bound, this value will be zero. The initial value is zero. See <a class="citerefentry" href="glBindFramebuffer"><span class="citerefentry"><span class="refentrytitle">glBindFramebuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_ELEMENT_ARRAY_BUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_ELEMENT_ARRAY_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_FRAGMENT_SHADER_DERIVATIVE_HINT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating the mode of the derivative accuracy hint for fragment shaders. The initial value is <code class="constant">GL_DONT_CARE</code>. See <a class="citerefentry" href="glHint"><span class="citerefentry"><span class="refentrytitle">glHint</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_IMPLEMENTATION_COLOR_READ_FORMAT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single GLenum value indicating the implementation's preferred pixel data format. See <a class="citerefentry" href="glReadPixels"><span class="citerefentry"><span class="refentrytitle">glReadPixels</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_IMPLEMENTATION_COLOR_READ_TYPE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single GLenum value indicating the implementation's preferred pixel data type. See <a class="citerefentry" href="glReadPixels"><span class="citerefentry"><span class="refentrytitle">glReadPixels</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_LINE_SMOOTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether antialiasing of lines is enabled. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glLineWidth"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_LINE_SMOOTH_HINT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating the mode of the line antialiasing hint. The initial value is <code class="constant">GL_DONT_CARE</code>. See <a class="citerefentry" href="glHint"><span class="citerefentry"><span class="refentrytitle">glHint</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_LINE_WIDTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the line width as specified with <a class="citerefentry" href="glLineWidth"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>. The initial value is 1. </p> </dd> <dt> <span class="term"> <code class="constant">GL_LAYER_PROVOKING_VERTEX</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the implementation dependent specifc vertex of a primitive that is used to select the rendering layer. If the value returned is equivalent to <code class="constant">GL_PROVOKING_VERTEX</code>, then the vertex selection follows the convention specified by <a class="citerefentry" href="glProvokingVertex"><span class="citerefentry"><span class="refentrytitle">glProvokingVertex</span></span></a>. If the value returned is equivalent to <code class="constant">GL_FIRST_VERTEX_CONVENTION</code>, then the selection is always taken from the first vertex in the primitive. If the value returned is equivalent to <code class="constant">GL_LAST_VERTEX_CONVENTION</code>, then the selection is always taken from the last vertex in the primitive. If the value returned is equivalent to <code class="constant">GL_UNDEFINED_VERTEX</code>, then the selection is not guaranteed to be taken from any specific vertex in the primitive. </p> </dd> <dt> <span class="term"> <code class="constant">GL_LOGIC_OP_MODE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating the selected logic operation mode. The initial value is <code class="constant">GL_COPY</code>. See <a class="citerefentry" href="glLogicOp"><span class="citerefentry"><span class="refentrytitle">glLogicOp</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAJOR_VERSION</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the major version number of the OpenGL API supported by the current context. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_3D_TEXTURE_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a rough estimate of the largest 3D texture that the GL can handle. The value must be at least 64. Use <code class="constant">GL_PROXY_TEXTURE_3D</code> to determine if a texture is too large. See <a class="citerefentry" href="glTexImage3D"><span class="citerefentry"><span class="refentrytitle">glTexImage3D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_ARRAY_TEXTURE_LAYERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value. The value indicates the maximum number of layers allowed in an array texture, and must be at least 256. See <a class="citerefentry" href="glTexImage2D"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_CLIP_DISTANCES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of application-defined clipping distances. The value must be at least 8. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COLOR_TEXTURE_SAMPLES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of samples in a color multisample texture. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to all active shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_UNIFORM_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of uniform blocks per program. The value must be at least 70. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_CUBE_MAP_TEXTURE_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_PROXY_TEXTURE_CUBE_MAP</code> to determine if a texture is too large. See <a class="citerefentry" href="glTexImage2D"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_DEPTH_TEXTURE_SAMPLES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of samples in a multisample depth or depth-stencil texture. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_DRAW_BUFFERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glDrawBuffers"><span class="citerefentry"><span class="refentrytitle">glDrawBuffers</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_DUAL_SOURCE_DRAW_BUFFERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active draw buffers when using dual-source blending. The value must be at least 1. See <a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a> and <a class="citerefentry" href="glBlendFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glBlendFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_ELEMENTS_INDICES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the recommended maximum number of vertex array indices. See <a class="citerefentry" href="glDrawRangeElements"><span class="citerefentry"><span class="refentrytitle">glDrawRangeElements</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_ELEMENTS_VERTICES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the recommended maximum number of vertex array vertices. See <a class="citerefentry" href="glDrawRangeElements"><span class="citerefentry"><span class="refentrytitle">glDrawRangeElements</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAGMENT_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to fragment shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active shader storage blocks that may be accessed by a fragment shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAGMENT_INPUT_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of components of the inputs read by the fragment shader, which must be at least 128. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAGMENT_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAGMENT_UNIFORM_VECTORS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of individual 4-vectors of floating-point, integer, or boolean values that can be held in uniform variable storage for a fragment shader. The value is equal to the value of <code class="constant">GL_MAX_FRAGMENT_UNIFORM_COMPONENTS</code> divided by 4 and must be at least 256. See <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAGMENT_UNIFORM_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of uniform blocks per fragment shader. The value must be at least 12. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAMEBUFFER_WIDTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum width for a framebuffer that has no attachments, which must be at least 16384. See <a class="citerefentry" href="glFramebufferParameter"><span class="citerefentry"><span class="refentrytitle">glFramebufferParameter</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAMEBUFFER_HEIGHT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum height for a framebuffer that has no attachments, which must be at least 16384. See <a class="citerefentry" href="glFramebufferParameter"><span class="citerefentry"><span class="refentrytitle">glFramebufferParameter</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAMEBUFFER_LAYERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of layers for a framebuffer that has no attachments, which must be at least 2048. See <a class="citerefentry" href="glFramebufferParameter"><span class="citerefentry"><span class="refentrytitle">glFramebufferParameter</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_FRAMEBUFFER_SAMPLES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum samples in a framebuffer that has no attachments, which must be at least 4. See <a class="citerefentry" href="glFramebufferParameter"><span class="citerefentry"><span class="refentrytitle">glFramebufferParameter</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to geometry shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active shader storage blocks that may be accessed by a geometry shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_INPUT_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of components of inputs read by a geometry shader, which must be at least 64. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_OUTPUT_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of components of outputs written by a geometry shader, which must be at least 128. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_UNIFORM_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of uniform blocks per geometry shader. The value must be at least 12. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_GEOMETRY_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_INTEGER_SAMPLES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of samples supported in integer format multisample buffers. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MIN_MAP_BUFFER_ALIGNMENT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the minimum alignment in basic machine units of pointers returned from<a class="citerefentry" href="glMapBuffer"><span class="citerefentry"><span class="refentrytitle">glMapBuffer</span></span></a> and <a class="citerefentry" href="glMapBufferRange"><span class="citerefentry"><span class="refentrytitle">glMapBufferRange</span></span></a>. This value must be a power of two and must be at least 64. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_LABEL_LENGTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum length of a label that may be assigned to an object. See <a class="citerefentry" href="glObjectLabel"><span class="citerefentry"><span class="refentrytitle">glObjectLabel</span></span></a> and <a class="citerefentry" href="glObjectPtrLabel"><span class="citerefentry"><span class="refentrytitle">glObjectPtrLabel</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_PROGRAM_TEXEL_OFFSET</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum texel offset allowed in a texture lookup, which must be at least 7. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MIN_PROGRAM_TEXEL_OFFSET</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the minimum texel offset allowed in a texture lookup, which must be at most -8. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_RECTANGLE_TEXTURE_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_PROXY_TEXTURE_RECTANGLE</code> to determine if a texture is too large. See <a class="citerefentry" href="glTexImage2D"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_RENDERBUFFER_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value. The value indicates the maximum supported size for renderbuffers. See <a class="citerefentry" href="glFramebufferRenderbuffer"><span class="citerefentry"><span class="refentrytitle">glFramebufferRenderbuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_SAMPLE_MASK_WORDS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of sample mask words. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_SERVER_WAIT_TIMEOUT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum <a class="citerefentry" href="glWaitSync"><span class="citerefentry"><span class="refentrytitle">glWaitSync</span></span></a> timeout interval. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of shader storage buffer binding points on the context, which must be at least 8. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to tessellation control shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to tessellation evaluation shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active shader storage blocks that may be accessed by a tessellation control shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active shader storage blocks that may be accessed by a tessellation evaluation shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TEXTURE_BUFFER_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TEXTURE_IMAGE_UNITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TEXTURE_LOD_BIAS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum, absolute value of the texture level-of-detail bias. The value must be at least 2.0. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_TEXTURE_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_PROXY_TEXTURE_1D</code> or <code class="constant">GL_PROXY_TEXTURE_2D</code> to determine if a texture is too large. See <a class="citerefentry" href="glTexImage1D"><span class="citerefentry"><span class="refentrytitle">glTexImage1D</span></span></a> and <a class="citerefentry" href="glTexImage2D"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_UNIFORM_BUFFER_BINDINGS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of uniform buffer binding points on the context, which must be at least 36. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_UNIFORM_BLOCK_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum size in basic machine units of a uniform block, which must be at least 16384. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_UNIFORM_LOCATIONS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of explicitly assignable uniform locations, which must be at least 1024. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VARYING_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number components for varying variables, which must be at least 60. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VARYING_VECTORS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number 4-vectors for varying variables, which is equal to the value of <code class="constant">GL_MAX_VARYING_COMPONENTS</code> and must be at least 15. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VARYING_FLOATS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_ATOMIC_COUNTERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum number of atomic counters available to vertex shaders. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_ATTRIBS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glVertexAttrib"><span class="citerefentry"><span class="refentrytitle">glVertexAttrib</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of active shader storage blocks that may be accessed by a vertex shader. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_UNIFORM_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glUniform"><span class="citerefentry"><span class="refentrytitle">glUniform</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_UNIFORM_VECTORS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of 4-vectors that may be held in uniform variable storage for the vertex shader. The value of <code class="constant">GL_MAX_VERTEX_UNIFORM_VECTORS</code> is equal to the value of <code class="constant">GL_MAX_VERTEX_UNIFORM_COMPONENTS</code> and must be at least 256. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_OUTPUT_COMPONENTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of components of output written by a vertex shader, which must be at least 64. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_UNIFORM_BLOCKS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of uniform blocks per vertex shader. The value must be at least 12. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VIEWPORT_DIMS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glViewport"><span class="citerefentry"><span class="refentrytitle">glViewport</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VIEWPORTS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the maximum number of simultaneous viewports that are supported. The value must be at least 16. See <a class="citerefentry" href="glViewportIndexed"><span class="citerefentry"><span class="refentrytitle">glViewportIndexed</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MINOR_VERSION</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the minor version number of the OpenGL API supported by the current context. </p> </dd> <dt> <span class="term"> <code class="constant">GL_NUM_COMPRESSED_TEXTURE_FORMATS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single integer value indicating the number of available compressed texture formats. The minimum value is 4. See <a class="citerefentry" href="glCompressedTexImage2D"><span class="citerefentry"><span class="refentrytitle">glCompressedTexImage2D</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_NUM_EXTENSIONS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of extensions supported by the GL implementation for the current context. See <a class="citerefentry" href="glGetString"><span class="citerefentry"><span class="refentrytitle">glGetString</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_NUM_PROGRAM_BINARY_FORMATS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of program binary formats supported by the implementation. </p> </dd> <dt> <span class="term"> <code class="constant">GL_NUM_SHADER_BINARY_FORMATS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of binary shader formats supported by the implementation. If this value is greater than zero, then the implementation supports loading binary shaders. If it is zero, then the loading of binary shaders by the implementation is not supported. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_ALIGNMENT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the byte alignment used for writing pixel data to memory. The initial value is 4. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_IMAGE_HEIGHT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the image height used for writing pixel data to memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_LSB_FIRST</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_ROW_LENGTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the row length used for writing pixel data to memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_SKIP_IMAGES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of pixel images skipped before the first pixel is written into memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_SKIP_PIXELS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of pixel locations skipped before the first pixel is written into memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_SKIP_ROWS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PACK_SWAP_BYTES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PIXEL_PACK_BUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_PIXEL_PACK_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PIXEL_UNPACK_BUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_PIXEL_UNPACK_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POINT_FADE_THRESHOLD_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the point size threshold for determining the point size. See <a class="citerefentry" href="glPointParameter"><span class="citerefentry"><span class="refentrytitle">glPointParameter</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PRIMITIVE_RESTART_INDEX</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the current primitive restart index. The initial value is 0. See <a class="citerefentry" href="glPrimitiveRestartIndex"><span class="citerefentry"><span class="refentrytitle">glPrimitiveRestartIndex</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PROGRAM_BINARY_FORMATS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> an array of <code class="constant">GL_NUM_PROGRAM_BINARY_FORMATS</code> values, indicating the proram binary formats supported by the implementation. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PROGRAM_PIPELINE_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> a single value, the name of the currently bound program pipeline object, or zero if no program pipeline object is bound. See <a class="citerefentry" href="glBindProgramPipeline"><span class="citerefentry"><span class="refentrytitle">glBindProgramPipeline</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PROGRAM_POINT_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether vertex program point size mode is enabled. If enabled, then the point size is taken from the shader built-in <code class="code">gl_PointSize</code>. If disabled, then the point size is taken from the point state as specified by <a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>. The initial value is <code class="constant">GL_FALSE</code>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_PROVOKING_VERTEX</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the currently selected provoking vertex convention. The initial value is <code class="constant">GL_LAST_VERTEX_CONVENTION</code>. See <a class="citerefentry" href="glProvokingVertex"><span class="citerefentry"><span class="refentrytitle">glProvokingVertex</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POINT_SIZE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the point size as specified by <a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>. The initial value is 1. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POINT_SIZE_GRANULARITY</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the size difference between adjacent supported sizes for antialiased points. See <a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POINT_SIZE_RANGE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_OFFSET_FACTOR</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_OFFSET_UNITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_OFFSET_FILL</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether polygon offset is enabled for polygons in fill mode. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_OFFSET_LINE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether polygon offset is enabled for polygons in line mode. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_OFFSET_POINT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether polygon offset is enabled for polygons in point mode. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_SMOOTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether antialiasing of polygons is enabled. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPolygonMode"><span class="citerefentry"><span class="refentrytitle">glPolygonMode</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_POLYGON_SMOOTH_HINT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating the mode of the polygon antialiasing hint. The initial value is <code class="constant">GL_DONT_CARE</code>. See <a class="citerefentry" href="glHint"><span class="citerefentry"><span class="refentrytitle">glHint</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_READ_BUFFER</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating which color buffer is selected for reading. The initial value is <code class="constant">GL_BACK</code> if there is a back buffer, otherwise it is <code class="constant">GL_FRONT</code>. See <a class="citerefentry" href="glReadPixels"><span class="citerefentry"><span class="refentrytitle">glReadPixels</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_RENDERBUFFER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the renderbuffer object currently bound to the target <code class="constant">GL_RENDERBUFFER</code>. If no renderbuffer object is bound to this target, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindRenderbuffer"><span class="citerefentry"><span class="refentrytitle">glBindRenderbuffer</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SAMPLE_BUFFERS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single integer value indicating the number of sample buffers associated with the framebuffer. See <a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SAMPLE_COVERAGE_VALUE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single positive floating-point value indicating the current sample coverage value. See <a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SAMPLE_COVERAGE_INVERT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating if the temporary coverage value should be inverted. See <a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SAMPLE_MASK_VALUE</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegeri_v</code>), <em class="parameter"><code>data</code></em> returns one value, the 32-bit sub-word of the sample mask that specifies which samples to update. The index must be less than <code class="constant">GL_MAX_SAMPLE_MASK_WORDS</code>. The initial value is all 1's. See <a class="citerefentry" href="glSampleMaski"><span class="citerefentry"><span class="refentrytitle">glSampleMaski</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SAMPLER_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the sampler object currently bound to the active texture unit. The initial value is 0. See <a class="citerefentry" href="glBindSampler"><span class="citerefentry"><span class="refentrytitle">glBindSampler</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SAMPLES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single integer value indicating the coverage mask size. See <a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SCISSOR_BOX</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns four values: the <math overflow="scroll"><mi mathvariant="italic">x</mi></math> and <math overflow="scroll"><mi mathvariant="italic">y</mi></math> window coordinates of the scissor box, followed by its width and height. Initially the <math overflow="scroll"><mi mathvariant="italic">x</mi></math> and <math overflow="scroll"><mi mathvariant="italic">y</mi></math> window coordinates are both 0 and the width and height are set to the size of the window. See <a class="citerefentry" href="glScissor"><span class="citerefentry"><span class="refentrytitle">glScissor</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SCISSOR_TEST</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether scissoring is enabled. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glScissor"><span class="citerefentry"><span class="refentrytitle">glScissor</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SHADER_COMPILER</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether an online shader compiler is present in the implementation. All desktop OpenGL implementations must support online shader compilations, and therefore the value of <code class="constant">GL_SHADER_COMPILER</code> will always be <code class="constant">GL_TRUE</code>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SHADER_STORAGE_BUFFER_BINDING</code> </span> </dt> <dd> <p> When used with non-indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegerv</code>), <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_SHADER_STORAGE_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegeri_v</code>), <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object bound to the indexed shader storage buffer binding points. The initial value is 0 for all targets. See <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>, <a class="citerefentry" href="glBindBufferBase"><span class="citerefentry"><span class="refentrytitle">glBindBufferBase</span></span></a>, and <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the minimum required alignment for shader storage buffer sizes and offset. The initial value is 1. See <a class="citerefentry" href="glShaderStorateBlockBinding"><span class="citerefentry"><span class="refentrytitle">glShaderStorateBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SHADER_STORAGE_BUFFER_START</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetInteger64i_v</code>), <em class="parameter"><code>data</code></em> returns a single value, the start offset of the binding range for each indexed shader storage buffer binding. The initial value is 0 for all bindings. See <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SHADER_STORAGE_BUFFER_SIZE</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetInteger64i_v</code>), <em class="parameter"><code>data</code></em> returns a single value, the size of the binding range for each indexed shader storage buffer binding. The initial value is 0 for all bindings. See <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SMOOTH_LINE_WIDTH_RANGE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a pair of values indicating the range of widths supported for smooth (antialiased) lines. See <a class="citerefentry" href="glLineWidth"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SMOOTH_LINE_WIDTH_GRANULARITY</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value indicating the level of quantization applied to smooth line width parameters. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_FAIL</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating what action is taken for back-facing polygons when the stencil test fails. The initial value is <code class="constant">GL_KEEP</code>. See <a class="citerefentry" href="glStencilOpSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilOpSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_FUNC</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_ALWAYS</code>. See <a class="citerefentry" href="glStencilFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_PASS_DEPTH_FAIL</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_KEEP</code>. See <a class="citerefentry" href="glStencilOpSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilOpSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_PASS_DEPTH_PASS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_KEEP</code>. See <a class="citerefentry" href="glStencilOpSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilOpSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_REF</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glStencilFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_VALUE_MASK</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glStencilFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_BACK_WRITEMASK</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the mask that controls writing of the stencil bitplanes for back-facing polygons. The initial value is all 1's. See <a class="citerefentry" href="glStencilMaskSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilMaskSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_CLEAR_VALUE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the index to which the stencil bitplanes are cleared. The initial value is 0. See <a class="citerefentry" href="glClearStencil"><span class="citerefentry"><span class="refentrytitle">glClearStencil</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_FAIL</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, a symbolic constant indicating what action is taken when the stencil test fails. The initial value is <code class="constant">GL_KEEP</code>. See <a class="citerefentry" href="glStencilOp"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilOpSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilOpSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_FUNC</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_ALWAYS</code>. See <a class="citerefentry" href="glStencilFunc"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_PASS_DEPTH_FAIL</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_KEEP</code>. See <a class="citerefentry" href="glStencilOp"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilOpSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilOpSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_PASS_DEPTH_PASS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_KEEP</code>. See <a class="citerefentry" href="glStencilOp"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilOpSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilOpSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_REF</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the reference value that is compared with the contents of the stencil buffer. The initial value is 0. See <a class="citerefentry" href="glStencilFunc"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_TEST</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether stencil testing of fragments is enabled. The initial value is <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glStencilFunc"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a> and <a class="citerefentry" href="glStencilOp"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_VALUE_MASK</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glStencilFunc"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilFuncSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilFuncSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STENCIL_WRITEMASK</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the mask that controls writing of the stencil bitplanes. The initial value is all 1's. See <a class="citerefentry" href="glStencilMask"><span class="citerefentry"><span class="refentrytitle">glStencilMask</span></span></a>. This stencil state only affects non-polygons and front-facing polygons. Back-facing polygons use separate stencil state. See <a class="citerefentry" href="glStencilMaskSeparate"><span class="citerefentry"><span class="refentrytitle">glStencilMaskSeparate</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_STEREO</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single boolean value indicating whether stereo buffers (left and right) are supported. </p> </dd> <dt> <span class="term"> <code class="constant">GL_SUBPIXEL_BITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_1D</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_1D</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_1D_ARRAY</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_1D_ARRAY</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_2D</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_2D</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_2D_ARRAY</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_2D_ARRAY</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_2D_MULTISAMPLE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_2D_MULTISAMPLE</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_2D_MULTISAMPLE_ARRAY</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_3D</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_3D</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_BUFFER</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_BUFFER</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_CUBE_MAP</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_CUBE_MAP</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BINDING_RECTANGLE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the texture currently bound to the target <code class="constant">GL_TEXTURE_RECTANGLE</code>. The initial value is 0. See <a class="citerefentry" href="glBindTexture"><span class="citerefentry"><span class="refentrytitle">glBindTexture</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_COMPRESSION_HINT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value indicating the mode of the texture compression hint. The initial value is <code class="constant">GL_DONT_CARE</code>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the minimum required alignment for texture buffer sizes and offset. The initial value is 1. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TIMESTAMP</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the 64-bit value of the current GL time. See <a class="citerefentry" href="glQueryCounter"><span class="citerefentry"><span class="refentrytitle">glQueryCounter</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TRANSFORM_FEEDBACK_BUFFER_BINDING</code> </span> </dt> <dd> <p> When used with non-indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegerv</code>), <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_TRANSFORM_FEEDBACK_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegeri_v</code>), <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>, <a class="citerefentry" href="glBindBufferBase"><span class="citerefentry"><span class="refentrytitle">glBindBufferBase</span></span></a>, and <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TRANSFORM_FEEDBACK_BUFFER_START</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetInteger64i_v</code>), <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_TRANSFORM_FEEDBACK_BUFFER_SIZE</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetInteger64i_v</code>), <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNIFORM_BUFFER_BINDING</code> </span> </dt> <dd> <p> When used with non-indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegerv</code>), <em class="parameter"><code>data</code></em> returns a single value, the name of the buffer object currently bound to the target <code class="constant">GL_UNIFORM_BUFFER</code>. If no buffer object is bound to this target, 0 is returned. When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegeri_v</code>), <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glBindBuffer"><span class="citerefentry"><span class="refentrytitle">glBindBuffer</span></span></a>, <a class="citerefentry" href="glBindBufferBase"><span class="citerefentry"><span class="refentrytitle">glBindBufferBase</span></span></a>, and <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the minimum required alignment for uniform buffer sizes and offset. The initial value is 1. See <a class="citerefentry" href="glUniformBlockBinding"><span class="citerefentry"><span class="refentrytitle">glUniformBlockBinding</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNIFORM_BUFFER_SIZE</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetInteger64i_v</code>), <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNIFORM_BUFFER_START</code> </span> </dt> <dd> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetInteger64i_v</code>), <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glBindBufferRange"><span class="citerefentry"><span class="refentrytitle">glBindBufferRange</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_ALIGNMENT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the byte alignment used for reading pixel data from memory. The initial value is 4. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_IMAGE_HEIGHT</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the image height used for reading pixel data from memory. The initial is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_LSB_FIRST</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_ROW_LENGTH</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the row length used for reading pixel data from memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_SKIP_IMAGES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of pixel images skipped before the first pixel is read from memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_SKIP_PIXELS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the number of pixel locations skipped before the first pixel is read from memory. The initial value is 0. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_SKIP_ROWS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_UNPACK_SWAP_BYTES</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> 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 <code class="constant">GL_FALSE</code>. See <a class="citerefentry" href="glPixelStore"><span class="citerefentry"><span class="refentrytitle">glPixelStore</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VERTEX_ARRAY_BINDING</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the name of the vertex array object currently bound to the context. If no vertex array object is bound to the context, 0 is returned. The initial value is 0. See <a class="citerefentry" href="glBindVertexArray"><span class="citerefentry"><span class="refentrytitle">glBindVertexArray</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VERTEX_BINDING_DIVISOR</code> </span> </dt> <dd> <p> Accepted by the indexed forms. <em class="parameter"><code>data</code></em> returns a single integer value representing the instance step divisor of the first element in the bound buffer's data store for vertex attribute bound to <em class="parameter"><code>index</code></em>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VERTEX_BINDING_OFFSET</code> </span> </dt> <dd> <p> Accepted by the indexed forms. <em class="parameter"><code>data</code></em> returns a single integer value representing the byte offset of the first element in the bound buffer's data store for vertex attribute bound to <em class="parameter"><code>index</code></em>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VERTEX_BINDING_STRIDE</code> </span> </dt> <dd> <p> Accepted by the indexed forms. <em class="parameter"><code>data</code></em> returns a single integer value representing the byte offset between the start of each element in the bound buffer's data store for vertex attribute bound to <em class="parameter"><code>index</code></em>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single integer value containing the maximum offset that may be added to a vertex binding offset. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_VERTEX_ATTRIB_BINDINGS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single integer value containing the maximum number of vertex buffers that may be bound. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VIEWPORT</code> </span> </dt> <dd> <p> When used with non-indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegerv</code>), <em class="parameter"><code>data</code></em> returns four values: the <math overflow="scroll"><mi mathvariant="italic">x</mi></math> and <math overflow="scroll"><mi mathvariant="italic">y</mi></math> window coordinates of the viewport, followed by its width and height. Initially the <math overflow="scroll"><mi mathvariant="italic">x</mi></math> and <math overflow="scroll"><mi mathvariant="italic">y</mi></math> 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 <a class="citerefentry" href="glViewport"><span class="citerefentry"><span class="refentrytitle">glViewport</span></span></a>. </p> <p> When used with indexed variants of <code class="function">glGet</code> (such as <code class="function">glGetIntegeri_v</code>), <em class="parameter"><code>data</code></em> returns four values: the <math overflow="scroll"><mi mathvariant="italic">x</mi></math> and <math overflow="scroll"><mi mathvariant="italic">y</mi></math> window coordinates of the indexed viewport, followed by its width and height. Initially the <math overflow="scroll"><mi mathvariant="italic">x</mi></math> and <math overflow="scroll"><mi mathvariant="italic">y</mi></math> 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 <a class="citerefentry" href="glViewportIndexedf"><span class="citerefentry"><span class="refentrytitle">glViewportIndexedf</span></span></a>. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VIEWPORT_BOUNDS_RANGE</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns two values, the minimum and maximum viewport bounds range. The minimum range should be at least [-32768, 32767]. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VIEWPORT_INDEX_PROVOKING_VERTEX</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns one value, the implementation dependent specifc vertex of a primitive that is used to select the viewport index. If the value returned is equivalent to <code class="constant">GL_PROVOKING_VERTEX</code>, then the vertex selection follows the convention specified by <a class="citerefentry" href="glProvokingVertex"><span class="citerefentry"><span class="refentrytitle">glProvokingVertex</span></span></a>. If the value returned is equivalent to <code class="constant">GL_FIRST_VERTEX_CONVENTION</code>, then the selection is always taken from the first vertex in the primitive. If the value returned is equivalent to <code class="constant">GL_LAST_VERTEX_CONVENTION</code>, then the selection is always taken from the last vertex in the primitive. If the value returned is equivalent to <code class="constant">GL_UNDEFINED_VERTEX</code>, then the selection is not guaranteed to be taken from any specific vertex in the primitive. </p> </dd> <dt> <span class="term"> <code class="constant">GL_VIEWPORT_SUBPIXEL_BITS</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the number of bits of sub-pixel precision which the GL uses to interpret the floating point viewport bounds. The minimum value is 0. </p> </dd> <dt> <span class="term"> <code class="constant">GL_MAX_ELEMENT_INDEX</code> </span> </dt> <dd> <p> <em class="parameter"><code>data</code></em> returns a single value, the maximum index that may be specified during the transfer of generic vertex attributes to the GL. </p> </dd> </dl> </div> <p> Many of the boolean parameters can also be queried more easily using <a class="citerefentry" href="glIsEnabled"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a>. </p> </div> <div class="refsect1" id="notes"> <h2>Notes</h2> <p> The following parameters return the associated value for the active texture unit: <code class="constant">GL_TEXTURE_1D</code>, <code class="constant">GL_TEXTURE_BINDING_1D</code>, <code class="constant">GL_TEXTURE_2D</code>, <code class="constant">GL_TEXTURE_BINDING_2D</code>, <code class="constant">GL_TEXTURE_3D</code> and <code class="constant">GL_TEXTURE_BINDING_3D</code>. </p> <p> <code class="constant">GL_MAX_VIEWPORTS</code>, <code class="constant">GL_VIEWPORT_SUBPIXEL_BITS</code>, <code class="constant">GL_VIEWPORT_BOUNDS_RANGE</code>, <code class="constant">GL_LAYER_PROVOKING_VERTEX</code>, and <code class="constant">GL_VIEWPORT_INDEX_PROVOKING_VERTEX</code> are available only if the GL version is 4.1 or greater. </p> <p> <code class="constant">GL_MAX_VERTEX_ATOMIC_COUNTERS</code>, <code class="constant">GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS</code>, <code class="constant">GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS</code>, <code class="constant">GL_MAX_GEOMETRY_ATOMIC_COUNTERS</code>, <code class="constant">GL_MAX_FRAMGENT_ATOMIC_COUNTERS</code>, and <code class="constant">GL_MIN_MAP_BUFFER_ALIGNMENT</code> are accepted by <em class="parameter"><code>pname</code></em> only if the GL version is 4.2 or greater. </p> <p> <code class="constant">GL_MAX_ELEMENT_INDEX</code> is accepted by <em class="parameter"><code>pname</code></em> only if the GL version is 4.3 or greater. </p> <p> <code class="constant">GL_MAX_COMPUTE_UNIFORM_BLOCKS</code>, <code class="constant">GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS</code>, <code class="constant">GL_MAX_COMPUTE_UNIFORM_COMPONENTS</code>, <code class="constant">GL_MAX_COMPUTE_ATOMIC_COUNTERS</code>, <code class="constant">GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS</code>, <code class="constant">GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS</code>, <code class="constant">GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS</code>, <code class="constant">GL_MAX_COMPUTE_WORK_GROUP_COUNT</code>, and <code class="constant">GL_MAX_COMPUTE_WORK_GROUP_SIZE</code> and <code class="constant">GL_DISPATCH_INDIRECT_BUFFER_BINDING</code> are available only if the GL version is 4.3 or greater. </p> <p> <code class="constant">GL_MAX_DEBUG_GROUP_STACK_DEPTH</code>, <code class="constant">GL_DEBUG_GROUP_STACK_DEPTH</code> and <code class="constant">GL_MAX_LABEL_LENGTH</code> are accepted only if the GL version is 4.3 or greater. </p> <p> <code class="constant">GL_MAX_UNIFORM_LOCATIONS</code> is accepted only if the GL version is 4.3 or greater. </p> <p> <code class="constant">GL_MAX_FRAMEBUFFER_WIDTH</code>, <code class="constant">GL_MAX_FRAMEBUFFER_HEIGHT</code>, <code class="constant">GL_MAX_FRAMEBUFFER_LAYERS</code>, and <code class="constant">GL_MAX_FRAMEBUFFER_SAMPLES</code> are available only if the GL version is 4.3 or greater. </p> <p> <code class="constant">GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS</code>, <code class="constant">GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS</code>, <code class="constant">GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS</code>, <code class="constant">GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS</code>, <code class="constant">GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS</code>, and <code class="constant">GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS</code> are available only if the GL version is 4.3 or higher. </p> <p> <code class="constant">GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT</code> is available only if the GL version is 4.3 or greater. </p> <p> <code class="constant">GL_VERTEX_BINDING_DIVISOR</code>, <code class="constant">GL_VERTEX_BINDING_OFFSET</code>, <code class="constant">GL_VERTEX_BINDING_STRIDE</code>, <code class="constant">GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET</code> and <code class="constant">GL_MAX_VERTEX_ATTRIB_BINDINGS</code> are available only if the GL version is 4.3 or greater. </p> </div> <div class="refsect1" id="errors"> <h2>Errors</h2> <p> <code class="constant">GL_INVALID_ENUM</code> is generated if <em class="parameter"><code>pname</code></em> is not an accepted value. </p> <p> <code class="constant">GL_INVALID_VALUE</code> is generated on any of <code class="function">glGetBooleani_v</code>, <code class="function">glGetIntegeri_v</code>, or <code class="function">glGetInteger64i_v</code> if <em class="parameter"><code>index</code></em> is outside of the valid range for the indexed state <em class="parameter"><code>target</code></em>. </p> </div> <div class="refsect1" id="tutorials"><h2>Tutorials</h2><p></p></div> <div class="refsect1" id="versions"> <h2>Version Support</h2> <div class="informaltable"> <table style="border-collapse: collapse; border-top: 2px solid ; border-bottom: 2px solid ; border-left: 2px solid ; border-right: 2px solid ; "> <colgroup> <col style="text-align: left; "> <col style="text-align: center; " class="firstvers"> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; "> <col style="text-align: center; " class="lastvers"> </colgroup> <thead> <tr> <th style="text-align: left; border-right: 2px solid ; "> </th> <th style="text-align: center; border-bottom: 2px solid ; " colspan="12"> <span class="bold"><strong>OpenGL Version</strong></span> </th> </tr> <tr> <th style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>Function / Feature Name</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>2.0</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>2.1</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>3.0</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>3.1</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>3.2</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>3.3</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>4.0</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>4.1</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>4.2</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>4.3</strong></span> </th> <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; "> <span class="bold"><strong>4.4</strong></span> </th> <th style="text-align: center; border-bottom: 2px solid ; "> <span class="bold"><strong>4.5</strong></span> </th> </tr> </thead> <tbody> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetBooleani_v</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetBooleanv</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetDoublei_v</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetDoublev</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetFloati_v</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetFloatv</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetInteger64i_v</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetInteger64v</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; "> <code class="function">glGetIntegeri_v</code> </td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">-</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-bottom: 2px solid ; ">&#10004;</td> </tr> <tr> <td style="text-align: left; border-right: 2px solid ; "> <code class="function">glGetIntegerv</code> </td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; border-right: 2px solid ; ">&#10004;</td> <td style="text-align: center; ">&#10004;</td> </tr> </tbody> </table> </div> </div> <div class="refsect1" id="seealso"> <h2>See Also</h2> <p> <a class="citerefentry" href="glGetActiveUniform"><span class="citerefentry"><span class="refentrytitle">glGetActiveUniform</span></span></a>, <a class="citerefentry" href="glGetAttachedShaders"><span class="citerefentry"><span class="refentrytitle">glGetAttachedShaders</span></span></a>, <a class="citerefentry" href="glGetAttribLocation"><span class="citerefentry"><span class="refentrytitle">glGetAttribLocation</span></span></a>, <a class="citerefentry" href="glGetBufferParameter"><span class="citerefentry"><span class="refentrytitle">glGetBufferParameter</span></span></a>, <a class="citerefentry" href="glGetBufferPointerv"><span class="citerefentry"><span class="refentrytitle">glGetBufferPointerv</span></span></a>, <a class="citerefentry" href="glGetBufferSubData"><span class="citerefentry"><span class="refentrytitle">glGetBufferSubData</span></span></a>, <a class="citerefentry" href="glGetCompressedTexImage"><span class="citerefentry"><span class="refentrytitle">glGetCompressedTexImage</span></span></a>, <a class="citerefentry" href="glGetError"><span class="citerefentry"><span class="refentrytitle">glGetError</span></span></a>, <a class="citerefentry" href="glGetProgram"><span class="citerefentry"><span class="refentrytitle">glGetProgram</span></span></a>, <a class="citerefentry" href="glGetProgramInfoLog"><span class="citerefentry"><span class="refentrytitle">glGetProgramInfoLog</span></span></a>, <a class="citerefentry" href="glGetQueryiv"><span class="citerefentry"><span class="refentrytitle">glGetQueryiv</span></span></a>, <a class="citerefentry" href="glGetQueryObject"><span class="citerefentry"><span class="refentrytitle">glGetQueryObject</span></span></a>, <a class="citerefentry" href="glGetShader"><span class="citerefentry"><span class="refentrytitle">glGetShader</span></span></a>, <a class="citerefentry" href="glGetShaderInfoLog"><span class="citerefentry"><span class="refentrytitle">glGetShaderInfoLog</span></span></a>, <a class="citerefentry" href="glGetShaderSource"><span class="citerefentry"><span class="refentrytitle">glGetShaderSource</span></span></a>, <a class="citerefentry" href="glGetString"><span class="citerefentry"><span class="refentrytitle">glGetString</span></span></a>, <a class="citerefentry" href="glGetTexImage"><span class="citerefentry"><span class="refentrytitle">glGetTexImage</span></span></a>, <a class="citerefentry" href="glGetTexLevelParameter"><span class="citerefentry"><span class="refentrytitle">glGetTexLevelParameter</span></span></a>, <a class="citerefentry" href="glGetTexParameter"><span class="citerefentry"><span class="refentrytitle">glGetTexParameter</span></span></a>, <a class="citerefentry" href="glGetUniform"><span class="citerefentry"><span class="refentrytitle">glGetUniform</span></span></a>, <a class="citerefentry" href="glGetUniformLocation"><span class="citerefentry"><span class="refentrytitle">glGetUniformLocation</span></span></a>, <a class="citerefentry" href="glGetVertexAttrib"><span class="citerefentry"><span class="refentrytitle">glGetVertexAttrib</span></span></a>, <a class="citerefentry" href="glGetVertexAttribPointerv"><span class="citerefentry"><span class="refentrytitle">glGetVertexAttribPointerv</span></span></a>, <a class="citerefentry" href="glIsEnabled"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a> </p> </div> <div class="refsect1" id="Copyright"> <h2>Copyright</h2> <p> Copyright &#169; 1991-2006 Silicon Graphics, Inc. Copyright &#169; 2010-2014 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see <a class="link" href="https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/" target="_top">https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/</a>. </p> </div> </div> </div> <div id="improvepage">Think you can improve this page? <a href="https://github.com/BSVino/docs.gl/blob/mainline/gl4/glGet.xhtml">Edit this page</a> on <a href="https://github.com/BSVino/docs.gl/">GitHub</a>.</div> </div> <div id="footer"> <div id="credits"><a href="https://docs.gl/">docs.gl</a> was written by <a href="https://twitter.com/VinoBS">Jorge Rodr&#237;guez</a>. Each entry is under individual copyright displayed at the bottom of that entry. All other content is in the public domain.<br> docs.gl is completely unaffiliated with OpenGL and Khronos.<br> These pages were last compiled on 12 April 2026 at 14:17:30 GMT.</div> </div> <script async src="../docs.gl.search.js"></script> </body> </html> 