From 7faf1d718c244a3e6cd364abb755fdbcbea0b276 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Fri, 25 Jan 2013 17:41:54 +0100 Subject: [PATCH] add upstream documentation * upstream-man-pages/update: New script, downloads documentation from khronos.org. * upstream-man-pages/man2: * upstream-man-pages/man3: * upstream-man-pages/man4: * upstream-man-pages/manglsl: Update. --- upstream-man-pages/man2/Makefile | 49 + upstream-man-pages/man2/README.txt | 56 + upstream-man-pages/man2/bottom.php | 9 + .../man2/docs/Viewing_XHTML_and_MathML.html | 3 + .../docs/XML_Toolchain_and_Man_Pages.html | 3 + upstream-man-pages/man2/fo/Makefile | 395 ++ upstream-man-pages/man2/fo/glTexGen.fo | 648 +++ upstream-man-pages/man2/fo/glTexGen.pdf | Bin 0 -> 10067 bytes upstream-man-pages/man2/foo | 0 upstream-man-pages/man2/glAccum.xml | 300 + upstream-man-pages/man2/glActiveTexture.xml | 93 + upstream-man-pages/man2/glAlphaFunc.xml | 210 + .../man2/glAreTexturesResident.xml | 145 + upstream-man-pages/man2/glArrayElement.xml | 113 + upstream-man-pages/man2/glAttachShader.xml | 115 + upstream-man-pages/man2/glBegin.xml | 619 +++ upstream-man-pages/man2/glBeginQuery.xml | 154 + .../man2/glBindAttribLocation.xml | 196 + upstream-man-pages/man2/glBindBuffer.xml | 206 + upstream-man-pages/man2/glBindTexture.xml | 168 + upstream-man-pages/man2/glBitmap.xml | 276 + upstream-man-pages/man2/glBlendColor.xml | 98 + upstream-man-pages/man2/glBlendEquation.xml | 765 +++ .../man2/glBlendEquationSeparate.xml | 779 +++ upstream-man-pages/man2/glBlendFunc.xml | 1256 +++++ .../man2/glBlendFuncSeparate.xml | 1315 +++++ upstream-man-pages/man2/glBufferData.xml | 221 + upstream-man-pages/man2/glBufferSubData.xml | 152 + upstream-man-pages/man2/glCallList.xml | 100 + upstream-man-pages/man2/glCallLists.xml | 284 + upstream-man-pages/man2/glClear.xml | 167 + upstream-man-pages/man2/glClearAccum.xml | 90 + upstream-man-pages/man2/glClearColor.xml | 88 + upstream-man-pages/man2/glClearDepth.xml | 78 + upstream-man-pages/man2/glClearIndex.xml | 93 + upstream-man-pages/man2/glClearStencil.xml | 94 + .../man2/glClientActiveTexture.xml | 91 + upstream-man-pages/man2/glClipPlane.xml | 134 + upstream-man-pages/man2/glColor.xml | 383 ++ upstream-man-pages/man2/glColorMask.xml | 99 + upstream-man-pages/man2/glColorMaterial.xml | 143 + upstream-man-pages/man2/glColorPointer.xml | 208 + upstream-man-pages/man2/glColorSubTable.xml | 227 + upstream-man-pages/man2/glColorTable.xml | 778 +++ .../man2/glColorTableParameter.xml | 136 + upstream-man-pages/man2/glCompileShader.xml | 94 + .../man2/glCompressedTexImage1D.xml | 239 + .../man2/glCompressedTexImage2D.xml | 295 + .../man2/glCompressedTexImage3D.xml | 311 ++ .../man2/glCompressedTexSubImage1D.xml | 243 + .../man2/glCompressedTexSubImage2D.xml | 291 + .../man2/glCompressedTexSubImage3D.xml | 293 + .../man2/glConvolutionFilter1D.xml | 459 ++ .../man2/glConvolutionFilter2D.xml | 478 ++ .../man2/glConvolutionParameter.xml | 311 ++ .../man2/glCopyColorSubTable.xml | 152 + upstream-man-pages/man2/glCopyColorTable.xml | 385 ++ .../man2/glCopyConvolutionFilter1D.xml | 369 ++ .../man2/glCopyConvolutionFilter2D.xml | 387 ++ upstream-man-pages/man2/glCopyPixels.xml | 609 ++ upstream-man-pages/man2/glCopyTexImage1D.xml | 370 ++ upstream-man-pages/man2/glCopyTexImage2D.xml | 432 ++ .../man2/glCopyTexSubImage1D.xml | 268 + .../man2/glCopyTexSubImage2D.xml | 370 ++ .../man2/glCopyTexSubImage3D.xml | 385 ++ upstream-man-pages/man2/glCreateProgram.xml | 127 + upstream-man-pages/man2/glCreateShader.xml | 111 + upstream-man-pages/man2/glCullFace.xml | 99 + upstream-man-pages/man2/glDeleteBuffers.xml | 96 + upstream-man-pages/man2/glDeleteLists.xml | 108 + upstream-man-pages/man2/glDeleteProgram.xml | 96 + upstream-man-pages/man2/glDeleteQueries.xml | 96 + upstream-man-pages/man2/glDeleteShader.xml | 92 + upstream-man-pages/man2/glDeleteTextures.xml | 104 + upstream-man-pages/man2/glDepthFunc.xml | 173 + upstream-man-pages/man2/glDepthMask.xml | 81 + upstream-man-pages/man2/glDepthRange.xml | 128 + upstream-man-pages/man2/glDetachShader.xml | 102 + upstream-man-pages/man2/glDrawArrays.xml | 150 + upstream-man-pages/man2/glDrawBuffer.xml | 239 + upstream-man-pages/man2/glDrawBuffers.xml | 196 + upstream-man-pages/man2/glDrawElements.xml | 162 + upstream-man-pages/man2/glDrawPixels.xml | 1235 +++++ .../man2/glDrawRangeElements.xml | 238 + upstream-man-pages/man2/glEdgeFlag.xml | 112 + upstream-man-pages/man2/glEdgeFlagPointer.xml | 166 + upstream-man-pages/man2/glEnable.xml | 1110 ++++ .../man2/glEnableClientState.xml | 223 + .../man2/glEnableVertexAttribArray.xml | 109 + upstream-man-pages/man2/glEvalCoord.xml | 362 ++ upstream-man-pages/man2/glEvalMesh.xml | 626 +++ upstream-man-pages/man2/glEvalPoint.xml | 380 ++ upstream-man-pages/man2/glFeedbackBuffer.xml | 420 ++ upstream-man-pages/man2/glFinish.xml | 61 + upstream-man-pages/man2/glFlush.xml | 75 + upstream-man-pages/man2/glFog.xml | 492 ++ upstream-man-pages/man2/glFogCoord.xml | 109 + upstream-man-pages/man2/glFogCoordPointer.xml | 187 + upstream-man-pages/man2/glFrontFace.xml | 101 + upstream-man-pages/man2/glFrustum.xml | 420 ++ upstream-man-pages/man2/glGenBuffers.xml | 100 + upstream-man-pages/man2/glGenLists.xml | 108 + upstream-man-pages/man2/glGenQueries.xml | 100 + upstream-man-pages/man2/glGenTextures.xml | 108 + upstream-man-pages/man2/glGet.xml | 4897 +++++++++++++++++ upstream-man-pages/man2/glGetActiveAttrib.xml | 231 + .../man2/glGetActiveUniform.xml | 277 + .../man2/glGetAttachedShaders.xml | 120 + .../man2/glGetAttribLocation.xml | 114 + .../man2/glGetBufferParameteriv.xml | 153 + .../man2/glGetBufferPointerv.xml | 113 + .../man2/glGetBufferSubData.xml | 136 + upstream-man-pages/man2/glGetClipPlane.xml | 96 + upstream-man-pages/man2/glGetColorTable.xml | 274 + .../man2/glGetColorTableParameter.xml | 259 + .../man2/glGetCompressedTexImage.xml | 175 + .../man2/glGetConvolutionFilter.xml | 277 + .../man2/glGetConvolutionParameter.xml | 225 + upstream-man-pages/man2/glGetError.xml | 173 + upstream-man-pages/man2/glGetHistogram.xml | 271 + .../man2/glGetHistogramParameter.xml | 207 + upstream-man-pages/man2/glGetLight.xml | 336 ++ upstream-man-pages/man2/glGetMap.xml | 227 + upstream-man-pages/man2/glGetMaterial.xml | 258 + upstream-man-pages/man2/glGetMinmax.xml | 280 + .../man2/glGetMinmaxParameter.xml | 147 + upstream-man-pages/man2/glGetPixelMap.xml | 237 + upstream-man-pages/man2/glGetPointerv.xml | 127 + .../man2/glGetPolygonStipple.xml | 122 + upstream-man-pages/man2/glGetProgram.xml | 241 + .../man2/glGetProgramInfoLog.xml | 135 + upstream-man-pages/man2/glGetQueryObject.xml | 148 + upstream-man-pages/man2/glGetQueryiv.xml | 124 + .../man2/glGetSeparableFilter.xml | 295 + upstream-man-pages/man2/glGetShader.xml | 172 + .../man2/glGetShaderInfoLog.xml | 132 + upstream-man-pages/man2/glGetShaderSource.xml | 121 + upstream-man-pages/man2/glGetString.xml | 169 + upstream-man-pages/man2/glGetTexEnv.xml | 364 ++ upstream-man-pages/man2/glGetTexGen.xml | 170 + upstream-man-pages/man2/glGetTexImage.xml | 326 ++ .../man2/glGetTexLevelParameter.xml | 372 ++ upstream-man-pages/man2/glGetTexParameter.xml | 320 ++ upstream-man-pages/man2/glGetUniform.xml | 145 + .../man2/glGetUniformLocation.xml | 133 + upstream-man-pages/man2/glGetVertexAttrib.xml | 234 + .../man2/glGetVertexAttribPointerv.xml | 94 + upstream-man-pages/man2/glHint.xml | 254 + upstream-man-pages/man2/glHistogram.xml | 205 + upstream-man-pages/man2/glIndex.xml | 164 + upstream-man-pages/man2/glIndexMask.xml | 95 + upstream-man-pages/man2/glIndexPointer.xml | 190 + upstream-man-pages/man2/glInitNames.xml | 70 + .../man2/glInterleavedArrays.xml | 162 + upstream-man-pages/man2/glIsBuffer.xml | 78 + upstream-man-pages/man2/glIsEnabled.xml | 752 +++ upstream-man-pages/man2/glIsList.xml | 74 + upstream-man-pages/man2/glIsProgram.xml | 113 + upstream-man-pages/man2/glIsQuery.xml | 78 + upstream-man-pages/man2/glIsShader.xml | 92 + upstream-man-pages/man2/glIsTexture.xml | 85 + upstream-man-pages/man2/glLight.xml | 444 ++ upstream-man-pages/man2/glLightModel.xml | 278 + upstream-man-pages/man2/glLineStipple.xml | 165 + upstream-man-pages/man2/glLineWidth.xml | 159 + upstream-man-pages/man2/glLinkProgram.xml | 223 + upstream-man-pages/man2/glListBase.xml | 74 + upstream-man-pages/man2/glLoadIdentity.xml | 150 + upstream-man-pages/man2/glLoadMatrix.xml | 437 ++ upstream-man-pages/man2/glLoadName.xml | 87 + .../man2/glLoadTransposeMatrix.xml | 456 ++ upstream-man-pages/man2/glLogicOp.xml | 275 + upstream-man-pages/man2/glMap1.xml | 620 +++ upstream-man-pages/man2/glMap2.xml | 970 ++++ upstream-man-pages/man2/glMapBuffer.xml | 185 + upstream-man-pages/man2/glMapGrid.xml | 353 ++ upstream-man-pages/man2/glMaterial.xml | 353 ++ upstream-man-pages/man2/glMatrixMode.xml | 125 + upstream-man-pages/man2/glMinmax.xml | 171 + upstream-man-pages/man2/glMultMatrix.xml | 838 +++ .../man2/glMultTransposeMatrix.xml | 849 +++ upstream-man-pages/man2/glMultiDrawArrays.xml | 163 + .../man2/glMultiDrawElements.xml | 164 + upstream-man-pages/man2/glMultiTexCoord.xml | 456 ++ upstream-man-pages/man2/glNewList.xml | 225 + upstream-man-pages/man2/glNormal.xml | 199 + upstream-man-pages/man2/glNormalPointer.xml | 188 + upstream-man-pages/man2/glOrtho.xml | 367 ++ upstream-man-pages/man2/glPassThrough.xml | 95 + upstream-man-pages/man2/glPixelMap.xml | 585 ++ upstream-man-pages/man2/glPixelStore.xml | 1490 +++++ upstream-man-pages/man2/glPixelTransfer.xml | 1276 +++++ upstream-man-pages/man2/glPixelZoom.xml | 175 + upstream-man-pages/man2/glPointParameter.xml | 233 + upstream-man-pages/man2/glPointSize.xml | 403 ++ upstream-man-pages/man2/glPolygonMode.xml | 167 + upstream-man-pages/man2/glPolygonOffset.xml | 139 + upstream-man-pages/man2/glPolygonStipple.xml | 194 + .../man2/glPrioritizeTextures.xml | 142 + upstream-man-pages/man2/glPushAttrib.xml | 1268 +++++ .../man2/glPushClientAttrib.xml | 152 + upstream-man-pages/man2/glPushMatrix.xml | 144 + upstream-man-pages/man2/glPushName.xml | 113 + upstream-man-pages/man2/glRasterPos.xml | 426 ++ upstream-man-pages/man2/glReadBuffer.xml | 120 + upstream-man-pages/man2/glReadPixels.xml | 859 +++ upstream-man-pages/man2/glRect.xml | 200 + upstream-man-pages/man2/glRenderMode.xml | 184 + upstream-man-pages/man2/glResetHistogram.xml | 74 + upstream-man-pages/man2/glResetMinmax.xml | 77 + upstream-man-pages/man2/glRotate.xml | 418 ++ upstream-man-pages/man2/glSampleCoverage.xml | 131 + upstream-man-pages/man2/glScale.xml | 192 + upstream-man-pages/man2/glScissor.xml | 114 + upstream-man-pages/man2/glSecondaryColor.xml | 255 + .../man2/glSecondaryColorPointer.xml | 208 + upstream-man-pages/man2/glSelectBuffer.xml | 176 + .../man2/glSeparableFilter2D.xml | 476 ++ upstream-man-pages/man2/glShadeModel.xml | 232 + upstream-man-pages/man2/glShaderSource.xml | 127 + upstream-man-pages/man2/glStencilFunc.xml | 299 + .../man2/glStencilFuncSeparate.xml | 312 ++ upstream-man-pages/man2/glStencilMask.xml | 107 + .../man2/glStencilMaskSeparate.xml | 120 + upstream-man-pages/man2/glStencilOp.xml | 280 + .../man2/glStencilOpSeparate.xml | 292 + upstream-man-pages/man2/glTexCoord.xml | 368 ++ upstream-man-pages/man2/glTexCoordPointer.xml | 213 + upstream-man-pages/man2/glTexEnv.xml | 2614 +++++++++ upstream-man-pages/man2/glTexGen.xml | 786 +++ upstream-man-pages/man2/glTexImage1D.xml | 934 ++++ upstream-man-pages/man2/glTexImage2D.xml | 1007 ++++ upstream-man-pages/man2/glTexImage3D.xml | 941 ++++ upstream-man-pages/man2/glTexParameter.xml | 1264 +++++ upstream-man-pages/man2/glTexSubImage1D.xml | 367 ++ upstream-man-pages/man2/glTexSubImage2D.xml | 442 ++ upstream-man-pages/man2/glTexSubImage3D.xml | 497 ++ upstream-man-pages/man2/glTranslate.xml | 189 + upstream-man-pages/man2/glUniform.xml | 498 ++ upstream-man-pages/man2/glUseProgram.xml | 258 + upstream-man-pages/man2/glValidateProgram.xml | 142 + upstream-man-pages/man2/glVertex.xml | 291 + upstream-man-pages/man2/glVertexAttrib.xml | 422 ++ .../man2/glVertexAttribPointer.xml | 241 + upstream-man-pages/man2/glVertexPointer.xml | 202 + upstream-man-pages/man2/glViewport.xml | 193 + upstream-man-pages/man2/glWindowPos.xml | 376 ++ upstream-man-pages/man2/glXChooseFBConfig.xml | 684 +++ upstream-man-pages/man2/glXChooseVisual.xml | 367 ++ upstream-man-pages/man2/glXCopyContext.xml | 153 + upstream-man-pages/man2/glXCreateContext.xml | 174 + .../man2/glXCreateGLXPixmap.xml | 126 + .../man2/glXCreateNewContext.xml | 175 + upstream-man-pages/man2/glXCreatePbuffer.xml | 173 + upstream-man-pages/man2/glXCreatePixmap.xml | 130 + upstream-man-pages/man2/glXCreateWindow.xml | 133 + upstream-man-pages/man2/glXDestroyContext.xml | 80 + .../man2/glXDestroyGLXPixmap.xml | 79 + upstream-man-pages/man2/glXDestroyPbuffer.xml | 85 + upstream-man-pages/man2/glXDestroyPixmap.xml | 86 + upstream-man-pages/man2/glXDestroyWindow.xml | 85 + upstream-man-pages/man2/glXFreeContextEXT.xml | 86 + .../man2/glXGetClientString.xml | 107 + upstream-man-pages/man2/glXGetConfig.xml | 319 ++ .../man2/glXGetContextIDEXT.xml | 77 + .../man2/glXGetCurrentContext.xml | 58 + .../man2/glXGetCurrentDisplay.xml | 58 + .../man2/glXGetCurrentDrawable.xml | 55 + .../man2/glXGetCurrentReadDrawable.xml | 60 + .../man2/glXGetFBConfigAttrib.xml | 506 ++ upstream-man-pages/man2/glXGetFBConfigs.xml | 90 + upstream-man-pages/man2/glXGetProcAddress.xml | 65 + .../man2/glXGetSelectedEvent.xml | 92 + .../man2/glXGetVisualFromFBConfig.xml | 92 + .../man2/glXImportContextEXT.xml | 106 + upstream-man-pages/man2/glXIntro.xml | 336 ++ upstream-man-pages/man2/glXIsDirect.xml | 78 + .../man2/glXMakeContextCurrent.xml | 200 + upstream-man-pages/man2/glXMakeCurrent.xml | 167 + upstream-man-pages/man2/glXQueryContext.xml | 139 + .../man2/glXQueryContextInfoEXT.xml | 143 + upstream-man-pages/man2/glXQueryDrawable.xml | 171 + upstream-man-pages/man2/glXQueryExtension.xml | 87 + .../man2/glXQueryExtensionsString.xml | 84 + .../man2/glXQueryServerString.xml | 100 + upstream-man-pages/man2/glXQueryVersion.xml | 93 + upstream-man-pages/man2/glXSelectEvent.xml | 329 ++ upstream-man-pages/man2/glXSwapBuffers.xml | 110 + upstream-man-pages/man2/glXUseXFont.xml | 192 + upstream-man-pages/man2/glXWaitGL.xml | 69 + upstream-man-pages/man2/glXWaitX.xml | 69 + upstream-man-pages/man2/gluBeginCurve.xml | 100 + upstream-man-pages/man2/gluBeginPolygon.xml | 113 + upstream-man-pages/man2/gluBeginSurface.xml | 105 + upstream-man-pages/man2/gluBeginTrim.xml | 145 + .../man2/gluBuild1DMipmapLevels.xml | 409 ++ upstream-man-pages/man2/gluBuild1DMipmaps.xml | 393 ++ .../man2/gluBuild2DMipmapLevels.xml | 437 ++ upstream-man-pages/man2/gluBuild2DMipmaps.xml | 429 ++ .../man2/gluBuild3DMipmapLevels.xml | 439 ++ upstream-man-pages/man2/gluBuild3DMipmaps.xml | 433 ++ upstream-man-pages/man2/gluCheckExtension.xml | 93 + upstream-man-pages/man2/gluCylinder.xml | 136 + .../man2/gluDeleteNurbsRenderer.xml | 61 + upstream-man-pages/man2/gluDeleteQuadric.xml | 60 + upstream-man-pages/man2/gluDeleteTess.xml | 61 + upstream-man-pages/man2/gluDisk.xml | 130 + upstream-man-pages/man2/gluErrorString.xml | 78 + .../man2/gluGetNurbsProperty.xml | 91 + upstream-man-pages/man2/gluGetString.xml | 107 + .../man2/gluGetTessProperty.xml | 85 + .../man2/gluLoadSamplingMatrices.xml | 102 + upstream-man-pages/man2/gluLookAt.xml | 369 ++ .../man2/gluNewNurbsRenderer.xml | 54 + upstream-man-pages/man2/gluNewQuadric.xml | 57 + upstream-man-pages/man2/gluNewTess.xml | 50 + upstream-man-pages/man2/gluNextContour.xml | 167 + upstream-man-pages/man2/gluNurbsCallback.xml | 338 ++ .../man2/gluNurbsCallbackData.xml | 75 + .../man2/gluNurbsCallbackDataEXT.xml | 69 + upstream-man-pages/man2/gluNurbsCurve.xml | 163 + upstream-man-pages/man2/gluNurbsProperty.xml | 300 + upstream-man-pages/man2/gluNurbsSurface.xml | 207 + upstream-man-pages/man2/gluOrtho2D.xml | 90 + upstream-man-pages/man2/gluPartialDisk.xml | 166 + upstream-man-pages/man2/gluPerspective.xml | 281 + upstream-man-pages/man2/gluPickMatrix.xml | 132 + upstream-man-pages/man2/gluProject.xml | 294 + upstream-man-pages/man2/gluPwlCurve.xml | 121 + .../man2/gluQuadricCallback.xml | 96 + .../man2/gluQuadricDrawStyle.xml | 112 + upstream-man-pages/man2/gluQuadricNormals.xml | 101 + .../man2/gluQuadricOrientation.xml | 95 + upstream-man-pages/man2/gluQuadricTexture.xml | 78 + upstream-man-pages/man2/gluScaleImage.xml | 247 + upstream-man-pages/man2/gluSphere.xml | 133 + .../man2/gluTessBeginContour.xml | 77 + .../man2/gluTessBeginPolygon.xml | 111 + upstream-man-pages/man2/gluTessCallback.xml | 379 ++ upstream-man-pages/man2/gluTessEndPolygon.xml | 105 + upstream-man-pages/man2/gluTessNormal.xml | 107 + upstream-man-pages/man2/gluTessProperty.xml | 156 + upstream-man-pages/man2/gluTessVertex.xml | 143 + upstream-man-pages/man2/gluUnProject.xml | 253 + upstream-man-pages/man2/gluUnProject4.xml | 322 ++ upstream-man-pages/man2/index.php | 9 + upstream-man-pages/man2/pdf/DejaVuSans.ttf | Bin 0 -> 581372 bytes upstream-man-pages/man2/pdf/Makefile | 414 ++ upstream-man-pages/man2/pdf/footer | 2 + upstream-man-pages/man2/pdf/header | 346 ++ upstream-man-pages/man2/pdf/ogl_prep_xml.xsl | 39 + upstream-man-pages/man2/pdf/opengl-pdf.xsl | 349 ++ upstream-man-pages/man2/top.php | 10 + .../man2/usr/include/make/commondefs | 407 ++ .../man2/usr/include/make/commonrules | 96 + .../man2/usr/include/make/commonrules.win32 | 109 + .../man2/usr/include/make/linuxdefs | 31 + upstream-man-pages/man2/xhtml/Makefile | 388 ++ upstream-man-pages/man2/xhtml/ctop.xsl | 1319 +++++ upstream-man-pages/man2/xhtml/glAccum.xml | 198 + .../man2/xhtml/glActiveTexture.xml | 39 + upstream-man-pages/man2/xhtml/glAlphaFunc.xml | 96 + .../man2/xhtml/glAreTexturesResident.xml | 72 + .../man2/xhtml/glArrayElement.xml | 59 + .../man2/xhtml/glAttachShader.xml | 47 + upstream-man-pages/man2/xhtml/glBegin.xml | 495 ++ .../man2/xhtml/glBeginQuery.xml | 68 + .../man2/xhtml/glBindAttribLocation.xml | 106 + .../man2/xhtml/glBindBuffer.xml | 132 + .../man2/xhtml/glBindTexture.xml | 97 + upstream-man-pages/man2/xhtml/glBitmap.xml | 178 + .../man2/xhtml/glBlendColor.xml | 38 + .../man2/xhtml/glBlendEquation.xml | 664 +++ .../man2/xhtml/glBlendEquationSeparate.xml | 670 +++ upstream-man-pages/man2/xhtml/glBlendFunc.xml | 1095 ++++ .../man2/xhtml/glBlendFuncSeparate.xml | 1125 ++++ .../man2/xhtml/glBufferData.xml | 96 + .../man2/xhtml/glBufferSubData.xml | 70 + upstream-man-pages/man2/xhtml/glCallList.xml | 48 + upstream-man-pages/man2/xhtml/glCallLists.xml | 148 + upstream-man-pages/man2/xhtml/glClear.xml | 80 + .../man2/xhtml/glClearAccum.xml | 34 + .../man2/xhtml/glClearColor.xml | 33 + .../man2/xhtml/glClearDepth.xml | 29 + .../man2/xhtml/glClearIndex.xml | 42 + .../man2/xhtml/glClearStencil.xml | 43 + .../man2/xhtml/glClientActiveTexture.xml | 38 + upstream-man-pages/man2/xhtml/glClipPlane.xml | 69 + upstream-man-pages/man2/xhtml/glColor.xml | 82 + upstream-man-pages/man2/xhtml/glColor4.xml | 4 + upstream-man-pages/man2/xhtml/glColorMask.xml | 42 + .../man2/xhtml/glColorMaterial.xml | 77 + .../man2/xhtml/glColorPointer.xml | 119 + .../man2/xhtml/glColorSubTable.xml | 130 + .../man2/xhtml/glColorTable.xml | 466 ++ .../man2/xhtml/glColorTableParameter.xml | 57 + .../man2/xhtml/glCompileShader.xml | 37 + .../man2/xhtml/glCompressedTexImage1D.xml | 129 + .../man2/xhtml/glCompressedTexImage2D.xml | 178 + .../man2/xhtml/glCompressedTexImage3D.xml | 187 + .../man2/xhtml/glCompressedTexSubImage1D.xml | 135 + .../man2/xhtml/glCompressedTexSubImage2D.xml | 168 + .../man2/xhtml/glCompressedTexSubImage3D.xml | 163 + .../man2/xhtml/glConvolutionFilter1D.xml | 276 + .../man2/xhtml/glConvolutionFilter2D.xml | 288 + .../man2/xhtml/glConvolutionParameter.xml | 166 + .../man2/xhtml/glCopyColorSubTable.xml | 74 + .../man2/xhtml/glCopyColorTable.xml | 215 + .../man2/xhtml/glCopyConvolutionFilter1D.xml | 206 + .../man2/xhtml/glCopyConvolutionFilter2D.xml | 216 + .../man2/xhtml/glCopyPixels.xml | 495 ++ .../man2/xhtml/glCopyTexImage1D.xml | 258 + .../man2/xhtml/glCopyTexImage2D.xml | 314 ++ .../man2/xhtml/glCopyTexSubImage1D.xml | 171 + .../man2/xhtml/glCopyTexSubImage2D.xml | 257 + .../man2/xhtml/glCopyTexSubImage3D.xml | 266 + .../man2/xhtml/glCreateProgram.xml | 65 + .../man2/xhtml/glCreateShader.xml | 49 + upstream-man-pages/man2/xhtml/glCullFace.xml | 44 + .../man2/xhtml/glDeleteBuffers.xml | 35 + .../man2/xhtml/glDeleteLists.xml | 53 + .../man2/xhtml/glDeleteProgram.xml | 40 + .../man2/xhtml/glDeleteQueries.xml | 36 + .../man2/xhtml/glDeleteShader.xml | 36 + .../man2/xhtml/glDeleteTextures.xml | 43 + upstream-man-pages/man2/xhtml/glDepthFunc.xml | 67 + upstream-man-pages/man2/xhtml/glDepthMask.xml | 32 + .../man2/xhtml/glDepthRange.xml | 67 + .../man2/xhtml/glDetachShader.xml | 33 + upstream-man-pages/man2/xhtml/glDisable.xml | 4 + .../man2/xhtml/glDisableClientState.xml | 4 + .../man2/xhtml/glDisableVertexAttribArray.xml | 4 + .../man2/xhtml/glDrawArrays.xml | 80 + .../man2/xhtml/glDrawBuffer.xml | 113 + .../man2/xhtml/glDrawBuffers.xml | 82 + .../man2/xhtml/glDrawElements.xml | 85 + .../man2/xhtml/glDrawPixels.xml | 946 ++++ .../man2/xhtml/glDrawRangeElements.xml | 140 + upstream-man-pages/man2/xhtml/glEdgeFlag.xml | 43 + .../man2/xhtml/glEdgeFlagPointer.xml | 94 + upstream-man-pages/man2/xhtml/glEnable.xml | 561 ++ .../man2/xhtml/glEnableClientState.xml | 102 + .../man2/xhtml/glEnableVertexAttribArray.xml | 51 + upstream-man-pages/man2/xhtml/glEnd.xml | 4 + upstream-man-pages/man2/xhtml/glEndList.xml | 4 + upstream-man-pages/man2/xhtml/glEndQuery.xml | 4 + upstream-man-pages/man2/xhtml/glEvalCoord.xml | 227 + .../man2/xhtml/glEvalCoord1.xml | 4 + .../man2/xhtml/glEvalCoord2.xml | 4 + upstream-man-pages/man2/xhtml/glEvalMesh.xml | 513 ++ upstream-man-pages/man2/xhtml/glEvalMesh1.xml | 4 + upstream-man-pages/man2/xhtml/glEvalMesh2.xml | 4 + upstream-man-pages/man2/xhtml/glEvalPoint.xml | 313 ++ .../man2/xhtml/glEvalPoint1.xml | 4 + .../man2/xhtml/glEvalPoint2.xml | 4 + .../man2/xhtml/glFeedbackBuffer.xml | 280 + upstream-man-pages/man2/xhtml/glFinish.xml | 22 + upstream-man-pages/man2/xhtml/glFlush.xml | 35 + upstream-man-pages/man2/xhtml/glFog.xml | 331 ++ upstream-man-pages/man2/xhtml/glFogCoord.xml | 29 + .../man2/xhtml/glFogCoordPointer.xml | 106 + upstream-man-pages/man2/xhtml/glFrontFace.xml | 49 + upstream-man-pages/man2/xhtml/glFrustum.xml | 331 ++ .../man2/xhtml/glGenBuffers.xml | 38 + upstream-man-pages/man2/xhtml/glGenLists.xml | 58 + .../man2/xhtml/glGenQueries.xml | 39 + .../man2/xhtml/glGenTextures.xml | 46 + upstream-man-pages/man2/xhtml/glGet.xml | 2385 ++++++++ .../man2/xhtml/glGetActiveAttrib.xml | 117 + .../man2/xhtml/glGetActiveUniform.xml | 157 + .../man2/xhtml/glGetAttachedShaders.xml | 44 + .../man2/xhtml/glGetAttribLocation.xml | 51 + .../man2/xhtml/glGetBufferParameteriv.xml | 59 + .../man2/xhtml/glGetBufferPointerv.xml | 45 + .../man2/xhtml/glGetBufferSubData.xml | 59 + .../man2/xhtml/glGetClipPlane.xml | 37 + .../man2/xhtml/glGetColorTable.xml | 150 + .../man2/xhtml/glGetColorTableParameter.xml | 125 + .../man2/xhtml/glGetCompressedTexImage.xml | 99 + .../man2/xhtml/glGetConvolutionFilter.xml | 153 + .../man2/xhtml/glGetConvolutionParameter.xml | 89 + .../man2/xhtml/glGetDoublev.xml | 4 + upstream-man-pages/man2/xhtml/glGetError.xml | 83 + upstream-man-pages/man2/xhtml/glGetFloatv.xml | 4 + .../man2/xhtml/glGetHistogram.xml | 145 + .../man2/xhtml/glGetHistogramParameter.xml | 86 + .../man2/xhtml/glGetIntegerv.xml | 4 + upstream-man-pages/man2/xhtml/glGetLight.xml | 199 + upstream-man-pages/man2/xhtml/glGetMap.xml | 124 + .../man2/xhtml/glGetMaterial.xml | 147 + upstream-man-pages/man2/xhtml/glGetMinmax.xml | 153 + .../man2/xhtml/glGetMinmaxParameter.xml | 50 + .../man2/xhtml/glGetPixelMap.xml | 144 + .../man2/xhtml/glGetPointerv.xml | 65 + .../man2/xhtml/glGetPolygonStipple.xml | 66 + .../man2/xhtml/glGetProgram.xml | 91 + .../man2/xhtml/glGetProgramInfoLog.xml | 54 + .../man2/xhtml/glGetQueryObject.xml | 56 + .../man2/xhtml/glGetQueryiv.xml | 44 + .../man2/xhtml/glGetSeparableFilter.xml | 156 + upstream-man-pages/man2/xhtml/glGetShader.xml | 62 + .../man2/xhtml/glGetShaderInfoLog.xml | 51 + .../man2/xhtml/glGetShaderSource.xml | 44 + upstream-man-pages/man2/xhtml/glGetString.xml | 77 + upstream-man-pages/man2/xhtml/glGetTexEnv.xml | 163 + upstream-man-pages/man2/xhtml/glGetTexGen.xml | 67 + .../man2/xhtml/glGetTexImage.xml | 226 + .../man2/xhtml/glGetTexLevelParameter.xml | 192 + .../man2/xhtml/glGetTexParameter.xml | 146 + .../man2/xhtml/glGetUniform.xml | 60 + .../man2/xhtml/glGetUniformLocation.xml | 65 + .../man2/xhtml/glGetVertexAttrib.xml | 88 + .../man2/xhtml/glGetVertexAttribPointerv.xml | 26 + upstream-man-pages/man2/xhtml/glHint.xml | 115 + upstream-man-pages/man2/xhtml/glHistogram.xml | 123 + upstream-man-pages/man2/xhtml/glIndex.xml | 44 + upstream-man-pages/man2/xhtml/glIndexMask.xml | 44 + .../man2/xhtml/glIndexPointer.xml | 109 + upstream-man-pages/man2/xhtml/glInitNames.xml | 29 + .../man2/xhtml/glInterleavedArrays.xml | 95 + upstream-man-pages/man2/xhtml/glIsBuffer.xml | 28 + upstream-man-pages/man2/xhtml/glIsEnabled.xml | 386 ++ upstream-man-pages/man2/xhtml/glIsList.xml | 27 + upstream-man-pages/man2/xhtml/glIsProgram.xml | 47 + upstream-man-pages/man2/xhtml/glIsQuery.xml | 28 + upstream-man-pages/man2/xhtml/glIsShader.xml | 36 + upstream-man-pages/man2/xhtml/glIsTexture.xml | 35 + upstream-man-pages/man2/xhtml/glLight.xml | 261 + .../man2/xhtml/glLightModel.xml | 140 + .../man2/xhtml/glLineStipple.xml | 101 + upstream-man-pages/man2/xhtml/glLineWidth.xml | 96 + .../man2/xhtml/glLinkProgram.xml | 117 + upstream-man-pages/man2/xhtml/glListBase.xml | 25 + .../man2/xhtml/glLoadIdentity.xml | 103 + .../man2/xhtml/glLoadMatrix.xml | 370 ++ upstream-man-pages/man2/xhtml/glLoadName.xml | 34 + .../man2/xhtml/glLoadTransposeMatrix.xml | 387 ++ upstream-man-pages/man2/xhtml/glLogicOp.xml | 140 + upstream-man-pages/man2/xhtml/glMap1.xhtml | 444 ++ upstream-man-pages/man2/xhtml/glMap1.xml | 444 ++ upstream-man-pages/man2/xhtml/glMap2.xml | 763 +++ upstream-man-pages/man2/xhtml/glMapBuffer.xml | 94 + upstream-man-pages/man2/xhtml/glMapGrid.xml | 240 + upstream-man-pages/man2/xhtml/glMapGrid1.xml | 4 + upstream-man-pages/man2/xhtml/glMapGrid2.xml | 4 + upstream-man-pages/man2/xhtml/glMaterial.xml | 191 + .../man2/xhtml/glMatrixMode.xml | 48 + upstream-man-pages/man2/xhtml/glMinmax.xml | 101 + .../man2/xhtml/glMultMatrix.xml | 764 +++ .../man2/xhtml/glMultTransposeMatrix.xml | 773 +++ .../man2/xhtml/glMultiDrawArrays.xml | 85 + .../man2/xhtml/glMultiDrawElements.xml | 80 + .../man2/xhtml/glMultiTexCoord.xml | 132 + upstream-man-pages/man2/xhtml/glNewList.xml | 131 + upstream-man-pages/man2/xhtml/glNormal.xml | 66 + .../man2/xhtml/glNormalPointer.xml | 108 + upstream-man-pages/man2/xhtml/glOrtho.xml | 289 + .../man2/xhtml/glPassThrough.xml | 41 + upstream-man-pages/man2/xhtml/glPixelMap.xml | 327 ++ .../man2/xhtml/glPixelStore.xml | 1192 ++++ .../man2/xhtml/glPixelTransfer.xml | 943 ++++ upstream-man-pages/man2/xhtml/glPixelZoom.xml | 118 + .../man2/xhtml/glPointParameter.xml | 87 + upstream-man-pages/man2/xhtml/glPointSize.xml | 324 ++ .../man2/xhtml/glPolygonMode.xml | 83 + .../man2/xhtml/glPolygonOffset.xml | 75 + .../man2/xhtml/glPolygonStipple.xml | 137 + upstream-man-pages/man2/xhtml/glPopAttrib.xml | 4 + .../man2/xhtml/glPopClientAttrib.xml | 4 + upstream-man-pages/man2/xhtml/glPopMatrix.xml | 4 + upstream-man-pages/man2/xhtml/glPopName.xml | 4 + .../man2/xhtml/glPrioritizeTextures.xml | 71 + .../man2/xhtml/glPushAttrib.xml | 570 ++ .../man2/xhtml/glPushClientAttrib.xml | 81 + .../man2/xhtml/glPushMatrix.xml | 80 + upstream-man-pages/man2/xhtml/glPushName.xml | 50 + upstream-man-pages/man2/xhtml/glRasterPos.xml | 181 + .../man2/xhtml/glReadBuffer.xml | 67 + .../man2/xhtml/glReadPixels.xml | 622 +++ upstream-man-pages/man2/xhtml/glRect.xml | 69 + .../man2/xhtml/glRenderMode.xml | 87 + .../man2/xhtml/glResetHistogram.xml | 24 + .../man2/xhtml/glResetMinmax.xml | 27 + upstream-man-pages/man2/xhtml/glRotate.xml | 335 ++ .../man2/xhtml/glSampleCoverage.xml | 63 + upstream-man-pages/man2/xhtml/glScale.xml | 119 + upstream-man-pages/man2/xhtml/glScissor.xml | 50 + .../man2/xhtml/glSecondaryColor.xml | 77 + .../man2/xhtml/glSecondaryColorPointer.xml | 118 + .../man2/xhtml/glSelectBuffer.xml | 106 + .../man2/xhtml/glSeparableFilter2D.xml | 288 + .../man2/xhtml/glShadeModel.xml | 140 + .../man2/xhtml/glShaderSource.xml | 48 + .../man2/xhtml/glStencilFunc.xml | 174 + .../man2/xhtml/glStencilFuncSeparate.xml | 180 + .../man2/xhtml/glStencilMask.xml | 53 + .../man2/xhtml/glStencilMaskSeparate.xml | 59 + upstream-man-pages/man2/xhtml/glStencilOp.xml | 154 + .../man2/xhtml/glStencilOpSeparate.xml | 159 + upstream-man-pages/man2/xhtml/glTexCoord.xml | 91 + upstream-man-pages/man2/xhtml/glTexCoord1.xml | 4 + upstream-man-pages/man2/xhtml/glTexCoord2.xml | 4 + upstream-man-pages/man2/xhtml/glTexCoord3.xml | 4 + upstream-man-pages/man2/xhtml/glTexCoord4.xml | 4 + .../man2/xhtml/glTexCoordPointer.xml | 123 + upstream-man-pages/man2/xhtml/glTexEnv.xml | 2027 +++++++ upstream-man-pages/man2/xhtml/glTexGen.xml | 636 +++ .../man2/xhtml/glTexImage1D.xml | 663 +++ .../man2/xhtml/glTexImage2D.xml | 726 +++ .../man2/xhtml/glTexImage3D.xml | 679 +++ .../man2/xhtml/glTexParameter.xml | 914 +++ .../man2/xhtml/glTexSubImage1D.xml | 248 + .../man2/xhtml/glTexSubImage2D.xml | 309 ++ .../man2/xhtml/glTexSubImage3D.xml | 350 ++ upstream-man-pages/man2/xhtml/glTranslate.xml | 119 + upstream-man-pages/man2/xhtml/glUniform.xml | 164 + .../man2/xhtml/glUnmapBuffer.xml | 4 + .../man2/xhtml/glUseProgram.xml | 118 + .../man2/xhtml/glValidateProgram.xml | 68 + upstream-man-pages/man2/xhtml/glVertex.xml | 67 + upstream-man-pages/man2/xhtml/glVertex2.xml | 4 + upstream-man-pages/man2/xhtml/glVertex3.xml | 4 + upstream-man-pages/man2/xhtml/glVertex4.xml | 4 + .../man2/xhtml/glVertexAttrib.xml | 125 + .../man2/xhtml/glVertexAttribPointer.xml | 124 + .../man2/xhtml/glVertexPointer.xml | 113 + upstream-man-pages/man2/xhtml/glViewport.xml | 127 + upstream-man-pages/man2/xhtml/glWindowPos.xml | 189 + .../man2/xhtml/glXChooseFBConfig.xml | 368 ++ .../man2/xhtml/glXChooseVisual.xml | 182 + .../man2/xhtml/glXCopyContext.xml | 74 + .../man2/xhtml/glXCreateContext.xml | 93 + .../man2/xhtml/glXCreateGLXPixmap.xml | 57 + .../man2/xhtml/glXCreateNewContext.xml | 88 + .../man2/xhtml/glXCreatePbuffer.xml | 77 + .../man2/xhtml/glXCreatePixmap.xml | 53 + .../man2/xhtml/glXCreateWindow.xml | 55 + .../man2/xhtml/glXDestroyContext.xml | 26 + .../man2/xhtml/glXDestroyGLXPixmap.xml | 25 + .../man2/xhtml/glXDestroyPbuffer.xml | 27 + .../man2/xhtml/glXDestroyPixmap.xml | 28 + .../man2/xhtml/glXDestroyWindow.xml | 27 + .../man2/xhtml/glXFreeContextEXT.xml | 31 + .../man2/xhtml/glXGetClientString.xml | 47 + .../man2/xhtml/glXGetConfig.xml | 135 + .../man2/xhtml/glXGetContextIDEXT.xml | 28 + .../man2/xhtml/glXGetCurrentContext.xml | 23 + .../man2/xhtml/glXGetCurrentDisplay.xml | 21 + .../man2/xhtml/glXGetCurrentDrawable.xml | 22 + .../man2/xhtml/glXGetCurrentReadDrawable.xml | 24 + .../man2/xhtml/glXGetFBConfigAttrib.xml | 213 + .../man2/xhtml/glXGetFBConfigs.xml | 28 + .../man2/xhtml/glXGetProcAddress.xml | 20 + .../man2/xhtml/glXGetSelectedEvent.xml | 28 + .../man2/xhtml/glXGetVisualFromFBConfig.xml | 34 + .../man2/xhtml/glXImportContextEXT.xml | 48 + upstream-man-pages/man2/xhtml/glXIntro.xml | 276 + upstream-man-pages/man2/xhtml/glXIsDirect.xml | 24 + .../man2/xhtml/glXMakeContextCurrent.xml | 106 + .../man2/xhtml/glXMakeCurrent.xml | 91 + .../man2/xhtml/glXQueryContext.xml | 45 + .../man2/xhtml/glXQueryContextInfoEXT.xml | 50 + .../man2/xhtml/glXQueryDrawable.xml | 69 + .../man2/xhtml/glXQueryExtension.xml | 28 + .../man2/xhtml/glXQueryExtensionsString.xml | 29 + .../man2/xhtml/glXQueryServerString.xml | 37 + .../man2/xhtml/glXQueryVersion.xml | 30 + .../man2/xhtml/glXSelectEvent.xml | 159 + .../man2/xhtml/glXSwapBuffers.xml | 49 + upstream-man-pages/man2/xhtml/glXUseXFont.xml | 120 + upstream-man-pages/man2/xhtml/glXWaitGL.xml | 28 + upstream-man-pages/man2/xhtml/glXWaitX.xml | 28 + .../man2/xhtml/gluBeginCurve.xml | 44 + .../man2/xhtml/gluBeginPolygon.xml | 54 + .../man2/xhtml/gluBeginSurface.xml | 48 + .../man2/xhtml/gluBeginTrim.xml | 84 + .../man2/xhtml/gluBuild1DMipmapLevels.xml | 289 + .../man2/xhtml/gluBuild1DMipmaps.xml | 294 + .../man2/xhtml/gluBuild2DMipmapLevels.xml | 315 ++ .../man2/xhtml/gluBuild2DMipmaps.xml | 328 ++ .../man2/xhtml/gluBuild3DMipmapLevels.xml | 315 ++ .../man2/xhtml/gluBuild3DMipmaps.xml | 329 ++ .../man2/xhtml/gluCheckExtension.xml | 36 + upstream-man-pages/man2/xhtml/gluCylinder.xml | 54 + .../man2/xhtml/gluDeleteNurbsRenderer.xml | 17 + .../man2/xhtml/gluDeleteQuadric.xml | 16 + .../man2/xhtml/gluDeleteTess.xml | 17 + upstream-man-pages/man2/xhtml/gluDisk.xml | 56 + upstream-man-pages/man2/xhtml/gluEndCurve.xml | 4 + .../man2/xhtml/gluEndPolygon.xml | 4 + .../man2/xhtml/gluEndSurface.xml | 4 + upstream-man-pages/man2/xhtml/gluEndTrim.xml | 4 + .../man2/xhtml/gluErrorString.xml | 30 + .../man2/xhtml/gluGetNurbsProperty.xml | 33 + .../man2/xhtml/gluGetString.xml | 49 + .../man2/xhtml/gluGetTessProperty.xml | 27 + .../man2/xhtml/gluLoadSamplingMatrices.xml | 36 + upstream-man-pages/man2/xhtml/gluLookAt.xml | 287 + .../man2/xhtml/gluNewNurbsRenderer.xml | 21 + .../man2/xhtml/gluNewQuadric.xml | 24 + upstream-man-pages/man2/xhtml/gluNewTess.xml | 17 + .../man2/xhtml/gluNextContour.xml | 77 + .../man2/xhtml/gluNurbsCallback.xml | 180 + .../man2/xhtml/gluNurbsCallbackData.xml | 21 + .../man2/xhtml/gluNurbsCallbackDataEXT.xml | 18 + .../man2/xhtml/gluNurbsCurve.xml | 69 + .../man2/xhtml/gluNurbsProperty.xml | 171 + .../man2/xhtml/gluNurbsSurface.xml | 87 + upstream-man-pages/man2/xhtml/gluOrtho2D.xml | 35 + .../man2/xhtml/gluPartialDisk.xml | 77 + .../man2/xhtml/gluPerspective.xml | 206 + .../man2/xhtml/gluPickMatrix.xml | 65 + upstream-man-pages/man2/xhtml/gluProject.xml | 208 + upstream-man-pages/man2/xhtml/gluPwlCurve.xml | 45 + .../man2/xhtml/gluQuadricCallback.xml | 29 + .../man2/xhtml/gluQuadricDrawStyle.xml | 35 + .../man2/xhtml/gluQuadricNormals.xml | 30 + .../man2/xhtml/gluQuadricOrientation.xml | 29 + .../man2/xhtml/gluQuadricTexture.xml | 26 + .../man2/xhtml/gluScaleImage.xml | 141 + upstream-man-pages/man2/xhtml/gluSphere.xml | 66 + .../man2/xhtml/gluTessBeginContour.xml | 25 + .../man2/xhtml/gluTessBeginPolygon.xml | 54 + .../man2/xhtml/gluTessCallback.xml | 237 + .../man2/xhtml/gluTessEndContour.xml | 4 + .../man2/xhtml/gluTessEndPolygon.xml | 57 + .../man2/xhtml/gluTessNormal.xml | 40 + .../man2/xhtml/gluTessProperty.xml | 73 + .../man2/xhtml/gluTessVertex.xml | 76 + .../man2/xhtml/gluUnProject.xml | 171 + .../man2/xhtml/gluUnProject4.xml | 217 + upstream-man-pages/man2/xhtml/index.html | 515 ++ upstream-man-pages/man2/xhtml/makeindex.pl | 335 ++ upstream-man-pages/man2/xhtml/mathml.xsl | 42 + upstream-man-pages/man2/xhtml/opengl-man.xsl | 49 + upstream-man-pages/man2/xhtml/pmathml.xsl | 615 +++ upstream-man-pages/man2/xhtml/pmathmlcss.xsl | 873 +++ upstream-man-pages/man2/xhtml/start.html | 102 + upstream-man-pages/man2/xhtml/test.xml | 444 ++ upstream-man-pages/man2/xhtml/xhtml-lat1.ent | 196 + .../man2/xhtml/xhtml-special.ent | 80 + .../man2/xhtml/xhtml-symbol.ent | 237 + .../man2/xhtml/xhtml1-transitional.dtd | 1201 ++++ upstream-man-pages/man3/Makefile | 49 + upstream-man-pages/man3/README.txt | 56 + upstream-man-pages/man3/bottom.php | 9 + .../man3/docs/Viewing_XHTML_and_MathML.html | 3 + .../docs/XML_Toolchain_and_Man_Pages.html | 3 + upstream-man-pages/man3/fo/Makefile | 395 ++ upstream-man-pages/man3/fo/glTexGen.fo | 648 +++ upstream-man-pages/man3/fo/glTexGen.pdf | Bin 0 -> 10067 bytes upstream-man-pages/man3/glActiveTexture.xml | 101 + upstream-man-pages/man3/glAttachShader.xml | 119 + .../man3/glBeginConditionalRender.xml | 123 + upstream-man-pages/man3/glBeginQuery.xml | 204 + .../man3/glBeginTransformFeedback.xml | 194 + .../man3/glBindAttribLocation.xml | 186 + upstream-man-pages/man3/glBindBuffer.xml | 222 + upstream-man-pages/man3/glBindBufferBase.xml | 108 + upstream-man-pages/man3/glBindBufferRange.xml | 131 + .../man3/glBindFragDataLocation.xml | 127 + .../man3/glBindFragDataLocationIndexed.xml | 155 + upstream-man-pages/man3/glBindFramebuffer.xml | 93 + .../man3/glBindRenderbuffer.xml | 82 + upstream-man-pages/man3/glBindSampler.xml | 103 + upstream-man-pages/man3/glBindTexture.xml | 175 + upstream-man-pages/man3/glBindVertexArray.xml | 72 + upstream-man-pages/man3/glBlendColor.xml | 82 + upstream-man-pages/man3/glBlendEquation.xml | 759 +++ .../man3/glBlendEquationSeparate.xml | 771 +++ upstream-man-pages/man3/glBlendFunc.xml | 1452 +++++ .../man3/glBlendFuncSeparate.xml | 1500 +++++ upstream-man-pages/man3/glBlitFramebuffer.xml | 177 + upstream-man-pages/man3/glBufferData.xml | 212 + upstream-man-pages/man3/glBufferSubData.xml | 143 + .../man3/glCheckFramebufferStatus.xml | 131 + upstream-man-pages/man3/glClampColor.xml | 79 + upstream-man-pages/man3/glClear.xml | 145 + upstream-man-pages/man3/glClearBuffer.xml | 170 + upstream-man-pages/man3/glClearColor.xml | 81 + upstream-man-pages/man3/glClearDepth.xml | 71 + upstream-man-pages/man3/glClearStencil.xml | 87 + upstream-man-pages/man3/glClientWaitSync.xml | 119 + upstream-man-pages/man3/glColorMask.xml | 106 + upstream-man-pages/man3/glCompileShader.xml | 84 + .../man3/glCompressedTexImage1D.xml | 216 + .../man3/glCompressedTexImage2D.xml | 241 + .../man3/glCompressedTexImage3D.xml | 239 + .../man3/glCompressedTexSubImage1D.xml | 216 + .../man3/glCompressedTexSubImage2D.xml | 251 + .../man3/glCompressedTexSubImage3D.xml | 265 + .../man3/glCopyBufferSubData.xml | 143 + upstream-man-pages/man3/glCopyTexImage1D.xml | 307 ++ upstream-man-pages/man3/glCopyTexImage2D.xml | 360 ++ .../man3/glCopyTexSubImage1D.xml | 249 + .../man3/glCopyTexSubImage2D.xml | 336 ++ .../man3/glCopyTexSubImage3D.xml | 361 ++ upstream-man-pages/man3/glCreateProgram.xml | 118 + upstream-man-pages/man3/glCreateShader.xml | 102 + upstream-man-pages/man3/glCullFace.xml | 94 + upstream-man-pages/man3/glDeleteBuffers.xml | 86 + .../man3/glDeleteFramebuffers.xml | 79 + upstream-man-pages/man3/glDeleteProgram.xml | 86 + upstream-man-pages/man3/glDeleteQueries.xml | 86 + .../man3/glDeleteRenderbuffers.xml | 87 + upstream-man-pages/man3/glDeleteSamplers.xml | 87 + upstream-man-pages/man3/glDeleteShader.xml | 82 + upstream-man-pages/man3/glDeleteSync.xml | 81 + upstream-man-pages/man3/glDeleteTextures.xml | 92 + .../man3/glDeleteVertexArrays.xml | 77 + upstream-man-pages/man3/glDepthFunc.xml | 170 + upstream-man-pages/man3/glDepthMask.xml | 84 + upstream-man-pages/man3/glDepthRange.xml | 121 + upstream-man-pages/man3/glDetachShader.xml | 92 + upstream-man-pages/man3/glDrawArrays.xml | 134 + .../man3/glDrawArraysInstanced.xml | 134 + upstream-man-pages/man3/glDrawBuffer.xml | 212 + upstream-man-pages/man3/glDrawBuffers.xml | 184 + upstream-man-pages/man3/glDrawElements.xml | 146 + .../man3/glDrawElementsBaseVertex.xml | 129 + .../man3/glDrawElementsInstanced.xml | 153 + .../glDrawElementsInstancedBaseVertex.xml | 137 + .../man3/glDrawRangeElements.xml | 222 + .../man3/glDrawRangeElementsBaseVertex.xml | 154 + upstream-man-pages/man3/glEnable.xml | 484 ++ .../man3/glEnableVertexAttribArray.xml | 94 + upstream-man-pages/man3/glFenceSync.xml | 106 + upstream-man-pages/man3/glFinish.xml | 54 + upstream-man-pages/man3/glFlush.xml | 68 + .../man3/glFlushMappedBufferRange.xml | 98 + .../man3/glFramebufferRenderbuffer.xml | 127 + .../man3/glFramebufferTexture.xml | 207 + .../man3/glFramebufferTextureLayer.xml | 133 + upstream-man-pages/man3/glFrontFace.xml | 95 + upstream-man-pages/man3/glGenBuffers.xml | 90 + upstream-man-pages/man3/glGenFramebuffers.xml | 83 + upstream-man-pages/man3/glGenQueries.xml | 90 + .../man3/glGenRenderbuffers.xml | 83 + upstream-man-pages/man3/glGenSamplers.xml | 89 + upstream-man-pages/man3/glGenTextures.xml | 98 + upstream-man-pages/man3/glGenVertexArrays.xml | 83 + upstream-man-pages/man3/glGenerateMipmap.xml | 144 + upstream-man-pages/man3/glGet.xml | 2473 +++++++++ upstream-man-pages/man3/glGetActiveAttrib.xml | 220 + .../man3/glGetActiveUniform.xml | 738 +++ .../man3/glGetActiveUniformBlock.xml | 149 + .../man3/glGetActiveUniformBlockName.xml | 132 + .../man3/glGetActiveUniformName.xml | 129 + .../man3/glGetActiveUniformsiv.xml | 673 +++ .../man3/glGetAttachedShaders.xml | 110 + .../man3/glGetAttribLocation.xml | 104 + .../man3/glGetBufferParameter.xml | 146 + .../man3/glGetBufferParameteriv.xml | 149 + .../man3/glGetBufferPointerv.xml | 106 + .../man3/glGetBufferSubData.xml | 128 + .../man3/glGetCompressedTexImage.xml | 161 + upstream-man-pages/man3/glGetError.xml | 139 + .../man3/glGetFragDataIndex.xml | 81 + .../man3/glGetFragDataLocation.xml | 76 + .../glGetFramebufferAttachmentParameter.xml | 227 + upstream-man-pages/man3/glGetMultisample.xml | 95 + upstream-man-pages/man3/glGetProgram.xml | 321 ++ .../man3/glGetProgramInfoLog.xml | 126 + upstream-man-pages/man3/glGetQueryObject.xml | 161 + upstream-man-pages/man3/glGetQueryiv.xml | 100 + .../man3/glGetRenderbufferParameter.xml | 103 + .../man3/glGetSamplerParameter.xml | 254 + upstream-man-pages/man3/glGetShader.xml | 165 + .../man3/glGetShaderInfoLog.xml | 123 + upstream-man-pages/man3/glGetShaderSource.xml | 111 + upstream-man-pages/man3/glGetString.xml | 181 + upstream-man-pages/man3/glGetSync.xml | 130 + upstream-man-pages/man3/glGetTexImage.xml | 314 ++ .../man3/glGetTexLevelParameter.xml | 370 ++ upstream-man-pages/man3/glGetTexParameter.xml | 325 ++ .../man3/glGetTransformFeedbackVarying.xml | 161 + upstream-man-pages/man3/glGetUniform.xml | 142 + .../man3/glGetUniformBlockIndex.xml | 94 + .../man3/glGetUniformIndices.xml | 117 + .../man3/glGetUniformLocation.xml | 123 + upstream-man-pages/man3/glGetVertexAttrib.xml | 277 + .../man3/glGetVertexAttribPointerv.xml | 93 + upstream-man-pages/man3/glHint.xml | 183 + upstream-man-pages/man3/glIsBuffer.xml | 66 + upstream-man-pages/man3/glIsEnabled.xml | 304 + upstream-man-pages/man3/glIsFramebuffer.xml | 64 + upstream-man-pages/man3/glIsProgram.xml | 102 + upstream-man-pages/man3/glIsQuery.xml | 66 + upstream-man-pages/man3/glIsRenderbuffer.xml | 65 + upstream-man-pages/man3/glIsSampler.xml | 69 + upstream-man-pages/man3/glIsShader.xml | 81 + upstream-man-pages/man3/glIsSync.xml | 67 + upstream-man-pages/man3/glIsTexture.xml | 73 + upstream-man-pages/man3/glIsVertexArray.xml | 64 + upstream-man-pages/man3/glLineWidth.xml | 154 + upstream-man-pages/man3/glLinkProgram.xml | 276 + upstream-man-pages/man3/glLogicOp.xml | 269 + upstream-man-pages/man3/glMapBuffer.xml | 192 + upstream-man-pages/man3/glMapBufferRange.xml | 204 + upstream-man-pages/man3/glMultiDrawArrays.xml | 142 + .../man3/glMultiDrawElements.xml | 144 + .../man3/glMultiDrawElementsBaseVertex.xml | 156 + upstream-man-pages/man3/glMultiTexCoord.xml | 446 ++ upstream-man-pages/man3/glPixelStore.xml | 1418 +++++ upstream-man-pages/man3/glPointParameter.xml | 162 + upstream-man-pages/man3/glPointSize.xml | 97 + upstream-man-pages/man3/glPolygonMode.xml | 147 + upstream-man-pages/man3/glPolygonOffset.xml | 120 + .../man3/glPrimitiveRestartIndex.xml | 80 + upstream-man-pages/man3/glProvokingVertex.xml | 220 + upstream-man-pages/man3/glQueryCounter.xml | 96 + upstream-man-pages/man3/glReadBuffer.xml | 113 + upstream-man-pages/man3/glReadPixels.xml | 1188 ++++ .../man3/glRenderbufferStorage.xml | 118 + .../man3/glRenderbufferStorageMultisample.xml | 136 + upstream-man-pages/man3/glSampleCoverage.xml | 119 + upstream-man-pages/man3/glSampleMaski.xml | 88 + .../man3/glSamplerParameter.xml | 1144 ++++ upstream-man-pages/man3/glScissor.xml | 109 + upstream-man-pages/man3/glShaderSource.xml | 118 + upstream-man-pages/man3/glStencilFunc.xml | 293 + .../man3/glStencilFuncSeparate.xml | 302 + upstream-man-pages/man3/glStencilMask.xml | 99 + .../man3/glStencilMaskSeparate.xml | 111 + upstream-man-pages/man3/glStencilOp.xml | 270 + .../man3/glStencilOpSeparate.xml | 282 + upstream-man-pages/man3/glTexBuffer.xml | 468 ++ upstream-man-pages/man3/glTexImage1D.xml | 600 ++ upstream-man-pages/man3/glTexImage2D.xml | 643 +++ .../man3/glTexImage2DMultisample.xml | 147 + upstream-man-pages/man3/glTexImage3D.xml | 654 +++ .../man3/glTexImage3DMultisample.xml | 151 + upstream-man-pages/man3/glTexParameter.xml | 1360 +++++ upstream-man-pages/man3/glTexSubImage1D.xml | 316 ++ upstream-man-pages/man3/glTexSubImage2D.xml | 390 ++ upstream-man-pages/man3/glTexSubImage3D.xml | 447 ++ .../man3/glTransformFeedbackVaryings.xml | 157 + upstream-man-pages/man3/glUniform.xml | 560 ++ .../man3/glUniformBlockBinding.xml | 110 + upstream-man-pages/man3/glUseProgram.xml | 168 + upstream-man-pages/man3/glValidateProgram.xml | 119 + upstream-man-pages/man3/glVertexAttrib.xml | 611 ++ .../man3/glVertexAttribDivisor.xml | 86 + .../man3/glVertexAttribPointer.xml | 240 + upstream-man-pages/man3/glViewport.xml | 188 + upstream-man-pages/man3/glWaitSync.xml | 102 + upstream-man-pages/man3/index.php | 9 + upstream-man-pages/man3/pdf/DejaVuSans.ttf | Bin 0 -> 581372 bytes upstream-man-pages/man3/pdf/Makefile | 414 ++ upstream-man-pages/man3/pdf/footer | 2 + upstream-man-pages/man3/pdf/header | 346 ++ upstream-man-pages/man3/pdf/ogl_prep_xml.xsl | 39 + upstream-man-pages/man3/pdf/opengl-pdf.xsl | 349 ++ upstream-man-pages/man3/top.php | 10 + .../man3/usr/include/make/commondefs | 407 ++ .../man3/usr/include/make/commonrules | 96 + .../man3/usr/include/make/commonrules.win32 | 109 + .../man3/usr/include/make/linuxdefs | 31 + upstream-man-pages/man3/xhtml/Makefile | 232 + upstream-man-pages/man3/xhtml/ctop.xsl | 1319 +++++ .../man3/xhtml/glActiveTexture.xml | 52 + .../man3/xhtml/glAttachShader.xml | 56 + .../man3/xhtml/glBeginConditionalRender.xml | 54 + .../man3/xhtml/glBeginQuery.xml | 115 + .../man3/xhtml/glBeginTransformFeedback.xml | 83 + .../man3/xhtml/glBindAttribLocation.xml | 98 + .../man3/xhtml/glBindBuffer.xml | 143 + .../man3/xhtml/glBindBufferBase.xml | 45 + .../man3/xhtml/glBindBufferRange.xml | 54 + .../man3/xhtml/glBindFragDataLocation.xml | 51 + .../xhtml/glBindFragDataLocationIndexed.xml | 68 + .../man3/xhtml/glBindFramebuffer.xml | 40 + .../man3/xhtml/glBindRenderbuffer.xml | 29 + .../man3/xhtml/glBindSampler.xml | 43 + .../man3/xhtml/glBindTexture.xml | 109 + .../man3/xhtml/glBindVertexArray.xml | 26 + .../man3/xhtml/glBlendColor.xml | 30 + .../man3/xhtml/glBlendEquation.xml | 660 +++ .../man3/xhtml/glBlendEquationSeparate.xml | 665 +++ upstream-man-pages/man3/xhtml/glBlendFunc.xml | 1280 +++++ .../man3/xhtml/glBlendFuncSeparate.xml | 1296 +++++ .../man3/xhtml/glBlitFramebuffer.xml | 78 + .../man3/xhtml/glBufferData.xml | 91 + .../man3/xhtml/glBufferSubData.xml | 65 + .../man3/xhtml/glCheckFramebufferStatus.xml | 56 + .../man3/xhtml/glClampColor.xml | 26 + upstream-man-pages/man3/xhtml/glClear.xml | 68 + .../man3/xhtml/glClearBuffer.xml | 67 + .../man3/xhtml/glClearColor.xml | 30 + .../man3/xhtml/glClearDepth.xml | 26 + .../man3/xhtml/glClearStencil.xml | 40 + .../man3/xhtml/glClientWaitSync.xml | 42 + upstream-man-pages/man3/xhtml/glColorMask.xml | 38 + .../man3/xhtml/glColorMaski.xml | 4 + .../man3/xhtml/glCompileShader.xml | 32 + .../man3/xhtml/glCompressedTexImage1D.xml | 110 + .../man3/xhtml/glCompressedTexImage2D.xml | 129 + .../man3/xhtml/glCompressedTexImage3D.xml | 120 + .../man3/xhtml/glCompressedTexSubImage1D.xml | 114 + .../man3/xhtml/glCompressedTexSubImage2D.xml | 135 + .../man3/xhtml/glCompressedTexSubImage3D.xml | 141 + .../man3/xhtml/glCopyBufferSubData.xml | 61 + .../man3/xhtml/glCopyTexImage1D.xml | 204 + .../man3/xhtml/glCopyTexImage2D.xml | 251 + .../man3/xhtml/glCopyTexSubImage1D.xml | 157 + .../man3/xhtml/glCopyTexSubImage2D.xml | 230 + .../man3/xhtml/glCopyTexSubImage3D.xml | 248 + .../man3/xhtml/glCreateProgram.xml | 60 + .../man3/xhtml/glCreateShader.xml | 44 + upstream-man-pages/man3/xhtml/glCullFace.xml | 41 + .../man3/xhtml/glDeleteBuffers.xml | 30 + .../man3/xhtml/glDeleteFramebuffers.xml | 26 + .../man3/xhtml/glDeleteProgram.xml | 35 + .../man3/xhtml/glDeleteQueries.xml | 30 + .../man3/xhtml/glDeleteRenderbuffers.xml | 33 + .../man3/xhtml/glDeleteSamplers.xml | 29 + .../man3/xhtml/glDeleteShader.xml | 31 + .../man3/xhtml/glDeleteSync.xml | 31 + .../man3/xhtml/glDeleteTextures.xml | 36 + .../man3/xhtml/glDeleteVertexArrays.xml | 24 + upstream-man-pages/man3/xhtml/glDepthFunc.xml | 66 + upstream-man-pages/man3/xhtml/glDepthMask.xml | 36 + .../man3/xhtml/glDepthRange.xml | 64 + .../man3/xhtml/glDetachShader.xml | 28 + upstream-man-pages/man3/xhtml/glDisable.xml | 4 + .../man3/xhtml/glDisableVertexAttribArray.xml | 4 + upstream-man-pages/man3/xhtml/glDisablei.xml | 4 + .../man3/xhtml/glDrawArrays.xml | 66 + .../man3/xhtml/glDrawArraysInstanced.xml | 60 + .../man3/xhtml/glDrawBuffer.xml | 98 + .../man3/xhtml/glDrawBuffers.xml | 71 + .../man3/xhtml/glDrawElements.xml | 71 + .../man3/xhtml/glDrawElementsBaseVertex.xml | 50 + .../man3/xhtml/glDrawElementsInstanced.xml | 72 + .../glDrawElementsInstancedBaseVertex.xml | 51 + .../man3/xhtml/glDrawRangeElements.xml | 126 + .../xhtml/glDrawRangeElementsBaseVertex.xml | 60 + upstream-man-pages/man3/xhtml/glEnable.xml | 202 + .../man3/xhtml/glEnableVertexAttribArray.xml | 41 + upstream-man-pages/man3/xhtml/glEnablei.xml | 4 + .../man3/xhtml/glEndConditionalRender.xml | 4 + upstream-man-pages/man3/xhtml/glEndQuery.xml | 4 + .../man3/xhtml/glEndTransformFeedback.xml | 4 + upstream-man-pages/man3/xhtml/glFenceSync.xml | 46 + upstream-man-pages/man3/xhtml/glFinish.xml | 19 + upstream-man-pages/man3/xhtml/glFlush.xml | 32 + .../man3/xhtml/glFlushMappedBufferRange.xml | 36 + .../man3/xhtml/glFramebufferRenderbuffer.xml | 55 + .../man3/xhtml/glFramebufferTexture.xml | 97 + .../man3/xhtml/glFramebufferTexture1D.xml | 4 + .../man3/xhtml/glFramebufferTexture2D.xml | 4 + .../man3/xhtml/glFramebufferTexture3D.xml | 4 + .../man3/xhtml/glFramebufferTextureLayer.xml | 51 + upstream-man-pages/man3/xhtml/glFrontFace.xml | 45 + .../man3/xhtml/glGenBuffers.xml | 33 + .../man3/xhtml/glGenFramebuffers.xml | 28 + .../man3/xhtml/glGenQueries.xml | 33 + .../man3/xhtml/glGenRenderbuffers.xml | 28 + .../man3/xhtml/glGenSamplers.xml | 31 + .../man3/xhtml/glGenTextures.xml | 41 + .../man3/xhtml/glGenVertexArrays.xml | 28 + .../man3/xhtml/glGenerateMipmap.xml | 95 + upstream-man-pages/man3/xhtml/glGet.xml | 1128 ++++ .../man3/xhtml/glGetActiveAttrib.xml | 114 + .../man3/xhtml/glGetActiveUniform.xml | 369 ++ .../man3/xhtml/glGetActiveUniformBlock.xml | 69 + .../xhtml/glGetActiveUniformBlockName.xml | 50 + .../man3/xhtml/glGetActiveUniformName.xml | 50 + .../man3/xhtml/glGetActiveUniformsiv.xml | 328 ++ .../man3/xhtml/glGetAttachedShaders.xml | 39 + .../man3/xhtml/glGetAttribLocation.xml | 46 + .../man3/xhtml/glGetBufferParameter.xml | 56 + .../man3/xhtml/glGetBufferPointerv.xml | 42 + .../man3/xhtml/glGetBufferSubData.xml | 55 + .../man3/xhtml/glGetCompressedTexImage.xml | 90 + .../man3/xhtml/glGetDoublev.xml | 4 + upstream-man-pages/man3/xhtml/glGetError.xml | 68 + upstream-man-pages/man3/xhtml/glGetFloatv.xml | 4 + .../man3/xhtml/glGetFragDataIndex.xml | 26 + .../man3/xhtml/glGetFragDataLocation.xml | 24 + .../glGetFramebufferAttachmentParameter.xml | 114 + .../man3/xhtml/glGetIntegerv.xml | 4 + .../man3/xhtml/glGetMultisample.xml | 33 + .../man3/xhtml/glGetProgram.xml | 122 + .../man3/xhtml/glGetProgramInfoLog.xml | 49 + .../man3/xhtml/glGetQueryObject.xml | 55 + .../man3/xhtml/glGetQueryiv.xml | 37 + .../man3/xhtml/glGetRenderbufferParameter.xml | 41 + .../man3/xhtml/glGetSamplerParameter.xml | 103 + upstream-man-pages/man3/xhtml/glGetShader.xml | 58 + .../man3/xhtml/glGetShaderInfoLog.xml | 46 + .../man3/xhtml/glGetShaderSource.xml | 39 + upstream-man-pages/man3/xhtml/glGetString.xml | 74 + upstream-man-pages/man3/xhtml/glGetSync.xml | 49 + .../man3/xhtml/glGetTexImage.xml | 218 + .../man3/xhtml/glGetTexLevelParameter.xml | 185 + .../man3/xhtml/glGetTexParameter.xml | 134 + .../xhtml/glGetTransformFeedbackVarying.xml | 67 + .../man3/xhtml/glGetUniform.xml | 55 + .../man3/xhtml/glGetUniformBlockIndex.xml | 36 + .../man3/xhtml/glGetUniformIndices.xml | 44 + .../man3/xhtml/glGetUniformLocation.xml | 60 + .../man3/xhtml/glGetVertexAttrib.xml | 104 + .../man3/xhtml/glGetVertexAttribPointerv.xml | 27 + upstream-man-pages/man3/xhtml/glHint.xml | 77 + upstream-man-pages/man3/xhtml/glIsBuffer.xml | 23 + upstream-man-pages/man3/xhtml/glIsEnabled.xml | 133 + .../man3/xhtml/glIsFramebuffer.xml | 22 + upstream-man-pages/man3/xhtml/glIsProgram.xml | 42 + upstream-man-pages/man3/xhtml/glIsQuery.xml | 23 + .../man3/xhtml/glIsRenderbuffer.xml | 23 + upstream-man-pages/man3/xhtml/glIsSampler.xml | 23 + upstream-man-pages/man3/xhtml/glIsShader.xml | 31 + upstream-man-pages/man3/xhtml/glIsSync.xml | 22 + upstream-man-pages/man3/xhtml/glIsTexture.xml | 30 + .../man3/xhtml/glIsVertexArray.xml | 22 + upstream-man-pages/man3/xhtml/glLineWidth.xml | 93 + .../man3/xhtml/glLinkProgram.xml | 136 + upstream-man-pages/man3/xhtml/glLogicOp.xml | 136 + upstream-man-pages/man3/xhtml/glMapBuffer.xml | 105 + .../man3/xhtml/glMapBufferRange.xml | 99 + .../man3/xhtml/glMultiDrawArrays.xml | 67 + .../man3/xhtml/glMultiDrawElements.xml | 63 + .../xhtml/glMultiDrawElementsBaseVertex.xml | 68 + .../man3/xhtml/glPixelStore.xml | 1126 ++++ .../man3/xhtml/glPointParameter.xml | 47 + upstream-man-pages/man3/xhtml/glPointSize.xml | 39 + .../man3/xhtml/glPolygonMode.xml | 65 + .../man3/xhtml/glPolygonOffset.xml | 65 + .../man3/xhtml/glPrimitiveRestartIndex.xml | 33 + .../man3/xhtml/glProvokingVertex.xml | 104 + .../man3/xhtml/glQueryCounter.xml | 39 + .../man3/xhtml/glReadBuffer.xml | 62 + .../man3/xhtml/glReadPixels.xml | 893 +++ .../man3/xhtml/glRenderbufferStorage.xml | 47 + .../glRenderbufferStorageMultisample.xml | 56 + .../man3/xhtml/glSampleCoverage.xml | 58 + .../man3/xhtml/glSampleMaski.xml | 32 + .../man3/xhtml/glSamplerParameter.xml | 823 +++ upstream-man-pages/man3/xhtml/glScissor.xml | 47 + .../man3/xhtml/glShaderSource.xml | 43 + .../man3/xhtml/glStencilFunc.xml | 170 + .../man3/xhtml/glStencilFuncSeparate.xml | 173 + .../man3/xhtml/glStencilMask.xml | 49 + .../man3/xhtml/glStencilMaskSeparate.xml | 54 + upstream-man-pages/man3/xhtml/glStencilOp.xml | 147 + .../man3/xhtml/glStencilOpSeparate.xml | 152 + upstream-man-pages/man3/xhtml/glTexBuffer.xml | 61 + .../man3/xhtml/glTexImage1D.xml | 423 ++ .../man3/xhtml/glTexImage2D.xml | 447 ++ .../man3/xhtml/glTexImage2DMultisample.xml | 56 + .../man3/xhtml/glTexImage3D.xml | 471 ++ .../man3/xhtml/glTexImage3DMultisample.xml | 58 + .../man3/xhtml/glTexParameter.xml | 961 ++++ .../man3/xhtml/glTexSubImage1D.xml | 205 + .../man3/xhtml/glTexSubImage2D.xml | 265 + .../man3/xhtml/glTexSubImage3D.xml | 308 ++ .../xhtml/glTransformFeedbackVaryings.xml | 67 + upstream-man-pages/man3/xhtml/glUniform.xml | 170 + .../man3/xhtml/glUniformBlockBinding.xml | 40 + .../man3/xhtml/glUnmapBuffer.xml | 4 + .../man3/xhtml/glUseProgram.xml | 87 + .../man3/xhtml/glValidateProgram.xml | 53 + .../man3/xhtml/glVertexAttrib.xml | 133 + .../man3/xhtml/glVertexAttribDivisor.xml | 30 + .../man3/xhtml/glVertexAttribIPointer.xml | 4 + .../man3/xhtml/glVertexAttribPointer.xml | 114 + upstream-man-pages/man3/xhtml/glViewport.xml | 124 + upstream-man-pages/man3/xhtml/glWaitSync.xml | 37 + upstream-man-pages/man3/xhtml/index.html | 311 ++ upstream-man-pages/man3/xhtml/makeindex.pl | 300 + upstream-man-pages/man3/xhtml/mathml.xsl | 42 + upstream-man-pages/man3/xhtml/opengl-man.css | 86 + upstream-man-pages/man3/xhtml/opengl-man.xsl | 50 + upstream-man-pages/man3/xhtml/pmathml.xsl | 615 +++ upstream-man-pages/man3/xhtml/pmathmlcss.xsl | 873 +++ upstream-man-pages/man3/xhtml/start.html | 47 + upstream-man-pages/man3/xhtml/xhtml-lat1.ent | 196 + .../man3/xhtml/xhtml-special.ent | 80 + .../man3/xhtml/xhtml-symbol.ent | 237 + .../man3/xhtml/xhtml1-transitional.dtd | 1201 ++++ upstream-man-pages/man4/Makefile | 49 + upstream-man-pages/man4/baseformattable.xml | 55 + upstream-man-pages/man4/bottom.php | 9 + .../man4/compressedformattable.xml | 95 + .../man4/glActiveShaderProgram.xml | 85 + upstream-man-pages/man4/glActiveTexture.xml | 101 + upstream-man-pages/man4/glAttachShader.xml | 119 + .../man4/glBeginConditionalRender.xml | 123 + upstream-man-pages/man4/glBeginQuery.xml | 213 + .../man4/glBeginQueryIndexed.xml | 244 + .../man4/glBeginTransformFeedback.xml | 194 + .../man4/glBindAttribLocation.xml | 186 + upstream-man-pages/man4/glBindBuffer.xml | 258 + upstream-man-pages/man4/glBindBufferBase.xml | 118 + upstream-man-pages/man4/glBindBufferRange.xml | 143 + .../man4/glBindFragDataLocation.xml | 127 + .../man4/glBindFragDataLocationIndexed.xml | 155 + upstream-man-pages/man4/glBindFramebuffer.xml | 93 + .../man4/glBindImageTexture.xml | 332 ++ .../man4/glBindProgramPipeline.xml | 85 + .../man4/glBindRenderbuffer.xml | 82 + upstream-man-pages/man4/glBindSampler.xml | 103 + upstream-man-pages/man4/glBindTexture.xml | 181 + .../man4/glBindTransformFeedback.xml | 112 + upstream-man-pages/man4/glBindVertexArray.xml | 72 + .../man4/glBindVertexBuffer.xml | 116 + upstream-man-pages/man4/glBlendColor.xml | 94 + upstream-man-pages/man4/glBlendEquation.xml | 779 +++ .../man4/glBlendEquationSeparate.xml | 792 +++ upstream-man-pages/man4/glBlendFunc.xml | 1473 +++++ .../man4/glBlendFuncSeparate.xml | 1523 +++++ upstream-man-pages/man4/glBlitFramebuffer.xml | 177 + upstream-man-pages/man4/glBufferData.xml | 226 + upstream-man-pages/man4/glBufferSubData.xml | 156 + .../man4/glCheckFramebufferStatus.xml | 131 + upstream-man-pages/man4/glClampColor.xml | 79 + upstream-man-pages/man4/glClear.xml | 145 + upstream-man-pages/man4/glClearBuffer.xml | 170 + upstream-man-pages/man4/glClearBufferData.xml | 128 + .../man4/glClearBufferSubData.xml | 149 + upstream-man-pages/man4/glClearColor.xml | 93 + upstream-man-pages/man4/glClearDepth.xml | 88 + upstream-man-pages/man4/glClearStencil.xml | 87 + upstream-man-pages/man4/glClientWaitSync.xml | 119 + upstream-man-pages/man4/glColorMask.xml | 106 + upstream-man-pages/man4/glCompileShader.xml | 84 + .../man4/glCompressedTexImage1D.xml | 274 + .../man4/glCompressedTexImage2D.xml | 335 ++ .../man4/glCompressedTexImage3D.xml | 319 ++ .../man4/glCompressedTexSubImage1D.xml | 216 + .../man4/glCompressedTexSubImage2D.xml | 251 + .../man4/glCompressedTexSubImage3D.xml | 265 + .../man4/glCopyBufferSubData.xml | 143 + .../man4/glCopyImageSubData.xml | 350 ++ upstream-man-pages/man4/glCopyTexImage1D.xml | 307 ++ upstream-man-pages/man4/glCopyTexImage2D.xml | 360 ++ .../man4/glCopyTexSubImage1D.xml | 249 + .../man4/glCopyTexSubImage2D.xml | 345 ++ .../man4/glCopyTexSubImage3D.xml | 362 ++ upstream-man-pages/man4/glCreateProgram.xml | 118 + upstream-man-pages/man4/glCreateShader.xml | 110 + .../man4/glCreateShaderProgram.xml | 124 + upstream-man-pages/man4/glCullFace.xml | 94 + .../man4/glDebugMessageCallback.xml | 97 + .../man4/glDebugMessageControl.xml | 160 + .../man4/glDebugMessageInsert.xml | 132 + upstream-man-pages/man4/glDeleteBuffers.xml | 86 + .../man4/glDeleteFramebuffers.xml | 79 + upstream-man-pages/man4/glDeleteProgram.xml | 86 + .../man4/glDeleteProgramPipelines.xml | 80 + upstream-man-pages/man4/glDeleteQueries.xml | 86 + .../man4/glDeleteRenderbuffers.xml | 87 + upstream-man-pages/man4/glDeleteSamplers.xml | 87 + upstream-man-pages/man4/glDeleteShader.xml | 82 + upstream-man-pages/man4/glDeleteSync.xml | 81 + upstream-man-pages/man4/glDeleteTextures.xml | 92 + .../man4/glDeleteTransformFeedbacks.xml | 82 + .../man4/glDeleteVertexArrays.xml | 77 + upstream-man-pages/man4/glDepthFunc.xml | 170 + upstream-man-pages/man4/glDepthMask.xml | 84 + upstream-man-pages/man4/glDepthRange.xml | 137 + upstream-man-pages/man4/glDepthRangeArray.xml | 162 + .../man4/glDepthRangeIndexed.xml | 156 + upstream-man-pages/man4/glDetachShader.xml | 92 + upstream-man-pages/man4/glDispatchCompute.xml | 97 + .../man4/glDispatchComputeIndirect.xml | 112 + upstream-man-pages/man4/glDrawArrays.xml | 134 + .../man4/glDrawArraysIndirect.xml | 142 + .../man4/glDrawArraysInstanced.xml | 122 + .../glDrawArraysInstancedBaseInstance.xml | 153 + upstream-man-pages/man4/glDrawBuffer.xml | 212 + upstream-man-pages/man4/glDrawBuffers.xml | 184 + upstream-man-pages/man4/glDrawElements.xml | 146 + .../man4/glDrawElementsBaseVertex.xml | 130 + .../man4/glDrawElementsIndirect.xml | 171 + .../man4/glDrawElementsInstanced.xml | 153 + .../glDrawElementsInstancedBaseInstance.xml | 184 + .../glDrawElementsInstancedBaseVertex.xml | 138 + ...lementsInstancedBaseVertexBaseInstance.xml | 170 + .../man4/glDrawRangeElements.xml | 222 + .../man4/glDrawRangeElementsBaseVertex.xml | 151 + .../man4/glDrawTransformFeedback.xml | 114 + .../man4/glDrawTransformFeedbackInstanced.xml | 134 + .../man4/glDrawTransformFeedbackStream.xml | 133 + ...glDrawTransformFeedbackStreamInstanced.xml | 143 + upstream-man-pages/man4/glEnable.xml | 561 ++ .../man4/glEnableVertexAttribArray.xml | 94 + upstream-man-pages/man4/glFenceSync.xml | 106 + upstream-man-pages/man4/glFinish.xml | 54 + upstream-man-pages/man4/glFlush.xml | 68 + .../man4/glFlushMappedBufferRange.xml | 98 + .../man4/glFramebufferParameteri.xml | 179 + .../man4/glFramebufferRenderbuffer.xml | 127 + .../man4/glFramebufferTexture.xml | 207 + .../man4/glFramebufferTextureLayer.xml | 128 + upstream-man-pages/man4/glFrontFace.xml | 95 + upstream-man-pages/man4/glGenBuffers.xml | 90 + upstream-man-pages/man4/glGenFramebuffers.xml | 83 + .../man4/glGenProgramPipelines.xml | 82 + upstream-man-pages/man4/glGenQueries.xml | 90 + .../man4/glGenRenderbuffers.xml | 83 + upstream-man-pages/man4/glGenSamplers.xml | 89 + upstream-man-pages/man4/glGenTextures.xml | 98 + .../man4/glGenTransformFeedbacks.xml | 84 + upstream-man-pages/man4/glGenVertexArrays.xml | 83 + upstream-man-pages/man4/glGenerateMipmap.xml | 144 + upstream-man-pages/man4/glGet.xml | 3227 +++++++++++ .../man4/glGetActiveAtomicCounterBufferiv.xml | 157 + upstream-man-pages/man4/glGetActiveAttrib.xml | 235 + .../man4/glGetActiveSubroutineName.xml | 130 + .../man4/glGetActiveSubroutineUniform.xml | 142 + .../man4/glGetActiveSubroutineUniformName.xml | 140 + .../man4/glGetActiveUniform.xml | 1140 ++++ .../man4/glGetActiveUniformBlock.xml | 156 + .../man4/glGetActiveUniformBlockName.xml | 132 + .../man4/glGetActiveUniformName.xml | 129 + .../man4/glGetActiveUniformsiv.xml | 805 +++ .../man4/glGetAttachedShaders.xml | 110 + .../man4/glGetAttribLocation.xml | 104 + .../man4/glGetBufferParameter.xml | 165 + .../man4/glGetBufferPointerv.xml | 117 + .../man4/glGetBufferSubData.xml | 138 + .../man4/glGetCompressedTexImage.xml | 161 + .../man4/glGetDebugMessageLog.xml | 171 + upstream-man-pages/man4/glGetError.xml | 160 + .../man4/glGetFragDataIndex.xml | 81 + .../man4/glGetFragDataLocation.xml | 76 + .../glGetFramebufferAttachmentParameter.xml | 227 + .../man4/glGetFramebufferParameter.xml | 156 + .../man4/glGetInternalFormativ.xml | 442 ++ upstream-man-pages/man4/glGetMultisample.xml | 95 + upstream-man-pages/man4/glGetObjectLabel.xml | 135 + .../man4/glGetObjectPtrLabel.xml | 119 + upstream-man-pages/man4/glGetProgram.xml | 372 ++ .../man4/glGetProgramBinary.xml | 124 + .../man4/glGetProgramInfoLog.xml | 126 + .../man4/glGetProgramInterface.xml | 254 + .../man4/glGetProgramPipeline.xml | 127 + .../man4/glGetProgramPipelineInfoLog.xml | 114 + .../man4/glGetProgramResource.xml | 371 ++ .../man4/glGetProgramResourceIndex.xml | 201 + .../man4/glGetProgramResourceLocation.xml | 140 + .../glGetProgramResourceLocationIndex.xml | 137 + .../man4/glGetProgramResourceName.xml | 235 + upstream-man-pages/man4/glGetProgramStage.xml | 132 + upstream-man-pages/man4/glGetQueryIndexed.xml | 121 + upstream-man-pages/man4/glGetQueryObject.xml | 161 + upstream-man-pages/man4/glGetQueryiv.xml | 103 + .../man4/glGetRenderbufferParameter.xml | 103 + .../man4/glGetSamplerParameter.xml | 254 + upstream-man-pages/man4/glGetShader.xml | 165 + .../man4/glGetShaderInfoLog.xml | 123 + .../man4/glGetShaderPrecisionFormat.xml | 107 + upstream-man-pages/man4/glGetShaderSource.xml | 111 + upstream-man-pages/man4/glGetString.xml | 181 + .../man4/glGetSubroutineIndex.xml | 102 + .../man4/glGetSubroutineUniformLocation.xml | 104 + upstream-man-pages/man4/glGetSync.xml | 130 + upstream-man-pages/man4/glGetTexImage.xml | 314 ++ .../man4/glGetTexLevelParameter.xml | 399 ++ upstream-man-pages/man4/glGetTexParameter.xml | 414 ++ .../man4/glGetTransformFeedbackVarying.xml | 161 + upstream-man-pages/man4/glGetUniform.xml | 148 + .../man4/glGetUniformBlockIndex.xml | 94 + .../man4/glGetUniformIndices.xml | 117 + .../man4/glGetUniformLocation.xml | 126 + .../man4/glGetUniformSubroutine.xml | 101 + upstream-man-pages/man4/glGetVertexAttrib.xml | 295 + .../man4/glGetVertexAttribPointerv.xml | 93 + upstream-man-pages/man4/glHint.xml | 183 + .../man4/glInvalidateBufferData.xml | 78 + .../man4/glInvalidateBufferSubData.xml | 104 + .../man4/glInvalidateFramebuffer.xml | 123 + .../man4/glInvalidateSubFramebuffer.xml | 169 + .../man4/glInvalidateTexImage.xml | 101 + .../man4/glInvalidateTexSubImage.xml | 173 + upstream-man-pages/man4/glIsBuffer.xml | 66 + upstream-man-pages/man4/glIsEnabled.xml | 323 ++ upstream-man-pages/man4/glIsFramebuffer.xml | 64 + upstream-man-pages/man4/glIsProgram.xml | 102 + .../man4/glIsProgramPipeline.xml | 67 + upstream-man-pages/man4/glIsQuery.xml | 66 + upstream-man-pages/man4/glIsRenderbuffer.xml | 65 + upstream-man-pages/man4/glIsSampler.xml | 69 + upstream-man-pages/man4/glIsShader.xml | 81 + upstream-man-pages/man4/glIsSync.xml | 67 + upstream-man-pages/man4/glIsTexture.xml | 73 + .../man4/glIsTransformFeedback.xml | 64 + upstream-man-pages/man4/glIsVertexArray.xml | 64 + upstream-man-pages/man4/glLineWidth.xml | 154 + upstream-man-pages/man4/glLinkProgram.xml | 276 + upstream-man-pages/man4/glLogicOp.xml | 269 + upstream-man-pages/man4/glMapBuffer.xml | 206 + upstream-man-pages/man4/glMapBufferRange.xml | 222 + upstream-man-pages/man4/glMemoryBarrier.xml | 308 ++ .../man4/glMinSampleShading.xml | 94 + upstream-man-pages/man4/glMultiDrawArrays.xml | 142 + .../man4/glMultiDrawArraysIndirect.xml | 190 + .../man4/glMultiDrawElements.xml | 144 + .../man4/glMultiDrawElementsBaseVertex.xml | 156 + .../man4/glMultiDrawElementsIndirect.xml | 211 + upstream-man-pages/man4/glObjectLabel.xml | 121 + upstream-man-pages/man4/glObjectPtrLabel.xml | 101 + upstream-man-pages/man4/glPatchParameter.xml | 112 + .../man4/glPauseTransformFeedback.xml | 58 + upstream-man-pages/man4/glPixelStore.xml | 1428 +++++ upstream-man-pages/man4/glPointParameter.xml | 162 + upstream-man-pages/man4/glPointSize.xml | 97 + upstream-man-pages/man4/glPolygonMode.xml | 147 + upstream-man-pages/man4/glPolygonOffset.xml | 120 + upstream-man-pages/man4/glPopDebugGroup.xml | 67 + .../man4/glPrimitiveRestartIndex.xml | 80 + upstream-man-pages/man4/glProgramBinary.xml | 138 + .../man4/glProgramParameter.xml | 118 + upstream-man-pages/man4/glProgramUniform.xml | 611 ++ upstream-man-pages/man4/glProvokingVertex.xml | 220 + upstream-man-pages/man4/glPushDebugGroup.xml | 115 + upstream-man-pages/man4/glQueryCounter.xml | 96 + upstream-man-pages/man4/glReadBuffer.xml | 115 + upstream-man-pages/man4/glReadPixels.xml | 1188 ++++ .../man4/glReleaseShaderCompiler.xml | 49 + .../man4/glRenderbufferStorage.xml | 118 + .../man4/glRenderbufferStorageMultisample.xml | 136 + .../man4/glResumeTransformFeedback.xml | 58 + upstream-man-pages/man4/glSampleCoverage.xml | 129 + upstream-man-pages/man4/glSampleMaski.xml | 88 + .../man4/glSamplerParameter.xml | 1144 ++++ upstream-man-pages/man4/glScissor.xml | 109 + upstream-man-pages/man4/glScissorArray.xml | 123 + upstream-man-pages/man4/glScissorIndexed.xml | 136 + upstream-man-pages/man4/glShaderBinary.xml | 131 + upstream-man-pages/man4/glShaderSource.xml | 118 + .../man4/glShaderStorageBlockBinding.xml | 99 + upstream-man-pages/man4/glStencilFunc.xml | 293 + .../man4/glStencilFuncSeparate.xml | 302 + upstream-man-pages/man4/glStencilMask.xml | 99 + .../man4/glStencilMaskSeparate.xml | 111 + upstream-man-pages/man4/glStencilOp.xml | 270 + .../man4/glStencilOpSeparate.xml | 282 + upstream-man-pages/man4/glTexBuffer.xml | 498 ++ upstream-man-pages/man4/glTexBufferRange.xml | 496 ++ upstream-man-pages/man4/glTexImage1D.xml | 592 ++ upstream-man-pages/man4/glTexImage2D.xml | 665 +++ .../man4/glTexImage2DMultisample.xml | 147 + upstream-man-pages/man4/glTexImage3D.xml | 617 +++ .../man4/glTexImage3DMultisample.xml | 151 + upstream-man-pages/man4/glTexParameter.xml | 1382 +++++ upstream-man-pages/man4/glTexStorage1D.xml | 157 + upstream-man-pages/man4/glTexStorage2D.xml | 226 + .../man4/glTexStorage2DMultisample.xml | 146 + upstream-man-pages/man4/glTexStorage3D.xml | 237 + .../man4/glTexStorage3DMultisample.xml | 168 + upstream-man-pages/man4/glTexSubImage1D.xml | 316 ++ upstream-man-pages/man4/glTexSubImage2D.xml | 391 ++ upstream-man-pages/man4/glTexSubImage3D.xml | 448 ++ upstream-man-pages/man4/glTextureView.xml | 357 ++ .../man4/glTransformFeedbackVaryings.xml | 157 + upstream-man-pages/man4/glUniform.xml | 560 ++ .../man4/glUniformBlockBinding.xml | 110 + .../man4/glUniformSubroutines.xml | 115 + upstream-man-pages/man4/glUseProgram.xml | 168 + .../man4/glUseProgramStages.xml | 123 + upstream-man-pages/man4/glValidateProgram.xml | 119 + .../man4/glValidateProgramPipeline.xml | 91 + upstream-man-pages/man4/glVertexAttrib.xml | 660 +++ .../man4/glVertexAttribBinding.xml | 92 + .../man4/glVertexAttribDivisor.xml | 86 + .../man4/glVertexAttribFormat.xml | 193 + .../man4/glVertexAttribPointer.xml | 256 + .../man4/glVertexBindingDivisor.xml | 91 + upstream-man-pages/man4/glViewport.xml | 188 + upstream-man-pages/man4/glViewportArray.xml | 233 + upstream-man-pages/man4/glViewportIndexed.xml | 265 + upstream-man-pages/man4/glWaitSync.xml | 102 + upstream-man-pages/man4/index.php | 9 + .../man4/internalformattable.xml | 590 ++ upstream-man-pages/man4/removedTypes.xml | 58 + upstream-man-pages/man4/top.php | 10 + .../man4/usr/include/make/commondefs | 407 ++ .../man4/usr/include/make/commonrules | 96 + .../man4/usr/include/make/commonrules.win32 | 109 + .../man4/usr/include/make/linuxdefs | 31 + upstream-man-pages/man4/xhtml/Makefile | 475 ++ upstream-man-pages/man4/xhtml/ctop.xsl | 1319 +++++ .../man4/xhtml/glActiveShaderProgram.xml | 32 + .../man4/xhtml/glActiveTexture.xml | 52 + .../man4/xhtml/glAttachShader.xml | 56 + .../man4/xhtml/glBeginConditionalRender.xml | 54 + .../man4/xhtml/glBeginQuery.xml | 123 + .../man4/xhtml/glBeginQueryIndexed.xml | 139 + .../man4/xhtml/glBeginTransformFeedback.xml | 83 + .../man4/xhtml/glBindAttribLocation.xml | 98 + .../man4/xhtml/glBindBuffer.xml | 171 + .../man4/xhtml/glBindBufferBase.xml | 53 + .../man4/xhtml/glBindBufferRange.xml | 62 + .../man4/xhtml/glBindFragDataLocation.xml | 51 + .../xhtml/glBindFragDataLocationIndexed.xml | 68 + .../man4/xhtml/glBindFramebuffer.xml | 40 + .../man4/xhtml/glBindImageTexture.xml | 96 + .../man4/xhtml/glBindProgramPipeline.xml | 39 + .../man4/xhtml/glBindRenderbuffer.xml | 29 + .../man4/xhtml/glBindSampler.xml | 43 + .../man4/xhtml/glBindTexture.xml | 115 + .../man4/xhtml/glBindTransformFeedback.xml | 52 + .../man4/xhtml/glBindVertexArray.xml | 26 + .../man4/xhtml/glBindVertexBuffer.xml | 44 + .../man4/xhtml/glBlendColor.xml | 39 + .../man4/xhtml/glBlendEquation.xml | 668 +++ .../man4/xhtml/glBlendEquationSeparate.xml | 673 +++ upstream-man-pages/man4/xhtml/glBlendFunc.xml | 1288 +++++ .../man4/xhtml/glBlendFuncSeparate.xml | 1304 +++++ .../man4/xhtml/glBlitFramebuffer.xml | 78 + .../man4/xhtml/glBufferData.xml | 103 + .../man4/xhtml/glBufferSubData.xml | 76 + .../man4/xhtml/glCheckFramebufferStatus.xml | 56 + .../man4/xhtml/glClampColor.xml | 26 + upstream-man-pages/man4/xhtml/glClear.xml | 68 + .../man4/xhtml/glClearBuffer.xml | 67 + .../man4/xhtml/glClearBufferData.xml | 45 + .../man4/xhtml/glClearBufferSubData.xml | 56 + .../man4/xhtml/glClearColor.xml | 39 + .../man4/xhtml/glClearDepth.xml | 36 + .../man4/xhtml/glClearStencil.xml | 40 + .../man4/xhtml/glClientWaitSync.xml | 42 + upstream-man-pages/man4/xhtml/glColorMask.xml | 38 + .../man4/xhtml/glColorMaski.xml | 8 + .../man4/xhtml/glCompileShader.xml | 32 + .../man4/xhtml/glCompressedTexImage1D.xml | 161 + .../man4/xhtml/glCompressedTexImage2D.xml | 212 + .../man4/xhtml/glCompressedTexImage3D.xml | 191 + .../man4/xhtml/glCompressedTexSubImage1D.xml | 114 + .../man4/xhtml/glCompressedTexSubImage2D.xml | 135 + .../man4/xhtml/glCompressedTexSubImage3D.xml | 141 + .../man4/xhtml/glCopyBufferSubData.xml | 61 + .../man4/xhtml/glCopyImageSubData.xml | 170 + .../man4/xhtml/glCopyTexImage1D.xml | 204 + .../man4/xhtml/glCopyTexImage2D.xml | 251 + .../man4/xhtml/glCopyTexSubImage1D.xml | 157 + .../man4/xhtml/glCopyTexSubImage2D.xml | 238 + .../man4/xhtml/glCopyTexSubImage3D.xml | 249 + .../man4/xhtml/glCreateProgram.xml | 60 + .../man4/xhtml/glCreateShader.xml | 52 + .../man4/xhtml/glCreateShaderProgram.xml | 60 + upstream-man-pages/man4/xhtml/glCullFace.xml | 41 + .../man4/xhtml/glDebugMessageCallback.xml | 42 + .../man4/xhtml/glDebugMessageControl.xml | 70 + .../man4/xhtml/glDebugMessageInsert.xml | 50 + .../man4/xhtml/glDeleteBuffers.xml | 30 + .../man4/xhtml/glDeleteFramebuffers.xml | 26 + .../man4/xhtml/glDeleteProgram.xml | 35 + .../man4/xhtml/glDeleteProgramPipelines.xml | 27 + .../man4/xhtml/glDeleteQueries.xml | 30 + .../man4/xhtml/glDeleteRenderbuffers.xml | 33 + .../man4/xhtml/glDeleteSamplers.xml | 29 + .../man4/xhtml/glDeleteShader.xml | 31 + .../man4/xhtml/glDeleteSync.xml | 31 + .../man4/xhtml/glDeleteTextures.xml | 36 + .../man4/xhtml/glDeleteTransformFeedbacks.xml | 29 + .../man4/xhtml/glDeleteVertexArrays.xml | 24 + upstream-man-pages/man4/xhtml/glDepthFunc.xml | 66 + upstream-man-pages/man4/xhtml/glDepthMask.xml | 36 + .../man4/xhtml/glDepthRange.xml | 74 + .../man4/xhtml/glDepthRangeArray.xml | 92 + .../man4/xhtml/glDepthRangeIndexed.xml | 87 + .../man4/xhtml/glDetachShader.xml | 28 + upstream-man-pages/man4/xhtml/glDisable.xml | 4 + .../man4/xhtml/glDisableVertexAttribArray.xml | 12 + .../man4/xhtml/glDispatchCompute.xml | 34 + .../man4/xhtml/glDispatchComputeIndirect.xml | 59 + .../man4/xhtml/glDrawArrays.xml | 66 + .../man4/xhtml/glDrawArraysIndirect.xml | 79 + .../man4/xhtml/glDrawArraysInstanced.xml | 52 + .../glDrawArraysInstancedBaseInstance.xml | 75 + .../man4/xhtml/glDrawBuffer.xml | 98 + .../man4/xhtml/glDrawBuffers.xml | 71 + .../man4/xhtml/glDrawElements.xml | 71 + .../man4/xhtml/glDrawElementsBaseVertex.xml | 51 + .../man4/xhtml/glDrawElementsIndirect.xml | 99 + .../man4/xhtml/glDrawElementsInstanced.xml | 72 + .../glDrawElementsInstancedBaseInstance.xml | 95 + .../glDrawElementsInstancedBaseVertex.xml | 52 + ...lementsInstancedBaseVertexBaseInstance.xml | 76 + .../man4/xhtml/glDrawRangeElements.xml | 126 + .../xhtml/glDrawRangeElementsBaseVertex.xml | 59 + .../man4/xhtml/glDrawTransformFeedback.xml | 56 + .../glDrawTransformFeedbackInstanced.xml | 67 + .../xhtml/glDrawTransformFeedbackStream.xml | 66 + ...glDrawTransformFeedbackStreamInstanced.xml | 69 + upstream-man-pages/man4/xhtml/glEnable.xml | 242 + .../man4/xhtml/glEnableVertexAttribArray.xml | 41 + .../man4/xhtml/glEndConditionalRender.xml | 12 + upstream-man-pages/man4/xhtml/glEndQuery.xml | 12 + .../man4/xhtml/glEndQueryIndexed.xml | 12 + .../man4/xhtml/glEndTransformFeedback.xml | 12 + upstream-man-pages/man4/xhtml/glFenceSync.xml | 46 + upstream-man-pages/man4/xhtml/glFinish.xml | 19 + upstream-man-pages/man4/xhtml/glFlush.xml | 32 + .../man4/xhtml/glFlushMappedBufferRange.xml | 36 + .../man4/xhtml/glFramebufferParameteri.xml | 79 + .../man4/xhtml/glFramebufferRenderbuffer.xml | 55 + .../man4/xhtml/glFramebufferTexture.xml | 97 + .../man4/xhtml/glFramebufferTextureLayer.xml | 49 + upstream-man-pages/man4/xhtml/glFrontFace.xml | 45 + .../man4/xhtml/glGenBuffers.xml | 33 + .../man4/xhtml/glGenFramebuffers.xml | 28 + .../man4/xhtml/glGenProgramPipelines.xml | 28 + .../man4/xhtml/glGenQueries.xml | 33 + .../man4/xhtml/glGenRenderbuffers.xml | 28 + .../man4/xhtml/glGenSamplers.xml | 31 + .../man4/xhtml/glGenTextures.xml | 41 + .../man4/xhtml/glGenTransformFeedbacks.xml | 30 + .../man4/xhtml/glGenVertexArrays.xml | 28 + .../man4/xhtml/glGenerateMipmap.xml | 95 + upstream-man-pages/man4/xhtml/glGet.xml | 1450 +++++ .../glGetActiveAtomicCounterBufferiv.xml | 77 + .../man4/xhtml/glGetActiveAttrib.xml | 129 + .../man4/xhtml/glGetActiveSubroutineName.xml | 44 + .../xhtml/glGetActiveSubroutineUniform.xml | 59 + .../glGetActiveSubroutineUniformName.xml | 53 + .../man4/xhtml/glGetActiveUniform.xml | 590 ++ .../man4/xhtml/glGetActiveUniformBlock.xml | 75 + .../xhtml/glGetActiveUniformBlockName.xml | 50 + .../man4/xhtml/glGetActiveUniformName.xml | 50 + .../man4/xhtml/glGetActiveUniformsiv.xml | 403 ++ .../man4/xhtml/glGetAttachedShaders.xml | 39 + .../man4/xhtml/glGetAttribLocation.xml | 46 + .../man4/xhtml/glGetBufferParameter.xml | 65 + .../man4/xhtml/glGetBufferPointerv.xml | 51 + .../man4/xhtml/glGetBufferSubData.xml | 63 + .../man4/xhtml/glGetCompressedTexImage.xml | 90 + .../man4/xhtml/glGetDebugMessageLog.xml | 66 + upstream-man-pages/man4/xhtml/glGetError.xml | 77 + .../man4/xhtml/glGetFragDataIndex.xml | 26 + .../man4/xhtml/glGetFragDataLocation.xml | 24 + .../glGetFramebufferAttachmentParameter.xml | 114 + .../man4/xhtml/glGetFramebufferParameter.xml | 58 + .../man4/xhtml/glGetInternalFormativ.xml | 312 ++ .../man4/xhtml/glGetMultisample.xml | 33 + .../man4/xhtml/glGetObjectLabel.xml | 55 + .../man4/xhtml/glGetObjectPtrLabel.xml | 46 + .../man4/xhtml/glGetProgram.xml | 146 + .../man4/xhtml/glGetProgramBinary.xml | 46 + .../man4/xhtml/glGetProgramInfoLog.xml | 49 + .../man4/xhtml/glGetProgramInterface.xml | 104 + .../man4/xhtml/glGetProgramPipeline.xml | 60 + .../xhtml/glGetProgramPipelineInfoLog.xml | 43 + .../man4/xhtml/glGetProgramResource.xml | 186 + .../man4/xhtml/glGetProgramResourceIndex.xml | 72 + .../xhtml/glGetProgramResourceLocation.xml | 66 + .../glGetProgramResourceLocationIndex.xml | 63 + .../man4/xhtml/glGetProgramResourceName.xml | 85 + .../man4/xhtml/glGetProgramStage.xml | 58 + .../man4/xhtml/glGetQueryIndexed.xml | 48 + .../man4/xhtml/glGetQueryObject.xml | 55 + .../man4/xhtml/glGetQueryiv.xml | 39 + .../man4/xhtml/glGetRenderbufferParameter.xml | 41 + .../man4/xhtml/glGetSamplerParameter.xml | 103 + upstream-man-pages/man4/xhtml/glGetShader.xml | 58 + .../man4/xhtml/glGetShaderInfoLog.xml | 46 + .../man4/xhtml/glGetShaderPrecisionFormat.xml | 42 + .../man4/xhtml/glGetShaderSource.xml | 39 + upstream-man-pages/man4/xhtml/glGetString.xml | 74 + .../man4/xhtml/glGetSubroutineIndex.xml | 40 + .../xhtml/glGetSubroutineUniformLocation.xml | 42 + upstream-man-pages/man4/xhtml/glGetSync.xml | 49 + .../man4/xhtml/glGetTexImage.xml | 218 + .../man4/xhtml/glGetTexLevelParameter.xml | 199 + .../man4/xhtml/glGetTexParameter.xml | 177 + .../xhtml/glGetTransformFeedbackVarying.xml | 67 + .../man4/xhtml/glGetUniform.xml | 55 + .../man4/xhtml/glGetUniformBlockIndex.xml | 36 + .../man4/xhtml/glGetUniformIndices.xml | 44 + .../man4/xhtml/glGetUniformLocation.xml | 63 + .../man4/xhtml/glGetUniformSubroutine.xml | 39 + .../man4/xhtml/glGetVertexAttrib.xml | 112 + .../man4/xhtml/glGetVertexAttribPointerv.xml | 27 + upstream-man-pages/man4/xhtml/glHint.xml | 77 + .../man4/xhtml/glInvalidateBufferData.xml | 29 + .../man4/xhtml/glInvalidateBufferSubData.xml | 40 + .../man4/xhtml/glInvalidateFramebuffer.xml | 58 + .../man4/xhtml/glInvalidateSubFramebuffer.xml | 75 + .../man4/xhtml/glInvalidateTexImage.xml | 42 + .../man4/xhtml/glInvalidateTexSubImage.xml | 71 + upstream-man-pages/man4/xhtml/glIsBuffer.xml | 23 + upstream-man-pages/man4/xhtml/glIsEnabled.xml | 143 + .../man4/xhtml/glIsFramebuffer.xml | 22 + upstream-man-pages/man4/xhtml/glIsProgram.xml | 42 + .../man4/xhtml/glIsProgramPipeline.xml | 25 + upstream-man-pages/man4/xhtml/glIsQuery.xml | 23 + .../man4/xhtml/glIsRenderbuffer.xml | 23 + upstream-man-pages/man4/xhtml/glIsSampler.xml | 23 + upstream-man-pages/man4/xhtml/glIsShader.xml | 31 + upstream-man-pages/man4/xhtml/glIsSync.xml | 22 + upstream-man-pages/man4/xhtml/glIsTexture.xml | 30 + .../man4/xhtml/glIsTransformFeedback.xml | 22 + .../man4/xhtml/glIsVertexArray.xml | 22 + upstream-man-pages/man4/xhtml/glLineWidth.xml | 93 + .../man4/xhtml/glLinkProgram.xml | 136 + upstream-man-pages/man4/xhtml/glLogicOp.xml | 136 + upstream-man-pages/man4/xhtml/glMapBuffer.xml | 117 + .../man4/xhtml/glMapBufferRange.xml | 113 + .../man4/xhtml/glMemoryBarrier.xml | 164 + .../man4/xhtml/glMinSampleShading.xml | 40 + .../man4/xhtml/glMultiDrawArrays.xml | 67 + .../man4/xhtml/glMultiDrawArraysIndirect.xml | 109 + .../man4/xhtml/glMultiDrawElements.xml | 63 + .../xhtml/glMultiDrawElementsBaseVertex.xml | 68 + .../xhtml/glMultiDrawElementsIndirect.xml | 122 + .../man4/xhtml/glObjectLabel.xml | 49 + .../man4/xhtml/glObjectPtrLabel.xml | 37 + .../man4/xhtml/glPatchParameter.xml | 43 + .../man4/xhtml/glPauseTransformFeedback.xml | 23 + .../man4/xhtml/glPixelStore.xml | 1136 ++++ .../man4/xhtml/glPointParameter.xml | 47 + upstream-man-pages/man4/xhtml/glPointSize.xml | 39 + .../man4/xhtml/glPolygonMode.xml | 65 + .../man4/xhtml/glPolygonOffset.xml | 65 + .../man4/xhtml/glPopDebugGroup.xml | 29 + .../man4/xhtml/glPrimitiveRestartIndex.xml | 33 + .../man4/xhtml/glProgramBinary.xml | 61 + .../man4/xhtml/glProgramParameter.xml | 52 + .../man4/xhtml/glProgramUniform.xml | 172 + .../man4/xhtml/glProvokingVertex.xml | 104 + .../man4/xhtml/glPushDebugGroup.xml | 45 + .../man4/xhtml/glQueryCounter.xml | 39 + .../man4/xhtml/glReadBuffer.xml | 64 + .../man4/xhtml/glReadPixels.xml | 893 +++ .../man4/xhtml/glReleaseShaderCompiler.xml | 17 + .../man4/xhtml/glRenderbufferStorage.xml | 47 + .../glRenderbufferStorageMultisample.xml | 56 + .../man4/xhtml/glResumeTransformFeedback.xml | 23 + .../man4/xhtml/glSampleCoverage.xml | 65 + .../man4/xhtml/glSampleMaski.xml | 32 + .../man4/xhtml/glSamplerParameter.xml | 823 +++ upstream-man-pages/man4/xhtml/glScissor.xml | 47 + .../man4/xhtml/glScissorArray.xml | 56 + .../man4/xhtml/glScissorIndexed.xml | 55 + .../man4/xhtml/glShaderBinary.xml | 50 + .../man4/xhtml/glShaderSource.xml | 43 + .../xhtml/glShaderStorageBlockBinding.xml | 38 + .../man4/xhtml/glStencilFunc.xml | 170 + .../man4/xhtml/glStencilFuncSeparate.xml | 173 + .../man4/xhtml/glStencilMask.xml | 49 + .../man4/xhtml/glStencilMaskSeparate.xml | 54 + upstream-man-pages/man4/xhtml/glStencilOp.xml | 147 + .../man4/xhtml/glStencilOpSeparate.xml | 152 + upstream-man-pages/man4/xhtml/glTexBuffer.xml | 61 + .../man4/xhtml/glTexBufferRange.xml | 52 + .../man4/xhtml/glTexImage1D.xml | 435 ++ .../man4/xhtml/glTexImage2D.xml | 489 ++ .../man4/xhtml/glTexImage2DMultisample.xml | 56 + .../man4/xhtml/glTexImage3D.xml | 454 ++ .../man4/xhtml/glTexImage3DMultisample.xml | 58 + .../man4/xhtml/glTexParameter.xml | 974 ++++ .../man4/xhtml/glTexStorage1D.xml | 98 + .../man4/xhtml/glTexStorage2D.xml | 155 + .../man4/xhtml/glTexStorage2DMultisample.xml | 74 + .../man4/xhtml/glTexStorage3D.xml | 161 + .../man4/xhtml/glTexStorage3DMultisample.xml | 85 + .../man4/xhtml/glTexSubImage1D.xml | 205 + .../man4/xhtml/glTexSubImage2D.xml | 266 + .../man4/xhtml/glTexSubImage3D.xml | 309 ++ .../man4/xhtml/glTextureView.xml | 124 + .../xhtml/glTransformFeedbackVaryings.xml | 67 + upstream-man-pages/man4/xhtml/glUniform.xml | 170 + .../man4/xhtml/glUniformBlockBinding.xml | 40 + .../man4/xhtml/glUniformSubroutines.xml | 48 + .../man4/xhtml/glUnmapBuffer.xml | 12 + .../man4/xhtml/glUseProgram.xml | 87 + .../man4/xhtml/glUseProgramStages.xml | 57 + .../man4/xhtml/glValidateProgram.xml | 53 + .../man4/xhtml/glValidateProgramPipeline.xml | 40 + .../man4/xhtml/glVertexAttrib.xml | 133 + .../man4/xhtml/glVertexAttribBinding.xml | 35 + .../man4/xhtml/glVertexAttribDivisor.xml | 30 + .../man4/xhtml/glVertexAttribFormat.xml | 89 + .../man4/xhtml/glVertexAttribPointer.xml | 122 + .../man4/xhtml/glVertexBindingDivisor.xml | 35 + upstream-man-pages/man4/xhtml/glViewport.xml | 124 + .../man4/xhtml/glViewportArray.xml | 161 + .../man4/xhtml/glViewportIndexed.xml | 175 + upstream-man-pages/man4/xhtml/glWaitSync.xml | 37 + upstream-man-pages/man4/xhtml/index.html | 413 ++ upstream-man-pages/man4/xhtml/makeindex.pl | 300 + upstream-man-pages/man4/xhtml/mathml.xsl | 42 + upstream-man-pages/man4/xhtml/opengl-man.css | 106 + upstream-man-pages/man4/xhtml/opengl-man.xsl | 50 + upstream-man-pages/man4/xhtml/pmathml.xsl | 615 +++ upstream-man-pages/man4/xhtml/pmathmlcss.xsl | 873 +++ upstream-man-pages/man4/xhtml/preproc.sed | 3 + .../man4/xhtml/removedTypes.xml | 33 + upstream-man-pages/man4/xhtml/start.html | 45 + upstream-man-pages/man4/xhtml/xhtml-lat1.ent | 196 + .../man4/xhtml/xhtml-special.ent | 80 + .../man4/xhtml/xhtml-symbol.ent | 237 + .../man4/xhtml/xhtml1-transitional.dtd | 1201 ++++ .../manglsl/EmitStreamVertex.xml | 74 + upstream-man-pages/manglsl/EmitVertex.xml | 62 + upstream-man-pages/manglsl/EndPrimitive.xml | 62 + .../manglsl/EndStreamPrimitive.xml | 73 + upstream-man-pages/manglsl/Makefile | 49 + upstream-man-pages/manglsl/abs.xml | 88 + upstream-man-pages/manglsl/acos.xml | 82 + upstream-man-pages/manglsl/acosh.xml | 75 + upstream-man-pages/manglsl/all.xml | 83 + upstream-man-pages/manglsl/any.xml | 83 + upstream-man-pages/manglsl/asin.xml | 91 + upstream-man-pages/manglsl/asinh.xml | 74 + upstream-man-pages/manglsl/atan.xml | 134 + upstream-man-pages/manglsl/atanh.xml | 75 + upstream-man-pages/manglsl/atomicAdd.xml | 100 + upstream-man-pages/manglsl/atomicAnd.xml | 100 + upstream-man-pages/manglsl/atomicCompSwap.xml | 104 + upstream-man-pages/manglsl/atomicCounter.xml | 71 + .../manglsl/atomicCounterDecrement.xml | 71 + .../manglsl/atomicCounterIncrement.xml | 71 + upstream-man-pages/manglsl/atomicExchange.xml | 100 + upstream-man-pages/manglsl/atomicMax.xml | 100 + upstream-man-pages/manglsl/atomicMin.xml | 100 + upstream-man-pages/manglsl/atomicOr.xml | 100 + upstream-man-pages/manglsl/atomicXor.xml | 100 + upstream-man-pages/manglsl/barrier.xml | 67 + upstream-man-pages/manglsl/bitCount.xml | 73 + .../manglsl/bitfieldExtract.xml | 101 + upstream-man-pages/manglsl/bitfieldInsert.xml | 108 + .../manglsl/bitfieldReverse.xml | 77 + upstream-man-pages/manglsl/bottom.php | 9 + upstream-man-pages/manglsl/ceil.xml | 80 + upstream-man-pages/manglsl/clamp.xml | 157 + upstream-man-pages/manglsl/cos.xml | 69 + upstream-man-pages/manglsl/cosh.xml | 95 + upstream-man-pages/manglsl/cross.xml | 155 + upstream-man-pages/manglsl/dFdx.xml | 81 + upstream-man-pages/manglsl/degrees.xml | 80 + upstream-man-pages/manglsl/determinant.xml | 93 + upstream-man-pages/manglsl/distance.xml | 88 + upstream-man-pages/manglsl/dot.xml | 109 + upstream-man-pages/manglsl/equal.xml | 96 + upstream-man-pages/manglsl/exp.xml | 73 + upstream-man-pages/manglsl/exp2.xml | 72 + upstream-man-pages/manglsl/faceforward.xml | 99 + upstream-man-pages/manglsl/findLSB.xml | 73 + upstream-man-pages/manglsl/findMSB.xml | 75 + upstream-man-pages/manglsl/floatBitsToInt.xml | 79 + upstream-man-pages/manglsl/floor.xml | 79 + upstream-man-pages/manglsl/fma.xml | 108 + upstream-man-pages/manglsl/fract.xml | 80 + upstream-man-pages/manglsl/frexp.xml | 105 + upstream-man-pages/manglsl/fwidth.xml | 72 + .../manglsl/gl_ClipDistance.xml | 118 + upstream-man-pages/manglsl/gl_FragCoord.xml | 79 + upstream-man-pages/manglsl/gl_FragDepth.xml | 62 + upstream-man-pages/manglsl/gl_FrontFacing.xml | 142 + .../manglsl/gl_GlobalInvocationID.xml | 61 + upstream-man-pages/manglsl/gl_InstanceID.xml | 121 + .../manglsl/gl_InvocationID.xml | 127 + upstream-man-pages/manglsl/gl_Layer.xml | 155 + .../manglsl/gl_LocalInvocationID.xml | 62 + .../manglsl/gl_LocalInvocationIndex.xml | 63 + upstream-man-pages/manglsl/gl_NumSamples.xml | 121 + .../manglsl/gl_NumWorkGroups.xml | 60 + .../manglsl/gl_PatchVerticesIn.xml | 59 + upstream-man-pages/manglsl/gl_PointCoord.xml | 130 + upstream-man-pages/manglsl/gl_PointSize.xml | 92 + upstream-man-pages/manglsl/gl_Position.xml | 155 + upstream-man-pages/manglsl/gl_PrimitiveID.xml | 136 + .../manglsl/gl_PrimitiveIDIn.xml | 124 + upstream-man-pages/manglsl/gl_SampleID.xml | 67 + upstream-man-pages/manglsl/gl_SampleMask.xml | 142 + .../manglsl/gl_SampleMaskIn.xml | 78 + .../manglsl/gl_SamplePosition.xml | 126 + upstream-man-pages/manglsl/gl_TessCoord.xml | 121 + .../manglsl/gl_TessLevelInner.xml | 127 + .../manglsl/gl_TessLevelOuter.xml | 127 + upstream-man-pages/manglsl/gl_VertexID.xml | 121 + .../manglsl/gl_ViewportIndex.xml | 80 + upstream-man-pages/manglsl/gl_WorkGroupID.xml | 60 + .../manglsl/gl_WorkGroupSize.xml | 62 + upstream-man-pages/manglsl/greaterThan.xml | 102 + .../manglsl/greaterThanEqual.xml | 102 + .../manglsl/groupMemoryBarrier.xml | 62 + upstream-man-pages/manglsl/imageAtomicAdd.xml | 235 + upstream-man-pages/manglsl/imageAtomicAnd.xml | 235 + .../manglsl/imageAtomicCompSwap.xml | 267 + .../manglsl/imageAtomicExchange.xml | 235 + upstream-man-pages/manglsl/imageAtomicMax.xml | 235 + upstream-man-pages/manglsl/imageAtomicMin.xml | 235 + upstream-man-pages/manglsl/imageAtomicOr.xml | 235 + upstream-man-pages/manglsl/imageAtomicXor.xml | 235 + upstream-man-pages/manglsl/imageLoad.xml | 150 + upstream-man-pages/manglsl/imageSize.xml | 114 + upstream-man-pages/manglsl/imageStore.xml | 169 + upstream-man-pages/manglsl/index.php | 9 + upstream-man-pages/manglsl/intBitsToFloat.xml | 81 + .../manglsl/interpolateAtCentroid.xml | 84 + .../manglsl/interpolateAtOffset.xml | 98 + .../manglsl/interpolateAtSample.xml | 97 + upstream-man-pages/manglsl/inverse.xml | 94 + upstream-man-pages/manglsl/inversesqrt.xml | 81 + upstream-man-pages/manglsl/isinf.xml | 77 + upstream-man-pages/manglsl/isnan.xml | 77 + upstream-man-pages/manglsl/ldexp.xml | 101 + upstream-man-pages/manglsl/length.xml | 99 + upstream-man-pages/manglsl/lessThan.xml | 102 + upstream-man-pages/manglsl/lessThanEqual.xml | 102 + upstream-man-pages/manglsl/log.xml | 74 + upstream-man-pages/manglsl/log2.xml | 74 + upstream-man-pages/manglsl/matrixCompMult.xml | 90 + upstream-man-pages/manglsl/max.xml | 139 + upstream-man-pages/manglsl/memoryBarrier.xml | 74 + .../manglsl/memoryBarrierAtomicCounter.xml | 64 + .../manglsl/memoryBarrierBuffer.xml | 67 + .../manglsl/memoryBarrierImage.xml | 67 + .../manglsl/memoryBarrierShared.xml | 70 + upstream-man-pages/manglsl/min.xml | 139 + upstream-man-pages/manglsl/mix.xml | 154 + upstream-man-pages/manglsl/mod.xml | 97 + upstream-man-pages/manglsl/modf.xml | 92 + upstream-man-pages/manglsl/noise.xml | 100 + upstream-man-pages/manglsl/normalize.xml | 76 + upstream-man-pages/manglsl/not.xml | 71 + upstream-man-pages/manglsl/notEqual.xml | 102 + upstream-man-pages/manglsl/outerProduct.xml | 170 + upstream-man-pages/manglsl/packDouble2x32.xml | 73 + upstream-man-pages/manglsl/packHalf2x16.xml | 76 + upstream-man-pages/manglsl/packUnorm2x16.xml | 109 + upstream-man-pages/manglsl/pow.xml | 85 + upstream-man-pages/manglsl/radians.xml | 79 + upstream-man-pages/manglsl/reflect.xml | 91 + upstream-man-pages/manglsl/refract.xml | 112 + upstream-man-pages/manglsl/round.xml | 83 + upstream-man-pages/manglsl/roundEven.xml | 81 + upstream-man-pages/manglsl/sign.xml | 92 + upstream-man-pages/manglsl/sin.xml | 69 + upstream-man-pages/manglsl/sinh.xml | 95 + upstream-man-pages/manglsl/smoothstep.xml | 127 + upstream-man-pages/manglsl/sqrt.xml | 81 + upstream-man-pages/manglsl/step.xml | 107 + upstream-man-pages/manglsl/tan.xml | 71 + upstream-man-pages/manglsl/tanh.xml | 87 + upstream-man-pages/manglsl/texelFetch.xml | 168 + .../manglsl/texelFetchOffset.xml | 158 + upstream-man-pages/manglsl/texture.xml | 217 + upstream-man-pages/manglsl/textureGather.xml | 178 + .../manglsl/textureGatherOffset.xml | 174 + .../manglsl/textureGatherOffsets.xml | 161 + upstream-man-pages/manglsl/textureGrad.xml | 305 + .../manglsl/textureGradOffset.xml | 210 + upstream-man-pages/manglsl/textureLod.xml | 278 + .../manglsl/textureLodOffset.xml | 171 + upstream-man-pages/manglsl/textureOffset.xml | 184 + upstream-man-pages/manglsl/textureProj.xml | 163 + .../manglsl/textureProjGrad.xml | 185 + .../manglsl/textureProjGradOffset.xml | 203 + upstream-man-pages/manglsl/textureProjLod.xml | 146 + .../manglsl/textureProjLodOffset.xml | 163 + .../manglsl/textureProjOffset.xml | 182 + .../manglsl/textureQueryLevels.xml | 138 + .../manglsl/textureQueryLod.xml | 162 + upstream-man-pages/manglsl/textureSize.xml | 183 + upstream-man-pages/manglsl/top.php | 10 + upstream-man-pages/manglsl/transpose.xml | 141 + upstream-man-pages/manglsl/trunc.xml | 80 + upstream-man-pages/manglsl/uaddCarry.xml | 92 + upstream-man-pages/manglsl/umulExtended.xml | 106 + .../manglsl/unpackDouble2x32.xml | 73 + upstream-man-pages/manglsl/unpackHalf2x16.xml | 79 + .../manglsl/unpackUnorm2x16.xml | 108 + upstream-man-pages/manglsl/usubBorrow.xml | 91 + .../manglsl/xhtml/EmitStreamVertex.xml | 20 + .../manglsl/xhtml/EmitVertex.xml | 18 + .../manglsl/xhtml/EndPrimitive.xml | 18 + .../manglsl/xhtml/EndStreamPrimitive.xml | 19 + upstream-man-pages/manglsl/xhtml/Makefile | 276 + upstream-man-pages/manglsl/xhtml/abs.xml | 15 + upstream-man-pages/manglsl/xhtml/acos.xml | 28 + upstream-man-pages/manglsl/xhtml/acosh.xml | 21 + upstream-man-pages/manglsl/xhtml/all.xml | 28 + upstream-man-pages/manglsl/xhtml/any.xml | 28 + upstream-man-pages/manglsl/xhtml/asin.xml | 37 + upstream-man-pages/manglsl/xhtml/asinh.xml | 20 + upstream-man-pages/manglsl/xhtml/atan.xml | 60 + upstream-man-pages/manglsl/xhtml/atanh.xml | 21 + .../manglsl/xhtml/atomicAdd.xml | 33 + .../manglsl/xhtml/atomicAnd.xml | 33 + .../manglsl/xhtml/atomicCompSwap.xml | 35 + .../manglsl/xhtml/atomicCounter.xml | 17 + .../manglsl/xhtml/atomicCounterDecrement.xml | 17 + .../manglsl/xhtml/atomicCounterIncrement.xml | 17 + .../manglsl/xhtml/atomicExchange.xml | 33 + .../manglsl/xhtml/atomicMax.xml | 33 + .../manglsl/xhtml/atomicMin.xml | 33 + upstream-man-pages/manglsl/xhtml/atomicOr.xml | 33 + .../manglsl/xhtml/atomicXor.xml | 33 + upstream-man-pages/manglsl/xhtml/barrier.xml | 25 + upstream-man-pages/manglsl/xhtml/bitCount.xml | 16 + .../manglsl/xhtml/bitfieldExtract.xml | 27 + .../manglsl/xhtml/bitfieldInsert.xml | 27 + .../manglsl/xhtml/bitfieldReverse.xml | 20 + upstream-man-pages/manglsl/xhtml/ceil.xml | 17 + upstream-man-pages/manglsl/xhtml/clamp.xml | 24 + upstream-man-pages/manglsl/xhtml/cos.xml | 15 + upstream-man-pages/manglsl/xhtml/cosh.xml | 41 + upstream-man-pages/manglsl/xhtml/cross.xml | 85 + upstream-man-pages/manglsl/xhtml/ctop.xsl | 1319 +++++ upstream-man-pages/manglsl/xhtml/dFdx.xml | 20 + upstream-man-pages/manglsl/xhtml/dFdy.xml | 12 + upstream-man-pages/manglsl/xhtml/degrees.xml | 26 + .../manglsl/xhtml/determinant.xml | 16 + upstream-man-pages/manglsl/xhtml/distance.xml | 19 + upstream-man-pages/manglsl/xhtml/dot.xml | 40 + upstream-man-pages/manglsl/xhtml/equal.xml | 25 + upstream-man-pages/manglsl/xhtml/exp.xml | 19 + upstream-man-pages/manglsl/xhtml/exp2.xml | 18 + .../manglsl/xhtml/faceforward.xml | 22 + upstream-man-pages/manglsl/xhtml/findLSB.xml | 16 + upstream-man-pages/manglsl/xhtml/findMSB.xml | 18 + .../manglsl/xhtml/floatBitsToInt.xml | 18 + .../manglsl/xhtml/floatBitsToUint.xml | 12 + upstream-man-pages/manglsl/xhtml/floor.xml | 16 + upstream-man-pages/manglsl/xhtml/fma.xml | 30 + upstream-man-pages/manglsl/xhtml/fract.xml | 17 + upstream-man-pages/manglsl/xhtml/frexp.xml | 34 + upstream-man-pages/manglsl/xhtml/fwidth.xml | 18 + .../manglsl/xhtml/gl_ClipDistance.xml | 65 + .../manglsl/xhtml/gl_FragCoord.xml | 36 + .../manglsl/xhtml/gl_FragDepth.xml | 21 + .../manglsl/xhtml/gl_FrontFacing.xml | 72 + .../manglsl/xhtml/gl_GlobalInvocationID.xml | 20 + .../manglsl/xhtml/gl_InstanceID.xml | 53 + .../manglsl/xhtml/gl_InvocationID.xml | 57 + upstream-man-pages/manglsl/xhtml/gl_Layer.xml | 70 + .../manglsl/xhtml/gl_LocalInvocationID.xml | 21 + .../manglsl/xhtml/gl_LocalInvocationIndex.xml | 22 + .../manglsl/xhtml/gl_NumSamples.xml | 53 + .../manglsl/xhtml/gl_NumWorkGroups.xml | 19 + .../manglsl/xhtml/gl_PatchVerticesIn.xml | 18 + .../manglsl/xhtml/gl_PointCoord.xml | 61 + .../manglsl/xhtml/gl_PointSize.xml | 44 + .../manglsl/xhtml/gl_Position.xml | 81 + .../manglsl/xhtml/gl_PrimitiveID.xml | 67 + .../manglsl/xhtml/gl_PrimitiveIDIn.xml | 56 + .../manglsl/xhtml/gl_SampleID.xml | 25 + .../manglsl/xhtml/gl_SampleMask.xml | 71 + .../manglsl/xhtml/gl_SampleMaskIn.xml | 26 + .../manglsl/xhtml/gl_SamplePosition.xml | 58 + .../manglsl/xhtml/gl_TessCoord.xml | 53 + .../manglsl/xhtml/gl_TessLevelInner.xml | 58 + .../manglsl/xhtml/gl_TessLevelOuter.xml | 58 + .../manglsl/xhtml/gl_VertexID.xml | 53 + .../manglsl/xhtml/gl_ViewportIndex.xml | 32 + .../manglsl/xhtml/gl_WorkGroupID.xml | 19 + .../manglsl/xhtml/gl_WorkGroupSize.xml | 21 + .../manglsl/xhtml/greaterThan.xml | 25 + .../manglsl/xhtml/greaterThanEqual.xml | 25 + .../manglsl/xhtml/groupMemoryBarrier.xml | 18 + .../manglsl/xhtml/imageAtomicAdd.xml | 31 + .../manglsl/xhtml/imageAtomicAnd.xml | 31 + .../manglsl/xhtml/imageAtomicCompSwap.xml | 35 + .../manglsl/xhtml/imageAtomicExchange.xml | 31 + .../manglsl/xhtml/imageAtomicMax.xml | 31 + .../manglsl/xhtml/imageAtomicMin.xml | 31 + .../manglsl/xhtml/imageAtomicOr.xml | 31 + .../manglsl/xhtml/imageAtomicXor.xml | 31 + .../manglsl/xhtml/imageLoad.xml | 31 + .../manglsl/xhtml/imageSize.xml | 20 + .../manglsl/xhtml/imageStore.xml | 33 + .../manglsl/xhtml/imulExtended.xml | 12 + upstream-man-pages/manglsl/xhtml/index.html | 290 + .../manglsl/xhtml/intBitsToFloat.xml | 23 + .../manglsl/xhtml/interpolateAtCentroid.xml | 18 + .../manglsl/xhtml/interpolateAtOffset.xml | 22 + .../manglsl/xhtml/interpolateAtSample.xml | 21 + upstream-man-pages/manglsl/xhtml/inverse.xml | 17 + .../manglsl/xhtml/inversesqrt.xml | 18 + upstream-man-pages/manglsl/xhtml/isinf.xml | 16 + upstream-man-pages/manglsl/xhtml/isnan.xml | 16 + upstream-man-pages/manglsl/xhtml/ldexp.xml | 30 + upstream-man-pages/manglsl/xhtml/length.xml | 38 + upstream-man-pages/manglsl/xhtml/lessThan.xml | 25 + .../manglsl/xhtml/lessThanEqual.xml | 25 + upstream-man-pages/manglsl/xhtml/log.xml | 20 + upstream-man-pages/manglsl/xhtml/log2.xml | 20 + upstream-man-pages/manglsl/xhtml/makeindex.pl | 272 + upstream-man-pages/manglsl/xhtml/mathml.xsl | 42 + .../manglsl/xhtml/matrixCompMult.xml | 21 + upstream-man-pages/manglsl/xhtml/max.xml | 20 + .../manglsl/xhtml/memoryBarrier.xml | 30 + .../xhtml/memoryBarrierAtomicCounter.xml | 20 + .../manglsl/xhtml/memoryBarrierBuffer.xml | 23 + .../manglsl/xhtml/memoryBarrierImage.xml | 23 + .../manglsl/xhtml/memoryBarrierShared.xml | 25 + upstream-man-pages/manglsl/xhtml/min.xml | 20 + upstream-man-pages/manglsl/xhtml/mix.xml | 40 + upstream-man-pages/manglsl/xhtml/mod.xml | 18 + upstream-man-pages/manglsl/xhtml/modf.xml | 21 + upstream-man-pages/manglsl/xhtml/noise.xml | 18 + .../manglsl/xhtml/normalize.xml | 15 + upstream-man-pages/manglsl/xhtml/not.xml | 17 + upstream-man-pages/manglsl/xhtml/notEqual.xml | 25 + .../manglsl/xhtml/opengl-man.css | 91 + .../manglsl/xhtml/opengl-man.xsl | 50 + .../manglsl/xhtml/outerProduct.xml | 21 + .../manglsl/xhtml/packDouble2x32.xml | 19 + .../manglsl/xhtml/packHalf2x16.xml | 22 + .../manglsl/xhtml/packSnorm2x16.xml | 12 + .../manglsl/xhtml/packSnorm4x8.xml | 12 + .../manglsl/xhtml/packUnorm2x16.xml | 27 + .../manglsl/xhtml/packUnorm4x8.xml | 12 + upstream-man-pages/manglsl/xhtml/pmathml.xsl | 615 +++ .../manglsl/xhtml/pmathmlcss.xsl | 873 +++ .../manglsl/xhtml/postprocess.sed | 3 + upstream-man-pages/manglsl/xhtml/pow.xml | 24 + .../manglsl/xhtml/preprocess.sed | 13 + upstream-man-pages/manglsl/xhtml/radians.xml | 25 + upstream-man-pages/manglsl/xhtml/reflect.xml | 21 + upstream-man-pages/manglsl/xhtml/refract.xml | 32 + upstream-man-pages/manglsl/xhtml/round.xml | 20 + .../manglsl/xhtml/roundEven.xml | 18 + upstream-man-pages/manglsl/xhtml/sign.xml | 20 + upstream-man-pages/manglsl/xhtml/sin.xml | 15 + upstream-man-pages/manglsl/xhtml/sinh.xml | 41 + .../manglsl/xhtml/smoothstep.xml | 30 + upstream-man-pages/manglsl/xhtml/sqrt.xml | 18 + upstream-man-pages/manglsl/xhtml/start.html | 58 + upstream-man-pages/manglsl/xhtml/step.xml | 21 + upstream-man-pages/manglsl/xhtml/tan.xml | 17 + upstream-man-pages/manglsl/xhtml/tanh.xml | 33 + .../manglsl/xhtml/texelFetch.xml | 42 + .../manglsl/xhtml/texelFetchOffset.xml | 43 + upstream-man-pages/manglsl/xhtml/texture.xml | 50 + .../manglsl/xhtml/textureGather.xml | 48 + .../manglsl/xhtml/textureGatherOffset.xml | 55 + .../manglsl/xhtml/textureGatherOffsets.xml | 45 + .../manglsl/xhtml/textureGrad.xml | 140 + .../manglsl/xhtml/textureGradOffset.xml | 45 + .../manglsl/xhtml/textureLod.xml | 149 + .../manglsl/xhtml/textureLodOffset.xml | 41 + .../manglsl/xhtml/textureOffset.xml | 45 + .../manglsl/xhtml/textureProj.xml | 41 + .../manglsl/xhtml/textureProjGrad.xml | 44 + .../manglsl/xhtml/textureProjGradOffset.xml | 46 + .../manglsl/xhtml/textureProjLod.xml | 42 + .../manglsl/xhtml/textureProjLodOffset.xml | 46 + .../manglsl/xhtml/textureProjOffset.xml | 44 + .../manglsl/xhtml/textureQueryLevels.xml | 35 + .../manglsl/xhtml/textureQueryLod.xml | 40 + .../manglsl/xhtml/textureSize.xml | 37 + .../manglsl/xhtml/transpose.xml | 16 + upstream-man-pages/manglsl/xhtml/trunc.xml | 17 + .../manglsl/xhtml/uaddCarry.xml | 24 + .../manglsl/xhtml/uintBitsToFloat.xml | 12 + .../manglsl/xhtml/umulExtended.xml | 25 + .../manglsl/xhtml/unpackDouble2x32.xml | 19 + .../manglsl/xhtml/unpackHalf2x16.xml | 25 + .../manglsl/xhtml/unpackSnorm2x16.xml | 12 + .../manglsl/xhtml/unpackSnorm4x8.xml | 12 + .../manglsl/xhtml/unpackUnorm2x16.xml | 26 + .../manglsl/xhtml/unpackUnorm4x8.xml | 12 + .../manglsl/xhtml/usubBorrow.xml | 23 + .../manglsl/xhtml/xhtml-lat1.ent | 196 + .../manglsl/xhtml/xhtml-special.ent | 80 + .../manglsl/xhtml/xhtml-symbol.ent | 237 + .../manglsl/xhtml/xhtml1-transitional.dtd | 1201 ++++ upstream-man-pages/update | 8 + 2166 files changed, 363056 insertions(+) create mode 100644 upstream-man-pages/man2/Makefile create mode 100644 upstream-man-pages/man2/README.txt create mode 100644 upstream-man-pages/man2/bottom.php create mode 100644 upstream-man-pages/man2/docs/Viewing_XHTML_and_MathML.html create mode 100644 upstream-man-pages/man2/docs/XML_Toolchain_and_Man_Pages.html create mode 100644 upstream-man-pages/man2/fo/Makefile create mode 100644 upstream-man-pages/man2/fo/glTexGen.fo create mode 100644 upstream-man-pages/man2/fo/glTexGen.pdf create mode 100644 upstream-man-pages/man2/foo create mode 100644 upstream-man-pages/man2/glAccum.xml create mode 100644 upstream-man-pages/man2/glActiveTexture.xml create mode 100644 upstream-man-pages/man2/glAlphaFunc.xml create mode 100644 upstream-man-pages/man2/glAreTexturesResident.xml create mode 100644 upstream-man-pages/man2/glArrayElement.xml create mode 100644 upstream-man-pages/man2/glAttachShader.xml create mode 100644 upstream-man-pages/man2/glBegin.xml create mode 100644 upstream-man-pages/man2/glBeginQuery.xml create mode 100644 upstream-man-pages/man2/glBindAttribLocation.xml create mode 100644 upstream-man-pages/man2/glBindBuffer.xml create mode 100644 upstream-man-pages/man2/glBindTexture.xml create mode 100644 upstream-man-pages/man2/glBitmap.xml create mode 100644 upstream-man-pages/man2/glBlendColor.xml create mode 100644 upstream-man-pages/man2/glBlendEquation.xml create mode 100644 upstream-man-pages/man2/glBlendEquationSeparate.xml create mode 100644 upstream-man-pages/man2/glBlendFunc.xml create mode 100644 upstream-man-pages/man2/glBlendFuncSeparate.xml create mode 100644 upstream-man-pages/man2/glBufferData.xml create mode 100644 upstream-man-pages/man2/glBufferSubData.xml create mode 100644 upstream-man-pages/man2/glCallList.xml create mode 100644 upstream-man-pages/man2/glCallLists.xml create mode 100644 upstream-man-pages/man2/glClear.xml create mode 100644 upstream-man-pages/man2/glClearAccum.xml create mode 100644 upstream-man-pages/man2/glClearColor.xml create mode 100644 upstream-man-pages/man2/glClearDepth.xml create mode 100644 upstream-man-pages/man2/glClearIndex.xml create mode 100644 upstream-man-pages/man2/glClearStencil.xml create mode 100644 upstream-man-pages/man2/glClientActiveTexture.xml create mode 100644 upstream-man-pages/man2/glClipPlane.xml create mode 100644 upstream-man-pages/man2/glColor.xml create mode 100644 upstream-man-pages/man2/glColorMask.xml create mode 100644 upstream-man-pages/man2/glColorMaterial.xml create mode 100644 upstream-man-pages/man2/glColorPointer.xml create mode 100644 upstream-man-pages/man2/glColorSubTable.xml create mode 100644 upstream-man-pages/man2/glColorTable.xml create mode 100644 upstream-man-pages/man2/glColorTableParameter.xml create mode 100644 upstream-man-pages/man2/glCompileShader.xml create mode 100644 upstream-man-pages/man2/glCompressedTexImage1D.xml create mode 100644 upstream-man-pages/man2/glCompressedTexImage2D.xml create mode 100644 upstream-man-pages/man2/glCompressedTexImage3D.xml create mode 100644 upstream-man-pages/man2/glCompressedTexSubImage1D.xml create mode 100644 upstream-man-pages/man2/glCompressedTexSubImage2D.xml create mode 100644 upstream-man-pages/man2/glCompressedTexSubImage3D.xml create mode 100644 upstream-man-pages/man2/glConvolutionFilter1D.xml create mode 100644 upstream-man-pages/man2/glConvolutionFilter2D.xml create mode 100644 upstream-man-pages/man2/glConvolutionParameter.xml create mode 100644 upstream-man-pages/man2/glCopyColorSubTable.xml create mode 100644 upstream-man-pages/man2/glCopyColorTable.xml create mode 100644 upstream-man-pages/man2/glCopyConvolutionFilter1D.xml create mode 100644 upstream-man-pages/man2/glCopyConvolutionFilter2D.xml create mode 100644 upstream-man-pages/man2/glCopyPixels.xml create mode 100644 upstream-man-pages/man2/glCopyTexImage1D.xml create mode 100644 upstream-man-pages/man2/glCopyTexImage2D.xml create mode 100644 upstream-man-pages/man2/glCopyTexSubImage1D.xml create mode 100644 upstream-man-pages/man2/glCopyTexSubImage2D.xml create mode 100644 upstream-man-pages/man2/glCopyTexSubImage3D.xml create mode 100644 upstream-man-pages/man2/glCreateProgram.xml create mode 100644 upstream-man-pages/man2/glCreateShader.xml create mode 100644 upstream-man-pages/man2/glCullFace.xml create mode 100644 upstream-man-pages/man2/glDeleteBuffers.xml create mode 100644 upstream-man-pages/man2/glDeleteLists.xml create mode 100644 upstream-man-pages/man2/glDeleteProgram.xml create mode 100644 upstream-man-pages/man2/glDeleteQueries.xml create mode 100644 upstream-man-pages/man2/glDeleteShader.xml create mode 100644 upstream-man-pages/man2/glDeleteTextures.xml create mode 100644 upstream-man-pages/man2/glDepthFunc.xml create mode 100644 upstream-man-pages/man2/glDepthMask.xml create mode 100644 upstream-man-pages/man2/glDepthRange.xml create mode 100644 upstream-man-pages/man2/glDetachShader.xml create mode 100644 upstream-man-pages/man2/glDrawArrays.xml create mode 100644 upstream-man-pages/man2/glDrawBuffer.xml create mode 100644 upstream-man-pages/man2/glDrawBuffers.xml create mode 100644 upstream-man-pages/man2/glDrawElements.xml create mode 100644 upstream-man-pages/man2/glDrawPixels.xml create mode 100644 upstream-man-pages/man2/glDrawRangeElements.xml create mode 100644 upstream-man-pages/man2/glEdgeFlag.xml create mode 100644 upstream-man-pages/man2/glEdgeFlagPointer.xml create mode 100644 upstream-man-pages/man2/glEnable.xml create mode 100644 upstream-man-pages/man2/glEnableClientState.xml create mode 100644 upstream-man-pages/man2/glEnableVertexAttribArray.xml create mode 100644 upstream-man-pages/man2/glEvalCoord.xml create mode 100644 upstream-man-pages/man2/glEvalMesh.xml create mode 100644 upstream-man-pages/man2/glEvalPoint.xml create mode 100644 upstream-man-pages/man2/glFeedbackBuffer.xml create mode 100644 upstream-man-pages/man2/glFinish.xml create mode 100644 upstream-man-pages/man2/glFlush.xml create mode 100644 upstream-man-pages/man2/glFog.xml create mode 100644 upstream-man-pages/man2/glFogCoord.xml create mode 100644 upstream-man-pages/man2/glFogCoordPointer.xml create mode 100644 upstream-man-pages/man2/glFrontFace.xml create mode 100644 upstream-man-pages/man2/glFrustum.xml create mode 100644 upstream-man-pages/man2/glGenBuffers.xml create mode 100644 upstream-man-pages/man2/glGenLists.xml create mode 100644 upstream-man-pages/man2/glGenQueries.xml create mode 100644 upstream-man-pages/man2/glGenTextures.xml create mode 100644 upstream-man-pages/man2/glGet.xml create mode 100644 upstream-man-pages/man2/glGetActiveAttrib.xml create mode 100644 upstream-man-pages/man2/glGetActiveUniform.xml create mode 100644 upstream-man-pages/man2/glGetAttachedShaders.xml create mode 100644 upstream-man-pages/man2/glGetAttribLocation.xml create mode 100644 upstream-man-pages/man2/glGetBufferParameteriv.xml create mode 100644 upstream-man-pages/man2/glGetBufferPointerv.xml create mode 100644 upstream-man-pages/man2/glGetBufferSubData.xml create mode 100644 upstream-man-pages/man2/glGetClipPlane.xml create mode 100644 upstream-man-pages/man2/glGetColorTable.xml create mode 100644 upstream-man-pages/man2/glGetColorTableParameter.xml create mode 100644 upstream-man-pages/man2/glGetCompressedTexImage.xml create mode 100644 upstream-man-pages/man2/glGetConvolutionFilter.xml create mode 100644 upstream-man-pages/man2/glGetConvolutionParameter.xml create mode 100644 upstream-man-pages/man2/glGetError.xml create mode 100644 upstream-man-pages/man2/glGetHistogram.xml create mode 100644 upstream-man-pages/man2/glGetHistogramParameter.xml create mode 100644 upstream-man-pages/man2/glGetLight.xml create mode 100644 upstream-man-pages/man2/glGetMap.xml create mode 100644 upstream-man-pages/man2/glGetMaterial.xml create mode 100644 upstream-man-pages/man2/glGetMinmax.xml create mode 100644 upstream-man-pages/man2/glGetMinmaxParameter.xml create mode 100644 upstream-man-pages/man2/glGetPixelMap.xml create mode 100644 upstream-man-pages/man2/glGetPointerv.xml create mode 100644 upstream-man-pages/man2/glGetPolygonStipple.xml create mode 100644 upstream-man-pages/man2/glGetProgram.xml create mode 100644 upstream-man-pages/man2/glGetProgramInfoLog.xml create mode 100644 upstream-man-pages/man2/glGetQueryObject.xml create mode 100644 upstream-man-pages/man2/glGetQueryiv.xml create mode 100644 upstream-man-pages/man2/glGetSeparableFilter.xml create mode 100644 upstream-man-pages/man2/glGetShader.xml create mode 100644 upstream-man-pages/man2/glGetShaderInfoLog.xml create mode 100644 upstream-man-pages/man2/glGetShaderSource.xml create mode 100644 upstream-man-pages/man2/glGetString.xml create mode 100644 upstream-man-pages/man2/glGetTexEnv.xml create mode 100644 upstream-man-pages/man2/glGetTexGen.xml create mode 100644 upstream-man-pages/man2/glGetTexImage.xml create mode 100644 upstream-man-pages/man2/glGetTexLevelParameter.xml create mode 100644 upstream-man-pages/man2/glGetTexParameter.xml create mode 100644 upstream-man-pages/man2/glGetUniform.xml create mode 100644 upstream-man-pages/man2/glGetUniformLocation.xml create mode 100644 upstream-man-pages/man2/glGetVertexAttrib.xml create mode 100644 upstream-man-pages/man2/glGetVertexAttribPointerv.xml create mode 100644 upstream-man-pages/man2/glHint.xml create mode 100644 upstream-man-pages/man2/glHistogram.xml create mode 100644 upstream-man-pages/man2/glIndex.xml create mode 100644 upstream-man-pages/man2/glIndexMask.xml create mode 100644 upstream-man-pages/man2/glIndexPointer.xml create mode 100644 upstream-man-pages/man2/glInitNames.xml create mode 100644 upstream-man-pages/man2/glInterleavedArrays.xml create mode 100644 upstream-man-pages/man2/glIsBuffer.xml create mode 100644 upstream-man-pages/man2/glIsEnabled.xml create mode 100644 upstream-man-pages/man2/glIsList.xml create mode 100644 upstream-man-pages/man2/glIsProgram.xml create mode 100644 upstream-man-pages/man2/glIsQuery.xml create mode 100644 upstream-man-pages/man2/glIsShader.xml create mode 100644 upstream-man-pages/man2/glIsTexture.xml create mode 100644 upstream-man-pages/man2/glLight.xml create mode 100644 upstream-man-pages/man2/glLightModel.xml create mode 100644 upstream-man-pages/man2/glLineStipple.xml create mode 100644 upstream-man-pages/man2/glLineWidth.xml create mode 100644 upstream-man-pages/man2/glLinkProgram.xml create mode 100644 upstream-man-pages/man2/glListBase.xml create mode 100644 upstream-man-pages/man2/glLoadIdentity.xml create mode 100644 upstream-man-pages/man2/glLoadMatrix.xml create mode 100644 upstream-man-pages/man2/glLoadName.xml create mode 100644 upstream-man-pages/man2/glLoadTransposeMatrix.xml create mode 100644 upstream-man-pages/man2/glLogicOp.xml create mode 100644 upstream-man-pages/man2/glMap1.xml create mode 100644 upstream-man-pages/man2/glMap2.xml create mode 100644 upstream-man-pages/man2/glMapBuffer.xml create mode 100644 upstream-man-pages/man2/glMapGrid.xml create mode 100644 upstream-man-pages/man2/glMaterial.xml create mode 100644 upstream-man-pages/man2/glMatrixMode.xml create mode 100644 upstream-man-pages/man2/glMinmax.xml create mode 100644 upstream-man-pages/man2/glMultMatrix.xml create mode 100644 upstream-man-pages/man2/glMultTransposeMatrix.xml create mode 100644 upstream-man-pages/man2/glMultiDrawArrays.xml create mode 100644 upstream-man-pages/man2/glMultiDrawElements.xml create mode 100644 upstream-man-pages/man2/glMultiTexCoord.xml create mode 100644 upstream-man-pages/man2/glNewList.xml create mode 100644 upstream-man-pages/man2/glNormal.xml create mode 100644 upstream-man-pages/man2/glNormalPointer.xml create mode 100644 upstream-man-pages/man2/glOrtho.xml create mode 100644 upstream-man-pages/man2/glPassThrough.xml create mode 100644 upstream-man-pages/man2/glPixelMap.xml create mode 100644 upstream-man-pages/man2/glPixelStore.xml create mode 100644 upstream-man-pages/man2/glPixelTransfer.xml create mode 100644 upstream-man-pages/man2/glPixelZoom.xml create mode 100644 upstream-man-pages/man2/glPointParameter.xml create mode 100644 upstream-man-pages/man2/glPointSize.xml create mode 100644 upstream-man-pages/man2/glPolygonMode.xml create mode 100644 upstream-man-pages/man2/glPolygonOffset.xml create mode 100644 upstream-man-pages/man2/glPolygonStipple.xml create mode 100644 upstream-man-pages/man2/glPrioritizeTextures.xml create mode 100644 upstream-man-pages/man2/glPushAttrib.xml create mode 100644 upstream-man-pages/man2/glPushClientAttrib.xml create mode 100644 upstream-man-pages/man2/glPushMatrix.xml create mode 100644 upstream-man-pages/man2/glPushName.xml create mode 100644 upstream-man-pages/man2/glRasterPos.xml create mode 100644 upstream-man-pages/man2/glReadBuffer.xml create mode 100644 upstream-man-pages/man2/glReadPixels.xml create mode 100644 upstream-man-pages/man2/glRect.xml create mode 100644 upstream-man-pages/man2/glRenderMode.xml create mode 100644 upstream-man-pages/man2/glResetHistogram.xml create mode 100644 upstream-man-pages/man2/glResetMinmax.xml create mode 100644 upstream-man-pages/man2/glRotate.xml create mode 100644 upstream-man-pages/man2/glSampleCoverage.xml create mode 100644 upstream-man-pages/man2/glScale.xml create mode 100644 upstream-man-pages/man2/glScissor.xml create mode 100644 upstream-man-pages/man2/glSecondaryColor.xml create mode 100644 upstream-man-pages/man2/glSecondaryColorPointer.xml create mode 100644 upstream-man-pages/man2/glSelectBuffer.xml create mode 100644 upstream-man-pages/man2/glSeparableFilter2D.xml create mode 100644 upstream-man-pages/man2/glShadeModel.xml create mode 100644 upstream-man-pages/man2/glShaderSource.xml create mode 100644 upstream-man-pages/man2/glStencilFunc.xml create mode 100644 upstream-man-pages/man2/glStencilFuncSeparate.xml create mode 100644 upstream-man-pages/man2/glStencilMask.xml create mode 100644 upstream-man-pages/man2/glStencilMaskSeparate.xml create mode 100644 upstream-man-pages/man2/glStencilOp.xml create mode 100644 upstream-man-pages/man2/glStencilOpSeparate.xml create mode 100644 upstream-man-pages/man2/glTexCoord.xml create mode 100644 upstream-man-pages/man2/glTexCoordPointer.xml create mode 100644 upstream-man-pages/man2/glTexEnv.xml create mode 100644 upstream-man-pages/man2/glTexGen.xml create mode 100644 upstream-man-pages/man2/glTexImage1D.xml create mode 100644 upstream-man-pages/man2/glTexImage2D.xml create mode 100644 upstream-man-pages/man2/glTexImage3D.xml create mode 100644 upstream-man-pages/man2/glTexParameter.xml create mode 100644 upstream-man-pages/man2/glTexSubImage1D.xml create mode 100644 upstream-man-pages/man2/glTexSubImage2D.xml create mode 100644 upstream-man-pages/man2/glTexSubImage3D.xml create mode 100644 upstream-man-pages/man2/glTranslate.xml create mode 100644 upstream-man-pages/man2/glUniform.xml create mode 100644 upstream-man-pages/man2/glUseProgram.xml create mode 100644 upstream-man-pages/man2/glValidateProgram.xml create mode 100644 upstream-man-pages/man2/glVertex.xml create mode 100644 upstream-man-pages/man2/glVertexAttrib.xml create mode 100644 upstream-man-pages/man2/glVertexAttribPointer.xml create mode 100644 upstream-man-pages/man2/glVertexPointer.xml create mode 100644 upstream-man-pages/man2/glViewport.xml create mode 100644 upstream-man-pages/man2/glWindowPos.xml create mode 100644 upstream-man-pages/man2/glXChooseFBConfig.xml create mode 100644 upstream-man-pages/man2/glXChooseVisual.xml create mode 100644 upstream-man-pages/man2/glXCopyContext.xml create mode 100644 upstream-man-pages/man2/glXCreateContext.xml create mode 100644 upstream-man-pages/man2/glXCreateGLXPixmap.xml create mode 100644 upstream-man-pages/man2/glXCreateNewContext.xml create mode 100644 upstream-man-pages/man2/glXCreatePbuffer.xml create mode 100644 upstream-man-pages/man2/glXCreatePixmap.xml create mode 100644 upstream-man-pages/man2/glXCreateWindow.xml create mode 100644 upstream-man-pages/man2/glXDestroyContext.xml create mode 100644 upstream-man-pages/man2/glXDestroyGLXPixmap.xml create mode 100644 upstream-man-pages/man2/glXDestroyPbuffer.xml create mode 100644 upstream-man-pages/man2/glXDestroyPixmap.xml create mode 100644 upstream-man-pages/man2/glXDestroyWindow.xml create mode 100644 upstream-man-pages/man2/glXFreeContextEXT.xml create mode 100644 upstream-man-pages/man2/glXGetClientString.xml create mode 100644 upstream-man-pages/man2/glXGetConfig.xml create mode 100644 upstream-man-pages/man2/glXGetContextIDEXT.xml create mode 100644 upstream-man-pages/man2/glXGetCurrentContext.xml create mode 100644 upstream-man-pages/man2/glXGetCurrentDisplay.xml create mode 100644 upstream-man-pages/man2/glXGetCurrentDrawable.xml create mode 100644 upstream-man-pages/man2/glXGetCurrentReadDrawable.xml create mode 100644 upstream-man-pages/man2/glXGetFBConfigAttrib.xml create mode 100644 upstream-man-pages/man2/glXGetFBConfigs.xml create mode 100644 upstream-man-pages/man2/glXGetProcAddress.xml create mode 100644 upstream-man-pages/man2/glXGetSelectedEvent.xml create mode 100644 upstream-man-pages/man2/glXGetVisualFromFBConfig.xml create mode 100644 upstream-man-pages/man2/glXImportContextEXT.xml create mode 100644 upstream-man-pages/man2/glXIntro.xml create mode 100644 upstream-man-pages/man2/glXIsDirect.xml create mode 100644 upstream-man-pages/man2/glXMakeContextCurrent.xml create mode 100644 upstream-man-pages/man2/glXMakeCurrent.xml create mode 100644 upstream-man-pages/man2/glXQueryContext.xml create mode 100644 upstream-man-pages/man2/glXQueryContextInfoEXT.xml create mode 100755 upstream-man-pages/man2/glXQueryDrawable.xml create mode 100644 upstream-man-pages/man2/glXQueryExtension.xml create mode 100644 upstream-man-pages/man2/glXQueryExtensionsString.xml create mode 100644 upstream-man-pages/man2/glXQueryServerString.xml create mode 100644 upstream-man-pages/man2/glXQueryVersion.xml create mode 100644 upstream-man-pages/man2/glXSelectEvent.xml create mode 100644 upstream-man-pages/man2/glXSwapBuffers.xml create mode 100644 upstream-man-pages/man2/glXUseXFont.xml create mode 100644 upstream-man-pages/man2/glXWaitGL.xml create mode 100644 upstream-man-pages/man2/glXWaitX.xml create mode 100644 upstream-man-pages/man2/gluBeginCurve.xml create mode 100644 upstream-man-pages/man2/gluBeginPolygon.xml create mode 100644 upstream-man-pages/man2/gluBeginSurface.xml create mode 100644 upstream-man-pages/man2/gluBeginTrim.xml create mode 100644 upstream-man-pages/man2/gluBuild1DMipmapLevels.xml create mode 100644 upstream-man-pages/man2/gluBuild1DMipmaps.xml create mode 100644 upstream-man-pages/man2/gluBuild2DMipmapLevels.xml create mode 100644 upstream-man-pages/man2/gluBuild2DMipmaps.xml create mode 100644 upstream-man-pages/man2/gluBuild3DMipmapLevels.xml create mode 100644 upstream-man-pages/man2/gluBuild3DMipmaps.xml create mode 100644 upstream-man-pages/man2/gluCheckExtension.xml create mode 100644 upstream-man-pages/man2/gluCylinder.xml create mode 100644 upstream-man-pages/man2/gluDeleteNurbsRenderer.xml create mode 100644 upstream-man-pages/man2/gluDeleteQuadric.xml create mode 100644 upstream-man-pages/man2/gluDeleteTess.xml create mode 100644 upstream-man-pages/man2/gluDisk.xml create mode 100644 upstream-man-pages/man2/gluErrorString.xml create mode 100644 upstream-man-pages/man2/gluGetNurbsProperty.xml create mode 100644 upstream-man-pages/man2/gluGetString.xml create mode 100644 upstream-man-pages/man2/gluGetTessProperty.xml create mode 100644 upstream-man-pages/man2/gluLoadSamplingMatrices.xml create mode 100644 upstream-man-pages/man2/gluLookAt.xml create mode 100644 upstream-man-pages/man2/gluNewNurbsRenderer.xml create mode 100644 upstream-man-pages/man2/gluNewQuadric.xml create mode 100644 upstream-man-pages/man2/gluNewTess.xml create mode 100644 upstream-man-pages/man2/gluNextContour.xml create mode 100644 upstream-man-pages/man2/gluNurbsCallback.xml create mode 100644 upstream-man-pages/man2/gluNurbsCallbackData.xml create mode 100644 upstream-man-pages/man2/gluNurbsCallbackDataEXT.xml create mode 100644 upstream-man-pages/man2/gluNurbsCurve.xml create mode 100644 upstream-man-pages/man2/gluNurbsProperty.xml create mode 100644 upstream-man-pages/man2/gluNurbsSurface.xml create mode 100644 upstream-man-pages/man2/gluOrtho2D.xml create mode 100644 upstream-man-pages/man2/gluPartialDisk.xml create mode 100644 upstream-man-pages/man2/gluPerspective.xml create mode 100644 upstream-man-pages/man2/gluPickMatrix.xml create mode 100644 upstream-man-pages/man2/gluProject.xml create mode 100644 upstream-man-pages/man2/gluPwlCurve.xml create mode 100644 upstream-man-pages/man2/gluQuadricCallback.xml create mode 100644 upstream-man-pages/man2/gluQuadricDrawStyle.xml create mode 100644 upstream-man-pages/man2/gluQuadricNormals.xml create mode 100644 upstream-man-pages/man2/gluQuadricOrientation.xml create mode 100644 upstream-man-pages/man2/gluQuadricTexture.xml create mode 100644 upstream-man-pages/man2/gluScaleImage.xml create mode 100644 upstream-man-pages/man2/gluSphere.xml create mode 100644 upstream-man-pages/man2/gluTessBeginContour.xml create mode 100644 upstream-man-pages/man2/gluTessBeginPolygon.xml create mode 100644 upstream-man-pages/man2/gluTessCallback.xml create mode 100644 upstream-man-pages/man2/gluTessEndPolygon.xml create mode 100644 upstream-man-pages/man2/gluTessNormal.xml create mode 100644 upstream-man-pages/man2/gluTessProperty.xml create mode 100644 upstream-man-pages/man2/gluTessVertex.xml create mode 100644 upstream-man-pages/man2/gluUnProject.xml create mode 100644 upstream-man-pages/man2/gluUnProject4.xml create mode 100644 upstream-man-pages/man2/index.php create mode 100644 upstream-man-pages/man2/pdf/DejaVuSans.ttf create mode 100644 upstream-man-pages/man2/pdf/Makefile create mode 100644 upstream-man-pages/man2/pdf/footer create mode 100644 upstream-man-pages/man2/pdf/header create mode 100644 upstream-man-pages/man2/pdf/ogl_prep_xml.xsl create mode 100644 upstream-man-pages/man2/pdf/opengl-pdf.xsl create mode 100644 upstream-man-pages/man2/top.php create mode 100644 upstream-man-pages/man2/usr/include/make/commondefs create mode 100644 upstream-man-pages/man2/usr/include/make/commonrules create mode 100644 upstream-man-pages/man2/usr/include/make/commonrules.win32 create mode 100644 upstream-man-pages/man2/usr/include/make/linuxdefs create mode 100644 upstream-man-pages/man2/xhtml/Makefile create mode 100644 upstream-man-pages/man2/xhtml/ctop.xsl create mode 100644 upstream-man-pages/man2/xhtml/glAccum.xml create mode 100644 upstream-man-pages/man2/xhtml/glActiveTexture.xml create mode 100644 upstream-man-pages/man2/xhtml/glAlphaFunc.xml create mode 100644 upstream-man-pages/man2/xhtml/glAreTexturesResident.xml create mode 100644 upstream-man-pages/man2/xhtml/glArrayElement.xml create mode 100644 upstream-man-pages/man2/xhtml/glAttachShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glBegin.xml create mode 100644 upstream-man-pages/man2/xhtml/glBeginQuery.xml create mode 100644 upstream-man-pages/man2/xhtml/glBindAttribLocation.xml create mode 100644 upstream-man-pages/man2/xhtml/glBindBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glBindTexture.xml create mode 100644 upstream-man-pages/man2/xhtml/glBitmap.xml create mode 100644 upstream-man-pages/man2/xhtml/glBlendColor.xml create mode 100644 upstream-man-pages/man2/xhtml/glBlendEquation.xml create mode 100644 upstream-man-pages/man2/xhtml/glBlendEquationSeparate.xml create mode 100644 upstream-man-pages/man2/xhtml/glBlendFunc.xml create mode 100644 upstream-man-pages/man2/xhtml/glBlendFuncSeparate.xml create mode 100644 upstream-man-pages/man2/xhtml/glBufferData.xml create mode 100644 upstream-man-pages/man2/xhtml/glBufferSubData.xml create mode 100644 upstream-man-pages/man2/xhtml/glCallList.xml create mode 100644 upstream-man-pages/man2/xhtml/glCallLists.xml create mode 100644 upstream-man-pages/man2/xhtml/glClear.xml create mode 100644 upstream-man-pages/man2/xhtml/glClearAccum.xml create mode 100644 upstream-man-pages/man2/xhtml/glClearColor.xml create mode 100644 upstream-man-pages/man2/xhtml/glClearDepth.xml create mode 100644 upstream-man-pages/man2/xhtml/glClearIndex.xml create mode 100644 upstream-man-pages/man2/xhtml/glClearStencil.xml create mode 100644 upstream-man-pages/man2/xhtml/glClientActiveTexture.xml create mode 100644 upstream-man-pages/man2/xhtml/glClipPlane.xml create mode 100644 upstream-man-pages/man2/xhtml/glColor.xml create mode 100644 upstream-man-pages/man2/xhtml/glColor4.xml create mode 100644 upstream-man-pages/man2/xhtml/glColorMask.xml create mode 100644 upstream-man-pages/man2/xhtml/glColorMaterial.xml create mode 100644 upstream-man-pages/man2/xhtml/glColorPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glColorSubTable.xml create mode 100644 upstream-man-pages/man2/xhtml/glColorTable.xml create mode 100644 upstream-man-pages/man2/xhtml/glColorTableParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompileShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompressedTexImage1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompressedTexImage2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompressedTexImage3D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompressedTexSubImage1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompressedTexSubImage2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCompressedTexSubImage3D.xml create mode 100644 upstream-man-pages/man2/xhtml/glConvolutionFilter1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glConvolutionFilter2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glConvolutionParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyColorSubTable.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyColorTable.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyConvolutionFilter1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyConvolutionFilter2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyPixels.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyTexImage1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyTexImage2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyTexSubImage1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyTexSubImage2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCopyTexSubImage3D.xml create mode 100644 upstream-man-pages/man2/xhtml/glCreateProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glCreateShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glCullFace.xml create mode 100644 upstream-man-pages/man2/xhtml/glDeleteBuffers.xml create mode 100644 upstream-man-pages/man2/xhtml/glDeleteLists.xml create mode 100644 upstream-man-pages/man2/xhtml/glDeleteProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glDeleteQueries.xml create mode 100644 upstream-man-pages/man2/xhtml/glDeleteShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glDeleteTextures.xml create mode 100644 upstream-man-pages/man2/xhtml/glDepthFunc.xml create mode 100644 upstream-man-pages/man2/xhtml/glDepthMask.xml create mode 100644 upstream-man-pages/man2/xhtml/glDepthRange.xml create mode 100644 upstream-man-pages/man2/xhtml/glDetachShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glDisable.xml create mode 100644 upstream-man-pages/man2/xhtml/glDisableClientState.xml create mode 100644 upstream-man-pages/man2/xhtml/glDisableVertexAttribArray.xml create mode 100644 upstream-man-pages/man2/xhtml/glDrawArrays.xml create mode 100644 upstream-man-pages/man2/xhtml/glDrawBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glDrawBuffers.xml create mode 100644 upstream-man-pages/man2/xhtml/glDrawElements.xml create mode 100644 upstream-man-pages/man2/xhtml/glDrawPixels.xml create mode 100644 upstream-man-pages/man2/xhtml/glDrawRangeElements.xml create mode 100644 upstream-man-pages/man2/xhtml/glEdgeFlag.xml create mode 100644 upstream-man-pages/man2/xhtml/glEdgeFlagPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glEnable.xml create mode 100644 upstream-man-pages/man2/xhtml/glEnableClientState.xml create mode 100644 upstream-man-pages/man2/xhtml/glEnableVertexAttribArray.xml create mode 100644 upstream-man-pages/man2/xhtml/glEnd.xml create mode 100644 upstream-man-pages/man2/xhtml/glEndList.xml create mode 100644 upstream-man-pages/man2/xhtml/glEndQuery.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalCoord.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalCoord1.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalCoord2.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalMesh.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalMesh1.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalMesh2.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalPoint.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalPoint1.xml create mode 100644 upstream-man-pages/man2/xhtml/glEvalPoint2.xml create mode 100644 upstream-man-pages/man2/xhtml/glFeedbackBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glFinish.xml create mode 100644 upstream-man-pages/man2/xhtml/glFlush.xml create mode 100644 upstream-man-pages/man2/xhtml/glFog.xml create mode 100644 upstream-man-pages/man2/xhtml/glFogCoord.xml create mode 100644 upstream-man-pages/man2/xhtml/glFogCoordPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glFrontFace.xml create mode 100644 upstream-man-pages/man2/xhtml/glFrustum.xml create mode 100644 upstream-man-pages/man2/xhtml/glGenBuffers.xml create mode 100644 upstream-man-pages/man2/xhtml/glGenLists.xml create mode 100644 upstream-man-pages/man2/xhtml/glGenQueries.xml create mode 100644 upstream-man-pages/man2/xhtml/glGenTextures.xml create mode 100644 upstream-man-pages/man2/xhtml/glGet.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetActiveAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetActiveUniform.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetAttachedShaders.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetAttribLocation.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetBufferParameteriv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetBufferPointerv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetBufferSubData.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetClipPlane.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetColorTable.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetColorTableParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetCompressedTexImage.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetConvolutionFilter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetConvolutionParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetDoublev.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetError.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetFloatv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetHistogram.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetHistogramParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetIntegerv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetLight.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetMap.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetMaterial.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetMinmax.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetMinmaxParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetPixelMap.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetPointerv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetPolygonStipple.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetProgramInfoLog.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetQueryObject.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetQueryiv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetSeparableFilter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetShaderInfoLog.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetShaderSource.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetString.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetTexEnv.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetTexGen.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetTexImage.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetTexLevelParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetTexParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetUniform.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetUniformLocation.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetVertexAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glGetVertexAttribPointerv.xml create mode 100644 upstream-man-pages/man2/xhtml/glHint.xml create mode 100644 upstream-man-pages/man2/xhtml/glHistogram.xml create mode 100644 upstream-man-pages/man2/xhtml/glIndex.xml create mode 100644 upstream-man-pages/man2/xhtml/glIndexMask.xml create mode 100644 upstream-man-pages/man2/xhtml/glIndexPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glInitNames.xml create mode 100644 upstream-man-pages/man2/xhtml/glInterleavedArrays.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsEnabled.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsList.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsQuery.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsShader.xml create mode 100644 upstream-man-pages/man2/xhtml/glIsTexture.xml create mode 100644 upstream-man-pages/man2/xhtml/glLight.xml create mode 100644 upstream-man-pages/man2/xhtml/glLightModel.xml create mode 100644 upstream-man-pages/man2/xhtml/glLineStipple.xml create mode 100644 upstream-man-pages/man2/xhtml/glLineWidth.xml create mode 100644 upstream-man-pages/man2/xhtml/glLinkProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glListBase.xml create mode 100644 upstream-man-pages/man2/xhtml/glLoadIdentity.xml create mode 100644 upstream-man-pages/man2/xhtml/glLoadMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/glLoadName.xml create mode 100644 upstream-man-pages/man2/xhtml/glLoadTransposeMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/glLogicOp.xml create mode 100644 upstream-man-pages/man2/xhtml/glMap1.xhtml create mode 100644 upstream-man-pages/man2/xhtml/glMap1.xml create mode 100644 upstream-man-pages/man2/xhtml/glMap2.xml create mode 100644 upstream-man-pages/man2/xhtml/glMapBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glMapGrid.xml create mode 100644 upstream-man-pages/man2/xhtml/glMapGrid1.xml create mode 100644 upstream-man-pages/man2/xhtml/glMapGrid2.xml create mode 100644 upstream-man-pages/man2/xhtml/glMaterial.xml create mode 100644 upstream-man-pages/man2/xhtml/glMatrixMode.xml create mode 100644 upstream-man-pages/man2/xhtml/glMinmax.xml create mode 100644 upstream-man-pages/man2/xhtml/glMultMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/glMultTransposeMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/glMultiDrawArrays.xml create mode 100644 upstream-man-pages/man2/xhtml/glMultiDrawElements.xml create mode 100644 upstream-man-pages/man2/xhtml/glMultiTexCoord.xml create mode 100644 upstream-man-pages/man2/xhtml/glNewList.xml create mode 100644 upstream-man-pages/man2/xhtml/glNormal.xml create mode 100644 upstream-man-pages/man2/xhtml/glNormalPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glOrtho.xml create mode 100644 upstream-man-pages/man2/xhtml/glPassThrough.xml create mode 100644 upstream-man-pages/man2/xhtml/glPixelMap.xml create mode 100644 upstream-man-pages/man2/xhtml/glPixelStore.xml create mode 100644 upstream-man-pages/man2/xhtml/glPixelTransfer.xml create mode 100644 upstream-man-pages/man2/xhtml/glPixelZoom.xml create mode 100644 upstream-man-pages/man2/xhtml/glPointParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glPointSize.xml create mode 100644 upstream-man-pages/man2/xhtml/glPolygonMode.xml create mode 100644 upstream-man-pages/man2/xhtml/glPolygonOffset.xml create mode 100644 upstream-man-pages/man2/xhtml/glPolygonStipple.xml create mode 100644 upstream-man-pages/man2/xhtml/glPopAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glPopClientAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glPopMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/glPopName.xml create mode 100644 upstream-man-pages/man2/xhtml/glPrioritizeTextures.xml create mode 100644 upstream-man-pages/man2/xhtml/glPushAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glPushClientAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glPushMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/glPushName.xml create mode 100644 upstream-man-pages/man2/xhtml/glRasterPos.xml create mode 100644 upstream-man-pages/man2/xhtml/glReadBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glReadPixels.xml create mode 100644 upstream-man-pages/man2/xhtml/glRect.xml create mode 100644 upstream-man-pages/man2/xhtml/glRenderMode.xml create mode 100644 upstream-man-pages/man2/xhtml/glResetHistogram.xml create mode 100644 upstream-man-pages/man2/xhtml/glResetMinmax.xml create mode 100644 upstream-man-pages/man2/xhtml/glRotate.xml create mode 100644 upstream-man-pages/man2/xhtml/glSampleCoverage.xml create mode 100644 upstream-man-pages/man2/xhtml/glScale.xml create mode 100644 upstream-man-pages/man2/xhtml/glScissor.xml create mode 100644 upstream-man-pages/man2/xhtml/glSecondaryColor.xml create mode 100644 upstream-man-pages/man2/xhtml/glSecondaryColorPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glSelectBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glSeparableFilter2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glShadeModel.xml create mode 100644 upstream-man-pages/man2/xhtml/glShaderSource.xml create mode 100644 upstream-man-pages/man2/xhtml/glStencilFunc.xml create mode 100644 upstream-man-pages/man2/xhtml/glStencilFuncSeparate.xml create mode 100644 upstream-man-pages/man2/xhtml/glStencilMask.xml create mode 100644 upstream-man-pages/man2/xhtml/glStencilMaskSeparate.xml create mode 100644 upstream-man-pages/man2/xhtml/glStencilOp.xml create mode 100644 upstream-man-pages/man2/xhtml/glStencilOpSeparate.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexCoord.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexCoord1.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexCoord2.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexCoord3.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexCoord4.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexCoordPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexEnv.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexGen.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexImage1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexImage2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexImage3D.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexParameter.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexSubImage1D.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexSubImage2D.xml create mode 100644 upstream-man-pages/man2/xhtml/glTexSubImage3D.xml create mode 100644 upstream-man-pages/man2/xhtml/glTranslate.xml create mode 100644 upstream-man-pages/man2/xhtml/glUniform.xml create mode 100644 upstream-man-pages/man2/xhtml/glUnmapBuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glUseProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glValidateProgram.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertex.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertex2.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertex3.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertex4.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertexAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertexAttribPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glVertexPointer.xml create mode 100644 upstream-man-pages/man2/xhtml/glViewport.xml create mode 100644 upstream-man-pages/man2/xhtml/glWindowPos.xml create mode 100644 upstream-man-pages/man2/xhtml/glXChooseFBConfig.xml create mode 100644 upstream-man-pages/man2/xhtml/glXChooseVisual.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCopyContext.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCreateContext.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCreateGLXPixmap.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCreateNewContext.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCreatePbuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCreatePixmap.xml create mode 100644 upstream-man-pages/man2/xhtml/glXCreateWindow.xml create mode 100644 upstream-man-pages/man2/xhtml/glXDestroyContext.xml create mode 100644 upstream-man-pages/man2/xhtml/glXDestroyGLXPixmap.xml create mode 100644 upstream-man-pages/man2/xhtml/glXDestroyPbuffer.xml create mode 100644 upstream-man-pages/man2/xhtml/glXDestroyPixmap.xml create mode 100644 upstream-man-pages/man2/xhtml/glXDestroyWindow.xml create mode 100644 upstream-man-pages/man2/xhtml/glXFreeContextEXT.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetClientString.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetConfig.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetContextIDEXT.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetCurrentContext.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetCurrentDisplay.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetCurrentDrawable.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetCurrentReadDrawable.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetFBConfigAttrib.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetFBConfigs.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetProcAddress.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetSelectedEvent.xml create mode 100644 upstream-man-pages/man2/xhtml/glXGetVisualFromFBConfig.xml create mode 100644 upstream-man-pages/man2/xhtml/glXImportContextEXT.xml create mode 100644 upstream-man-pages/man2/xhtml/glXIntro.xml create mode 100644 upstream-man-pages/man2/xhtml/glXIsDirect.xml create mode 100644 upstream-man-pages/man2/xhtml/glXMakeContextCurrent.xml create mode 100644 upstream-man-pages/man2/xhtml/glXMakeCurrent.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryContext.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryContextInfoEXT.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryDrawable.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryExtension.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryExtensionsString.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryServerString.xml create mode 100644 upstream-man-pages/man2/xhtml/glXQueryVersion.xml create mode 100644 upstream-man-pages/man2/xhtml/glXSelectEvent.xml create mode 100644 upstream-man-pages/man2/xhtml/glXSwapBuffers.xml create mode 100644 upstream-man-pages/man2/xhtml/glXUseXFont.xml create mode 100644 upstream-man-pages/man2/xhtml/glXWaitGL.xml create mode 100644 upstream-man-pages/man2/xhtml/glXWaitX.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBeginCurve.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBeginPolygon.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBeginSurface.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBeginTrim.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBuild1DMipmapLevels.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBuild1DMipmaps.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBuild2DMipmapLevels.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBuild2DMipmaps.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBuild3DMipmapLevels.xml create mode 100644 upstream-man-pages/man2/xhtml/gluBuild3DMipmaps.xml create mode 100644 upstream-man-pages/man2/xhtml/gluCheckExtension.xml create mode 100644 upstream-man-pages/man2/xhtml/gluCylinder.xml create mode 100644 upstream-man-pages/man2/xhtml/gluDeleteNurbsRenderer.xml create mode 100644 upstream-man-pages/man2/xhtml/gluDeleteQuadric.xml create mode 100644 upstream-man-pages/man2/xhtml/gluDeleteTess.xml create mode 100644 upstream-man-pages/man2/xhtml/gluDisk.xml create mode 100644 upstream-man-pages/man2/xhtml/gluEndCurve.xml create mode 100644 upstream-man-pages/man2/xhtml/gluEndPolygon.xml create mode 100644 upstream-man-pages/man2/xhtml/gluEndSurface.xml create mode 100644 upstream-man-pages/man2/xhtml/gluEndTrim.xml create mode 100644 upstream-man-pages/man2/xhtml/gluErrorString.xml create mode 100644 upstream-man-pages/man2/xhtml/gluGetNurbsProperty.xml create mode 100644 upstream-man-pages/man2/xhtml/gluGetString.xml create mode 100644 upstream-man-pages/man2/xhtml/gluGetTessProperty.xml create mode 100644 upstream-man-pages/man2/xhtml/gluLoadSamplingMatrices.xml create mode 100644 upstream-man-pages/man2/xhtml/gluLookAt.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNewNurbsRenderer.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNewQuadric.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNewTess.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNextContour.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNurbsCallback.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNurbsCallbackData.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNurbsCallbackDataEXT.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNurbsCurve.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNurbsProperty.xml create mode 100644 upstream-man-pages/man2/xhtml/gluNurbsSurface.xml create mode 100644 upstream-man-pages/man2/xhtml/gluOrtho2D.xml create mode 100644 upstream-man-pages/man2/xhtml/gluPartialDisk.xml create mode 100644 upstream-man-pages/man2/xhtml/gluPerspective.xml create mode 100644 upstream-man-pages/man2/xhtml/gluPickMatrix.xml create mode 100644 upstream-man-pages/man2/xhtml/gluProject.xml create mode 100644 upstream-man-pages/man2/xhtml/gluPwlCurve.xml create mode 100644 upstream-man-pages/man2/xhtml/gluQuadricCallback.xml create mode 100644 upstream-man-pages/man2/xhtml/gluQuadricDrawStyle.xml create mode 100644 upstream-man-pages/man2/xhtml/gluQuadricNormals.xml create mode 100644 upstream-man-pages/man2/xhtml/gluQuadricOrientation.xml create mode 100644 upstream-man-pages/man2/xhtml/gluQuadricTexture.xml create mode 100644 upstream-man-pages/man2/xhtml/gluScaleImage.xml create mode 100644 upstream-man-pages/man2/xhtml/gluSphere.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessBeginContour.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessBeginPolygon.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessCallback.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessEndContour.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessEndPolygon.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessNormal.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessProperty.xml create mode 100644 upstream-man-pages/man2/xhtml/gluTessVertex.xml create mode 100644 upstream-man-pages/man2/xhtml/gluUnProject.xml create mode 100644 upstream-man-pages/man2/xhtml/gluUnProject4.xml create mode 100644 upstream-man-pages/man2/xhtml/index.html create mode 100755 upstream-man-pages/man2/xhtml/makeindex.pl create mode 100644 upstream-man-pages/man2/xhtml/mathml.xsl create mode 100644 upstream-man-pages/man2/xhtml/opengl-man.xsl create mode 100644 upstream-man-pages/man2/xhtml/pmathml.xsl create mode 100644 upstream-man-pages/man2/xhtml/pmathmlcss.xsl create mode 100644 upstream-man-pages/man2/xhtml/start.html create mode 100644 upstream-man-pages/man2/xhtml/test.xml create mode 100644 upstream-man-pages/man2/xhtml/xhtml-lat1.ent create mode 100644 upstream-man-pages/man2/xhtml/xhtml-special.ent create mode 100644 upstream-man-pages/man2/xhtml/xhtml-symbol.ent create mode 100644 upstream-man-pages/man2/xhtml/xhtml1-transitional.dtd create mode 100644 upstream-man-pages/man3/Makefile create mode 100644 upstream-man-pages/man3/README.txt create mode 100644 upstream-man-pages/man3/bottom.php create mode 100644 upstream-man-pages/man3/docs/Viewing_XHTML_and_MathML.html create mode 100644 upstream-man-pages/man3/docs/XML_Toolchain_and_Man_Pages.html create mode 100644 upstream-man-pages/man3/fo/Makefile create mode 100644 upstream-man-pages/man3/fo/glTexGen.fo create mode 100644 upstream-man-pages/man3/fo/glTexGen.pdf create mode 100644 upstream-man-pages/man3/glActiveTexture.xml create mode 100644 upstream-man-pages/man3/glAttachShader.xml create mode 100644 upstream-man-pages/man3/glBeginConditionalRender.xml create mode 100644 upstream-man-pages/man3/glBeginQuery.xml create mode 100644 upstream-man-pages/man3/glBeginTransformFeedback.xml create mode 100644 upstream-man-pages/man3/glBindAttribLocation.xml create mode 100644 upstream-man-pages/man3/glBindBuffer.xml create mode 100644 upstream-man-pages/man3/glBindBufferBase.xml create mode 100644 upstream-man-pages/man3/glBindBufferRange.xml create mode 100644 upstream-man-pages/man3/glBindFragDataLocation.xml create mode 100644 upstream-man-pages/man3/glBindFragDataLocationIndexed.xml create mode 100644 upstream-man-pages/man3/glBindFramebuffer.xml create mode 100644 upstream-man-pages/man3/glBindRenderbuffer.xml create mode 100644 upstream-man-pages/man3/glBindSampler.xml create mode 100644 upstream-man-pages/man3/glBindTexture.xml create mode 100644 upstream-man-pages/man3/glBindVertexArray.xml create mode 100644 upstream-man-pages/man3/glBlendColor.xml create mode 100644 upstream-man-pages/man3/glBlendEquation.xml create mode 100644 upstream-man-pages/man3/glBlendEquationSeparate.xml create mode 100644 upstream-man-pages/man3/glBlendFunc.xml create mode 100644 upstream-man-pages/man3/glBlendFuncSeparate.xml create mode 100644 upstream-man-pages/man3/glBlitFramebuffer.xml create mode 100644 upstream-man-pages/man3/glBufferData.xml create mode 100644 upstream-man-pages/man3/glBufferSubData.xml create mode 100644 upstream-man-pages/man3/glCheckFramebufferStatus.xml create mode 100644 upstream-man-pages/man3/glClampColor.xml create mode 100644 upstream-man-pages/man3/glClear.xml create mode 100644 upstream-man-pages/man3/glClearBuffer.xml create mode 100644 upstream-man-pages/man3/glClearColor.xml create mode 100644 upstream-man-pages/man3/glClearDepth.xml create mode 100644 upstream-man-pages/man3/glClearStencil.xml create mode 100644 upstream-man-pages/man3/glClientWaitSync.xml create mode 100644 upstream-man-pages/man3/glColorMask.xml create mode 100644 upstream-man-pages/man3/glCompileShader.xml create mode 100644 upstream-man-pages/man3/glCompressedTexImage1D.xml create mode 100644 upstream-man-pages/man3/glCompressedTexImage2D.xml create mode 100644 upstream-man-pages/man3/glCompressedTexImage3D.xml create mode 100644 upstream-man-pages/man3/glCompressedTexSubImage1D.xml create mode 100644 upstream-man-pages/man3/glCompressedTexSubImage2D.xml create mode 100644 upstream-man-pages/man3/glCompressedTexSubImage3D.xml create mode 100644 upstream-man-pages/man3/glCopyBufferSubData.xml create mode 100644 upstream-man-pages/man3/glCopyTexImage1D.xml create mode 100644 upstream-man-pages/man3/glCopyTexImage2D.xml create mode 100644 upstream-man-pages/man3/glCopyTexSubImage1D.xml create mode 100644 upstream-man-pages/man3/glCopyTexSubImage2D.xml create mode 100644 upstream-man-pages/man3/glCopyTexSubImage3D.xml create mode 100644 upstream-man-pages/man3/glCreateProgram.xml create mode 100644 upstream-man-pages/man3/glCreateShader.xml create mode 100644 upstream-man-pages/man3/glCullFace.xml create mode 100644 upstream-man-pages/man3/glDeleteBuffers.xml create mode 100644 upstream-man-pages/man3/glDeleteFramebuffers.xml create mode 100644 upstream-man-pages/man3/glDeleteProgram.xml create mode 100644 upstream-man-pages/man3/glDeleteQueries.xml create mode 100644 upstream-man-pages/man3/glDeleteRenderbuffers.xml create mode 100644 upstream-man-pages/man3/glDeleteSamplers.xml create mode 100644 upstream-man-pages/man3/glDeleteShader.xml create mode 100644 upstream-man-pages/man3/glDeleteSync.xml create mode 100644 upstream-man-pages/man3/glDeleteTextures.xml create mode 100644 upstream-man-pages/man3/glDeleteVertexArrays.xml create mode 100644 upstream-man-pages/man3/glDepthFunc.xml create mode 100644 upstream-man-pages/man3/glDepthMask.xml create mode 100644 upstream-man-pages/man3/glDepthRange.xml create mode 100644 upstream-man-pages/man3/glDetachShader.xml create mode 100644 upstream-man-pages/man3/glDrawArrays.xml create mode 100644 upstream-man-pages/man3/glDrawArraysInstanced.xml create mode 100644 upstream-man-pages/man3/glDrawBuffer.xml create mode 100644 upstream-man-pages/man3/glDrawBuffers.xml create mode 100644 upstream-man-pages/man3/glDrawElements.xml create mode 100644 upstream-man-pages/man3/glDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man3/glDrawElementsInstanced.xml create mode 100644 upstream-man-pages/man3/glDrawElementsInstancedBaseVertex.xml create mode 100644 upstream-man-pages/man3/glDrawRangeElements.xml create mode 100644 upstream-man-pages/man3/glDrawRangeElementsBaseVertex.xml create mode 100644 upstream-man-pages/man3/glEnable.xml create mode 100644 upstream-man-pages/man3/glEnableVertexAttribArray.xml create mode 100644 upstream-man-pages/man3/glFenceSync.xml create mode 100644 upstream-man-pages/man3/glFinish.xml create mode 100644 upstream-man-pages/man3/glFlush.xml create mode 100644 upstream-man-pages/man3/glFlushMappedBufferRange.xml create mode 100644 upstream-man-pages/man3/glFramebufferRenderbuffer.xml create mode 100644 upstream-man-pages/man3/glFramebufferTexture.xml create mode 100644 upstream-man-pages/man3/glFramebufferTextureLayer.xml create mode 100644 upstream-man-pages/man3/glFrontFace.xml create mode 100644 upstream-man-pages/man3/glGenBuffers.xml create mode 100644 upstream-man-pages/man3/glGenFramebuffers.xml create mode 100644 upstream-man-pages/man3/glGenQueries.xml create mode 100644 upstream-man-pages/man3/glGenRenderbuffers.xml create mode 100644 upstream-man-pages/man3/glGenSamplers.xml create mode 100644 upstream-man-pages/man3/glGenTextures.xml create mode 100644 upstream-man-pages/man3/glGenVertexArrays.xml create mode 100644 upstream-man-pages/man3/glGenerateMipmap.xml create mode 100644 upstream-man-pages/man3/glGet.xml create mode 100644 upstream-man-pages/man3/glGetActiveAttrib.xml create mode 100644 upstream-man-pages/man3/glGetActiveUniform.xml create mode 100755 upstream-man-pages/man3/glGetActiveUniformBlock.xml create mode 100644 upstream-man-pages/man3/glGetActiveUniformBlockName.xml create mode 100644 upstream-man-pages/man3/glGetActiveUniformName.xml create mode 100644 upstream-man-pages/man3/glGetActiveUniformsiv.xml create mode 100644 upstream-man-pages/man3/glGetAttachedShaders.xml create mode 100644 upstream-man-pages/man3/glGetAttribLocation.xml create mode 100644 upstream-man-pages/man3/glGetBufferParameter.xml create mode 100644 upstream-man-pages/man3/glGetBufferParameteriv.xml create mode 100644 upstream-man-pages/man3/glGetBufferPointerv.xml create mode 100644 upstream-man-pages/man3/glGetBufferSubData.xml create mode 100644 upstream-man-pages/man3/glGetCompressedTexImage.xml create mode 100644 upstream-man-pages/man3/glGetError.xml create mode 100644 upstream-man-pages/man3/glGetFragDataIndex.xml create mode 100644 upstream-man-pages/man3/glGetFragDataLocation.xml create mode 100644 upstream-man-pages/man3/glGetFramebufferAttachmentParameter.xml create mode 100644 upstream-man-pages/man3/glGetMultisample.xml create mode 100644 upstream-man-pages/man3/glGetProgram.xml create mode 100644 upstream-man-pages/man3/glGetProgramInfoLog.xml create mode 100644 upstream-man-pages/man3/glGetQueryObject.xml create mode 100644 upstream-man-pages/man3/glGetQueryiv.xml create mode 100644 upstream-man-pages/man3/glGetRenderbufferParameter.xml create mode 100644 upstream-man-pages/man3/glGetSamplerParameter.xml create mode 100644 upstream-man-pages/man3/glGetShader.xml create mode 100644 upstream-man-pages/man3/glGetShaderInfoLog.xml create mode 100644 upstream-man-pages/man3/glGetShaderSource.xml create mode 100644 upstream-man-pages/man3/glGetString.xml create mode 100644 upstream-man-pages/man3/glGetSync.xml create mode 100644 upstream-man-pages/man3/glGetTexImage.xml create mode 100644 upstream-man-pages/man3/glGetTexLevelParameter.xml create mode 100644 upstream-man-pages/man3/glGetTexParameter.xml create mode 100644 upstream-man-pages/man3/glGetTransformFeedbackVarying.xml create mode 100644 upstream-man-pages/man3/glGetUniform.xml create mode 100644 upstream-man-pages/man3/glGetUniformBlockIndex.xml create mode 100644 upstream-man-pages/man3/glGetUniformIndices.xml create mode 100644 upstream-man-pages/man3/glGetUniformLocation.xml create mode 100644 upstream-man-pages/man3/glGetVertexAttrib.xml create mode 100644 upstream-man-pages/man3/glGetVertexAttribPointerv.xml create mode 100644 upstream-man-pages/man3/glHint.xml create mode 100644 upstream-man-pages/man3/glIsBuffer.xml create mode 100644 upstream-man-pages/man3/glIsEnabled.xml create mode 100644 upstream-man-pages/man3/glIsFramebuffer.xml create mode 100644 upstream-man-pages/man3/glIsProgram.xml create mode 100644 upstream-man-pages/man3/glIsQuery.xml create mode 100644 upstream-man-pages/man3/glIsRenderbuffer.xml create mode 100644 upstream-man-pages/man3/glIsSampler.xml create mode 100644 upstream-man-pages/man3/glIsShader.xml create mode 100644 upstream-man-pages/man3/glIsSync.xml create mode 100644 upstream-man-pages/man3/glIsTexture.xml create mode 100644 upstream-man-pages/man3/glIsVertexArray.xml create mode 100644 upstream-man-pages/man3/glLineWidth.xml create mode 100644 upstream-man-pages/man3/glLinkProgram.xml create mode 100644 upstream-man-pages/man3/glLogicOp.xml create mode 100644 upstream-man-pages/man3/glMapBuffer.xml create mode 100644 upstream-man-pages/man3/glMapBufferRange.xml create mode 100644 upstream-man-pages/man3/glMultiDrawArrays.xml create mode 100644 upstream-man-pages/man3/glMultiDrawElements.xml create mode 100644 upstream-man-pages/man3/glMultiDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man3/glMultiTexCoord.xml create mode 100644 upstream-man-pages/man3/glPixelStore.xml create mode 100644 upstream-man-pages/man3/glPointParameter.xml create mode 100644 upstream-man-pages/man3/glPointSize.xml create mode 100644 upstream-man-pages/man3/glPolygonMode.xml create mode 100644 upstream-man-pages/man3/glPolygonOffset.xml create mode 100644 upstream-man-pages/man3/glPrimitiveRestartIndex.xml create mode 100644 upstream-man-pages/man3/glProvokingVertex.xml create mode 100644 upstream-man-pages/man3/glQueryCounter.xml create mode 100644 upstream-man-pages/man3/glReadBuffer.xml create mode 100644 upstream-man-pages/man3/glReadPixels.xml create mode 100644 upstream-man-pages/man3/glRenderbufferStorage.xml create mode 100644 upstream-man-pages/man3/glRenderbufferStorageMultisample.xml create mode 100644 upstream-man-pages/man3/glSampleCoverage.xml create mode 100644 upstream-man-pages/man3/glSampleMaski.xml create mode 100644 upstream-man-pages/man3/glSamplerParameter.xml create mode 100644 upstream-man-pages/man3/glScissor.xml create mode 100644 upstream-man-pages/man3/glShaderSource.xml create mode 100644 upstream-man-pages/man3/glStencilFunc.xml create mode 100644 upstream-man-pages/man3/glStencilFuncSeparate.xml create mode 100644 upstream-man-pages/man3/glStencilMask.xml create mode 100644 upstream-man-pages/man3/glStencilMaskSeparate.xml create mode 100644 upstream-man-pages/man3/glStencilOp.xml create mode 100644 upstream-man-pages/man3/glStencilOpSeparate.xml create mode 100644 upstream-man-pages/man3/glTexBuffer.xml create mode 100644 upstream-man-pages/man3/glTexImage1D.xml create mode 100644 upstream-man-pages/man3/glTexImage2D.xml create mode 100644 upstream-man-pages/man3/glTexImage2DMultisample.xml create mode 100644 upstream-man-pages/man3/glTexImage3D.xml create mode 100644 upstream-man-pages/man3/glTexImage3DMultisample.xml create mode 100644 upstream-man-pages/man3/glTexParameter.xml create mode 100644 upstream-man-pages/man3/glTexSubImage1D.xml create mode 100644 upstream-man-pages/man3/glTexSubImage2D.xml create mode 100644 upstream-man-pages/man3/glTexSubImage3D.xml create mode 100644 upstream-man-pages/man3/glTransformFeedbackVaryings.xml create mode 100644 upstream-man-pages/man3/glUniform.xml create mode 100644 upstream-man-pages/man3/glUniformBlockBinding.xml create mode 100644 upstream-man-pages/man3/glUseProgram.xml create mode 100644 upstream-man-pages/man3/glValidateProgram.xml create mode 100644 upstream-man-pages/man3/glVertexAttrib.xml create mode 100644 upstream-man-pages/man3/glVertexAttribDivisor.xml create mode 100644 upstream-man-pages/man3/glVertexAttribPointer.xml create mode 100644 upstream-man-pages/man3/glViewport.xml create mode 100644 upstream-man-pages/man3/glWaitSync.xml create mode 100644 upstream-man-pages/man3/index.php create mode 100644 upstream-man-pages/man3/pdf/DejaVuSans.ttf create mode 100644 upstream-man-pages/man3/pdf/Makefile create mode 100644 upstream-man-pages/man3/pdf/footer create mode 100644 upstream-man-pages/man3/pdf/header create mode 100644 upstream-man-pages/man3/pdf/ogl_prep_xml.xsl create mode 100644 upstream-man-pages/man3/pdf/opengl-pdf.xsl create mode 100644 upstream-man-pages/man3/top.php create mode 100644 upstream-man-pages/man3/usr/include/make/commondefs create mode 100644 upstream-man-pages/man3/usr/include/make/commonrules create mode 100644 upstream-man-pages/man3/usr/include/make/commonrules.win32 create mode 100644 upstream-man-pages/man3/usr/include/make/linuxdefs create mode 100644 upstream-man-pages/man3/xhtml/Makefile create mode 100644 upstream-man-pages/man3/xhtml/ctop.xsl create mode 100644 upstream-man-pages/man3/xhtml/glActiveTexture.xml create mode 100644 upstream-man-pages/man3/xhtml/glAttachShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glBeginConditionalRender.xml create mode 100644 upstream-man-pages/man3/xhtml/glBeginQuery.xml create mode 100644 upstream-man-pages/man3/xhtml/glBeginTransformFeedback.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindAttribLocation.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindBufferBase.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindBufferRange.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindFragDataLocation.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindFragDataLocationIndexed.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindFramebuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindRenderbuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindSampler.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindTexture.xml create mode 100644 upstream-man-pages/man3/xhtml/glBindVertexArray.xml create mode 100644 upstream-man-pages/man3/xhtml/glBlendColor.xml create mode 100644 upstream-man-pages/man3/xhtml/glBlendEquation.xml create mode 100644 upstream-man-pages/man3/xhtml/glBlendEquationSeparate.xml create mode 100644 upstream-man-pages/man3/xhtml/glBlendFunc.xml create mode 100644 upstream-man-pages/man3/xhtml/glBlendFuncSeparate.xml create mode 100644 upstream-man-pages/man3/xhtml/glBlitFramebuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glBufferData.xml create mode 100644 upstream-man-pages/man3/xhtml/glBufferSubData.xml create mode 100644 upstream-man-pages/man3/xhtml/glCheckFramebufferStatus.xml create mode 100644 upstream-man-pages/man3/xhtml/glClampColor.xml create mode 100644 upstream-man-pages/man3/xhtml/glClear.xml create mode 100644 upstream-man-pages/man3/xhtml/glClearBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glClearColor.xml create mode 100644 upstream-man-pages/man3/xhtml/glClearDepth.xml create mode 100644 upstream-man-pages/man3/xhtml/glClearStencil.xml create mode 100644 upstream-man-pages/man3/xhtml/glClientWaitSync.xml create mode 100644 upstream-man-pages/man3/xhtml/glColorMask.xml create mode 100644 upstream-man-pages/man3/xhtml/glColorMaski.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompileShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompressedTexImage1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompressedTexImage2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompressedTexImage3D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompressedTexSubImage1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompressedTexSubImage2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCompressedTexSubImage3D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCopyBufferSubData.xml create mode 100644 upstream-man-pages/man3/xhtml/glCopyTexImage1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCopyTexImage2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCopyTexSubImage1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCopyTexSubImage2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCopyTexSubImage3D.xml create mode 100644 upstream-man-pages/man3/xhtml/glCreateProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glCreateShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glCullFace.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteBuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteFramebuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteQueries.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteRenderbuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteSamplers.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteSync.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteTextures.xml create mode 100644 upstream-man-pages/man3/xhtml/glDeleteVertexArrays.xml create mode 100644 upstream-man-pages/man3/xhtml/glDepthFunc.xml create mode 100644 upstream-man-pages/man3/xhtml/glDepthMask.xml create mode 100644 upstream-man-pages/man3/xhtml/glDepthRange.xml create mode 100644 upstream-man-pages/man3/xhtml/glDetachShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glDisable.xml create mode 100644 upstream-man-pages/man3/xhtml/glDisableVertexAttribArray.xml create mode 100644 upstream-man-pages/man3/xhtml/glDisablei.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawArrays.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawArraysInstanced.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawBuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawElements.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawElementsInstanced.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawElementsInstancedBaseVertex.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawRangeElements.xml create mode 100644 upstream-man-pages/man3/xhtml/glDrawRangeElementsBaseVertex.xml create mode 100644 upstream-man-pages/man3/xhtml/glEnable.xml create mode 100644 upstream-man-pages/man3/xhtml/glEnableVertexAttribArray.xml create mode 100644 upstream-man-pages/man3/xhtml/glEnablei.xml create mode 100644 upstream-man-pages/man3/xhtml/glEndConditionalRender.xml create mode 100644 upstream-man-pages/man3/xhtml/glEndQuery.xml create mode 100644 upstream-man-pages/man3/xhtml/glEndTransformFeedback.xml create mode 100644 upstream-man-pages/man3/xhtml/glFenceSync.xml create mode 100644 upstream-man-pages/man3/xhtml/glFinish.xml create mode 100644 upstream-man-pages/man3/xhtml/glFlush.xml create mode 100644 upstream-man-pages/man3/xhtml/glFlushMappedBufferRange.xml create mode 100644 upstream-man-pages/man3/xhtml/glFramebufferRenderbuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glFramebufferTexture.xml create mode 100644 upstream-man-pages/man3/xhtml/glFramebufferTexture1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glFramebufferTexture2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glFramebufferTexture3D.xml create mode 100644 upstream-man-pages/man3/xhtml/glFramebufferTextureLayer.xml create mode 100644 upstream-man-pages/man3/xhtml/glFrontFace.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenBuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenFramebuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenQueries.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenRenderbuffers.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenSamplers.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenTextures.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenVertexArrays.xml create mode 100644 upstream-man-pages/man3/xhtml/glGenerateMipmap.xml create mode 100644 upstream-man-pages/man3/xhtml/glGet.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetActiveAttrib.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetActiveUniform.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetActiveUniformBlock.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetActiveUniformBlockName.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetActiveUniformName.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetActiveUniformsiv.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetAttachedShaders.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetAttribLocation.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetBufferParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetBufferPointerv.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetBufferSubData.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetCompressedTexImage.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetDoublev.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetError.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetFloatv.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetFragDataIndex.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetFragDataLocation.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetFramebufferAttachmentParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetIntegerv.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetMultisample.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetProgramInfoLog.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetQueryObject.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetQueryiv.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetRenderbufferParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetSamplerParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetShaderInfoLog.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetShaderSource.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetString.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetSync.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetTexImage.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetTexLevelParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetTexParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetTransformFeedbackVarying.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetUniform.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetUniformBlockIndex.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetUniformIndices.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetUniformLocation.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetVertexAttrib.xml create mode 100644 upstream-man-pages/man3/xhtml/glGetVertexAttribPointerv.xml create mode 100644 upstream-man-pages/man3/xhtml/glHint.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsEnabled.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsFramebuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsQuery.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsRenderbuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsSampler.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsShader.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsSync.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsTexture.xml create mode 100644 upstream-man-pages/man3/xhtml/glIsVertexArray.xml create mode 100644 upstream-man-pages/man3/xhtml/glLineWidth.xml create mode 100644 upstream-man-pages/man3/xhtml/glLinkProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glLogicOp.xml create mode 100644 upstream-man-pages/man3/xhtml/glMapBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glMapBufferRange.xml create mode 100644 upstream-man-pages/man3/xhtml/glMultiDrawArrays.xml create mode 100644 upstream-man-pages/man3/xhtml/glMultiDrawElements.xml create mode 100644 upstream-man-pages/man3/xhtml/glMultiDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man3/xhtml/glPixelStore.xml create mode 100644 upstream-man-pages/man3/xhtml/glPointParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glPointSize.xml create mode 100644 upstream-man-pages/man3/xhtml/glPolygonMode.xml create mode 100644 upstream-man-pages/man3/xhtml/glPolygonOffset.xml create mode 100644 upstream-man-pages/man3/xhtml/glPrimitiveRestartIndex.xml create mode 100644 upstream-man-pages/man3/xhtml/glProvokingVertex.xml create mode 100644 upstream-man-pages/man3/xhtml/glQueryCounter.xml create mode 100644 upstream-man-pages/man3/xhtml/glReadBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glReadPixels.xml create mode 100644 upstream-man-pages/man3/xhtml/glRenderbufferStorage.xml create mode 100644 upstream-man-pages/man3/xhtml/glRenderbufferStorageMultisample.xml create mode 100644 upstream-man-pages/man3/xhtml/glSampleCoverage.xml create mode 100644 upstream-man-pages/man3/xhtml/glSampleMaski.xml create mode 100644 upstream-man-pages/man3/xhtml/glSamplerParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glScissor.xml create mode 100644 upstream-man-pages/man3/xhtml/glShaderSource.xml create mode 100644 upstream-man-pages/man3/xhtml/glStencilFunc.xml create mode 100644 upstream-man-pages/man3/xhtml/glStencilFuncSeparate.xml create mode 100644 upstream-man-pages/man3/xhtml/glStencilMask.xml create mode 100644 upstream-man-pages/man3/xhtml/glStencilMaskSeparate.xml create mode 100644 upstream-man-pages/man3/xhtml/glStencilOp.xml create mode 100644 upstream-man-pages/man3/xhtml/glStencilOpSeparate.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexImage1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexImage2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexImage2DMultisample.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexImage3D.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexImage3DMultisample.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexParameter.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexSubImage1D.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexSubImage2D.xml create mode 100644 upstream-man-pages/man3/xhtml/glTexSubImage3D.xml create mode 100644 upstream-man-pages/man3/xhtml/glTransformFeedbackVaryings.xml create mode 100644 upstream-man-pages/man3/xhtml/glUniform.xml create mode 100644 upstream-man-pages/man3/xhtml/glUniformBlockBinding.xml create mode 100644 upstream-man-pages/man3/xhtml/glUnmapBuffer.xml create mode 100644 upstream-man-pages/man3/xhtml/glUseProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glValidateProgram.xml create mode 100644 upstream-man-pages/man3/xhtml/glVertexAttrib.xml create mode 100644 upstream-man-pages/man3/xhtml/glVertexAttribDivisor.xml create mode 100644 upstream-man-pages/man3/xhtml/glVertexAttribIPointer.xml create mode 100644 upstream-man-pages/man3/xhtml/glVertexAttribPointer.xml create mode 100644 upstream-man-pages/man3/xhtml/glViewport.xml create mode 100644 upstream-man-pages/man3/xhtml/glWaitSync.xml create mode 100644 upstream-man-pages/man3/xhtml/index.html create mode 100755 upstream-man-pages/man3/xhtml/makeindex.pl create mode 100644 upstream-man-pages/man3/xhtml/mathml.xsl create mode 100644 upstream-man-pages/man3/xhtml/opengl-man.css create mode 100644 upstream-man-pages/man3/xhtml/opengl-man.xsl create mode 100644 upstream-man-pages/man3/xhtml/pmathml.xsl create mode 100644 upstream-man-pages/man3/xhtml/pmathmlcss.xsl create mode 100644 upstream-man-pages/man3/xhtml/start.html create mode 100644 upstream-man-pages/man3/xhtml/xhtml-lat1.ent create mode 100644 upstream-man-pages/man3/xhtml/xhtml-special.ent create mode 100644 upstream-man-pages/man3/xhtml/xhtml-symbol.ent create mode 100644 upstream-man-pages/man3/xhtml/xhtml1-transitional.dtd create mode 100644 upstream-man-pages/man4/Makefile create mode 100644 upstream-man-pages/man4/baseformattable.xml create mode 100644 upstream-man-pages/man4/bottom.php create mode 100644 upstream-man-pages/man4/compressedformattable.xml create mode 100644 upstream-man-pages/man4/glActiveShaderProgram.xml create mode 100644 upstream-man-pages/man4/glActiveTexture.xml create mode 100644 upstream-man-pages/man4/glAttachShader.xml create mode 100644 upstream-man-pages/man4/glBeginConditionalRender.xml create mode 100644 upstream-man-pages/man4/glBeginQuery.xml create mode 100644 upstream-man-pages/man4/glBeginQueryIndexed.xml create mode 100644 upstream-man-pages/man4/glBeginTransformFeedback.xml create mode 100644 upstream-man-pages/man4/glBindAttribLocation.xml create mode 100644 upstream-man-pages/man4/glBindBuffer.xml create mode 100644 upstream-man-pages/man4/glBindBufferBase.xml create mode 100644 upstream-man-pages/man4/glBindBufferRange.xml create mode 100644 upstream-man-pages/man4/glBindFragDataLocation.xml create mode 100644 upstream-man-pages/man4/glBindFragDataLocationIndexed.xml create mode 100644 upstream-man-pages/man4/glBindFramebuffer.xml create mode 100644 upstream-man-pages/man4/glBindImageTexture.xml create mode 100644 upstream-man-pages/man4/glBindProgramPipeline.xml create mode 100644 upstream-man-pages/man4/glBindRenderbuffer.xml create mode 100644 upstream-man-pages/man4/glBindSampler.xml create mode 100644 upstream-man-pages/man4/glBindTexture.xml create mode 100644 upstream-man-pages/man4/glBindTransformFeedback.xml create mode 100644 upstream-man-pages/man4/glBindVertexArray.xml create mode 100644 upstream-man-pages/man4/glBindVertexBuffer.xml create mode 100644 upstream-man-pages/man4/glBlendColor.xml create mode 100644 upstream-man-pages/man4/glBlendEquation.xml create mode 100644 upstream-man-pages/man4/glBlendEquationSeparate.xml create mode 100644 upstream-man-pages/man4/glBlendFunc.xml create mode 100644 upstream-man-pages/man4/glBlendFuncSeparate.xml create mode 100644 upstream-man-pages/man4/glBlitFramebuffer.xml create mode 100644 upstream-man-pages/man4/glBufferData.xml create mode 100644 upstream-man-pages/man4/glBufferSubData.xml create mode 100644 upstream-man-pages/man4/glCheckFramebufferStatus.xml create mode 100644 upstream-man-pages/man4/glClampColor.xml create mode 100644 upstream-man-pages/man4/glClear.xml create mode 100644 upstream-man-pages/man4/glClearBuffer.xml create mode 100644 upstream-man-pages/man4/glClearBufferData.xml create mode 100644 upstream-man-pages/man4/glClearBufferSubData.xml create mode 100644 upstream-man-pages/man4/glClearColor.xml create mode 100644 upstream-man-pages/man4/glClearDepth.xml create mode 100644 upstream-man-pages/man4/glClearStencil.xml create mode 100644 upstream-man-pages/man4/glClientWaitSync.xml create mode 100644 upstream-man-pages/man4/glColorMask.xml create mode 100644 upstream-man-pages/man4/glCompileShader.xml create mode 100644 upstream-man-pages/man4/glCompressedTexImage1D.xml create mode 100644 upstream-man-pages/man4/glCompressedTexImage2D.xml create mode 100644 upstream-man-pages/man4/glCompressedTexImage3D.xml create mode 100644 upstream-man-pages/man4/glCompressedTexSubImage1D.xml create mode 100644 upstream-man-pages/man4/glCompressedTexSubImage2D.xml create mode 100644 upstream-man-pages/man4/glCompressedTexSubImage3D.xml create mode 100644 upstream-man-pages/man4/glCopyBufferSubData.xml create mode 100644 upstream-man-pages/man4/glCopyImageSubData.xml create mode 100644 upstream-man-pages/man4/glCopyTexImage1D.xml create mode 100644 upstream-man-pages/man4/glCopyTexImage2D.xml create mode 100644 upstream-man-pages/man4/glCopyTexSubImage1D.xml create mode 100644 upstream-man-pages/man4/glCopyTexSubImage2D.xml create mode 100644 upstream-man-pages/man4/glCopyTexSubImage3D.xml create mode 100644 upstream-man-pages/man4/glCreateProgram.xml create mode 100644 upstream-man-pages/man4/glCreateShader.xml create mode 100644 upstream-man-pages/man4/glCreateShaderProgram.xml create mode 100644 upstream-man-pages/man4/glCullFace.xml create mode 100644 upstream-man-pages/man4/glDebugMessageCallback.xml create mode 100644 upstream-man-pages/man4/glDebugMessageControl.xml create mode 100644 upstream-man-pages/man4/glDebugMessageInsert.xml create mode 100644 upstream-man-pages/man4/glDeleteBuffers.xml create mode 100644 upstream-man-pages/man4/glDeleteFramebuffers.xml create mode 100644 upstream-man-pages/man4/glDeleteProgram.xml create mode 100644 upstream-man-pages/man4/glDeleteProgramPipelines.xml create mode 100644 upstream-man-pages/man4/glDeleteQueries.xml create mode 100644 upstream-man-pages/man4/glDeleteRenderbuffers.xml create mode 100644 upstream-man-pages/man4/glDeleteSamplers.xml create mode 100644 upstream-man-pages/man4/glDeleteShader.xml create mode 100644 upstream-man-pages/man4/glDeleteSync.xml create mode 100644 upstream-man-pages/man4/glDeleteTextures.xml create mode 100644 upstream-man-pages/man4/glDeleteTransformFeedbacks.xml create mode 100644 upstream-man-pages/man4/glDeleteVertexArrays.xml create mode 100644 upstream-man-pages/man4/glDepthFunc.xml create mode 100644 upstream-man-pages/man4/glDepthMask.xml create mode 100644 upstream-man-pages/man4/glDepthRange.xml create mode 100644 upstream-man-pages/man4/glDepthRangeArray.xml create mode 100644 upstream-man-pages/man4/glDepthRangeIndexed.xml create mode 100644 upstream-man-pages/man4/glDetachShader.xml create mode 100644 upstream-man-pages/man4/glDispatchCompute.xml create mode 100644 upstream-man-pages/man4/glDispatchComputeIndirect.xml create mode 100644 upstream-man-pages/man4/glDrawArrays.xml create mode 100644 upstream-man-pages/man4/glDrawArraysIndirect.xml create mode 100644 upstream-man-pages/man4/glDrawArraysInstanced.xml create mode 100644 upstream-man-pages/man4/glDrawArraysInstancedBaseInstance.xml create mode 100644 upstream-man-pages/man4/glDrawBuffer.xml create mode 100644 upstream-man-pages/man4/glDrawBuffers.xml create mode 100644 upstream-man-pages/man4/glDrawElements.xml create mode 100644 upstream-man-pages/man4/glDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man4/glDrawElementsIndirect.xml create mode 100644 upstream-man-pages/man4/glDrawElementsInstanced.xml create mode 100644 upstream-man-pages/man4/glDrawElementsInstancedBaseInstance.xml create mode 100644 upstream-man-pages/man4/glDrawElementsInstancedBaseVertex.xml create mode 100644 upstream-man-pages/man4/glDrawElementsInstancedBaseVertexBaseInstance.xml create mode 100644 upstream-man-pages/man4/glDrawRangeElements.xml create mode 100644 upstream-man-pages/man4/glDrawRangeElementsBaseVertex.xml create mode 100644 upstream-man-pages/man4/glDrawTransformFeedback.xml create mode 100644 upstream-man-pages/man4/glDrawTransformFeedbackInstanced.xml create mode 100644 upstream-man-pages/man4/glDrawTransformFeedbackStream.xml create mode 100644 upstream-man-pages/man4/glDrawTransformFeedbackStreamInstanced.xml create mode 100644 upstream-man-pages/man4/glEnable.xml create mode 100644 upstream-man-pages/man4/glEnableVertexAttribArray.xml create mode 100644 upstream-man-pages/man4/glFenceSync.xml create mode 100644 upstream-man-pages/man4/glFinish.xml create mode 100644 upstream-man-pages/man4/glFlush.xml create mode 100644 upstream-man-pages/man4/glFlushMappedBufferRange.xml create mode 100644 upstream-man-pages/man4/glFramebufferParameteri.xml create mode 100644 upstream-man-pages/man4/glFramebufferRenderbuffer.xml create mode 100644 upstream-man-pages/man4/glFramebufferTexture.xml create mode 100644 upstream-man-pages/man4/glFramebufferTextureLayer.xml create mode 100644 upstream-man-pages/man4/glFrontFace.xml create mode 100644 upstream-man-pages/man4/glGenBuffers.xml create mode 100644 upstream-man-pages/man4/glGenFramebuffers.xml create mode 100644 upstream-man-pages/man4/glGenProgramPipelines.xml create mode 100644 upstream-man-pages/man4/glGenQueries.xml create mode 100644 upstream-man-pages/man4/glGenRenderbuffers.xml create mode 100644 upstream-man-pages/man4/glGenSamplers.xml create mode 100644 upstream-man-pages/man4/glGenTextures.xml create mode 100644 upstream-man-pages/man4/glGenTransformFeedbacks.xml create mode 100644 upstream-man-pages/man4/glGenVertexArrays.xml create mode 100644 upstream-man-pages/man4/glGenerateMipmap.xml create mode 100644 upstream-man-pages/man4/glGet.xml create mode 100644 upstream-man-pages/man4/glGetActiveAtomicCounterBufferiv.xml create mode 100644 upstream-man-pages/man4/glGetActiveAttrib.xml create mode 100644 upstream-man-pages/man4/glGetActiveSubroutineName.xml create mode 100644 upstream-man-pages/man4/glGetActiveSubroutineUniform.xml create mode 100644 upstream-man-pages/man4/glGetActiveSubroutineUniformName.xml create mode 100644 upstream-man-pages/man4/glGetActiveUniform.xml create mode 100644 upstream-man-pages/man4/glGetActiveUniformBlock.xml create mode 100644 upstream-man-pages/man4/glGetActiveUniformBlockName.xml create mode 100644 upstream-man-pages/man4/glGetActiveUniformName.xml create mode 100644 upstream-man-pages/man4/glGetActiveUniformsiv.xml create mode 100644 upstream-man-pages/man4/glGetAttachedShaders.xml create mode 100644 upstream-man-pages/man4/glGetAttribLocation.xml create mode 100644 upstream-man-pages/man4/glGetBufferParameter.xml create mode 100644 upstream-man-pages/man4/glGetBufferPointerv.xml create mode 100644 upstream-man-pages/man4/glGetBufferSubData.xml create mode 100644 upstream-man-pages/man4/glGetCompressedTexImage.xml create mode 100644 upstream-man-pages/man4/glGetDebugMessageLog.xml create mode 100644 upstream-man-pages/man4/glGetError.xml create mode 100644 upstream-man-pages/man4/glGetFragDataIndex.xml create mode 100644 upstream-man-pages/man4/glGetFragDataLocation.xml create mode 100644 upstream-man-pages/man4/glGetFramebufferAttachmentParameter.xml create mode 100644 upstream-man-pages/man4/glGetFramebufferParameter.xml create mode 100644 upstream-man-pages/man4/glGetInternalFormativ.xml create mode 100644 upstream-man-pages/man4/glGetMultisample.xml create mode 100644 upstream-man-pages/man4/glGetObjectLabel.xml create mode 100644 upstream-man-pages/man4/glGetObjectPtrLabel.xml create mode 100644 upstream-man-pages/man4/glGetProgram.xml create mode 100644 upstream-man-pages/man4/glGetProgramBinary.xml create mode 100644 upstream-man-pages/man4/glGetProgramInfoLog.xml create mode 100644 upstream-man-pages/man4/glGetProgramInterface.xml create mode 100644 upstream-man-pages/man4/glGetProgramPipeline.xml create mode 100644 upstream-man-pages/man4/glGetProgramPipelineInfoLog.xml create mode 100644 upstream-man-pages/man4/glGetProgramResource.xml create mode 100644 upstream-man-pages/man4/glGetProgramResourceIndex.xml create mode 100644 upstream-man-pages/man4/glGetProgramResourceLocation.xml create mode 100644 upstream-man-pages/man4/glGetProgramResourceLocationIndex.xml create mode 100644 upstream-man-pages/man4/glGetProgramResourceName.xml create mode 100644 upstream-man-pages/man4/glGetProgramStage.xml create mode 100644 upstream-man-pages/man4/glGetQueryIndexed.xml create mode 100644 upstream-man-pages/man4/glGetQueryObject.xml create mode 100644 upstream-man-pages/man4/glGetQueryiv.xml create mode 100644 upstream-man-pages/man4/glGetRenderbufferParameter.xml create mode 100644 upstream-man-pages/man4/glGetSamplerParameter.xml create mode 100644 upstream-man-pages/man4/glGetShader.xml create mode 100644 upstream-man-pages/man4/glGetShaderInfoLog.xml create mode 100644 upstream-man-pages/man4/glGetShaderPrecisionFormat.xml create mode 100644 upstream-man-pages/man4/glGetShaderSource.xml create mode 100644 upstream-man-pages/man4/glGetString.xml create mode 100644 upstream-man-pages/man4/glGetSubroutineIndex.xml create mode 100644 upstream-man-pages/man4/glGetSubroutineUniformLocation.xml create mode 100644 upstream-man-pages/man4/glGetSync.xml create mode 100644 upstream-man-pages/man4/glGetTexImage.xml create mode 100644 upstream-man-pages/man4/glGetTexLevelParameter.xml create mode 100644 upstream-man-pages/man4/glGetTexParameter.xml create mode 100644 upstream-man-pages/man4/glGetTransformFeedbackVarying.xml create mode 100644 upstream-man-pages/man4/glGetUniform.xml create mode 100644 upstream-man-pages/man4/glGetUniformBlockIndex.xml create mode 100644 upstream-man-pages/man4/glGetUniformIndices.xml create mode 100644 upstream-man-pages/man4/glGetUniformLocation.xml create mode 100644 upstream-man-pages/man4/glGetUniformSubroutine.xml create mode 100644 upstream-man-pages/man4/glGetVertexAttrib.xml create mode 100644 upstream-man-pages/man4/glGetVertexAttribPointerv.xml create mode 100644 upstream-man-pages/man4/glHint.xml create mode 100644 upstream-man-pages/man4/glInvalidateBufferData.xml create mode 100644 upstream-man-pages/man4/glInvalidateBufferSubData.xml create mode 100644 upstream-man-pages/man4/glInvalidateFramebuffer.xml create mode 100644 upstream-man-pages/man4/glInvalidateSubFramebuffer.xml create mode 100644 upstream-man-pages/man4/glInvalidateTexImage.xml create mode 100644 upstream-man-pages/man4/glInvalidateTexSubImage.xml create mode 100644 upstream-man-pages/man4/glIsBuffer.xml create mode 100644 upstream-man-pages/man4/glIsEnabled.xml create mode 100644 upstream-man-pages/man4/glIsFramebuffer.xml create mode 100644 upstream-man-pages/man4/glIsProgram.xml create mode 100644 upstream-man-pages/man4/glIsProgramPipeline.xml create mode 100644 upstream-man-pages/man4/glIsQuery.xml create mode 100644 upstream-man-pages/man4/glIsRenderbuffer.xml create mode 100644 upstream-man-pages/man4/glIsSampler.xml create mode 100644 upstream-man-pages/man4/glIsShader.xml create mode 100644 upstream-man-pages/man4/glIsSync.xml create mode 100644 upstream-man-pages/man4/glIsTexture.xml create mode 100644 upstream-man-pages/man4/glIsTransformFeedback.xml create mode 100644 upstream-man-pages/man4/glIsVertexArray.xml create mode 100644 upstream-man-pages/man4/glLineWidth.xml create mode 100644 upstream-man-pages/man4/glLinkProgram.xml create mode 100644 upstream-man-pages/man4/glLogicOp.xml create mode 100644 upstream-man-pages/man4/glMapBuffer.xml create mode 100644 upstream-man-pages/man4/glMapBufferRange.xml create mode 100644 upstream-man-pages/man4/glMemoryBarrier.xml create mode 100644 upstream-man-pages/man4/glMinSampleShading.xml create mode 100644 upstream-man-pages/man4/glMultiDrawArrays.xml create mode 100644 upstream-man-pages/man4/glMultiDrawArraysIndirect.xml create mode 100644 upstream-man-pages/man4/glMultiDrawElements.xml create mode 100644 upstream-man-pages/man4/glMultiDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man4/glMultiDrawElementsIndirect.xml create mode 100644 upstream-man-pages/man4/glObjectLabel.xml create mode 100644 upstream-man-pages/man4/glObjectPtrLabel.xml create mode 100644 upstream-man-pages/man4/glPatchParameter.xml create mode 100644 upstream-man-pages/man4/glPauseTransformFeedback.xml create mode 100644 upstream-man-pages/man4/glPixelStore.xml create mode 100644 upstream-man-pages/man4/glPointParameter.xml create mode 100644 upstream-man-pages/man4/glPointSize.xml create mode 100644 upstream-man-pages/man4/glPolygonMode.xml create mode 100644 upstream-man-pages/man4/glPolygonOffset.xml create mode 100644 upstream-man-pages/man4/glPopDebugGroup.xml create mode 100644 upstream-man-pages/man4/glPrimitiveRestartIndex.xml create mode 100644 upstream-man-pages/man4/glProgramBinary.xml create mode 100644 upstream-man-pages/man4/glProgramParameter.xml create mode 100644 upstream-man-pages/man4/glProgramUniform.xml create mode 100644 upstream-man-pages/man4/glProvokingVertex.xml create mode 100644 upstream-man-pages/man4/glPushDebugGroup.xml create mode 100644 upstream-man-pages/man4/glQueryCounter.xml create mode 100644 upstream-man-pages/man4/glReadBuffer.xml create mode 100644 upstream-man-pages/man4/glReadPixels.xml create mode 100644 upstream-man-pages/man4/glReleaseShaderCompiler.xml create mode 100644 upstream-man-pages/man4/glRenderbufferStorage.xml create mode 100644 upstream-man-pages/man4/glRenderbufferStorageMultisample.xml create mode 100644 upstream-man-pages/man4/glResumeTransformFeedback.xml create mode 100644 upstream-man-pages/man4/glSampleCoverage.xml create mode 100644 upstream-man-pages/man4/glSampleMaski.xml create mode 100644 upstream-man-pages/man4/glSamplerParameter.xml create mode 100644 upstream-man-pages/man4/glScissor.xml create mode 100644 upstream-man-pages/man4/glScissorArray.xml create mode 100644 upstream-man-pages/man4/glScissorIndexed.xml create mode 100644 upstream-man-pages/man4/glShaderBinary.xml create mode 100644 upstream-man-pages/man4/glShaderSource.xml create mode 100644 upstream-man-pages/man4/glShaderStorageBlockBinding.xml create mode 100644 upstream-man-pages/man4/glStencilFunc.xml create mode 100644 upstream-man-pages/man4/glStencilFuncSeparate.xml create mode 100644 upstream-man-pages/man4/glStencilMask.xml create mode 100644 upstream-man-pages/man4/glStencilMaskSeparate.xml create mode 100644 upstream-man-pages/man4/glStencilOp.xml create mode 100644 upstream-man-pages/man4/glStencilOpSeparate.xml create mode 100644 upstream-man-pages/man4/glTexBuffer.xml create mode 100644 upstream-man-pages/man4/glTexBufferRange.xml create mode 100644 upstream-man-pages/man4/glTexImage1D.xml create mode 100644 upstream-man-pages/man4/glTexImage2D.xml create mode 100644 upstream-man-pages/man4/glTexImage2DMultisample.xml create mode 100644 upstream-man-pages/man4/glTexImage3D.xml create mode 100644 upstream-man-pages/man4/glTexImage3DMultisample.xml create mode 100644 upstream-man-pages/man4/glTexParameter.xml create mode 100644 upstream-man-pages/man4/glTexStorage1D.xml create mode 100644 upstream-man-pages/man4/glTexStorage2D.xml create mode 100644 upstream-man-pages/man4/glTexStorage2DMultisample.xml create mode 100644 upstream-man-pages/man4/glTexStorage3D.xml create mode 100644 upstream-man-pages/man4/glTexStorage3DMultisample.xml create mode 100644 upstream-man-pages/man4/glTexSubImage1D.xml create mode 100644 upstream-man-pages/man4/glTexSubImage2D.xml create mode 100644 upstream-man-pages/man4/glTexSubImage3D.xml create mode 100644 upstream-man-pages/man4/glTextureView.xml create mode 100644 upstream-man-pages/man4/glTransformFeedbackVaryings.xml create mode 100644 upstream-man-pages/man4/glUniform.xml create mode 100644 upstream-man-pages/man4/glUniformBlockBinding.xml create mode 100644 upstream-man-pages/man4/glUniformSubroutines.xml create mode 100644 upstream-man-pages/man4/glUseProgram.xml create mode 100644 upstream-man-pages/man4/glUseProgramStages.xml create mode 100644 upstream-man-pages/man4/glValidateProgram.xml create mode 100644 upstream-man-pages/man4/glValidateProgramPipeline.xml create mode 100644 upstream-man-pages/man4/glVertexAttrib.xml create mode 100644 upstream-man-pages/man4/glVertexAttribBinding.xml create mode 100644 upstream-man-pages/man4/glVertexAttribDivisor.xml create mode 100644 upstream-man-pages/man4/glVertexAttribFormat.xml create mode 100644 upstream-man-pages/man4/glVertexAttribPointer.xml create mode 100644 upstream-man-pages/man4/glVertexBindingDivisor.xml create mode 100644 upstream-man-pages/man4/glViewport.xml create mode 100644 upstream-man-pages/man4/glViewportArray.xml create mode 100644 upstream-man-pages/man4/glViewportIndexed.xml create mode 100644 upstream-man-pages/man4/glWaitSync.xml create mode 100644 upstream-man-pages/man4/index.php create mode 100644 upstream-man-pages/man4/internalformattable.xml create mode 100644 upstream-man-pages/man4/removedTypes.xml create mode 100644 upstream-man-pages/man4/top.php create mode 100644 upstream-man-pages/man4/usr/include/make/commondefs create mode 100644 upstream-man-pages/man4/usr/include/make/commonrules create mode 100644 upstream-man-pages/man4/usr/include/make/commonrules.win32 create mode 100644 upstream-man-pages/man4/usr/include/make/linuxdefs create mode 100644 upstream-man-pages/man4/xhtml/Makefile create mode 100644 upstream-man-pages/man4/xhtml/ctop.xsl create mode 100644 upstream-man-pages/man4/xhtml/glActiveShaderProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glActiveTexture.xml create mode 100644 upstream-man-pages/man4/xhtml/glAttachShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glBeginConditionalRender.xml create mode 100644 upstream-man-pages/man4/xhtml/glBeginQuery.xml create mode 100644 upstream-man-pages/man4/xhtml/glBeginQueryIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glBeginTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindAttribLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindBufferBase.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindBufferRange.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindFragDataLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindFragDataLocationIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindFramebuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindImageTexture.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindProgramPipeline.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindRenderbuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindSampler.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindTexture.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindVertexArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glBindVertexBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glBlendColor.xml create mode 100644 upstream-man-pages/man4/xhtml/glBlendEquation.xml create mode 100644 upstream-man-pages/man4/xhtml/glBlendEquationSeparate.xml create mode 100644 upstream-man-pages/man4/xhtml/glBlendFunc.xml create mode 100644 upstream-man-pages/man4/xhtml/glBlendFuncSeparate.xml create mode 100644 upstream-man-pages/man4/xhtml/glBlitFramebuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glBufferData.xml create mode 100644 upstream-man-pages/man4/xhtml/glBufferSubData.xml create mode 100644 upstream-man-pages/man4/xhtml/glCheckFramebufferStatus.xml create mode 100644 upstream-man-pages/man4/xhtml/glClampColor.xml create mode 100644 upstream-man-pages/man4/xhtml/glClear.xml create mode 100644 upstream-man-pages/man4/xhtml/glClearBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glClearBufferData.xml create mode 100644 upstream-man-pages/man4/xhtml/glClearBufferSubData.xml create mode 100644 upstream-man-pages/man4/xhtml/glClearColor.xml create mode 100644 upstream-man-pages/man4/xhtml/glClearDepth.xml create mode 100644 upstream-man-pages/man4/xhtml/glClearStencil.xml create mode 100644 upstream-man-pages/man4/xhtml/glClientWaitSync.xml create mode 100644 upstream-man-pages/man4/xhtml/glColorMask.xml create mode 100644 upstream-man-pages/man4/xhtml/glColorMaski.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompileShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompressedTexImage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompressedTexImage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompressedTexImage3D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompressedTexSubImage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompressedTexSubImage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCompressedTexSubImage3D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyBufferSubData.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyImageSubData.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyTexImage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyTexImage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyTexSubImage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyTexSubImage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCopyTexSubImage3D.xml create mode 100644 upstream-man-pages/man4/xhtml/glCreateProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glCreateShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glCreateShaderProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glCullFace.xml create mode 100644 upstream-man-pages/man4/xhtml/glDebugMessageCallback.xml create mode 100644 upstream-man-pages/man4/xhtml/glDebugMessageControl.xml create mode 100644 upstream-man-pages/man4/xhtml/glDebugMessageInsert.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteBuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteFramebuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteProgramPipelines.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteQueries.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteRenderbuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteSamplers.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteSync.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteTextures.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteTransformFeedbacks.xml create mode 100644 upstream-man-pages/man4/xhtml/glDeleteVertexArrays.xml create mode 100644 upstream-man-pages/man4/xhtml/glDepthFunc.xml create mode 100644 upstream-man-pages/man4/xhtml/glDepthMask.xml create mode 100644 upstream-man-pages/man4/xhtml/glDepthRange.xml create mode 100644 upstream-man-pages/man4/xhtml/glDepthRangeArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glDepthRangeIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glDetachShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glDisable.xml create mode 100644 upstream-man-pages/man4/xhtml/glDisableVertexAttribArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glDispatchCompute.xml create mode 100644 upstream-man-pages/man4/xhtml/glDispatchComputeIndirect.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawArrays.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawArraysIndirect.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawArraysInstanced.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawArraysInstancedBaseInstance.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawBuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElements.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElementsIndirect.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElementsInstanced.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseInstance.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertex.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertexBaseInstance.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawRangeElements.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawRangeElementsBaseVertex.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawTransformFeedbackInstanced.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStream.xml create mode 100644 upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStreamInstanced.xml create mode 100644 upstream-man-pages/man4/xhtml/glEnable.xml create mode 100644 upstream-man-pages/man4/xhtml/glEnableVertexAttribArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glEndConditionalRender.xml create mode 100644 upstream-man-pages/man4/xhtml/glEndQuery.xml create mode 100644 upstream-man-pages/man4/xhtml/glEndQueryIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glEndTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glFenceSync.xml create mode 100644 upstream-man-pages/man4/xhtml/glFinish.xml create mode 100644 upstream-man-pages/man4/xhtml/glFlush.xml create mode 100644 upstream-man-pages/man4/xhtml/glFlushMappedBufferRange.xml create mode 100644 upstream-man-pages/man4/xhtml/glFramebufferParameteri.xml create mode 100644 upstream-man-pages/man4/xhtml/glFramebufferRenderbuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glFramebufferTexture.xml create mode 100644 upstream-man-pages/man4/xhtml/glFramebufferTextureLayer.xml create mode 100644 upstream-man-pages/man4/xhtml/glFrontFace.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenBuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenFramebuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenProgramPipelines.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenQueries.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenRenderbuffers.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenSamplers.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenTextures.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenTransformFeedbacks.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenVertexArrays.xml create mode 100644 upstream-man-pages/man4/xhtml/glGenerateMipmap.xml create mode 100644 upstream-man-pages/man4/xhtml/glGet.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveAtomicCounterBufferiv.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveAttrib.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveSubroutineName.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniform.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniformName.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveUniform.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveUniformBlock.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveUniformBlockName.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveUniformName.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetActiveUniformsiv.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetAttachedShaders.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetAttribLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetBufferParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetBufferPointerv.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetBufferSubData.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetCompressedTexImage.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetDebugMessageLog.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetError.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetFragDataIndex.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetFragDataLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetFramebufferAttachmentParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetFramebufferParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetInternalFormativ.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetMultisample.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetObjectLabel.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetObjectPtrLabel.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramBinary.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramInfoLog.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramInterface.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramPipeline.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramPipelineInfoLog.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramResource.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramResourceIndex.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramResourceLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramResourceLocationIndex.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramResourceName.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetProgramStage.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetQueryIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetQueryObject.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetQueryiv.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetRenderbufferParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetSamplerParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetShaderInfoLog.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetShaderPrecisionFormat.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetShaderSource.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetString.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetSubroutineIndex.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetSubroutineUniformLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetSync.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetTexImage.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetTexLevelParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetTexParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetTransformFeedbackVarying.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetUniform.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetUniformBlockIndex.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetUniformIndices.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetUniformLocation.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetUniformSubroutine.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetVertexAttrib.xml create mode 100644 upstream-man-pages/man4/xhtml/glGetVertexAttribPointerv.xml create mode 100644 upstream-man-pages/man4/xhtml/glHint.xml create mode 100644 upstream-man-pages/man4/xhtml/glInvalidateBufferData.xml create mode 100644 upstream-man-pages/man4/xhtml/glInvalidateBufferSubData.xml create mode 100644 upstream-man-pages/man4/xhtml/glInvalidateFramebuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glInvalidateSubFramebuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glInvalidateTexImage.xml create mode 100644 upstream-man-pages/man4/xhtml/glInvalidateTexSubImage.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsEnabled.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsFramebuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsProgramPipeline.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsQuery.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsRenderbuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsSampler.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsShader.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsSync.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsTexture.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glIsVertexArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glLineWidth.xml create mode 100644 upstream-man-pages/man4/xhtml/glLinkProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glLogicOp.xml create mode 100644 upstream-man-pages/man4/xhtml/glMapBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glMapBufferRange.xml create mode 100644 upstream-man-pages/man4/xhtml/glMemoryBarrier.xml create mode 100644 upstream-man-pages/man4/xhtml/glMinSampleShading.xml create mode 100644 upstream-man-pages/man4/xhtml/glMultiDrawArrays.xml create mode 100644 upstream-man-pages/man4/xhtml/glMultiDrawArraysIndirect.xml create mode 100644 upstream-man-pages/man4/xhtml/glMultiDrawElements.xml create mode 100644 upstream-man-pages/man4/xhtml/glMultiDrawElementsBaseVertex.xml create mode 100644 upstream-man-pages/man4/xhtml/glMultiDrawElementsIndirect.xml create mode 100644 upstream-man-pages/man4/xhtml/glObjectLabel.xml create mode 100644 upstream-man-pages/man4/xhtml/glObjectPtrLabel.xml create mode 100644 upstream-man-pages/man4/xhtml/glPatchParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glPauseTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glPixelStore.xml create mode 100644 upstream-man-pages/man4/xhtml/glPointParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glPointSize.xml create mode 100644 upstream-man-pages/man4/xhtml/glPolygonMode.xml create mode 100644 upstream-man-pages/man4/xhtml/glPolygonOffset.xml create mode 100644 upstream-man-pages/man4/xhtml/glPopDebugGroup.xml create mode 100644 upstream-man-pages/man4/xhtml/glPrimitiveRestartIndex.xml create mode 100644 upstream-man-pages/man4/xhtml/glProgramBinary.xml create mode 100644 upstream-man-pages/man4/xhtml/glProgramParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glProgramUniform.xml create mode 100644 upstream-man-pages/man4/xhtml/glProvokingVertex.xml create mode 100644 upstream-man-pages/man4/xhtml/glPushDebugGroup.xml create mode 100644 upstream-man-pages/man4/xhtml/glQueryCounter.xml create mode 100644 upstream-man-pages/man4/xhtml/glReadBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glReadPixels.xml create mode 100644 upstream-man-pages/man4/xhtml/glReleaseShaderCompiler.xml create mode 100644 upstream-man-pages/man4/xhtml/glRenderbufferStorage.xml create mode 100644 upstream-man-pages/man4/xhtml/glRenderbufferStorageMultisample.xml create mode 100644 upstream-man-pages/man4/xhtml/glResumeTransformFeedback.xml create mode 100644 upstream-man-pages/man4/xhtml/glSampleCoverage.xml create mode 100644 upstream-man-pages/man4/xhtml/glSampleMaski.xml create mode 100644 upstream-man-pages/man4/xhtml/glSamplerParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glScissor.xml create mode 100644 upstream-man-pages/man4/xhtml/glScissorArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glScissorIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glShaderBinary.xml create mode 100644 upstream-man-pages/man4/xhtml/glShaderSource.xml create mode 100644 upstream-man-pages/man4/xhtml/glShaderStorageBlockBinding.xml create mode 100644 upstream-man-pages/man4/xhtml/glStencilFunc.xml create mode 100644 upstream-man-pages/man4/xhtml/glStencilFuncSeparate.xml create mode 100644 upstream-man-pages/man4/xhtml/glStencilMask.xml create mode 100644 upstream-man-pages/man4/xhtml/glStencilMaskSeparate.xml create mode 100644 upstream-man-pages/man4/xhtml/glStencilOp.xml create mode 100644 upstream-man-pages/man4/xhtml/glStencilOpSeparate.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexBufferRange.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexImage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexImage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexImage2DMultisample.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexImage3D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexImage3DMultisample.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexParameter.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexStorage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexStorage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexStorage2DMultisample.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexStorage3D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexStorage3DMultisample.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexSubImage1D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexSubImage2D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTexSubImage3D.xml create mode 100644 upstream-man-pages/man4/xhtml/glTextureView.xml create mode 100644 upstream-man-pages/man4/xhtml/glTransformFeedbackVaryings.xml create mode 100644 upstream-man-pages/man4/xhtml/glUniform.xml create mode 100644 upstream-man-pages/man4/xhtml/glUniformBlockBinding.xml create mode 100644 upstream-man-pages/man4/xhtml/glUniformSubroutines.xml create mode 100644 upstream-man-pages/man4/xhtml/glUnmapBuffer.xml create mode 100644 upstream-man-pages/man4/xhtml/glUseProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glUseProgramStages.xml create mode 100644 upstream-man-pages/man4/xhtml/glValidateProgram.xml create mode 100644 upstream-man-pages/man4/xhtml/glValidateProgramPipeline.xml create mode 100644 upstream-man-pages/man4/xhtml/glVertexAttrib.xml create mode 100644 upstream-man-pages/man4/xhtml/glVertexAttribBinding.xml create mode 100644 upstream-man-pages/man4/xhtml/glVertexAttribDivisor.xml create mode 100644 upstream-man-pages/man4/xhtml/glVertexAttribFormat.xml create mode 100644 upstream-man-pages/man4/xhtml/glVertexAttribPointer.xml create mode 100644 upstream-man-pages/man4/xhtml/glVertexBindingDivisor.xml create mode 100644 upstream-man-pages/man4/xhtml/glViewport.xml create mode 100644 upstream-man-pages/man4/xhtml/glViewportArray.xml create mode 100644 upstream-man-pages/man4/xhtml/glViewportIndexed.xml create mode 100644 upstream-man-pages/man4/xhtml/glWaitSync.xml create mode 100644 upstream-man-pages/man4/xhtml/index.html create mode 100644 upstream-man-pages/man4/xhtml/makeindex.pl create mode 100644 upstream-man-pages/man4/xhtml/mathml.xsl create mode 100644 upstream-man-pages/man4/xhtml/opengl-man.css create mode 100644 upstream-man-pages/man4/xhtml/opengl-man.xsl create mode 100644 upstream-man-pages/man4/xhtml/pmathml.xsl create mode 100644 upstream-man-pages/man4/xhtml/pmathmlcss.xsl create mode 100644 upstream-man-pages/man4/xhtml/preproc.sed create mode 100644 upstream-man-pages/man4/xhtml/removedTypes.xml create mode 100644 upstream-man-pages/man4/xhtml/start.html create mode 100644 upstream-man-pages/man4/xhtml/xhtml-lat1.ent create mode 100644 upstream-man-pages/man4/xhtml/xhtml-special.ent create mode 100644 upstream-man-pages/man4/xhtml/xhtml-symbol.ent create mode 100644 upstream-man-pages/man4/xhtml/xhtml1-transitional.dtd create mode 100644 upstream-man-pages/manglsl/EmitStreamVertex.xml create mode 100644 upstream-man-pages/manglsl/EmitVertex.xml create mode 100644 upstream-man-pages/manglsl/EndPrimitive.xml create mode 100644 upstream-man-pages/manglsl/EndStreamPrimitive.xml create mode 100644 upstream-man-pages/manglsl/Makefile create mode 100644 upstream-man-pages/manglsl/abs.xml create mode 100644 upstream-man-pages/manglsl/acos.xml create mode 100644 upstream-man-pages/manglsl/acosh.xml create mode 100644 upstream-man-pages/manglsl/all.xml create mode 100644 upstream-man-pages/manglsl/any.xml create mode 100644 upstream-man-pages/manglsl/asin.xml create mode 100644 upstream-man-pages/manglsl/asinh.xml create mode 100644 upstream-man-pages/manglsl/atan.xml create mode 100644 upstream-man-pages/manglsl/atanh.xml create mode 100644 upstream-man-pages/manglsl/atomicAdd.xml create mode 100644 upstream-man-pages/manglsl/atomicAnd.xml create mode 100644 upstream-man-pages/manglsl/atomicCompSwap.xml create mode 100644 upstream-man-pages/manglsl/atomicCounter.xml create mode 100644 upstream-man-pages/manglsl/atomicCounterDecrement.xml create mode 100644 upstream-man-pages/manglsl/atomicCounterIncrement.xml create mode 100644 upstream-man-pages/manglsl/atomicExchange.xml create mode 100644 upstream-man-pages/manglsl/atomicMax.xml create mode 100644 upstream-man-pages/manglsl/atomicMin.xml create mode 100644 upstream-man-pages/manglsl/atomicOr.xml create mode 100644 upstream-man-pages/manglsl/atomicXor.xml create mode 100644 upstream-man-pages/manglsl/barrier.xml create mode 100644 upstream-man-pages/manglsl/bitCount.xml create mode 100644 upstream-man-pages/manglsl/bitfieldExtract.xml create mode 100644 upstream-man-pages/manglsl/bitfieldInsert.xml create mode 100644 upstream-man-pages/manglsl/bitfieldReverse.xml create mode 100644 upstream-man-pages/manglsl/bottom.php create mode 100644 upstream-man-pages/manglsl/ceil.xml create mode 100644 upstream-man-pages/manglsl/clamp.xml create mode 100644 upstream-man-pages/manglsl/cos.xml create mode 100644 upstream-man-pages/manglsl/cosh.xml create mode 100644 upstream-man-pages/manglsl/cross.xml create mode 100644 upstream-man-pages/manglsl/dFdx.xml create mode 100644 upstream-man-pages/manglsl/degrees.xml create mode 100644 upstream-man-pages/manglsl/determinant.xml create mode 100644 upstream-man-pages/manglsl/distance.xml create mode 100644 upstream-man-pages/manglsl/dot.xml create mode 100644 upstream-man-pages/manglsl/equal.xml create mode 100644 upstream-man-pages/manglsl/exp.xml create mode 100644 upstream-man-pages/manglsl/exp2.xml create mode 100644 upstream-man-pages/manglsl/faceforward.xml create mode 100644 upstream-man-pages/manglsl/findLSB.xml create mode 100644 upstream-man-pages/manglsl/findMSB.xml create mode 100644 upstream-man-pages/manglsl/floatBitsToInt.xml create mode 100644 upstream-man-pages/manglsl/floor.xml create mode 100644 upstream-man-pages/manglsl/fma.xml create mode 100644 upstream-man-pages/manglsl/fract.xml create mode 100644 upstream-man-pages/manglsl/frexp.xml create mode 100644 upstream-man-pages/manglsl/fwidth.xml create mode 100644 upstream-man-pages/manglsl/gl_ClipDistance.xml create mode 100644 upstream-man-pages/manglsl/gl_FragCoord.xml create mode 100644 upstream-man-pages/manglsl/gl_FragDepth.xml create mode 100644 upstream-man-pages/manglsl/gl_FrontFacing.xml create mode 100644 upstream-man-pages/manglsl/gl_GlobalInvocationID.xml create mode 100644 upstream-man-pages/manglsl/gl_InstanceID.xml create mode 100644 upstream-man-pages/manglsl/gl_InvocationID.xml create mode 100644 upstream-man-pages/manglsl/gl_Layer.xml create mode 100644 upstream-man-pages/manglsl/gl_LocalInvocationID.xml create mode 100644 upstream-man-pages/manglsl/gl_LocalInvocationIndex.xml create mode 100644 upstream-man-pages/manglsl/gl_NumSamples.xml create mode 100644 upstream-man-pages/manglsl/gl_NumWorkGroups.xml create mode 100644 upstream-man-pages/manglsl/gl_PatchVerticesIn.xml create mode 100644 upstream-man-pages/manglsl/gl_PointCoord.xml create mode 100644 upstream-man-pages/manglsl/gl_PointSize.xml create mode 100644 upstream-man-pages/manglsl/gl_Position.xml create mode 100644 upstream-man-pages/manglsl/gl_PrimitiveID.xml create mode 100644 upstream-man-pages/manglsl/gl_PrimitiveIDIn.xml create mode 100644 upstream-man-pages/manglsl/gl_SampleID.xml create mode 100644 upstream-man-pages/manglsl/gl_SampleMask.xml create mode 100644 upstream-man-pages/manglsl/gl_SampleMaskIn.xml create mode 100644 upstream-man-pages/manglsl/gl_SamplePosition.xml create mode 100644 upstream-man-pages/manglsl/gl_TessCoord.xml create mode 100644 upstream-man-pages/manglsl/gl_TessLevelInner.xml create mode 100644 upstream-man-pages/manglsl/gl_TessLevelOuter.xml create mode 100644 upstream-man-pages/manglsl/gl_VertexID.xml create mode 100644 upstream-man-pages/manglsl/gl_ViewportIndex.xml create mode 100644 upstream-man-pages/manglsl/gl_WorkGroupID.xml create mode 100644 upstream-man-pages/manglsl/gl_WorkGroupSize.xml create mode 100644 upstream-man-pages/manglsl/greaterThan.xml create mode 100644 upstream-man-pages/manglsl/greaterThanEqual.xml create mode 100644 upstream-man-pages/manglsl/groupMemoryBarrier.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicAdd.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicAnd.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicCompSwap.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicExchange.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicMax.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicMin.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicOr.xml create mode 100644 upstream-man-pages/manglsl/imageAtomicXor.xml create mode 100644 upstream-man-pages/manglsl/imageLoad.xml create mode 100644 upstream-man-pages/manglsl/imageSize.xml create mode 100644 upstream-man-pages/manglsl/imageStore.xml create mode 100644 upstream-man-pages/manglsl/index.php create mode 100644 upstream-man-pages/manglsl/intBitsToFloat.xml create mode 100644 upstream-man-pages/manglsl/interpolateAtCentroid.xml create mode 100644 upstream-man-pages/manglsl/interpolateAtOffset.xml create mode 100644 upstream-man-pages/manglsl/interpolateAtSample.xml create mode 100644 upstream-man-pages/manglsl/inverse.xml create mode 100644 upstream-man-pages/manglsl/inversesqrt.xml create mode 100644 upstream-man-pages/manglsl/isinf.xml create mode 100644 upstream-man-pages/manglsl/isnan.xml create mode 100644 upstream-man-pages/manglsl/ldexp.xml create mode 100644 upstream-man-pages/manglsl/length.xml create mode 100644 upstream-man-pages/manglsl/lessThan.xml create mode 100644 upstream-man-pages/manglsl/lessThanEqual.xml create mode 100644 upstream-man-pages/manglsl/log.xml create mode 100644 upstream-man-pages/manglsl/log2.xml create mode 100644 upstream-man-pages/manglsl/matrixCompMult.xml create mode 100644 upstream-man-pages/manglsl/max.xml create mode 100644 upstream-man-pages/manglsl/memoryBarrier.xml create mode 100644 upstream-man-pages/manglsl/memoryBarrierAtomicCounter.xml create mode 100644 upstream-man-pages/manglsl/memoryBarrierBuffer.xml create mode 100644 upstream-man-pages/manglsl/memoryBarrierImage.xml create mode 100644 upstream-man-pages/manglsl/memoryBarrierShared.xml create mode 100644 upstream-man-pages/manglsl/min.xml create mode 100644 upstream-man-pages/manglsl/mix.xml create mode 100644 upstream-man-pages/manglsl/mod.xml create mode 100644 upstream-man-pages/manglsl/modf.xml create mode 100644 upstream-man-pages/manglsl/noise.xml create mode 100644 upstream-man-pages/manglsl/normalize.xml create mode 100644 upstream-man-pages/manglsl/not.xml create mode 100644 upstream-man-pages/manglsl/notEqual.xml create mode 100644 upstream-man-pages/manglsl/outerProduct.xml create mode 100644 upstream-man-pages/manglsl/packDouble2x32.xml create mode 100644 upstream-man-pages/manglsl/packHalf2x16.xml create mode 100644 upstream-man-pages/manglsl/packUnorm2x16.xml create mode 100644 upstream-man-pages/manglsl/pow.xml create mode 100644 upstream-man-pages/manglsl/radians.xml create mode 100644 upstream-man-pages/manglsl/reflect.xml create mode 100644 upstream-man-pages/manglsl/refract.xml create mode 100644 upstream-man-pages/manglsl/round.xml create mode 100644 upstream-man-pages/manglsl/roundEven.xml create mode 100644 upstream-man-pages/manglsl/sign.xml create mode 100644 upstream-man-pages/manglsl/sin.xml create mode 100644 upstream-man-pages/manglsl/sinh.xml create mode 100644 upstream-man-pages/manglsl/smoothstep.xml create mode 100644 upstream-man-pages/manglsl/sqrt.xml create mode 100644 upstream-man-pages/manglsl/step.xml create mode 100644 upstream-man-pages/manglsl/tan.xml create mode 100644 upstream-man-pages/manglsl/tanh.xml create mode 100644 upstream-man-pages/manglsl/texelFetch.xml create mode 100644 upstream-man-pages/manglsl/texelFetchOffset.xml create mode 100644 upstream-man-pages/manglsl/texture.xml create mode 100644 upstream-man-pages/manglsl/textureGather.xml create mode 100644 upstream-man-pages/manglsl/textureGatherOffset.xml create mode 100644 upstream-man-pages/manglsl/textureGatherOffsets.xml create mode 100644 upstream-man-pages/manglsl/textureGrad.xml create mode 100644 upstream-man-pages/manglsl/textureGradOffset.xml create mode 100644 upstream-man-pages/manglsl/textureLod.xml create mode 100644 upstream-man-pages/manglsl/textureLodOffset.xml create mode 100644 upstream-man-pages/manglsl/textureOffset.xml create mode 100644 upstream-man-pages/manglsl/textureProj.xml create mode 100644 upstream-man-pages/manglsl/textureProjGrad.xml create mode 100644 upstream-man-pages/manglsl/textureProjGradOffset.xml create mode 100644 upstream-man-pages/manglsl/textureProjLod.xml create mode 100644 upstream-man-pages/manglsl/textureProjLodOffset.xml create mode 100644 upstream-man-pages/manglsl/textureProjOffset.xml create mode 100644 upstream-man-pages/manglsl/textureQueryLevels.xml create mode 100644 upstream-man-pages/manglsl/textureQueryLod.xml create mode 100644 upstream-man-pages/manglsl/textureSize.xml create mode 100644 upstream-man-pages/manglsl/top.php create mode 100644 upstream-man-pages/manglsl/transpose.xml create mode 100644 upstream-man-pages/manglsl/trunc.xml create mode 100644 upstream-man-pages/manglsl/uaddCarry.xml create mode 100644 upstream-man-pages/manglsl/umulExtended.xml create mode 100644 upstream-man-pages/manglsl/unpackDouble2x32.xml create mode 100644 upstream-man-pages/manglsl/unpackHalf2x16.xml create mode 100644 upstream-man-pages/manglsl/unpackUnorm2x16.xml create mode 100644 upstream-man-pages/manglsl/usubBorrow.xml create mode 100644 upstream-man-pages/manglsl/xhtml/EmitStreamVertex.xml create mode 100644 upstream-man-pages/manglsl/xhtml/EmitVertex.xml create mode 100644 upstream-man-pages/manglsl/xhtml/EndPrimitive.xml create mode 100644 upstream-man-pages/manglsl/xhtml/EndStreamPrimitive.xml create mode 100644 upstream-man-pages/manglsl/xhtml/Makefile create mode 100644 upstream-man-pages/manglsl/xhtml/abs.xml create mode 100644 upstream-man-pages/manglsl/xhtml/acos.xml create mode 100644 upstream-man-pages/manglsl/xhtml/acosh.xml create mode 100644 upstream-man-pages/manglsl/xhtml/all.xml create mode 100644 upstream-man-pages/manglsl/xhtml/any.xml create mode 100644 upstream-man-pages/manglsl/xhtml/asin.xml create mode 100644 upstream-man-pages/manglsl/xhtml/asinh.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atan.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atanh.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicAdd.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicAnd.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicCompSwap.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicCounter.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicCounterDecrement.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicCounterIncrement.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicExchange.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicMax.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicMin.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicOr.xml create mode 100644 upstream-man-pages/manglsl/xhtml/atomicXor.xml create mode 100644 upstream-man-pages/manglsl/xhtml/barrier.xml create mode 100644 upstream-man-pages/manglsl/xhtml/bitCount.xml create mode 100644 upstream-man-pages/manglsl/xhtml/bitfieldExtract.xml create mode 100644 upstream-man-pages/manglsl/xhtml/bitfieldInsert.xml create mode 100644 upstream-man-pages/manglsl/xhtml/bitfieldReverse.xml create mode 100644 upstream-man-pages/manglsl/xhtml/ceil.xml create mode 100644 upstream-man-pages/manglsl/xhtml/clamp.xml create mode 100644 upstream-man-pages/manglsl/xhtml/cos.xml create mode 100644 upstream-man-pages/manglsl/xhtml/cosh.xml create mode 100644 upstream-man-pages/manglsl/xhtml/cross.xml create mode 100644 upstream-man-pages/manglsl/xhtml/ctop.xsl create mode 100644 upstream-man-pages/manglsl/xhtml/dFdx.xml create mode 100644 upstream-man-pages/manglsl/xhtml/dFdy.xml create mode 100644 upstream-man-pages/manglsl/xhtml/degrees.xml create mode 100644 upstream-man-pages/manglsl/xhtml/determinant.xml create mode 100644 upstream-man-pages/manglsl/xhtml/distance.xml create mode 100644 upstream-man-pages/manglsl/xhtml/dot.xml create mode 100644 upstream-man-pages/manglsl/xhtml/equal.xml create mode 100644 upstream-man-pages/manglsl/xhtml/exp.xml create mode 100644 upstream-man-pages/manglsl/xhtml/exp2.xml create mode 100644 upstream-man-pages/manglsl/xhtml/faceforward.xml create mode 100644 upstream-man-pages/manglsl/xhtml/findLSB.xml create mode 100644 upstream-man-pages/manglsl/xhtml/findMSB.xml create mode 100644 upstream-man-pages/manglsl/xhtml/floatBitsToInt.xml create mode 100644 upstream-man-pages/manglsl/xhtml/floatBitsToUint.xml create mode 100644 upstream-man-pages/manglsl/xhtml/floor.xml create mode 100644 upstream-man-pages/manglsl/xhtml/fma.xml create mode 100644 upstream-man-pages/manglsl/xhtml/fract.xml create mode 100644 upstream-man-pages/manglsl/xhtml/frexp.xml create mode 100644 upstream-man-pages/manglsl/xhtml/fwidth.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_ClipDistance.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_FragCoord.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_FragDepth.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_FrontFacing.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_GlobalInvocationID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_InstanceID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_InvocationID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_Layer.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_LocalInvocationID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_LocalInvocationIndex.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_NumSamples.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_NumWorkGroups.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_PatchVerticesIn.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_PointCoord.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_PointSize.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_Position.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_PrimitiveID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_PrimitiveIDIn.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_SampleID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_SampleMask.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_SampleMaskIn.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_SamplePosition.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_TessCoord.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_TessLevelInner.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_TessLevelOuter.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_VertexID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_ViewportIndex.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_WorkGroupID.xml create mode 100644 upstream-man-pages/manglsl/xhtml/gl_WorkGroupSize.xml create mode 100644 upstream-man-pages/manglsl/xhtml/greaterThan.xml create mode 100644 upstream-man-pages/manglsl/xhtml/greaterThanEqual.xml create mode 100644 upstream-man-pages/manglsl/xhtml/groupMemoryBarrier.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicAdd.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicAnd.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicCompSwap.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicExchange.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicMax.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicMin.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicOr.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageAtomicXor.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageLoad.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageSize.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imageStore.xml create mode 100644 upstream-man-pages/manglsl/xhtml/imulExtended.xml create mode 100644 upstream-man-pages/manglsl/xhtml/index.html create mode 100644 upstream-man-pages/manglsl/xhtml/intBitsToFloat.xml create mode 100644 upstream-man-pages/manglsl/xhtml/interpolateAtCentroid.xml create mode 100644 upstream-man-pages/manglsl/xhtml/interpolateAtOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/interpolateAtSample.xml create mode 100644 upstream-man-pages/manglsl/xhtml/inverse.xml create mode 100644 upstream-man-pages/manglsl/xhtml/inversesqrt.xml create mode 100644 upstream-man-pages/manglsl/xhtml/isinf.xml create mode 100644 upstream-man-pages/manglsl/xhtml/isnan.xml create mode 100644 upstream-man-pages/manglsl/xhtml/ldexp.xml create mode 100644 upstream-man-pages/manglsl/xhtml/length.xml create mode 100644 upstream-man-pages/manglsl/xhtml/lessThan.xml create mode 100644 upstream-man-pages/manglsl/xhtml/lessThanEqual.xml create mode 100644 upstream-man-pages/manglsl/xhtml/log.xml create mode 100644 upstream-man-pages/manglsl/xhtml/log2.xml create mode 100644 upstream-man-pages/manglsl/xhtml/makeindex.pl create mode 100644 upstream-man-pages/manglsl/xhtml/mathml.xsl create mode 100644 upstream-man-pages/manglsl/xhtml/matrixCompMult.xml create mode 100644 upstream-man-pages/manglsl/xhtml/max.xml create mode 100644 upstream-man-pages/manglsl/xhtml/memoryBarrier.xml create mode 100644 upstream-man-pages/manglsl/xhtml/memoryBarrierAtomicCounter.xml create mode 100644 upstream-man-pages/manglsl/xhtml/memoryBarrierBuffer.xml create mode 100644 upstream-man-pages/manglsl/xhtml/memoryBarrierImage.xml create mode 100644 upstream-man-pages/manglsl/xhtml/memoryBarrierShared.xml create mode 100644 upstream-man-pages/manglsl/xhtml/min.xml create mode 100644 upstream-man-pages/manglsl/xhtml/mix.xml create mode 100644 upstream-man-pages/manglsl/xhtml/mod.xml create mode 100644 upstream-man-pages/manglsl/xhtml/modf.xml create mode 100644 upstream-man-pages/manglsl/xhtml/noise.xml create mode 100644 upstream-man-pages/manglsl/xhtml/normalize.xml create mode 100644 upstream-man-pages/manglsl/xhtml/not.xml create mode 100644 upstream-man-pages/manglsl/xhtml/notEqual.xml create mode 100644 upstream-man-pages/manglsl/xhtml/opengl-man.css create mode 100644 upstream-man-pages/manglsl/xhtml/opengl-man.xsl create mode 100644 upstream-man-pages/manglsl/xhtml/outerProduct.xml create mode 100644 upstream-man-pages/manglsl/xhtml/packDouble2x32.xml create mode 100644 upstream-man-pages/manglsl/xhtml/packHalf2x16.xml create mode 100644 upstream-man-pages/manglsl/xhtml/packSnorm2x16.xml create mode 100644 upstream-man-pages/manglsl/xhtml/packSnorm4x8.xml create mode 100644 upstream-man-pages/manglsl/xhtml/packUnorm2x16.xml create mode 100644 upstream-man-pages/manglsl/xhtml/packUnorm4x8.xml create mode 100644 upstream-man-pages/manglsl/xhtml/pmathml.xsl create mode 100644 upstream-man-pages/manglsl/xhtml/pmathmlcss.xsl create mode 100644 upstream-man-pages/manglsl/xhtml/postprocess.sed create mode 100644 upstream-man-pages/manglsl/xhtml/pow.xml create mode 100644 upstream-man-pages/manglsl/xhtml/preprocess.sed create mode 100644 upstream-man-pages/manglsl/xhtml/radians.xml create mode 100644 upstream-man-pages/manglsl/xhtml/reflect.xml create mode 100644 upstream-man-pages/manglsl/xhtml/refract.xml create mode 100644 upstream-man-pages/manglsl/xhtml/round.xml create mode 100644 upstream-man-pages/manglsl/xhtml/roundEven.xml create mode 100644 upstream-man-pages/manglsl/xhtml/sign.xml create mode 100644 upstream-man-pages/manglsl/xhtml/sin.xml create mode 100644 upstream-man-pages/manglsl/xhtml/sinh.xml create mode 100644 upstream-man-pages/manglsl/xhtml/smoothstep.xml create mode 100644 upstream-man-pages/manglsl/xhtml/sqrt.xml create mode 100644 upstream-man-pages/manglsl/xhtml/start.html create mode 100644 upstream-man-pages/manglsl/xhtml/step.xml create mode 100644 upstream-man-pages/manglsl/xhtml/tan.xml create mode 100644 upstream-man-pages/manglsl/xhtml/tanh.xml create mode 100644 upstream-man-pages/manglsl/xhtml/texelFetch.xml create mode 100644 upstream-man-pages/manglsl/xhtml/texelFetchOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/texture.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureGather.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureGatherOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureGatherOffsets.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureGrad.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureGradOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureLod.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureLodOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureProj.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureProjGrad.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureProjGradOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureProjLod.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureProjLodOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureProjOffset.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureQueryLevels.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureQueryLod.xml create mode 100644 upstream-man-pages/manglsl/xhtml/textureSize.xml create mode 100644 upstream-man-pages/manglsl/xhtml/transpose.xml create mode 100644 upstream-man-pages/manglsl/xhtml/trunc.xml create mode 100644 upstream-man-pages/manglsl/xhtml/uaddCarry.xml create mode 100644 upstream-man-pages/manglsl/xhtml/uintBitsToFloat.xml create mode 100644 upstream-man-pages/manglsl/xhtml/umulExtended.xml create mode 100644 upstream-man-pages/manglsl/xhtml/unpackDouble2x32.xml create mode 100644 upstream-man-pages/manglsl/xhtml/unpackHalf2x16.xml create mode 100644 upstream-man-pages/manglsl/xhtml/unpackSnorm2x16.xml create mode 100644 upstream-man-pages/manglsl/xhtml/unpackSnorm4x8.xml create mode 100644 upstream-man-pages/manglsl/xhtml/unpackUnorm2x16.xml create mode 100644 upstream-man-pages/manglsl/xhtml/unpackUnorm4x8.xml create mode 100644 upstream-man-pages/manglsl/xhtml/usubBorrow.xml create mode 100644 upstream-man-pages/manglsl/xhtml/xhtml-lat1.ent create mode 100644 upstream-man-pages/manglsl/xhtml/xhtml-special.ent create mode 100644 upstream-man-pages/manglsl/xhtml/xhtml-symbol.ent create mode 100644 upstream-man-pages/manglsl/xhtml/xhtml1-transitional.dtd create mode 100755 upstream-man-pages/update diff --git a/upstream-man-pages/man2/Makefile b/upstream-man-pages/man2/Makefile new file mode 100644 index 0000000..06c2ca2 --- /dev/null +++ b/upstream-man-pages/man2/Makefile @@ -0,0 +1,49 @@ +#!gmake +# +# License Applicability. Except to the extent portions of this file are +# made subject to an alternative license as permitted in the SGI Free +# Software License B, Version 1.1 (the "License"), the contents of this +# file are subject only to the provisions of the License. You may not use +# this file except in compliance with the License. You may obtain a copy +# of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +# Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +# +# http://oss.sgi.com/projects/FreeB +# +# Note that, as provided in the License, the Software is distributed on an +# "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +# DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +# CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +# PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +# +# Original Code. The Original Code is: OpenGL Sample Implementation, +# Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +# Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: The application programming interfaces +# established by SGI in conjunction with the Original Code are The +# OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +# April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +# 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +# Window System(R) (Version 1.3), released October 19, 1998. This software +# was created using the OpenGL(R) version 1.2.1 Sample Implementation +# published by SGI, but has not been independently verified as being +# compliant with the OpenGL(R) version 1.2.1 Specification. + +COMMONPREF = standard +include $(ROOT)/usr/include/make/commondefs + +SUBDIRS = \ + xhtml \ + $(NULL) + +default $(ALLTARGS): $(_FORCE) + $(SUBDIRS_MAKERULE) + +distoss: + $(MAKE) $(COMMONPREF)$@ + $(SUBDIRS_MAKERULE) + +include $(COMMONRULES) diff --git a/upstream-man-pages/man2/README.txt b/upstream-man-pages/man2/README.txt new file mode 100644 index 0000000..87d88e2 --- /dev/null +++ b/upstream-man-pages/man2/README.txt @@ -0,0 +1,56 @@ +Khronos has released the OpenGL man page XML sources. This was done +mostly at the request of people wishing to adapt the man pages to other +output formats or language bindings. + +You will need to have a reasonable understanding of Subversion, Docbook, +XML, XSLT, Linux package management (if using Linux), and other +components of the toolchain used to generate the man pages, before +you're likely to have much success with them. A great deal of Docbook, +XML, and XSL infrastructure may need to be installed on your system +first. + +The directory tree containing the man pages is available for anonymous, +read-only checkout in Khronos' Subversion server, at + + https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/docs/man/ + +If you have the Subversion command-line client installed, you should be +able to check out the man pages into the directory 'man' by executing +the command + + svn co --username anonymous --password anonymous https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/docs/man/ man + +Under 'man' you'll find the OpenGL 2.1 man pages, both the Docbook XML +source in this directory and generated XHTML+MathML in xhtml/ , and some +supporting build and XSL infrastructure. There are two files in the +OpenGL.org Wiki containing additional documentation: + +http://www.opengl.org/wiki/index.php/Getting_started/XML_Toolchain_and_Man_Pages#Toolchain + - Description of the tools used to build the man pages; how to install + and make use of them if you want to build them yourself; and how to + report problems. + +http://www.opengl.org/wiki/index.php/Getting_started/Viewing_XHTML_and_MathML + - Some notes on viewing XHTML+MathML documents in different browsers. + +------------------------------------------------------------------ + +Special note on DTDs: the normal Docbook build process generates a +DOCTYPE header with references to the DTD + + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" + +While in principle this is only a namespace identifier, Internet +Explorer nonetheless downloads the DTD, and the entity files referenced +from within it, on every page loaded. This contributes to creating +unacceptable load on www.w3.org, and the IE user agent has been blocked +for these URLs. Ideally Microsoft would fix IE, but in the meantime, the +only workaround within our control is to cache copies of the DTD and +entity files locally in the generated xhtml/ directory and postprocess +the generated XHTML to refer to them. This explains the presence of the +files + + xhtml/xhtml1-transitional.dtd + xhtml/xhtml-lat1.ent + xhtml/xhtml-special.ent + xhtml/xhtml-symbol.ent diff --git a/upstream-man-pages/man2/bottom.php b/upstream-man-pages/man2/bottom.php new file mode 100644 index 0000000..0a4356d --- /dev/null +++ b/upstream-man-pages/man2/bottom.php @@ -0,0 +1,9 @@ + + +OpenGL 2.1 Reference Pages + + + + + + diff --git a/upstream-man-pages/man2/docs/Viewing_XHTML_and_MathML.html b/upstream-man-pages/man2/docs/Viewing_XHTML_and_MathML.html new file mode 100644 index 0000000..61d86ae --- /dev/null +++ b/upstream-man-pages/man2/docs/Viewing_XHTML_and_MathML.html @@ -0,0 +1,3 @@ +This document has been moved to the public OpenGL.org Wiki at + +http://www.opengl.org/wiki/index.php/Getting_started/Viewing_XHTML_and_MathML diff --git a/upstream-man-pages/man2/docs/XML_Toolchain_and_Man_Pages.html b/upstream-man-pages/man2/docs/XML_Toolchain_and_Man_Pages.html new file mode 100644 index 0000000..e498cd9 --- /dev/null +++ b/upstream-man-pages/man2/docs/XML_Toolchain_and_Man_Pages.html @@ -0,0 +1,3 @@ +This document has been moved to the public OpenGL.org Wiki at + +http://www.opengl.org/wiki/index.php/Getting_started/XML_Toolchain_and_Man_Pages#Toolchain diff --git a/upstream-man-pages/man2/fo/Makefile b/upstream-man-pages/man2/fo/Makefile new file mode 100644 index 0000000..78369d8 --- /dev/null +++ b/upstream-man-pages/man2/fo/Makefile @@ -0,0 +1,395 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and the specific +# stylesheet to convert Docbook+MathML => XSL-FO. + +# At present, the XSL-FO stylesheets do *not* handle MathML. +# Getting math output is a significant toolchain issue. + +DB2XHTML = /usr/share/sgml/docbook/xsl-stylesheets/fo/docbook.xsl + +# Path to the APache FOP processor +# Download the current version 0.92beta from +# http://xmlgraphics.apache.org/fop/ +FOP = /path/to/fop-0.92beta/fop + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +%.fo: ../%.xml + $(XSLT) --xinclude -o $@ $(DB2XHTML) $< + +%.pdf: %.fo + $(FOP) -fo $< -pdf $@ + +# ARB Ecosystem man pages +ARBFO = \ + glBlendEquationSeparate.fo \ + glStencilFuncSeparate.fo \ + glStencilMaskSeparate.fo \ + glStencilOpSeparate.fo + +# SuperBible GL 1.5 man pages +SUPERBIBLEFO = \ + glBeginQuery.fo \ + glBindBuffer.fo \ + glBufferData.fo \ + glBufferSubData.fo \ + glDeleteBuffers.fo \ + glDeleteQueries.fo \ + glGenBuffers.fo \ + glGenQueries.fo \ + glGetBufferParameteriv.fo \ + glGetBufferPointerv.fo \ + glGetBufferSubData.fo \ + glGetQueryiv.fo \ + glGetQueryObject.fo \ + glIsBuffer.fo \ + glIsQuery.fo \ + glMapBuffer.fo + +# 3Dlabs GL 2.0 man pages +3DLABSFO = \ + glAttachShader.fo \ + glBindAttribLocation.fo \ + glCompileShader.fo \ + glCreateProgram.fo \ + glCreateShader.fo \ + glDeleteProgram.fo \ + glDeleteShader.fo \ + glDetachShader.fo \ + glDrawBuffers.fo \ + glEnableVertexAttribArray.fo \ + glGetActiveAttrib.fo \ + glGetActiveUniform.fo \ + glGetAttachedShaders.fo \ + glGetAttribLocation.fo \ + glGetProgramInfoLog.fo \ + glGetProgram.fo \ + glGetShaderInfoLog.fo \ + glGetShaderSource.fo \ + glGetShader.fo \ + glGetUniformLocation.fo \ + glGetUniform.fo \ + glGetVertexAttribPointerv.fo \ + glGetVertexAttrib.fo \ + glIsProgram.fo \ + glIsShader.fo \ + glLinkProgram.fo \ + glShaderSource.fo \ + glUniform.fo \ + glUseProgram.fo \ + glValidateProgram.fo \ + glVertexAttribPointer.fo \ + glVertexAttrib.fo + +# SGI OpenGL 1.4 man pages +SGIGLFO = \ + glAccum.fo \ + glActiveTexture.fo \ + glAlphaFunc.fo \ + glAreTexturesResident.fo \ + glArrayElement.fo \ + glBegin.fo \ + glBindTexture.fo \ + glBitmap.fo \ + glBlendColor.fo \ + glBlendEquation.fo \ + glBlendFuncSeparate.fo \ + glBlendFunc.fo \ + glCallLists.fo \ + glCallList.fo \ + glClearAccum.fo \ + glClearColor.fo \ + glClearDepth.fo \ + glClearIndex.fo \ + glClearStencil.fo \ + glClear.fo \ + glClientActiveTexture.fo \ + glClipPlane.fo \ + glColorMask.fo \ + glColorMaterial.fo \ + glColorPointer.fo \ + glColorSubTable.fo \ + glColorTableParameter.fo \ + glColorTable.fo \ + glColor.fo \ + glCompressedTexImage1D.fo \ + glCompressedTexImage2D.fo \ + glCompressedTexImage3D.fo \ + glCompressedTexSubImage1D.fo \ + glCompressedTexSubImage2D.fo \ + glCompressedTexSubImage3D.fo \ + glConvolutionFilter1D.fo \ + glConvolutionFilter2D.fo \ + glConvolutionParameter.fo \ + glCopyColorSubTable.fo \ + glCopyColorTable.fo \ + glCopyConvolutionFilter1D.fo \ + glCopyConvolutionFilter2D.fo \ + glCopyPixels.fo \ + glCopyTexImage1D.fo \ + glCopyTexImage2D.fo \ + glCopyTexSubImage1D.fo \ + glCopyTexSubImage2D.fo \ + glCopyTexSubImage3D.fo \ + glCullFace.fo \ + glDeleteLists.fo \ + glDeleteTextures.fo \ + glDepthFunc.fo \ + glDepthMask.fo \ + glDepthRange.fo \ + glDrawArrays.fo \ + glDrawBuffer.fo \ + glDrawElements.fo \ + glDrawPixels.fo \ + glDrawRangeElements.fo \ + glEdgeFlagPointer.fo \ + glEdgeFlag.fo \ + glEnableClientState.fo \ + glEnable.fo \ + glEvalCoord.fo \ + glEvalMesh.fo \ + glEvalPoint.fo \ + glFeedbackBuffer.fo \ + glFinish.fo \ + glFlush.fo \ + glFogCoordPointer.fo \ + glFogCoord.fo \ + glFog.fo \ + glFrontFace.fo \ + glFrustum.fo \ + glGenLists.fo \ + glGenTextures.fo \ + glGetClipPlane.fo \ + glGetColorTableParameter.fo \ + glGetColorTable.fo \ + glGetCompressedTexImage.fo \ + glGetConvolutionFilter.fo \ + glGetConvolutionParameter.fo \ + glGetError.fo \ + glGetHistogramParameter.fo \ + glGetHistogram.fo \ + glGetLight.fo \ + glGetMap.fo \ + glGetMaterial.fo \ + glGetMinmaxParameter.fo \ + glGetMinmax.fo \ + glGetPixelMap.fo \ + glGetPointerv.fo \ + glGetPolygonStipple.fo \ + glGetSeparableFilter.fo \ + glGetString.fo \ + glGetTexEnv.fo \ + glGetTexGen.fo \ + glGetTexImage.fo \ + glGetTexLevelParameter.fo \ + glGetTexParameter.fo \ + glGet.fo \ + glHint.fo \ + glHistogram.fo \ + glIndexMask.fo \ + glIndexPointer.fo \ + glIndex.fo \ + glInitNames.fo \ + glInterleavedArrays.fo \ + glIsEnabled.fo \ + glIsList.fo \ + glIsTexture.fo \ + glLightModel.fo \ + glLight.fo \ + glLineStipple.fo \ + glLineWidth.fo \ + glListBase.fo \ + glLoadIdentity.fo \ + glLoadMatrix.fo \ + glLoadName.fo \ + glLoadTransposeMatrix.fo \ + glLogicOp.fo \ + glMap1.fo \ + glMap2.fo \ + glMapGrid.fo \ + glMaterial.fo \ + glMatrixMode.fo \ + glMinmax.fo \ + glMultiDrawArrays.fo \ + glMultiDrawElements.fo \ + glMultiTexCoord.fo \ + glMultMatrix.fo \ + glMultTransposeMatrix.fo \ + glNewList.fo \ + glNormalPointer.fo \ + glNormal.fo \ + glOrtho.fo \ + glPassThrough.fo \ + glPixelMap.fo \ + glPixelStore.fo \ + glPixelTransfer.fo \ + glPixelZoom.fo \ + glPointParameter.fo \ + glPointSize.fo \ + glPolygonMode.fo \ + glPolygonOffset.fo \ + glPolygonStipple.fo \ + glPrioritizeTextures.fo \ + glPushAttrib.fo \ + glPushClientAttrib.fo \ + glPushMatrix.fo \ + glPushName.fo \ + glRasterPos.fo \ + glReadBuffer.fo \ + glReadPixels.fo \ + glRect.fo \ + glRenderMode.fo \ + glResetHistogram.fo \ + glResetMinmax.fo \ + glRotate.fo \ + glSampleCoverage.fo \ + glScale.fo \ + glScissor.fo \ + glSecondaryColorPointer.fo \ + glSecondaryColor.fo \ + glSelectBuffer.fo \ + glSeparableFilter2D.fo \ + glShadeModel.fo \ + glStencilFunc.fo \ + glStencilMask.fo \ + glStencilOp.fo \ + glTexCoordPointer.fo \ + glTexCoord.fo \ + glTexEnv.fo \ + glTexGen.fo \ + glTexImage1D.fo \ + glTexImage2D.fo \ + glTexImage3D.fo \ + glTexParameter.fo \ + glTexSubImage1D.fo \ + glTexSubImage2D.fo \ + glTexSubImage3D.fo \ + glTranslate.fo \ + glVertexPointer.fo \ + glVertex.fo \ + glViewport.fo \ + glWindowPos.fo + +# SGI GLU 1.3 man pages +SGIGLUFO = \ + gluBeginCurve.fo \ + gluBeginPolygon.fo \ + gluBeginSurface.fo \ + gluBeginTrim.fo \ + gluBuild1DMipmapLevels.fo \ + gluBuild1DMipmaps.fo \ + gluBuild2DMipmapLevels.fo \ + gluBuild2DMipmaps.fo \ + gluBuild3DMipmapLevels.fo \ + gluBuild3DMipmaps.fo \ + gluCheckExtension.fo \ + gluCylinder.fo \ + gluDeleteNurbsRenderer.fo \ + gluDeleteQuadric.fo \ + gluDeleteTess.fo \ + gluDisk.fo \ + gluErrorString.fo \ + gluGetNurbsProperty.fo \ + gluGetString.fo \ + gluGetTessProperty.fo \ + gluLoadSamplingMatrices.fo \ + gluLookAt.fo \ + gluNewNurbsRenderer.fo \ + gluNewQuadric.fo \ + gluNewTess.fo \ + gluNextContour.fo \ + gluNurbsCallbackDataEXT.fo \ + gluNurbsCallbackData.fo \ + gluNurbsCallback.fo \ + gluNurbsCurve.fo \ + gluNurbsProperty.fo \ + gluNurbsSurface.fo \ + gluOrtho2D.fo \ + gluPartialDisk.fo \ + gluPerspective.fo \ + gluPickMatrix.fo \ + gluProject.fo \ + gluPwlCurve.fo \ + gluQuadricCallback.fo \ + gluQuadricDrawStyle.fo \ + gluQuadricNormals.fo \ + gluQuadricOrientation.fo \ + gluQuadricTexture.fo \ + gluScaleImage.fo \ + gluSphere.fo \ + gluTessBeginContour.fo \ + gluTessBeginPolygon.fo \ + gluTessCallback.fo \ + gluTessEndPolygon.fo \ + gluTessNormal.fo \ + gluTessProperty.fo \ + gluTessVertex.fo \ + gluUnProject4.fo \ + gluUnProject.fo + +# SGI GLX 1.4 man pages +SGIGLXFO = \ + glXChooseFBConfig.fo \ + glXChooseVisual.fo \ + glXCopyContext.fo \ + glXCreateContext.fo \ + glXCreateGLXPixmap.fo \ + glXCreateNewContext.fo \ + glXCreatePbuffer.fo \ + glXCreatePixmap.fo \ + glXCreateWindow.fo \ + glXDestroyContext.fo \ + glXDestroyGLXPixmap.fo \ + glXDestroyPbuffer.fo \ + glXDestroyPixmap.fo \ + glXDestroyWindow.fo \ + glXFreeContextEXT.fo \ + glXGetClientString.fo \ + glXGetConfig.fo \ + glXGetContextIDEXT.fo \ + glXGetCurrentContext.fo \ + glXGetCurrentDisplay.fo \ + glXGetCurrentDrawable.fo \ + glXGetCurrentReadDrawable.fo \ + glXGetFBConfigAttrib.fo \ + glXGetFBConfigs.fo \ + glXGetProcAddress.fo \ + glXGetSelectedEvent.fo \ + glXGetVisualFromFBConfig.fo \ + glXImportContextEXT.fo \ + glXIntro.fo \ + glXIsDirect.fo \ + glXMakeContextCurrent.fo \ + glXMakeCurrent.fo \ + glXQueryContextInfoEXT.fo \ + glXQueryContext.fo \ + glXQueryExtensionsString.fo \ + glXQueryExtension.fo \ + glXQueryServerString.fo \ + glXQueryVersion.fo \ + glXSelectEvent.fo \ + glXSwapBuffers.fo \ + glXUseXFont.fo \ + glXWaitGL.fo \ + glXWaitX.fo + +# XML man page source and XSL-FO / PDF targets +GLFO = $(SGIGLFO) $(3DLABSFO) $(SUPERBIBLEFO) $(ARBFO) +GLUFO = $(SGIGLUFO) +GLXFO = $(SGIGLXFO) +FO = $(GLFO) $(GLUFO) $(GLXFO) +PDF = $(FO:.fo=.pdf) + +default: $(PDF) + +clean: + $(RM) $(TEX_FILES) *.log *.aux *.toc *.dvi *.out + +clobber: clean + $(RM) $(FO) $(PDF) $(PDF_FILES) diff --git a/upstream-man-pages/man2/fo/glTexGen.fo b/upstream-man-pages/man2/fo/glTexGen.fo new file mode 100644 index 0000000..7de53dd --- /dev/null +++ b/upstream-man-pages/man2/fo/glTexGen.fo @@ -0,0 +1,648 @@ + +glTexGenglTexGenNameNameglTexGen -- control the generation of texture coordinatesC SpecificationC Specification void glTexGeni(coord, pname, param); GLenum coord; GLenum pname; GLint param; void glTexGenf(coord, pname, param); GLenum coord; GLenum pname; GLfloat param; void glTexGend(coord, pname, param); GLenum coord; GLenum pname; GLdouble param;PARAMETERSPARAMETERScoordcoord + Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. + pnamepname + Specifies the symbolic name of the texture-coordinate generation function. + Must be GL_TEXTURE_GEN_MODE. + paramparam + Specifies a single-valued texture generation parameter, + one of GL_OBJECT_LINEAR, GL_EYE_LINEAR, GL_SPHERE_MAP, + GL_NORMAL_MAP, or GL_REFLECTION_MAP. + C SpecificationC Specification void glTexGeniv(coord, pname, params); GLenum coord; GLenum pname; const GLint * params; void glTexGenfv(coord, pname, params); GLenum coord; GLenum pname; const GLfloat * params; void glTexGendv(coord, pname, params); GLenum coord; GLenum pname; const GLdouble * params;PARAMETERSPARAMETERScoordcoord + Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. + pnamepname + Specifies the symbolic name of the texture-coordinate generation function + or function parameters. + Must be + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + paramsparams + Specifies a pointer to an array of texture generation parameters. + If pname is GL_TEXTURE_GEN_MODE, + then the array must contain a single symbolic constant, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + Otherwise, + params holds the coefficients for the texture-coordinate generation function + specified by pname. + DESCRIPTIONDESCRIPTION + glTexGen selects a texture-coordinate generation function + or supplies coefficients for one of the functions. + coord names one of the (s, t, r, q) texture + coordinates; it must be one of the symbols + GL_S, + GL_T, + GL_R, or + GL_Q. + pname must be one of three symbolic constants: + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + If pname is GL_TEXTURE_GEN_MODE, + then params chooses a mode, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + If pname is either GL_OBJECT_PLANE or GL_EYE_PLANE, + params contains coefficients for the corresponding + texture generation function. + + If the texture generation function is GL_OBJECT_LINEAR, + the function + + + + + g + = + + + p + 1 + + × + x + o + + + + + + p + 2 + + × + y + o + + + + + + p + 3 + + × + z + o + + + + + + p + 4 + + × + w + o + + + + + + + is used, where + g + is the value computed for the coordinate named in coord, + + + p + 1 + + + , + + + p + 2 + + + , + + + p + 3 + + + , + and + + + p + 4 + + + are the four values supplied in params, and + + + x + o + + + , + + + y + o + + + , + + + z + o + + + , and + + + w + o + + + are the object coordinates of the vertex. + This function can be used, for example, to texture-map terrain using sea level + as a reference plane + (defined by + + + p + 1 + + + , + + + p + 2 + + + , + + + p + 3 + + + , and + + + p + 4 + + + ). + The altitude of a terrain vertex is computed by the GL_OBJECT_LINEAR + coordinate generation function as its distance from sea level; + that altitude can then be used to index the texture image to map white snow + onto peaks and green grass onto foothills. + + If the texture generation function is GL_EYE_LINEAR, the function + + + + + g + = + + + + p + 1 + + + ″ + + × + x + e + + + + + + + p + 2 + + + ″ + + × + y + e + + + + + + + p + 3 + + + ″ + + × + z + e + + + + + + + p + 4 + + + ″ + + × + w + e + + + + + + + is used, where + + + + + + + + p + 1 + + + ″ + + ⁢ + + p + 2 + + + ″ + + ⁢ + + p + 3 + + + ″ + + ⁢ + + p + 4 + + + ″ + + + + = + + + + p + 1 + + ⁢ + p + 2 + + ⁢ + p + 3 + + ⁢ + p + 4 + + + + ⁢ + M + -1 + + + + + + and + + + x + e + + + , + + + y + e + + + , + + + z + e + + + , and + + + w + e + + + are the eye coordinates of the vertex, + + + p + 1 + + + , + + + p + 2 + + + , + + + p + 3 + + + , + and + + + p + 4 + + + are the values supplied in params, and + M + is the modelview matrix when glTexGen is invoked. + If + M + is poorly conditioned or singular, + texture coordinates generated by the resulting function may be inaccurate + or undefined. + + Note that the values in params define a reference plane in eye coordinates. + The modelview matrix that is applied to them may not be the same one + in effect when the polygon vertices are transformed. + This function establishes a field of texture coordinates + that can produce dynamic contour lines on moving objects. + + If pname is GL_SPHERE_MAP and coord is either + GL_S or + GL_T, + s + and + t + texture coordinates are generated as follows. + Let u be the unit vector pointing from the origin to the polygon vertex + (in eye coordinates). + Let n sup prime be the current normal, + after transformation to eye coordinates. + Let + + + + + f + = + + + f + x + + ⁢ + f + y + + ⁢ + f + z + + + + T + + + + be the reflection vector such that + + + + + f + = + + u + - + 2 + ⁢ + n + ″ + + ⁢ + + n + ″ + + + T + + ⁢ + u + + + + + Finally, let + + + + m + = + + 2 + ⁢ + + + + + f + x + + + 2 + + + + + f + y + + + 2 + + + + + + f + z + + + + 1 + + + 2 + + + + + + + + . + Then the values assigned to the + s + and + t + texture coordinates are + + + + + s + = + + + f + x + + m + + + + + 1 + 2 + + + + + + + + + t + = + + + f + y + + m + + + + + 1 + 2 + + + + + + To enable or disable a texture-coordinate generation function, call + glEnable or glDisable + with one of the symbolic texture-coordinate names + (GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, or + GL_TEXTURE_GEN_Q) as the argument. + When enabled, + the specified texture coordinate is computed + according to the generating function associated with that coordinate. + When disabled, + subsequent vertices take the specified texture coordinate + from the current set of texture coordinates. Initially, all texture + generation functions are set to GL_EYE_LINEAR and are disabled. + Both + s + plane equations are (1, 0, 0, 0), + both + t + plane equations are (0, 1, 0, 0), + and all + r + and + q + plane equations are (0, 0, 0, 0). + + When the ARB_multitexture extension is supported, glTexGen set the + texture generation parameters for the currently active texture unit, + selected with glActiveTexture. + ERRORSERRORS + GL_INVALID_ENUM is generated when coord or pname is not an + accepted defined value, + or when pname is GL_TEXTURE_GEN_MODE and params is not an + accepted defined value. + + GL_INVALID_ENUM is generated when pname is GL_TEXTURE_GEN_MODE, + params is GL_SPHERE_MAP, + and coord is either GL_R or GL_Q. + + GL_INVALID_OPERATION is generated if glTexGen + is executed between the execution of glBegin + and the corresponding execution of glEnd. + ASSOCIATED GETSASSOCIATED GETS + glGetTexGen + + glIsEnabled with argument GL_TEXTURE_GEN_S + + glIsEnabled with argument GL_TEXTURE_GEN_T + + glIsEnabled with argument GL_TEXTURE_GEN_R + + glIsEnabled with argument GL_TEXTURE_GEN_Q + SEE ALSOSEE ALSO + glActiveTexture, + glCopyPixels, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexEnv, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + COPYRIGHTCOPYRIGHT + Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + diff --git a/upstream-man-pages/man2/fo/glTexGen.pdf b/upstream-man-pages/man2/fo/glTexGen.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6c32350ef514f71ee1442f0f840df339bb96ed0a GIT binary patch literal 10067 zcmcI~c|6oz^nZmc*_V)QjD4Mju@16Rc1g%G%-GFfMh01m?4gh~C1eXx)@)_pq9|M0 zvXf*@RNombPtVi$^?aW{e!ux==AJqCo^#LV{kiwN@3{g-8d?$%Nogv9qT&Z7RMG%2 z0Aue;1&33CjJz>O9|x2-Kv>li;oyt{Xc-y-&ZE4sE*LZbEGZAQN8u16R3LS46aq(( zX&`VYfUt%F6bzPuK*6$5s5BTXB>|Qb0!zrtfQ3Y;l$EJaXe4ob*e^Q(&^bR(6ab`8 z7z~NPA*ev6KK8gn(FJ`yDv%xu?Syj%$Pqf2P!UJK;t2LUsNgDif>&-R9KassZ*b1R-_1cD2~<(0g5wqN9-bZqTL8R=I~uEi zR{|mk9-$NnzlmZHP#NxxbW||W(E6c4Xej}maX3!}5XjfpSJGEX665Uzg2>CugTPP_ z6e>Z`kihz(aR|Hw8q4=%01Xt@!P~`?7?>XeAsv2=Xe{T~{C$^I9o4?|19gfblT3qb@l z{lXvt)=EHcBEks2ejxM*)MbBz`VTP6AA%XA<>HPbyj~zJcS2M(P!1R*3h*1k@tLi3g&QAD2*^RO@Ecs!k2fuxtIM7ULu?1&=ohU@05sT%r1OiBA4?kyLuLMP^msH*HG!Dj_=pZ$Yg zjYDU7L^2UydhDA<0vqd7_QQcv*uFptvx|*mMT9Vn!M6p}4s2?`upCM6)qRA7wTytzyzrwZP%xklV z2d7rgScuRv%cgXl5vj^~P+_748xmDi@?c6VExoEHuyd>(!r-Jr*D~tK*!IHxYmu}J z%gB*97Ez!`d?mi&{43lz`x#&3$h@nTUx0KAzTUe@;B)hxj zX>!Z_VRb^KcP79V0$fxa23pMGc?GCE?FhyISefiUP zkKUU*T)`9NkB=((zJxNKrc*5r&#k!_p6QdCW_kp-{kW=y(m{1V zcU49nVnuJlvUFqj*utD9d%X=q=#7a|;fxj2y54Gd%ft%I^wu55{jP;*)fpIb&!*yM zv9As%mE!I#y_@}7-6<(|ZSeKF^@3!rP!xrF6Z}QJLOSgP!b#rGR+Qq)qR1Pjt1$s4 zERv}A4|VTUcTJ(nl?23E8ck-CZoj?)lZ|Okbf{>8xxdylvbL^fEipF_2eT}GppC$P z`)azy8^jr$sim&HJ!QhSUcDAedF-~tXT{}QV57ULVlU zE3I6Uuos8YwSm!3s>h}ZZ&R|CrQPEBnK^xoMSI{>N9m0RoY!tEwq$f z$U;|Mqvwv*-wrmEG_}%xMPd{&rm*H(nOF9y*2qKUan7o1gobLNtJu2)3$(e*O>nX? zu=qhOPW&b(^vIa%MW+yiIB>+{!a?Y2aEDx!$DeDI%x`Pd_wCpS;e;Zj00?iw)&zij zU$690NEd_}1`n_zw7~$vCJ&I6hXSmrKqe?G#>d+Mg#}1`S5?QLal}mxKwSMye%tto z`#3QHkdcx4nF|nCL!t-*f&7v|h$g=$B7mPM0Kpt_tp9u2Y~UQdIWDsi*r*ooog6zg zRqN+{vwT>@w%p0hSInSRjuF;EqbZt;4EU-{bF=2C2~)mI;fQ@`;E_cRyH2W>CPT`D z8}qnIrHfy@G>@}cBx*UiaVHIPATR=mo^4)mr>ZfT@|_y=rmO`&T22FhE&zbKM1m(d?h$kL0T-BI4>Kn4s=4o)-)^6c}zk=`F)?<%xv^lJ;P=jf9yH-VC1=D8b z!593#gC`U}snqYm?o4~)q(dx|eiCb$a$tgR+(;}^vfD9>Ca1S&-Z5N1NjXbjufcty z|DkRoAj4-|V!cNMC{l1#YVQl|PE}5ElLw57Nj;L^=$Lq$HAKtj(f6{V604%a)n%Dh#(Rwt=+N)?xD`Ks` z?{)acKCfYbV|%Q)#zPD6=k4;v(=(={+nt<7?fige_wO&<<$_$;_p*|pthr_TZDHQ_ zLzzlLP0;4j_V}Grr^h$=0=nEK8AAmgX1gRgJy#21!vufY``nRX_`yagK#EU|IYK8D zSg^g@`P3H}rR|}YcVzfmgUyTq)SXX~P5Txw6KT?ka0|HO*xSGcrb{h|v(M0G77~6M z`hk9JEQD*k=%~PEY^EhoR6F@<-ON*x6hX&?R}R-8GpWhE`3|(77thk=uZJ5&?od85 zM?YoJENAVxmAkwEi=(%nQt93j&Z9k={gFW(62CJ#)q4swM0Uz5znOf_L3**u!$5P6 z*Sh9zqwAV0oq7)}V`$&>MJAl-lsDP1C5482ph!|9L(;|f{vJcU2A62}i3b0@ z`Ol+z7w_{Q2Tlb6BRc2pb%oo6b%9@_wHepqPPTPEqQBPDW+$g6*V0(Kes1NhN|~y< ztxA9_6D#!8y>$vmGl`a8x>J;4tSn}-DQL&lCYItNHso1*v4(hfiV62~Edj>HgelT# zN+AL@zXB6sneMPCF$bw^_fqe1KYDXorq?g{2$E-7q?Kk))V~evBh7)^Z zDk&ukdN`=4wXk|`^fM5*H6rbV`8P23w`s5QXQ;`x$oA1smyfskQ%{PM#Dl}=GrD=O zQ6wi2ftP1YN%(w*wUb14Cj-KZ6UhtaQWZYEE>1=t>-4xu2vyz_O09?YQ`3_hj<T zOmI<#`=$+~i9LE_b_(Lr+Q&E2BF276w|6(6f)vQ}+JS8$!Qe`?XClt8 zU$DcE;zf&%{N@Sd)l3de<8Hnt?fYr%C-uE37|2HVXB3m{AaiY@`i_uBa>#qK7k%m^ zlb;`3VCNKuFtpa}G88r`wT|sTG0E%KEWgn)z_9Sa4_$nAj2|;w1-EL(SeB?(k6V)CdQ&?c`dNb|&(k*@cy<;SGbOytNcggzuGBSFr*;#kA+M#dGBBh$XK|o@s zqZV`00rYpc&eg*A?0Ne?@wN;+Szm9;-B~CV3`zoT2sxBeKs1W3csgbw_=Y`J5X9O z7pr?qq|9fm*@qt9lKq6AV4W(gRw%S;<3g)VB?WlfRUE+y&QdiWq3o9PLxz zvNNUf(}DCF8BhqC=9sd@F|L{{4?4W!kdQPqJ8g7}noBrimv3yrA{u(3MEp{uJLg_< z$l5AztDx~MC)3M?NLh&1L%M~=Hy+fTtl$BYh!Oo3=DE}p^9kpr#RV;`yzyTz4mmMZ zc+hoh>Pj;R-F^LT>!z0_k}p+JIxzvBY`pm~?PMrIFIB4S+Igm!1Lur&AatFCpR8a0 zQTU_9hvfB4NnbTD>!?6&Bx=;i*M~J9Wn`1rx}C|+ygeB8Y)I5ecK3ZPwz8G=99yoQ zLVRJZJf)6l<@CB@&A5>tjckZX#Kg=~Xp%tvT)YFhPYyCcOfYO9otw1n-5eiB@Uyq1 zknG-`hRhVOUpu>Bevhr8QK@GHxqx!;<49DkTrU-4;<%D>_gikB@$qlTun0M0&$2>KuCUt!3)Vprv>ld1oZ>9nejE2f zXwxkZB4!rZR}}oBA3W{+I<|Z@R{&(Ob_u%Oy{-e)eh* z+co18H{@W*KTU-U00{SXV08in^wpkU9m9F+xUhjn8m}9q-*v9RZ|gw24X);5=^_1o zTUq&EK2mxYOul(iY%`RnaE*3o|g3-JGMPyQhDJ*;$`Mb%;PWQ&yRDs39_T# zQLi2A2pz7-_0v;kj)SxlR;n`e${PBRdQ(4RII&?c2vJtdTC^k{a#p;%bz;%w5S z7dyPJmM;Ms@WqWWJMv@TB_kSs$TfQQb&);Kl3k9jBa)8sdFAl4I;9Lbcnjq;Ul;IP z4$Fhfo(Kcl``4p1+^?*%X`DP6rNw@xi!9ON9#co;?8oZC=@hio#_oqxO)HG?taabA zteIdp$YjI-9;d^7O;2OCdknk0!rr1T6h(xK<=FH#JwzI}HuZMmgAqYpqQ30mELf#8 zw>XfWMo)jK70sVgrJwU!7&5bkHM6qo?KuoAXo;M8Ijz?*Uvc?tBo8-v!Zl|5xOeKC zwO<X9 z;zh1Sp4sDyQLU0K0i3Qaq`1vgm~j+mJEU(;(sTYA={34Bw%Hdh?fcbL&M^`((zMy> zGqF9>Iu>&D#pj2#9$R`{$`U1Y0qa{ONa5dEobO5BX6U=0BGVgyXL!_kp-|1Y!l?QF zd0=tqT2ClRQhMRj^qtw}u!;07&I_QX(H9{bA*P{GdBdmYfa(d?inCBN-)YwsF+WBBn)fnVU9%;oU;a!PCbMLj4`nVmBFo@}nu z`J)?*8cTMwGKJTwl$$c>o43j${A%Q@)eai{o}WEAZ=GGsR1Xgm&T|Ic2w@1)rQR$) z&rRv5vfRqsdcDtF{R{&)$3*<7VNOrV`n(TwyX+G>lFss(s6+zQlyax9V!V-`kO-XE zjF>UliKU)uELqu!sULqp*C1*rDUGvAZlwfvdCEET;Ib5#1bM}+PK`3WyfWqzdt6C2 zS=)PkV?5DB%ERuHjlpMWtlzm5_cYA7neXy|L2yGuYB<9^@sDOXgKVE_cA#7v%;pI1 z<+?=Uaioy>`^%oyl#5vCSfZw9DekU#SX-@{yfEK6ft#esw8iI6-L&tV*06H}Ftb)V z4=@Mp&E-T7`3Ilbd5Yv-=$dF}@jMCQHOjJk7OziUs8pePwW}$~=m1v|DuVuSePFdB z64-j79kfp^o)vo0=L_JzIfr770U3Muh36mm#y@fD>Md){>!vsRU!{}0SGI;z1hp( zdhE$QqI|^q!9&Ee$+OhoYLp@OzRdQJrbxTjwB9w)tl;c#K3Q>H>CQCIlMRxu#rLNi z+zu3U1@A-d9DEegE2Uw&)nM4Y9fp0aM&V>*plpafpI97Ubw%HyvM~8r!dbn94`bmG z!m#rJ@8Xxn(QS==7T$;hmj^*vq+(OaMs=;4upJYQ_en2K@@}~H&ULU|usY%vA9{_f z6(IAhHA02uqQce0P|k!|_T2Fe(FXAS_G@0cO2?Y-i&NVA>fO&vgWGiY1se;~o!BXn zb6ka<8Fc3oLS%~vJ5csK0~#=;HOdPzs7vK~ z4`W=?b1U@IrQL7o(}z#cqgLNxU=^6onmhG*^YQWE?HA_p zDRRv9W7~n|Z=WBmp;!*8KF^8Z)5v#0J?FLhH4EO;b*65=pgx)%7cV}!8R&nk)0Hi9 zZiEEt*m5!?loZEDbtjy~zQ-hOMPj^a(RR+6;z*U!EMr25;gLN!b=b)3kl2M23`VIj zIj?C}x>n!UIO$%|m?^Wm75Q$tz08TvdxIoqM!)y<%k=J0*l=e#f3p&+5LoIu){8lB zzop!n`P^f0^qF?q8y9k4I*WC=Uybg48OE%8DJ$QYQ}k5vLqIg$33k*YCjOgZF+06e z3OCu83r5*K-;`tfXt(BPH}%f#c_Zg^fpns+#rala4vN-7;6cn%rxll(yk=UCeD8$b zx2>=){ab7OuX(s0={2=vE){s(eRb@8+W6-2ddV`n7`aZ_`!W2I_ML*0PQXfi&?_UT zwx$Wwc}m(2XuVAZu70aB)icxB`6j-Lj<(st|;Kr0?E@_-=Us}e)+sK zj|zUnQqK7rcP+~BbR;GnZ5SC%qfyS!D(Z$P?W+SqRJdtf&f^M~VwH>&0r7ZvV*x(N zJgKTtIwCb-WNgUu<-r+7Ca2b^w<_Le4Td7Xp>`GElrI4%6Frv6^T^-brS@k(2Ok~C$*M2C}$ag9ot zxrDjIk~pU8$4S(dn&^&;O6}5*W67E%v|Wz~M?HJB@DB0FgigM+|IW9fI@9W2_Sqp4 zF3DEj4;ydZFZTL0##r2!;&-|fCn8QwCb#~n1{2N1-5vlVd2myr9o|;)sszLnOl7xl zr<6zgAWTl_wZ%$Xz9b9WHUX3DXTjnPoK@deZWVbea(pQT^^P}uU0E_dpz1jl9|*iw zPZE34*Z&MC^VBqN+p8t670y~C-;7sYVzENcuDpBZ8j-?&MjDT&&MGyJiP&dIR8%^e zhn2548+t3Pz4+x4B-`>aLqw=!HrpQDW~``g5GCXlICX6(ra!#9v3#)r7>H_9Tmh!? z`SkL)mr|4!ENRKKu7x+W)ukt?v#eL9Xg)Y?T5x((Jsl?jHFGN_lvB$33q=Z-fE@dR zXdB_4xt55wZPA(%fxggJIty%fO}ke}fpGHq2MKXnmL8_4ZD84{{q$3{OHOfver8if1kCeaP zdG(n3>Z!i%w;PDd7)ezbpK*Lq{b;(z8qns`s&a0`hxm`ORXs4K=8BOBOzfLwp_Gnc zZ|*y(puK$+q~EP$=MXt17pPfuSrkKO-R=~G7zuU`gc*Ew*erbw+~FcCe@+2STkP7} zp$0vSx(3ipZ!O*m#N!XXxIn(S988Sfil?X-$VL{`G#6PMRCxq2M~Yf)X6NpT?3yR< zrj1;Hh0&Rb*~xe>o_dz z6aKc=v%m+=8&m@=H|zBy1>UDVun=Sn+tG_cH_}J&NC_I|XUsIX#ol_%aXn__!0E_S zeqWX(fAzt5j}*tgXfPV{RvI(Z#ppNQ@h)EZiIATabHulc)_Hz$8`W%@OJA20^1eA3 z->~)Ck~J>^KjY~zE6=BLt3dCGeVMFbb1(j1lBu87b}OpGw8n(W`d6AmJg@)%lxGoh z5W;c&VcLWxWJZV0zpelr<|9PY5P3P+FMod42Z))__qmmvvR3HO{2jS9y zmJ}h6LSRuu9RNrN<$ei;b8$dOsA1fZR3J?>p`_}9b^?IRUC^p%tjjOKZ(jVYKKw_6 zu-^@ybMZi7B}_0L2=srm2K_Uw{nzP1z`vVQC)8M6P~H-T_U6ud()=Az|31Ut&HZ|S|IyZ;;Qe=71l;_EmY>o5?^uEU z$qD||p8Wq}?!V3K&u2!g$6*N!0^>tKIsx@(U65FS)!{1!I3!CZ0LWqO4PXuU3*CP{ z40Xa48+VKov9w1R@UP0=_schcf4-!DMVL@`BfeyWi$MV5dk27gzmY?1zyOf%HyVfy zf-{FGH#yXU0HEKicErDA2rTJv5g<0?0f*uIp+?X<^q$CJh!>9>ObHiztNjRL1!K7dSN5Bu6JcJk~;s=2KOD0F~ z?jJI!G=V7nT?PgdSFeA_AjC=kT?Pfi2oU+Z3@j%@cuIelK_N1K_yUE<{xKd*R*n#r zfA*FCQ%_Ew5ZJ%#$wB^} zr%XonkGaXo%Kd3Wj! + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glAccum + 3G + + + glAccum + operate on the accumulation buffer + + C Specification + + + void glAccum + GLenum op + GLfloat value + + + + + Parameters + + + op + + + Specifies the accumulation buffer operation. + Symbolic constants + GL_ACCUM, + GL_LOAD, + GL_ADD, + GL_MULT, + and + GL_RETURN are accepted. + + + + + value + + + Specifies a floating-point value used in the accumulation buffer operation. + op determines how value is used. + + + + + + Description + + The accumulation buffer is an extended-range color buffer. + Images are not rendered into it. + Rather, + images rendered into one of the color buffers + are added to the contents of the accumulation buffer after rendering. + Effects such as antialiasing (of points, lines, and polygons), + motion blur, + and depth of field can be created + by accumulating images generated with different transformation matrices. + + + Each pixel in the accumulation buffer consists of + red, green, blue, and alpha values. + The number of bits per component in the accumulation buffer + depends on the implementation. You can examine this number + by calling glGetIntegerv four times, + with arguments GL_ACCUM_RED_BITS, + GL_ACCUM_GREEN_BITS, + GL_ACCUM_BLUE_BITS, + and GL_ACCUM_ALPHA_BITS. + Regardless of the number of bits per component, + the range of values stored by each component is + + + + -1 + 1 + + . + The accumulation buffer pixels are mapped one-to-one with frame buffer pixels. + + + glAccum operates on the accumulation buffer. + The first argument, op, + is a symbolic constant that selects an accumulation buffer operation. + The second argument, value, + is a floating-point value to be used in that operation. + Five operations are specified: + GL_ACCUM, GL_LOAD, GL_ADD, + GL_MULT, and GL_RETURN. + + + All accumulation buffer operations are limited + to the area of the current scissor box and applied identically to + the red, green, blue, and alpha components of each pixel. + If a glAccum operation results in a value outside the range + + + + -1 + 1 + + , + the contents of an accumulation buffer pixel component are undefined. + + + The operations are as follows: + + + + GL_ACCUM + + + Obtains R, G, B, and A values + from the buffer currently selected for reading (see glReadBuffer). + Each component value is divided by + + + + 2 + n + + - + 1 + + , + where + n + is the number of bits allocated to each color component + in the currently selected buffer. + The result is a floating-point value in the range + + + + 0 + 1 + + , + which is multiplied by value and added to the corresponding pixel component + in the accumulation buffer, + thereby updating the accumulation buffer. + + + + + GL_LOAD + + + Similar to GL_ACCUM, + except that the current value in the accumulation buffer is not used + in the calculation of the new value. + That is, the R, G, B, and A values from the currently selected buffer + are divided by + + + + 2 + n + + - + 1 + + , + multiplied by value, + and then stored in the corresponding accumulation buffer cell, + overwriting the current value. + + + + + GL_ADD + + + Adds value to each R, G, B, and A + in the accumulation buffer. + + + + + GL_MULT + + + Multiplies each R, G, B, and A + in the accumulation buffer by value and returns the scaled component + to its corresponding accumulation buffer location. + + + + + GL_RETURN + + + Transfers accumulation buffer values + to the color buffer or buffers currently selected for writing. + Each R, G, B, and A component is multiplied by value, + then multiplied by + + + + 2 + n + + - + 1 + + , + clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + and stored + in the corresponding display buffer cell. + The only fragment operations that are applied to this transfer are + pixel ownership, + scissor, + dithering, + and color writemasks. + + + + + + To clear the accumulation buffer, call glClearAccum with R, G, B, + and A values to set it to, then call glClear with the + accumulation buffer enabled. + + + Notes + + Only pixels within the current scissor box are updated by a + glAccum operation. + + + Errors + + GL_INVALID_ENUM is generated if op is not an accepted value. + + + GL_INVALID_OPERATION is generated if there is no accumulation buffer. + + + GL_INVALID_OPERATION is generated if glAccum + is executed between the execution of + glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ACCUM_RED_BITS + + + glGet with argument GL_ACCUM_GREEN_BITS + + + glGet with argument GL_ACCUM_BLUE_BITS + + + glGet with argument GL_ACCUM_ALPHA_BITS + + + See Also + + glClear, + glClearAccum, + glCopyPixels, + glDrawBuffer, + glGet, + glReadBuffer, + glReadPixels, + glScissor, + glStencilOp + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glActiveTexture.xml b/upstream-man-pages/man2/glActiveTexture.xml new file mode 100644 index 0000000..f02bc2c --- /dev/null +++ b/upstream-man-pages/man2/glActiveTexture.xml @@ -0,0 +1,93 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glActiveTexture + 3G + + + glActiveTexture + select active texture unit + + C Specification + + + void glActiveTexture + GLenum texture + + + + + Parameters + + + texture + + + Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + two. texture must be one of + GL_TEXTUREi, + where + i ranges from 0 to the larger of (GL_MAX_TEXTURE_COORDS - 1) + and (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + The initial value is GL_TEXTURE0. + + + + + + Description + + glActiveTexture selects which texture unit subsequent texture state calls will + affect. The number of texture units an implementation supports is + implementation dependent, but must be at least 2. + + + Vertex arrays are client-side GL resources, which are selected by the + glClientActiveTexture routine. + + + Notes + + glActiveTexture is only supported if the GL version is 1.3 or greater, or if + ARB_multitexture is included in the string returned by + glGetString when called with the argument GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where i ranges from 0 to the larger of (GL_MAX_TEXTURE_COORDS - 1) + and (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + + + Associated Gets + + glGet with argument GL_ACTIVE_TEXTURE, GL_MAX_TEXTURE_COORDS, or GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS + + + See Also + + glClientActiveTexture, + glMultiTexCoord, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glAlphaFunc.xml b/upstream-man-pages/man2/glAlphaFunc.xml new file mode 100644 index 0000000..797e105 --- /dev/null +++ b/upstream-man-pages/man2/glAlphaFunc.xml @@ -0,0 +1,210 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glAlphaFunc + 3G + + + glAlphaFunc + specify the alpha test function + + C Specification + + + void glAlphaFunc + GLenum func + GLclampf ref + + + + Parameters + + + func + + + Specifies the alpha comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value that incoming alpha values are compared to. + This value is clamped to the range + + + + 0 + 1 + + , + where 0 represents the lowest possible alpha value + and 1 the highest possible value. + The initial reference value is 0. + + + + + + Description + + The alpha test discards fragments depending on the outcome of a comparison + between an incoming fragment's alpha value and a constant reference value. + glAlphaFunc specifies the reference value and the comparison function. + The comparison is performed only if alpha testing is enabled. By + default, it is not enabled. + (See + glEnable and glDisable of GL_ALPHA_TEST.) + + + func and ref specify the conditions under which + the pixel is drawn. + The incoming alpha value is compared to ref + using the function specified by func. + If the value passes the comparison, + the incoming fragment is drawn + if it also passes subsequent stencil and depth buffer tests. + If the value fails the comparison, + no change is made to the frame buffer at that pixel location. The + comparison functions are as follows: + + + + GL_NEVER + + + Never passes. + + + + + GL_LESS + + + Passes if the incoming alpha value is less than the reference value. + + + + + GL_EQUAL + + + Passes if the incoming alpha value is equal to the reference value. + + + + + GL_LEQUAL + + + Passes if the incoming alpha value is less than or equal to the reference value. + + + + + GL_GREATER + + + Passes if the incoming alpha value is greater than the reference value. + + + + + GL_NOTEQUAL + + + Passes if the incoming alpha value is not equal to the reference value. + + + + + GL_GEQUAL + + + Passes if the incoming alpha value is greater than or equal to + the reference value. + + + + + GL_ALWAYS + + + Always passes (initial value). + + + + + + glAlphaFunc operates on all pixel write operations, + including those resulting from the scan conversion of points, + lines, + polygons, + and bitmaps, + and from pixel draw and copy operations. + glAlphaFunc does not affect screen clear operations. + + + Notes + + Alpha testing is performed only in RGBA mode. + + + Errors + + GL_INVALID_ENUM is generated if func is not an accepted value. + + + GL_INVALID_OPERATION is generated if glAlphaFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ALPHA_TEST_FUNC + + + glGet with argument GL_ALPHA_TEST_REF + + + glIsEnabled with argument GL_ALPHA_TEST + + + See Also + + glBlendFunc, + glClear, + glDepthFunc, + glEnable, + glStencilFunc + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glAreTexturesResident.xml b/upstream-man-pages/man2/glAreTexturesResident.xml new file mode 100644 index 0000000..4d01606 --- /dev/null +++ b/upstream-man-pages/man2/glAreTexturesResident.xml @@ -0,0 +1,145 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glAreTexturesResident + 3G + + + glAreTexturesResident + determine if textures are loaded in texture memory + + C Specification + + + GLboolean glAreTexturesResident + GLsizei n + const GLuint * textures + GLboolean * residences + + + + Parameters + + + n + + + Specifies the number of textures to be queried. + + + + + textures + + + Specifies an array containing the names of the textures to be queried. + + + + + residences + + + Specifies an array in which the texture residence status is returned. + The residence status of a texture named by an element of textures is + returned in the corresponding element of residences. + + + + + + Description + + GL establishes + a ``working set'' of textures that are resident in texture memory. + These textures can be bound to a texture target much more efficiently + than textures that are not resident. + + + glAreTexturesResident queries the texture residence status of the n textures named by + the elements of textures. + If all the named textures are resident, + glAreTexturesResident returns GL_TRUE, + and the contents of residences are undisturbed. + If not all the named textures are resident, glAreTexturesResident returns GL_FALSE, + and detailed status is returned in the n elements of residences. + If an element of residences is GL_TRUE, then the texture named by + the corresponding element of textures is resident. + + + The residence status of a single bound texture may also be queried + by calling + glGetTexParameter with the target argument set to the + target to which the texture is bound, and the pname argument + set to GL_TEXTURE_RESIDENT. + This is the only way that the residence status of a default texture can be + queried. + + + Notes + + glAreTexturesResident is available only if the GL version is 1.1 or greater. + + + glAreTexturesResident returns the residency status of the textures at the time of + invocation. It does not guarantee that the textures will remain + resident at any other time. + + + If textures reside in virtual memory (there is no texture memory), they + are considered always resident. + + + Some implementations may not load a texture until the first use of + that texture. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_VALUE is generated if any element in textures + is 0 or does not name a texture. In that case, the function returns + GL_FALSE and the contents of residences is indeterminate. + + + GL_INVALID_OPERATION is generated if glAreTexturesResident is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexParameter with parameter name GL_TEXTURE_RESIDENT + retrieves the residence status of a currently bound texture. + + + See Also + + glBindTexture, + glGetTexParameter, + glPrioritizeTextures, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glArrayElement.xml b/upstream-man-pages/man2/glArrayElement.xml new file mode 100644 index 0000000..1e103a0 --- /dev/null +++ b/upstream-man-pages/man2/glArrayElement.xml @@ -0,0 +1,113 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glArrayElement + 3G + + + glArrayElement + render a vertex using the specified vertex array element + + C Specification + + + void glArrayElement + GLint i + + + + + Parameters + + + i + + + Specifies an index into the enabled vertex data arrays. + + + + + + Description + + glArrayElement commands are used within glBegin/glEnd pairs to + specify vertex and attribute data for point, line, and polygon + primitives. If GL_VERTEX_ARRAY is enabled when glArrayElement is called, a + single vertex is drawn, using + vertex and attribute data taken from location i of the enabled + arrays. If GL_VERTEX_ARRAY is not enabled, no drawing occurs but + the attributes corresponding to the enabled arrays are modified. + + + Use glArrayElement to construct primitives by indexing vertex data, rather than + by streaming through arrays of data in first-to-last order. Because + each call specifies only a single vertex, it is possible to explicitly + specify per-primitive attributes such as a single normal for each + triangle. + + + Changes made to array data between the execution of glBegin and the + corresponding execution of glEnd may affect calls to glArrayElement that are made + within the same glBegin/glEnd period in nonsequential ways. + That is, a call to + glArrayElement that precedes a change to array data may + access the changed data, and a call that follows a change to array data + may access original data. + + + Notes + + glArrayElement is available only if the GL version is 1.1 or greater. + + + glArrayElement is included in display lists. If glArrayElement is entered into a + display list, the necessary array data (determined by the array + pointers and enables) is also entered into the display list. Because + the array pointers and enables are client-side state, their values + affect display lists when the lists are created, not when the lists + are executed. + + + Errors + + GL_INVALID_VALUE may be generated if i is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glClientActiveTexture, + glColorPointer, + glDrawArrays, + glEdgeFlagPointer, + glFogCoordPointer, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glAttachShader.xml b/upstream-man-pages/man2/glAttachShader.xml new file mode 100644 index 0000000..5b52cf5 --- /dev/null +++ b/upstream-man-pages/man2/glAttachShader.xml @@ -0,0 +1,115 @@ + + + + + glAttachShader + 3G + + + glAttachShader + Attaches a shader object to a program object + + C Specification + + + void glAttachShader + GLuint program + GLuint shader + + + + Parameters + + + program + + Specifies the program object to which a shader + object will be attached. + + + + + shader + + Specifies the shader object that is to be attached. + + + + + Description + In order to create an executable, there must be a way to + specify the list of things that will be linked together. Program + objects provide this mechanism. Shaders that are to be linked + together in a program object must first be attached to that + program object. glAttachShader attaches the + shader object specified by shader to the + program object specified by program. This + indicates that shader will be included in + link operations that will be performed on + program. + + All operations that can be performed on a shader object + are valid whether or not the shader object is attached to a + program object. It is permissible to attach a shader object to a + program object before source code has been loaded into the + shader object or before the shader object has been compiled. It + is permissible to attach multiple shader objects of the same + type because each may contain a portion of the complete shader. + It is also permissible to attach a shader object to more than + one program object. If a shader object is deleted while it is + attached to a program object, it will be flagged for deletion, + and deletion will not occur until + glDetachShader + is called to detach it from all program objects to which it is + attached. + + Notes + glAttachShader + is available only if the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if either + program or shader + is not a value generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + shader is already attached to + program. + + GL_INVALID_OPERATION is generated if + glAttachShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetAttachedShaders + with the handle of a valid program object + + glIsProgram + + glIsShader + + See Also + glCompileShader, + glDetachShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glBegin.xml b/upstream-man-pages/man2/glBegin.xml new file mode 100644 index 0000000..942a449 --- /dev/null +++ b/upstream-man-pages/man2/glBegin.xml @@ -0,0 +1,619 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBegin + 3G + + + glBegin + delimit the vertices of a primitive or a group of like primitives + + C Specification + + + void glBegin + GLenum mode + + + + + Parameters + + + mode + + + Specifies the primitive or primitives that will be created from vertices + presented between glBegin and the subsequent glEnd. + Ten symbolic constants are accepted: + GL_POINTS, + GL_LINES, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_TRIANGLES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_QUADS, + GL_QUAD_STRIP, and + GL_POLYGON. + + + + + + C Specification + + + void glEnd + void + + + + Description + + glBegin and glEnd delimit the vertices that define a primitive or + a group of like primitives. + glBegin accepts a single argument that specifies in which of ten ways the + vertices are interpreted. + Taking + n + as an integer count starting at one, + and + N + as the total number of vertices specified, + the interpretations are as follows: + + + + GL_POINTS + + + Treats each vertex as a single point. + Vertex + n + defines point + n. + N + points are drawn. + + + + + GL_LINES + + + Treats each pair of vertices as an independent line segment. + Vertices + + + + 2 + + n + - + 1 + + + and + + + + 2 + + n + + + define line + n. + + + + N + 2 + + + lines are drawn. + + + + + GL_LINE_STRIP + + + Draws a connected group of line segments from the first vertex + to the last. + Vertices + n + and + + + + n + + + 1 + + + define line + n. + + + + N + - + 1 + + + lines are drawn. + + + + + GL_LINE_LOOP + + + Draws a connected group of line segments from the first vertex + to the last, + then back to the first. + Vertices + n + and + + + + n + + + 1 + + + define line + n. + The last line, however, is defined by vertices + N + and + + + 1 + . + N + lines are drawn. + + + + + GL_TRIANGLES + + + Treats each triplet of vertices as an independent triangle. + Vertices + + + + 3 + + n + - + 2 + + , + + + + 3 + + n + - + 1 + + , + and + + + + 3 + + n + + + define triangle + n. + + + + N + 3 + + + triangles are drawn. + + + + + GL_TRIANGLE_STRIP + + + Draws a connected group of triangles. One triangle is defined for each + vertex presented after the first two vertices. For odd + n, + vertices + n, + + + + n + + + 1 + + , + and + + + + n + + + 2 + + + define triangle + n. + For even + n, + vertices + + + + n + + + 1 + + , + n, + and + + + + n + + + 2 + + + define triangle + n. + + + + N + - + 2 + + + triangles are + drawn. + + + + + GL_TRIANGLE_FAN + + + Draws a connected group of triangles. + One triangle is defined for each vertex presented after the first two vertices. + Vertices + + + 1 + , + + + + n + + + 1 + + , + and + + + + n + + + 2 + + + define triangle + n. + + + + N + - + 2 + + + triangles are drawn. + + + + + GL_QUADS + + + Treats each group of four vertices as an independent quadrilateral. + Vertices + + + + 4 + + n + - + 3 + + , + + + + 4 + + n + - + 2 + + , + + + + 4 + + n + - + 1 + + , + and + + + + 4 + + n + + + define quadrilateral + n. + + + + N + 4 + + + quadrilaterals are drawn. + + + + + GL_QUAD_STRIP + + + Draws a connected group of quadrilaterals. + One quadrilateral is defined for each pair of vertices presented + after the first pair. + Vertices + + + + 2 + + n + - + 1 + + , + + + + 2 + + n + + , + + + + 2 + + n + + + 2 + + , + and + + + + 2 + + n + + + 1 + + + define quadrilateral + n. + + + + + N + 2 + + - + 1 + + + quadrilaterals are drawn. + Note that the order in which vertices are used to construct a quadrilateral + from strip data is different from that used with independent data. + + + + + GL_POLYGON + + + Draws a single, + convex polygon. + Vertices + + + 1 + + through + N + define this polygon. + + + + + + Only a subset of GL commands can be used between glBegin and glEnd. + The commands are + glVertex, + glColor, + glSecondaryColor, + glIndex, + glNormal, + glFogCoord, + glTexCoord, + glMultiTexCoord, + glVertexAttrib, + glEvalCoord, + glEvalPoint, + glArrayElement, + glMaterial, and + glEdgeFlag. + Also, + it is acceptable to use + glCallList or + glCallLists to execute + display lists that include only the preceding commands. + If any other GL command is executed between glBegin and glEnd, + the error flag is set and the command is ignored. + + + Regardless of the value chosen for mode, + there is no limit to the number of vertices that can be defined + between glBegin and glEnd. + Lines, + triangles, + quadrilaterals, + and polygons that are incompletely specified are not drawn. + Incomplete specification results when either too few vertices are + provided to specify even a single primitive or when an incorrect multiple + of vertices is specified. The incomplete primitive is ignored; the rest are drawn. + + + The minimum specification of vertices + for each primitive is as follows: + 1 for a point, + 2 for a line, + 3 for a triangle, + 4 for a quadrilateral, + and 3 for a polygon. + Modes that require a certain multiple of vertices are + GL_LINES (2), + GL_TRIANGLES (3), + GL_QUADS (4), + and GL_QUAD_STRIP (2). + + + Errors + + GL_INVALID_ENUM is generated if mode is set to an unaccepted value. + + + GL_INVALID_OPERATION is generated if glBegin is executed between a + glBegin + and the corresponding execution of glEnd. + + + GL_INVALID_OPERATION is generated if glEnd is executed without being + preceded by a glBegin. + + + GL_INVALID_OPERATION is generated if a command other than + glVertex, + glColor, + glSecondaryColor, + glIndex, + glNormal, + glFogCoord, + glTexCoord, + glMultiTexCoord, + glVertexAttrib, + glEvalCoord, + glEvalPoint, + glArrayElement, + glMaterial, + glEdgeFlag, + glCallList, or + glCallLists is executed between + the execution of glBegin and the corresponding + execution glEnd. + + + Execution of + glEnableClientState, + glDisableClientState, + glEdgeFlagPointer, + glFogCoordPointer, + glTexCoordPointer, + glColorPointer, + glSecondaryColorPointer, + glIndexPointer, + glNormalPointer, + glVertexPointer, + glVertexAttribPointer, + glInterleavedArrays, or + glPixelStore is not allowed after a call to glBegin and before + the corresponding call to glEnd, + but an error may or may not be generated. + + + See Also + + glArrayElement, + glCallList, + glCallLists, + glColor, + glEdgeFlag, + glEvalCoord, + glEvalPoint, + glFogCoord, + glIndex, + glMaterial, + glMultiTexCoord, + glNormal, + glSecondaryColor, + glTexCoord, + glVertex, + glVertexAttrib + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBeginQuery.xml b/upstream-man-pages/man2/glBeginQuery.xml new file mode 100644 index 0000000..3a41b89 --- /dev/null +++ b/upstream-man-pages/man2/glBeginQuery.xml @@ -0,0 +1,154 @@ + + + + + + + 2005 + Sams Publishing + + + glBeginQuery + 3G + + + glBeginQuery + delimit the boundaries of a query object + + C Specification + + + void glBeginQuery + GLenum target + GLuint id + + + + + Parameters + + + target + + + Specifies the target type of query object established between + glBeginQuery and the subsequent glEndQuery. + The symbolic constant must be GL_SAMPLES_PASSED. + + + + + id + + + Specifies the name of a query object. + + + + + + C Specification + + + void glEndQuery + GLenum target + + + + + Parameters + + + target + + + Specifies the target type of query object to be concluded. + The symbolic constant must be GL_SAMPLES_PASSED. + + + + + + Description + + glBeginQuery and glEndQuery delimit the + boundaries of a query object. If a query object with name id does not yet exist it is created. + + + When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter once for every sample that passes the depth test. When glEndQuery + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. + + + Notes + + If the samples-passed count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. + + + An implementation may support 0 bits in its samples-passed counter, in which case query results are always undefined + and essentially useless. + + + When GL_SAMPLE_BUFFERS is 0, the samples-passed counter will increment once for each fragment that passes + the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment the samples-passed + counter individually for each sample of a fragment that passes the depth test, or it may choose to increment the counter for + all samples of a fragment if any one of them passes the depth test. + + + glBeginQuery and glEndQuery + are available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_SAMPLES_PASSED. + + + GL_INVALID_OPERATION is generated if glBeginQuery is executed while + a query object of the same target is already active. + + + GL_INVALID_OPERATION is generated if glEndQuery + is executed when a query object of the same target is not active. + + + GL_INVALID_OPERATION is generated if id is 0. + + + GL_INVALID_OPERATION is generated if id is the name of an already active query object. + + + GL_INVALID_OPERATION is generated if glBeginQuery or + glEndQuery is executed between the execution of + glBegin and the corresponding execution of + glEnd. + + + See Also + + glDeleteQueries, + glGenQueries, + glGetQueryiv, + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glBindAttribLocation.xml b/upstream-man-pages/man2/glBindAttribLocation.xml new file mode 100644 index 0000000..2656f84 --- /dev/null +++ b/upstream-man-pages/man2/glBindAttribLocation.xml @@ -0,0 +1,196 @@ + + + + + glBindAttribLocation + 3G + + + glBindAttribLocation + Associates a generic vertex attribute index with a named attribute variable + + C Specification + + + void glBindAttribLocation + GLuint program + GLuint index + const GLchar *name + + + + Parameters + + + program + + Specifies the handle of the program object in + which the association is to be made. + + + + index + + Specifies the index of the generic vertex + attribute to be bound. + + + + name + + Specifies a null terminated string containing + the name of the vertex shader attribute variable to + which index is to be + bound. + + + + + Description + glBindAttribLocation is used to + associate a user-defined attribute variable in the program + object specified by program with a + generic vertex attribute index. The name of the user-defined + attribute variable is passed as a null terminated string in + name. The generic vertex attribute index + to be bound to this variable is specified by + index. When + program is made part of current state, + values provided via the generic vertex attribute + index will modify the value of the + user-defined attribute variable specified by + name. + + If name refers to a matrix + attribute variable, index refers to the + first column of the matrix. Other matrix columns are then + automatically bound to locations index+1 + for a matrix of type mat2; index+1 and + index+2 for a matrix of type mat3; and + index+1, index+2, + and index+3 for a matrix of type + mat4. + + This command makes it possible for vertex shaders to use + descriptive names for attribute variables rather than generic + variables that are numbered from 0 to + GL_MAX_VERTEX_ATTRIBS -1. The values sent + to each generic attribute index are part of current state, just + like standard vertex attributes such as color, normal, and + vertex position. If a different program object is made current + by calling + glUseProgram, + the generic vertex attributes are tracked in such a way that the + same values will be observed by attributes in the new program + object that are also bound to + index. Attribute variable + name-to-generic attribute index bindings for a program object + can be explicitly assigned at any time by calling + glBindAttribLocation. Attribute bindings do + not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for generic attributes remain fixed (and their + values can be queried) until the next link command + occurs. + + Applications are not allowed to bind any of the standard + OpenGL vertex attributes using this command, as they are bound + automatically when needed. Any attribute binding that occurs + after the program object has been linked will not take effect + until the next time the program object is linked. + + Notes + glBindAttribLocation is available + only if the GL version is 2.0 or greater. + + glBindAttribLocation can be called + before any vertex shader objects are bound to the specified + program object. It is also permissible to bind a generic + attribute index to an attribute variable name that is never used + in a vertex shader. + + If name was bound previously, that + information is lost. Thus you cannot bind one user-defined + attribute variable to multiple indices, but you can bind + multiple user-defined attribute variables to the same + index. + + Applications are allowed to bind more than one + user-defined attribute variable to the same generic vertex + attribute index. This is called aliasing, + and it is allowed only if just one of the aliased attributes is + active in the executable program, or if no path through the + shader consumes more than one attribute of a set of attributes + aliased to the same location. The compiler and linker are + allowed to assume that no aliasing is done and are free to + employ optimizations that work only in the absence of aliasing. + OpenGL implementations are not required to do error checking to + detect aliasing. Because there is no way to bind standard + attributes, it is not possible to alias generic attributes with + conventional ones (except for generic attribute 0). + + Active attributes that are not explicitly bound will be + bound by the linker when + glLinkProgram + is called. The locations assigned can be queried by calling + glGetAttribLocation. + + OpenGL copies the name string when + glBindAttribLocation is called, so an + application may free its copy of the name + string immediately after the function returns. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_OPERATION is generated if + name starts with the reserved prefix + "gl_". + + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + glBindAttribLocation is executed between + the execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetActiveAttrib + with argument program + + glGetAttribLocation + with arguments program and + name + + glIsProgram + + See Also + glDisableVertexAttribArray, + glEnableVertexAttribArray, + glUseProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glBindBuffer.xml b/upstream-man-pages/man2/glBindBuffer.xml new file mode 100644 index 0000000..b0042dd --- /dev/null +++ b/upstream-man-pages/man2/glBindBuffer.xml @@ -0,0 +1,206 @@ + + + + + + + 2005 + Sams Publishing + + + glBindBuffer + 3G + + + glBindBuffer + bind a named buffer object + + C Specification + + + void glBindBuffer + GLenum target + GLuint buffer + + + + Parameters + + + target + + + Specifies the target to which the buffer object is bound. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + buffer + + + Specifies the name of a buffer object. + + + + + + Description + + glBindBuffer lets you create or use a named buffer object. Calling glBindBuffer with + target set to + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, GL_PIXEL_PACK_BUFFER or + GL_PIXEL_UNPACK_BUFFER and buffer set to the name + of the new buffer object binds the buffer object name to the target. + When a buffer object is bound to a target, the previous binding for that + target is automatically broken. + + + Buffer object names are unsigned integers. The value zero is reserved, but + there is no default buffer object for each buffer object target. Instead, buffer set to zero + effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target. + Buffer object names and the corresponding buffer object contents are local to + the shared display-list space (see glXCreateContext) of the current + GL rendering context; + two rendering contexts share buffer object names only if they + also share display lists. + + + You may use glGenBuffers to generate a set of new buffer object names. + + + The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with + GL_READ_WRITE access and GL_STATIC_DRAW usage. + + + While a non-zero buffer object name is bound, GL operations on the target to which it is + bound affect the bound buffer object, and queries of the target to which it is bound return state + from the bound buffer object. While buffer object name zero is bound, as in the initial state, + attempts to modify or query state on the target to which it is bound generates an + GL_INVALID_OPERATION error. + + + When vertex array pointer state is changed, for example by a call to + glNormalPointer, + the current buffer object binding (GL_ARRAY_BUFFER_BINDING) is copied into the + corresponding client state for the vertex array type being changed, for example + GL_NORMAL_ARRAY_BUFFER_BINDING. While a non-zero buffer object is bound to the + GL_ARRAY_BUFFER target, the vertex array pointer parameter that is traditionally + interpreted as a pointer to client-side memory is instead interpreted as an offset within the + buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, + the indices parameter of glDrawElements, + glDrawRangeElements, or + glMultiDrawElements that is traditionally + interpreted as a pointer to client-side memory is instead interpreted as an offset within the + buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, + the following commands are affected: glGetCompressedTexImage, + glGetConvolutionFilter, + glGetHistogram, + glGetMinmax, + glGetPixelMap, + glGetPolygonStipple, + glGetSeparableFilter, + glGetTexImage, and + glReadPixels. The pointer parameter that is + traditionally interpreted as a pointer to client-side memory where the pixels are to be packed is instead + interpreted as an offset within the buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, + the following commands are affected: glBitmap, + glColorSubTable, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glConvolutionFilter2D, + glDrawPixels, + glPixelMap, + glPolygonStipple, + glSeparableFilter2D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. The pointer parameter that is + traditionally interpreted as a pointer to client-side memory from which the pixels are to be unpacked is + instead interpreted as an offset within the buffer object measured in basic machine units. + + + A buffer object binding created with glBindBuffer remains active until a different + buffer object name is bound to the same target, or until the bound buffer object is + deleted with glDeleteBuffers. + + + Once created, a named buffer object may be re-bound to any target as often as needed. However, + the GL implementation may make choices about how to optimize the storage of a buffer object based + on its initial binding target. + + + Notes + + glBindBuffer is available only if the GL version is 1.5 or greater. + + + GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are + available only if the GL version is 2.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if glBindBuffer is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ELEMENT_ARRAY_BUFFER_BINDING + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glDeleteBuffers, + glGenBuffers, + glGet, + glIsBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glBindTexture.xml b/upstream-man-pages/man2/glBindTexture.xml new file mode 100644 index 0000000..3f4b03d --- /dev/null +++ b/upstream-man-pages/man2/glBindTexture.xml @@ -0,0 +1,168 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBindTexture + 3G + + + glBindTexture + bind a named texture to a texturing target + + C Specification + + + void glBindTexture + GLenum target + GLuint texture + + + + Parameters + + + target + + + Specifies the target to which the texture is bound. + Must be either + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, or + GL_TEXTURE_CUBE_MAP. + + + + + texture + + + Specifies the name of a texture. + + + + + + Description + + glBindTexture lets you create or use a named texture. Calling glBindTexture with + target set to + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D or + GL_TEXTURE_CUBE_MAP and texture set to the name + of the new texture binds the texture name to the target. + When a texture is bound to a target, the previous binding for that + target is automatically broken. + + + Texture names are unsigned integers. The value zero is reserved to + represent the default texture for each texture target. + Texture names and the corresponding texture contents are local to + the shared display-list space (see glXCreateContext) of the current + GL rendering context; + two rendering contexts share texture names only if they + also share display lists. + + + You may use glGenTextures to generate a set of new texture names. + + + When a texture is first bound, it assumes the specified target: + A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a + texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a + texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, and a + texture first bound to GL_TEXTURE_CUBE_MAP + becomes a cube-mapped texture. The state of a one-dimensional texture + immediately after it is first bound is equivalent to the state of the + default GL_TEXTURE_1D at GL initialization, and similarly for two- + and three-dimensional textures and cube-mapped textures. + + + While a texture is bound, GL operations on the target to which it is + bound affect the bound texture, and queries of the target to which it + is bound return state from the bound texture. If texture mapping is active + on the target to which a texture is bound, the bound texture is used. + In effect, the texture targets become aliases for the textures currently + bound to them, and the texture name zero refers to the default textures + that were bound to them at initialization. + + + A texture binding created with glBindTexture remains active until a different + texture is bound to the same target, or until the bound texture is + deleted with glDeleteTextures. + + + Once created, a named texture may be re-bound to its same original target as often as needed. + It is usually much faster to use glBindTexture to bind an existing named + texture to one of the texture targets than it is to reload the texture image + using glTexImage1D, glTexImage2D, or glTexImage3D. + For additional control over performance, use + glPrioritizeTextures. + + + glBindTexture is included in display lists. + + + Notes + + glBindTexture is available only if the GL version is 1.1 or greater. + + + GL_TEXTURE_CUBE_MAP is available only if the GL version is 1.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if texture was previously created with a target + that doesn't match that of target. + + + GL_INVALID_OPERATION is generated if glBindTexture is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGet with argument GL_TEXTURE_BINDING_1D + + + glGet with argument GL_TEXTURE_BINDING_2D + + + glGet with argument GL_TEXTURE_BINDING_3D + + + See Also + + glAreTexturesResident, + glDeleteTextures, + glGenTextures, + glGet, + glGetTexParameter, + glIsTexture, + glPrioritizeTextures, + glTexImage1D, + glTexImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBitmap.xml b/upstream-man-pages/man2/glBitmap.xml new file mode 100644 index 0000000..c1b8c3c --- /dev/null +++ b/upstream-man-pages/man2/glBitmap.xml @@ -0,0 +1,276 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBitmap + 3G + + + glBitmap + draw a bitmap + + C Specification + + + void glBitmap + GLsizei width + GLsizei height + GLfloat xorig + GLfloat yorig + GLfloat xmove + GLfloat ymove + const GLubyte * bitmap + + + + + Parameters + + + width + height + + + Specify the pixel width and height of the bitmap image. + + + + + xorig + yorig + + + Specify the location of the origin in the bitmap image. + The origin is measured from the lower left corner of the bitmap, + with right and up being the positive axes. + + + + + xmove + ymove + + + Specify the x and y offsets to be added to the current raster position + after the bitmap is drawn. + + + + + bitmap + + + Specifies the address of the bitmap image. + + + + + + Description + + A bitmap is a binary image. + When drawn, + the bitmap is positioned relative to the current raster position, + and frame buffer pixels corresponding to 1's in the bitmap are + written using the current raster color or index. + Frame buffer pixels corresponding to 0's in the bitmap are not modified. + + + glBitmap takes seven arguments. + The first pair specifies the width and height of the bitmap image. + The second pair specifies the location of the bitmap origin relative + to the lower left corner of the bitmap image. + The third pair of arguments specifies x and y offsets to be added + to the current raster position after the bitmap has been drawn. + The final argument is a pointer to the bitmap image itself. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a bitmap image is + specified, bitmap is treated as a byte offset into the buffer object's data store. + + + The bitmap image is interpreted like image data for the glDrawPixels + command, + with width and height corresponding to the width and height arguments + of that command, + and with type set to GL_BITMAP + and format set to GL_COLOR_INDEX. + Modes specified using glPixelStore affect the + interpretation of bitmap image data; + modes specified using glPixelTransfer do not. + + + If the current raster position is invalid, glBitmap is ignored. + Otherwise, + the lower left corner of the bitmap image is positioned at the window coordinates + + + + + + x + w + + = + + + x + r + + - + x + o + + + + + + + + + + + y + w + + = + + + y + r + + - + y + o + + + + + + + + where + + + + x + r + + y + r + + + + is the raster position + and + + + + x + o + + y + o + + + + is the bitmap origin. + Fragments are then generated for each pixel corresponding to a 1 (one) + in the bitmap image. + These fragments are generated using the current raster z coordinate, + color or color index, and current raster texture coordinates. + They are then treated just as if they had been generated + by a point, line, or polygon, + including texture mapping, + fogging, + and all per-fragment operations such as alpha and depth testing. + + + After the bitmap has been drawn, + the x and y coordinates of the current raster position are offset by + xmove and ymove. + No change is made to the z coordinate of the current raster position, + or to the current raster color, texture coordinates, or index. + + + Notes + + To set a valid raster position outside the viewport, first set a valid + raster position inside the viewport, then call glBitmap with NULL + as the bitmap parameter and with xmove and ymove set to + the offsets of the new raster position. This technique is useful when + panning an image around the viewport. + + + Errors + + GL_INVALID_VALUE is generated if width or height is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glBitmap + is executed between the execution of glBegin and the corresponding execution of + glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_RASTER_POSITION + + + glGet with argument GL_CURRENT_RASTER_COLOR + + + glGet with argument GL_CURRENT_RASTER_SECONDARY_COLOR + + + glGet with argument GL_CURRENT_RASTER_DISTANCE + + + glGet with argument GL_CURRENT_RASTER_INDEX + + + glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS + + + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glBindBuffer, + glDrawPixels, + glPixelStore, + glPixelTransfer, + glRasterPos, + glWindowPos + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBlendColor.xml b/upstream-man-pages/man2/glBlendColor.xml new file mode 100644 index 0000000..e68d7a7 --- /dev/null +++ b/upstream-man-pages/man2/glBlendColor.xml @@ -0,0 +1,98 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendColor + 3G + + + glBlendColor + set the blend color + + C Specification + + + void glBlendColor + GLclampf red + GLclampf green + GLclampf blue + GLclampf alpha + + + + + Parameters + + + red + green + blue + alpha + + + specify the components of GL_BLEND_COLOR + + + + + + Description + + The GL_BLEND_COLOR may be used to calculate the source and destination + blending factors. The color components are clamped to the range + + + + 0 + 1 + + + before being stored. See glBlendFunc for a complete description of the + blending operations. + Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). + + + Notes + + glBlendColor is part of the ARB_imaging subset. glBlendColor is present only + if ARB_imaging is returned when glGetString is called with + GL_EXTENSIONS as its argument. + + + Errors + + GL_INVALID_OPERATION is generated if glBlendColor is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + + + Associated Gets + + glGet with an argument of GL_BLEND_COLOR + + + See Also + + glBlendEquation, + glBlendFunc, + glGetString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBlendEquation.xml b/upstream-man-pages/man2/glBlendEquation.xml new file mode 100644 index 0000000..b349186 --- /dev/null +++ b/upstream-man-pages/man2/glBlendEquation.xml @@ -0,0 +1,765 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendEquation + 3G + + + glBlendEquation + specify the equation used for both the RGB blend equation and the Alpha blend equation + + C Specification + + + void glBlendEquation + GLenum mode + + + + + Parameters + + + mode + + + specifies how source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + + Description + + The blend equations determine how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function sets both the RGB blend equation and the alpha + blend equation to a single equation. + + + These equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. + + + In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + + + + + + + + + + Mode + + + RGB Components + + + Alpha Component + + + + + + + GL_FUNC_ADD + + + + + + Rr + = + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + GL_FUNC_SUBTRACT + + + + + + Rr + = + + R + s + + + s + R + + - + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + - + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + - + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + - + A + d + + + d + A + + + + + + + + + GL_FUNC_REVERSE_SUBTRACT + + + + + + Rr + = + + R + d + + + d + R + + - + R + s + + + s + R + + + + + + + + Gr + = + + G + d + + + d + G + + - + G + s + + + s + G + + + + + + + + Br + = + + B + d + + + d + B + + - + B + s + + + s + B + + + + + + + + + + Ar + = + + A + d + + + d + A + + - + A + s + + + s + A + + + + + + + + + GL_MIN + + + + + + Rr + = + + min + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + min + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + min + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + min + + + + A + s + + + + A + d + + + + + + + + + + + GL_MAX + + + + + + Rr + = + + max + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + max + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + max + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + max + + + + A + s + + + + A + d + + + + + + + + + + + + + + The results of these equations are clamped to the range + + + + 0 + 1 + + . + + + The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. + + + Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + + + + + Notes + + The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. + + + GL_INVALID_OPERATION is generated if glBlendEquation is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGet with an argument of GL_BLEND_EQUATION_RGB + + + glGet with an argument of GL_BLEND_EQUATION_ALPHA + + + See Also + + glGetString, + glBlendColor, + glBlendFunc + glBlendFuncSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBlendEquationSeparate.xml b/upstream-man-pages/man2/glBlendEquationSeparate.xml new file mode 100644 index 0000000..abac06d --- /dev/null +++ b/upstream-man-pages/man2/glBlendEquationSeparate.xml @@ -0,0 +1,779 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendEquationSeparate + 3G + + + glBlendEquationSeparate + set the RGB blend equation and the alpha blend equation separately + + C Specification + + + void glBlendEquationSeparate + GLenum modeRGB + GLenum modeAlpha + + + + + Parameters + + + modeRGB + + + specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + modeAlpha + + + specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + + Description + + The blend equations determines how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function specifies one blend equation for the RGB-color + components and one blend equation for the alpha component. + + + The blend equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. + + + In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + + + + + + + + + + Mode + + + RGB Components + + + Alpha Component + + + + + + + GL_FUNC_ADD + + + + + + Rr + = + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + GL_FUNC_SUBTRACT + + + + + + Rr + = + + R + s + + + s + R + + - + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + - + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + - + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + - + A + d + + + d + A + + + + + + + + + GL_FUNC_REVERSE_SUBTRACT + + + + + + Rr + = + + R + d + + + d + R + + - + R + s + + + s + R + + + + + + + + Gr + = + + G + d + + + d + G + + - + G + s + + + s + G + + + + + + + + Br + = + + B + d + + + d + B + + - + B + s + + + s + B + + + + + + + + + + Ar + = + + A + d + + + d + A + + - + A + s + + + s + A + + + + + + + + + GL_MIN + + + + + + Rr + = + + min + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + min + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + min + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + min + + + + A + s + + + + A + d + + + + + + + + + + + GL_MAX + + + + + + Rr + = + + max + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + max + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + max + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + max + + + + A + s + + + + A + d + + + + + + + + + + + + + + The results of these equations are clamped to the range + + + + 0 + 1 + + . + + + The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. + + + Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + + + + + Notes + + glBlendEquationSeparate is available only if the GL version is 2.0 or greater. + + + The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. + + + Errors + + GL_INVALID_ENUM is generated if either modeRGB or modeAlpha is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. + + + GL_INVALID_OPERATION is generated if glBlendEquationSeparate is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGet with an argument of GL_BLEND_EQUATION_RGB + + + glGet with an argument of GL_BLEND_EQUATION_ALPHA + + + See Also + + glGetString, + glBlendColor, + glBlendFunc, + glBlendFuncSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glBlendFunc.xml b/upstream-man-pages/man2/glBlendFunc.xml new file mode 100644 index 0000000..ed7ed92 --- /dev/null +++ b/upstream-man-pages/man2/glBlendFunc.xml @@ -0,0 +1,1256 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendFunc + 3G + + + glBlendFunc + specify pixel arithmetic + + C Specification + + + void glBlendFunc + GLenum sfactor + GLenum dfactor + + + + + Parameters + + + sfactor + + + Specifies how the red, green, blue, + and alpha source blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, and + GL_SRC_ALPHA_SATURATE. + The initial value is GL_ONE. + + + + + dfactor + + + Specifies how the red, green, blue, + and alpha destination blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. + + + + + + Description + + In RGBA mode, pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. + + + glBlendFunc defines the operation of blending when it is enabled. + sfactor specifies which method is used to scale the + source color components. + dfactor specifies which method is used to scale the + destination color components. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + In the table and in subsequent equations, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + . + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where + + + + + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + + + + + and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. + + + Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + The scale factors described in the table, + denoted + + + + f + R + + f + G + + f + B + + f + A + + + , + represent either source or destination factors. + All scale factors have range + + + + 0 + 1 + + . + + + + + + + + + + + Parameter + + + + + + f + R + + f + G + + f + B + + f + A + + + + + + + + + + GL_ZERO + + + + + + 0 + 0 + 0 + 0 + + + + + + + GL_ONE + + + + + + 1 + 1 + 1 + 1 + + + + + + + GL_SRC_COLOR + + + + + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + A + s + + k + A + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + A + s + + k + A + + + + + + + + + + GL_DST_COLOR + + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + + + + + GL_ONE_MINUS_DST_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + + + + + + GL_SRC_ALPHA + + + + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + + + + + + GL_DST_ALPHA + + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + GL_ONE_MINUS_DST_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + GL_CONSTANT_COLOR + + + + + + R + c + + G + c + + B + c + + A + c + + + + + + + + GL_ONE_MINUS_CONSTANT_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + A + c + + + + + + + + + GL_CONSTANT_ALPHA + + + + + + A + c + + A + c + + A + c + + A + c + + + + + + + + GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + A + c + + + + + + + + + GL_SRC_ALPHA_SATURATE + + + + + + i + i + i + 1 + + + + + + + + + In the table, + + + + + + + i + = + + + min + + + A + s + + + k + A + + - + A + d + + + + + k + A + + + + + + + + To determine the blended RGBA values of a pixel when drawing in RGBA mode, + the system uses the following equations: + + + + + + + R + d + + = + + min + + + k + R + + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + + + G + d + + = + + min + + + k + G + + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + + + B + d + + = + + min + + + k + B + + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + A + d + + = + + min + + + k + A + + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + + Despite the apparent precision of the above equations, + blending arithmetic is not exactly specified, + because blending operates with imprecise integer color values. + However, + a blend factor that should be equal to 1 + is guaranteed not to modify its multiplicand, + and a blend factor equal to 0 reduces its multiplicand to 0. + For example, + when sfactor is GL_SRC_ALPHA, + dfactor is GL_ONE_MINUS_SRC_ALPHA, + and + + + A + s + + + is equal to + + + k + A + + , + the equations reduce to simple replacement: + + + + + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + + + + + + + Examples + + + + Transparency is best implemented using blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + with primitives sorted from farthest to nearest. + Note that this transparency calculation does not require + the presence of alpha bitplanes in the frame buffer. + + + Blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + is also useful for rendering antialiased points and lines + in arbitrary order. + + + Polygon antialiasing is optimized using blend function + (GL_SRC_ALPHA_SATURATE, GL_ONE) + with polygons sorted from nearest to farthest. + (See the glEnable, glDisable reference page and the + GL_POLYGON_SMOOTH argument for information on polygon antialiasing.) + Destination alpha bitplanes, + which must be present for this blend function to operate correctly, + store the accumulated coverage. + + + Notes + + Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. + + + When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) + + + Blending affects only RGBA rendering. + It is ignored by color index renderers. + + + GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA are available only + if the GL version is 1.4 or greater or if the ARB_imaging is + supported by your implementation. + + + GL_SRC_COLOR and GL_ONE_MINUS_SRC_COLOR are valid only for + sfactor if the GL version is 1.4 or greater. + + + GL_DST_COLOR and GL_ONE_MINUS_DST_COLOR are valid only for + dfactor if the GL version is 1.4 or greater. + + + Errors + + GL_INVALID_ENUM is generated if either sfactor or dfactor is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glBlendFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_BLEND_SRC + + + glGet with argument GL_BLEND_DST + + + glIsEnabled with argument GL_BLEND + + + + + See Also + + glAlphaFunc, + glBlendColor, + glBlendEquation, + glBlendFuncSeparate, + glClear, + glDrawBuffer, + glEnable, + glLogicOp, + glStencilFunc + + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBlendFuncSeparate.xml b/upstream-man-pages/man2/glBlendFuncSeparate.xml new file mode 100644 index 0000000..62c0c88 --- /dev/null +++ b/upstream-man-pages/man2/glBlendFuncSeparate.xml @@ -0,0 +1,1315 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendFuncSeparate + 3G + + + glBlendFuncSeparate + specify pixel arithmetic for RGB and alpha components separately + + C Specification + + + void glBlendFuncSeparate + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + + Parameters + + + srcRGB + + + Specifies how the red, green, and blue blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, and + GL_SRC_ALPHA_SATURATE. + The initial value is GL_ONE. + + + + + dstRGB + + + Specifies how the red, green, and blue destination blending factors are + computed. The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. + + + + + srcAlpha + + + Specified how the alpha source blending factor is computed. The same + symbolic constants are accepted as for srcRGB. + The initial value is GL_ONE. + + + + + dstAlpha + + + Specified how the alpha destination blending factor is computed. The same + symbolic constants are accepted as for dstRGB. + The initial value is GL_ZERO. + + + + + + Description + + In RGBA mode, pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. + + + glBlendFuncSeparate defines the operation of blending when it is enabled. + srcRGB specifies which method is used to scale the + source RGB-color components. + dstRGB specifies which method is used to scale the + destination RGB-color components. + Likewise, srcAlpha specifies which method is used to scale the source alpha + color component, and dstAlpha specifies which method is used to scale the + destination alpha component. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + + + In the table and in subsequent equations, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + . + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where + + + + + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + + + + + and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. + + + Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + All scale factors have range + + + + 0 + 1 + + . + + + + + + + + + + + + Parameter + + + RGB Factor + + + Alpha Factor + + + + + + + GL_ZERO + + + + + + 0 + 0 + 0 + + + + + + + 0 + + + + + + GL_ONE + + + + + + 1 + 1 + 1 + + + + + + + 1 + + + + + + GL_SRC_COLOR + + + + + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + + + + + + + A + s + + k + A + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + + + + + + + + 1 + - + + A + s + + k + A + + + + + + + + + GL_DST_COLOR + + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + A + d + + k + A + + + + + + + + GL_ONE_MINUS_DST_COLOR + + + + + + + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + + 1 + - + + A + d + + k + A + + + + + + + + + GL_SRC_ALPHA + + + + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + + + + + + A + s + + k + A + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + + + + + + + 1 + - + + A + s + + k + A + + + + + + + + + GL_DST_ALPHA + + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + A + d + + k + A + + + + + + + + GL_ONE_MINUS_DST_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + + 1 + - + + A + d + + k + A + + + + + + + + + GL_CONSTANT_COLOR + + + + + + R + c + + G + c + + B + c + + + + + + + + A + c + + + + + + + GL_ONE_MINUS_CONSTANT_COLOR + + + + + + + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + + + + + + + + + 1 + - + A + c + + + + + + + + GL_CONSTANT_ALPHA + + + + + + A + c + + A + c + + A + c + + + + + + + + A + c + + + + + + + GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + + + + + + + + + 1 + - + A + c + + + + + + + + GL_SRC_ALPHA_SATURATE + + + + + + i + i + i + + + + + + + 1 + + + + + + + + In the table, + + + + + + + i + = + + min + + + A + s + + + 1 + - + + A + d + + + + + + + + + + + To determine the blended RGBA values of a pixel when drawing in RGBA mode, + the system uses the following equations: + + + + + + + R + d + + = + + min + + + k + R + + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + + + G + d + + = + + min + + + k + G + + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + + + B + d + + = + + min + + + k + B + + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + A + d + + = + + min + + + k + A + + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + + Despite the apparent precision of the above equations, blending arithmetic + is not exactly specified, because blending operates with imprecise integer + color values. However, a blend factor that should be equal to 1 is + guaranteed not to modify its multiplicand, and a blend factor equal to 0 + reduces its multiplicand to 0. For example, when srcRGB is + GL_SRC_ALPHA, dstRGB is GL_ONE_MINUS_SRC_ALPHA, and + + + A + s + + + is + equal to + + + k + A + + , + the equations reduce to simple replacement: + + + + + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + + + + + + + Notes + + glBlendFuncSeparate is available only if the GL version is 1.4 or greater. + + + Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. + + + When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) + + + Blending affects only RGBA rendering. + It is ignored by color index renderers. + + + GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA are available only + if the GL version is 1.4 or greater or if the ARB_imaging is + supported by your implementation. + + + GL_SRC_COLOR and GL_ONE_MINUS_SRC_COLOR are valid only for + srcRGB if the GL version is 1.4 or greater. + + + GL_DST_COLOR and GL_ONE_MINUS_DST_COLOR are valid only for + dstRGB if the GL version is 1.4 or greater. + + + Errors + + GL_INVALID_ENUM is generated if either srcRGB or dstRGB is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glBlendFuncSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_BLEND_SRC_RGB + + + glGet with argument GL_BLEND_SRC_ALPHA + + + glGet with argument GL_BLEND_DST_RGB + + + glGet with argument GL_BLEND_DST_ALPHA + + + glIsEnabled with argument GL_BLEND + + + + + See Also + + glAlphaFunc, + glBlendColor, + glBlendFunc, + glBlendEquation, + glClear, + glDrawBuffer, + glEnable, + glLogicOp, + glStencilFunc + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glBufferData.xml b/upstream-man-pages/man2/glBufferData.xml new file mode 100644 index 0000000..db52131 --- /dev/null +++ b/upstream-man-pages/man2/glBufferData.xml @@ -0,0 +1,221 @@ + + + + + + + 2005 + Sams Publishing + + + glBufferData + 3G + + + glBufferData + creates and initializes a buffer object's data store + + C Specification + + + void glBufferData + GLenum target + GLsizeiptr size + const GLvoid * data + GLenum usage + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + size + + + Specifies the size in bytes of the buffer object's new data store. + + + + + data + + + Specifies a pointer to data that will be copied into the data store for initialization, + or NULL if no data is to be copied. + + + + + usage + + + Specifies the expected usage pattern of the data store. The symbolic constant must be + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + + + + + + Description + + glBufferData creates a new data store for the buffer object currently bound to + target. Any pre-existing data store is deleted. The new data store is created with the + specified size in bytes and usage. If data + is not NULL, the data store is initialized with data from this pointer. In its initial + state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access + is GL_READ_WRITE. + + + usage is a hint to the GL implementation as to how a buffer object's data store will be + accessed. This enables the GL implementation to make more intelligent decisions that may significantly + impact buffer object performance. It does not, however, constrain the actual usage of the data store. + usage can be broken down into two parts: first, the frequency of access (modification + and usage), and second, the nature of that access. The frequency of access may be one of these: + + + + STREAM + + + The data store contents will be modified once and used at most a few times. + + + + + STATIC + + + The data store contents will be modified once and used many times. + + + + + DYNAMIC + + + The data store contents will be modified repeatedly and used many times. + + + + + + The nature of access may be one of these: + + + + DRAW + + + The data store contents are modified by the application, and used as the source for GL drawing and + image specification commands. + + + + + READ + + + The data store contents are modified by reading data from the GL, and used to return that data + when queried by the application. + + + + + COPY + + + The data store contents are modified by reading data from the GL, and used as the source for GL + drawing and image specification commands. + + + + + + Notes + + glBufferData is available only if the GL version is 1.5 or greater. + + + Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. + + + If data is NULL, a data store of the specified size is still created, + but its contents remain uninitialized and thus undefined. + + + Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. + + + GL_INVALID_ENUM is generated if usage is not + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + + + GL_INVALID_VALUE is generated if size is negative. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store with the specified size. + + + GL_INVALID_OPERATION is generated if glBufferData + is executed between the execution of + glBegin and the corresponding execution of + glEnd. + + + Associated Gets + + glGetBufferSubData + + + glGetBufferParameteriv with argument GL_BUFFER_SIZE or GL_BUFFER_USAGE + + + See Also + + glBindBuffer, + glBufferSubData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glBufferSubData.xml b/upstream-man-pages/man2/glBufferSubData.xml new file mode 100644 index 0000000..f5b7022 --- /dev/null +++ b/upstream-man-pages/man2/glBufferSubData.xml @@ -0,0 +1,152 @@ + + + + + + + 2005 + Sams Publishing + + + glBufferSubData + 3G + + + glBufferSubData + updates a subset of a buffer object's data store + + C Specification + + + void glBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + offset + + + Specifies the offset into the buffer object's data store where data replacement will begin, + measured in bytes. + + + + + size + + + Specifies the size in bytes of the data store region being replaced. + + + + + data + + + Specifies a pointer to the new data that will be copied into the data store. + + + + + + Description + + glBufferSubData redefines some or all of the data store for the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied to the data store from the memory pointed to by + data. An error is thrown if offset and size + together define a range beyond the bounds of the buffer object's data store. + + + Notes + + glBufferSubData is available only if the GL version is 1.5 or greater. + + + Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. + + + When replacing the entire data store, consider using glBufferSubData rather + than completely recreating the data store with glBufferData. This avoids the cost of + reallocating the data store. + + + Consider using multiple buffer objects to avoid stalling the rendering pipeline during data store updates. + If any rendering in the pipeline makes reference to data in the buffer object being updated by + glBufferSubData, especially from the specific region being updated, that rendering must + drain from the pipeline before the data store can be updated. + + + Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. + + + GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer object being updated is mapped. + + + GL_INVALID_OPERATION is generated if glBufferSubData + is executed between the execution of + glBegin and the corresponding execution of + glEnd. + + + Associated Gets + + glGetBufferSubData + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glCallList.xml b/upstream-man-pages/man2/glCallList.xml new file mode 100644 index 0000000..19100f4 --- /dev/null +++ b/upstream-man-pages/man2/glCallList.xml @@ -0,0 +1,100 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCallList + 3G + + + glCallList + execute a display list + + C Specification + + + void glCallList + GLuint list + + + + Parameters + + + list + + + Specifies the integer name of the display list to be executed. + + + + + + Description + + glCallList causes the named display list to be executed. + The commands saved in the display list are executed in order, + just as if they were called without using a display list. + If list has not been defined as a display list, + glCallList is ignored. + + + glCallList can appear inside a display list. + To avoid the possibility of infinite recursion resulting from display lists + calling one another, + a limit is placed on the nesting level of display + lists during display-list execution. + This limit is at least 64, and it depends on the implementation. + + + GL state is not saved and restored across a call to glCallList. + Thus, + changes made to GL state during the execution of a display list + remain after execution of the display list is completed. + Use glPushAttrib, + glPopAttrib, + glPushMatrix, + and glPopMatrix to preserve GL state across glCallList calls. + + + Notes + + Display lists can be executed between a call to glBegin + and the corresponding call to glEnd, + as long as the display list includes only commands that are allowed + in this interval. + + + Associated Gets + + glGet with argument GL_MAX_LIST_NESTING + + + glIsList + + + See Also + + glCallLists, + glDeleteLists, + glGenLists, + glNewList, + glPushAttrib, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCallLists.xml b/upstream-man-pages/man2/glCallLists.xml new file mode 100644 index 0000000..13bc7c5 --- /dev/null +++ b/upstream-man-pages/man2/glCallLists.xml @@ -0,0 +1,284 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCallLists + 3G + + + glCallLists + execute a list of display lists + + C Specification + + + void glCallLists + GLsizei n + GLenum type + const GLvoid * lists + + + + Parameters + + + n + + + Specifies the number of display lists to be executed. + + + + + type + + + Specifies the type of values in lists. + Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + GL_2_BYTES, + GL_3_BYTES, and + GL_4_BYTES are accepted. + + + + + lists + + + Specifies the address of an array of name offsets in the display list. + The pointer type is void because the offsets can be bytes, + shorts, + ints, + or floats, + depending on the value of type. + + + + + + Description + + glCallLists causes each display list in the list of names passed as lists + to be executed. + As a result, + the commands saved in each display list are executed in order, + just as if they were called without using a display list. + Names of display lists that have not been defined are ignored. + + + glCallLists provides an efficient means for executing more than one display list. + type allows lists with various name formats to be accepted. + The formats are as + follows: + + + + GL_BYTE + + + lists is treated as an array of signed bytes, + each in the range + + + -128 + + through 127. + + + + + GL_UNSIGNED_BYTE + + + lists is treated as an array of unsigned bytes, + each in the range 0 through 255. + + + + + GL_SHORT + + + lists is treated as an array of signed two-byte integers, + each in the range + + + -32768 + + through 32767. + + + + + GL_UNSIGNED_SHORT + + + lists is treated as an array of unsigned two-byte integers, + each in the range 0 through 65535. + + + + + GL_INT + + + lists is treated as an array of signed four-byte integers. + + + + + GL_UNSIGNED_INT + + + lists is treated as an array of unsigned four-byte integers. + + + + + GL_FLOAT + + + lists is treated as an array of four-byte floating-point values. + + + + + GL_2_BYTES + + + lists is treated as an array of unsigned bytes. + Each pair of bytes specifies a single display-list name. + The value of the pair is computed as 256 times the unsigned value + of the first byte plus the unsigned value of the second byte. + + + + + GL_3_BYTES + + + lists is treated as an array of unsigned bytes. + Each triplet of bytes specifies a single display-list name. + The value of the triplet is computed as 65536 times the unsigned value + of the first byte, + plus 256 times the unsigned value of the second byte, + plus the unsigned value of the third byte. + + + + + GL_4_BYTES + + + lists is treated as an array of unsigned bytes. + Each quadruplet of bytes specifies a single display-list name. + The value of the quadruplet is computed as 16777216 times the unsigned value + of the first byte, + plus 65536 times the unsigned value of the second byte, + plus 256 times the unsigned value of the third byte, + plus the unsigned value of the fourth byte. + + + + + + The list of display-list names is not null-terminated. + Rather, + n specifies how many names are to be taken from lists. + + + An additional level of indirection is made available with the + glListBase command, + which specifies an unsigned offset that is added to each display-list + name specified in lists before that display list is executed. + + + glCallLists can appear inside a display list. + To avoid the possibility of infinite recursion resulting from display lists + calling one another, + a limit is placed on the nesting level of display + lists during display-list execution. + This limit must be at least 64, and it depends on the implementation. + + + GL state is not saved and restored across a call to glCallLists. + Thus, + changes made to GL state during the execution of the display lists + remain after execution is completed. + Use glPushAttrib, + glPopAttrib, + glPushMatrix, + and glPopMatrix to preserve GL state across glCallLists calls. + + + Notes + + Display lists can be executed between a call to glBegin + and the corresponding call to glEnd, + as long as the display list includes only commands that are allowed + in this interval. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_ENUM is generated if type is not one of + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + GL_2_BYTES, + GL_3_BYTES, + GL_4_BYTES. + + + Associated Gets + + glGet with argument GL_LIST_BASE + + + glGet with argument GL_MAX_LIST_NESTING + + + glIsList + + + See Also + + glCallList, + glDeleteLists, + glGenLists, + glListBase, + glNewList, + glPushAttrib, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClear.xml b/upstream-man-pages/man2/glClear.xml new file mode 100644 index 0000000..dacb000 --- /dev/null +++ b/upstream-man-pages/man2/glClear.xml @@ -0,0 +1,167 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClear + 3G + + + glClear + clear buffers to preset values + + C Specification + + + void glClear + GLbitfield mask + + + + Parameters + + + mask + + + Bitwise OR of masks that indicate the buffers to be cleared. + The four masks are + GL_COLOR_BUFFER_BIT, + GL_DEPTH_BUFFER_BIT, + GL_ACCUM_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. + + + + + + Description + + glClear sets the bitplane area of the window to values previously selected + by glClearColor, glClearIndex, glClearDepth, + glClearStencil, and glClearAccum. + Multiple color buffers can be cleared simultaneously by selecting + more than one buffer at a time using glDrawBuffer. + + + The pixel ownership test, + the scissor test, + dithering, and the buffer writemasks affect the operation of glClear. + The scissor box bounds the cleared region. + Alpha function, + blend function, + logical operation, + stenciling, + texture mapping, + and depth-buffering are ignored by glClear. + + + glClear takes a single argument that is the bitwise OR of several + values indicating which buffer is to be cleared. + + + The values are as follows: + + + + GL_COLOR_BUFFER_BIT + + + Indicates the buffers currently enabled for color + writing. + + + + + GL_DEPTH_BUFFER_BIT + + + Indicates the depth buffer. + + + + + GL_ACCUM_BUFFER_BIT + + + Indicates the accumulation buffer. + + + + + GL_STENCIL_BUFFER_BIT + + + Indicates the stencil buffer. + + + + + + The value to which each buffer is cleared depends on the setting of the + clear value for that buffer. + + + Notes + + If a buffer is not present, + then a glClear directed at that buffer has no effect. + + + Errors + + GL_INVALID_VALUE is generated if any bit other than the four defined + bits is set in mask. + + + GL_INVALID_OPERATION is generated if glClear + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ACCUM_CLEAR_VALUE + + + glGet with argument GL_DEPTH_CLEAR_VALUE + + + glGet with argument GL_INDEX_CLEAR_VALUE + + + glGet with argument GL_COLOR_CLEAR_VALUE + + + glGet with argument GL_STENCIL_CLEAR_VALUE + + + See Also + + glClearAccum, + glClearColor, + glClearDepth, + glClearIndex, + glClearStencil, + glColorMask, + glDepthMask, + glDrawBuffer, + glScissor, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClearAccum.xml b/upstream-man-pages/man2/glClearAccum.xml new file mode 100644 index 0000000..1ec54c4 --- /dev/null +++ b/upstream-man-pages/man2/glClearAccum.xml @@ -0,0 +1,90 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearAccum + 3G + + + glClearAccum + specify clear values for the accumulation buffer + + C Specification + + + void glClearAccum + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + Parameters + + + red + green + blue + alpha + + + Specify the red, green, blue, and alpha values used when the + accumulation buffer is cleared. + The initial values are all 0. + + + + + + Description + + glClearAccum specifies the red, green, blue, and alpha values used by glClear + to clear the accumulation buffer. + + + Values specified by glClearAccum are clamped to the + range + + + + -1 + 1 + + . + + + Errors + + GL_INVALID_OPERATION is generated if glClearAccum + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ACCUM_CLEAR_VALUE + + + See Also + + glAccum, + glClear + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClearColor.xml b/upstream-man-pages/man2/glClearColor.xml new file mode 100644 index 0000000..bcfd72d --- /dev/null +++ b/upstream-man-pages/man2/glClearColor.xml @@ -0,0 +1,88 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearColor + 3G + + + glClearColor + specify clear values for the color buffers + + C Specification + + + void glClearColor + GLclampf red + GLclampf green + GLclampf blue + GLclampf alpha + + + + Parameters + + + red + green + blue + alpha + + + Specify the red, green, blue, and alpha values used when the + color buffers are cleared. + The initial values are all 0. + + + + + + Description + + glClearColor specifies the red, + green, + blue, + and alpha values used by glClear to clear the color buffers. + Values specified by glClearColor are clamped to the range + + + + 0 + 1 + + . + + + Errors + + GL_INVALID_OPERATION is generated if glClearColor + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_COLOR_CLEAR_VALUE + + + See Also + + glClear + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClearDepth.xml b/upstream-man-pages/man2/glClearDepth.xml new file mode 100644 index 0000000..43b9b3e --- /dev/null +++ b/upstream-man-pages/man2/glClearDepth.xml @@ -0,0 +1,78 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearDepth + 3G + + + glClearDepth + specify the clear value for the depth buffer + + C Specification + + + void glClearDepth + GLclampd depth + + + + Parameters + + + depth + + + Specifies the depth value used when the depth buffer is cleared. The + initial value is 1. + + + + + + Description + + glClearDepth specifies the depth value used by glClear to clear the depth buffer. + Values specified by glClearDepth are clamped to the range + + + + 0 + 1 + + . + + + Errors + + GL_INVALID_OPERATION is generated if glClearDepth + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_DEPTH_CLEAR_VALUE + + + See Also + + glClear + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClearIndex.xml b/upstream-man-pages/man2/glClearIndex.xml new file mode 100644 index 0000000..dda31a8 --- /dev/null +++ b/upstream-man-pages/man2/glClearIndex.xml @@ -0,0 +1,93 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearIndex + 3G + + + glClearIndex + specify the clear value for the color index buffers + + C Specification + + + void glClearIndex + GLfloat c + + + + + Parameters + + + c + + + Specifies the index used when the color index buffers are cleared. + The initial value is 0. + + + + + + Description + + glClearIndex specifies the index used by glClear + to clear the color index buffers. + c is not clamped. + Rather, + c is converted to a fixed-point value with unspecified precision + to the right of the binary point. + The integer part of this value is then masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in a color index stored in the frame buffer. + + + Errors + + GL_INVALID_OPERATION is generated if glClearIndex + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_INDEX_CLEAR_VALUE + + + glGet with argument GL_INDEX_BITS + + + See Also + + glClear + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClearStencil.xml b/upstream-man-pages/man2/glClearStencil.xml new file mode 100644 index 0000000..4388874 --- /dev/null +++ b/upstream-man-pages/man2/glClearStencil.xml @@ -0,0 +1,94 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearStencil + 3G + + + glClearStencil + specify the clear value for the stencil buffer + + C Specification + + + void glClearStencil + GLint s + + + + + Parameters + + + s + + + Specifies the index used when the stencil buffer is cleared. + The initial value is 0. + + + + + + Description + + glClearStencil specifies the index used by glClear to clear the stencil buffer. + s is masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in the stencil buffer. + + + Errors + + GL_INVALID_OPERATION is generated if glClearStencil + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_STENCIL_CLEAR_VALUE + + + glGet with argument GL_STENCIL_BITS + + + See Also + + glClear, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClientActiveTexture.xml b/upstream-man-pages/man2/glClientActiveTexture.xml new file mode 100644 index 0000000..494b634 --- /dev/null +++ b/upstream-man-pages/man2/glClientActiveTexture.xml @@ -0,0 +1,91 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClientActiveTexture + 3G + + + glClientActiveTexture + select active texture unit + + C Specification + + + void glClientActiveTexture + GLenum texture + + + + + Parameters + + + texture + + + Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + two. texture must be one of + GL_TEXTUREi, + where i ranges from 0 to the value of GL_MAX_TEXTURE_COORDS - 1, which is an + implementation-dependent value. The initial value is + GL_TEXTURE0. + + + + + + Description + + glClientActiveTexture selects the vertex array client state parameters to be modified by + glTexCoordPointer, and enabled or disabled with + glEnableClientState or glDisableClientState, respectively, + when called with a parameter of GL_TEXTURE_COORD_ARRAY. + + + Notes + + glClientActiveTexture is supported only if the GL version is 1.3 or greater, or + ARB_multitexture is included in the string returned by + glGetString when called with the argument GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where + i ranges from 0 to the value of GL_MAX_TEXTURE_COORDS - 1. + + + Associated Gets + + glGet with argument GL_CLIENT_ACTIVE_TEXTURE or GL_MAX_TEXTURE_COORDS + + + See Also + + glActiveTexture, + glDisableClientState, + glEnableClientState, + glMultiTexCoord, + glTexCoordPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glClipPlane.xml b/upstream-man-pages/man2/glClipPlane.xml new file mode 100644 index 0000000..b1dca57 --- /dev/null +++ b/upstream-man-pages/man2/glClipPlane.xml @@ -0,0 +1,134 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClipPlane + 3G + + + glClipPlane + specify a plane against which all geometry is clipped + + C Specification + + + void glClipPlane + GLenum plane + const GLdouble * equation + + + + + Parameters + + + plane + + + Specifies which clipping plane is being positioned. + Symbolic names of the form GL_CLIP_PLANEi, + where i is an integer between 0 and GL_MAX_CLIP_PLANES + + + -1 + , + are accepted. + + + + + equation + + + Specifies the address of an array of four double-precision floating-point values. + These values are interpreted as a plane equation. + + + + + + Description + + Geometry is always clipped against the boundaries of a six-plane frustum + in x, y, and z. + glClipPlane allows the specification of additional planes, + not necessarily perpendicular to the x, y, or z axis, + against which all geometry is clipped. + To determine the maximum number of additional clipping planes, call + glGetIntegerv with argument GL_MAX_CLIP_PLANES. All + implementations support at least six such clipping planes. + Because the resulting clipping region is the intersection + of the defined half-spaces, + it is always convex. + + + glClipPlane specifies a half-space using a four-component plane equation. + When glClipPlane is called, + equation is transformed by the inverse of the modelview matrix + and stored in the resulting eye coordinates. + Subsequent changes to the modelview matrix have no effect on the + stored plane-equation components. + If the dot product of the eye coordinates of a vertex with the + stored plane equation components is positive or zero, + the vertex is in with respect to that clipping plane. + Otherwise, it is out. + + + To enable and disable clipping planes, call + glEnable and glDisable with the argument + GL_CLIP_PLANEi, + where i is the plane number. + + + All clipping planes are initially defined as (0, 0, 0, 0) in eye coordinates + and are + disabled. + + + Notes + + It is always the case that GL_CLIP_PLANE + i + = GL_CLIP_PLANE0 + + i. + + + Errors + + GL_INVALID_ENUM is generated if plane is not an accepted value. + + + GL_INVALID_OPERATION is generated if glClipPlane + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetClipPlane + + + glIsEnabled with argument GL_CLIP_PLANEi + + + See Also + + glEnable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColor.xml b/upstream-man-pages/man2/glColor.xml new file mode 100644 index 0000000..449122c --- /dev/null +++ b/upstream-man-pages/man2/glColor.xml @@ -0,0 +1,383 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColor + 3G + + + glColor + set the current color + + C Specification + + + void glColor3b + GLbyte red + GLbyte green + GLbyte blue + + + + + void glColor3s + GLshort red + GLshort green + GLshort blue + + + + + void glColor3i + GLint red + GLint green + GLint blue + + + + + void glColor3f + GLfloat red + GLfloat green + GLfloat blue + + + + + void glColor3d + GLdouble red + GLdouble green + GLdouble blue + + + + + void glColor3ub + GLubyte red + GLubyte green + GLubyte blue + + + + + void glColor3us + GLushort red + GLushort green + GLushort blue + + + + + void glColor3ui + GLuint red + GLuint green + GLuint blue + + + + + void glColor4b + GLbyte red + GLbyte green + GLbyte blue + GLbyte alpha + + + + + void glColor4s + GLshort red + GLshort green + GLshort blue + GLshort alpha + + + + + void glColor4i + GLint red + GLint green + GLint blue + GLint alpha + + + + + void glColor4f + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + + void glColor4d + GLdouble red + GLdouble green + GLdouble blue + GLdouble alpha + + + + + void glColor4ub + GLubyte red + GLubyte green + GLubyte blue + GLubyte alpha + + + + + void glColor4us + GLushort red + GLushort green + GLushort blue + GLushort alpha + + + + + void glColor4ui + GLuint red + GLuint green + GLuint blue + GLuint alpha + + + + + Parameters + + + red + green + blue + + + Specify new red, green, and blue values for the current color. + + + + + alpha + + + Specifies a new alpha value for the current color. + Included only in the four-argument glColor4 commands. + + + + + + C Specification + + + void glColor3bv + const GLbyte * v + + + + + void glColor3sv + const GLshort * v + + + + + void glColor3iv + const GLint * v + + + + + void glColor3fv + const GLfloat * v + + + + + void glColor3dv + const GLdouble * v + + + + + void glColor3ubv + const GLubyte * v + + + + + void glColor3usv + const GLushort * v + + + + + void glColor3uiv + const GLuint * v + + + + + void glColor4bv + const GLbyte * v + + + + + void glColor4sv + const GLshort * v + + + + + void glColor4iv + const GLint * v + + + + + void glColor4fv + const GLfloat * v + + + + + void glColor4dv + const GLdouble * v + + + + + void glColor4ubv + const GLubyte * v + + + + + void glColor4usv + const GLushort * v + + + + + void glColor4uiv + const GLuint * v + + + + Parameters + + + v + + + Specifies a pointer to an array that contains red, green, blue, + and (sometimes) alpha values. + + + + + + Description + + The GL stores both a current single-valued color index + and a current four-valued RGBA color. + glColor sets a new four-valued RGBA color. + glColor has two major variants: + glColor3 and glColor4. + glColor3 variants specify new red, + green, + and blue values explicitly + and set the current alpha value to 1.0 (full intensity) implicitly. + glColor4 variants specify all four color components explicitly. + + + glColor3b, glColor4b, + glColor3s, glColor4s, glColor3i, and glColor4i take + three or four signed byte, short, or long integers as arguments. + When v is appended to the name, + the color commands can take a pointer to an array of such values. + + + Current color values are stored in floating-point format, + with unspecified mantissa and exponent sizes. + Unsigned integer color components, + when specified, + are linearly mapped to floating-point values such that the largest + representable value maps to 1.0 (full intensity), + and 0 maps to 0.0 (zero intensity). + Signed integer color components, + when specified, + are linearly mapped to floating-point values such that the most positive + representable value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + (Note that + this mapping does not convert 0 precisely to 0.0.) + Floating-point values are mapped directly. + + + Neither floating-point nor signed integer values are clamped + to the range + + + + 0 + 1 + + + before the current color is updated. + However, + color components are clamped to this range before they are interpolated + or written into a color buffer. + + + Notes + + The initial value for the current color is (1, 1, 1, 1). + + + The current color can be updated at any time. + In particular, + glColor can be called between a call to glBegin and the corresponding + call to glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_COLOR + + + glGet with argument GL_RGBA_MODE + + + See Also + + glColorPointer, + glIndex, + glSecondaryColor + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColorMask.xml b/upstream-man-pages/man2/glColorMask.xml new file mode 100644 index 0000000..7b0aff3 --- /dev/null +++ b/upstream-man-pages/man2/glColorMask.xml @@ -0,0 +1,99 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorMask + 3G + + + glColorMask + enable and disable writing of frame buffer color components + + C Specification + + + void glColorMask + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + Parameters + + + red + green + blue + alpha + + + Specify whether red, green, blue, and alpha can or cannot be written + into the frame buffer. + The initial values are all GL_TRUE, + indicating that the color components can be written. + + + + + + Description + + glColorMask specifies whether the individual color components in the frame buffer + can or cannot be written. + If red is GL_FALSE, + for example, + no change is made to the red component of any pixel in any of the + color buffers, + regardless of the drawing operation attempted. + + + Changes to individual bits of components cannot be controlled. + Rather, + changes are either enabled or disabled for entire color components. + + + Errors + + GL_INVALID_OPERATION is generated if glColorMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_COLOR_WRITEMASK + + + glGet with argument GL_RGBA_MODE + + + See Also + + glClear, + glColor, + glColorPointer, + glDepthMask, + glIndex, + glIndexPointer, + glIndexMask, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColorMaterial.xml b/upstream-man-pages/man2/glColorMaterial.xml new file mode 100644 index 0000000..495c030 --- /dev/null +++ b/upstream-man-pages/man2/glColorMaterial.xml @@ -0,0 +1,143 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorMaterial + 3G + + + glColorMaterial + cause a material color to track the current color + + C Specification + + + void glColorMaterial + GLenum face + GLenum mode + + + + Parameters + + + face + + + Specifies whether front, + back, + or both front and back material parameters should track the current color. + Accepted values are + GL_FRONT, + GL_BACK, + and GL_FRONT_AND_BACK. + The initial value is GL_FRONT_AND_BACK. + + + + + mode + + + Specifies which of several material parameters track the current color. + Accepted values are + GL_EMISSION, + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + and GL_AMBIENT_AND_DIFFUSE. + The initial value is GL_AMBIENT_AND_DIFFUSE. + + + + + + Description + + glColorMaterial specifies which material parameters track the current color. + When GL_COLOR_MATERIAL is enabled, + the material parameter or parameters specified by mode, + of the material or materials specified by face, + track the current color at all times. + + + To enable and disable GL_COLOR_MATERIAL, call + glEnable and glDisable with argument GL_COLOR_MATERIAL. + GL_COLOR_MATERIAL is initially disabled. + + + Notes + + glColorMaterial makes it possible to change a subset of material parameters for each + vertex using only the glColor command, + without calling glMaterial. + If only such a subset of parameters is to be specified for each + vertex, calling glColorMaterial is preferable to calling glMaterial. + + + Call glColorMaterial before enabling GL_COLOR_MATERIAL. + + + Calling glDrawElements, glDrawArrays, or glDrawRangeElements + may leave the current color indeterminate, if the color array is enabled. + If + glColorMaterial is enabled while the current color is indeterminate, the + lighting material state specified by face and mode is also indeterminate. + + + If the GL version is 1.1 or greater, and GL_COLOR_MATERIAL is + enabled, evaluated color values affect the results of the lighting + equation as if the current color were being modified, but no change is + made to the tracking lighting parameter of the current color. + + + Errors + + GL_INVALID_ENUM is generated if face or mode is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glColorMaterial is executed between + the execution of glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glIsEnabled with argument GL_COLOR_MATERIAL + + + glGet with argument GL_COLOR_MATERIAL_PARAMETER + + + glGet with argument GL_COLOR_MATERIAL_FACE + + + See Also + + glColor, + glColorPointer, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEnable, + glLight, + glLightModel, + glMaterial + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColorPointer.xml b/upstream-man-pages/man2/glColorPointer.xml new file mode 100644 index 0000000..c172a57 --- /dev/null +++ b/upstream-man-pages/man2/glColorPointer.xml @@ -0,0 +1,208 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorPointer + 3G + + + glColorPointer + define an array of colors + + C Specification + + + void glColorPointer + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + size + + + Specifies the number of components per color. Must be 3 or 4. + The initial value is 4. + + + + + type + + + Specifies the data type of each color component in the array. + Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + and + GL_DOUBLE + are accepted. + The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive colors. + If stride is 0, the colors are understood to be + tightly packed in the array. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first component of the first color element + in the array. The initial value is 0. + + + + + + Description + + glColorPointer specifies the location and data format of an array of color components + to use when rendering. + size specifies the number of components per color, and must be 3 or 4. + type specifies the data type of each color component, and stride + specifies the byte stride from one color to the next, allowing vertices and + attributes to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see glInterleavedArrays.) + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a color array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as color vertex array + client-side state (GL_COLOR_ARRAY_BUFFER_BINDING). + + + When a color array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the color array, call + glEnableClientState and glDisableClientState with the argument + GL_COLOR_ARRAY. If + enabled, the color array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. + + + Notes + + glColorPointer is available only if the GL version is 1.1 or greater. + + + The color array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glColorPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glColorPointer is typically implemented on the client side. + + + Color array parameters are client-side state and are therefore not saved + or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and glPopClientAttrib instead. + + + Errors + + GL_INVALID_VALUE is generated if size is not 3 or 4. + + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_COLOR_ARRAY + + + glGet with argument GL_COLOR_ARRAY_SIZE + + + glGet with argument GL_COLOR_ARRAY_TYPE + + + glGet with argument GL_COLOR_ARRAY_STRIDE + + + glGet with argument GL_COLOR_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_COLOR_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColor, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColorSubTable.xml b/upstream-man-pages/man2/glColorSubTable.xml new file mode 100644 index 0000000..9288239 --- /dev/null +++ b/upstream-man-pages/man2/glColorSubTable.xml @@ -0,0 +1,227 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorSubTable + 3G + + + glColorSubTable + respecify a portion of a color table + + C Specification + + + void glColorSubTable + GLenum target + GLsizei start + GLsizei count + GLenum format + GLenum type + const GLvoid * data + + + + Parameters + + + target + + + Must be one of + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + start + + + The starting index of the portion of the color table to be replaced. + + + + + count + + + The number of table entries to replace. + + + + + format + + + The format of the pixel data in data. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + The type of the pixel data in data. + The allowable values are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Pointer to a one-dimensional array of pixel data that is processed to + replace the specified region of the color table. + + + + + + Description + + glColorSubTable is used to respecify a contiguous portion of a color table previously + defined using glColorTable. The pixels referenced by data replace the + portion of the existing table from indices start to + + + + start + + + count + - + 1 + + , + inclusive. This region may not include any + entries outside the range of the color table as it was originally specified. + It is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a portion of a color table is + respecified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glColorSubTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if + + + + + start + + + count + + > + width + + . + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glColorSubTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetColorTable, + glGetColorTableParameter + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glColorTable, + glColorTableParameter, + glCopyColorTable, + glCopyColorSubTable, + glGetColorTable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColorTable.xml b/upstream-man-pages/man2/glColorTable.xml new file mode 100644 index 0000000..266fb17 --- /dev/null +++ b/upstream-man-pages/man2/glColorTable.xml @@ -0,0 +1,778 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorTable + 3G + + + glColorTable + define a color lookup table + + C Specification + + + void glColorTable + GLenum target + GLenum internalformat + GLsizei width + GLenum format + GLenum type + const GLvoid * data + + + + Parameters + + + target + + + Must be one of + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_PROXY_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, + or + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + internalformat + + + The internal format of the color table. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, and + GL_RGBA16. + + + + + width + + + The number of entries in the color lookup table specified by data. + + + + + format + + + The format of the pixel data in data. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + The type of the pixel data in data. + The allowable values are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Pointer to a one-dimensional array of pixel data that is processed to + build the color table. + + + + + + Description + + glColorTable may be used in two ways: + to test the actual size and color resolution of a lookup table + given a particular set of parameters, + or to load the contents of a color lookup + table. + Use the targets GL_PROXY_* for the first case + and the other targets for the second case. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a color table is + specified, data is treated as a byte offset into the buffer object's data store. + + + If target is GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or + GL_POST_COLOR_MATRIX_COLOR_TABLE, + glColorTable builds a color lookup table from an array of pixels. + The pixel array specified by width, format, type, and data + is extracted from memory and + processed just as if glDrawPixels were called, but processing + stops after the final expansion to RGBA is completed. + + + The four scale parameters and the four bias parameters that are defined + for the table are then used to scale and bias the R, G, B, and A components + of each pixel. + (Use glColorTableParameter to set these scale and bias + parameters.) + + + Next, the R, G, B, and A values are clamped to the range + + + + 0 + 1 + + . + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_ALPHA + + + + + + + + + A + + + + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + Finally, the red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in the color table. + They form a one-dimensional table with indices in the range + + + + 0 + + width + - + 1 + + + . + + + If target is GL_PROXY_*, + glColorTable recomputes and stores the values of the proxy color table's state + variables + GL_COLOR_TABLE_FORMAT, + GL_COLOR_TABLE_WIDTH, + GL_COLOR_TABLE_RED_SIZE, + GL_COLOR_TABLE_GREEN_SIZE, + GL_COLOR_TABLE_BLUE_SIZE, + GL_COLOR_TABLE_ALPHA_SIZE, + GL_COLOR_TABLE_LUMINANCE_SIZE, and + GL_COLOR_TABLE_INTENSITY_SIZE. + There is no effect on the image or state of any actual color table. + If the specified color table is too large to be supported, then all the + proxy state variables listed above are set to zero. + Otherwise, the color table could be supported by glColorTable + using the corresponding non-proxy target, + and the proxy state variables are set as if that target were being defined. + + + The proxy state variables can be retrieved by calling + glGetColorTableParameter with a target of + GL_PROXY_*. + This allows the application to decide if a particular glColorTable + command would succeed, and to determine what the resulting color table + attributes would be. + + + If a color table is enabled, and its width is non-zero, then its + contents are used to replace a subset of the components of each RGBA + pixel group, based on the internal format of the table. + + + Each pixel group has color components (R, G, B, A) + that are in the range + + + + 0.0 + 1.0 + + . + The color components are rescaled to + the size of the color lookup table to form an index. + Then a subset of the components based on the internal format of the table are + replaced by the table entry selected by that index. + If the color components and contents of the table are represented as follows: + + + + + + + + + + + Representation + + + Meaning + + + + + + + r + + + Table index computed from R + + + + + g + + + Table index computed from G + + + + + b + + + Table index computed from B + + + + + a + + + Table index computed from A + + + + + L[i] + + + Luminance value at table index i + + + + + I[i] + + + Intensity value at table index i + + + + + R[i] + + + Red value at table index i + + + + + G[i] + + + Green value at table index i + + + + + B[i] + + + Blue value at table index i + + + + + A[i] + + + Alpha value at table index i + + + + + + + then the result of color table lookup is as follows: + + + + + + + + + + + + + + + + Resulting Texture Components + + + + + Table Internal Format + + + R + + + G + + + B + + + A + + + + + + + GL_ALPHA + + + R + + + G + + + B + + + A[a] + + + + + GL_LUMINANCE + + + L[r] + + + L[g] + + + L[b] + + + At + + + + + GL_LUMINANCE_ALPHA + + + L[r] + + + L[g] + + + L[b] + + + A[a] + + + + + GL_INTENSITY + + + I[r] + + + I[g] + + + I[b] + + + I[a] + + + + + GL_RGB + + + R[r] + + + G[g] + + + B[b] + + + A + + + + + GL_RGBA + + + R[r] + + + G[g] + + + B[b] + + + A[a] + + + + + + + When GL_COLOR_TABLE is enabled, the colors resulting from + the pixel map operation (if it is enabled) are mapped + by the color lookup table before being passed to the convolution + operation. The colors resulting from the convolution operation + are modified by the post convolution color lookup table when + GL_POST_CONVOLUTION_COLOR_TABLE + is enabled. These modified colors are then sent to the color matrix operation. + Finally, if GL_POST_COLOR_MATRIX_COLOR_TABLE + is enabled, the colors resulting from the color matrix operation + are mapped by the post color matrix color lookup table before being + used by the histogram operation. + + + + + Notes + + glColorTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + If target is set to GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or GL_POST_COLOR_MATRIX_COLOR_TABLE, + then width must be a power of two or a GL_INVALID_VALUE + error is generated. + + + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if width is less than zero. + + + GL_TABLE_TOO_LARGE is generated if the requested color table + is too large to be supported by the implementation, and target is + not a GL_PROXY_* target. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glColorTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetColorTableParameter + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glColorSubTable, + glColorTableParameter, + glCopyColorTable, + glCopyColorSubTable, + glGetColorTable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glColorTableParameter.xml b/upstream-man-pages/man2/glColorTableParameter.xml new file mode 100644 index 0000000..4a60ab8 --- /dev/null +++ b/upstream-man-pages/man2/glColorTableParameter.xml @@ -0,0 +1,136 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorTableParameter + 3G + + + glColorTableParameter + set color lookup table parameters + + C Specification + + + void glColorTableParameterfv + GLenum target + GLenum pname + const GLfloat * params + + + + + void glColorTableParameteriv + GLenum target + GLenum pname + const GLint * params + + + + + Parameters + + + target + + + The target color table. + Must be + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + pname + + + The symbolic name of a texture color lookup table parameter. + Must be one of + GL_COLOR_TABLE_SCALE or + GL_COLOR_TABLE_BIAS. + + + + + params + + + A pointer to an array where the values of the parameters are stored. + + + + + + Description + + glColorTableParameter is used to specify the scale factors and bias terms applied to + color components when they are loaded into a color table. target + indicates which color table the scale and bias terms apply to; it + must be set to + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. + + + pname must be GL_COLOR_TABLE_SCALE to set the + scale factors. + In this case, params points to an array of four values, which are + the scale factors for red, green, blue, and alpha, in that order. + + + pname must be GL_COLOR_TABLE_BIAS to set the + bias terms. In this case, + params points to an array of four values, which are the bias + terms for red, green, blue, and alpha, in that order. + + + The color tables themselves are specified by + calling glColorTable. + + + Notes + + glColorTableParameter is available only if ARB_imaging is returned from calling + glGetString with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not + an acceptable value. + + + GL_INVALID_OPERATION is generated if glColorTableParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetColorTableParameter + + + See Also + + glColorTable, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCompileShader.xml b/upstream-man-pages/man2/glCompileShader.xml new file mode 100644 index 0000000..871a4f4 --- /dev/null +++ b/upstream-man-pages/man2/glCompileShader.xml @@ -0,0 +1,94 @@ + + + + + glCompileShader + 3G + + + glCompileShader + Compiles a shader object + + C Specification + + + void glCompileShader + GLuint shader + + + + Parameters + + + shader + + Specifies the shader object to be + compiled. + + + + + Description + glCompileShader compiles the source + code strings that have been stored in the shader object + specified by shader. + + The compilation status will be stored as part of the + shader object's state. This value will be set to + GL_TRUE if the shader was compiled without + errors and is ready for use, and GL_FALSE + otherwise. It can be queried by calling + glGetShader + with arguments shader and + GL_COMPILE_STATUS. + + Compilation of a shader can fail for a number of reasons + as specified by the OpenGL Shading Language Specification. + Whether or not the compilation was successful, information about + the compilation can be obtained from the shader object's + information log by calling + glGetShaderInfoLog. + + Notes + glCompileShader + is available only if the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + glCompileShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetShaderInfoLog + with argument shader + + glGetShader + with arguments shader and + GL_COMPILE_STATUS + glIsShader + + See Also + glCreateShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glCompressedTexImage1D.xml b/upstream-man-pages/man2/glCompressedTexImage1D.xml new file mode 100644 index 0000000..b1b5ff8 --- /dev/null +++ b/upstream-man-pages/man2/glCompressedTexImage1D.xml @@ -0,0 +1,239 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage1D + 3G + + + glCompressedTexImage1D + specify a one-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage1D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. + + + + + border + + + Specifies the width of the border. Must be either 0 or 1. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. To enable and disable one-dimensional texturing, call glEnable and glDisable with argument GL_TEXTURE_1D. + + + glCompressedTexImage1D loads a previously defined, and retrieved, compressed one-dimensional texture image if target is GL_TEXTURE_1D (see glTexImage1D). + + + If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + + + internalformat must be extension-specified compressed-texture format. When a texture is loaded with glTexImage1D using a generic compressed texture format (e.g., GL_COMPRESSED_RGB) the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glCompressedTexImage1D is available only if the GL version is 1.3 or greater. + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glCompressedTexImage1D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glIsEnabled with argument GL_TEXTURE_1D + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCompressedTexImage2D.xml b/upstream-man-pages/man2/glCompressedTexImage2D.xml new file mode 100644 index 0000000..28b7556 --- /dev/null +++ b/upstream-man-pages/man2/glCompressedTexImage2D.xml @@ -0,0 +1,295 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage2D + 3G + + + glCompressedTexImage2D + specify a two-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage2D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support 2D texture images that are at least 64 texels + wide and cube-mapped texture images that are at least 16 texels wide. + + + + + height + + + Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + Must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support 2D texture images that are at least 64 texels + high and cube-mapped texture images that are at least 16 texels high. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + two-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_2D. To enable and disable texturing using + cube-mapped textures, call glEnable and glDisable with argument + GL_TEXTURE_CUBE_MAP. + + + glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional + texture image if target is GL_TEXTURE_2D (see glTexImage2D). + + + If target is GL_PROXY_TEXTURE_2D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. + + + internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage2D, query the compressed texture image's + size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glCompressedTexImage2D is available only if the GL version is 1.3 or greater. + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glCompressedTexImage2D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glIsEnabled with argument + GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCompressedTexImage3D.xml b/upstream-man-pages/man2/glCompressedTexImage3D.xml new file mode 100644 index 0000000..f1f4601 --- /dev/null +++ b/upstream-man-pages/man2/glCompressedTexImage3D.xml @@ -0,0 +1,311 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage3D + 3G + + + glCompressedTexImage3D + specify a three-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage3D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D or GL_PROXY_TEXTURE_3D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + wide. + + + + + height + + + Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + high. + + + + + depth + + + Specifies the depth of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + deep. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + three-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_3D. + + + glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional + texture image if target is GL_TEXTURE_3D (see glTexImage3D). + + + If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. + + + internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage3D, query the compressed texture image's + size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glCompressedTexImage3D is available only if the GL version is 1.3 or greater. + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glCompressedTexImage3D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Undefined results, including abnormal program termination, are generated if data is not encoded in a manner consistent with the extension specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glIsEnabled with argument GL_TEXTURE_3D + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCompressedTexSubImage1D.xml b/upstream-man-pages/man2/glCompressedTexSubImage1D.xml new file mode 100644 index 0000000..d04e7fb --- /dev/null +++ b/upstream-man-pages/man2/glCompressedTexSubImage1D.xml @@ -0,0 +1,243 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage1D + 3G + + + glCompressedTexSubImage1D + specify a one-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + one-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_1D. + + + glCompressedTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + format must be an extension-specified + compressed-texture format. The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage1D), and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glCompressedTexSubImage1D is available only if the GL version is 1.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if format is one of these generic compressed internal formats: + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SLUMINANCE, + GL_COMPRESSED_SLUMINANCE_ALPHA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGBA, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glCompressedTexSubImage1D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glIsEnabled with argument GL_TEXTURE_1D + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCompressedTexSubImage2D.xml b/upstream-man-pages/man2/glCompressedTexSubImage2D.xml new file mode 100644 index 0000000..c3708e5 --- /dev/null +++ b/upstream-man-pages/man2/glCompressedTexSubImage2D.xml @@ -0,0 +1,291 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage2D + 3G + + + glCompressedTexSubImage2D + specify a two-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + two-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_2D. To enable and disable texturing using + cube-mapped texture, call glEnable and glDisable with argument + GL_TEXTURE_CUBE_MAP. + + + glCompressedTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + format must be an extension-specified + compressed-texture format. The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage2D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glCompressedTexSubImage2D is available only if the GL version is 1.3 or greater. + + + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. + + + Errors + + GL_INVALID_ENUM is generated if format is one of these generic compressed internal formats: + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SLUMINANCE, + GL_COMPRESSED_SLUMINANCE_ALPHA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGBA, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glCompressedTexSubImage2D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glIsEnabled with argument GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCompressedTexSubImage3D.xml b/upstream-man-pages/man2/glCompressedTexSubImage3D.xml new file mode 100644 index 0000000..6018b47 --- /dev/null +++ b/upstream-man-pages/man2/glCompressedTexSubImage3D.xml @@ -0,0 +1,293 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage3D + 3G + + + glCompressedTexSubImage3D + specify a three-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + depth + + + Specifies the depth of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + three-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_3D. + + + glCompressedTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + and the z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. This region may not include + any texels outside the range of the texture array as it was originally + specified. It is not an error to specify a subtexture with width of 0, + but such a specification has no effect. + + + format must be an extension-specified + compressed-texture format. The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage3D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glCompressedTexSubImage3D is available only if the GL version is 1.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if format is one of these generic compressed internal formats: + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SLUMINANCE, + GL_COMPRESSED_SLUMINANCE_ALPHA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGBA, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glCompressedTexSubImage3D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glIsEnabled with argument GL_TEXTURE_3D + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glConvolutionFilter1D.xml b/upstream-man-pages/man2/glConvolutionFilter1D.xml new file mode 100644 index 0000000..68717d1 --- /dev/null +++ b/upstream-man-pages/man2/glConvolutionFilter1D.xml @@ -0,0 +1,459 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glConvolutionFilter1D + 3G + + + glConvolutionFilter1D + define a one-dimensional convolution filter + + C Specification + + + void glConvolutionFilter1D + GLenum target + GLenum internalformat + GLsizei width + GLenum format + GLenum type + const GLvoid * data + + + + Parameters + + + target + + + Must be GL_CONVOLUTION_1D. + + + + + internalformat + + + The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + width + + + The width of the pixel array referenced by data. + + + + + format + + + The format of the pixel data in data. + The allowable values are + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_INTENSITY, + GL_RGB, and + GL_RGBA. + + + + + type + + + The type of the pixel data in data. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + data + + + Pointer to a one-dimensional array of pixel data that is processed to + build the convolution filter kernel. + + + + + + Description + + glConvolutionFilter1D builds a one-dimensional convolution filter kernel from an array of + pixels. + + + The pixel array specified by width, format, type, and data + is extracted from memory and + processed just as if glDrawPixels were called, but processing + stops after the final expansion to RGBA is completed. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a convolution filter is + specified, data is treated as a byte offset into the buffer object's data store. + + + The R, G, B, and A components of each pixel are next scaled by the four + 1D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 1D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_1D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. + + + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_ALPHA + + + + + + + + + A + + + + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + They form a one-dimensional filter kernel image indexed with coordinate + i such that i starts at 0 and increases from left to right. + Kernel location i is derived from the ith pixel, counting from 0. + + + Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. + + + Notes + + glConvolutionFilter1D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_1D. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_1D and name + GL_MAX_CONVOLUTION_WIDTH. + + + GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and type is not GL_RGB. + + + GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and type is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glConvolutionFilter1D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter, glGetConvolutionFilter + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glConvolutionFilter2D, + glSeparableFilter2D, + glConvolutionParameter, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glConvolutionFilter2D.xml b/upstream-man-pages/man2/glConvolutionFilter2D.xml new file mode 100644 index 0000000..c773905 --- /dev/null +++ b/upstream-man-pages/man2/glConvolutionFilter2D.xml @@ -0,0 +1,478 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glConvolutionFilter2D + 3G + + + glConvolutionFilter2D + define a two-dimensional convolution filter + + C Specification + + + void glConvolutionFilter2D + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + GLenum format + GLenum type + const GLvoid * data + + + + Parameters + + + target + + + Must be GL_CONVOLUTION_2D. + + + + + internalformat + + + The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + width + + + The width of the pixel array referenced by data. + + + + + height + + + The height of the pixel array referenced by data. + + + + + format + + + The format of the pixel data in data. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + The type of the pixel data in data. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + data + + + Pointer to a two-dimensional array of pixel data that is processed to + build the convolution filter kernel. + + + + + + Description + + glConvolutionFilter2D builds a two-dimensional convolution filter kernel from an array of + pixels. + + + The pixel array specified by width, height, format, type, and + data is extracted from memory and processed just as if + glDrawPixels were called, but processing stops after the final + expansion to RGBA is completed. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a convolution filter is + specified, data is treated as a byte offset into the buffer object's data store. + + + The R, G, B, and A components of each pixel are next scaled by the four + 2D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 2D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_2D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. + + + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_ALPHA + + + + + + + + + A + + + + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + They form a two-dimensional filter kernel image indexed with coordinates + i and j such that i starts at zero and increases from left + to right, and j starts at zero and increases from bottom to top. + Kernel location i,j is derived from the Nth pixel, + where N is i+j*width. + + + Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. + + + Notes + + glConvolutionFilter2D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_2D. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_WIDTH. + + + GL_INVALID_VALUE is generated if height is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_HEIGHT. + + + GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glConvolutionFilter2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter, glGetConvolutionFilter + + + See Also + + glConvolutionFilter1D, + glSeparableFilter2D, + glConvolutionParameter, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glConvolutionParameter.xml b/upstream-man-pages/man2/glConvolutionParameter.xml new file mode 100644 index 0000000..a7632fa --- /dev/null +++ b/upstream-man-pages/man2/glConvolutionParameter.xml @@ -0,0 +1,311 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glConvolutionParameter + 3G + + + glConvolutionParameter + set convolution parameters + + C Specification + + + void glConvolutionParameterf + GLenum target + GLenum pname + GLfloat params + + + + + void glConvolutionParameteri + GLenum target + GLenum pname + GLint params + + + + + + + Parameters + + + target + + + The target for the convolution parameter. + Must be one of + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D. + + + + + pname + + + The parameter to be set. + Must be + GL_CONVOLUTION_BORDER_MODE. + + + + + params + + + The parameter value. + Must be one of + GL_REDUCE, GL_CONSTANT_BORDER, GL_REPLICATE_BORDER. + + + + + + + + C Specification + + + void glConvolutionParameterfv + GLenum target + GLenum pname + const GLfloat * params + + + + + void glConvolutionParameteriv + GLenum target + GLenum pname + const GLint * params + + + + + + Parameters + + + target + + + The target for the convolution parameter. + Must be one of + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D. + + + + + pname + + + The parameter to be set. + Must be one of + GL_CONVOLUTION_BORDER_MODE, + GL_CONVOLUTION_BORDER_COLOR, + GL_CONVOLUTION_FILTER_SCALE, or + GL_CONVOLUTION_FILTER_BIAS. + + + + + params + + + The parameter value. + If pnamev is GL_CONVOLUTION_BORDER_MODE, paramsv must be one of + GL_REDUCE, GL_CONSTANT_BORDER, or GL_REPLICATE_BORDER. + Otherwise, must be a vector of four values (for red, green, blue, and alpha, + respectively) to be used for + scaling (when pnamev is GL_CONVOLUTION_FILTER_SCALE), or + biasing (when pnamev is GL_CONVOLUTION_FILTER_BIAS) a convolution + filter kernel or setting the constant border color (when pnamev is + GL_CONVOLUTION_BORDER_COLOR. + + + + + + Description + + glConvolutionParameter sets the value of a convolution parameter. + + + target selects the convolution filter to be affected: + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D + for the 1D, 2D, or separable 2D filter, respectively. + + + pname selects the parameter to be changed. + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS + affect the definition of the convolution filter kernel; see + glConvolutionFilter1D, glConvolutionFilter2D, and + glSeparableFilter2D for details. + In these cases, paramsv is an array of four values to be applied to + red, green, blue, and alpha values, respectively. The initial value for + GL_CONVOLUTION_FILTER_SCALE is (1, 1, 1, 1), and the initial value + for GL_CONVOLUTION_FILTER_BIAS is (0, 0, 0, 0). + + + A pname value of GL_CONVOLUTION_BORDER_MODE controls the + convolution border mode. The accepted modes are: + + + + GL_REDUCE + + + The image resulting from convolution is + smaller than the source image. + If the filter width is + Wf + and height is + Hf, + and the source image width is + Ws + and height is + Hs, + then the convolved image width will be + + + + Ws + - + Wf + + + 1 + + + and height + will be + + + + Hs + - + Hf + + + 1 + + . + (If this reduction would generate an image with zero or negative width + and/or height, the output is simply null, with no error generated.) + The coordinates of the image resulting from convolution are zero + through + + + + Ws + - + Wf + + + in width and zero through + + + + Hs + - + Hf + + + in + height. + + + + + GL_CONSTANT_BORDER + + + The image resulting from convolution is the same size as the source image, and + processed as if the source image were surrounded by pixels with their color + specified by the GL_CONVOLUTION_BORDER_COLOR. + + + + + GL_REPLICATE_BORDER + + + The image resulting from convolution is the same size as the source image, and + processed as if the outermost pixel on the border of the source image were + replicated. + + + + + + Notes + + glConvolutionParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + In cases where errors can result from the specification of invalid + image dimensions, it is the dimensions after convolution that are + tested, not the dimensions of the source image. + For example, glTexImage1D requires power-of-two image size. + When GL_REDUCE border mode is in effect, + the source image must be larger than the final power-of-two size + by one less than the size of the 1D filter kernel. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if pname is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if pname is + GL_CONVOLUTION_BORDER_MODE and params is not one of + GL_REDUCE, GL_CONSTANT_BORDER, or GL_REPLICATE_BORDER. + + + GL_INVALID_OPERATION is generated if glConvolutionParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter + + + See Also + + glConvolutionFilter1D, + glConvolutionFilter2D, + glSeparableFilter2D, + glGetConvolutionParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyColorSubTable.xml b/upstream-man-pages/man2/glCopyColorSubTable.xml new file mode 100644 index 0000000..50c6c2e --- /dev/null +++ b/upstream-man-pages/man2/glCopyColorSubTable.xml @@ -0,0 +1,152 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyColorSubTable + 3G + + + glCopyColorSubTable + respecify a portion of a color table + + C Specification + + + void glCopyColorSubTable + GLenum target + GLsizei start + GLint x + GLint y + GLsizei width + + + + Parameters + + + target + + + Must be one of + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + start + + + The starting index of the portion of the color table to be replaced. + + + + + x + y + + + The window coordinates of the left corner of the row of pixels to be + copied. + + + + + width + + + The number of table entries to replace. + + + + + + Description + + glCopyColorSubTable is used to respecify a contiguous portion of a color table previously + defined using glColorTable. The pixels copied from the framebuffer + replace the portion of the existing table from indices start to + + + + start + + + x + - + 1 + + , + inclusive. This region may not include any + entries outside the range of the color table, as was originally specified. + It is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + Notes + + glCopyColorSubTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_VALUE is generated if target is not a previously defined + color table. + + + GL_INVALID_VALUE is generated if target is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if + + + + + start + + + x + + > + width + + . + + + GL_INVALID_OPERATION is generated if glCopyColorSubTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetColorTable, + glGetColorTableParameter + + + See Also + + glColorSubTable, + glColorTableParameter, + glCopyColorTable, + glCopyColorSubTable, + glGetColorTable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyColorTable.xml b/upstream-man-pages/man2/glCopyColorTable.xml new file mode 100644 index 0000000..e480832 --- /dev/null +++ b/upstream-man-pages/man2/glCopyColorTable.xml @@ -0,0 +1,385 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyColorTable + 3G + + + glCopyColorTable + copy pixels into a color table + + C Specification + + + void glCopyColorTable + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + + + + + Parameters + + + target + + + The color table target. Must be + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or GL_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + internalformat + + + The internal storage format of the texture image. + Must be one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + x + + + The x coordinate of the lower-left corner of the pixel rectangle + to be transferred to the color table. + + + + + y + + + The y coordinate of the lower-left corner of the pixel rectangle + to be transferred to the color table. + + + + + width + + + The width of the pixel rectangle. + + + + + + Description + + glCopyColorTable loads a color table with pixels from the current + GL_READ_BUFFER (rather than from main memory, as is the case for + glColorTable). + + + The screen-aligned pixel rectangle with lower-left corner at (x,\ y) + having width width and height 1 + is loaded into the color table. If any pixels within + this region are outside the window that is associated with the GL + context, the values obtained for those pixels are undefined. + + + The pixels in the rectangle are processed just as if + glReadPixels were called, with internalformat set to RGBA, + but processing stops after the final conversion to RGBA. + + + The four scale parameters and the four bias parameters that are defined + for the table are then used to scale and bias the R, G, B, and A components + of each pixel. The scale and bias parameters are set by calling + glColorTableParameter. + + + Next, the R, G, B, and A values are clamped to the range + + + + 0 + 1 + + . + Each pixel is then converted to the internal format specified by + internalformat. This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_ALPHA + + + + + + + + + A + + + + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + Finally, the red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in the color table. + They form a one-dimensional table with indices in the range + + + + 0 + + width + - + 1 + + + . + + + + + Notes + + glCopyColorTable is available only if ARB_imaging is returned from calling + glGetString with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated when target is not one of the + allowable values. + + + GL_INVALID_VALUE is generated if width is less than zero. + + + GL_INVALID_VALUE is generated if internalformat is not one of the + allowable values. + + + GL_TABLE_TOO_LARGE is generated if the requested color table + is too large to be supported by the implementation. + + + GL_INVALID_OPERATION is generated if glCopyColorTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetColorTable, + glGetColorTableParameter + + + See Also + + glColorTable, + glColorTableParameter, + glReadPixels + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyConvolutionFilter1D.xml b/upstream-man-pages/man2/glCopyConvolutionFilter1D.xml new file mode 100644 index 0000000..3aeb6c7 --- /dev/null +++ b/upstream-man-pages/man2/glCopyConvolutionFilter1D.xml @@ -0,0 +1,369 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyConvolutionFilter1D + 3G + + + glCopyConvolutionFilter1D + copy pixels into a one-dimensional convolution filter + + C Specification + + + void glCopyConvolutionFilter1D + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + + + + Parameters + + + target + + + Must be GL_CONVOLUTION_1D. + + + + + internalformat + + + The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + x + y + + + The window space coordinates of the lower-left coordinate of the + pixel array to copy. + + + + + width + + + The width of the pixel array to copy. + + + + + + Description + + glCopyConvolutionFilter1D defines a one-dimensional convolution filter kernel with pixels + from the current GL_READ_BUFFER (rather than from main memory, + as is the case for glConvolutionFilter1D). + + + The screen-aligned pixel rectangle with lower-left corner at (x,\ y), + width width and height 1 is used to define + the convolution filter. If any pixels within this region are + outside the window that is associated with the GL context, the + values obtained for those pixels are undefined. + + + The pixels in the rectangle are processed exactly as if glReadPixels + had been called with format + set to RGBA, but the process stops just before final conversion. + The R, G, B, and A components of each pixel are next scaled by the four + 1D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 1D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_1D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. + + + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_ALPHA + + + + + + + + + A + + + + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + + + Pixel ordering is such that lower x screen coordinates correspond to + lower i filter image coordinates. + + + Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. + + + Notes + + glCopyConvolutionFilter1D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_1D. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_1D and name + GL_MAX_CONVOLUTION_WIDTH. + + + GL_INVALID_OPERATION is generated if glCopyConvolutionFilter1D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter, glGetConvolutionFilter + + + See Also + + glConvolutionFilter1D, + glConvolutionParameter, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyConvolutionFilter2D.xml b/upstream-man-pages/man2/glCopyConvolutionFilter2D.xml new file mode 100644 index 0000000..0c540bb --- /dev/null +++ b/upstream-man-pages/man2/glCopyConvolutionFilter2D.xml @@ -0,0 +1,387 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyConvolutionFilter2D + 3G + + + glCopyConvolutionFilter2D + copy pixels into a two-dimensional convolution filter + + C Specification + + + void glCopyConvolutionFilter2D + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + + + + Parameters + + + target + + + Must be GL_CONVOLUTION_2D. + + + + + internalformat + + + The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + x + y + + + The window space coordinates of the lower-left coordinate of the + pixel array to copy. + + + + + width + + + The width of the pixel array to copy. + + + + + height + + + The height of the pixel array to copy. + + + + + + Description + + glCopyConvolutionFilter2D defines a two-dimensional convolution filter kernel with pixels + from the current GL_READ_BUFFER (rather than from main memory, + as is the case for glConvolutionFilter2D). + + + The screen-aligned pixel rectangle with lower-left corner at (x,\ y), + width width and height height + is used to define the convolution filter. If any pixels within this + region are + outside the window that is associated with the GL context, the + values obtained for those pixels are undefined. + + + The pixels in the rectangle are processed + exactly as if glReadPixels had been called with format + set to RGBA, but the process stops just before final conversion. + The R, G, B, and A components of each pixel are next scaled by the four + 2D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 2D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_2D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. + + + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_ALPHA + + + + + + + + + A + + + + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + + + Pixel ordering is such that lower x screen coordinates correspond to + lower i filter image coordinates, and lower y screen coordinates + correspond to lower j filter image coordinates. + + + Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. + + + Notes + + glCopyConvolutionFilter2D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_2D. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_WIDTH. + + + GL_INVALID_VALUE is generated if height is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_HEIGHT. + + + GL_INVALID_OPERATION is generated if glCopyConvolutionFilter2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter, glGetConvolutionFilter + + + See Also + + glConvolutionFilter2D, + glConvolutionParameter, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyPixels.xml b/upstream-man-pages/man2/glCopyPixels.xml new file mode 100644 index 0000000..63f4ccf --- /dev/null +++ b/upstream-man-pages/man2/glCopyPixels.xml @@ -0,0 +1,609 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyPixels + 3G + + + glCopyPixels + copy pixels in the frame buffer + + C Specification + + + void glCopyPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum type + + + + + Parameters + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + height + + + Specify the dimensions of the rectangular region of pixels to be copied. + Both must be nonnegative. + + + + + type + + + Specifies whether color values, + depth values, + or stencil values are to be copied. + Symbolic constants + GL_COLOR, + GL_DEPTH, + and GL_STENCIL are accepted. + + + + + + Description + + glCopyPixels copies a screen-aligned rectangle of pixels + from the specified frame buffer location to a region relative to the + current raster position. + Its operation is well defined only if the entire pixel source region + is within the exposed portion of the window. + Results of copies from outside the window, + or from regions of the window that are not exposed, + are hardware dependent and undefined. + + + x and y specify the window coordinates of + the lower left corner of the rectangular region to be copied. + width and height specify the dimensions of the + rectangular region to be copied. + Both width and height must not be negative. + + + Several parameters control the processing of the pixel data + while it is being copied. + These parameters are set with three commands: + glPixelTransfer, + glPixelMap, and + glPixelZoom. + This reference page describes the effects on glCopyPixels of most, + but not all, of the parameters specified by these three commands. + + + glCopyPixels copies values from each pixel with the lower left-hand corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are copied in row order from the lowest to the highest row, + left to right in each row. + + + type specifies whether color, depth, or stencil data is to be copied. + The details of the transfer for each data type are as follows: + + + + GL_COLOR + + + Indices or RGBA colors are read from the buffer currently specified as the + read source buffer (see glReadBuffer). + If the GL is in color index mode, + each index that is read from this buffer is converted + to a fixed-point format with an unspecified + number of bits to the right of the binary point. + Each index is then shifted left by GL_INDEX_SHIFT bits, + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + If GL_MAP_COLOR is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_I_TO_I. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in a color index buffer. + + + If the GL is in RGBA mode, + the red, green, blue, and alpha components of each pixel that is read + are converted to an internal floating-point format with unspecified + precision. + The conversion maps the largest representable component value to 1.0, + and component value 0 to 0.0. + The resulting floating-point color values are then multiplied + by GL_c_SCALE and added to GL_c_BIAS, + where c is RED, GREEN, BLUE, and ALPHA + for the respective color components. + The results are clamped to the range [0,1]. + If GL_MAP_COLOR is true, + each color component is scaled by the size of lookup table + GL_PIXEL_MAP_c_TO_c, + then replaced by the value that it references in that table. + c is R, G, B, or A. + + + If the ARB_imaging extension is supported, the color values may + be + additionally processed by color-table lookups, color-matrix + transformations, and convolution filters. + + + The GL then converts the resulting indices or RGBA colors to fragments + by attaching the current raster position z coordinate and + texture coordinates to each pixel, + then assigning window coordinates + + + + + x + r + + + + i + + + y + r + + + + j + + + , + where + + + + x + r + + y + r + + + + is the current raster position, + and the pixel was the + ith + pixel in the + jth + row. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. + + + + + GL_DEPTH + + + Depth values are read from the depth buffer and + converted directly to an internal floating-point format + with unspecified precision. + The resulting floating-point depth value is then multiplied + by GL_DEPTH_SCALE and added to GL_DEPTH_BIAS. + The result is clamped to the range [0,1]. + + + The GL then converts the resulting depth components to fragments + by attaching the current raster position color or color index and + texture coordinates to each pixel, + then assigning window coordinates + + + + + x + r + + + + i + + + y + r + + + + j + + + , + where + + + + x + r + + y + r + + + + is the current raster position, + and the pixel was the + ith + pixel in the + jth + row. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. + + + + + GL_STENCIL + + + Stencil indices are read from the stencil buffer and + converted to an internal fixed-point format + with an unspecified number of bits to the right of the binary point. + Each fixed-point index is then shifted left by GL_INDEX_SHIFT bits, + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + If GL_MAP_STENCIL is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_S_TO_S. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in the stencil buffer. + The resulting stencil indices are then written to the stencil buffer + such that the index read from the + ith + location of the + jth + row + is written to location + + + + + x + r + + + + i + + + y + r + + + + j + + + , + where + + + + x + r + + y + r + + + + is the current raster position. + Only the pixel ownership test, + the scissor test, + and the stencil writemask affect these write operations. + + + + + + The rasterization described thus far assumes pixel zoom factors of 1.0. + If + glPixelZoom is used to change the + x + and + y + pixel zoom factors, + pixels are converted to fragments as follows. + If + + + + x + r + + y + r + + + + is the current raster position, + and a given pixel is in the + ith + location in the + jth + row of the source + pixel rectangle, + then fragments are generated for pixels whose centers are in the rectangle + with corners at + + + + + + + x + r + + + + + zoom + x + + + + i + + + y + r + + + + + zoom + y + + + + j + + + + + + and + + + + + + + x + r + + + + + + zoom + x + + + + + + i + + + 1 + + + + + + y + r + + + + + + zoom + y + + + + + + j + + + 1 + + + + + + + + + where + + + zoom + x + + + is the value of GL_ZOOM_X and + + + zoom + y + + + is the value of GL_ZOOM_Y. + + + Examples + + To copy the color pixel in the lower left corner of the window to the current raster position, + use + + + +glCopyPixels(0, 0, 1, 1, GL_COLOR); + + + + + + Notes + + Modes specified by glPixelStore have no effect on the operation + of glCopyPixels. + + + Errors + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if type is GL_DEPTH + and there is no depth buffer. + + + GL_INVALID_OPERATION is generated if type is GL_STENCIL + and there is no stencil buffer. + + + GL_INVALID_OPERATION is generated if glCopyPixels + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_RASTER_POSITION + + + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + + + See Also + + glColorTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glDepthFunc, + glDrawBuffer, + glDrawPixels, + glMatrixMode, + glPixelMap, + glPixelTransfer, + glPixelZoom, + glRasterPos, + glReadBuffer, + glReadPixels, + glSeparableFilter2D, + glStencilFunc, + glWindowPos + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyTexImage1D.xml b/upstream-man-pages/man2/glCopyTexImage1D.xml new file mode 100644 index 0000000..390d397 --- /dev/null +++ b/upstream-man-pages/man2/glCopyTexImage1D.xml @@ -0,0 +1,370 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexImage1D + 3G + + + glCopyTexImage1D + copy pixels into a 1D texture image + + C Specification + + + void glCopyTexImage1D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + x + y + + + Specify the window coordinates of the left corner + of the row of pixels to be copied. + + + + + width + + + Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + The height of the texture image is 1. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + + Description + + glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. + + + The screen-aligned pixel row with left corner at + + + + x + y + + + and with a length of + + + + width + + + + 2 + + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. + + + The pixels in the row are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + Pixel ordering is such that lower + x + screen coordinates correspond to + lower texture coordinates. + + + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. + + + When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. + + + Notes + + glCopyTexImage1D is available only if the GL version is 1.1 or greater. + + + Texturing has no effect in color index mode. + + + 1, 2, 3, and 4 are not accepted values for internalformat. + + + An image with 0 width indicates a NULL texture. + + + When the ARB_imaging extension is supported, the RGBA components copied from the framebuffer may be processed by the imaging pipeline. See glTexImage1D for specific details. + + + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, and GL_DEPTH_COMPONENT32 are available only + if the GL version is 1.4 or greater. + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. See glTexImage1D for specific details about sRGB conversion. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable values. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalformat is not an allowable value. + + + GL_INVALID_VALUE is generated if width is less than 0 or greater than + 2 + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer value of n. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if glCopyTexImage1D is executed between the execution of glBegin and the corresponding execution of glEnd. + + + GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_1D + + + See Also + + glCopyPixels, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyTexImage2D.xml b/upstream-man-pages/man2/glCopyTexImage2D.xml new file mode 100644 index 0000000..59804c3 --- /dev/null +++ b/upstream-man-pages/man2/glCopyTexImage2D.xml @@ -0,0 +1,432 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexImage2D + 3G + + + glCopyTexImage2D + copy pixels into a 2D texture image + + C Specification + + + void glCopyTexImage2D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + + + + + height + + + Specifies the height of the texture image. + Must be 0 or + + + + 2 + m + + + + + 2 + + + border + + + + + for some integer + m. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + + Description + + glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image + with pixels from the current + GL_READ_BUFFER. + + + The screen-aligned pixel rectangle with lower left corner at (x, + y) and with a width of + + + + width + + + + 2 + + + border + + + + + and a height of + + + + height + + + + 2 + + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. + + + The pixels in the rectangle are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + Pixel ordering is such that lower + x + and + y + screen coordinates correspond to + lower + s + and + t + texture coordinates. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. + + + Notes + + glCopyTexImage2D is available only if the GL version is 1.1 or greater. + + + Texturing has no effect in color index mode. + + + 1, 2, 3, and 4 are not accepted values for internalformat. + + + An image with height or width of 0 indicates a NULL texture. + + + When the ARB_imaging extension is supported, the RGBA components read from the framebuffer may be processed by the imaging pipeline. See glTexImage1D for specific details. + + + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. + + + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, + and GL_DEPTH_COMPONENT32 are available only if the GL version is 1.4 + or greater. + + + The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. See glTexImage2D for specific details about sRGB conversion. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than + 2 + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or depth cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some integer + k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_VALUE is generated if internalformat is not an + accepted format. + + + GL_INVALID_OPERATION is generated if glCopyTexImage2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP + + + See Also + + glCopyPixels, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyTexSubImage1D.xml b/upstream-man-pages/man2/glCopyTexSubImage1D.xml new file mode 100644 index 0000000..c502881 --- /dev/null +++ b/upstream-man-pages/man2/glCopyTexSubImage1D.xml @@ -0,0 +1,268 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage1D + 3G + + + glCopyTexSubImage1D + copy a one-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies the texel offset within the texture array. + + + + + x + y + + + Specify the window coordinates of the left corner + of the row of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + + Description + + glCopyTexSubImage1D replaces a portion of a one-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage1D). + + + The screen-aligned pixel row with left corner at (x,\ y), and with + length width replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive. The destination in the texture array may not + include any texels outside the texture array as it was + originally specified. + + + The pixels in the row are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + It is not an error to specify a subtexture with zero width, but + such a specification has no effect. + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glCopyTexSubImage1D is available only if the GL version is 1.1 or greater. + + + Texturing has no effect in color index mode. + + + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + When the ARB_imaging extension is supported, the RGBA components + copied from the framebuffer may be processed by the imaging pipeline. See + glTexImage1D for specific details. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_1D. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D or glCopyTexImage1D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. + + + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_1D + + + See Also + + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glPixelTransfer, + glReadBuffer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyTexSubImage2D.xml b/upstream-man-pages/man2/glCopyTexSubImage2D.xml new file mode 100644 index 0000000..9fd0269 --- /dev/null +++ b/upstream-man-pages/man2/glCopyTexSubImage2D.xml @@ -0,0 +1,370 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage2D + 3G + + + glCopyTexSubImage2D + copy a two-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + + Description + + glCopyTexSubImage2D replaces a rectangular portion of a two-dimensional texture image or + cube-map texture image with pixels from the current GL_READ_BUFFER + (rather than from main memory, as is the case for glTexSubImage2D). + + + The screen-aligned pixel rectangle with lower left corner at + + + + x + y + + + and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at the mipmap level specified by level. + + + The pixels in the rectangle are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + height, or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glCopyTexSubImage2D is available only if the GL version is 1.1 or greater. + + + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. + + + Texturing has no effect in color index mode. + + + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + When the ARB_imaging extension is supported, the RGBA components + read from the framebuffer may be processed by the imaging pipeline. See + glTexImage1D for specific details. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_OPERATION is generated if the texture array has not been + defined by a previous glTexImage2D or glCopyTexImage2D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + and + h + include twice the border width. + + + GL_INVALID_OPERATION is generated if glCopyTexSubImage2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_2D + + + See Also + + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage3D, + glPixelStore, + glPixelTransfer, + glReadBuffer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCopyTexSubImage3D.xml b/upstream-man-pages/man2/glCopyTexSubImage3D.xml new file mode 100644 index 0000000..ff0bb18 --- /dev/null +++ b/upstream-man-pages/man2/glCopyTexSubImage3D.xml @@ -0,0 +1,385 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage3D + 3G + + + glCopyTexSubImage3D + copy a three-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + zoffset + + + Specifies a texel offset in the z direction within the texture array. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + + Description + + glCopyTexSubImage3D replaces a rectangular portion of a three-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage3D). + + + The screen-aligned pixel rectangle with lower left corner at + (x,\ y) and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at z index zoffset and at the mipmap level specified by level. + + + The pixels in the rectangle are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + height, depth, or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glCopyTexSubImage3D is available only if the GL version is 1.2 or greater. + + + Texturing has no effect in color index mode. + + + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + When the ARB_imaging extension is supported, the RGBA components + copied from the framebuffer may be processed by the imaging pipeline, as + if they were a two-dimensional texture. See glTexImage2D for + specific details. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where + max + is the returned value of GL_MAX_3D_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + 1 + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. + + + GL_INVALID_OPERATION is generated if glCopyTexSubImage3D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_3D + + + See Also + + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glPixelTransfer, + glReadBuffer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glCreateProgram.xml b/upstream-man-pages/man2/glCreateProgram.xml new file mode 100644 index 0000000..345ec44 --- /dev/null +++ b/upstream-man-pages/man2/glCreateProgram.xml @@ -0,0 +1,127 @@ + + + + + glCreateProgram + 3G + + + glCreateProgram + Creates a program object + + C Specification + + + GLuint glCreateProgram + void + + + + Description + glCreateProgram creates an empty + program object and returns a non-zero value by which it can be + referenced. A program object is an object to which shader + objects can be attached. This provides a mechanism to specify + the shader objects that will be linked to create a program. It + also provides a means for checking the compatibility of the + shaders that will be used to create a program (for instance, + checking the compatibility between a vertex shader and a + fragment shader). When no longer needed as part of a program + object, shader objects can be detached. + + One or more executables are created in a program object by + successfully attaching shader objects to it with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + These executables are made part of current state when + glUseProgram + is called. Program objects can be deleted by calling + glDeleteProgram. + The memory associated with the program object will be deleted + when it is no longer part of current rendering state for any + context. + + Notes + glCreateProgram is available only if + the GL version is 2.0 or greater. + + Like display lists and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + Errors + This function returns 0 if an error occurs creating the program object. + + GL_INVALID_OPERATION is generated if + glCreateProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with a valid program object and the index of an active attribute + variable + + glGetActiveUniform + with a valid program object and the index of an active uniform + variable + + glGetAttachedShaders + with a valid program object + + glGetAttribLocation + with a valid program object and the name of an attribute + variable + + glGetProgram + with a valid program object and the parameter to be queried + + glGetProgramInfoLog + with a valid program object + + glGetUniform + with a valid program object and the location of a uniform + variable + + glGetUniformLocation + with a valid program object and the name of a uniform + variable + + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCreateShader, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glCreateShader.xml b/upstream-man-pages/man2/glCreateShader.xml new file mode 100644 index 0000000..137bff7 --- /dev/null +++ b/upstream-man-pages/man2/glCreateShader.xml @@ -0,0 +1,111 @@ + + + + + glCreateShader + 3G + + + glCreateShader + Creates a shader object + + C Specification + + + GLuint glCreateShader + GLenum shaderType + + + + Parameters + + + shaderType + + Specifies the type of shader to be created. + Must be either GL_VERTEX_SHADER + or GL_FRAGMENT_SHADER. + + + + + Description + glCreateShader creates an empty + shader object and returns a non-zero value by which it can be + referenced. A shader object is used to maintain the source code + strings that define a shader. shaderType + indicates the type of shader to be created. Two types of shaders + are supported. A shader of type + GL_VERTEX_SHADER is a shader that is + intended to run on the programmable vertex processor and replace + the fixed functionality vertex processing in OpenGL. A shader of + type GL_FRAGMENT_SHADER is a shader that is + intended to run on the programmable fragment processor and + replace the fixed functionality fragment processing in + OpenGL. + + When created, a shader object's + GL_SHADER_TYPE parameter is set to either + GL_VERTEX_SHADER or + GL_FRAGMENT_SHADER, depending on the value + of shaderType. + + Notes + glCreateShader is available only if + the GL version is 2.0 or greater. + + Like display lists and texture objects, the name space for + shader objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + Errors + This function returns 0 if an error occurs creating the + shader object. + + GL_INVALID_ENUM is generated if + shaderType is not an accepted value. + + GL_INVALID_OPERATION is generated if + glCreateShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetShader + with a valid shader object and the parameter to be queried + + glGetShaderInfoLog + with a valid shader object + + glGetShaderSource + with a valid shader object + + glIsShader + + See Also + glAttachShader, + glCompileShader, + glDeleteShader, + glDetachShader, + glShaderSource + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glCullFace.xml b/upstream-man-pages/man2/glCullFace.xml new file mode 100644 index 0000000..ead278c --- /dev/null +++ b/upstream-man-pages/man2/glCullFace.xml @@ -0,0 +1,99 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCullFace + 3G + + + glCullFace + specify whether front- or back-facing facets can be culled + + C Specification + + + void glCullFace + GLenum mode + + + + Parameters + + + mode + + + Specifies whether front- or back-facing facets are candidates for culling. + Symbolic constants + GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. + The initial value is GL_BACK. + + + + + + Description + + glCullFace specifies whether front- or back-facing facets are culled + (as specified by mode) when facet culling is enabled. Facet + culling is initially disabled. + To enable and disable facet culling, call the + glEnable and glDisable commands + with the argument GL_CULL_FACE. + Facets include triangles, + quadrilaterals, + polygons, and + rectangles. + + + glFrontFace specifies which of the clockwise and counterclockwise facets + are front-facing and back-facing. + See glFrontFace. + + + Notes + + If mode is GL_FRONT_AND_BACK, no facets are drawn, but other + primitives such as points and lines are drawn. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if glCullFace + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glIsEnabled with argument GL_CULL_FACE + + + glGet with argument GL_CULL_FACE_MODE + + + See Also + + glEnable, + glFrontFace + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDeleteBuffers.xml b/upstream-man-pages/man2/glDeleteBuffers.xml new file mode 100644 index 0000000..e4424ce --- /dev/null +++ b/upstream-man-pages/man2/glDeleteBuffers.xml @@ -0,0 +1,96 @@ + + + + + + + 2005 + Sams Publishing + + + glDeleteBuffers + 3G + + + glDeleteBuffers + delete named buffer objects + + C Specification + + + void glDeleteBuffers + GLsizei n + const GLuint * buffers + + + + Parameters + + + n + + + Specifies the number of buffer objects to be deleted. + + + + + buffers + + + Specifies an array of buffer objects to be deleted. + + + + + + Description + + glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. + After a buffer object is deleted, it has no contents, + and its name is free for reuse (for example by glGenBuffers). + If a buffer object that is currently bound is deleted, the binding reverts + to 0 (the absence of any buffer object, which reverts to client memory usage). + + + glDeleteBuffers silently ignores 0's and names that do not correspond to + existing buffer objects. + + + Notes + + glDeleteBuffers is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glDeleteBuffers is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsBuffer + + + See Also + + glBindBuffer, + glGenBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glDeleteLists.xml b/upstream-man-pages/man2/glDeleteLists.xml new file mode 100644 index 0000000..ad9b769 --- /dev/null +++ b/upstream-man-pages/man2/glDeleteLists.xml @@ -0,0 +1,108 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDeleteLists + 3G + + + glDeleteLists + delete a contiguous group of display lists + + C Specification + + + void glDeleteLists + GLuint list + GLsizei range + + + + Parameters + + + list + + + Specifies the integer name of the first display list to delete. + + + + + range + + + Specifies the number of display lists to delete. + + + + + + Description + + glDeleteLists causes a contiguous group of display lists to be deleted. + list is the name of the first display list to be deleted, + and range is the number of display lists to delete. + All display lists + d + with + + + + list + <= + d + <= + + list + + + range + - + 1 + + + + are deleted. + + + All storage locations allocated to the specified display lists are freed, + and the names are available for reuse at a later time. + Names within the range that do not have an associated display list are ignored. + If range is 0, nothing happens. + + + Errors + + GL_INVALID_VALUE is generated if range is negative. + + + GL_INVALID_OPERATION is generated if glDeleteLists + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glCallList, + glCallLists, + glGenLists, + glIsList, + glNewList + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDeleteProgram.xml b/upstream-man-pages/man2/glDeleteProgram.xml new file mode 100644 index 0000000..0469c23 --- /dev/null +++ b/upstream-man-pages/man2/glDeleteProgram.xml @@ -0,0 +1,96 @@ + + + + + glDeleteProgram + 3G + + + glDeleteProgram + Deletes a program object + + C Specification + + + void glDeleteProgram + GLuint program + + + + Parameters + + + program + + Specifies the program object to be + deleted. + + + + + Description + glDeleteProgram frees the memory and + invalidates the name associated with the program object + specified by program. This command + effectively undoes the effects of a call to + glCreateProgram. + + If a program object is in use as part of current rendering + state, it will be flagged for deletion, but it will not be + deleted until it is no longer part of current state for any + rendering context. If a program object to be deleted has shader + objects attached to it, those shader objects will be + automatically detached but not deleted unless they have already + been flagged for deletion by a previous call to + glDeleteShader. + A value of 0 for program will be silently + ignored. + + To determine whether a program object has been flagged for + deletion, call + glGetProgram + with arguments program and + GL_DELETE_STATUS. + + Notes + glDeleteProgram is available only if + the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + glDeleteProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with argument GL_CURRENT_PROGRAM + + glGetProgram + with arguments program and + GL_DELETE_STATUS + + glIsProgram + + See Also + glCreateShader, + glDetachShader, + glUseProgram + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glDeleteQueries.xml b/upstream-man-pages/man2/glDeleteQueries.xml new file mode 100644 index 0000000..d2b1bdb --- /dev/null +++ b/upstream-man-pages/man2/glDeleteQueries.xml @@ -0,0 +1,96 @@ + + + + + + + 2005 + Sams Publishing + + + glDeleteQueries + 3G + + + glDeleteQueries + delete named query objects + + C Specification + + + void glDeleteQueries + GLsizei n + const GLuint * ids + + + + Parameters + + + n + + + Specifies the number of query objects to be deleted. + + + + + ids + + + Specifies an array of query objects to be deleted. + + + + + + Description + + glDeleteQueries deletes n query objects named by the elements of the array ids. + After a query object is deleted, it has no contents, + and its name is free for reuse (for example by glGenQueries). + + + glDeleteQueries silently ignores 0's and names that do not correspond to + existing query objects. + + + Notes + + glDeleteQueries is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glDeleteQueries is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsQuery + + + See Also + + glBeginQuery, + glEndQuery, + glGenQueries, + glGetQueryiv, + glGetQueryObject + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glDeleteShader.xml b/upstream-man-pages/man2/glDeleteShader.xml new file mode 100644 index 0000000..72a73e9 --- /dev/null +++ b/upstream-man-pages/man2/glDeleteShader.xml @@ -0,0 +1,92 @@ + + + + + glDeleteShader + 3G + + + glDeleteShader + Deletes a shader object + + C Specification + + + void glDeleteShader + GLuint shader + + + + Parameters + + + shader + + Specifies the shader object to be deleted. + + + + + Description + glDeleteShader frees the memory and + invalidates the name associated with the shader object specified + by shader. This command effectively + undoes the effects of a call to + glCreateShader. + + If a shader object to be deleted is attached to a program + object, it will be flagged for deletion, but it will not be + deleted until it is no longer attached to any program object, + for any rendering context (i.e., it must be detached from + wherever it was attached before it will be deleted). A value of + 0 for shader will be silently + ignored. + + To determine whether an object has been flagged for + deletion, call + glGetShader + with arguments shader and + GL_DELETE_STATUS. + + Notes + glDeleteShader is available only if + the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + glDeleteShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetAttachedShaders + with the program object to be queried + + glGetShader + with arguments shader and + GL_DELETE_STATUS + + glIsShader + + See Also + glCreateProgram, + glCreateShader, + glDetachShader, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glDeleteTextures.xml b/upstream-man-pages/man2/glDeleteTextures.xml new file mode 100644 index 0000000..57bee58 --- /dev/null +++ b/upstream-man-pages/man2/glDeleteTextures.xml @@ -0,0 +1,104 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDeleteTextures + 3G + + + glDeleteTextures + delete named textures + + C Specification + + + void glDeleteTextures + GLsizei n + const GLuint * textures + + + + Parameters + + + n + + + Specifies the number of textures to be deleted. + + + + + textures + + + Specifies an array of textures to be deleted. + + + + + + Description + + glDeleteTextures deletes n textures named by the elements of the array textures. + After a texture is deleted, it has no contents or dimensionality, + and its name is free for reuse (for example by glGenTextures). + If a texture that is currently bound is deleted, the binding reverts + to 0 (the default texture). + + + glDeleteTextures silently ignores 0's and names that do not correspond to + existing textures. + + + Notes + + glDeleteTextures is available only if the GL version is 1.1 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glDeleteTextures is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsTexture + + + See Also + + glAreTexturesResident, + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glGenTextures, + glGet, + glGetTexParameter, + glPrioritizeTextures, + glTexImage1D, + glTexImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDepthFunc.xml b/upstream-man-pages/man2/glDepthFunc.xml new file mode 100644 index 0000000..78cb635 --- /dev/null +++ b/upstream-man-pages/man2/glDepthFunc.xml @@ -0,0 +1,173 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthFunc + 3G + + + glDepthFunc + specify the value used for depth buffer comparisons + + C Specification + + + void glDepthFunc + GLenum func + + + + Parameters + + + func + + + Specifies the depth comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. + The initial value is GL_LESS. + + + + + + Description + + glDepthFunc specifies the function used to compare each incoming pixel depth value + with the depth value present in the depth buffer. + The comparison is performed only if depth testing is enabled. + (See glEnable and glDisable of GL_DEPTH_TEST.) + + + func specifies the conditions under which the pixel will be drawn. + The comparison functions are as follows: + + + + GL_NEVER + + + Never passes. + + + + + GL_LESS + + + Passes if the incoming depth value is less than the stored depth value. + + + + + GL_EQUAL + + + Passes if the incoming depth value is equal to the stored depth value. + + + + + GL_LEQUAL + + + Passes if the incoming depth value is less than or equal to + the stored depth value. + + + + + GL_GREATER + + + Passes if the incoming depth value is greater than the stored depth value. + + + + + GL_NOTEQUAL + + + Passes if the incoming depth value is not equal to the stored depth value. + + + + + GL_GEQUAL + + + Passes if the incoming depth value is greater than or equal to + the stored depth value. + + + + + GL_ALWAYS + + + Always passes. + + + + + + The initial value of func is GL_LESS. + Initially, depth testing is disabled. If depth testing is disabled or if no + depth buffer exists, it is as if the depth test always passes. + + + Notes + + Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. + + + Errors + + GL_INVALID_ENUM is generated if func is not an accepted value. + + + GL_INVALID_OPERATION is generated if glDepthFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_DEPTH_FUNC + + + glIsEnabled with argument GL_DEPTH_TEST + + + See Also + + glDepthRange, + glEnable, + glPolygonOffset + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDepthMask.xml b/upstream-man-pages/man2/glDepthMask.xml new file mode 100644 index 0000000..172cee0 --- /dev/null +++ b/upstream-man-pages/man2/glDepthMask.xml @@ -0,0 +1,81 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthMask + 3G + + + glDepthMask + enable or disable writing into the depth buffer + + C Specification + + + void glDepthMask + GLboolean flag + + + + Parameters + + + flag + + + Specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. + + + + + + Description + + glDepthMask specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. + + + Errors + + GL_INVALID_OPERATION is generated if glDepthMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_DEPTH_WRITEMASK + + + See Also + + glColorMask, + glDepthFunc, + glDepthRange, + glIndexMask, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDepthRange.xml b/upstream-man-pages/man2/glDepthRange.xml new file mode 100644 index 0000000..8bc52a8 --- /dev/null +++ b/upstream-man-pages/man2/glDepthRange.xml @@ -0,0 +1,128 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthRange + 3G + + + glDepthRange + specify mapping of depth values from normalized device coordinates to window coordinates + + C Specification + + + void glDepthRange + GLclampd nearVal + GLclampd farVal + + + + + Parameters + + + nearVal + + + Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. + + + + + farVal + + + Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. + + + + + + Description + + After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + glDepthRange specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + Thus, + the values accepted by glDepthRange are both clamped to this range + before they are accepted. + + + The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. + + + Notes + + It is not necessary that nearVal be less than farVal. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. + + + Errors + + GL_INVALID_OPERATION is generated if glDepthRange + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_DEPTH_RANGE + + + See Also + + glDepthFunc, + glPolygonOffset, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDetachShader.xml b/upstream-man-pages/man2/glDetachShader.xml new file mode 100644 index 0000000..d821cc5 --- /dev/null +++ b/upstream-man-pages/man2/glDetachShader.xml @@ -0,0 +1,102 @@ + + + + + glDetachShader + 3G + + + glDetachShader + Detaches a shader object from a program object to which it is attached + + C Specification + + + void glDetachShader + GLuint program + GLuint shader + + + + Parameters + + + program + + Specifies the program object from which to + detach the shader object. + + + + shader + + Specifies the shader object to be + detached. + + + + + Description + glDetachShader detaches the shader + object specified by shader from the + program object specified by program. This + command can be used to undo the effect of the command + glAttachShader. + + If shader has already been flagged + for deletion by a call to + glDeleteShader + and it is not attached to any other program object, it will be + deleted after it has been detached. + + Notes + glDetachShader is available only if + the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if either + program or shader + is a value that was not generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + shader is not attached to + program. + + GL_INVALID_OPERATION is generated if + glDetachShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetAttachedShaders + with the handle of a valid program object + + glGetShader + with arguments shader and + GL_DELETE_STATUS + + glIsProgram + + glIsShader + + See Also + glAttachShader + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glDrawArrays.xml b/upstream-man-pages/man2/glDrawArrays.xml new file mode 100644 index 0000000..a093616 --- /dev/null +++ b/upstream-man-pages/man2/glDrawArrays.xml @@ -0,0 +1,150 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawArrays + 3G + + + glDrawArrays + render primitives from array data + + C Specification + + + void glDrawArrays + GLenum mode + GLint first + GLsizei count + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. + + + + + first + + + Specifies the starting index in the enabled arrays. + + + + + count + + + Specifies the number of indices to be rendered. + + + + + + Description + + glDrawArrays specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glDrawArrays. + + + When glDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed and how the array elements + construct those primitives. If GL_VERTEX_ARRAY is not enabled, no + geometric primitives are generated. + + + Vertex attributes that are modified by glDrawArrays have an + unspecified value after glDrawArrays returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glDrawArrays executes. Attributes that aren't + modified remain well defined. + + + Notes + + glDrawArrays is available only if the GL version is 1.1 or greater. + + + glDrawArrays is included in display lists. If glDrawArrays is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if glDrawArrays is executed between + the execution of glBegin and the corresponding glEnd. + + + See Also + + glArrayElement, + glColorPointer, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glFogCoordPointer, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDrawBuffer.xml b/upstream-man-pages/man2/glDrawBuffer.xml new file mode 100644 index 0000000..1b17b86 --- /dev/null +++ b/upstream-man-pages/man2/glDrawBuffer.xml @@ -0,0 +1,239 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawBuffer + 3G + + + glDrawBuffer + specify which color buffers are to be drawn into + + C Specification + + + void glDrawBuffer + GLenum mode + + + + + Parameters + + + mode + + + Specifies up to four color buffers to be drawn into. + Symbolic constants + GL_NONE, + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, + GL_FRONT_AND_BACK, and + GL_AUXi, + where i is between 0 and the value of GL_AUX_BUFFERS minus 1, + are accepted. (GL_AUX_BUFFERS is not the upper limit; use glGet + to query the number of available aux buffers.) + The initial value is GL_FRONT for single-buffered contexts, + and GL_BACK for double-buffered contexts. + + + + + + Description + + When colors are written to the frame buffer, + they are written into the color buffers specified by glDrawBuffer. + The specifications are as follows: + + + + GL_NONE + + + No color buffers are written. + + + + + GL_FRONT_LEFT + + + Only the front left color buffer is written. + + + + + GL_FRONT_RIGHT + + + Only the front right color buffer is written. + + + + + GL_BACK_LEFT + + + Only the back left color buffer is written. + + + + + GL_BACK_RIGHT + + + Only the back right color buffer is written. + + + + + GL_FRONT + + + Only the front left and front right color buffers are written. + If there is no front right color buffer, + only the front left color buffer is written. + + + + + GL_BACK + + + Only the back left and back right color buffers are written. + If there is no back right color buffer, + only the back left color buffer is written. + + + + + GL_LEFT + + + Only the front left and back left color buffers are written. + If there is no back left color buffer, + only the front left color buffer is written. + + + + + GL_RIGHT + + + Only the front right and back right color buffers are written. + If there is no back right color buffer, + only the front right color buffer is written. + + + + + GL_FRONT_AND_BACK + + + All the front and back color buffers + (front left, front right, back left, back right) + are written. + If there are no back color buffers, + only the front left and front right color buffers are written. + If there are no right color buffers, + only the front left and back left color buffers are written. + If there are no right or back color buffers, + only the front left color buffer is written. + + + + + GL_AUXi + + + Only auxiliary color buffer i is written. + + + + + + If more than one color buffer is selected for drawing, + then blending or logical operations are computed and applied independently + for each color buffer and can produce different results in each buffer. + + + Monoscopic contexts include only + left + buffers, and stereoscopic contexts include both + left + and + right + buffers. + Likewise, single-buffered contexts include only + front + buffers, and double-buffered contexts include both + front + and + back + buffers. + The context is selected at GL initialization. + + + Notes + + It is always the case that GL_AUX + i + = GL_AUX0 + + i. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if none of the buffers indicated + by mode exists. + + + GL_INVALID_OPERATION is generated if glDrawBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_DRAW_BUFFER + + + glGet with argument GL_AUX_BUFFERS + + + See Also + + glBlendFunc, + glColorMask, + glIndexMask, + glLogicOp, + glReadBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDrawBuffers.xml b/upstream-man-pages/man2/glDrawBuffers.xml new file mode 100644 index 0000000..446e062 --- /dev/null +++ b/upstream-man-pages/man2/glDrawBuffers.xml @@ -0,0 +1,196 @@ + + + + + glDrawBuffers + 3G + + + glDrawBuffers + Specifies a list of color buffers to be drawn into + + C Specification + + + void glDrawBuffers + GLsizei n + const GLenum *bufs + + + + Parameters + + + n + + Specifies the number of buffers in + bufs. + + + + bufs + + Points to an array of symbolic constants + specifying the buffers into which fragment colors or + data values will be written. + + + + + Description + glDrawBuffers defines an array of + buffers into which fragment color values or fragment data will + be written. If no fragment shader is active, rendering + operations will generate only one fragment color per fragment + and it will be written into each of the buffers specified by + bufs. If a fragment shader is active and + it writes a value to the output variable + gl_FragColor, then that value will be + written into each of the buffers specified by + bufs. If a fragment shader is active and + it writes a value to one or more elements of the output array + variable gl_FragData[], then the value of + gl_FragData[0] will be written into the + first buffer specified by bufs, the value + of gl_FragData[1] will be written into the + second buffer specified by bufs, and so + on up to gl_FragData[n-1]. The draw buffer + used for gl_FragData[n] and beyond is + implicitly set to be GL_NONE. + + The symbolic constants contained in + bufs may be any of the following: + + + + GL_NONE + + The fragment color/data value is not written into + any color buffer. + + + + GL_FRONT_LEFT + + The fragment color/data value is written into the + front left color buffer. + + + + GL_FRONT_RIGHT + + The fragment color/data value is written into the + front right color buffer. + + + + GL_BACK_LEFT + + The fragment color/data value is written into the + back left color buffer. + + + + GL_BACK_RIGHT + + The fragment color/data value is written into the + back right color buffer. + + + + GL_AUXi + + The fragment color/data value is written into + auxiliary buffer i. + + + + + Except for GL_NONE, the preceding + symbolic constants may not appear more than once in + bufs. The maximum number of draw buffers + supported is implementation dependent and can be queried by + calling + glGet + with the argument GL_MAX_DRAW_BUFFERS. The + number of auxiliary buffers can be queried by calling + glGet + with the argument GL_AUX_BUFFERS. + + Notes + glDrawBuffers is available only if + the GL version is 2.0 or greater. + + It is always the case that GL_AUXi = + GL_AUX0 + i. + + The symbolic constants GL_FRONT, + GL_BACK, GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK are not allowed in the + bufs array since they may refer to + multiple buffers. + + If a fragment shader writes to neither + gl_FragColor nor + gl_FragData, the values of the fragment + colors following shader execution are undefined. For each + fragment generated in this situation, a different value may be + written into each of the buffers specified by + bufs. + + Errors + GL_INVALID_ENUM is generated if one of the + values in bufs is not an accepted + value. + + GL_INVALID_ENUM is generated if + n is less than 0. + + GL_INVALID_OPERATION is generated if a + symbolic constant other than GL_NONE + appears more than once in bufs. + + GL_INVALID_OPERATION is generated if any of + the entries in bufs (other than + GL_NONE ) indicates a color buffer that + does not exist in the current GL context. + + GL_INVALID_VALUE is generated if + n is greater than + GL_MAX_DRAW_BUFFERS. + + GL_INVALID_OPERATION is generated if + glDrawBuffers is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with argument GL_MAX_DRAW_BUFFERS + + glGet + with argument GL_DRAW_BUFFERSi where + i indicates the number of the draw buffer + whose value is to be queried + + See Also + glBlendFunc, + glColorMask, + glDrawBuffers, + glIndexMask, + glLogicOp, + glReadBuffer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glDrawElements.xml b/upstream-man-pages/man2/glDrawElements.xml new file mode 100644 index 0000000..0e557b2 --- /dev/null +++ b/upstream-man-pages/man2/glDrawElements.xml @@ -0,0 +1,162 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawElements + 3G + + + glDrawElements + render primitives from array data + + C Specification + + + void glDrawElements + GLenum mode + GLsizei count + GLenum type + const GLvoid * indices + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + + Description + + glDrawElements specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL function + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to + construct a sequence of primitives with a single + call to glDrawElements. + + + When glDrawElements is called, it uses count sequential elements from an + enabled array, starting at indices to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed and how the array elements construct these primitives. If + more than one array is enabled, each is used. If + GL_VERTEX_ARRAY is not enabled, no geometric primitives are + constructed. + + + Vertex attributes that are modified by glDrawElements have an + unspecified value after glDrawElements returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glDrawElements executes. Attributes that aren't + modified maintain their previous values. + + + Notes + + glDrawElements is available only if the GL version is 1.1 or greater. + + + glDrawElements is included in display lists. If glDrawElements is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if glDrawElements is executed between + the execution of glBegin and the corresponding glEnd. + + + See Also + + glArrayElement, + glColorPointer, + glDrawArrays, + glDrawRangeElements, + glEdgeFlagPointer, + glFogCoordPointer, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDrawPixels.xml b/upstream-man-pages/man2/glDrawPixels.xml new file mode 100644 index 0000000..edbceee --- /dev/null +++ b/upstream-man-pages/man2/glDrawPixels.xml @@ -0,0 +1,1235 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawPixels + 3G + + + glDrawPixels + write a block of pixels to the frame buffer + + C Specification + + + void glDrawPixels + GLsizei width + GLsizei height + GLenum format + GLenum type + const GLvoid * data + + + + + Parameters + + + width + height + + + Specify the dimensions of the pixel rectangle to be written + into the frame buffer. + + + + + format + + + Specifies the format of the pixel data. + Symbolic constants + GL_COLOR_INDEX, + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA are accepted. + + + + + type + + + Specifies the data type for data. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + data + + + Specifies a pointer to the pixel data. + + + + + + Description + + glDrawPixels reads pixel data from memory and writes it into the frame buffer + relative to the current raster position, provided that the raster + position is valid. Use + glRasterPos or glWindowPos to set the current raster position; use + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + to determine if the specified raster position is valid, and + glGet with argument GL_CURRENT_RASTER_POSITION + to query the raster position. + + + Several parameters define the encoding of pixel data in memory + and control the processing of the pixel data + before it is placed in the frame buffer. + These parameters are set with four commands: + glPixelStore, + glPixelTransfer, + glPixelMap, and glPixelZoom. + This reference page describes the effects on glDrawPixels of many, + but not all, of the parameters specified by these four commands. + + + Data is read from data as a sequence of signed or unsigned bytes, + signed or unsigned shorts, signed or unsigned integers, or + single-precision floating-point values, depending on type. + When type is one of GL_UNSIGNED_BYTE, GL_BYTE, + GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, + GL_INT, or GL_FLOAT each of these bytes, shorts, integers, or + floating-point values is interpreted as one color or depth component, or + one index, depending on format. + When type is one of GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_INT_8_8_8_8, or + GL_UNSIGNED_INT_10_10_10_2, each unsigned value is interpreted as + containing all the components for a single pixel, with the color + components arranged according to format. + When type is one of GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8_REV, or + GL_UNSIGNED_INT_2_10_10_10_REV, each unsigned value is interpreted + as containing all color components, specified by format, for a single + pixel in a reversed order. Indices are always treated individually. + Color components are treated as groups of one, two, three, or four + values, again based on format. Both individual indices and groups of + components are referred to as pixels. + If type is GL_BITMAP, the data must be unsigned bytes, and + format must be either GL_COLOR_INDEX or GL_STENCIL_INDEX. + Each unsigned byte is treated as eight 1-bit pixels, with bit ordering + determined by GL_UNPACK_LSB_FIRST (see glPixelStore). + + + + + + width + × + height + + + pixels are read from memory, + starting at location data. + By default, these pixels are taken from adjacent memory locations, + except that after all width pixels are read, + the read pointer is advanced to the next four-byte boundary. + The four-byte row alignment is specified by glPixelStore with + argument GL_UNPACK_ALIGNMENT, + and it can be set to one, two, four, or eight bytes. + Other pixel store parameters specify different read pointer advancements, + both before the first pixel is read + and after all width pixels are read. + See the glPixelStore reference page for details on these options. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a block of pixels is + specified, data is treated as a byte offset into the buffer object's data store. + + + The + + + + width + × + height + + + pixels that are read from memory are + each operated on in the same way, + based on the values of several parameters specified by glPixelTransfer + and glPixelMap. + The details of these operations, + as well as the target buffer into which the pixels are drawn, + are specific to the format of the pixels, + as specified by format. + format can assume one of 13 symbolic values: + + + + GL_COLOR_INDEX + + + Each pixel is a single value, + a color index. + It is converted to fixed-point format, + with an unspecified number of bits to the right of the binary point, + regardless of the memory data type. + Floating-point values convert to true fixed-point values. + Signed and unsigned integer data is converted with all fraction bits + set to 0. + Bitmap data convert to either 0 or 1. + + + Each fixed-point index is then shifted left by GL_INDEX_SHIFT bits + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + + + If the GL is in RGBA mode, + the resulting index is converted to an RGBA pixel + with the help of the GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, + and GL_PIXEL_MAP_I_TO_A tables. + If the GL is in color index mode, + and if GL_MAP_COLOR is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_I_TO_I. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in a color index buffer. + + + The GL then converts the resulting indices or RGBA colors to fragments + by attaching the current raster position z coordinate and + texture coordinates to each pixel, + then assigning + x + and + y + window coordinates to the + nth + fragment such that + + + + x + n + + = + + x + r + + + + + n + % + width + + + + + + + + + y + n + + = + + y + r + + + + + + n + width + + + + + + + + + + + where + + + + x + r + + y + r + + + + is the current raster position. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. + + + + + GL_STENCIL_INDEX + + + Each pixel is a single value, + a stencil index. + It is converted to fixed-point format, + with an unspecified number of bits to the right of the binary point, + regardless of the memory data type. + Floating-point values convert to true fixed-point values. + Signed and unsigned integer data is converted with all fraction bits + set to 0. + Bitmap data convert to either 0 or 1. + + + Each fixed-point index is then shifted left by GL_INDEX_SHIFT bits, + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + If GL_MAP_STENCIL is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_S_TO_S. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in the stencil buffer. + The resulting stencil indices are then written to the stencil buffer + such that the + nth + index is written to location + + + + + + x + n + + = + + x + r + + + + + n + % + width + + + + + + + + + y + n + + = + + y + r + + + + + + n + width + + + + + + + + + where + + + + x + r + + y + r + + + + is the current raster position. + Only the pixel ownership test, + the scissor test, + and the stencil writemask affect these write operations. + + + + + GL_DEPTH_COMPONENT + + + Each pixel is a single-depth component. + Floating-point data is converted directly to an internal floating-point + format with unspecified precision. + Signed integer data is mapped linearly to the internal floating-point + format such that the most positive representable integer value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Unsigned integer data is mapped similarly: + the largest integer value maps to 1.0, + and 0 maps to 0.0. + The resulting floating-point depth value is then multiplied + by GL_DEPTH_SCALE and added to GL_DEPTH_BIAS. + The result is clamped to the range + + + + 0 + 1 + + . + + + The GL then converts the resulting depth components to fragments + by attaching the current raster position color or color index and + texture coordinates to each pixel, + then assigning + x + and + y + window coordinates to the + nth + fragment such that + + + + + + x + n + + = + + x + r + + + + + n + % + width + + + + + + + + + y + n + + = + + y + r + + + + + + n + width + + + + + + + + + where + + + + x + r + + y + r + + + + is the current raster position. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each pixel is a four-component group: For GL_RGBA, the red + component is first, followed by green, followed by blue, followed by + alpha; for GL_BGRA the order is blue, green, red and then alpha. + Floating-point values are converted directly to an internal floating-point + format with unspecified precision. + Signed integer values are mapped linearly to the internal floating-point + format such that the most positive representable integer value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + (Note that + this mapping does not convert 0 precisely to 0.0.) + Unsigned integer data is mapped similarly: + The largest integer value maps to 1.0, + and 0 maps to 0.0. + The resulting floating-point color values are then multiplied + by GL_c_SCALE and added to GL_c_BIAS, + where c is RED, GREEN, BLUE, and ALPHA + for the respective color components. + The results are clamped to the range + + + + 0 + 1 + + . + + + If GL_MAP_COLOR is true, + each color component is scaled by the size of lookup table + GL_PIXEL_MAP_c_TO_c, + then replaced by the value that it references in that table. + c is R, G, B, or A respectively. + + + The GL then converts the resulting RGBA colors to fragments + by attaching the current raster position z coordinate and + texture coordinates to each pixel, + then assigning + x + and + y + window coordinates to the + nth + fragment such that + + + + + + x + n + + = + + x + r + + + + + n + % + width + + + + + + + + + y + n + + = + + y + r + + + + + + n + width + + + + + + + + + where + + + + x + r + + y + r + + + + is the current raster position. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. + + + + + GL_RED + + + Each pixel is a single red component. + This component is converted to the internal floating-point format in + the same way the red component of an RGBA pixel is. It is + then converted to an RGBA pixel with green and blue set to 0, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + GL_GREEN + + + Each pixel is a single green component. + This component is converted to the internal floating-point format in + the same way the green component of an RGBA pixel is. + It is then converted to an RGBA pixel with red and blue set to 0, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + GL_BLUE + + + Each pixel is a single blue component. + This component is converted to the internal floating-point format in + the same way the blue component of an RGBA pixel is. + It is then converted to an RGBA pixel with red and green set to 0, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + GL_ALPHA + + + Each pixel is a single alpha component. + This component is converted to the internal floating-point format in + the same way the alpha component of an RGBA pixel is. + It is then converted to an RGBA pixel with red, green, and blue set to 0. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + GL_RGB + + + + + GL_BGR + + + Each pixel is a three-component group: + red first, followed by green, followed by blue; for GL_BGR, the + first component is blue, followed by green and then red. + Each component is converted to the internal floating-point format in + the same way the red, green, and blue components of an RGBA pixel are. + The color triple is converted to an RGBA pixel with alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + GL_LUMINANCE + + + Each pixel is a single luminance component. + This component is converted to the internal floating-point format in + the same way the red component of an RGBA pixel is. + It is then converted to an RGBA pixel with red, green, and blue set to the + converted luminance value, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + GL_LUMINANCE_ALPHA + + + Each pixel is a two-component group: + luminance first, followed by alpha. + The two components are converted to the internal floating-point format in + the same way the red component of an RGBA pixel is. + They are then converted to an RGBA pixel with red, green, and blue set to the + converted luminance value, + and alpha set to the converted alpha value. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + + + + + + + + The following table summarizes the meaning of the valid constants for the + type parameter: + + + + + + + + + + Type + + + Corresponding Type + + + + + + + GL_UNSIGNED_BYTE + + + unsigned 8-bit integer + + + + + GL_BYTE + + + signed 8-bit integer + + + + + GL_BITMAP + + + single bits in unsigned 8-bit integers + + + + + GL_UNSIGNED_SHORT + + + unsigned 16-bit integer + + + + + GL_SHORT + + + signed 16-bit integer + + + + + GL_UNSIGNED_INT + + + unsigned 32-bit integer + + + + + GL_INT + + + 32-bit integer + + + + + GL_FLOAT + + + single-precision floating-point + + + + + GL_UNSIGNED_BYTE_3_3_2 + + + unsigned 8-bit integer + + + + + GL_UNSIGNED_BYTE_2_3_3_REV + + + unsigned 8-bit integer with reversed component ordering + + + + + GL_UNSIGNED_SHORT_5_6_5 + + + unsigned 16-bit integer + + + + + GL_UNSIGNED_SHORT_5_6_5_REV + + + unsigned 16-bit integer with reversed component ordering + + + + + GL_UNSIGNED_SHORT_4_4_4_4 + + + unsigned 16-bit integer + + + + + GL_UNSIGNED_SHORT_4_4_4_4_REV + + + unsigned 16-bit integer with reversed component ordering + + + + + GL_UNSIGNED_SHORT_5_5_5_1 + + + unsigned 16-bit integer + + + + + GL_UNSIGNED_SHORT_1_5_5_5_REV + + + unsigned 16-bit integer with reversed component ordering + + + + + GL_UNSIGNED_INT_8_8_8_8 + + + unsigned 32-bit integer + + + + + GL_UNSIGNED_INT_8_8_8_8_REV + + + unsigned 32-bit integer with reversed component ordering + + + + + GL_UNSIGNED_INT_10_10_10_2 + + + unsigned 32-bit integer + + + + + GL_UNSIGNED_INT_2_10_10_10_REV + + + unsigned 32-bit integer with reversed component ordering + + + + + + + + + + + + + The rasterization described so far assumes pixel zoom factors of 1. + If + glPixelZoom is used to change the + x + and + y + pixel zoom factors, + pixels are converted to fragments as follows. + If + + + + x + r + + y + r + + + + is the current raster position, + and a given pixel is in the + nth + column and + mth + row + of the pixel rectangle, + then fragments are generated for pixels whose centers are in the rectangle + with corners at + + + + + + + x + r + + + + + zoom + x + + + + n + + + y + r + + + + + zoom + y + + + + m + + + + + + + + + x + r + + + + + + zoom + x + + + + + + n + + + 1 + + + + + + y + r + + + + + + zoom + y + + + + + + m + + + 1 + + + + + + + + + + where + + + zoom + x + + + is the value of GL_ZOOM_X and + + + zoom + y + + + is the value of GL_ZOOM_Y. + + + Notes + + GL_BGR and GL_BGRA are only valid for format if the GL + version is 1.2 or greater. + + + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are only valid for type if the + GL version is 1.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if format or type is not one of + the accepted values. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not either GL_COLOR_INDEX or GL_STENCIL_INDEX. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. + + + GL_INVALID_OPERATION is generated if format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_RGBA, + GL_BGR, + GL_BGRA, + GL_LUMINANCE, + or + GL_LUMINANCE_ALPHA, + and the GL is in color index mode. + + + GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glDrawPixels + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_RASTER_POSITION + + + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glAlphaFunc, + glBlendFunc, + glCopyPixels, + glDepthFunc, + glLogicOp, + glPixelMap, + glPixelStore, + glPixelTransfer, + glPixelZoom, + glRasterPos, + glReadPixels, + glScissor, + glStencilFunc, + glWindowPos + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glDrawRangeElements.xml b/upstream-man-pages/man2/glDrawRangeElements.xml new file mode 100644 index 0000000..9d46068 --- /dev/null +++ b/upstream-man-pages/man2/glDrawRangeElements.xml @@ -0,0 +1,238 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawRangeElements + 3G + + + glDrawRangeElements + render primitives from array data + + C Specification + + + void glDrawRangeElements + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const GLvoid * indices + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. + + + + + start + + + Specifies the minimum array index contained in indices. + + + + + end + + + Specifies the maximum array index contained in indices. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + + Description + + glDrawRangeElements is a restricted form of glDrawElements. mode, start, end, + and count match the corresponding arguments to glDrawElements, with + the additional constraint that all values in the arrays count must lie + between start and end, inclusive. + + + Implementations denote recommended maximum amounts of vertex and + index data, + which may be queried by calling glGet with argument + GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. + If + + + + end + - + start + + + 1 + + + is greater than the value of + GL_MAX_ELEMENTS_VERTICES, or if count is greater than the value of + GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced + performance. There is no requirement that all vertices in the range + + + + start + end + + + be referenced. However, the implementation may + partially process unused vertices, reducing performance from what could + be achieved with an optimal index set. + + + When glDrawRangeElements is called, it uses count sequential elements from an + enabled array, starting at start to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed, and how the array elements construct these primitives. If + more than one array is enabled, each is used. If + GL_VERTEX_ARRAY is not enabled, no geometric primitives are + constructed. + + + Vertex attributes that are modified by glDrawRangeElements have an + unspecified value after glDrawRangeElements returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glDrawRangeElements executes. Attributes that aren't + modified maintain their previous values. + + + Notes + + glDrawRangeElements is available only if the GL version is 1.2 or greater. + + + glDrawRangeElements is included in display lists. If glDrawRangeElements is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. + + + Errors + + It is an error for indices to lie outside the range + + + + start + end + + , + but implementations may not check for this situation. Such indices + cause implementation-dependent behavior. + + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_VALUE is generated if + + + + end + < + start + + . + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if glDrawRangeElements is executed between + the execution of glBegin and the corresponding glEnd. + + + Associated Gets + + glGet with argument GL_MAX_ELEMENTS_VERTICES + + + glGet with argument GL_MAX_ELEMENTS_INDICES + + + See Also + + glArrayElement, + glColorPointer, + glDrawArrays, + glDrawElements, + glEdgeFlagPointer, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEdgeFlag.xml b/upstream-man-pages/man2/glEdgeFlag.xml new file mode 100644 index 0000000..5cc2195 --- /dev/null +++ b/upstream-man-pages/man2/glEdgeFlag.xml @@ -0,0 +1,112 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEdgeFlag + 3G + + + glEdgeFlag + flag edges as either boundary or nonboundary + + C Specification + + + void glEdgeFlag + GLboolean flag + + + + Parameters + + + flag + + + Specifies the current edge flag value, + either GL_TRUE or GL_FALSE. The initial value is GL_TRUE. + + + + + + C Specification + + + void glEdgeFlagv + const GLboolean * flag + + + + Parameters + + + flag + + + Specifies a pointer to an array that contains a single boolean element, + which replaces the current edge flag value. + + + + + + Description + + Each vertex of a polygon, + separate triangle, + or separate quadrilateral specified between a glBegin/glEnd pair + is marked as the start of either a boundary or nonboundary edge. + If the current edge flag is true when the vertex is specified, + the vertex is marked as the start of a boundary edge. + Otherwise, the vertex is marked as the start of a nonboundary edge. + glEdgeFlag sets the edge flag bit to GL_TRUE if flag is GL_TRUE + and to GL_FALSE otherwise. + + + The vertices of connected triangles and connected quadrilaterals are always + marked as boundary, + regardless of the value of the edge flag. + + + Boundary and nonboundary edge flags on vertices are significant only if + GL_POLYGON_MODE is set to GL_POINT or GL_LINE. + See glPolygonMode. + + + Notes + + The current edge flag can be updated at any time. + In particular, + glEdgeFlag can be called between a call to glBegin and the corresponding + call to glEnd. + + + Associated Gets + + glGet with argument GL_EDGE_FLAG + + + See Also + + glBegin, + glEdgeFlagPointer, + glPolygonMode + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEdgeFlagPointer.xml b/upstream-man-pages/man2/glEdgeFlagPointer.xml new file mode 100644 index 0000000..c184758 --- /dev/null +++ b/upstream-man-pages/man2/glEdgeFlagPointer.xml @@ -0,0 +1,166 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEdgeFlagPointer + 3G + + + glEdgeFlagPointer + define an array of edge flags + + C Specification + + + void glEdgeFlagPointer + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + stride + + + Specifies the byte offset between consecutive edge flags. + If stride is 0, the edge flags are understood + to be tightly packed in the array. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first edge flag in the array. The initial + value is 0. + + + + + + Description + + glEdgeFlagPointer specifies the location and data format of an array of boolean edge + flags to use when rendering. stride specifies the byte stride from one + edge flag to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while an edge flag array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as edge flag vertex array + client-side state (GL_EDGE_FLAG_ARRAY_BUFFER_BINDING). + + + When an edge flag array is + specified, stride and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the edge flag array, call + glEnableClientState and glDisableClientState with the argument + GL_EDGE_FLAG_ARRAY. If + enabled, the edge flag array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. + + + Notes + + glEdgeFlagPointer is available only if the GL version is 1.1 or greater. + + + Edge flags are not supported for interleaved vertex array formats + (see glInterleavedArrays). + + + The edge flag array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glEdgeFlagPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glEdgeFlagPointer is typically implemented on the client side. + + + Edge flag array parameters are client-side state and are therefore + not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. + + + Errors + + GL_INVALID_ENUM is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_EDGE_FLAG_ARRAY + + + glGet with argument GL_EDGE_FLAG_ARRAY_STRIDE + + + glGet with argument GL_EDGE_FLAG_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_EDGE_FLAG_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlag, + glEnableClientState, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEnable.xml b/upstream-man-pages/man2/glEnable.xml new file mode 100644 index 0000000..5bc32f7 --- /dev/null +++ b/upstream-man-pages/man2/glEnable.xml @@ -0,0 +1,1110 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEnable + 3G + + + glEnable + enable or disable server-side GL capabilities + + C Specification + + + void glEnable + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + C Specification + + + void glDisable + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + Description + + glEnable and glDisable enable and disable various capabilities. + Use glIsEnabled or glGet to determine the current setting + of any capability. The initial value for each capability with the + exception of GL_DITHER and GL_MULTISAMPLE is GL_FALSE. The initial value for + GL_DITHER and GL_MULTISAMPLE is GL_TRUE. + + + Both glEnable and glDisable take a single argument, cap, + which can assume one of the following values: + + + + GL_ALPHA_TEST + + + + + If enabled, + do alpha testing. See + glAlphaFunc. + + + + + GL_AUTO_NORMAL + + + + + If enabled, + generate normal vectors when either + GL_MAP2_VERTEX_3 or + GL_MAP2_VERTEX_4 is used to generate vertices. + See glMap2. + + + + + GL_BLEND + + + + + If enabled, + blend the computed fragment color values with the values in the color + buffers. See glBlendFunc. + + + + + GL_CLIP_PLANEi + + + + + If enabled, + clip geometry against user-defined clipping plane i. + See glClipPlane. + + + + + GL_COLOR_LOGIC_OP + + + + + If enabled, + apply the currently selected logical operation to the computed fragment + color and color buffer values. See glLogicOp. + + + + + GL_COLOR_MATERIAL + + + + + If enabled, + have one or more material parameters track the current color. + See glColorMaterial. + + + + + GL_COLOR_SUM + + + + + If enabled and no fragment shader is active, + add the secondary color value to the computed fragment color. + See glSecondaryColor. + + + + + GL_COLOR_TABLE + + + + + If enabled, + perform a color table lookup on the incoming RGBA color values. + See glColorTable. + + + + + GL_CONVOLUTION_1D + + + + + If enabled, + perform a 1D convolution operation on incoming RGBA color values. + See glConvolutionFilter1D. + + + + + GL_CONVOLUTION_2D + + + + + If enabled, + perform a 2D convolution operation on incoming RGBA color values. + See glConvolutionFilter2D. + + + + + GL_CULL_FACE + + + + + If enabled, + cull polygons based on their winding in window coordinates. + See glCullFace. + + + + + GL_DEPTH_TEST + + + + + If enabled, + do depth comparisons and update the depth buffer. Note that even if + the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. See + glDepthFunc and + glDepthRange. + + + + + GL_DITHER + + + + + If enabled, + dither color components or indices before they are written to the + color buffer. + + + + + GL_FOG + + + + + If enabled and no fragment shader is active, + blend a fog color into the post-texturing color. + See glFog. + + + + + GL_HISTOGRAM + + + + + If enabled, + histogram incoming RGBA color values. + See glHistogram. + + + + + GL_INDEX_LOGIC_OP + + + + + If enabled, + apply the currently selected logical operation to the incoming index and color + buffer indices. + See glLogicOp. + + + + + GL_LIGHTi + + + + + If enabled, + include light i in the evaluation of the lighting + equation. See glLightModel and glLight. + + + + + GL_LIGHTING + + + + + If enabled and no vertex shader is active, + use the current lighting parameters to compute the vertex color or index. + Otherwise, simply associate the current color or index with each + vertex. See + glMaterial, glLightModel, and glLight. + + + + + GL_LINE_SMOOTH + + + + + If enabled, + draw lines with correct filtering. + Otherwise, + draw aliased lines. + See glLineWidth. + + + + + GL_LINE_STIPPLE + + + + + If enabled, + use the current line stipple pattern when drawing lines. See + glLineStipple. + + + + + GL_MAP1_COLOR_4 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate RGBA values. + See glMap1. + + + + + GL_MAP1_INDEX + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate color indices. + See glMap1. + + + + + GL_MAP1_NORMAL + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate normals. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_1 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s + texture coordinates. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_2 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s and + t texture coordinates. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_3 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s, + t, and + r texture coordinates. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_4 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s, + t, + r, and + q texture coordinates. + See glMap1. + + + + + GL_MAP1_VERTEX_3 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + x, y, and z vertex coordinates. + See glMap1. + + + + + GL_MAP1_VERTEX_4 + + + + + If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + homogeneous + x, + y, + z, and + w vertex coordinates. + See glMap1. + + + + + GL_MAP2_COLOR_4 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate RGBA values. + See glMap2. + + + + + GL_MAP2_INDEX + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate color indices. + See glMap2. + + + + + GL_MAP2_NORMAL + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate normals. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_1 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s + texture coordinates. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_2 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s and + t texture coordinates. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_3 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s, + t, and + r texture coordinates. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_4 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s, + t, + r, and + q texture coordinates. + See glMap2. + + + + + GL_MAP2_VERTEX_3 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + x, y, and z vertex coordinates. + See glMap2. + + + + + GL_MAP2_VERTEX_4 + + + + + If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + homogeneous + x, + y, + z, and + w vertex coordinates. + See glMap2. + + + + + GL_MINMAX + + + + + If enabled, + compute the minimum and maximum values of incoming RGBA color values. + See glMinmax. + + + + + GL_MULTISAMPLE + + + + + If enabled, + use multiple fragment samples in computing the final color of a pixel. + See glSampleCoverage. + + + + + GL_NORMALIZE + + + + + If enabled and no vertex shader is active, + normal vectors are normalized to unit length + after transformation and before lighting. This method is generally + less efficient than GL_RESCALE_NORMAL. See + glNormal and + glNormalPointer. + + + + + GL_POINT_SMOOTH + + + + + If enabled, + draw points with proper filtering. + Otherwise, + draw aliased points. + See glPointSize. + + + + + GL_POINT_SPRITE + + + + + If enabled, + calculate texture coordinates for points based on texture + environment and point parameter settings. Otherwise texture coordinates + are constant across points. + + + + + GL_POLYGON_OFFSET_FILL + + + + + If enabled, and if the polygon is rendered in + GL_FILL mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_LINE + + + + + If enabled, and if the polygon is rendered in + GL_LINE mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_POINT + + + + + If enabled, an offset is added to depth values of a polygon's fragments + before the depth comparison is performed, if the polygon is rendered in + GL_POINT mode. See glPolygonOffset. + + + + + GL_POLYGON_SMOOTH + + + + + If enabled, draw polygons with proper filtering. + Otherwise, draw aliased polygons. For correct antialiased polygons, + an alpha buffer is needed and the polygons must be sorted front to + back. + + + + + GL_POLYGON_STIPPLE + + + + + If enabled, + use the current polygon stipple pattern when rendering + polygons. See glPolygonStipple. + + + + + GL_POST_COLOR_MATRIX_COLOR_TABLE + + + + + If enabled, + perform a color table lookup on RGBA color values after color matrix + transformation. + See glColorTable. + + + + + GL_POST_CONVOLUTION_COLOR_TABLE + + + + + If enabled, + perform a color table lookup on RGBA color values after convolution. + See glColorTable. + + + + + GL_RESCALE_NORMAL + + + + + If enabled and no vertex shader is active, + normal vectors are scaled after transformation and before + lighting by a factor computed from the modelview matrix. If the + modelview matrix scales space uniformly, this has the effect of + restoring the transformed normal to unit length. This method is generally + more efficient than GL_NORMALIZE. See + glNormal and + glNormalPointer. + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE + + + + + If enabled, + compute a temporary coverage value where each bit is determined by the + alpha value at the corresponding sample location. The temporary coverage + value is then ANDed with the fragment coverage value. + + + + + GL_SAMPLE_ALPHA_TO_ONE + + + + + If enabled, + each sample alpha value is replaced by the maximum representable alpha value. + + + + + GL_SAMPLE_COVERAGE + + + + + If enabled, + the fragment's coverage is ANDed with the temporary coverage value. If + GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage + value. + See glSampleCoverage. + + + + + GL_SEPARABLE_2D + + + + + If enabled, perform a two-dimensional convolution operation using a separable + convolution filter on incoming RGBA color values. + See glSeparableFilter2D. + + + + + GL_SCISSOR_TEST + + + + + If enabled, + discard fragments that are outside the scissor rectangle. + See glScissor. + + + + + GL_STENCIL_TEST + + + + + If enabled, + do stencil testing and update the stencil buffer. + See glStencilFunc and glStencilOp. + + + + + GL_TEXTURE_1D + + + + + If enabled and no fragment shader is active, + one-dimensional texturing is performed + (unless two- or three-dimensional or cube-mapped texturing is also enabled). + See glTexImage1D. + + + + + GL_TEXTURE_2D + + + + + If enabled and no fragment shader is active, + two-dimensional texturing is performed + (unless three-dimensional or cube-mapped texturing is also enabled). + See glTexImage2D. + + + + + GL_TEXTURE_3D + + + + + If enabled and no fragment shader is active, + three-dimensional texturing is performed + (unless cube-mapped texturing is also enabled). + See glTexImage3D. + + + + + GL_TEXTURE_CUBE_MAP + + + + + If enabled and no fragment shader is active, + cube-mapped texturing is performed. + See glTexImage2D. + + + + + GL_TEXTURE_GEN_Q + + + + + If enabled and no vertex shader is active, + the q texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current q texture coordinate is used. + See glTexGen. + + + + + GL_TEXTURE_GEN_R + + + + + If enabled and no vertex shader is active, + the r texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current r texture coordinate is used. + See glTexGen. + + + + + GL_TEXTURE_GEN_S + + + + + If enabled and no vertex shader is active, + the s texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current s texture coordinate is used. + See glTexGen. + + + + + GL_TEXTURE_GEN_T + + + + + If enabled and no vertex shader is active, + the t texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current t texture coordinate is used. + See glTexGen. + + + + + GL_VERTEX_PROGRAM_POINT_SIZE + + + + + If enabled + and a vertex shader is active, then the derived point size is taken from the (potentially clipped) shader builtin + gl_PointSize and clamped to the implementation-dependent point size range. + + + + + GL_VERTEX_PROGRAM_TWO_SIDE + + + + + If enabled + and a vertex shader is active, it specifies that the GL will choose between front and back colors based on the + polygon's face direction of which the vertex being shaded is a part. It has no effect on points or lines. + + + + + + Notes + + GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, + GL_POLYGON_OFFSET_POINT, + GL_COLOR_LOGIC_OP, and GL_INDEX_LOGIC_OP are available + only if the GL version is 1.1 or greater. + + + GL_RESCALE_NORMAL, and GL_TEXTURE_3D are available only if the + GL version is 1.2 or greater. + + + GL_MULTISAMPLE, + GL_SAMPLE_ALPHA_TO_COVERAGE, + GL_SAMPLE_ALPHA_TO_ONE, + GL_SAMPLE_COVERAGE, + GL_TEXTURE_CUBE_MAP + are available only if the GL version is 1.3 or greater. + + + GL_POINT_SPRITE, + GL_VERTEX_PROGRAM_POINT_SIZE, and + GL_VERTEX_PROGRAM_TWO_SIDE + is available only if the GL version is 2.0 or greater. + + + GL_COLOR_TABLE, GL_CONVOLUTION_1D, GL_CONVOLUTION_2D, + GL_HISTOGRAM, GL_MINMAX, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, and + GL_SEPARABLE_2D are available only if ARB_imaging is returned + from glGet with an argument of GL_EXTENSIONS. + + + For OpenGL versions 1.3 and greater, or when ARB_multitexture is supported, GL_TEXTURE_1D, + GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, GL_TEXTURE_GEN_R, and GL_TEXTURE_GEN_Q + enable or disable the respective state for the active texture unit + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if cap is not one of the values + listed previously. + + + GL_INVALID_OPERATION is generated if glEnable or glDisable + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glIsEnabled + + + glGet + + + See Also + + glActiveTexture, + glAlphaFunc, + glBlendFunc, + glClipPlane, + glColorMaterial, + glCullFace, + glDepthFunc, + glDepthRange, + glEnableClientState, + glFog, + glGet, + glIsEnabled, + glLight, + glLightModel, + glLineWidth, + glLineStipple, + glLogicOp, + glMap1, + glMap2, + glMaterial, + glNormal, + glNormalPointer, + glPointSize, + glPolygonMode, + glPolygonOffset, + glPolygonStipple, + glSampleCoverage, + glScissor, + glStencilFunc, + glStencilOp, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEnableClientState.xml b/upstream-man-pages/man2/glEnableClientState.xml new file mode 100644 index 0000000..c54be6d --- /dev/null +++ b/upstream-man-pages/man2/glEnableClientState.xml @@ -0,0 +1,223 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEnableClientState + 3G + + + glEnableClientState + enable or disable client-side capability + + C Specification + + + void glEnableClientState + GLenum cap + + + + + Parameters + + + cap + + + Specifies the capability to enable. + Symbolic constants + GL_COLOR_ARRAY, + GL_EDGE_FLAG_ARRAY, + GL_FOG_COORD_ARRAY, + GL_INDEX_ARRAY, + GL_NORMAL_ARRAY, + GL_SECONDARY_COLOR_ARRAY, + GL_TEXTURE_COORD_ARRAY, and + GL_VERTEX_ARRAY + are accepted. + + + + + + C Specification + + + void glDisableClientState + GLenum cap + + + + Parameters + + + cap + + + Specifies the capability to disable. + + + + + + Description + + glEnableClientState and glDisableClientState + enable or disable individual client-side capabilities. By default, all + client-side capabilities are disabled. + Both + glEnableClientState and glDisableClientState take a + single argument, cap, which can assume one of the following + values: + + + + GL_COLOR_ARRAY + + + If enabled, the color array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glColorPointer. + + + + + GL_EDGE_FLAG_ARRAY + + + If enabled, the edge flag array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glEdgeFlagPointer. + + + + + GL_FOG_COORD_ARRAY + + + If enabled, the fog coordinate array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glFogCoordPointer. + + + + + GL_INDEX_ARRAY + + + If enabled, the index array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glIndexPointer. + + + + + GL_NORMAL_ARRAY + + + If enabled, the normal array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glNormalPointer. + + + + + GL_SECONDARY_COLOR_ARRAY + + + If enabled, the secondary color array is enabled for writing and used + during rendering when glArrayElement, glDrawArrays, + glDrawElements, glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glColorPointer. + + + + + GL_TEXTURE_COORD_ARRAY + + + If enabled, the texture coordinate array is enabled for writing and used + during rendering when glArrayElement, glDrawArrays, + glDrawElements, glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glTexCoordPointer. + + + + + GL_VERTEX_ARRAY + + + If enabled, the vertex array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glVertexPointer. + + + + + + Notes + + glEnableClientState is available only if the GL version is 1.1 or greater. + + + GL_FOG_COORD_ARRAY and GL_SECONDARY_COLOR_ARRAY are available only if the GL version is 1.4 or + greater. + + + For OpenGL versions 1.3 and greater, or when ARB_multitexture is supported, enabling and disabling + GL_TEXTURE_COORD_ARRAY affects the active client texture unit. + The active client texture unit is controlled with + glClientActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if cap is not an accepted value. + + + glEnableClientState is not allowed between the execution of glBegin and the + corresponding glEnd, but an error may or may not be generated. If + no error is generated, the behavior is undefined. + + + See Also + + glArrayElement, + glClientActiveTexture, + glColorPointer, + glDrawArrays, + glDrawElements, + glEdgeFlagPointer, + glFogCoordPointer, + glEnable, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEnableVertexAttribArray.xml b/upstream-man-pages/man2/glEnableVertexAttribArray.xml new file mode 100644 index 0000000..3b0ab92 --- /dev/null +++ b/upstream-man-pages/man2/glEnableVertexAttribArray.xml @@ -0,0 +1,109 @@ + + + + + glEnableVertexAttribArray + 3G + + + glEnableVertexAttribArray + glEnableVertexAttribArray + glDisableVertexAttribArray + Enable or disable a generic vertex attribute array + + C Specification + + + void glEnableVertexAttribArray + GLuint index + + + void glDisableVertexAttribArray + GLuint index + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be enabled or disabled. + + + + + Description + glEnableVertexAttribArray enables the + generic vertex attribute array specified by + index. + glDisableVertexAttribArray disables the + generic vertex attribute array specified by + index. By default, all client-side + capabilities are disabled, including all generic vertex + attribute arrays. If enabled, the values in the generic vertex + attribute array will be accessed and used for rendering when + calls are made to vertex array commands such as + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glArrayElement, + glMultiDrawElements, + or + glMultiDrawArrays. + + Notes + glEnableVertexAttribArray and + glDisableVertexAttribArray are available + only if the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_OPERATION is generated if either + glEnableVertexAttribArray or + glDisableVertexAttribArray is executed + between the execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttrib + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_ENABLED + + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + glArrayElement, + glBindAttribLocation, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + glPopClientAttrib, + glPushClientAttrib, + glVertexAttrib, + glVertexAttribPointer + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glEvalCoord.xml b/upstream-man-pages/man2/glEvalCoord.xml new file mode 100644 index 0000000..75fdddc --- /dev/null +++ b/upstream-man-pages/man2/glEvalCoord.xml @@ -0,0 +1,362 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEvalCoord + 3G + + + glEvalCoord + evaluate enabled one- and two-dimensional maps + + + C Specification + + + void glEvalCoord1f + GLfloat u + + + + + void glEvalCoord1d + GLdouble u + + + + + void glEvalCoord2f + GLfloat u + GLfloat v + + + + + void glEvalCoord2d + GLdouble u + GLdouble v + + + + Parameters + + + u + + + Specifies a value that is the domain coordinate + u + to the basis function + defined in a previous glMap1 or glMap2 command. + + + + + v + + + Specifies a value that is the domain coordinate + v + to the basis function + defined in a previous glMap2 command. + This argument is not present in a glEvalCoord1 command. + + + + + + C Specification + + + void glEvalCoord1fv + const GLfloat * u + + + + + void glEvalCoord1dv + const GLdouble * u + + + + + void glEvalCoord2fv + const GLfloat * u + + + + + void glEvalCoord2dv + const GLdouble * u + + + + Parameters + + + u + + + Specifies a pointer to an array containing + either one or two domain coordinates. + The first coordinate is + u. + The second coordinate is + v, + which is present only in glEvalCoord2 versions. + + + + + + Description + + glEvalCoord1 evaluates enabled one-dimensional maps at argument + u. + glEvalCoord2 does the same for two-dimensional maps using + two domain values, + u and v. + To define a map, call glMap1 and glMap2; to enable and + disable it, call glEnable and glDisable. + + + When one of the glEvalCoord commands is issued, + all currently enabled maps of the indicated dimension are evaluated. + Then, + for each enabled map, + it is as if the corresponding GL command had been issued with the + computed value. + That is, + if GL_MAP1_INDEX or + GL_MAP2_INDEX is enabled, + a glIndex command is simulated. + If GL_MAP1_COLOR_4 or + GL_MAP2_COLOR_4 is enabled, + a glColor command is simulated. + If GL_MAP1_NORMAL or GL_MAP2_NORMAL is enabled, + a normal vector is produced, + and if any of + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4, + GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3, or + GL_MAP2_TEXTURE_COORD_4 is enabled, then an appropriate glTexCoord command is simulated. + + + For color, + color index, + normal, + and texture coordinates the GL uses evaluated values instead of current values for those evaluations + that are enabled, + and current values otherwise, + However, + the evaluated values do not update the current values. + Thus, if glVertex commands are interspersed with glEvalCoord + commands, the color, + normal, + and texture coordinates associated with the glVertex commands are not + affected by the values generated by the glEvalCoord commands, + but only by the most recent + glColor, + glIndex, + glNormal, and + glTexCoord commands. + + + No commands are issued for maps that are not enabled. + If more than one texture evaluation is enabled for a particular dimension + (for example, GL_MAP2_TEXTURE_COORD_1 and + GL_MAP2_TEXTURE_COORD_2), + then only the evaluation of the map that produces the larger + number of coordinates + (in this case, GL_MAP2_TEXTURE_COORD_2) + is carried out. + GL_MAP1_VERTEX_4 overrides GL_MAP1_VERTEX_3, + and + GL_MAP2_VERTEX_4 overrides GL_MAP2_VERTEX_3, + in the same manner. + If neither a three- nor a four-component vertex map is enabled for the + specified dimension, + the glEvalCoord command is ignored. + + + If you have enabled automatic normal generation, + by calling glEnable with argument GL_AUTO_NORMAL, + glEvalCoord2 generates surface normals analytically, + regardless of the contents or enabling of the GL_MAP2_NORMAL map. + Let + + + + + + m + = + + + + + + + p + + + + + + u + + + + + × + + + + + + p + + + + + + v + + + + + + + + + + Then the generated normal + + + n + + is + + + + n + = + + m + + + m + + + + + + + + If automatic normal generation is disabled, + the corresponding normal map GL_MAP2_NORMAL, + if enabled, + is used to produce a normal. + If neither automatic normal generation nor a normal map is enabled, + no normal is generated for + glEvalCoord2 commands. + + + Associated Gets + + glIsEnabled with argument GL_MAP1_VERTEX_3 + + + glIsEnabled with argument GL_MAP1_VERTEX_4 + + + glIsEnabled with argument GL_MAP1_INDEX + + + glIsEnabled with argument GL_MAP1_COLOR_4 + + + glIsEnabled with argument GL_MAP1_NORMAL + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1 + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2 + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3 + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4 + + + glIsEnabled with argument GL_MAP2_VERTEX_3 + + + glIsEnabled with argument GL_MAP2_VERTEX_4 + + + glIsEnabled with argument GL_MAP2_INDEX + + + glIsEnabled with argument GL_MAP2_COLOR_4 + + + glIsEnabled with argument GL_MAP2_NORMAL + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_1 + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_2 + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_3 + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_4 + + + glIsEnabled with argument GL_AUTO_NORMAL + + + glGetMap + + + See Also + + glBegin, + glColor, + glEnable, + glEvalMesh, + glEvalPoint, + glIndex, + glMap1, + glMap2, + glMapGrid, + glNormal, + glTexCoord, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEvalMesh.xml b/upstream-man-pages/man2/glEvalMesh.xml new file mode 100644 index 0000000..f505755 --- /dev/null +++ b/upstream-man-pages/man2/glEvalMesh.xml @@ -0,0 +1,626 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEvalMesh + 3G + + + glEvalMesh + compute a one- or two-dimensional grid of points or lines + + C Specification + + + void glEvalMesh1 + GLenum mode + GLint i1 + GLint i2 + + + + + Parameters + + + mode + + + In glEvalMesh1, specifies whether to compute a one-dimensional mesh of points or lines. + Symbolic constants + GL_POINT and + GL_LINE are accepted. + + + + + i1 + i2 + + + Specify the first and last integer values for grid domain variable + i. + + + + + + C Specification + + + void glEvalMesh2 + GLenum mode + GLint i1 + GLint i2 + GLint j1 + GLint j2 + + + + Parameters + + + mode + + + In glEvalMesh2, specifies whether to compute a two-dimensional mesh of points, lines, + or polygons. + Symbolic constants + GL_POINT, + GL_LINE, and + GL_FILL are accepted. + + + + + i1 + i2 + + + Specify the first and last integer values for grid domain variable + i. + + + + + j1 + j2 + + + Specify the first and last integer values for grid domain variable + j. + + + + + + Description + + glMapGrid and glEvalMesh are used in tandem to efficiently + generate and evaluate a series of evenly-spaced map domain values. + glEvalMesh steps through the integer domain of a one- or two-dimensional grid, + whose range is the domain of the evaluation maps specified by + glMap1 and glMap2. + mode determines whether the resulting vertices are connected as + points, + lines, + or filled polygons. + + + In the one-dimensional case, + glEvalMesh1, + the mesh is generated as if the following code fragment were executed: + + + +glBegin( type ); +for ( i = i1; i <= i2; i += 1 ) + glEvalCoord1( + + + + i + · + Δ + u + + + + + u + 1 + + + ); +glEnd(); + + where + + + + + + + Δ + u + + = + + + + + u + 2 + + - + + u + 1 + + + + n + + + + + + and + n, + + + u + 1 + + , + and + + + u + 2 + + + are the arguments to the most recent + glMapGrid1 command. + type is GL_POINTS if mode is GL_POINT, + or GL_LINES if mode is GL_LINE. + + + The one absolute numeric requirement is that if + + + + i + = + n + + , + then the + value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + . + + + In the two-dimensional case, glEvalMesh2, let + .cp + + + + + Δ + u + + = + + + + u + 2 + + - + u + 1 + + + + n + + + + + + + + + + Δ + v + + = + + + + v + 2 + + - + v + 1 + + + + m + + + + + + where + n, + + + u + 1 + + , + + + u + 2 + + , + m, + + + v + 1 + + , + and + + + v + 2 + + + are the + arguments to the most recent glMapGrid2 command. Then, if + mode is GL_FILL, the glEvalMesh2 command is equivalent + to: + + + +for ( j = j1; j < j2; j += 1 ) { + glBegin( GL_QUAD_STRIP ); + for ( i = i1; i <= i2; i += 1 ) { + glEvalCoord2( + + + + i + · + Δ + u + + + + + u + 1 + + , + + + j + · + Δ + v + + + + + + v + 1 + + + ); + glEvalCoord2( + + + + i + · + Δ + u + + + + + u + 1 + + , + + + + + + j + + + 1 + + + + · + Δ + v + + + + + v + 1 + + + ); + } + glEnd(); +} + + + + If mode is GL_LINE, then a call to glEvalMesh2 is equivalent to: + + + +for ( j = j1; j <= j2; j += 1 ) { + glBegin( GL_LINE_STRIP ); + for ( i = i1; i <= i2; i += 1 ) + glEvalCoord2( + + + + i + · + Δ + u + + + + + u + 1 + + , + + + j + · + Δ + v + + + + + v + 1 + + + ); + glEnd(); +} + +for ( i = i1; i <= i2; i += 1 ) { + glBegin( GL_LINE_STRIP ); + for ( j = j1; j <= j1; j += 1 ) + glEvalCoord2( + + + + i + · + Δ + u + + + + + u + 1 + + , + + + j + · + Δ + v + + + + + v + 1 + + + ); + glEnd(); +} + + + + And finally, if mode is GL_POINT, then a call to + glEvalMesh2 is equivalent to: + + + +glBegin( GL_POINTS ); +for ( j = j1; j <= j2; j += 1 ) + for ( i = i1; i <= i2; i += 1 ) + glEvalCoord2( + + + + i + · + Δ + u + + + + + u + 1 + + , + + + j + · + Δ + v + + + + + v + 1 + + + ); +glEnd(); + + + + In all three cases, the only absolute numeric requirements are that if + + + + i + = + n + + , + then the value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + , + and if + + + + j + = + m + + , + then the value computed from + + + + + j + · + + Δ + v + + + + + v + 1 + + + + is exactly + + + v + 2 + + . + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if glEvalMesh + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MAP1_GRID_DOMAIN + + + glGet with argument GL_MAP2_GRID_DOMAIN + + + glGet with argument GL_MAP1_GRID_SEGMENTS + + + glGet with argument GL_MAP2_GRID_SEGMENTS + + + See Also + + glBegin, + glEvalCoord, + glEvalPoint, + glMap1, + glMap2, + glMapGrid + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glEvalPoint.xml b/upstream-man-pages/man2/glEvalPoint.xml new file mode 100644 index 0000000..d9e5e7d --- /dev/null +++ b/upstream-man-pages/man2/glEvalPoint.xml @@ -0,0 +1,380 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEvalPoint + 3G + + + glEvalPoint + generate and evaluate a single point in a mesh + + C Specification + + + void glEvalPoint1 + GLint i + + + + + void glEvalPoint2 + GLint i + GLint j + + + + + Parameters + + + i + + + Specifies the integer value for grid domain variable + i. + + + + + j + + + Specifies the integer value for grid domain variable + j + (glEvalPoint2 only). + + + + + + Description + + glMapGrid and glEvalMesh are used in tandem to efficiently + generate and evaluate a series of evenly spaced map domain values. + glEvalPoint can be used to evaluate a single grid point in the same gridspace + that is traversed by glEvalMesh. + Calling glEvalPoint1 is equivalent to calling + +glEvalCoord1( + + + + i + · + Δ + u + + + + + u + 1 + + + ); + + where + + + + + Δ + u + + = + + + + u + 2 + + - + u + 1 + + + + n + + + + + + and + n, + + + u + 1 + + , + and + + + u + 2 + + + are the arguments to the most recent glMapGrid1 command. + The one absolute numeric requirement is that if + + + + i + = + n + + , + then the value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + . + + + In the two-dimensional case, glEvalPoint2, let + + + + + + + Δ + u + + = + + + + u + 2 + + - + u + 1 + + + + n + + + + + + + + + Δ + v + + = + + + + v + 2 + + - + v + 1 + + + + m + + + + + + + where + n, + + + u + 1 + + , + + + u + 2 + + , + m, + + + v + 1 + + , + and + + + v + 2 + + + are the arguments to the most recent glMapGrid2 command. + Then the glEvalPoint2 command is equivalent to calling + +glEvalCoord2( + + + + i + · + Δ + u + + + + + u + 1 + + , + + + j + · + Δ + v + + + + + + v + 1 + + + ); + + The only absolute numeric requirements are that if + + + + i + = + n + + , + then the value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + , + and if + + + + j + = + m + + , + then the value computed from + + + + + j + · + + Δ + v + + + + + v + 1 + + + + is exactly + + + v + 2 + + . + + + Associated Gets + + glGet with argument GL_MAP1_GRID_DOMAIN + + + glGet with argument GL_MAP2_GRID_DOMAIN + + + glGet with argument GL_MAP1_GRID_SEGMENTS + + + glGet with argument GL_MAP2_GRID_SEGMENTS + + + See Also + + glEvalCoord, + glEvalMesh, + glMap1, + glMap2, + glMapGrid + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFeedbackBuffer.xml b/upstream-man-pages/man2/glFeedbackBuffer.xml new file mode 100644 index 0000000..a9c5808 --- /dev/null +++ b/upstream-man-pages/man2/glFeedbackBuffer.xml @@ -0,0 +1,420 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFeedbackBuffer + 3G + + + glFeedbackBuffer + controls feedback mode + + C Specification + + + void glFeedbackBuffer + GLsizei size + GLenum type + GLfloat * buffer + + + + + Parameters + + + size + + + Specifies the maximum number of values that can be written into buffer. + + + + + type + + + Specifies a symbolic constant that describes the information + that will be returned for each vertex. + GL_2D, + GL_3D, + GL_3D_COLOR, + GL_3D_COLOR_TEXTURE, and + GL_4D_COLOR_TEXTURE are accepted. + + + + + buffer + + + Returns the feedback data. + + + + + + Description + + The glFeedbackBuffer function controls feedback. + Feedback, like selection, is a GL mode. + The mode is selected by calling + glRenderMode with GL_FEEDBACK. + When the GL is in feedback mode, + no pixels are produced by rasterization. + Instead, information about primitives that would have been + rasterized is fed back to the application using the GL. + + + glFeedbackBuffer has three arguments: + buffer is a pointer to an array of floating-point values + into which feedback information is placed. + size indicates the size of the array. + type is a symbolic constant describing the information + that is fed back for each vertex. + glFeedbackBuffer must be issued before feedback mode is enabled + (by calling glRenderMode with argument GL_FEEDBACK). + Setting GL_FEEDBACK without establishing the feedback buffer, + or calling glFeedbackBuffer while the GL is in feedback mode, + is an error. + + + When glRenderMode is called while in feedback mode, it returns the number of entries + placed in the feedback array and resets the feedback array pointer to the base + of the feedback buffer. The returned value never exceeds size. If the feedback + data required more room than was available in buffer, + glRenderMode returns a negative value. + To take the GL out of feedback mode, call + glRenderMode with a parameter value other than GL_FEEDBACK. + + + While in feedback mode, + each primitive, bitmap, or pixel rectangle that would be rasterized + generates a block of values that are copied into the feedback array. + If doing so would cause the number of entries to exceed the maximum, + the block is partially written so as to fill the array + (if there is any room left at all), + and an overflow flag is set. + Each block begins with a code indicating the primitive type, + followed by values that describe the primitive's vertices and + associated data. + Entries are also written for bitmaps and pixel rectangles. + Feedback occurs after polygon culling and glPolygonMode interpretation + of polygons has taken place, + so polygons that are culled are not returned in the feedback buffer. + It can also occur after polygons with more than three edges are broken up + into triangles, + if the GL implementation renders polygons by performing this decomposition. + + + The glPassThrough command can be used to insert a marker + into the feedback buffer. + See glPassThrough. + + + Following is the grammar for the blocks of values written + into the feedback buffer. + Each primitive is indicated with a unique identifying value + followed by some number of vertices. + Polygon entries include an integer value indicating how many vertices follow. + A vertex is fed back as some number of floating-point values, + as determined by type. + Colors are fed back as four values in RGBA mode and one value + in color index mode. + + + + + feedbackList feedbackItem feedbackList | feedbackItem + + + feedbackItem point | lineSegment | polygon | bitmap | pixelRectangle | passThru + + + point GL_POINT_TOKEN vertex + + + lineSegment GL_LINE_TOKEN vertex vertex | GL_LINE_RESET_TOKEN vertex vertex + + + polygon GL_POLYGON_TOKEN n polySpec + + + polySpec polySpec vertex | vertex vertex vertex + + + bitmap GL_BITMAP_TOKEN vertex + + + pixelRectangle GL_DRAW_PIXEL_TOKEN vertex | GL_COPY_PIXEL_TOKEN vertex + + + passThru GL_PASS_THROUGH_TOKEN value + + + vertex 2d | 3d | 3dColor | 3dColorTexture | 4dColorTexture + + + 2d value value + + + 3d value value value + + + 3dColor value value value color + + + 3dColorTexture value value value color tex + + + 4dColorTexture value value value value color tex + + + color rgba | index + + + rgba value value value value + + + index value + + + tex value value value value + + + + + + value + is a floating-point number, + and + n + is a floating-point integer giving the number of vertices in the polygon. + GL_POINT_TOKEN, + GL_LINE_TOKEN, + GL_LINE_RESET_TOKEN, + GL_POLYGON_TOKEN, + GL_BITMAP_TOKEN, + GL_DRAW_PIXEL_TOKEN, + GL_COPY_PIXEL_TOKEN and + GL_PASS_THROUGH_TOKEN are symbolic floating-point constants. + GL_LINE_RESET_TOKEN is returned whenever the line stipple pattern + is reset. + The data returned as a vertex depends on the feedback type. + + + The following table gives the correspondence between type + and the number of values per vertex. + k is 1 in color index mode and 4 in RGBA mode. + + + + + + + + + + + + + + Type + + + Coordinates + + + Color + + + Texture + + + Total Number of Values + + + + + + + GL_2D + + + x, y + + + + + + + 2 + + + + + GL_3D + + + x, y, z + + + + + + + 3 + + + + + GL_3D_COLOR + + + x, y, z + + + k + + + + + + + + 3 + + + k + + + + + + + GL_3D_COLOR_TEXTURE + + + x, y, z + + + k + + + 4 + + + + + + 7 + + + k + + + + + + + GL_4D_COLOR_TEXTURE + + + x, y, z, w + + + k + + + 4 + + + + + + 8 + + + k + + + + + + + + + Feedback vertex coordinates are in window coordinates, + except w, + which is in clip coordinates. + Feedback colors are lighted, if lighting is enabled. + Feedback texture coordinates are generated, + if texture coordinate generation is enabled. + They are always transformed by the texture matrix. + + + Notes + + glFeedbackBuffer, when used in a display list, is not compiled into the display list + but is executed immediately. + + + glFeedbackBuffer returns only the texture coordinate of texture unit GL_TEXTURE0. + + + Errors + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if size is negative. + + + GL_INVALID_OPERATION is generated if glFeedbackBuffer is called while the + render mode is GL_FEEDBACK, + or if glRenderMode is called with argument GL_FEEDBACK before + glFeedbackBuffer is called at least once. + + + GL_INVALID_OPERATION is generated if glFeedbackBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_RENDER_MODE + + + glGet with argument GL_FEEDBACK_BUFFER_POINTER + + + glGet with argument GL_FEEDBACK_BUFFER_SIZE + + + glGet with argument GL_FEEDBACK_BUFFER_TYPE + + + See Also + + glBegin, + glLineStipple, + glPassThrough, + glPolygonMode, + glRenderMode, + glSelectBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFinish.xml b/upstream-man-pages/man2/glFinish.xml new file mode 100644 index 0000000..0d6341d --- /dev/null +++ b/upstream-man-pages/man2/glFinish.xml @@ -0,0 +1,61 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFinish + 3G + + + glFinish + block until all GL execution is complete + + C Specification + + + void glFinish + void + + + + Description + + glFinish does not return until the effects of all previously + called GL commands are complete. + Such effects include all changes to GL state, + all changes to connection state, + and all changes to the frame buffer contents. + + + Notes + + glFinish requires a round trip to the server. + + + Errors + + GL_INVALID_OPERATION is generated if glFinish is executed between + the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glFlush + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFlush.xml b/upstream-man-pages/man2/glFlush.xml new file mode 100644 index 0000000..3e56a10 --- /dev/null +++ b/upstream-man-pages/man2/glFlush.xml @@ -0,0 +1,75 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFlush + 3G + + + glFlush + force execution of GL commands in finite time + + C Specification + + + void glFlush + void + + + + Description + + Different GL implementations buffer commands in several different locations, + including network buffers and the graphics accelerator itself. + glFlush empties all of these buffers, + causing all issued commands to be executed as quickly as + they are accepted by the actual rendering engine. + Though this execution may not be completed in any particular + time period, + it does complete in finite time. + + + Because any GL program might be executed over a network, + or on an accelerator that buffers commands, + all programs should call glFlush whenever they count on having + all of their previously issued commands completed. + For example, + call glFlush before waiting for user input that depends on + the generated image. + + + Notes + + glFlush can return at any time. + It does not wait until the execution of all previously + issued GL commands is complete. + + + Errors + + GL_INVALID_OPERATION is generated if glFlush + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glFinish + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFog.xml b/upstream-man-pages/man2/glFog.xml new file mode 100644 index 0000000..6b1e31f --- /dev/null +++ b/upstream-man-pages/man2/glFog.xml @@ -0,0 +1,492 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFog + 3G + + + glFog + specify fog parameters + + C Specification + + + void glFogf + GLenum pname + GLfloat param + + + + + void glFogi + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies a single-valued fog parameter. + GL_FOG_MODE, + GL_FOG_DENSITY, + GL_FOG_START, + GL_FOG_END, + GL_FOG_INDEX, and + GL_FOG_COORD_SRC + are accepted. + + + + + param + + + Specifies the value that pname will be set to. + + + + + + C Specification + + + void glFogfv + GLenum pname + const GLfloat * params + + + + + void glFogiv + GLenum pname + const GLint * params + + + + Parameters + + + pname + + + Specifies a fog parameter. + GL_FOG_MODE, + GL_FOG_DENSITY, + GL_FOG_START, + GL_FOG_END, + GL_FOG_INDEX, + GL_FOG_COLOR, and + GL_FOG_COORD_SRC + are accepted. + + + + + params + + + Specifies the value or values to be assigned to pname. + GL_FOG_COLOR requires an array of four values. + All other parameters accept an array containing only a single value. + + + + + + Description + + Fog is initially disabled. + While enabled, fog affects rasterized geometry, + bitmaps, and pixel blocks, but not buffer clear operations. To enable + and disable fog, call glEnable and glDisable with argument + GL_FOG. + + + glFog assigns the value or values in params to the fog parameter + specified by pname. + The following values are accepted for pname: + + + + GL_FOG_MODE + + + params is a single integer or floating-point value that specifies + the equation to be used to compute the fog blend factor, + f. + Three symbolic constants are accepted: + GL_LINEAR, + GL_EXP, + and GL_EXP2. + The equations corresponding to these symbolic constants are defined below. + The initial fog mode is GL_EXP. + + + + + GL_FOG_DENSITY + + + params is a single integer or floating-point value that specifies + density, + the fog density used in both exponential fog equations. + Only nonnegative densities are accepted. + The initial fog density is 1. + + + + + GL_FOG_START + + + params is a single integer or floating-point value that specifies + start, + the near distance used in the linear fog equation. + The initial near distance is 0. + + + + + GL_FOG_END + + + params is a single integer or floating-point value that specifies + end, + the far distance used in the linear fog equation. + The initial far distance is 1. + + + + + GL_FOG_INDEX + + + params is a single integer or floating-point value that specifies + + + i + f + + , + the fog color index. + The initial fog index is 0. + + + + + GL_FOG_COLOR + + + params contains four integer or floating-point values that specify + + + C + f + + , + the fog color. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + After conversion, + all color components are clamped to the range + + + + 0 + 1 + + . + The initial fog color is (0, 0, 0, 0). + + + + + GL_FOG_COORD_SRC + + + params contains either of the following symbolic constants: + GL_FOG_COORD or GL_FRAGMENT_DEPTH. GL_FOG_COORD + specifies that the current fog coordinate should be used as distance value + in the fog color computation. GL_FRAGMENT_DEPTH specifies that the + current fragment depth should be used as distance value in the fog + computation. + + + + + + Fog blends a fog color with each rasterized pixel fragment's post-texturing + color using a blending factor + f. + Factor + f + is computed in one of three ways, + depending on the fog mode. + Let + c + be either the distance in eye coordinate from the origin (in the + case that the GL_FOG_COORD_SRC is GL_FRAGMENT_DEPTH) or + the current fog coordinate (in the case that GL_FOG_COORD_SRC + is GL_FOG_COORD). + The equation for GL_LINEAR fog is + + + + f + = + + + + end + - + c + + + + + end + - + start + + + + + + + + The equation for GL_EXP fog is + + + + f + = + e + + + - + + + density + · + c + + + + + + + + + + The equation for GL_EXP2 fog is + + + + f + = + e + + + - + + + density + · + c + + + + + 2 + + + + + + Regardless of the fog mode, + f + is clamped to the range + + + + 0 + 1 + + + after it is computed. + Then, + if the GL is in RGBA color mode, + the fragment's red, green, and blue colors, represented by + + + C + r + + , + are replaced by + + + + + + + C + r + + + + + = + + + f + × + C + r + + + + + + + + 1 + - + f + + + × + C + f + + + + + + + + Fog does not affect a fragment's alpha component. + + + In color index mode, the fragment's color index + + + i + r + + + is replaced by + + + + + + + i + r + + + + + = + + i + r + + + + + + + 1 + - + f + + + × + i + f + + + + + + + + + + Notes + + GL_FOG_COORD_SRC is available only if the GL version is 1.4 or + greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value, + or if pname is GL_FOG_MODE and params is not an accepted value. + + + GL_INVALID_VALUE is generated if pname is GL_FOG_DENSITY + and params is negative. + + + GL_INVALID_OPERATION is generated if glFog + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glIsEnabled with argument GL_FOG + + + glGet with argument GL_FOG_COLOR + + + glGet with argument GL_FOG_INDEX + + + glGet with argument GL_FOG_DENSITY + + + glGet with argument GL_FOG_START + + + glGet with argument GL_FOG_END + + + glGet with argument GL_FOG_MODE + + + See Also + + glEnable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFogCoord.xml b/upstream-man-pages/man2/glFogCoord.xml new file mode 100644 index 0000000..8b0e93e --- /dev/null +++ b/upstream-man-pages/man2/glFogCoord.xml @@ -0,0 +1,109 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFogCoord + 3G + + + glFogCoord + set the current fog coordinates + + C Specification + + + void glFogCoordd + GLdouble coord + + + + + void glFogCoordf + GLfloat coord + + + + Parameters + + + coord + + + Specify the fog distance. + + + + + + C Specification + + + void glFogCoorddv + GLdouble * coord + + + + + void glFogCoordfv + GLfloat * coord + + + + Parameters + + + coord + + + Specifies a pointer to an array containing a single value representing the + fog distance. + + + + + + Description + + glFogCoord specifies the fog coordinate that is associated with each vertex and + the current raster position. The value specified is interpolated and used + in computing the fog color (see glFog). + + + Notes + + glFogCoord is available only if the GL version is 1.4 or greater. + + + The current fog coordinate can be updated at any time. In particular, + glFogCoord can be called between a call to glBegin and the corresponding + call to glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_FOG_COORD + + + See Also + + glFog, + glFogCoordPointer, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFogCoordPointer.xml b/upstream-man-pages/man2/glFogCoordPointer.xml new file mode 100644 index 0000000..6582601 --- /dev/null +++ b/upstream-man-pages/man2/glFogCoordPointer.xml @@ -0,0 +1,187 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFogCoordPointer + 3G + + + glFogCoordPointer + define an array of fog coordinates + + C Specification + + + void glFogCoordPointer + GLenum type + GLsizei stride + GLvoid * pointer + + + + + Parameters + + + type + + + Specifies the data type of each fog coordinate. + Symbolic constants + GL_FLOAT, + or GL_DOUBLE + are accepted. The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive fog coordinates. + If stride is 0, the array elements are understood + to be tightly packed. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first coordinate of the first fog coordinate in the + array. The initial value is 0. + + + + + + Description + + glFogCoordPointer specifies the location and data format of an array of fog coordinates + to use when rendering. type specifies the data type of each fog + coordinate, and stride specifies the byte stride from one fog coordinate to + the next, allowing vertices and attributes to be packed into a single array + or stored in separate arrays. + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a fog coordinate array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as fog coordinate vertex array + client-side state (GL_FOG_COORD_ARRAY_BUFFER_BINDING). + + + When a fog coordinate array is specified, + type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the fog coordinate array, call + glEnableClientState and glDisableClientState with the argument + GL_FOG_COORD_ARRAY. If + enabled, the fog coordinate array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. + + + Notes + + glFogCoordPointer is available only if the GL version is 1.4 or greater. + + + Fog coordinates are not supported for interleaved vertex array formats + (see glInterleavedArrays). + + + The fog coordinate array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glFogCoordPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glFogCoordPointer is typically implemented on the client side with no protocol. + + + Fog coordinate array parameters are client-side state and are + therefore not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. + + + Errors + + GL_INVALID_ENUM is generated if type is not either GL_FLOAT + or GL_DOUBLE. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_FOG_COORD_ARRAY + + + glGet with argument GL_FOG_COORD_ARRAY_STRIDE + + + glGet with argument GL_FOG_COORD_ARRAY_TYPE + + + glGet with argument GL_FOG_COORD_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_FOG_COORD_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoord, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFrontFace.xml b/upstream-man-pages/man2/glFrontFace.xml new file mode 100644 index 0000000..1af2a16 --- /dev/null +++ b/upstream-man-pages/man2/glFrontFace.xml @@ -0,0 +1,101 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFrontFace + 3G + + + glFrontFace + define front- and back-facing polygons + + C Specification + + + void glFrontFace + GLenum mode + + + + + Parameters + + + mode + + + Specifies the orientation of front-facing polygons. + GL_CW and GL_CCW are accepted. + The initial value is GL_CCW. + + + + + + Description + + In a scene composed entirely of opaque closed surfaces, + back-facing polygons are never visible. + Eliminating these invisible polygons has the obvious benefit + of speeding up the rendering of the image. + To enable and disable elimination of back-facing polygons, call glEnable + and glDisable with argument GL_CULL_FACE. + + + The projection of a polygon to window coordinates is said to have + clockwise winding if an imaginary object following the path + from its first vertex, + its second vertex, + and so on, + to its last vertex, + and finally back to its first vertex, + moves in a clockwise direction about the interior of the polygon. + The polygon's winding is said to be counterclockwise if the imaginary + object following the same path moves in a counterclockwise direction + about the interior of the polygon. + glFrontFace specifies whether polygons with clockwise winding in window coordinates, + or counterclockwise winding in window coordinates, + are taken to be front-facing. + Passing GL_CCW to mode selects counterclockwise polygons as + front-facing; + GL_CW selects clockwise polygons as front-facing. + By default, counterclockwise polygons are taken to be front-facing. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if glFrontFace + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_FRONT_FACE + + + See Also + + glCullFace, + glLightModel + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glFrustum.xml b/upstream-man-pages/man2/glFrustum.xml new file mode 100644 index 0000000..61bf9fa --- /dev/null +++ b/upstream-man-pages/man2/glFrustum.xml @@ -0,0 +1,420 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFrustum + 3G + + + glFrustum + multiply the current matrix by a perspective matrix + + C Specification + + + void glFrustum + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + GLdouble nearVal + GLdouble farVal + + + + + Parameters + + + left + right + + + Specify the coordinates for the left and right vertical clipping planes. + + + + + bottom + top + + + Specify the coordinates for the bottom and top horizontal clipping planes. + + + + + nearVal + farVal + + + Specify the distances to the near and far depth clipping planes. + Both distances must be positive. + + + + + + Description + + glFrustum describes a perspective matrix that produces a perspective projection. + The current matrix (see glMatrixMode) is multiplied by this matrix + and the result replaces the current matrix, as if + glMultMatrix were called with the following matrix + as its argument: + + + + + + + + + + + + + + + 2 + + nearVal + + + + + right + - + left + + + + + + + 0 + + + A + + + 0 + + + + + 0 + + + + + + + 2 + + nearVal + + + + + top + - + bottom + + + + + + + B + + + 0 + + + + + 0 + + + 0 + + + C + + + D + + + + + 0 + + + 0 + + + -1 + + + 0 + + + + + + + + + + + A + = + + + + right + + + left + + + + + right + - + left + + + + + + + + + + + B + = + + + + top + + + bottom + + + + + top + - + bottom + + + + + + + + + + + C + = + + - + + + + + farVal + + + nearVal + + + + + farVal + - + nearVal + + + + + + + + + + + + + D + = + + - + + + + + 2 + + farVal + + nearVal + + + + + farVal + - + nearVal + + + + + + + + + + + + Typically, the matrix mode is GL_PROJECTION, and + + + + left + bottom + + - + nearVal + + + + and + + + + right + top + + - + nearVal + + + + specify the points on the near clipping plane that are mapped + to the lower left and upper right corners of the window, + assuming that the eye is located at (0, 0, 0). + + + + - + farVal + + + specifies the location of the far clipping plane. + Both nearVal and farVal must be positive. + + + Use glPushMatrix and glPopMatrix to save and restore + the current matrix stack. + + + Notes + + Depth buffer precision is affected by the values specified for + nearVal and farVal. + The greater the ratio of farVal to nearVal is, + the less effective the depth buffer will be at distinguishing between + surfaces that are near each other. + If + + + + + + r + = + + farVal + nearVal + + + + + + roughly + + + + log + 2 + + + + r + + + + bits of depth buffer precision are lost. + Because + r + approaches infinity as nearVal approaches 0, + nearVal must never be set to 0. + + + Errors + + GL_INVALID_VALUE is generated if nearVal or farVal is not + positive, or if left = right, or bottom = top, + or near = far. + + + GL_INVALID_OPERATION is generated if glFrustum + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + glGet with argument GL_COLOR_MATRIX + + + See Also + + glOrtho, + glMatrixMode, + glMultMatrix, + glPushMatrix, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGenBuffers.xml b/upstream-man-pages/man2/glGenBuffers.xml new file mode 100644 index 0000000..c8c9bb1 --- /dev/null +++ b/upstream-man-pages/man2/glGenBuffers.xml @@ -0,0 +1,100 @@ + + + + + + + 2005 + Sams Publishing + + + glGenBuffers + 3G + + + glGenBuffers + generate buffer object names + + C Specification + + + void glGenBuffers + GLsizei n + GLuint * buffers + + + + Parameters + + + n + + + Specifies the number of buffer object names to be generated. + + + + + buffers + + + Specifies an array in which the generated buffer object names are stored. + + + + + + Description + + glGenBuffers returns n buffer object names in buffers. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenBuffers. + + + Buffer object names returned by a call to glGenBuffers are not returned by + subsequent calls, unless they are first deleted with + glDeleteBuffers. + + + No buffer objects are associated with the returned buffer object names until they are first bound by calling + glBindBuffer. + + + Notes + + glGenBuffers is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glGenBuffers is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsBuffer + + + See Also + + glBindBuffer, + glDeleteBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGenLists.xml b/upstream-man-pages/man2/glGenLists.xml new file mode 100644 index 0000000..e9dc86e --- /dev/null +++ b/upstream-man-pages/man2/glGenLists.xml @@ -0,0 +1,108 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGenLists + 3G + + + glGenLists + generate a contiguous set of empty display lists + + C Specification + + + GLuint glGenLists + GLsizei range + + + + Parameters + + + range + + + Specifies the number of contiguous empty display lists + to be generated. + + + + + + Description + + glGenLists has one argument, range. + It returns an integer n such that range contiguous + empty display lists, + named + n, + + + + n + + + 1 + + , + + + ... + , + + + + n + + + range + - + 1 + + , + are created. + If range is 0, + if there is no group of range contiguous names available, + or if any error is generated, + no display lists are generated, + and 0 is returned. + + + Errors + + GL_INVALID_VALUE is generated if range is negative. + + + GL_INVALID_OPERATION is generated if glGenLists + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glIsList + + + See Also + + glCallList, + glCallLists, + glDeleteLists, + glNewList + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGenQueries.xml b/upstream-man-pages/man2/glGenQueries.xml new file mode 100644 index 0000000..5b2bc7b --- /dev/null +++ b/upstream-man-pages/man2/glGenQueries.xml @@ -0,0 +1,100 @@ + + + + + + + 2005 + Sams Publishing + + + glGenQueries + 3G + + + glGenQueries + generate query object names + + C Specification + + + void glGenQueries + GLsizei n + GLuint * ids + + + + Parameters + + + n + + + Specifies the number of query object names to be generated. + + + + + ids + + + Specifies an array in which the generated query object names are stored. + + + + + + Description + + glGenQueries returns n query object names in ids. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenQueries. + + + Query object names returned by a call to glGenQueries are not returned by + subsequent calls, unless they are first deleted with + glDeleteQueries. + + + No query objects are associated with the returned query object names until they are first used by calling + glBeginQuery. + + + Notes + + glGenQueries is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glGenQueries is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsQuery + + + See Also + + glBeginQuery, + glDeleteQueries, + glEndQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGenTextures.xml b/upstream-man-pages/man2/glGenTextures.xml new file mode 100644 index 0000000..bf97c33 --- /dev/null +++ b/upstream-man-pages/man2/glGenTextures.xml @@ -0,0 +1,108 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGenTextures + 3G + + + glGenTextures + generate texture names + + C Specification + + + void glGenTextures + GLsizei n + GLuint * textures + + + + Parameters + + + n + + + Specifies the number of texture names to be generated. + + + + + textures + + + Specifies an array in which the generated texture names are stored. + + + + + + Description + + glGenTextures returns n texture names in textures. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenTextures. + + + The generated textures have no dimensionality; they assume the dimensionality + of the texture target to which they are first bound + (see glBindTexture). + + + Texture names returned by a call to glGenTextures are not returned by + subsequent calls, unless they are first deleted with + glDeleteTextures. + + + Notes + + glGenTextures is available only if the GL version is 1.1 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glGenTextures is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsTexture + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glDeleteTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGet.xml b/upstream-man-pages/man2/glGet.xml new file mode 100644 index 0000000..e8ca919 --- /dev/null +++ b/upstream-man-pages/man2/glGet.xml @@ -0,0 +1,4897 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGet + 3G + + + glGet + return the value or values of a selected parameter + + C Specification + + + void glGetBooleanv + GLenum pname + GLboolean * params + + + + C Specification + + + void glGetDoublev + GLenum pname + GLdouble * params + + + + C Specification + + + void glGetFloatv + GLenum pname + GLfloat * params + + + + C Specification + + + void glGetIntegerv + GLenum pname + GLint * params + + + + + Parameters + + + pname + + + Specifies the parameter value to be returned. + The symbolic constants in the list below are accepted. + + + + + params + + + Returns the value or values of the specified parameter. + + + + + + Description + + These four commands return values for simple state variables in GL. + pname is a symbolic constant indicating the state variable to be returned, + and params is a pointer to an array of the indicated type in + which to place the returned data. + + + Type conversion is performed if params has a different type than + the state variable value being requested. + If glGetBooleanv is called, + a floating-point (or integer) value is converted to GL_FALSE if + and only if it is 0.0 (or 0). + Otherwise, + it is converted to GL_TRUE. + If glGetIntegerv is called, boolean values are returned as + GL_TRUE or GL_FALSE, and most floating-point values are + rounded to the nearest integer value. Floating-point colors and + normals, however, are returned with a linear mapping that maps 1.0 to + the most positive representable integer value + and + + + -1.0 + + to the most negative representable integer value. + If glGetFloatv or glGetDoublev is called, + boolean values are returned as GL_TRUE or GL_FALSE, + and integer values are converted to floating-point values. + + + The following symbolic constants are accepted by pname: + + + + GL_ACCUM_ALPHA_BITS + + + + + params returns one value, + the number of alpha bitplanes in the accumulation buffer. + + + + + GL_ACCUM_BLUE_BITS + + + + + params returns one value, + the number of blue bitplanes in the accumulation buffer. + + + + + GL_ACCUM_CLEAR_VALUE + + + + + params returns four values: + the red, green, blue, and alpha values used to clear the accumulation buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 0, 0, 0). + See glClearAccum. + + + + + GL_ACCUM_GREEN_BITS + + + + + params returns one value, + the number of green bitplanes in the accumulation buffer. + + + + + GL_ACCUM_RED_BITS + + + + + params returns one value, + the number of red bitplanes in the accumulation buffer. + + + + + GL_ACTIVE_TEXTURE + + + + + params returns a single value indicating the active multitexture unit. + The initial value is GL_TEXTURE0. + See glActiveTexture. + + + + + GL_ALIASED_POINT_SIZE_RANGE + + + + + params returns two values, + the smallest and largest supported sizes for aliased points. + + + + + GL_ALIASED_LINE_WIDTH_RANGE + + + + + params returns two values, + the smallest and largest supported widths for aliased lines. + + + + + GL_ALPHA_BIAS + + + + + params returns one value, + the alpha bias factor used during pixel transfers. The initial value is 0. + See glPixelTransfer. + + + + + GL_ALPHA_BITS + + + + + params returns one value, + the number of alpha bitplanes in each color buffer. + + + + + GL_ALPHA_SCALE + + + + + params returns one value, + the alpha scale factor used + during pixel transfers. The initial value is 1. + See glPixelTransfer. + + + + + GL_ALPHA_TEST + + + + + params returns a single boolean value indicating whether alpha testing + of fragments is enabled. The initial value is GL_FALSE. + See glAlphaFunc. + + + + + GL_ALPHA_TEST_FUNC params returns one value, + + + + + the symbolic name of the alpha test function. The initial value is + GL_ALWAYS. + See glAlphaFunc. + + + + + GL_ALPHA_TEST_REF + + + + + params returns one value, + the reference value for the alpha test. The initial value is 0. + See glAlphaFunc. + An integer value, + if requested, + is linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer value. + + + + + GL_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_ARRAY_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_ATTRIB_STACK_DEPTH + + + + + params returns one value, + the depth of the attribute stack. + If the stack is empty, + 0 is returned. The initial value is 0. + See glPushAttrib. + + + + + GL_AUTO_NORMAL + + + + + params returns a single boolean value indicating whether 2D map evaluation + automatically generates surface normals. The initial value is GL_FALSE. + See glMap2. + + + + + GL_AUX_BUFFERS + + + + + params returns one value, + the number of auxiliary color buffers available. + + + + + GL_BLEND + + + + + params returns a single boolean value indicating whether blending is + enabled. The initial value is GL_FALSE. + See glBlendFunc. + + + + + GL_BLEND_COLOR + + + + + params returns four values, + the red, green, blue, and alpha values which are the components of + the blend color. + See glBlendColor. + + + + + GL_BLEND_DST_ALPHA + + + + + params returns one value, + the symbolic constant identifying the alpha destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_DST_RGB + + + + + params returns one value, + the symbolic constant identifying the RGB destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_EQUATION_RGB + + + + + params returns one value, a symbolic constant indicating whether + the RGB blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. + + + + + GL_BLEND_EQUATION_ALPHA + + + + + params returns one value, a symbolic constant indicating whether + the Alpha blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. + + + + + GL_BLEND_SRC_ALPHA + + + + + params returns one value, + the symbolic constant identifying the alpha source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_SRC_RGB + + + + + params returns one value, + the symbolic constant identifying the RGB source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLUE_BIAS + + + + + params returns one value, + the blue bias factor used during pixel transfers. The initial value is 0. + See glPixelTransfer. + + + + + GL_BLUE_BITS + + + + + params returns one value, + the number of blue bitplanes in each color buffer. + + + + + GL_BLUE_SCALE + + + + + params returns one value, + the blue scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. + + + + + GL_CLIENT_ACTIVE_TEXTURE + + + + + params returns a single integer value indicating the current client active + multitexture unit. The initial value is GL_TEXTURE0. + See glClientActiveTexture. + + + + + GL_CLIENT_ATTRIB_STACK_DEPTH + + + + + params returns one value indicating the depth of the + attribute stack. The initial value is 0. + See glPushClientAttrib. + + + + + GL_CLIP_PLANEi + + + + + params returns a single boolean value indicating whether the specified + clipping plane is enabled. The initial value is GL_FALSE. + See glClipPlane. + + + + + GL_COLOR_ARRAY + + + + + params returns a single boolean value indicating whether the color array is enabled. The initial value is GL_FALSE. + See glColorPointer. + + + + + GL_COLOR_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the color array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glColorPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_COLOR_ARRAY_SIZE + + + + + params returns one value, + the number of components per color in the color array. The initial value + is 4. + See glColorPointer. + + + + + GL_COLOR_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive colors in the color array. The initial + value is 0. + See glColorPointer. + + + + + GL_COLOR_ARRAY_TYPE + + + + + params returns one value, + the data type of each component in the color array. The initial value + is GL_FLOAT. + See glColorPointer. + + + + + GL_COLOR_CLEAR_VALUE + + + + + params returns four values: + the red, green, blue, and alpha values used to clear the color buffers. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 0, 0, 0). + See glClearColor. + + + + + GL_COLOR_LOGIC_OP + + + + + params returns a single boolean value indicating whether a fragment's + RGBA color values are merged into the framebuffer using a logical + operation. The initial value is GL_FALSE. + See glLogicOp. + + + + + GL_COLOR_MATERIAL + + + + + params returns a single boolean value indicating whether one or more + material parameters are tracking the current color. The initial value + is GL_FALSE. + See glColorMaterial. + + + + + GL_COLOR_MATERIAL_FACE + + + + + params returns one value, + a symbolic constant indicating which materials have a parameter that is + tracking the current color. The initial value is GL_FRONT_AND_BACK. + See glColorMaterial. + + + + + GL_COLOR_MATERIAL_PARAMETER + + + + + params returns one value, + a symbolic constant indicating which material parameters are + tracking the current color. The initial value is + GL_AMBIENT_AND_DIFFUSE. + See glColorMaterial. + + + + + GL_COLOR_MATRIX + + + + + params returns sixteen values: + the color matrix on the top of the color matrix stack. Initially + this matrix is the identity matrix. + See glPushMatrix. + + + + + GL_COLOR_MATRIX_STACK_DEPTH + + + + + params returns one value, + the maximum supported depth of the projection matrix stack. The value must + be at least 2. + See glPushMatrix. + + + + + GL_COLOR_SUM + + + + + params returns a single boolean value indicating whether primary and + secondary color sum is enabled. + See glSecondaryColor. + + + + + GL_COLOR_TABLE + + + + + params returns a single boolean value indicating whether the color table + lookup is enabled. + See glColorTable. + + + + + GL_COLOR_WRITEMASK + + + + + params returns four boolean values: + the red, green, blue, and alpha write enables for the color + buffers. The initial value is (GL_TRUE, GL_TRUE, + GL_TRUE, GL_TRUE). + See glColorMask. + + + + + GL_COMPRESSED_TEXTURE_FORMATS + + + + + params returns a list of symbolic + constants of length GL_NUM_COMPRESSED_TEXTURE_FORMATS + indicating which compressed texture formats are available. + See glCompressedTexImage2D. + + + + + GL_CONVOLUTION_1D + + + + + params returns a single boolean value indicating whether 1D convolution + is enabled. The initial value is GL_FALSE. + See glConvolutionFilter1D. + + + + + GL_CONVOLUTION_2D + + + + + params returns a single boolean value indicating whether 2D convolution + is enabled. The initial value is GL_FALSE. + See glConvolutionFilter2D. + + + + + GL_CULL_FACE + + + + + params returns a single boolean value indicating whether polygon culling + is enabled. The initial value is GL_FALSE. + See glCullFace. + + + + + GL_CULL_FACE_MODE + + + + + params returns one value, + a symbolic constant indicating which polygon faces are to be + culled. The initial value is GL_BACK. + See glCullFace. + + + + + GL_CURRENT_COLOR + + + + + params returns four values: + the red, green, blue, and alpha values of the current color. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer value. + The initial value is (1, 1, 1, 1). + See glColor. + + + + + GL_CURRENT_FOG_COORD + + + + + params returns one value, the current fog coordinate. The initial value + is 0. + See glFogCoord. + + + + + GL_CURRENT_INDEX + + + + + params returns one value, + the current color index. The initial value is 1. + See glIndex. + + + + + GL_CURRENT_NORMAL + + + + + params returns three values: + the x, y, and z values of the current normal. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer value. + The initial value is (0, 0, 1). + See glNormal. + + + + + GL_CURRENT_PROGRAM + + + + + params returns one value, + the name of the program object that is currently active, or 0 if no program object is active. + See glUseProgram. + + + + + GL_CURRENT_RASTER_COLOR + + + + + params returns four values: + the red, green, blue, and alpha color values of the current raster position. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (1, 1, 1, 1). + See glRasterPos. + + + + + GL_CURRENT_RASTER_DISTANCE + + + + + params returns one value, the distance from the eye to the current + raster position. The initial value is 0. + See glRasterPos. + + + + + GL_CURRENT_RASTER_INDEX + + + + + params returns one value, + the color index of the current raster position. The initial value is 1. + See glRasterPos. + + + + + GL_CURRENT_RASTER_POSITION + + + + + params returns four values: + the x, y, z, and w components of the current + raster position. + x, y, and z are in window coordinates, + and w is in clip coordinates. The initial value is (0, 0, 0, 1). + See glRasterPos. + + + + + GL_CURRENT_RASTER_POSITION_VALID + + + + + params returns a single boolean value indicating whether the current + raster position is valid. The initial value is GL_TRUE. + See glRasterPos. + + + + + GL_CURRENT_RASTER_SECONDARY_COLOR + + + + + params returns four values: + the red, green, blue, and alpha secondary color values of the current raster position. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (1, 1, 1, 1). + See glRasterPos. + + + + + GL_CURRENT_RASTER_TEXTURE_COORDS + + + + + params returns four values: the s, t, r, and q + texture coordinates of the current raster position. The initial value is (0, 0, 0, 1). + See glRasterPos and glMultiTexCoord. + + + + + GL_CURRENT_SECONDARY_COLOR + + + + + params returns four values: the red, green, blue, and alpha values of the + current secondary color. Integer values, if requested, are linearly mapped + from the internal floating-point representation such that 1.0 returns the + most positive representable integer value, and + + + -1.0 + + returns the most + negative representable integer value. The initial value is (0, 0, 0, 0). + See glSecondaryColor. + + + + + GL_CURRENT_TEXTURE_COORDS + + + + + params returns four values: + the s, t, r, and q current texture + coordinates. The initial value is (0, 0, 0, 1). + See glMultiTexCoord. + + + + + GL_DEPTH_BIAS + + + + + params returns one value, + the depth bias factor used during pixel transfers. The initial value is 0. + See glPixelTransfer. + + + + + GL_DEPTH_BITS + + + + + params returns one value, + the number of bitplanes in the depth buffer. + + + + + GL_DEPTH_CLEAR_VALUE + + + + + params returns one value, + the value that is used to clear the depth buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is 1. + See glClearDepth. + + + + + GL_DEPTH_FUNC + + + + + params returns one value, + the symbolic constant that indicates the depth comparison + function. The initial value is GL_LESS. + See glDepthFunc. + + + + + GL_DEPTH_RANGE + + + + + params returns two values: + the near and far mapping limits for the depth buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 1). + See glDepthRange. + + + + + GL_DEPTH_SCALE + + + + + params returns one value, + the depth scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. + + + + + GL_DEPTH_TEST + + + + + params returns a single boolean value indicating whether depth testing + of fragments is enabled. The initial value is GL_FALSE. + See glDepthFunc and glDepthRange. + + + + + GL_DEPTH_WRITEMASK + + + + + params returns a single boolean value indicating if the depth buffer + is enabled for writing. The initial value is GL_TRUE. + See glDepthMask. + + + + + GL_DITHER + + + + + params returns a single boolean value indicating whether dithering of + fragment colors and indices is enabled. The initial value is GL_TRUE. + + + + + GL_DOUBLEBUFFER + + + + + params returns a single boolean value indicating whether double buffering + is supported. + + + + + GL_DRAW_BUFFER + + + + + params returns one value, + a symbolic constant indicating which buffers are being drawn to. + See glDrawBuffer. The initial value is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. + + + + + GL_DRAW_BUFFERi + + + + + params returns one value, + a symbolic constant indicating which buffers are being drawn to by the corresponding output color. + See glDrawBuffers. + The initial value of GL_DRAW_BUFFER0 is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. The + initial values of draw buffers for all other output colors is GL_NONE. + + + + + GL_EDGE_FLAG + + + + + params returns a single boolean value indicating whether the current + edge flag is GL_TRUE or GL_FALSE. The initial value is GL_TRUE. + See glEdgeFlag. + + + + + GL_EDGE_FLAG_ARRAY + + + + + params returns a single boolean value indicating whether the edge + flag array is enabled. The initial value is GL_FALSE. + See glEdgeFlagPointer. + + + + + GL_EDGE_FLAG_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the edge flag array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glEdgeFlagPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_EDGE_FLAG_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive edge flags in the edge flag + array. The initial value is 0. + See glEdgeFlagPointer. + + + + + GL_ELEMENT_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_ELEMENT_ARRAY_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_FEEDBACK_BUFFER_SIZE + + + + + params returns one value, the size of the feedback buffer. + See glFeedbackBuffer. + + + + + GL_FEEDBACK_BUFFER_TYPE + + + + + params returns one value, the type of the feedback buffer. + See glFeedbackBuffer. + + + + + GL_FOG + + + + + params returns a single boolean value indicating whether fogging is + enabled. The initial value is GL_FALSE. + See glFog. + + + + + GL_FOG_COORD_ARRAY + + + + + params returns a single boolean value indicating whether the fog coordinate array is enabled. The initial value is GL_FALSE. + See glFogCoordPointer. + + + + + GL_FOG_COORD_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the fog coordinate array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glFogCoordPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_FOG_COORD_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive fog coordinates in the fog coordinate + array. The initial value is 0. + See glFogCoordPointer. + + + + + GL_FOG_COORD_ARRAY_TYPE + + + + + params returns one value, the type of the fog coordinate array. + The initial value is GL_FLOAT. + See glFogCoordPointer. + + + + + GL_FOG_COORD_SRC + + + + + params returns one value, a symbolic constant indicating the source of the fog coordinate. + The initial value is GL_FRAGMENT_DEPTH. + See glFog. + + + + + GL_FOG_COLOR + + + + + params returns four values: + the red, green, blue, and alpha components of the fog color. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 0, 0, 0). + See glFog. + + + + + GL_FOG_DENSITY + + + + + params returns one value, + the fog density parameter. The initial value is 1. + See glFog. + + + + + GL_FOG_END + + + + + params returns one value, + the end factor for the linear fog equation. The initial value is 1. + See glFog. + + + + + GL_FOG_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the fog hint. The initial value + is GL_DONT_CARE. + See glHint. + + + + + GL_FOG_INDEX + + + + + params returns one value, + the fog color index. The initial value is 0. + See glFog. + + + + + GL_FOG_MODE + + + + + params returns one value, + a symbolic constant indicating which fog equation is selected. The initial + value is GL_EXP. + See glFog. + + + + + GL_FOG_START + + + + + params returns one value, + the start factor for the linear fog equation. The initial value is 0. + See glFog. + + + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the derivative accuracy hint + for fragment shaders. The initial value + is GL_DONT_CARE. + See glHint. + + + + + GL_FRONT_FACE + + + + + params returns one value, + a symbolic constant indicating whether clockwise or counterclockwise + polygon winding is treated as front-facing. The initial value is + GL_CCW. + See glFrontFace. + + + + + GL_GENERATE_MIPMAP_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the mipmap generation filtering + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_GREEN_BIAS + + + + + params returns one value, + the green bias factor used during pixel transfers. The initial value is 0. + + + + + GL_GREEN_BITS + + + + + params returns one value, + the number of green bitplanes in each color buffer. + + + + + GL_GREEN_SCALE + + + + + params returns one value, + the green scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. + + + + + GL_HISTOGRAM + + + + + params returns a single boolean value indicating whether histogram is + enabled. The initial value is GL_FALSE. + See glHistogram. + + + + + GL_INDEX_ARRAY + + + + + params returns a single boolean value indicating whether the color + index array is enabled. The initial value is GL_FALSE. + See glIndexPointer. + + + + + GL_INDEX_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the color index array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glIndexPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_INDEX_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive color indexes in the color index + array. The initial value is 0. + See glIndexPointer. + + + + + GL_INDEX_ARRAY_TYPE + + + + + params returns one value, + the data type of indexes in the color index array. The initial value is + GL_FLOAT. + See glIndexPointer. + + + + + GL_INDEX_BITS + + + + + params returns one value, + the number of bitplanes in each color index buffer. + + + + + GL_INDEX_CLEAR_VALUE + + + + + params returns one value, + the color index used to clear the color index buffers. The initial value + is 0. + See glClearIndex. + + + + + GL_INDEX_LOGIC_OP + + + + + params returns a single boolean value indicating whether a fragment's index + values are merged into the framebuffer using a logical + operation. The initial value is GL_FALSE. + See glLogicOp. + + + + + GL_INDEX_MODE + + + + + params returns a single boolean value indicating whether the GL is in + color index mode (GL_TRUE) or RGBA mode (GL_FALSE). + + + + + GL_INDEX_OFFSET + + + + + params returns one value, + the offset added to color and stencil indices during pixel + transfers. The initial value is 0. + See glPixelTransfer. + + + + + GL_INDEX_SHIFT + + + + + params returns one value, + the amount that color and stencil indices are shifted during pixel + transfers. The initial value is 0. + See glPixelTransfer. + + + + + GL_INDEX_WRITEMASK + + + + + params returns one value, + a mask indicating which bitplanes of each color index buffer can be + written. The initial value is all 1's. + See glIndexMask. + + + + + GL_LIGHTi + + + + + params returns a single boolean value indicating whether the specified + light is enabled. The initial value is GL_FALSE. + See glLight and glLightModel. + + + + + GL_LIGHTING + + + + + params returns a single boolean value indicating whether lighting is + enabled. The initial value is GL_FALSE. + See glLightModel. + + + + + GL_LIGHT_MODEL_AMBIENT + + + + + params returns four values: + the red, green, blue, and alpha components of the ambient intensity of + the entire scene. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0.2, 0.2, 0.2, 1.0). + See glLightModel. + + + + + GL_LIGHT_MODEL_COLOR_CONTROL + + + + + params returns single enumerated value indicating whether specular + reflection calculations are separated from normal lighting computations. + The initial value is GL_SINGLE_COLOR. + + + + + GL_LIGHT_MODEL_LOCAL_VIEWER + + + + + params returns a single boolean value indicating whether specular reflection + calculations treat the viewer as being local to the scene. The initial + value is GL_FALSE. + See glLightModel. + + + + + GL_LIGHT_MODEL_TWO_SIDE + + + + + params returns a single boolean value indicating whether separate materials + are used to compute lighting for front- and back-facing + polygons. The initial value is GL_FALSE. + See glLightModel. + + + + + GL_LINE_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + lines is enabled. The initial value is GL_FALSE. + See glLineWidth. + + + + + GL_LINE_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the line antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_LINE_STIPPLE + + + + + params returns a single boolean value indicating whether stippling of lines + is enabled. The initial value is GL_FALSE. + See glLineStipple. + + + + + GL_LINE_STIPPLE_PATTERN + + + + + params returns one value, + the 16-bit line stipple pattern. The initial value is all 1's. + See glLineStipple. + + + + + GL_LINE_STIPPLE_REPEAT + + + + + params returns one value, + the line stipple repeat factor. The initial value is 1. + See glLineStipple. + + + + + GL_LINE_WIDTH + + + + + params returns one value, + the line width as specified with glLineWidth. The initial value is + 1. + + + + + GL_LINE_WIDTH_GRANULARITY + + + + + params returns one value, + the width difference between adjacent supported widths for antialiased lines. + See glLineWidth. + + + + + GL_LINE_WIDTH_RANGE + + + + + params returns two values: + the smallest and largest supported widths for antialiased + lines. + See glLineWidth. + + + + + GL_LIST_BASE + + + + + params returns one value, + the base offset added to all names in arrays presented to + glCallLists. The initial value is 0. + See glListBase. + + + + + GL_LIST_INDEX + + + + + params returns one value, + the name of the display list currently under construction. + 0 is returned if no display list is currently under + construction. The initial value is 0. + See glNewList. + + + + + GL_LIST_MODE + + + + + params returns one value, + a symbolic constant indicating the construction mode of the display list + currently under construction. The initial value is 0. + See glNewList. + + + + + GL_LOGIC_OP_MODE + + + + + params returns one value, + a symbolic constant indicating the selected logic operation + mode. The initial value is GL_COPY. + See glLogicOp. + + + + + GL_MAP1_COLOR_4 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates colors. The initial value is GL_FALSE. + See glMap1. + + + + + GL_MAP1_GRID_DOMAIN + + + + + params returns two values: + the endpoints of the 1D map's grid domain. The initial value is (0, 1). + See glMapGrid. + + + + + GL_MAP1_GRID_SEGMENTS + + + + + params returns one value, + the number of partitions in the 1D map's grid domain. The initial value + is 1. + See glMapGrid. + + + + + GL_MAP1_INDEX + + + + + params returns a single boolean value indicating whether + 1D evaluation generates color indices. The initial value is GL_FALSE. + See glMap1. + + + + + GL_MAP1_NORMAL + + + + + params returns a single boolean value indicating whether + 1D evaluation generates normals. The initial value is GL_FALSE. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_1 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates 1D texture coordinates. The initial value is + GL_FALSE. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_2 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates 2D texture coordinates. The initial value is + GL_FALSE. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_3 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates 3D texture coordinates. The initial value is + GL_FALSE. + See glMap1. + + + + + GL_MAP1_TEXTURE_COORD_4 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates 4D texture coordinates. The initial value is + GL_FALSE. + See glMap1. + + + + + GL_MAP1_VERTEX_3 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates 3D vertex coordinates. The initial value is + GL_FALSE. + See glMap1. + + + + + GL_MAP1_VERTEX_4 + + + + + params returns a single boolean value indicating whether + 1D evaluation generates 4D vertex coordinates. The initial value is + GL_FALSE. + See glMap1. + + + + + GL_MAP2_COLOR_4 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates colors. The initial value is GL_FALSE. + See glMap2. + + + + + GL_MAP2_GRID_DOMAIN + + + + + params returns four values: + the endpoints of the 2D map's + i + and + j + grid domains. The initial value + is (0,1; 0,1). + See glMapGrid. + + + + + GL_MAP2_GRID_SEGMENTS + + + + + params returns two values: + the number of partitions in the 2D map's + i + and + j + grid + domains. The initial value is (1,1). + See glMapGrid. + + + + + GL_MAP2_INDEX + + + + + params returns a single boolean value indicating whether + 2D evaluation generates color indices. The initial value is GL_FALSE. + See glMap2. + + + + + GL_MAP2_NORMAL + + + + + params returns a single boolean value indicating whether + 2D evaluation generates normals. The initial value is GL_FALSE. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_1 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates 1D texture coordinates. The initial value is + GL_FALSE. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_2 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates 2D texture coordinates. The initial value is + GL_FALSE. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_3 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates 3D texture coordinates. The initial value is + GL_FALSE. + See glMap2. + + + + + GL_MAP2_TEXTURE_COORD_4 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates 4D texture coordinates. The initial value is + GL_FALSE. + See glMap2. + + + + + GL_MAP2_VERTEX_3 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates 3D vertex coordinates. The initial value is + GL_FALSE. + See glMap2. + + + + + GL_MAP2_VERTEX_4 + + + + + params returns a single boolean value indicating whether + 2D evaluation generates 4D vertex coordinates. The initial value is + GL_FALSE. + See glMap2. + + + + + GL_MAP_COLOR + + + + + params returns a single boolean value indicating if colors and + color indices are to be replaced by table lookup during pixel + transfers. The initial value is GL_FALSE. + See glPixelTransfer. + + + + + GL_MAP_STENCIL + + + + + params returns a single boolean value indicating if stencil indices + are to be replaced by table lookup during pixel transfers. The initial + value is GL_FALSE. + See glPixelTransfer. + + + + + GL_MATRIX_MODE + + + + + params returns one value, + a symbolic constant indicating which matrix stack is currently the + target of all matrix operations. The initial value is GL_MODELVIEW. + See glMatrixMode. + + + + + GL_MAX_3D_TEXTURE_SIZE + + + + + params returns one value, + a rough estimate of the largest 3D texture that the GL can handle. + The value must be at least 16. + If the GL version is 1.2 or greater, use + GL_PROXY_TEXTURE_3D to determine if a texture is too large. + See glTexImage3D. + + + + + GL_MAX_CLIENT_ATTRIB_STACK_DEPTH + + + + + params returns one value indicating the maximum supported depth + of the client attribute stack. + See glPushClientAttrib. + + + + + GL_MAX_ATTRIB_STACK_DEPTH + + + + + params returns one value, + the maximum supported depth of the attribute stack. The value must be + at least 16. + See glPushAttrib. + + + + + GL_MAX_CLIP_PLANES + + + + + params returns one value, + the maximum number of application-defined clipping planes. The value must be at least 6. + See glClipPlane. + + + + + GL_MAX_COLOR_MATRIX_STACK_DEPTH + + + + + params returns one value, the maximum supported depth of the color matrix + stack. The value must be at least 2. + See glPushMatrix. + + + + + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader and the fragment processor combined. + If both the vertex shader and the fragment processing stage access the same texture image + unit, then that counts as using two texture image units against this limit. + The value must be at least 2. + See glActiveTexture. + + + + + GL_MAX_CUBE_MAP_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest cube-map texture that + the GL can handle. The value must be at least 16. + If the GL version is 1.3 or greater, use GL_PROXY_TEXTURE_CUBE_MAP + to determine if a texture is too large. + See glTexImage2D. + + + + + GL_MAX_DRAW_BUFFERS + + + + + params returns one value, the maximum number + of simultaneous output colors allowed from a fragment shader using the + gl_FragData built-in array. The value must be at least 1. + See glDrawBuffers. + + + + + GL_MAX_ELEMENTS_INDICES + + + + + params returns one value, + the recommended maximum number of vertex array indices. + See glDrawRangeElements. + + + + + GL_MAX_ELEMENTS_VERTICES + + + + + params returns one value, + the recommended maximum number of vertex array vertices. + See glDrawRangeElements. + + + + + GL_MAX_EVAL_ORDER + + + + + params returns one value, + the maximum equation order supported by 1D and 2D + evaluators. The value must be at least 8. + See glMap1 and glMap2. + + + + + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a fragment shader. The value must be at least 64. + See glUniform. + + + + + GL_MAX_LIGHTS + + + + + params returns one value, + the maximum number of lights. The value must be at least 8. + See glLight. + + + + + GL_MAX_LIST_NESTING + + + + + params returns one value, + the maximum recursion depth allowed during display-list + traversal. The value must be at least 64. + See glCallList. + + + + + GL_MAX_MODELVIEW_STACK_DEPTH + + + + + params returns one value, + the maximum supported depth of the modelview matrix stack. The value must + be at least 32. + See glPushMatrix. + + + + + GL_MAX_NAME_STACK_DEPTH + + + + + params returns one value, + the maximum supported depth of the selection name stack. The value must be at least 64. + See glPushName. + + + + + GL_MAX_PIXEL_MAP_TABLE + + + + + params returns one value, + the maximum supported size of a glPixelMap lookup table. + The value must be at least 32. + See glPixelMap. + + + + + GL_MAX_PROJECTION_STACK_DEPTH + + + + + params returns one value, the maximum supported depth of the projection + matrix stack. The value must be at least 2. + See glPushMatrix. + + + + + GL_MAX_TEXTURE_COORDS + + + + + params returns one value, + the maximum number of texture coordinate sets available to vertex and fragment shaders. + The value must be at least 2. + See glActiveTexture and + glClientActiveTexture. + + + + + GL_MAX_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the fragment shader. + The value must be at least 2. + See glActiveTexture. + + + + + GL_MAX_TEXTURE_LOD_BIAS + + + + + params returns one value, + the maximum, absolute value of the texture level-of-detail bias. The + value must be at least 4. + + + + + GL_MAX_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest texture that + the GL can handle. The value must be at least 64. + If the GL version is 1.1 or greater, use + GL_PROXY_TEXTURE_1D or GL_PROXY_TEXTURE_2D + to determine if a texture is too large. + See glTexImage1D and glTexImage2D. + + + + + GL_MAX_TEXTURE_STACK_DEPTH + + + + + params returns one value, + the maximum supported depth of the texture matrix stack. The value must be at least 2. + See glPushMatrix. + + + + + GL_MAX_TEXTURE_UNITS + + + + + params returns a single value indicating the number of conventional + texture units supported. Each conventional texture unit includes both a texture coordinate set + and a texture image unit. Conventional texture units may be used for fixed-function (non-shader) + rendering. The value must be at least 2. Additional texture coordinate sets and texture + image units may be accessed from vertex and fragment shaders. + See glActiveTexture and + glClientActiveTexture. + + + + + GL_MAX_VARYING_FLOATS + + + + + params returns one value, + the maximum number of interpolators available for processing varying variables used by + vertex and fragment shaders. This value represents the number of individual floating-point + values that can be interpolated; varying variables declared as vectors, matrices, and arrays + will all consume multiple interpolators. The value must be at least 32. + + + + + GL_MAX_VERTEX_ATTRIBS + + + + + params returns one value, + the maximum number of 4-component generic vertex attributes accessible to a vertex shader. + The value must be at least 16. + See glVertexAttrib. + + + + + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader. The value may be 0. + See glActiveTexture. + + + + + GL_MAX_VERTEX_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a vertex shader. The value must be at least 512. + See glUniform. + + + + + GL_MAX_VIEWPORT_DIMS + + + + + params returns two values: + the maximum supported width and height of the viewport. + These must be at least as large as the visible dimensions of the display + being rendered to. + See glViewport. + + + + + GL_MINMAX + + + + + params returns a single boolean value indicating whether pixel minmax + values are computed. The initial value is GL_FALSE. + See glMinmax. + + + + + GL_MODELVIEW_MATRIX + + + + + params returns sixteen values: + the modelview matrix on the top of the modelview matrix stack. Initially + this matrix is the identity matrix. + See glPushMatrix. + + + + + GL_MODELVIEW_STACK_DEPTH + + + + + params returns one value, + the number of matrices on the modelview matrix stack. + The initial value is 1. + See glPushMatrix. + + + + + GL_NAME_STACK_DEPTH + + + + + params returns one value, + the number of names on the selection name stack. The initial value is 0. + See glPushName. + + + + + GL_NORMAL_ARRAY + + + + + params returns a single boolean value, indicating whether the normal + array is enabled. The initial value is GL_FALSE. + See glNormalPointer. + + + + + GL_NORMAL_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the normal array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glNormalPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_NORMAL_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive normals in the normal + array. The initial value is 0. + See glNormalPointer. + + + + + GL_NORMAL_ARRAY_TYPE + + + + + params returns one value, + the data type of each coordinate in the normal array. The initial value is + GL_FLOAT. + See glNormalPointer. + + + + + GL_NORMALIZE + + + + + params returns a single boolean value indicating whether normals are + automatically scaled to unit length after they have been transformed to + eye coordinates. The initial value is GL_FALSE. + See glNormal. + + + + + GL_NUM_COMPRESSED_TEXTURE_FORMATS + + + + + params returns a single integer value indicating the number of available + compressed texture formats. The minimum value is 0. + See glCompressedTexImage2D. + + + + + GL_PACK_ALIGNMENT + + + + + params returns one value, + the byte alignment used for writing pixel data to memory. The initial + value is 4. + See glPixelStore. + + + + + GL_PACK_IMAGE_HEIGHT + + + + + params returns one value, + the image height used for writing pixel data to memory. The initial + value is 0. + See glPixelStore. + + + + + GL_PACK_LSB_FIRST + + + + + params returns a single boolean value indicating whether single-bit + pixels being written to memory are written first to the least significant + bit of each unsigned byte. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_PACK_ROW_LENGTH + + + + + params returns one value, + the row length used for writing pixel data to memory. The initial value is + 0. + See glPixelStore. + + + + + GL_PACK_SKIP_IMAGES + + + + + params returns one value, + the number of pixel images skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SKIP_PIXELS + + + + + params returns one value, + the number of pixel locations skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SKIP_ROWS + + + + + params returns one value, + the number of rows of pixel locations skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SWAP_BYTES + + + + + params returns a single boolean value indicating whether the bytes of + two-byte and four-byte pixel indices and components are swapped before being + written to memory. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_PERSPECTIVE_CORRECTION_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the perspective correction + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_PIXEL_MAP_A_TO_A_SIZE + + + + + params returns one value, + the size of the alpha-to-alpha pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_B_TO_B_SIZE + + + + + params returns one value, + the size of the blue-to-blue pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_G_TO_G_SIZE + + + + + params returns one value, + the size of the green-to-green pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_I_TO_A_SIZE + + + + + params returns one value, + the size of the index-to-alpha pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_I_TO_B_SIZE + + + + + params returns one value, + the size of the index-to-blue pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_I_TO_G_SIZE + + + + + params returns one value, + the size of the index-to-green pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_I_TO_I_SIZE + + + + + params returns one value, + the size of the index-to-index pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_I_TO_R_SIZE + + + + + params returns one value, + the size of the index-to-red pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_R_TO_R_SIZE + + + + + params returns one value, + the size of the red-to-red pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_MAP_S_TO_S_SIZE + + + + + params returns one value, + the size of the stencil-to-stencil pixel translation table. + The initial value is 1. + See glPixelMap. + + + + + GL_PIXEL_PACK_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_PIXEL_PACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_PIXEL_UNPACK_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_PIXEL_UNPACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_POINT_DISTANCE_ATTENUATION + + + + + params returns three values, + the coefficients for computing the attenuation value for points. + See glPointParameter. + + + + + GL_POINT_FADE_THRESHOLD_SIZE + + + + + params returns one value, + the point size threshold for determining the point size. + See glPointParameter. + + + + + GL_POINT_SIZE + + + + + params returns one value, + the point size as specified by glPointSize. The initial value is 1. + + + + + GL_POINT_SIZE_GRANULARITY + + + + + params returns one value, + the size difference between adjacent supported sizes for antialiased points. + See glPointSize. + + + + + GL_POINT_SIZE_MAX + + + + + params returns one value, + the upper bound for the attenuated point sizes. The initial value is 0.0. + See glPointParameter. + + + + + GL_POINT_SIZE_MIN + + + + + params returns one value, + the lower bound for the attenuated point sizes. The initial value is 1.0. + See glPointParameter. + + + + + GL_POINT_SIZE_RANGE + + + + + params returns two values: + the smallest and largest supported sizes for antialiased + points. The smallest size must be at most 1, and the largest size must + be at least 1. + See glPointSize. + + + + + GL_POINT_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + points is enabled. The initial value is GL_FALSE. + See glPointSize. + + + + + GL_POINT_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the point antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_POINT_SPRITE + + + + + params returns a single boolean value indicating whether point sprite is + enabled. The initial value is GL_FALSE. + + + + + GL_POLYGON_MODE + + + + + params returns two values: + symbolic constants indicating whether front-facing and back-facing polygons + are rasterized as points, lines, or filled polygons. The initial value is + GL_FILL. + See glPolygonMode. + + + + + GL_POLYGON_OFFSET_FACTOR + + + + + params returns one value, + the scaling factor used to determine the variable offset that is added + to the depth value of each fragment generated when a polygon is + rasterized. The initial value is 0. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_UNITS + + + + + params returns one value. + This value is multiplied by an implementation-specific value and then + added to the depth value of each fragment + generated when a polygon is rasterized. The initial value is 0. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_FILL + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in fill mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_LINE + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in line mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_POINT + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in point mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + polygons is enabled. The initial value is GL_FALSE. + See glPolygonMode. + + + + + GL_POLYGON_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the polygon antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_POLYGON_STIPPLE + + + + + params returns a single boolean value indicating whether polygon + stippling is enabled. The initial value is GL_FALSE. + See glPolygonStipple. + + + + + GL_POST_COLOR_MATRIX_COLOR_TABLE + + + + + params returns a single boolean value indicating whether post color + matrix transformation lookup is enabled. + The initial value is GL_FALSE. + See glColorTable. + + + + + GL_POST_COLOR_MATRIX_RED_BIAS + + + + + params returns one value, the red bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_COLOR_MATRIX_GREEN_BIAS + + + + + params returns one value, the green bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer + + + + + GL_POST_COLOR_MATRIX_BLUE_BIAS + + + + + params returns one value, the blue bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_COLOR_MATRIX_ALPHA_BIAS + + + + + params returns one value, the alpha bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_COLOR_MATRIX_RED_SCALE + + + + + params returns one value, the red scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_COLOR_MATRIX_GREEN_SCALE + + + + + params returns one value, the green scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_COLOR_MATRIX_BLUE_SCALE + + + + + params returns one value, the blue scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_COLOR_MATRIX_ALPHA_SCALE + + + + + params returns one value, the alpha scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_COLOR_TABLE + + + + + params returns a single boolean value indicating whether post convolution + lookup is enabled. The initial value is GL_FALSE. + See glColorTable. + + + + + GL_POST_CONVOLUTION_RED_BIAS + + + + + params returns one value, the red bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_GREEN_BIAS + + + + + params returns one value, the green bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_BLUE_BIAS + + + + + params returns one value, the blue bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_ALPHA_BIAS + + + + + params returns one value, the alpha bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_RED_SCALE + + + + + params returns one value, the red scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_GREEN_SCALE + + + + + params returns one value, the green scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_BLUE_SCALE + + + + + params returns one value, the blue scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. + + + + + GL_POST_CONVOLUTION_ALPHA_SCALE + + + + + params returns one value, the alpha scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. + + + + + GL_PROJECTION_MATRIX + + + + + params returns sixteen values: + the projection matrix on the top of the projection matrix + stack. Initially this matrix is the identity matrix. + See glPushMatrix. + + + + + GL_PROJECTION_STACK_DEPTH + + + + + params returns one value, + the number of matrices on the projection matrix stack. + The initial value is 1. + See glPushMatrix. + + + + + GL_READ_BUFFER + + + + + params returns one value, + a symbolic constant indicating which color buffer is selected for + reading. The initial value is GL_BACK if there is a back buffer, + otherwise it is GL_FRONT. + See + glReadPixels and glAccum. + + + + + GL_RED_BIAS + + + + + params returns one value, + the red bias factor used during pixel transfers. The initial value is 0. + + + + + GL_RED_BITS + + + + + params returns one value, + the number of red bitplanes in each color buffer. + + + + + GL_RED_SCALE + + + + + params returns one value, + the red scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. + + + + + GL_RENDER_MODE + + + + + params returns one value, + a symbolic constant indicating whether the GL is in render, + select, + or feedback mode. The initial value is GL_RENDER. + See glRenderMode. + + + + + GL_RESCALE_NORMAL + + + + + params returns single boolean value + indicating whether normal rescaling is enabled. + See glEnable. + + + + + GL_RGBA_MODE + + + + + params returns a single boolean value indicating whether the GL is in RGBA + mode (true) or color index mode (false). + See glColor. + + + + + GL_SAMPLE_BUFFERS + + + + + params returns a single integer value indicating the number of sample buffers + associated with the framebuffer. + See glSampleCoverage. + + + + + GL_SAMPLE_COVERAGE_VALUE + + + + + params returns a single positive floating-point value indicating the + current sample coverage value. + See glSampleCoverage. + + + + + GL_SAMPLE_COVERAGE_INVERT + + + + + params returns a single boolean value indicating if the temporary + coverage value should be inverted. + See glSampleCoverage. + + + + + GL_SAMPLES + + + + + params returns a single integer value indicating the coverage mask size. + See glSampleCoverage. + + + + + GL_SCISSOR_BOX + + + + + params returns four values: + the + x + and + y + window coordinates of the scissor box, + followed by its width and height. + Initially the + x + and + y + window coordinates are both 0 and the + width and height are set to the size of the window. + See glScissor. + + + + + GL_SCISSOR_TEST + + + + + params returns a single boolean value indicating whether scissoring is + enabled. The initial value is GL_FALSE. + See glScissor. + + + + + GL_SECONDARY_COLOR_ARRAY + + + + + params returns a single boolean value indicating whether the secondary color array is enabled. The initial value is GL_FALSE. + See glSecondaryColorPointer. + + + + + GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the secondary color array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glSecondaryColorPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_SECONDARY_COLOR_ARRAY_SIZE + + + + + params returns one value, the number of components per color in the + secondary color array. The initial value is 3. + See glSecondaryColorPointer. + + + + + GL_SECONDARY_COLOR_ARRAY_STRIDE + + + + + params returns one value, the byte offset between consecutive colors in + the secondary color array. The initial value is 0. + See glSecondaryColorPointer. + + + + + GL_SECONDARY_COLOR_ARRAY_TYPE + + + + + params returns one value, the data type of each component in the secondary + color array. The initial value is GL_FLOAT. + See glSecondaryColorPointer. + + + + + GL_SELECTION_BUFFER_SIZE + + + + + params return one value, + the size of the selection buffer. + See glSelectBuffer. + + + + + GL_SEPARABLE_2D + + + + + params returns a single boolean value indicating whether 2D separable + convolution is enabled. The initial value is GL_FALSE. + See glSeparableFilter2D. + + + + + GL_SHADE_MODEL + + + + + params returns one value, + a symbolic constant indicating whether the shading mode is flat or + smooth. The initial value is GL_SMOOTH. + See glShadeModel. + + + + + GL_SMOOTH_LINE_WIDTH_RANGE + + + + + params returns two values, + the smallest and largest supported widths for antialiased lines. + See glLineWidth. + + + + + GL_SMOOTH_LINE_WIDTH_GRANULARITY + + + + + params returns one value, + the granularity of widths for antialiased lines. + See glLineWidth. + + + + + GL_SMOOTH_POINT_SIZE_RANGE + + + + + params returns two values, + the smallest and largest supported widths for antialiased points. + See glPointSize. + + + + + GL_SMOOTH_POINT_SIZE_GRANULARITY + + + + + params returns one value, + the granularity of sizes for antialiased points. + See glPointSize. + + + + + GL_STENCIL_BACK_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_FUNC + + + + + params returns one value, + a symbolic constant indicating what function is used for back-facing polygons to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_PASS_DEPTH_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_PASS_DEPTH_PASS + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_REF + + + + + params returns one value, + the reference value that is compared with the contents of the stencil + buffer for back-facing polygons. The initial value is 0. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_VALUE_MASK + + + + + params returns one value, + the mask that is used for back-facing polygons to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_WRITEMASK + + + + + params returns one value, + the mask that controls writing of the stencil bitplanes for back-facing polygons. The initial value + is all 1's. + See glStencilMaskSeparate. + + + + + GL_STENCIL_BITS + + + + + params returns one value, + the number of bitplanes in the stencil buffer. + + + + + GL_STENCIL_CLEAR_VALUE + + + + + params returns one value, + the index to which the stencil bitplanes are cleared. The initial value is + 0. + See glClearStencil. + + + + + GL_STENCIL_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOp. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_FUNC + + + + + params returns one value, + a symbolic constant indicating what function is used to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFunc. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_PASS_DEPTH_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOp. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_PASS_DEPTH_PASS + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOp. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_REF + + + + + params returns one value, + the reference value that is compared with the contents of the stencil + buffer. The initial value is 0. + See glStencilFunc. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_TEST + + + + + params returns a single boolean value indicating whether stencil testing + of fragments is enabled. The initial value is GL_FALSE. + See glStencilFunc and glStencilOp. + + + + + GL_STENCIL_VALUE_MASK + + + + + params returns one value, + the mask that is used to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFunc. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_WRITEMASK + + + + + params returns one value, + the mask that controls writing of the stencil bitplanes. The initial value + is all 1's. + See glStencilMask. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilMaskSeparate. + + + + + GL_STEREO + + + + + params returns a single boolean value indicating whether stereo buffers + (left and right) are supported. + + + + + GL_SUBPIXEL_BITS + + + + + params returns one value, + an estimate of the number of bits of subpixel resolution that are used to + position rasterized geometry in window coordinates. The value must be at least 4. + + + + + GL_TEXTURE_1D + + + + + params returns a single boolean value indicating whether 1D texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage1D. + + + + + GL_TEXTURE_BINDING_1D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_2D + + + + + params returns a single boolean value indicating whether 2D texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage2D. + + + + + GL_TEXTURE_BINDING_2D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_3D + + + + + params returns a single boolean value indicating whether 3D texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage3D. + + + + + GL_TEXTURE_BINDING_3D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_3D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_CUBE_MAP + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_CUBE_MAP. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_COMPRESSION_HINT + + + + + params returns a single value indicating the mode of the texture + compression hint. The initial value is GL_DONT_CARE. + + + + + GL_TEXTURE_COORD_ARRAY + + + + + params returns a single boolean value indicating whether the texture + coordinate array is enabled. The initial value is GL_FALSE. + See glTexCoordPointer. + + + + + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the texture coordinate array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glTexCoordPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_TEXTURE_COORD_ARRAY_SIZE + + + + + params returns one value, + the number of coordinates per element in the texture coordinate + array. The initial value is 4. + See glTexCoordPointer. + + + + + GL_TEXTURE_COORD_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive elements in the texture coordinate + array. The initial value is 0. + See glTexCoordPointer. + + + + + GL_TEXTURE_COORD_ARRAY_TYPE + + + + + params returns one value, + the data type of the coordinates in the texture coordinate + array. The initial value is GL_FLOAT. + See glTexCoordPointer. + + + + + GL_TEXTURE_CUBE_MAP + + + + + params returns a single boolean value indicating whether cube-mapped texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage2D. + + + + + GL_TEXTURE_GEN_Q + + + + + params returns a single boolean value indicating whether automatic generation + of the q texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. + + + + + GL_TEXTURE_GEN_R + + + + + params returns a single boolean value indicating whether automatic generation + of the r texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. + + + + + GL_TEXTURE_GEN_S + + + + + params returns a single boolean value indicating whether automatic generation + of the S texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. + + + + + GL_TEXTURE_GEN_T + + + + + params returns a single boolean value indicating whether automatic generation + of the T texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. + + + + + GL_TEXTURE_MATRIX + + + + + params returns sixteen values: + the texture matrix on the top of the texture matrix stack. Initially this + matrix is the identity matrix. + See glPushMatrix. + + + + + GL_TEXTURE_STACK_DEPTH + + + + + params returns one value, + the number of matrices on the texture matrix stack. + The initial value is 1. + See glPushMatrix. + + + + + GL_TRANSPOSE_COLOR_MATRIX + + + + + params returns 16 values, the elements of the color matrix in row-major + order. + See glLoadTransposeMatrix. + + + + + GL_TRANSPOSE_MODELVIEW_MATRIX + + + + + params returns 16 values, the elements of the modelview matrix in row-major + order. + See glLoadTransposeMatrix. + + + + + GL_TRANSPOSE_PROJECTION_MATRIX + + + + + params returns 16 values, the elements of the projection matrix in row-major + order. + See glLoadTransposeMatrix. + + + + + GL_TRANSPOSE_TEXTURE_MATRIX + + + + + params returns 16 values, the elements of the texture matrix in row-major + order. + See glLoadTransposeMatrix. + + + + + GL_UNPACK_ALIGNMENT + + + + + params returns one value, + the byte alignment used for reading pixel data from memory. The initial + value is 4. + See glPixelStore. + + + + + GL_UNPACK_IMAGE_HEIGHT + + + + + params returns one value, + the image height used for reading pixel data from memory. The initial + is 0. + See glPixelStore. + + + + + GL_UNPACK_LSB_FIRST + + + + + params returns a single boolean value indicating whether single-bit + pixels being read from memory are read first from the least significant + bit of each unsigned byte. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_UNPACK_ROW_LENGTH + + + + + params returns one value, + the row length used for reading pixel data from memory. The initial value + is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_IMAGES + + + + + params returns one value, + the number of pixel images skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_PIXELS + + + + + params returns one value, + the number of pixel locations skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_ROWS + + + + + params returns one value, + the number of rows of pixel locations skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SWAP_BYTES + + + + + params returns a single boolean value indicating whether the bytes of + two-byte and four-byte pixel indices and components are swapped after being + read from memory. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_VERTEX_ARRAY + + + + + params returns a single boolean value indicating whether the vertex + array is enabled. The initial value is GL_FALSE. + See glVertexPointer. + + + + + GL_VERTEX_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + associated with the vertex array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glVertexPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_VERTEX_ARRAY_SIZE + + + + + params returns one value, + the number of coordinates per vertex in the vertex array. The initial + value is 4. + See glVertexPointer. + + + + + GL_VERTEX_ARRAY_STRIDE + + + + + params returns one value, + the byte offset between consecutive vertices in the vertex + array. The initial value is 0. + See glVertexPointer. + + + + + GL_VERTEX_ARRAY_TYPE + + + + + params returns one value, + the data type of each coordinate in the vertex array. The initial value is + GL_FLOAT. + See glVertexPointer. + + + + + GL_VERTEX_PROGRAM_POINT_SIZE + + + + + params returns a single boolean value indicating whether vertex + program point size mode is enabled. If enabled, and a vertex shader is active, then the + point size is taken from the shader built-in gl_PointSize. If disabled, + and a vertex shader is active, then the point size is taken from the point state as specified + by glPointSize. + The initial value is GL_FALSE. + + + + + GL_VERTEX_PROGRAM_TWO_SIDE + + + + + params returns a single boolean value indicating whether vertex + program two-sided color mode is enabled. If enabled, and a vertex shader is active, then the + GL chooses the back color output for back-facing polygons, and the front color output for + non-polygons and front-facing polygons. If disabled, and a vertex shader is active, then the + front color output is always selected. The initial value is GL_FALSE. + + + + + GL_VIEWPORT + + + + + params returns four values: + the + x + and + y + window coordinates of the viewport, + followed by its width and height. + Initially the + x + and + y + window coordinates are both set to 0, + and the width and height are set to the width and height of the window into + which the GL will do its rendering. + See glViewport. + + + + + GL_ZOOM_X + + + + + params returns one value, + the + x + pixel zoom factor. The initial value is 1. + See glPixelZoom. + + + + + GL_ZOOM_Y + + + + + params returns one value, + the + y + pixel zoom factor. The initial value is 1. + See glPixelZoom. + + + + + + Many of the boolean parameters can also be queried more easily using + glIsEnabled. + + + Notes + + GL_COLOR_LOGIC_OP, + GL_COLOR_ARRAY, + GL_COLOR_ARRAY_SIZE, + GL_COLOR_ARRAY_STRIDE, + GL_COLOR_ARRAY_TYPE, + GL_EDGE_FLAG_ARRAY, + GL_EDGE_FLAG_ARRAY_STRIDE, + GL_INDEX_ARRAY, + GL_INDEX_ARRAY_STRIDE, + GL_INDEX_ARRAY_TYPE, + GL_INDEX_LOGIC_OP, + GL_NORMAL_ARRAY, + GL_NORMAL_ARRAY_STRIDE, + GL_NORMAL_ARRAY_TYPE, + GL_POLYGON_OFFSET_UNITS, + GL_POLYGON_OFFSET_FACTOR, + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + GL_POLYGON_OFFSET_POINT, + GL_TEXTURE_COORD_ARRAY, + GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_TYPE, + GL_VERTEX_ARRAY, + GL_VERTEX_ARRAY_SIZE, + GL_VERTEX_ARRAY_STRIDE, and + GL_VERTEX_ARRAY_TYPE + are available only if the GL version is 1.1 or greater. + + + GL_ALIASED_POINT_SIZE_RANGE, + GL_FEEDBACK_BUFFER_SIZE, + GL_FEEDBACK_BUFFER_TYPE, + GL_LIGHT_MODEL_AMBIENT, + GL_LIGHT_MODEL_COLOR_CONTROL, + GL_MAX_3D_TEXTURE_SIZE, + GL_MAX_ELEMENTS_INDICES, + GL_MAX_ELEMENTS_VERTICES, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_IMAGES, + GL_RESCALE_NORMAL, + GL_SELECTION_BUFFER_SIZE, + GL_SMOOTH_LINE_WIDTH_GRANULARITY, + GL_SMOOTH_LINE_WIDTH_RANGE, + GL_SMOOTH_POINT_SIZE_GRANULARITY, + GL_SMOOTH_POINT_SIZE_RANGE, + GL_TEXTURE_3D, + GL_TEXTURE_BINDING_3D, + GL_UNPACK_IMAGE_HEIGHT, and + GL_UNPACK_SKIP_IMAGES + are available only if the GL version is 1.2 or greater. + + + GL_COMPRESSED_TEXTURE_FORMATS, + GL_NUM_COMPRESSED_TEXTURE_FORMATS, + GL_TEXTURE_BINDING_CUBE_MAP, and + GL_TEXTURE_COMPRESSION_HINT + are available only if the GL version is 1.3 or greater. + + + GL_BLEND_DST_ALPHA, + GL_BLEND_DST_RGB, + GL_BLEND_SRC_ALPHA, + GL_BLEND_SRC_RGB, + GL_CURRENT_FOG_COORD, + GL_CURRENT_SECONDARY_COLOR, + GL_FOG_COORD_ARRAY_STRIDE, + GL_FOG_COORD_ARRAY_TYPE, + GL_FOG_COORD_SRC, + GL_MAX_TEXTURE_LOD_BIAS, + GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MAX, + GL_POINT_FADE_THRESHOLD_SIZE, + GL_POINT_DISTANCE_ATTENUATION, + GL_SECONDARY_COLOR_ARRAY_SIZE, + GL_SECONDARY_COLOR_ARRAY_STRIDE, and + GL_SECONDARY_COLOR_ARRAY_TYPE + are available only if the GL version is 1.4 or greater. + + + GL_ARRAY_BUFFER_BINDING, + GL_COLOR_ARRAY_BUFFER_BINDING, + GL_EDGE_FLAG_ARRAY_BUFFER_BINDING, + GL_ELEMENT_ARRAY_BUFFER_BINDING, + GL_FOG_COORD_ARRAY_BUFFER_BINDING, + GL_INDEX_ARRAY_BUFFER_BINDING, + GL_NORMAL_ARRAY_BUFFER_BINDING, + GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING, + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING, and + GL_VERTEX_ARRAY_BUFFER_BINDING + are available only if the GL version is 1.5 or greater. + + + GL_BLEND_EQUATION_ALPHA, + GL_BLEND_EQUATION_RGB, + GL_DRAW_BUFFERi, + GL_FRAGMENT_SHADER_DERIVATIVE_HINT, + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, + GL_MAX_DRAW_BUFFERS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, + GL_MAX_TEXTURE_COORDS, + GL_MAX_TEXTURE_IMAGE_UNITS, + GL_MAX_VARYING_FLOATS, + GL_MAX_VERTEX_ATTRIBS, + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, + GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_POINT_SPRITE, + GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_PASS_DEPTH_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, + GL_STENCIL_BACK_REF, + GL_STENCIL_BACK_VALUE_MASK, + GL_STENCIL_BACK_WRITEMASK, + GL_VERTEX_PROGRAM_POINT_SIZE, and + GL_VERTEX_PROGRAM_TWO_SIDE + are available only if the GL version is 2.0 or greater. + + + GL_CURRENT_RASTER_SECONDARY_COLOR, + GL_PIXEL_PACK_BUFFER_BINDING and + GL_PIXEL_UNPACK_BUFFER_BINDING + are available only if the GL version is 2.1 or greater. + + + GL_LINE_WIDTH_GRANULARITY was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_LINE_WIDTH_GRANULARITY. + + + GL_LINE_WIDTH_RANGE was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_LINE_WIDTH_RANGE. + + + GL_POINT_SIZE_GRANULARITY was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_POINT_SIZE_GRANULARITY. + + + GL_POINT_SIZE_RANGE was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_POINT_SIZE_RANGE. + + + GL_BLEND_EQUATION was deprecated in GL version 2.0. Its + functionality was replaced by GL_BLEND_EQUATION_RGB and + GL_BLEND_EQUATION_ALPHA. + + + GL_COLOR_MATRIX, + GL_COLOR_MATRIX_STACK_DEPTH, + GL_COLOR_TABLE, + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, + GL_HISTOGRAM, + GL_MAX_COLOR_MATRIX_STACK_DEPTH, + GL_MINMAX, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_COLOR_MATRIX_RED_BIAS, + GL_POST_COLOR_MATRIX_GREEN_BIAS, + GL_POST_COLOR_MATRIX_BLUE_BIAS, + GL_POST_COLOR_MATRIX_ALPHA_BIAS, + GL_POST_COLOR_MATRIX_RED_SCALE, + GL_POST_COLOR_MATRIX_GREEN_SCALE, + GL_POST_COLOR_MATRIX_BLUE_SCALE, + GL_POST_COLOR_MATRIX_ALPHA_SCALE, + GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_CONVOLUTION_RED_BIAS, + GL_POST_CONVOLUTION_GREEN_BIAS, + GL_POST_CONVOLUTION_BLUE_BIAS, + GL_POST_CONVOLUTION_ALPHA_BIAS, + GL_POST_CONVOLUTION_RED_SCALE, + GL_POST_CONVOLUTION_GREEN_SCALE, + GL_POST_CONVOLUTION_BLUE_SCALE, + GL_POST_CONVOLUTION_ALPHA_SCALE, and + GL_SEPARABLE_2D + are available only if ARB_imaging is returned from glGet + when called with the argument GL_EXTENSIONS. + + + When the ARB_multitexture extension is supported, or the GL version + is 1.3 or greater, the following + parameters return the associated value for the active texture unit: + GL_CURRENT_RASTER_TEXTURE_COORDS, + GL_TEXTURE_1D, GL_TEXTURE_BINDING_1D, + GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D, GL_TEXTURE_BINDING_3D, + GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, + GL_TEXTURE_GEN_Q, + GL_TEXTURE_MATRIX, and + GL_TEXTURE_STACK_DEPTH. + Likewise, the following parameters return the associated value for the + active client texture unit: + GL_TEXTURE_COORD_ARRAY, + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING, + GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_TYPE. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_OPERATION is generated if glGet + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + + + See Also + + glGetActiveAttrib, + glGetActiveUniform, + glGetAttachedShaders, + glGetAttribLocation, + glGetBufferParameteriv, + glGetBufferPointerv, + glGetBufferSubData, + glGetClipPlane, + glGetColorTable, + glGetColorTableParameter, + glGetCompressedTexImage, + glGetConvolutionFilter, + glGetConvolutionParameter, + glGetError, + glGetHistogram, + glGetHistogramParameter, + glGetLight, + glGetMap, + glGetMaterial, + glGetMinmax, + glGetMinmaxParameter, + glGetPixelMap, + glGetPointerv, + glGetPolygonStipple, + glGetProgram, + glGetProgramInfoLog, + glGetQueryiv, + glGetQueryObject, + glGetSeparableFilter, + glGetShader, + glGetShaderInfoLog, + glGetShaderSource, + glGetString, + glGetTexEnv, + glGetTexGen, + glGetTexImage, + glGetTexLevelParameter, + glGetTexParameter, + glGetUniform, + glGetUniformLocation, + glGetVertexAttrib, + glGetVertexAttribPointerv, + glIsEnabled + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetActiveAttrib.xml b/upstream-man-pages/man2/glGetActiveAttrib.xml new file mode 100644 index 0000000..da8bb51 --- /dev/null +++ b/upstream-man-pages/man2/glGetActiveAttrib.xml @@ -0,0 +1,231 @@ + + + + + glGetActiveAttrib + 3G + + + glGetActiveAttrib + Returns information about an active attribute variable for the specified program object + + C Specification + + + void glGetActiveAttrib + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + index + + Specifies the index of the attribute variable + to be queried. + + + + bufSize + + Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name. + + + + length + + Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed. + + + + size + + Returns the size of the attribute + variable. + + + + type + + Returns the data type of the attribute + variable. + + + + name + + Returns a null terminated string containing + the name of the attribute variable. + + + + + Description + glGetActiveAttrib returns information + about an active attribute variable in the program object + specified by program. The number of + active attributes can be obtained by calling + glGetProgram + with the value GL_ACTIVE_ATTRIBUTES. A + value of 0 for index selects the first + active attribute variable. Permissible values for + index range from 0 to the number of + active attribute variables minus 1. + + A vertex shader may use either built-in attribute + variables, user-defined attribute variables, or both. Built-in + attribute variables have a prefix of "gl_" and + reference conventional OpenGL vertex attribtes (e.g., + gl_Vertex, + gl_Normal, etc., see the OpenGL Shading + Language specification for a complete list.) User-defined + attribute variables have arbitrary names and obtain their values + through numbered generic vertex attributes. An attribute + variable (either built-in or user-defined) is considered active + if it is determined during the link operation that it may be + accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully. + + The size of the character buffer required to store the + longest attribute variable name in + program can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned attribute name. The size of this character buffer + is passed in bufSize, and a pointer to + this character buffer is passed in + name. + + glGetActiveAttrib returns the name of + the attribute variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument. + + The type argument will return a + pointer to the attribute variable's data type. The symbolic + constants GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, or + GL_FLOAT_MAT4x3 may be returned. The + size argument will return the size of the + attribute, in units of the type returned in + type. + + The list of active attribute variables may include both + built-in attribute variables (which begin with the prefix + "gl_") as well as user-defined attribute variable + names. + + This function will return as much information as it can + about the specified active attribute variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified. + + Notes + glGetActiveAttrib + is available only if the GL version is 2.0 or greater. + + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, and + GL_FLOAT_MAT4x3 + will only be returned as a type + if the GL version is 2.1 or greater. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active attribute variables in + program. + + GL_INVALID_OPERATION is generated if + glGetActiveAttrib is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS. + + glGetProgram + with argument GL_ACTIVE_ATTRIBUTES or + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. + + glIsProgram + + See Also + glBindAttribLocation, + glLinkProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetActiveUniform.xml b/upstream-man-pages/man2/glGetActiveUniform.xml new file mode 100644 index 0000000..699af8f --- /dev/null +++ b/upstream-man-pages/man2/glGetActiveUniform.xml @@ -0,0 +1,277 @@ + + + + + glGetActiveUniform + 3G + + + glGetActiveUniform + Returns information about an active uniform variable for the specified program object + + C Specification + + + void glGetActiveUniform + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + index + + Specifies the index of the uniform variable to + be queried. + + + + bufSize + + Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name. + + + + length + + Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed. + + + + size + + Returns the size of the uniform + variable. + + + + type + + Returns the data type of the uniform + variable. + + + + name + + Returns a null terminated string containing + the name of the uniform variable. + + + + + Description + glGetActiveUniform returns + information about an active uniform variable in the program + object specified by program. The number + of active uniform variables can be obtained by calling + glGetProgram + with the value GL_ACTIVE_UNIFORMS. A value + of 0 for index selects the first active + uniform variable. Permissible values for + index range from 0 to the number of + active uniform variables minus 1. + + Shaders may use either built-in uniform variables, + user-defined uniform variables, or both. Built-in uniform + variables have a prefix of "gl_" and reference + existing OpenGL state or values derived from such state (e.g., + gl_Fog, + gl_ModelViewMatrix, etc., see the OpenGL + Shading Language specification for a complete list.) + User-defined uniform variables have arbitrary names and obtain + their values from the application through calls to + glUniform. + A uniform variable (either built-in or user-defined) is + considered active if it is determined during the link operation + that it may be accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully. + + The size of the character buffer required to store the + longest uniform variable name in program + can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_UNIFORM_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned uniform variable name. The size of this character + buffer is passed in bufSize, and a + pointer to this character buffer is passed in + name. + + glGetActiveUniform returns the name + of the uniform variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument. + + The type + argument will return a pointer to the uniform variable's data + type. The symbolic constants + GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_INT, + GL_INT_VEC2, + GL_INT_VEC3, + GL_INT_VEC4, + GL_BOOL, + GL_BOOL_VEC2, + GL_BOOL_VEC3, + GL_BOOL_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3, + GL_SAMPLER_1D, + GL_SAMPLER_2D, + GL_SAMPLER_3D, + GL_SAMPLER_CUBE, + GL_SAMPLER_1D_SHADOW, or + GL_SAMPLER_2D_SHADOW + may be returned. + + If one or more elements of an array are active, the name + of the array is returned in name, the + type is returned in type, and the + size parameter returns the highest array + element index used, plus one, as determined by the compiler + and/or linker. Only one active uniform variable will be reported + for a uniform array. + + Uniform variables that are declared as structures or + arrays of structures will not be returned directly by this + function. Instead, each of these uniform variables will be + reduced to its fundamental components containing the + "." and "[]" operators such that each of the + names is valid as an argument to + glGetUniformLocation. + Each of these reduced uniform variables is counted as one active + uniform variable and is assigned an index. A valid name cannot + be a structure, an array of structures, or a subcomponent of a + vector or matrix. + + The size of the uniform variable will be returned in + size. Uniform variables other than arrays + will have a size of 1. Structures and arrays of structures will + be reduced as described earlier, such that each of the names + returned will be a data type in the earlier list. If this + reduction results in an array, the size returned will be as + described for uniform arrays; otherwise, the size returned will + be 1. + + The list of active uniform variables may include both + built-in uniform variables (which begin with the prefix + "gl_") as well as user-defined uniform variable + names. + + This function will return as much information as it can + about the specified active uniform variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified. + + Notes + glGetActiveUniform is available only + if the GL version is 2.0 or greater. + + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, and + GL_FLOAT_MAT4x3 + will only be returned as a type + if the GL version is 2.1 or greater. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active uniform variables in + program. + + GL_INVALID_OPERATION is generated if + glGetActiveUniform is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS + or + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS. + + glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH. + + glIsProgram + + See Also + glGetUniform, + glGetUniformLocation, + glLinkProgram, + glUniform, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetAttachedShaders.xml b/upstream-man-pages/man2/glGetAttachedShaders.xml new file mode 100644 index 0000000..c41302e --- /dev/null +++ b/upstream-man-pages/man2/glGetAttachedShaders.xml @@ -0,0 +1,120 @@ + + + + + glGetAttachedShaders + 3G + + + glGetAttachedShaders + Returns the handles of the shader objects attached to a program object + + C Specification + + + void glGetAttachedShaders + GLuint program + GLsizei maxCount + GLsizei *count + GLuint *shaders + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + maxCount + + Specifies the size of the array for storing + the returned object names. + + + + count + + Returns the number of names actually returned + in objects. + + + + shaders + + Specifies an array that is used to return the + names of attached shader objects. + + + + + Description + glGetAttachedShaders returns the + names of the shader objects attached to + program. The names of shader objects that + are attached to program will be returned + in shaders. The actual number of shader + names written into shaders is returned in + count. If no shader objects are attached + to program, count + is set to 0. The maximum number of shader names that may be + returned in shaders is specified by + maxCount. + + If the number of names actually returned is not required + (for instance, if it has just been obtained by calling + glGetProgram), + a value of NULL may be passed for count. If + no shader objects are attached to + program, a value of 0 will be returned in + count. The actual number of attached + shaders can be obtained by calling + glGetProgram + with the value GL_ATTACHED_SHADERS. + + Notes + glGetAttachedShaders + is available only if the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + maxCount is less than 0. + + GL_INVALID_OPERATION is generated if + glGetAttachedShaders + is executed between the execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetProgram + with argument GL_ATTACHED_SHADERS + + glIsProgram + + See Also + glAttachShader, + glDetachShader. + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetAttribLocation.xml b/upstream-man-pages/man2/glGetAttribLocation.xml new file mode 100644 index 0000000..bd072b0 --- /dev/null +++ b/upstream-man-pages/man2/glGetAttribLocation.xml @@ -0,0 +1,114 @@ + + + + + glGetAttribLocation + 3G + + + glGetAttribLocation + Returns the location of an attribute variable + + C Specification + + + GLint glGetAttribLocation + GLuint program + const GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + name + + Points to a null terminated string containing + the name of the attribute variable whose location is + to be queried. + + + + + Description + glGetAttribLocation queries the + previously linked program object specified by + program for the attribute variable + specified by name and returns the index + of the generic vertex attribute that is bound to that attribute + variable. If name is a matrix attribute + variable, the index of the first column of the matrix is + returned. If the named attribute variable is not an active + attribute in the specified program object or if + name starts with the reserved prefix + "gl_", a value of -1 is returned. + + The association between an attribute variable name and a + generic attribute index can be specified at any time by calling + glBindAttribLocation. + Attribute bindings do not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for attribute variables remain fixed until the + next link command occurs. The attribute values can only be + queried after a link if the link was successful. + glGetAttribLocation returns the binding + that actually went into effect the last time + glLinkProgram + was called for the specified program object. Attribute bindings + that have been specified since the last link operation are not + returned by glGetAttribLocation. + + Notes + glGetAttribLocation is available only + if the GL version is 2.0 or greater. + + Errors + GL_INVALID_OPERATION is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + GL_INVALID_OPERATION is generated if + glGetAttribLocation is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetActiveAttrib + with argument program and the index of an + active attribute + + glIsProgram + + See Also + glBindAttribLocation, + glLinkProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetBufferParameteriv.xml b/upstream-man-pages/man2/glGetBufferParameteriv.xml new file mode 100644 index 0000000..33aec0c --- /dev/null +++ b/upstream-man-pages/man2/glGetBufferParameteriv.xml @@ -0,0 +1,153 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferParameteriv + 3G + + + glGetBufferParameteriv + return parameters of a buffer object + + C Specification + + + void glGetBufferParameteriv + GLenum target + GLenum value + GLint * data + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + value + + + Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. + + + + + data + + + Returns the requested parameter. + + + + + + Description + + glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. + + + value names a specific buffer object parameter, as follows: + + + + GL_BUFFER_ACCESS + + + params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. + + + + + GL_BUFFER_MAPPED + + + params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. + + + + + GL_BUFFER_SIZE + + + params returns the size of the buffer object, measured in bytes. + The initial value is 0. + + + + + GL_BUFFER_USAGE + + + params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. + + + + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + glGetBufferParameteriv is available only if the GL version is 1.5 or greater. + + + Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or value is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if glGetBufferParameteriv + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetBufferPointerv.xml b/upstream-man-pages/man2/glGetBufferPointerv.xml new file mode 100644 index 0000000..fb9b362 --- /dev/null +++ b/upstream-man-pages/man2/glGetBufferPointerv.xml @@ -0,0 +1,113 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferPointerv + 3G + + + glGetBufferPointerv + return the pointer to a mapped buffer object's data store + + C Specification + + + void glGetBufferPointerv + GLenum target + GLenum pname + GLvoid ** params + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + pname + + + Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER. + + + + + params + + + Returns the pointer value specified by pname. + + + + + + Description + + glGetBufferPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer + to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. + params is a pointer to a location in which to place the returned pointer value. + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetBufferPointerv is available only if the GL version is 1.5 or greater. + + + Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. + + + The initial value for the pointer is NULL. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if glGetBufferPointerv + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glBindBuffer, + glMapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetBufferSubData.xml b/upstream-man-pages/man2/glGetBufferSubData.xml new file mode 100644 index 0000000..7b25903 --- /dev/null +++ b/upstream-man-pages/man2/glGetBufferSubData.xml @@ -0,0 +1,136 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferSubData + 3G + + + glGetBufferSubData + returns a subset of a buffer object's data store + + C Specification + + + void glGetBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + GLvoid * data + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + offset + + + Specifies the offset into the buffer object's data store from which data will be returned, + measured in bytes. + + + + + size + + + Specifies the size in bytes of the data store region being returned. + + + + + data + + + Specifies a pointer to the location where buffer object data is returned. + + + + + + Description + + glGetBufferSubData returns some or all of the data from the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied from the data store to the memory pointed to by + data. An error is thrown if the buffer object is currently mapped, or if + offset and size together define a range beyond the bounds + of the buffer object's data store. + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + glGetBufferSubData is available only if the GL version is 1.5 or greater. + + + Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. + + + GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer object being queried is mapped. + + + GL_INVALID_OPERATION is generated if glGetBufferSubData + is executed between the execution of + glBegin and the corresponding execution of + glEnd. + + + See Also + + glBindBuffer, + glBufferData, + glBufferSubData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetClipPlane.xml b/upstream-man-pages/man2/glGetClipPlane.xml new file mode 100644 index 0000000..80359b5 --- /dev/null +++ b/upstream-man-pages/man2/glGetClipPlane.xml @@ -0,0 +1,96 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetClipPlane + 3G + + + glGetClipPlane + return the coefficients of the specified clipping plane + + C Specification + + + void glGetClipPlane + GLenum plane + GLdouble * equation + + + + + Parameters + + + plane + + + Specifies a clipping plane. + The number of clipping planes depends on the implementation, + but at least six clipping planes are supported. + They are identified by symbolic names of the form GL_CLIP_PLANE + i + where i ranges from 0 to the value of GL_MAX_CLIP_PLANES - 1. + + + + + equation + + + Returns four double-precision values that are the coefficients of the plane equation of plane in eye coordinates. + The initial value is (0, 0, 0, 0). + + + + + + Description + + glGetClipPlane returns in equation the four coefficients of the plane equation + for plane. + + + Notes + + It is always the case that GL_CLIP_PLANE + i + = GL_CLIP_PLANE0 + + i. + + + If an error is generated, + no change is made to the contents of equation. + + + Errors + + GL_INVALID_ENUM is generated if plane is not an accepted value. + + + GL_INVALID_OPERATION is generated if glGetClipPlane + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glClipPlane + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetColorTable.xml b/upstream-man-pages/man2/glGetColorTable.xml new file mode 100644 index 0000000..d5f90bb --- /dev/null +++ b/upstream-man-pages/man2/glGetColorTable.xml @@ -0,0 +1,274 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetColorTable + 3G + + + glGetColorTable + retrieve contents of a color lookup table + + C Specification + + + void glGetColorTable + GLenum target + GLenum format + GLenum type + GLvoid * table + + + + Parameters + + + target + + + Must be GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or + GL_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + format + + + The format of the pixel data in table. + The possible values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + The type of the pixel data in table. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + table + + + Pointer to a one-dimensional array of pixel data containing the contents + of the color table. + + + + + + Description + + glGetColorTable returns in table the contents of the color table specified + by target. No pixel transfer operations are performed, but pixel + storage modes that are applicable to + glReadPixels are performed. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a histogram table is + requested, table is treated as a byte offset into the buffer object's data store. + + + Color components that are requested in + the specified format, but which are not included in the internal + format of the color lookup table, are returned as zero. The + assignments of internal color components to the components + requested by format are + + + + + + + + + Internal Component + + + Resulting Component + + + + + + + Red + + + Red + + + + + Green + + + Green + + + + + Blue + + + Blue + + + + + Alpha + + + Alpha + + + + + Luminance + + + Red + + + + + Intensity + + + Red + + + + + + + + + Notes + + glGetColorTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and table is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glGetColorTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetColorTableParameter + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glColorTable, + glColorTableParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetColorTableParameter.xml b/upstream-man-pages/man2/glGetColorTableParameter.xml new file mode 100644 index 0000000..8144458 --- /dev/null +++ b/upstream-man-pages/man2/glGetColorTableParameter.xml @@ -0,0 +1,259 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetColorTableParameter + 3G + + + glGetColorTableParameter + get color lookup table parameters + + C Specification + + + void glGetColorTableParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetColorTableParameteriv + GLenum target + GLenum pname + GLint * params + + + + + Parameters + + + target + + + The target color table. + Must be + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_PROXY_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, or + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE. + + + + + pname + + + The symbolic name of a color lookup table parameter. + Must be one of + GL_COLOR_TABLE_BIAS, + GL_COLOR_TABLE_SCALE, + GL_COLOR_TABLE_FORMAT, + GL_COLOR_TABLE_WIDTH, + GL_COLOR_TABLE_RED_SIZE, + GL_COLOR_TABLE_GREEN_SIZE, + GL_COLOR_TABLE_BLUE_SIZE, + GL_COLOR_TABLE_ALPHA_SIZE, + GL_COLOR_TABLE_LUMINANCE_SIZE, or + GL_COLOR_TABLE_INTENSITY_SIZE. + + + + + params + + + A pointer to an array where the values of the parameter will be stored. + + + + + + Description + + Returns parameters specific to color table target. + + + When pname is set to GL_COLOR_TABLE_SCALE or + GL_COLOR_TABLE_BIAS, glGetColorTableParameter returns the color + table scale or bias parameters for the table specified by target. + For these queries, target must be set to + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or GL_POST_COLOR_MATRIX_COLOR_TABLE and + params points to an array of four elements, which receive + the scale or bias factors for red, green, blue, and alpha, in that order. + + + glGetColorTableParameter can also be used to retrieve the format and size parameters + for a color table. For these queries, set target to either the + color table target or the proxy color table target. + The format and size parameters are set by glColorTable. + + + The following table lists the format and size parameters that may + be queried. + For each symbolic constant listed below for pname, + params must point to an array of the + given length and receive the values indicated. + + + + + + + + + + + + Parameter + + + N + + + Meaning + + + + + + + GL_COLOR_TABLE_FORMAT + + + 1 + + + Internal format (e.g., GL_RGBA) + + + + + GL_COLOR_TABLE_WIDTH + + + 1 + + + Number of elements in table + + + + + GL_COLOR_TABLE_RED_SIZE + + + 1 + + + Size of red component, in bits + + + + + GL_COLOR_TABLE_GREEN_SIZE + + + 1 + + + Size of green component + + + + + GL_COLOR_TABLE_BLUE_SIZE + + + 1 + + + Size of blue component + + + + + GL_COLOR_TABLE_ALPHA_SIZE + + + 1 + + + Size of alpha component + + + + + GL_COLOR_TABLE_LUMINANCE_SIZE + + + 1 + + + Size of luminance component + + + + + GL_COLOR_TABLE_INTENSITY_SIZE + + + 1 + + + Size of intensity component + + + + + + + + + Notes + + glGetColorTableParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not + an acceptable value. + + + GL_INVALID_OPERATION is generated if glGetColorTableParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glColorTable, + glTexParameter, + glColorTableParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetCompressedTexImage.xml b/upstream-man-pages/man2/glGetCompressedTexImage.xml new file mode 100644 index 0000000..f9ac1f8 --- /dev/null +++ b/upstream-man-pages/man2/glGetCompressedTexImage.xml @@ -0,0 +1,175 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetCompressedTexImage + 3G + + + glGetCompressedTexImage + return a compressed texture image + + C Specification + + + void glGetCompressedTexImage + GLenum target + GLint lod + GLvoid * img + + + + + Parameters + + + target + + + Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, and GL_TEXTURE_3D + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. + + + + + lod + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + img + + + Returns the compressed texture image. + + + + + + Description + + glGetCompressedTexImage returns the compressed texture image associated with target and lod + into img. img should be an array of + GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes. + target specifies whether the desired texture image was one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of GL_TEXTURE_CUBE_MAP_*), or + glTexImage3D (GL_TEXTURE_3D). + lod specifies the level-of-detail number of the desired image. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. + + + To minimize errors, first verify that the texture is compressed by calling + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If + the texture is compressed, then determine the amount of memory required to + store the compressed texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the + internal format of the texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_INTERNAL_FORMAT. + To store the texture for later use, associate the internal format and size + with the retrieved texture image. These data can be used by the respective + texture or subtexture loading routine used for loading target textures. + + + Notes + + glGetCompressedTexImage is available only if the GL version is 1.3 or greater. + + + Errors + + GL_INVALID_VALUE is generated if lod is less than zero or greater + than the maximum number of LODs permitted by the implementation. + + + GL_INVALID_OPERATION is generated if glGetCompressedTexImage is used to retrieve a + texture that is in an uncompressed internal format. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glGetCompressedTexImage + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED + + + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glDrawPixels, + glReadPixels, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetConvolutionFilter.xml b/upstream-man-pages/man2/glGetConvolutionFilter.xml new file mode 100644 index 0000000..89b3e65 --- /dev/null +++ b/upstream-man-pages/man2/glGetConvolutionFilter.xml @@ -0,0 +1,277 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetConvolutionFilter + 3G + + + glGetConvolutionFilter + get current 1D or 2D convolution filter kernel + + C Specification + + + void glGetConvolutionFilter + GLenum target + GLenum format + GLenum type + GLvoid * image + + + + Parameters + + + target + + + The filter to be retrieved. + Must be one of + GL_CONVOLUTION_1D or + GL_CONVOLUTION_2D. + + + + + format + + + Format of the output image. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. + + + + + type + + + Data type of components in the output image. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + image + + + Pointer to storage for the output image. + + + + + + Description + + glGetConvolutionFilter returns the current 1D or 2D convolution filter kernel as an image. + The one- or two-dimensional image is placed in image according to the + specifications in format and type. + No pixel transfer operations are performed on this image, but the relevant + pixel storage modes are applied. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a convolution filter is + requested, image is treated as a byte offset into the buffer object's data store. + + + Color components that are present in format but not included in the + internal format of the filter are returned as zero. + The assignments of internal color components to the components of format + are as follows. + + + + + + + + + Internal Component + + + Resulting Component + + + + + + + Red + + + Red + + + + + Green + + + Green + + + + + Blue + + + Blue + + + + + Alpha + + + Alpha + + + + + Luminance + + + Red + + + + + Intensity + + + Red + + + + + + + + + Notes + + glGetConvolutionFilter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + The current separable 2D filter must be retrieved with + glGetSeparableFilter rather than glGetConvolutionFilter. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and image is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glGetConvolutionFilter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glGetSeparableFilter, + glConvolutionParameter, + glConvolutionFilter1D, + glConvolutionFilter2D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetConvolutionParameter.xml b/upstream-man-pages/man2/glGetConvolutionParameter.xml new file mode 100644 index 0000000..a8536cd --- /dev/null +++ b/upstream-man-pages/man2/glGetConvolutionParameter.xml @@ -0,0 +1,225 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetConvolutionParameter + 3G + + + glGetConvolutionParameter + get convolution parameters + + C Specification + + + void glGetConvolutionParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetConvolutionParameteriv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + The filter whose parameters are to be retrieved. + Must be one of + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D. + + + + + pname + + + The parameter to be retrieved. + Must be one of + GL_CONVOLUTION_BORDER_MODE, + GL_CONVOLUTION_BORDER_COLOR, + GL_CONVOLUTION_FILTER_SCALE, + GL_CONVOLUTION_FILTER_BIAS, + GL_CONVOLUTION_FORMAT, + GL_CONVOLUTION_WIDTH, + GL_CONVOLUTION_HEIGHT, + GL_MAX_CONVOLUTION_WIDTH, or + GL_MAX_CONVOLUTION_HEIGHT. + + + + + params + + + Pointer to storage for the parameters to be retrieved. + + + + + + Description + + glGetConvolutionParameter retrieves convolution parameters. + target determines which convolution filter is queried. + pname determines which parameter is returned: + + + + GL_CONVOLUTION_BORDER_MODE + + + + + The convolution border mode. + See glConvolutionParameter for a list of border modes. + + + + + GL_CONVOLUTION_BORDER_COLOR + + + + + The current convolution border color. + params must be a pointer to an array of four elements, + which will receive the red, green, blue, and alpha border colors. + + + + + GL_CONVOLUTION_FILTER_SCALE + + + + + The current filter scale factors. + params must be a pointer to an array of four elements, + which will receive the red, green, blue, and alpha filter scale + factors in that order. + + + + + GL_CONVOLUTION_FILTER_BIAS + + + + + The current filter bias factors. + params must be a pointer to an array of four elements, + which will receive the red, green, blue, and alpha filter bias + terms in that order. + + + + + GL_CONVOLUTION_FORMAT + + + + + The current internal format. + See glConvolutionFilter1D, glConvolutionFilter2D, + and glSeparableFilter2D for lists of allowable + formats. + + + + + GL_CONVOLUTION_WIDTH + + + + + The current filter image width. + + + + + GL_CONVOLUTION_HEIGHT + + + + + The current filter image height. + + + + + GL_MAX_CONVOLUTION_WIDTH + + + + + The maximum acceptable filter image width. + + + + + GL_MAX_CONVOLUTION_HEIGHT + + + + + The maximum acceptable filter image height. + + + + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if pname is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if target is GL_CONVOLUTION_1D + and pname is GL_CONVOLUTION_HEIGHT or + GL_MAX_CONVOLUTION_HEIGHT. + + + GL_INVALID_OPERATION is generated if glGetConvolutionParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glGetConvolutionFilter, + glGetSeparableFilter, + glConvolutionParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetError.xml b/upstream-man-pages/man2/glGetError.xml new file mode 100644 index 0000000..454fb9c --- /dev/null +++ b/upstream-man-pages/man2/glGetError.xml @@ -0,0 +1,173 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetError + 3G + + + glGetError + return error information + + C Specification + + + GLenum glGetError + void + + + + Description + + glGetError returns the value of the error flag. + Each detectable error is assigned a numeric code and symbolic name. + When an error occurs, + the error flag is set to the appropriate error code value. + No other errors are recorded until glGetError is called, + the error code is returned, + and the flag is reset to GL_NO_ERROR. + If a call to glGetError returns GL_NO_ERROR, + there has been no detectable error since the last call to glGetError, + or since the GL was initialized. + + + To allow for distributed implementations, + there may be several error flags. + If any single error flag has recorded an error, + the value of that flag is returned + and that flag is reset to GL_NO_ERROR + when glGetError is called. + If more than one flag has recorded an error, + glGetError returns and clears an arbitrary error flag value. + Thus, glGetError should always be called in a loop, + until it returns GL_NO_ERROR, + if all error flags are to be reset. + + + Initially, all error flags are set to GL_NO_ERROR. + + + The following errors are currently defined: + + + + GL_NO_ERROR + + + No error has been recorded. + The value of this symbolic constant is guaranteed to be 0. + + + + + GL_INVALID_ENUM + + + An unacceptable value is specified for an enumerated argument. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_VALUE + + + A numeric argument is out of range. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_OPERATION + + + The specified operation is not allowed in the current state. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_STACK_OVERFLOW + + + This command would cause a stack overflow. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_STACK_UNDERFLOW + + + This command would cause a stack underflow. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_OUT_OF_MEMORY + + + There is not enough memory left to execute the command. + The state of the GL is undefined, + except for the state of the error flags, + after this error is recorded. + + + + + GL_TABLE_TOO_LARGE + + + The specified table exceeds the implementation's maximum supported table + size. The offending command is ignored and has no other side effect + than to set the error flag. + + + + + + When an error flag is set, + results of a GL operation are undefined only if GL_OUT_OF_MEMORY + has occurred. + In all other cases, + the command generating the error is ignored and has no effect on the GL state + or frame buffer contents. + If the generating command returns a value, it returns 0. + If glGetError itself generates an error, it returns 0. + + + Notes + + GL_TABLE_TOO_LARGE was introduced in GL version 1.2. + + + Errors + + GL_INVALID_OPERATION is generated if glGetError + is executed between the execution of glBegin + and the corresponding execution of glEnd. + In this case, glGetError returns 0. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetHistogram.xml b/upstream-man-pages/man2/glGetHistogram.xml new file mode 100644 index 0000000..cef1e78 --- /dev/null +++ b/upstream-man-pages/man2/glGetHistogram.xml @@ -0,0 +1,271 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetHistogram + 3G + + + glGetHistogram + get histogram table + + C Specification + + + void glGetHistogram + GLenum target + GLboolean reset + GLenum format + GLenum type + GLvoid * values + + + + Parameters + + + target + + + Must be + GL_HISTOGRAM. + + + + + reset + + + If GL_TRUE, each component counter that is actually returned + is reset to zero. (Other counters are unaffected.) + If GL_FALSE, none of the counters in the histogram table is modified. + + + + + format + + + The format of values to be returned in values. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. + + + + + type + + + The type of values to be returned in values. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + values + + + A pointer to storage for the returned histogram table. + + + + + + Description + + glGetHistogram returns the current histogram table as a one-dimensional image + with the same width as the histogram. + No pixel transfer operations are performed on this image, but pixel storage + modes that are applicable to 1D images are honored. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a histogram table is + requested, values is treated as a byte offset into the buffer object's data store. + + + Color components that are requested in the specified format, but which + are not included in the internal format of the histogram, are returned as + zero. + The assignments of internal color components to the components + requested by format are: + + + + + + + + + Internal Component + + + Resulting Component + + + + + + + Red + + + Red + + + + + Green + + + Green + + + + + Blue + + + Blue + + + + + Alpha + + + Alpha + + + + + Luminance + + + Red + + + + + + + + + Notes + + glGetHistogram is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_HISTOGRAM. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glGetHistogram is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetHistogramParameter + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glHistogram, + glResetHistogram, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetHistogramParameter.xml b/upstream-man-pages/man2/glGetHistogramParameter.xml new file mode 100644 index 0000000..71124ed --- /dev/null +++ b/upstream-man-pages/man2/glGetHistogramParameter.xml @@ -0,0 +1,207 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetHistogramParameter + 3G + + + glGetHistogramParameter + get histogram parameters + + C Specification + + + void glGetHistogramParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetHistogramParameteriv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + Must be one of + GL_HISTOGRAM or + GL_PROXY_HISTOGRAM. + + + + + pname + + + The name of the parameter to be retrieved. + Must be one of + GL_HISTOGRAM_WIDTH, + GL_HISTOGRAM_FORMAT, + GL_HISTOGRAM_RED_SIZE, + GL_HISTOGRAM_GREEN_SIZE, + GL_HISTOGRAM_BLUE_SIZE, + GL_HISTOGRAM_ALPHA_SIZE, + GL_HISTOGRAM_LUMINANCE_SIZE, or + GL_HISTOGRAM_SINK. + + + + + params + + + Pointer to storage for the returned values. + + + + + + Description + + glGetHistogramParameter is used to query parameter values for the current histogram or for + a proxy. The histogram state information may be queried by calling + glGetHistogramParameter with a target of GL_HISTOGRAM (to + obtain information for the current histogram table) or + GL_PROXY_HISTOGRAM (to obtain information from the most recent + proxy request) and one of the following values for the pname argument: + + + + + + + + + + + Parameter + + + Description + + + + + + + GL_HISTOGRAM_WIDTH + + + Histogram table width + + + + + GL_HISTOGRAM_FORMAT + + + Internal format + + + + + GL_HISTOGRAM_RED_SIZE + + + Red component counter size, in bits + + + + + GL_HISTOGRAM_GREEN_SIZE + + + Green component counter size, in bits + + + + + GL_HISTOGRAM_BLUE_SIZE + + + Blue component counter size, in bits + + + + + GL_HISTOGRAM_ALPHA_SIZE + + + Alpha component counter size, in bits + + + + + GL_HISTOGRAM_LUMINANCE_SIZE + + + Luminance component counter size, in bits + + + + + GL_HISTOGRAM_SINK + + + Value of the sink parameter + + + + + + + + + Notes + + glGetHistogramParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if pname is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if glGetHistogramParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glGetHistogram, + glHistogram + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetLight.xml b/upstream-man-pages/man2/glGetLight.xml new file mode 100644 index 0000000..970f8d5 --- /dev/null +++ b/upstream-man-pages/man2/glGetLight.xml @@ -0,0 +1,336 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetLight + 3G + + + glGetLight + return light source parameter values + + C Specification + + + void glGetLightfv + GLenum light + GLenum pname + GLfloat * params + + + + + void glGetLightiv + GLenum light + GLenum pname + GLint * params + + + + + Parameters + + + light + + + Specifies a light source. + The number of possible lights depends on the implementation, + but at least eight lights are supported. + They are identified by symbolic names of the form GL_LIGHT + i + where + i + ranges from 0 to the value of GL_MAX_LIGHTS - 1. + + + + + pname + + + Specifies a light source parameter for light. + Accepted symbolic names are + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_POSITION, + GL_SPOT_DIRECTION, + GL_SPOT_EXPONENT, + GL_SPOT_CUTOFF, + GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION, and + GL_QUADRATIC_ATTENUATION. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetLight returns in params the value or values of a light source parameter. + light names the light and is a symbolic name of the form GL_LIGHT + i + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. + GL_MAX_LIGHTS is an implementation dependent constant that is + greater than or equal to eight. + pname specifies one of ten light source parameters, + again by symbolic name. + + + The following parameters are defined: + + + + GL_AMBIENT + + + params returns four integer or floating-point values representing the + ambient intensity of the light source. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0, 0, 0, 1). + + + + + GL_DIFFUSE + + + params returns four integer or floating-point values representing the + diffuse intensity of the light source. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 0). + + + + + GL_SPECULAR + + + params returns four integer or floating-point values representing the + specular intensity of the light source. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 0). + + + + + GL_POSITION + + + params returns four integer or floating-point values representing the + position of the light source. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer value. + The returned values are those maintained in eye coordinates. + They will not be equal to the values specified using glLight, + unless the modelview matrix was identity at the time glLight was + called. The initial value is (0, 0, 1, 0). + + + + + GL_SPOT_DIRECTION + + + params returns three integer or floating-point values representing the + direction of the light source. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer value. + The returned values are those maintained in eye coordinates. + They will not be equal to the values specified using glLight, + unless the modelview matrix was identity at the time glLight was called. + Although spot direction is normalized before being used in the lighting + equation, + the returned values are the transformed versions of the specified values + prior to normalization. The initial value is + + + + 0 + 0 + -1 + + . + + + + + GL_SPOT_EXPONENT + + + params returns a single integer or floating-point value representing the + spot exponent of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 0. + + + + + GL_SPOT_CUTOFF + + + params returns a single integer or floating-point value representing the + spot cutoff angle of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 180. + + + + + GL_CONSTANT_ATTENUATION + + + params returns a single integer or floating-point value representing the + constant (not distance-related) attenuation of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 1. + + + + + GL_LINEAR_ATTENUATION + + + params returns a single integer or floating-point value representing the + linear attenuation of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 0. + + + + + GL_QUADRATIC_ATTENUATION + + + params returns a single integer or floating-point value representing the + quadratic attenuation of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 0. + + + + + + Notes + + It is always the case that GL_LIGHT + i + = GL_LIGHT0 + + i. + + + If an error is generated, + no change is made to the contents of params. + + + Errors + + GL_INVALID_ENUM is generated if light or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glGetLight + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glLight + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetMap.xml b/upstream-man-pages/man2/glGetMap.xml new file mode 100644 index 0000000..a323123 --- /dev/null +++ b/upstream-man-pages/man2/glGetMap.xml @@ -0,0 +1,227 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetMap + 3G + + + glGetMap + return evaluator parameters + + C Specification + + + void glGetMapdv + GLenum target + GLenum query + GLdouble * v + + + + + void glGetMapfv + GLenum target + GLenum query + GLfloat * v + + + + + void glGetMapiv + GLenum target + GLenum query + GLint * v + + + + + Parameters + + + target + + + Specifies the symbolic name of a map. + Accepted values are + GL_MAP1_COLOR_4, + GL_MAP1_INDEX, + GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4, + GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4, + GL_MAP2_COLOR_4, + GL_MAP2_INDEX, + GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3, + GL_MAP2_TEXTURE_COORD_4, + GL_MAP2_VERTEX_3, and + GL_MAP2_VERTEX_4. + + + + + query + + + Specifies which parameter to return. + Symbolic names + GL_COEFF, + GL_ORDER, and + GL_DOMAIN are accepted. + + + + + v + + + Returns the requested data. + + + + + + Description + + glMap1 and glMap2 define evaluators. + glGetMap returns evaluator parameters. + target chooses a map, + query selects a specific parameter, + and v points to storage where the values will be returned. + + + The acceptable values for the target parameter are described + in the glMap1 and glMap2 reference pages. + + + query can assume the following values: + + + + GL_COEFF + + + v returns the control points for the evaluator function. + One-dimensional evaluators return + order + control points, + and two-dimensional evaluators return + + + + uorder + × + vorder + + + control points. + Each control point consists of one, two, three, or four integer, + single-precision floating-point, + or double-precision floating-point values, + depending on the type of the evaluator. + The GL returns two-dimensional control points in row-major order, + incrementing the + uorder + index quickly + and the + vorder + index after each row. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer values. + + + + + GL_ORDER + + + v returns the order of the evaluator function. + One-dimensional evaluators return a single value, + order. + The initial value is 1. + Two-dimensional evaluators return two values, + uorder + and + vorder. + The initial value is 1,1. + + + + + GL_DOMAIN + + + v returns the linear + u + and + v + mapping parameters. + One-dimensional evaluators return two values, + u1 + and + u2, + as specified by glMap1. + Two-dimensional evaluators return four values + (u1, + u2, + v1, + and + v2) + as specified by glMap2. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer values. + + + + + + Notes + + If an error is generated, + no change is made to the contents of v. + + + Errors + + GL_INVALID_ENUM is generated if either target or query is not + an accepted value. + + + GL_INVALID_OPERATION is generated if glGetMap + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glEvalCoord, + glMap1, + glMap2 + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetMaterial.xml b/upstream-man-pages/man2/glGetMaterial.xml new file mode 100644 index 0000000..2f00026 --- /dev/null +++ b/upstream-man-pages/man2/glGetMaterial.xml @@ -0,0 +1,258 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetMaterial + 3G + + + glGetMaterial + return material parameters + + C Specification + + + void glGetMaterialfv + GLenum face + GLenum pname + GLfloat * params + + + + + void glGetMaterialiv + GLenum face + GLenum pname + GLint * params + + + + + Parameters + + + face + + + Specifies which of the two materials is being queried. + GL_FRONT or GL_BACK are accepted, + representing the front and back materials, + respectively. + + + + + pname + + + Specifies the material parameter to return. + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_EMISSION, + GL_SHININESS, and + GL_COLOR_INDEXES + are accepted. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetMaterial returns in params the value or values of parameter pname + of material face. Six parameters are defined: + + + + GL_AMBIENT + + + params returns four integer or floating-point values representing the + ambient reflectance of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0.2, 0.2, 0.2, 1.0) + + + + + GL_DIFFUSE + + + params returns four integer or floating-point values representing the + diffuse reflectance of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0.8, 0.8, 0.8, 1.0). + + + + + GL_SPECULAR + + + params returns four integer or floating-point values representing the + specular reflectance of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0, 0, 0, 1). + + + + + GL_EMISSION + + + params returns four integer or floating-point values representing the + emitted light intensity of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0, 0, 0, 1). + + + + + GL_SHININESS + + + params returns one integer or floating-point value representing the + specular exponent of the material. + Integer values, + when requested, + are computed by rounding the internal floating-point value to the + nearest integer value. The initial value is 0. + + + + + GL_COLOR_INDEXES + + + params returns three integer or floating-point values representing the + ambient, diffuse, and specular indices of the material. + These indices are used only for color index lighting. + (All the other parameters are used only for RGBA lighting.) + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer values. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + Errors + + GL_INVALID_ENUM is generated if face or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glGetMaterial + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glMaterial + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetMinmax.xml b/upstream-man-pages/man2/glGetMinmax.xml new file mode 100644 index 0000000..b6c38bd --- /dev/null +++ b/upstream-man-pages/man2/glGetMinmax.xml @@ -0,0 +1,280 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetMinmax + 3G + + + glGetMinmax + get minimum and maximum pixel values + + C Specification + + + void glGetMinmax + GLenum target + GLboolean reset + GLenum format + GLenum types + GLvoid * values + + + + Parameters + + + target + + + Must be + GL_MINMAX. + + + + + reset + + + If GL_TRUE, all entries in the minmax table that are actually + returned are reset to their initial values. (Other entries are unaltered.) + If GL_FALSE, the minmax table is unaltered. + + + + + format + + + The format of the data to be returned in values. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. + + + + + types + + + The type of the data to be returned in values. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + values + + + A pointer to storage for the returned values. + + + + + + Description + + glGetMinmax returns the accumulated minimum and maximum pixel values (computed on a + per-component basis) in a one-dimensional image of width 2. The first set + of return values are the minima, and the second set of return values + are the maxima. + The format of the return values is determined by format, and their type is + determined by types. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while minimum and maximum pixel values are + requested, values is treated as a byte offset into the buffer object's data store. + + + No pixel transfer operations are performed on the return values, but pixel + storage modes that are applicable to one-dimensional images are performed. + Color components that are requested in the specified format, but that + are not included in the internal format of the minmax table, are + returned as zero. The assignment of internal color components to the + components requested by format are as follows: + + + + + + + + + + + Internal Component + + + Resulting Component + + + + + + + Red + + + Red + + + + + Green + + + Green + + + + + Blue + + + Blue + + + + + Alpha + + + Alpha + + + + + Luminance + + + Red + + + + + + + If reset is GL_TRUE, the minmax table entries corresponding + to the return values are reset to their initial + values. Minimum and maximum values that are not returned are not + modified, even if reset is GL_TRUE. + + + Notes + + glGetMinmax is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_MINMAX. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if types is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if types is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if types is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glGetMinmax is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetMinmaxParameter + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glMinmax, + glResetMinmax, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetMinmaxParameter.xml b/upstream-man-pages/man2/glGetMinmaxParameter.xml new file mode 100644 index 0000000..930fa39 --- /dev/null +++ b/upstream-man-pages/man2/glGetMinmaxParameter.xml @@ -0,0 +1,147 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetMinmaxParameter + 3G + + + glGetMinmaxParameter + get minmax parameters + + C Specification + + + void glGetMinmaxParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetMinmaxParameteriv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + Must be + GL_MINMAX. + + + + + pname + + + The parameter to be retrieved. + Must be one of + GL_MINMAX_FORMAT or + GL_MINMAX_SINK. + + + + + params + + + A pointer to storage for the retrieved parameters. + + + + + + Description + + glGetMinmaxParameter retrieves parameters for the current minmax table by setting + pname to one of the following values: + + + + + + + + + + + Parameter + + + Description + + + + + + + GL_MINMAX_FORMAT + + + Internal format of minmax table + + + + + GL_MINMAX_SINK + + + Value of the sink parameter + + + + + + + + + Notes + + glGetMinmaxParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_MINMAX. + + + GL_INVALID_ENUM is generated if pname is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if glGetMinmaxParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glMinmax, + glGetMinmax + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetPixelMap.xml b/upstream-man-pages/man2/glGetPixelMap.xml new file mode 100644 index 0000000..116d61b --- /dev/null +++ b/upstream-man-pages/man2/glGetPixelMap.xml @@ -0,0 +1,237 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetPixelMap + 3G + + + glGetPixelMap + return the specified pixel map + + C Specification + + + void glGetPixelMapfv + GLenum map + GLfloat * data + + + + + void glGetPixelMapuiv + GLenum map + GLuint * data + + + + + void glGetPixelMapusv + GLenum map + GLushort * data + + + + Parameters + + + map + + + Specifies the name of the pixel map to return. + Accepted values are + GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, + GL_PIXEL_MAP_I_TO_A, + GL_PIXEL_MAP_R_TO_R, + GL_PIXEL_MAP_G_TO_G, + GL_PIXEL_MAP_B_TO_B, and + GL_PIXEL_MAP_A_TO_A. + + + + + data + + + Returns the pixel map contents. + + + + + + Description + + See the glPixelMap reference page for a description of the acceptable + values for the map parameter. + glGetPixelMap returns in data the contents of the pixel map + specified in map. + Pixel maps are used during the execution of + glReadPixels, + glDrawPixels, + glCopyPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, and + glCopyTexSubImage3D. + to map color indices, + stencil indices, + color components, + and depth components to other values. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a pixel map is + requested, data is treated as a byte offset into the buffer object's data store. + + + Unsigned integer values, + if requested, + are linearly mapped from the internal fixed or floating-point representation + such that 1.0 maps to the largest representable integer value, + and 0.0 maps to 0. + Return unsigned integer values are undefined if the map value was + not in the range [0,1]. + + + To determine the required size of map, + call glGet with the appropriate symbolic + constant. + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if map is not an accepted value. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated by glGetPixelMapfv if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a GLfloat datum. + + + GL_INVALID_OPERATION is generated by glGetPixelMapuiv if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a GLuint datum. + + + GL_INVALID_OPERATION is generated by glGetPixelMapusv if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a GLushort datum. + + + GL_INVALID_OPERATION is generated if glGetPixelMap + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_PIXEL_MAP_I_TO_I_SIZE + + + glGet with argument GL_PIXEL_MAP_S_TO_S_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_R_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_G_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_B_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_A_SIZE + + + glGet with argument GL_PIXEL_MAP_R_TO_R_SIZE + + + glGet with argument GL_PIXEL_MAP_G_TO_G_SIZE + + + glGet with argument GL_PIXEL_MAP_B_TO_B_SIZE + + + glGet with argument GL_PIXEL_MAP_A_TO_A_SIZE + + + glGet with argument GL_MAX_PIXEL_MAP_TABLE + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glColorSubTable, + glColorTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glCopyColorSubTable, + glCopyColorTable, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glGetHistogram, + glGetMinmax, + glGetTexImage, + glPixelMap, + glPixelTransfer, + glReadPixels, + glSeparableFilter2D, + glTexImage1D, + glTexImage1D, + glTexImage2D + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetPointerv.xml b/upstream-man-pages/man2/glGetPointerv.xml new file mode 100644 index 0000000..ef800e3 --- /dev/null +++ b/upstream-man-pages/man2/glGetPointerv.xml @@ -0,0 +1,127 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetPointerv + 3G + + + glGetPointerv + return the address of the specified pointer + + C Specification + + + void glGetPointerv + GLenum pname + GLvoid ** params + + + + + Parameters + + + pname + + + Specifies the array or buffer pointer to be returned. + Symbolic constants + GL_COLOR_ARRAY_POINTER, + GL_EDGE_FLAG_ARRAY_POINTER, + GL_FOG_COORD_ARRAY_POINTER, + GL_FEEDBACK_BUFFER_POINTER, + GL_INDEX_ARRAY_POINTER, + GL_NORMAL_ARRAY_POINTER, + GL_SECONDARY_COLOR_ARRAY_POINTER, + GL_SELECTION_BUFFER_POINTER, + GL_TEXTURE_COORD_ARRAY_POINTER, + or + GL_VERTEX_ARRAY_POINTER + are accepted. + + + + + params + + + Returns the pointer value specified by pname. + + + + + + Description + + glGetPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, and params is a pointer to a + location in which to place the returned data. + + + For all pname arguments except GL_FEEDBACK_BUFFER_POINTER and GL_SELECTION_BUFFER_POINTER, + if a non-zero named buffer object was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously + specified, the pointer returned is a byte offset into the buffer object's data store. + Buffer objects are only available in OpenGL versions 1.5 and greater. + + + Notes + + glGetPointerv is available only if the GL version is 1.1 or greater. + + + GL_FOG_COORD_ARRAY_POINTER and GL_SECONDARY_COLOR_ARRAY_POINTER + are available only if the GL version is 1.4 or greater. + + + The pointers are all client-side state. + + + The initial value for each pointer is 0. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture + extension is supported, querying the GL_TEXTURE_COORD_ARRAY_POINTER + returns the value for the active client texture unit. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + See Also + + glBindBuffer, + glClientActiveTexture, + glColorPointer, + glEdgeFlagPointer, + glFogCoordPointer, + glFeedbackBuffer, + glGetVertexAttribPointerv, + glIndexPointer, + glNormalPointer, + glSecondaryColorPointer, + glSelectBuffer, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetPolygonStipple.xml b/upstream-man-pages/man2/glGetPolygonStipple.xml new file mode 100644 index 0000000..757a937 --- /dev/null +++ b/upstream-man-pages/man2/glGetPolygonStipple.xml @@ -0,0 +1,122 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetPolygonStipple + 3G + + + glGetPolygonStipple + return the polygon stipple pattern + + C Specification + + + void glGetPolygonStipple + GLubyte * pattern + + + + + Parameters + + + pattern + + + Returns the stipple pattern. The initial value is all 1's. + + + + + + Description + + glGetPolygonStipple returns to pattern a + + + + 32 + × + 32 + + + polygon stipple pattern. + The pattern is packed into memory as if glReadPixels + with both height and width of 32, + type of GL_BITMAP, + and format of GL_COLOR_INDEX were called, + and the stipple pattern were stored in an internal + + + + 32 + × + 32 + + + color + index buffer. + Unlike glReadPixels, + however, + pixel transfer operations + (shift, offset, pixel map) + are not applied to the returned stipple image. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a polygon stipple pattern is + requested, pattern is treated as a byte offset into the buffer object's data store. + + + Notes + + If an error is generated, + no change is made to the contents of pattern. + + + Errors + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glGetPolygonStipple + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glPixelStore, + glPixelTransfer, + glPolygonStipple, + glReadPixels + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetProgram.xml b/upstream-man-pages/man2/glGetProgram.xml new file mode 100644 index 0000000..4268d00 --- /dev/null +++ b/upstream-man-pages/man2/glGetProgram.xml @@ -0,0 +1,241 @@ + + + + + glGetProgram + 3G + + + glGetProgramiv + Returns a parameter from a program object + + C Specification + + + void glGetProgramiv + GLuint program + GLenum pname + GLint *params + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + pname + + Specifies the object parameter. Accepted + symbolic names are + GL_DELETE_STATUS, + GL_LINK_STATUS, + GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS, + GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_MAX_LENGTH. + + + + params + + Returns the requested object parameter. + + + + + Description + glGetProgram + returns in params + the value of a parameter for a specific program object. The following parameters are defined: + + + + GL_DELETE_STATUS + + + + params returns + GL_TRUE if + program is currently flagged + for deletion, and GL_FALSE + otherwise. + + + + + GL_LINK_STATUS + + + + params returns + GL_TRUE if the last link + operation on program was + successful, and GL_FALSE + otherwise. + + + + + GL_VALIDATE_STATUS + + + + params returns + GL_TRUE or if the last + validation operation on + program was successful, and + GL_FALSE + otherwise. + + + + + GL_INFO_LOG_LENGTH + + + + params returns the + number of characters in the information log for + program including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If program has no + information log, a value of 0 is + returned. + + + + + GL_ATTACHED_SHADERS + + + + params returns the + number of shader objects attached to + program. + + + + + GL_ACTIVE_ATTRIBUTES + + + + params returns the + number of active attribute variables for + program. + + + + + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH + + + + params returns the + length of the longest active attribute name for + program, including the null + termination character (i.e., the size of the + character buffer required to store the longest + attribute name). If no active attributes exist, 0 is + returned. + + + + + GL_ACTIVE_UNIFORMS + + + + params returns the + number of active uniform variables for + program. + + + + + GL_ACTIVE_UNIFORM_MAX_LENGTH + + + + params returns the + length of the longest active uniform variable name + for program, including the + null termination character (i.e., the size of the + character buffer required to store the longest + uniform variable name). If no active uniform + variables exist, 0 is returned. + + + + + Notes + glGetProgram is available only if the + GL version is 2.0 or greater. + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL. + + GL_INVALID_OPERATION + is generated if program + does not refer to a program object. + + GL_INVALID_ENUM + is generated if pname + is not an accepted value. + + GL_INVALID_OPERATION is generated if + glGetProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetActiveAttrib + with argument program + + glGetActiveUniform + with argument program + + glGetAttachedShaders + with argument program + + glGetProgramInfoLog + with argument program + + glIsProgram + + + See Also + glAttachShader, + glCreateProgram, + glDeleteProgram, + glGetShader, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetProgramInfoLog.xml b/upstream-man-pages/man2/glGetProgramInfoLog.xml new file mode 100644 index 0000000..dca2ec6 --- /dev/null +++ b/upstream-man-pages/man2/glGetProgramInfoLog.xml @@ -0,0 +1,135 @@ + + + + + glGetProgramInfoLog + 3G + + + glGetProgramInfoLog + Returns the information log for a program object + + C Specification + + + void glGetProgramInfoLog + GLuint program + GLsizei maxLength + GLsizei *length + GLchar *infoLog + + + + Parameters + + + program + + Specifies the program object whose information + log is to be queried. + + + + maxLength + + Specifies the size of the character buffer for + storing the returned information log. + + + + length + + Returns the length of the string returned in + infoLog (excluding the null + terminator). + + + + infoLog + + Specifies an array of characters that is used + to return the information log. + + + + + Description + glGetProgramInfoLog returns the + information log for the specified program object. The + information log for a program object is modified when the + program object is linked or validated. The string that is + returned will be null terminated. + + glGetProgramInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetProgram + with the value GL_INFO_LOG_LENGTH. + + The information log for a program object is either an + empty string, or a string containing information about the last + link operation, or a string containing information about the + last validation operation. It may contain diagnostic messages, + warning messages, and other information. When a program object + is created, its information log will be a string of length + 0. + + Notes + glGetProgramInfoLog is available only + if the GL version is 2.0 or greater. + + The information log for a program object is the OpenGL + implementer's primary mechanism for conveying information about + linking and validating. Therefore, the information log can be + helpful to application developers during the development + process, even when these operations are successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + maxLength is less than 0. + + GL_INVALID_OPERATION is generated if + glGetProgramInfoLog is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetProgram + with argument GL_INFO_LOG_LENGTH + + glIsProgram + + See Also + glCompileShader, + glGetShaderInfoLog, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetQueryObject.xml b/upstream-man-pages/man2/glGetQueryObject.xml new file mode 100644 index 0000000..49a54b4 --- /dev/null +++ b/upstream-man-pages/man2/glGetQueryObject.xml @@ -0,0 +1,148 @@ + + + + + + + 2005 + Sams Publishing + + + glGetQueryObject + 3G + + + glGetQueryObject + return parameters of a query object + + C Specification + + + void glGetQueryObjectiv + GLuint id + GLenum pname + GLint * params + + + + + void glGetQueryObjectuiv + GLuint id + GLenum pname + GLuint * params + + + + Parameters + + + id + + + Specifies the name of a query object. + + + + + pname + + + Specifies the symbolic name of a query object parameter. + Accepted values are GL_QUERY_RESULT or GL_QUERY_RESULT_AVAILABLE. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryObject returns in params a selected parameter of the query object + specified by id. + + + pname names a specific query object parameter. pname can be as follows: + + + + GL_QUERY_RESULT + + + params returns the value of the query object's passed samples counter. + The initial value is 0. + + + + + GL_QUERY_RESULT_AVAILABLE + + + params returns whether the passed samples counter is immediately available. + If a delay would occur waiting for the query result, GL_FALSE is returned. + Otherwise, GL_TRUE is returned, which also indicates that the results of all + previous queries are available as well. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetQueryObject implicitly flushes the GL pipeline so that any incomplete rendering + delimited by the occlusion query completes in finite time. + + + If multiple queries are issued using the same query object id before calling + glGetQueryObject, the results of the most recent query will be returned. In this case, + when issuing a new query, the results of the previous query are discarded. + + + glGetQueryObject is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_OPERATION is generated if id is not the name of a query object. + + + GL_INVALID_OPERATION is generated if id is the name of a currently active + query object. + + + GL_INVALID_OPERATION is generated if glGetQueryObject + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glBeginQuery, + glEndQuery, + glGetQueryiv, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetQueryiv.xml b/upstream-man-pages/man2/glGetQueryiv.xml new file mode 100644 index 0000000..ad492a3 --- /dev/null +++ b/upstream-man-pages/man2/glGetQueryiv.xml @@ -0,0 +1,124 @@ + + + + + + + 2005 + Sams Publishing + + + glGetQueryiv + 3G + + + glGetQueryiv + return parameters of a query object target + + C Specification + + + void glGetQueryiv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + Specifies a query object target. + Must be GL_SAMPLES_PASSED. + + + + + pname + + + Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryiv returns in params a selected parameter of the query object target + specified by target. + + + pname names a specific query object target parameter. When target is + GL_SAMPLES_PASSED, pname can be as follows: + + + + GL_CURRENT_QUERY + + + params returns the name of the currently active occlusion query object. + If no occlusion query is active, 0 is returned. The initial value is 0. + + + + + GL_QUERY_COUNTER_BITS + + + params returns the number of bits in the query counter used to accumulate passing samples. + If the number of bits returned is 0, the implementation does not support a query counter, and the results + obtained from glGetQueryObject are useless. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetQueryiv is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glGetQueryiv + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetSeparableFilter.xml b/upstream-man-pages/man2/glGetSeparableFilter.xml new file mode 100644 index 0000000..248c73c --- /dev/null +++ b/upstream-man-pages/man2/glGetSeparableFilter.xml @@ -0,0 +1,295 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetSeparableFilter + 3G + + + glGetSeparableFilter + get separable convolution filter kernel images + + C Specification + + + void glGetSeparableFilter + GLenum target + GLenum format + GLenum type + GLvoid * row + GLvoid * column + GLvoid * span + + + + Parameters + + + target + + + The separable filter to be retrieved. + Must be + GL_SEPARABLE_2D. + + + + + format + + + Format of the output images. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. + + + + + type + + + Data type of components in the output images. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + row + + + Pointer to storage for the row filter image. + + + + + column + + + Pointer to storage for the column filter image. + + + + + span + + + Pointer to storage for the span filter image (currently unused). + + + + + + Description + + glGetSeparableFilter returns the two one-dimensional filter kernel images for the + current separable 2D convolution filter. + The row image is placed in row and the column image is placed in + column according to the specifications in format and type. + (In the current implementation, span is not affected in any way.) + No pixel transfer operations are performed on the images, but the relevant + pixel storage modes are applied. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a separable convolution filter is + requested, row, column, and span are treated as a byte offset into the buffer object's data store. + + + Color components that are present in format but not included in the + internal format of the filters are returned as zero. + The assignments of internal color components to the components of format + are as follows: + + + + + + + + + + + Internal Component + + + Resulting Component + + + + + + + Red + + + Red + + + + + Green + + + Green + + + + + Blue + + + Blue + + + + + Alpha + + + Alpha + + + + + Luminance + + + Red + + + + + Intensity + + + Red + + + + + + + + + Notes + + glGetSeparableFilter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Non-separable 2D filters must be retrieved with glGetConvolutionFilter. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_SEPARABLE_2D. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and row or column is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glGetSeparableFilter is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glGetConvolutionFilter, + glConvolutionParameter, + glSeparableFilter2D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetShader.xml b/upstream-man-pages/man2/glGetShader.xml new file mode 100644 index 0000000..daf5916 --- /dev/null +++ b/upstream-man-pages/man2/glGetShader.xml @@ -0,0 +1,172 @@ + + + + + glGetShader + 3G + + + glGetShaderiv + Returns a parameter from a shader object + + C Specification + + + void glGetShaderiv + GLuint shader + GLenum pname + GLint *params + + + + Parameters + + + shader + + Specifies the shader object to be + queried. + + + + pname + + Specifies the object parameter. Accepted + symbolic names are + GL_SHADER_TYPE, + GL_DELETE_STATUS, + GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH. + + + + params + + Returns the requested object parameter. + + + + + Description + + glGetShader + returns in params + the value of a parameter for a specific shader object. The + following parameters are defined: + + + + GL_SHADER_TYPE + + params returns + GL_VERTEX_SHADER if + shader is a vertex shader + object, and GL_FRAGMENT_SHADER + if shader is a fragment + shader object. + + + + + GL_DELETE_STATUS + + params returns + GL_TRUE if + shader is currently flagged + for deletion, and GL_FALSE + otherwise. + + + + + GL_COMPILE_STATUS + + params returns + GL_TRUE if the last compile + operation on shader was + successful, and GL_FALSE + otherwise. + + + + + GL_INFO_LOG_LENGTH + + params returns the + number of characters in the information log for + shader including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If shader has no + information log, a value of 0 is returned. + + + + + GL_SHADER_SOURCE_LENGTH + + params returns the + length of the concatenation of the source strings + that make up the shader source for the + shader, including the null + termination character. (i.e., the size of the + character buffer required to store the shader + source). If no source code exists, 0 is + returned. + + + + + Notes + glGetShader is available only if the + GL version is 2.0 or greater. + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader does not refer to a shader + object. + + GL_INVALID_ENUM is generated if + pname is not an accepted value. + + GL_INVALID_OPERATION is generated if + glGetShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetShaderInfoLog + with argument shader + + glGetShaderSource + with argument shader + + glIsShader + + See Also + glCompileShader, + glCreateShader, + glDeleteShader, + glGetProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetShaderInfoLog.xml b/upstream-man-pages/man2/glGetShaderInfoLog.xml new file mode 100644 index 0000000..ed10964 --- /dev/null +++ b/upstream-man-pages/man2/glGetShaderInfoLog.xml @@ -0,0 +1,132 @@ + + + + + glGetShaderInfoLog + 3G + + + glGetShaderInfoLog + Returns the information log for a shader object + + C Specification + + + void glGetShaderInfoLog + GLuint shader + GLsizei maxLength + GLsizei *length + GLchar *infoLog + + + + Parameters + + + shader + + Specifies the shader object whose information + log is to be queried. + + + + maxLength + + Specifies the size of the character buffer for + storing the returned information log. + + + + length + + Returns the length of the string returned in + infoLog (excluding the null + terminator). + + + + infoLog + + Specifies an array of characters that is used + to return the information log. + + + + + Description + glGetShaderInfoLog returns the + information log for the specified shader object. The information + log for a shader object is modified when the shader is compiled. + The string that is returned will be null terminated. + + glGetShaderInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetShader + with the value GL_INFO_LOG_LENGTH. + + The information log for a shader object is a string that + may contain diagnostic messages, warning messages, and other + information about the last compile operation. When a shader + object is created, its information log will be a string of + length 0. + + Notes + glGetShaderInfoLog is available only + if the GL version is 2.0 or greater. + + The information log for a shader object is the OpenGL + implementer's primary mechanism for conveying information about + the compilation process. Therefore, the information log can be + helpful to application developers during the development + process, even when compilation is successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + maxLength is less than 0. + + GL_INVALID_OPERATION is generated if + glGetShaderInfoLog is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetShader + with argument GL_INFO_LOG_LENGTH + + glIsShader + + See Also + glCompileShader, + glGetProgramInfoLog, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetShaderSource.xml b/upstream-man-pages/man2/glGetShaderSource.xml new file mode 100644 index 0000000..2e5230c --- /dev/null +++ b/upstream-man-pages/man2/glGetShaderSource.xml @@ -0,0 +1,121 @@ + + + + + glGetShaderSource + 3G + + + glGetShaderSource + Returns the source code string from a shader object + + C Specification + + + void glGetShaderSource + GLuint shader + GLsizei bufSize + GLsizei *length + GLchar *source + + + + Parameters + + + shader + + Specifies the shader object to be + queried. + + + + bufSize + + Specifies the size of the character buffer for + storing the returned source code string. + + + + length + + Returns the length of the string returned in + source (excluding the null + terminator). + + + + source + + Specifies an array of characters that is used + to return the source code string. + + + + + Description + glGetShaderSource returns the + concatenation of the source code strings from the shader object + specified by shader. The source code + strings for a shader object are the result of a previous call to + glShaderSource. + The string returned by the function will be null + terminated. + + glGetShaderSource returns in + source as much of the source code string + as it can, up to a maximum of bufSize + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned source code + string can be obtained by calling + glGetShader + with the value + GL_SHADER_SOURCE_LENGTH. + + Notes + glGetShaderSource is available only + if the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + GL_INVALID_OPERATION is generated if + glGetShaderSource is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetShader + with argument + GL_SHADER_SOURCE_LENGTH + + glIsShader + + See Also + glCreateShader, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetString.xml b/upstream-man-pages/man2/glGetString.xml new file mode 100644 index 0000000..e431d7a --- /dev/null +++ b/upstream-man-pages/man2/glGetString.xml @@ -0,0 +1,169 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetString + 3G + + + glGetString + return a string describing the current GL connection + + C Specification + + + const GLubyte* glGetString + GLenum name + + + + Parameters + + + name + + + Specifies a symbolic constant, one of + GL_VENDOR, GL_RENDERER, GL_VERSION, GL_SHADING_LANGUAGE_VERSION, or GL_EXTENSIONS. + + + + + + Description + + glGetString returns a pointer to a static string + describing some aspect of the current GL connection. + name can be one of the following: + + + + GL_VENDOR + + + + + Returns the company responsible for this GL implementation. + This name does not change from release to release. + + + + + GL_RENDERER + + + + + Returns the name of the renderer. + This name is typically specific to a particular configuration of a hardware + platform. + It does not change from release to release. + + + + + GL_VERSION + + + + + Returns a version or release number. + + + + + GL_SHADING_LANGUAGE_VERSION + + + + + Returns a version or release number for the shading language. + + + + + GL_EXTENSIONS + + + + + Returns a space-separated list of supported extensions to GL. + + + + + + Because the GL does not include queries for the performance + characteristics of an implementation, some applications are written to + recognize known platforms and modify their GL usage based on known + performance characteristics of these platforms. + Strings GL_VENDOR and GL_RENDERER together uniquely specify + a platform. They do not change from release to release and should be used + by platform-recognition algorithms. + + + Some applications want to make use of features that + are not part of the standard GL. These features + may be implemented as extensions to the standard GL. + The GL_EXTENSIONS string is a space-separated + list of supported GL extensions. + (Extension names never contain a space character.) + + + The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. + The version number uses one + of these forms: + + + major_number.minor_number + major_number.minor_number.release_number + + + Vendor-specific information may follow the version + number. Its format depends on the implementation, but + a space always separates the version number and + the vendor-specific information. + + + All strings are null-terminated. + + + Notes + + If an error is generated, glGetString returns 0. + + + The client and server may support different versions or extensions. + glGetString always returns a compatible version number or list of extensions. + The release number always describes the server. + + + GL_SHADING_LANGUAGE_VERSION is available only if the GL version is 2.0 or greater. + + + Errors + + GL_INVALID_ENUM is generated if name is not an accepted value. + + + GL_INVALID_OPERATION is generated if glGetString + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetTexEnv.xml b/upstream-man-pages/man2/glGetTexEnv.xml new file mode 100644 index 0000000..bec5faa --- /dev/null +++ b/upstream-man-pages/man2/glGetTexEnv.xml @@ -0,0 +1,364 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexEnv + 3G + + + glGetTexEnv + return texture environment parameters + + C Specification + + + void glGetTexEnvfv + GLenum target + GLenum pname + GLfloat * params + + + + + + void glGetTexEnviv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + Specifies a texture environment. May be + GL_TEXTURE_ENV, + GL_TEXTURE_FILTER_CONTROL, or + GL_POINT_SPRITE. + + + + + pname + + + Specifies the symbolic name of a texture environment parameter. + Accepted values are GL_TEXTURE_ENV_MODE, GL_TEXTURE_ENV_COLOR, + GL_TEXTURE_LOD_BIAS, + GL_COMBINE_RGB, + GL_COMBINE_ALPHA, + GL_SRC0_RGB, + GL_SRC1_RGB, + GL_SRC2_RGB, + GL_SRC0_ALPHA, + GL_SRC1_ALPHA, + GL_SRC2_ALPHA, + GL_OPERAND0_RGB, + GL_OPERAND1_RGB, + GL_OPERAND2_RGB, + GL_OPERAND0_ALPHA, + GL_OPERAND1_ALPHA, + GL_OPERAND2_ALPHA, + GL_RGB_SCALE, + GL_ALPHA_SCALE, or + GL_COORD_REPLACE. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetTexEnv returns in params selected values of a texture environment that + was specified with glTexEnv. + target specifies a texture environment. + + + When target is GL_TEXTURE_FILTER_CONTROL, + pname must be GL_TEXTURE_LOD_BIAS. + When target is GL_POINT_SPRITE, + pname must be GL_COORD_REPLACE. + When target is + GL_TEXTURE_ENV, pname can be GL_TEXTURE_ENV_MODE, + GL_TEXTURE_ENV_COLOR, GL_COMBINE_RGB, GL_COMBINE_ALPHA, + GL_RGB_SCALE, GL_ALPHA_SCALE, + GL_SRC0_RGB, GL_SRC1_RGB, GL_SRC2_RGB, + GL_SRC0_ALPHA, GL_SRC1_ALPHA, or GL_SRC2_ALPHA. + + + pname names a specific texture environment parameter, as follows: + + + + GL_TEXTURE_ENV_MODE + + + params returns the single-valued texture environment mode, + a symbolic constant. The initial value is GL_MODULATE. + + + + + GL_TEXTURE_ENV_COLOR + + + params returns four integer or floating-point values that are the + texture environment color. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer, + and + + + -1.0 + + maps to the most negative representable integer. The initial + value is (0, 0, 0, 0). + + + + + GL_TEXTURE_LOD_BIAS + + + params returns a single floating-point value that is the texture + level-of-detail bias. The initial value is 0. + + + + + GL_COMBINE_RGB + + + params returns a single symbolic constant value representing the current + RGB combine mode. The initial value is GL_MODULATE. + + + + + GL_COMBINE_ALPHA + + + params returns a single symbolic constant value representing the current + alpha combine mode. The initial value is GL_MODULATE. + + + + + GL_SRC0_RGB + + + params returns a single symbolic constant value representing the texture + combiner zero's RGB source. The initial value is GL_TEXTURE. + + + + + GL_SRC1_RGB + + + params returns a single symbolic constant value representing the texture + combiner one's RGB source. The initial value is GL_PREVIOUS. + + + + + GL_SRC2_RGB + + + params returns a single symbolic constant value representing the texture + combiner two's RGB source. The initial value is GL_CONSTANT. + + + + + GL_SRC0_ALPHA + + + params returns a single symbolic constant value representing the texture + combiner zero's alpha source. The initial value is GL_TEXTURE. + + + + + GL_SRC1_ALPHA + + + params returns a single symbolic constant value representing the texture + combiner one's alpha source. The initial value is GL_PREVIOUS. + + + + + GL_SRC2_ALPHA + + + params returns a single symbolic constant value representing the texture + combiner two's alpha source. The initial value is GL_CONSTANT. + + + + + GL_OPERAND0_RGB + + + params returns a single symbolic constant value representing the texture + combiner zero's RGB operand. The initial value is GL_SRC_COLOR. + + + + + GL_OPERAND1_RGB + + + params returns a single symbolic constant value representing the texture + combiner one's RGB operand. The initial value is GL_SRC_COLOR. + + + + + GL_OPERAND2_RGB + + + params returns a single symbolic constant value representing the texture + combiner two's RGB operand. The initial value is GL_SRC_ALPHA. + + + + + GL_OPERAND0_ALPHA + + + params returns a single symbolic constant value representing the texture + combiner zero's alpha operand. The initial value is GL_SRC_ALPHA. + + + + + GL_OPERAND1_ALPHA + + + params returns a single symbolic constant value representing the texture + combiner one's alpha operand. The initial value is GL_SRC_ALPHA. + + + + + GL_OPERAND2_ALPHA + + + params returns a single symbolic constant value representing the texture + combiner two's alpha operand. The initial value is GL_SRC_ALPHA. + + + + + GL_RGB_SCALE + + + params returns a single floating-point value representing the current RGB + texture combiner scaling factor. The initial value is 1.0. + + + + + GL_ALPHA_SCALE + + + params returns a single floating-point value representing the current alpha + texture combiner scaling factor. The initial value is 1.0. + + + + + GL_COORD_REPLACE + + + params returns a single boolean value representing the current point sprite + texture coordinate replacement enable state. The initial value is GL_FALSE. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexEnv returns + the texture environment parameters for the active texture unit. + + + GL_COMBINE_RGB, + GL_COMBINE_ALPHA, + GL_SRC0_RGB, + GL_SRC1_RGB, + GL_SRC2_RGB, + GL_SRC0_ALPHA, + GL_SRC1_ALPHA, + GL_SRC2_ALPHA, + GL_OPERAND0_RGB, + GL_OPERAND1_RGB, + GL_OPERAND2_RGB, + GL_OPERAND0_ALPHA, + GL_OPERAND1_ALPHA, + GL_OPERAND2_ALPHA, + GL_RGB_SCALE, and + GL_ALPHA_SCALE are available only if the GL version is 1.3 or greater. + + + GL_TEXTURE_FILTER_CONTROL and GL_TEXTURE_LOD_BIAS are available + only if the GL version is 1.4 or greater. + + + GL_POINT_SPRITE and GL_COORD_REPLACE are available + only if the GL version is 2.0 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glGetTexEnv + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glActiveTexture, + glTexEnv + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetTexGen.xml b/upstream-man-pages/man2/glGetTexGen.xml new file mode 100644 index 0000000..af497aa --- /dev/null +++ b/upstream-man-pages/man2/glGetTexGen.xml @@ -0,0 +1,170 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexGen + 3G + + + glGetTexGen + return texture coordinate generation parameters + + C Specification + + + void glGetTexGendv + GLenum coord + GLenum pname + GLdouble * params + + + + + void glGetTexGenfv + GLenum coord + GLenum pname + GLfloat * params + + + + + void glGetTexGeniv + GLenum coord + GLenum pname + GLint * params + + + + + Parameters + + + coord + + + Specifies a texture coordinate. + Must be + GL_S, + GL_T, + GL_R, or + GL_Q. + + + + + pname + + + Specifies the symbolic name of the value(s) to be returned. + Must be either GL_TEXTURE_GEN_MODE + or the name of one of the texture generation plane equations: + GL_OBJECT_PLANE or GL_EYE_PLANE. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetTexGen returns in params selected parameters of a texture coordinate + generation function that was specified using glTexGen. + coord names one of the (s, t, r, q) + texture coordinates, + using the symbolic constant + GL_S, + GL_T, + GL_R, or + GL_Q. + + + pname specifies one of three symbolic names: + + + + GL_TEXTURE_GEN_MODE + + + params returns the single-valued texture generation function, + a symbolic constant. The initial value is GL_EYE_LINEAR. + + + + + GL_OBJECT_PLANE + + + params returns the four plane equation coefficients that specify + object linear-coordinate generation. + Integer values, when requested, + are mapped directly from the internal floating-point representation. + + + + + GL_EYE_PLANE + + + params returns the four plane equation coefficients that specify + eye linear-coordinate generation. + Integer values, + when requested, + are mapped directly from the internal floating-point representation. + The returned values are those maintained in eye coordinates. + They are not equal to the values specified using glTexGen, + unless the modelview matrix was identity when glTexGen was called. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexGen returns + the texture coordinate generation parameters for the active texture unit. + + + Errors + + GL_INVALID_ENUM is generated if coord or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glGetTexGen + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glActiveTexture, + glTexGen + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetTexImage.xml b/upstream-man-pages/man2/glGetTexImage.xml new file mode 100644 index 0000000..72accf5 --- /dev/null +++ b/upstream-man-pages/man2/glGetTexImage.xml @@ -0,0 +1,326 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexImage + 3G + + + glGetTexImage + return a texture image + + C Specification + + + void glGetTexImage + GLenum target + GLint level + GLenum format + GLenum type + GLvoid * img + + + + + Parameters + + + target + + + Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. + + + + + level + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + format + + + Specifies a pixel format for the returned data. + The supported formats are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies a pixel type for the returned data. + The supported types are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + img + + + Returns the texture image. + Should be a pointer to an array of the type specified by type. + + + + + + Description + + glGetTexImage returns a texture image into img. + target specifies whether the desired texture image is one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of + GL_TEXTURE_CUBE_MAP_*), + or + glTexImage3D (GL_TEXTURE_3D). + level specifies the level-of-detail number of the desired image. + format and type specify the format and type of the desired image array. + See the reference pages glTexImage1D and glDrawPixels + for a description of the acceptable values for the format and type + parameters, respectively. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. + + + To understand the operation of glGetTexImage, consider the selected internal + four-component texture image to be an RGBA color buffer the size of the image. + The semantics of glGetTexImage are then identical to those of glReadPixels, + with the exception that no pixel transfer operations are performed, + when called with the same format and type, + with x and y set to 0, + width set to the width of the texture image + (including border if one was specified), + and height set to 1 for 1D images, + or to the height of the texture image + (including border if one was specified) + for 2D images. + Because the internal texture image is an RGBA image, + pixel formats GL_COLOR_INDEX, + GL_STENCIL_INDEX, + and GL_DEPTH_COMPONENT are not accepted, + and pixel type GL_BITMAP is not accepted. + + + If the selected texture image does not contain four components, + the following mappings are applied. + Single-component textures are treated as RGBA buffers with red set + to the single-component value, + green set to 0, blue set to 0, and alpha set to 1. + Two-component textures are treated as RGBA buffers with red set to + the value of component zero, + alpha set to the value of component one, + and green and blue set to 0. + Finally, + three-component textures are treated as RGBA buffers with red set to + component zero, + green set to component one, + blue set to component two, + and alpha set to 1. + + + To determine the required size of img, + use glGetTexLevelParameter to determine the dimensions of the + internal texture image, + then scale the required number of pixels by the storage required for + each pixel, + based on format and type. + Be sure to take the pixel storage parameters into account, + especially GL_PACK_ALIGNMENT. + + + Notes + + If an error is generated, + no change is made to the contents of img. + + + The types GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + and the formats + GL_BGR, and GL_BGRA are available only if the GL version is + 1.2 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexImage returns + the texture image for the active texture unit. + + + Errors + + GL_INVALID_ENUM is generated if target, format, or type is not + an accepted value. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + + max + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB. + + + GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV, and format is neither GL_RGBA + or GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and img is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glGetTexImage + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexLevelParameter with argument GL_TEXTURE_WIDTH + + + glGetTexLevelParameter with argument GL_TEXTURE_HEIGHT + + + glGetTexLevelParameter with argument GL_TEXTURE_BORDER + + + glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT + + + glGet with arguments GL_PACK_ALIGNMENT and others + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glDrawPixels, + glReadPixels, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetTexLevelParameter.xml b/upstream-man-pages/man2/glGetTexLevelParameter.xml new file mode 100644 index 0000000..ec5a06b --- /dev/null +++ b/upstream-man-pages/man2/glGetTexLevelParameter.xml @@ -0,0 +1,372 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexLevelParameter + 3G + + + glGetTexLevelParameter + return texture parameter values for a specific level of detail + + C Specification + + + void glGetTexLevelParameterfv + GLenum target + GLint level + GLenum pname + GLfloat * params + + + + + void glGetTexLevelParameteriv + GLenum target + GLint level + GLenum pname + GLint * params + + + + + Parameters + + + target + + + Specifies the symbolic name of the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT, + GL_TEXTURE_DEPTH, + GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_BORDER, + GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_LUMINANCE_SIZE, + GL_TEXTURE_INTENSITY_SIZE, + GL_TEXTURE_DEPTH_SIZE, + GL_TEXTURE_COMPRESSED, and + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + are accepted. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetTexLevelParameter returns in params texture parameter values for a specific + level-of-detail value, + specified as level. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + GL_MAX_TEXTURE_SIZE, and GL_MAX_3D_TEXTURE_SIZE are not really + descriptive enough. + It has to report the largest square texture image that can be + accommodated with mipmaps and borders, + but a long skinny texture, or a texture without mipmaps and borders, may + easily fit in texture memory. + The proxy targets allow the user to more accurately query + whether the GL can accommodate a texture of a given configuration. + If the texture cannot be accommodated, the texture state variables, which + may be queried with glGetTexLevelParameter, are set to 0. If the texture can be accommodated, + the texture state values will be set as they would be set for a + non-proxy target. + + + pname specifies the texture parameter whose value or values + will be returned. + + + The accepted parameter names are as follows: + + + + GL_TEXTURE_WIDTH + + + + + params returns a single value, + the width of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_HEIGHT + + + + + params returns a single value, + the height of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_DEPTH + + + + + params returns a single value, + the depth of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_INTERNAL_FORMAT + + + + + params returns a single value, + the internal format of the texture image. + + + + + GL_TEXTURE_BORDER + + + + + params returns a single value, + the width in pixels of the border of the texture image. The initial value + is 0. + + + + + GL_TEXTURE_RED_SIZE, + + + + + GL_TEXTURE_GREEN_SIZE, + + + + + GL_TEXTURE_BLUE_SIZE, + + + + + GL_TEXTURE_ALPHA_SIZE, + + + + + GL_TEXTURE_LUMINANCE_SIZE, + + + + + GL_TEXTURE_INTENSITY_SIZE, + + + + + GL_TEXTURE_DEPTH_SIZE + + + + + The internal storage resolution of an individual component. + The resolution chosen by the GL will be a close match for the resolution + requested by the user with the component argument of glTexImage1D, + glTexImage2D, glTexImage3D, glCopyTexImage1D, and + glCopyTexImage2D. The initial value is 0. + + + + + GL_TEXTURE_COMPRESSED + + + + + params returns a single boolean value indicating if the texture image is + stored in a compressed internal format. The initiali value is GL_FALSE. + + + + + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + + + params returns a single integer value, the number of unsigned bytes of the + compressed texture image that would be returned from + glGetCompressedTexImage. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + GL_TEXTURE_INTERNAL_FORMAT is available only if the GL version is + 1.1 or greater. In version 1.0, use GL_TEXTURE_COMPONENTS + instead. + + + GL_PROXY_TEXTURE_1D and GL_PROXY_TEXTURE_2D are + available only if the GL version is 1.1 or greater. + + + GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, and GL_TEXTURE_DEPTH + are available only if the GL version is 1.2 or greater. + + + GL_TEXTURE_COMPRESSED, + GL_TEXTURE_COMPRESSED_IMAGE_SIZE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, and + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexLevelParameter returns + the texture level parameters for the active texture unit. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_OPERATION is generated if glGetTexLevelParameter + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + GL_INVALID_OPERATION is generated if + GL_TEXTURE_COMPRESSED_IMAGE_SIZE is queried on texture images with an + uncompressed internal format or on proxy targets. + + + See Also + + glActiveTexture, + glGetTexParameter, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetTexParameter.xml b/upstream-man-pages/man2/glGetTexParameter.xml new file mode 100644 index 0000000..1d986c7 --- /dev/null +++ b/upstream-man-pages/man2/glGetTexParameter.xml @@ -0,0 +1,320 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexParameter + 3G + + + glGetTexParameter + return texture parameter values + + C Specification + + + void glGetTexParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetTexParameteriv + GLenum target + GLenum pname + GLint * params + + + + + Parameters + + + target + + + Specifies the symbolic name of the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, and + GL_TEXTURE_CUBE_MAP + are accepted. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_PRIORITY, + GL_TEXTURE_RESIDENT, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_DEPTH_TEXTURE_MODE, and + GL_GENERATE_MIPMAP + are accepted. + + + + + params + + + Returns the texture parameters. + + + + + + Description + + glGetTexParameter returns in params the value or values of the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, or GL_TEXTURE_CUBE_MAP, + to specify one-, two-, or three-dimensional or cube-mapped texturing. + pname accepts the same symbols as glTexParameter, + with the same interpretations: + + + + GL_TEXTURE_MAG_FILTER + + + Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. + + + + + GL_TEXTURE_MIN_FILTER + + + Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MIN_LOD + + + Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . + + + + + GL_TEXTURE_MAX_LOD + + + Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. + + + + + GL_TEXTURE_BASE_LEVEL + + + Returns the single-valued base texture mipmap level. The initial value is 0. + + + + + GL_TEXTURE_MAX_LEVEL + + + Returns the single-valued maximum texture mipmap array level. The initial + value is 1000. + + + + + GL_TEXTURE_WRAP_S + + + Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_T + + + Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). + + + + + GL_TEXTURE_PRIORITY + + + Returns the residence priority of the target texture (or the named + texture bound to it). The initial value is 1. + See glPrioritizeTextures. + + + + + GL_TEXTURE_RESIDENT + + + Returns the residence status of the target texture. + If the value returned in params is GL_TRUE, the texture is + resident in texture memory. + See glAreTexturesResident. + + + + + GL_TEXTURE_COMPARE_MODE + + + Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glTexParameter. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glTexParameter. + + + + + GL_DEPTH_TEXTURE_MODE + + + Returns a single-valued texture format indicating how the depth values + should be converted into color components. The initial value is + GL_LUMINANCE. See glTexParameter. + + + + + GL_GENERATE_MIPMAP + + + Returns a single boolean value indicating if automatic mipmap level updates + are enabled. + See glTexParameter. + + + + + + Notes + + GL_TEXTURE_PRIORITY and GL_TEXTURE_RESIDENT are + available only if the GL version is 1.1 or greater. + + + GL_TEXTURE_3D, + GL_TEXTURE_MIN_LOD, GL_TEXTURE_MAX_LOD, GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, and GL_TEXTURE_WRAP_R are available only + if the GL version is 1.2 or greater. + + + GL_TEXTURE_COMPARE_MODE, GL_TEXTURE_COMPARE_FUNC, and + GL_GENERATE_MIPMAP is available only if the GL version is 1.4 or + greater. + + + If an error is generated, + no change is made to the contents of params. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if glGetTexParameter + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glAreTexturesResident, + glPrioritizeTextures, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glGetUniform.xml b/upstream-man-pages/man2/glGetUniform.xml new file mode 100644 index 0000000..762b51c --- /dev/null +++ b/upstream-man-pages/man2/glGetUniform.xml @@ -0,0 +1,145 @@ + + + + + glGetUniform + 3G + + + glGetUniform + glGetUniformfv + glGetUniformiv + Returns the value of a uniform variable + + C Specification + + + void glGetUniformfv + GLuint program + GLint location + GLfloat *params + + + void glGetUniformiv + GLuint program + GLint location + GLint *params + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + location + + Specifies the location of the uniform variable + to be queried. + + + + params + + Returns the value of the specified uniform + variable. + + + + + Description + glGetUniform returns in + params the value(s) of the specified + uniform variable. The type of the uniform variable specified by + location determines the number of values + returned. If the uniform variable is defined in the shader as a + boolean, int, or float, a single value will be returned. If it + is defined as a vec2, ivec2, or bvec2, two values will be + returned. If it is defined as a vec3, ivec3, or bvec3, three + values will be returned, and so on. To query values stored in + uniform variables declared as arrays, call + glGetUniform for each element of the array. + To query values stored in uniform variables declared as + structures, call glGetUniform for each + field in the structure. The values for uniform variables + declared as a matrix will be returned in column major + order. + + The locations assigned to uniform variables are not known + until the program object is linked. After linking has occurred, + the command + glGetUniformLocation + can be used to obtain the location of a uniform variable. This + location value can then be passed to + glGetUniform in order to query the current + value of the uniform variable. After a program object has been + linked successfully, the index values for uniform variables + remain fixed until the next link command occurs. The uniform + variable values can only be queried after a link if the link was + successful. + + Notes + glGetUniform is available only if the + GL version is 2.0 or greater. + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + GL_INVALID_OPERATION is generated if + location does not correspond to a valid + uniform variable location for the specified program object. + + GL_INVALID_OPERATION is generated if + glGetUniform is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetActiveUniform + with arguments program and the index of an active + uniform variable + + glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH + + glGetUniformLocation + with arguments program and the name of a + uniform variable + glIsProgram + + See Also + glCreateProgram, + glLinkProgram, + glUniform + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetUniformLocation.xml b/upstream-man-pages/man2/glGetUniformLocation.xml new file mode 100644 index 0000000..d1fd0d1 --- /dev/null +++ b/upstream-man-pages/man2/glGetUniformLocation.xml @@ -0,0 +1,133 @@ + + + + + glGetUniformLocation + 3G + + + glGetUniformLocation + Returns the location of a uniform variable + + C Specification + + + GLint glGetUniformLocation + GLuint program + const GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + name + + Points to a null terminated string containing + the name of the uniform variable whose location is + to be queried. + + + + + Description + glGetUniformLocation returns an + integer that represents the location of a specific uniform + variable within a program object. name + must be a null terminated string that contains no white space. + name must be an active uniform variable + name in program that is not a structure, + an array of structures, or a subcomponent of a vector or a + matrix. This function returns -1 if name + does not correspond to an active uniform variable in + program or if name + starts with the reserved prefix "gl_". + + Uniform variables that are structures or arrays of + structures may be queried by calling + glGetUniformLocation for each field within + the structure. The array element operator "[]" and the + structure field operator "." may be used in + name in order to select elements within + an array or fields within a structure. The result of using these + operators is not allowed to be another structure, an array of + structures, or a subcomponent of a vector or a matrix. Except if + the last part of name indicates a uniform + variable array, the location of the first element of an array + can be retrieved by using the name of the array, or by using the + name appended by "[0]". + + The actual locations assigned to uniform variables are not + known until the program object is linked successfully. After + linking has occurred, the command + glGetUniformLocation can be used to obtain + the location of a uniform variable. This location value can then + be passed to + glUniform + to set the value of the uniform variable or to + glGetUniform + in order to query the current value of the uniform variable. + After a program object has been linked successfully, the index + values for uniform variables remain fixed until the next link + command occurs. Uniform variable locations and values can only + be queried after a link if the link was successful. + + Notes + glGetUniformLocation is available + only if the GL version is 2.0 or greater. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + GL_INVALID_OPERATION is generated if + glGetUniformLocation is executed between + the execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetActiveUniform + with arguments program and the index of + an active uniform variable + + glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH + + glGetUniform + with arguments program and the name of a + uniform variable + glIsProgram + + See Also + glLinkProgram, + glUniform + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetVertexAttrib.xml b/upstream-man-pages/man2/glGetVertexAttrib.xml new file mode 100644 index 0000000..bc28164 --- /dev/null +++ b/upstream-man-pages/man2/glGetVertexAttrib.xml @@ -0,0 +1,234 @@ + + + + + glGetVertexAttrib + 3G + + + glGetVertexAttrib + glGetVertexAttribdv + glGetVertexAttribfv + glGetVertexAttribiv + Return a generic vertex attribute parameter + + C Specification + + + void glGetVertexAttribdv + GLuint index + GLenum pname + GLdouble *params + + + void glGetVertexAttribfv + GLuint index + GLenum pname + GLfloat *params + + + void glGetVertexAttribiv + GLuint index + GLenum pname + GLint *params + + + + Parameters + + + index + + Specifies the generic vertex attribute + parameter to be queried. + + + + pname + + Specifies the symbolic name of the vertex + attribute parameter to be queried. Accepted values are + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, or + GL_CURRENT_VERTEX_ATTRIB. + + + + params + + Returns the requested data. + + + + + Description + glGetVertexAttrib returns in + params the value of a generic vertex + attribute parameter. The generic vertex attribute to be queried + is specified by index, and the parameter + to be queried is specified by pname. + + The accepted parameter names are as follows: + + + + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING + + + + params returns a + single value, the name of the buffer object currently bound to + the binding point corresponding to generic vertex attribute array + index. If no buffer object is bound, + 0 is returned. The initial value is 0. + + + + + GL_VERTEX_ATTRIB_ARRAY_ENABLED + + + + params returns a + single value that is non-zero (true) if the vertex + attribute array for index is + enabled and 0 (false) if it is disabled. The initial + value is GL_FALSE. + + + + + GL_VERTEX_ATTRIB_ARRAY_SIZE + + + + params returns a + single value, the size of the vertex attribute array + for index. The size is the + number of values for each element of the vertex + attribute array, and it will be 1, 2, 3, or 4. The + initial value is 4. + + + + + GL_VERTEX_ATTRIB_ARRAY_STRIDE + + + + params returns a + single value, the array stride for (number of bytes + between successive elements in) the vertex attribute + array for index. A value of 0 + indicates that the array elements are stored + sequentially in memory. The initial value is 0. + + + + + GL_VERTEX_ATTRIB_ARRAY_TYPE + + + + params returns a + single value, a symbolic constant indicating the + array type for the vertex attribute array for + index. Possible values are + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, and + GL_DOUBLE. The initial value is + GL_FLOAT. + + + + + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED + + + + params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index are normalized when + they are converted to floating point, and 0 (false) + otherwise. The initial value is + GL_FALSE. + + + + + GL_CURRENT_VERTEX_ATTRIB + + + + params returns four + values that represent the current value for the + generic vertex attribute specified by index. Generic + vertex attribute 0 is unique in that it has no + current state, so an error will be generated if + index is 0. The initial value + for all other generic vertex attributes is + (0,0,0,1). + + + + + All of the parameters except GL_CURRENT_VERTEX_ATTRIB + represent client-side state. + + + Notes + glGetVertexAttrib is available only + if the GL version is 2.0 or greater. + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM is generated if + pname is not an accepted value. + + GL_INVALID_OPERATION is generated if + index is 0 and + pname is + GL_CURRENT_VERTEX_ATTRIB. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + glBindAttribLocation, + glBindBuffer, + glDisableVertexAttribArray, + glEnableVertexAttribArray, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glGetVertexAttribPointerv.xml b/upstream-man-pages/man2/glGetVertexAttribPointerv.xml new file mode 100644 index 0000000..0c35189 --- /dev/null +++ b/upstream-man-pages/man2/glGetVertexAttribPointerv.xml @@ -0,0 +1,94 @@ + + + + + glGetVertexAttribPointerv + 3G + + + glGetVertexAttribPointerv + return the address of the specified generic vertex attribute pointer + + C Specification + + + void glGetVertexAttribPointerv + GLuint index + GLenum pname + GLvoid **pointer + + + + Parameters + + + index + + Specifies the generic vertex attribute + parameter to be returned. + + + + pname + + Specifies the symbolic name of the generic + vertex attribute parameter to be returned. Must be + GL_VERTEX_ATTRIB_ARRAY_POINTER. + + + + pointer + + Returns the pointer value. + + + + + Description + glGetVertexAttribPointerv returns + pointer information. index is the generic + vertex attribute to be queried, pname is + a symbolic constant indicating the pointer to be returned, and + params is a pointer to a location in + which to place the returned data. + + If a non-zero named buffer object was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously + specified, the pointer returned is a byte offset into the buffer object's data store. + + + Notes + glGetVertexAttribPointerv + is available only if the GL version is 2.0 or greater. + + The pointer returned is client-side state. + + The initial value for each pointer is 0. + + Errors + GL_INVALID_VALUE + is generated if index + is greater than or equal to GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM + is generated if pname + is not an accepted value. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + See Also + glGetVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glHint.xml b/upstream-man-pages/man2/glHint.xml new file mode 100644 index 0000000..37049b5 --- /dev/null +++ b/upstream-man-pages/man2/glHint.xml @@ -0,0 +1,254 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glHint + 3G + + + glHint + specify implementation-specific hints + + C Specification + + + void glHint + GLenum target + GLenum mode + + + + Parameters + + + target + + + Specifies a symbolic constant indicating the behavior to be controlled. + GL_FOG_HINT, + GL_GENERATE_MIPMAP_HINT, + GL_LINE_SMOOTH_HINT, + GL_PERSPECTIVE_CORRECTION_HINT, + GL_POINT_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT, + GL_TEXTURE_COMPRESSION_HINT, and + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + are accepted. + + + + + mode + + + Specifies a symbolic constant indicating the desired behavior. + GL_FASTEST, + GL_NICEST, and + GL_DONT_CARE are accepted. + + + + + + Description + + Certain aspects of GL behavior, + when there is room for interpretation, + can be controlled with hints. + A hint is specified with two arguments. + target is a symbolic + constant indicating the behavior to be controlled, + and mode is another symbolic constant indicating the desired + behavior. The initial value for each target is GL_DONT_CARE. + mode can be one of the following: + + + + GL_FASTEST + + + + + The most efficient option should be chosen. + + + + + GL_NICEST + + + + + The most correct, + or highest quality, + option should be chosen. + + + + + GL_DONT_CARE + + + + + No preference. + + + + + + Though the implementation aspects that can be hinted are well defined, + the interpretation of the hints depends on the implementation. + The hint aspects that can be specified with target, + along with suggested semantics, + are as follows: + + + + GL_FOG_HINT + + + + + Indicates the accuracy of fog calculation. + If per-pixel fog calculation is not efficiently supported + by the GL implementation, + hinting GL_DONT_CARE or GL_FASTEST can result in per-vertex + calculation of fog effects. + + + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + + + + + Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: + dFdx, dFdy, and fwidth. + + + + + GL_GENERATE_MIPMAP_HINT + + + + + Indicates the quality of filtering when generating mipmap images. + + + + + GL_LINE_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased lines. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. + + + + + GL_PERSPECTIVE_CORRECTION_HINT + + + + + Indicates the quality of color, texture coordinate, and fog coordinate + interpolation. If perspective-corrected parameter interpolation is not + efficiently supported by the GL implementation, hinting GL_DONT_CARE + or GL_FASTEST can result in simple linear interpolation of colors + and/or texture coordinates. + + + + + GL_POINT_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased points. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. + + + + + GL_POLYGON_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased polygons. + Hinting GL_NICEST can result in more pixel fragments being generated + during rasterization, + if a larger filter function is applied. + + + + + GL_TEXTURE_COMPRESSION_HINT + + + + + Indicates the quality and performance of the compressing texture images. + Hinting GL_FASTEST indicates that texture images should be compressed + as quickly as possible, while GL_NICEST indicates that texture images + should be compressed with as little image quality loss as possible. + GL_NICEST should be selected if the texture is to be retrieved by + glGetCompressedTexImage for reuse. + + + + + + Notes + + The interpretation of hints depends on the implementation. + Some implementations ignore glHint settings. + + + GL_TEXTURE_COMPRESSION_HINT is available only if the GL version is 1.3 + or greater. + + + GL_GENERATE_MIPMAP_HINT is available only if the GL version is 1.4 + or greater. + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT is available only if the GL version is 2.0 + or greater. + + + Errors + + GL_INVALID_ENUM is generated if either target or mode is not + an accepted value. + + + GL_INVALID_OPERATION is generated if glHint + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glHistogram.xml b/upstream-man-pages/man2/glHistogram.xml new file mode 100644 index 0000000..de9d6f6 --- /dev/null +++ b/upstream-man-pages/man2/glHistogram.xml @@ -0,0 +1,205 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glHistogram + 3G + + + glHistogram + define histogram table + + C Specification + + + void glHistogram + GLenum target + GLsizei width + GLenum internalformat + GLboolean sink + + + + + Parameters + + + target + + + The histogram whose parameters are to be set. + Must be one of + GL_HISTOGRAM or + GL_PROXY_HISTOGRAM. + + + + + width + + + The number of entries in the histogram table. Must be a power of 2. + + + + + internalformat + + + The format of entries in the histogram table. + Must be one of + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + sink + + + If GL_TRUE, pixels will be consumed by the histogramming + process and no drawing or texture loading will take place. + If GL_FALSE, pixels will proceed to the minmax process after + histogramming. + + + + + + Description + + When GL_HISTOGRAM is enabled, RGBA color components are converted to + histogram table indices by clamping to the range [0,1], multiplying by + the width of the histogram table, and rounding to the nearest integer. + The table entries selected by the RGBA indices are then incremented. + (If the internal format of the histogram table includes luminance, then + the index derived from the R color component determines the luminance + table entry to be incremented.) If a histogram table entry is incremented + beyond its maximum value, then its value becomes undefined. (This is + not an error.) + + + Histogramming is performed only for RGBA pixels (though these may + be specified originally as color indices and converted to RGBA by + index table lookup). + Histogramming is enabled with glEnable and disabled with glDisable. + + + When target is GL_HISTOGRAM, glHistogram redefines the current + histogram table to have width entries of the format specified by + internalformat. + The entries are indexed 0 through + + + + width + - + 1 + + , + and + all entries are initialized to zero. + The values in the previous histogram table, if any, are lost. + If sink is GL_TRUE, then pixels are discarded after histogramming; + no further processing of the pixels takes place, and no drawing, + texture loading, or pixel readback will result. + + + When target is GL_PROXY_HISTOGRAM, glHistogram computes all + state information as if the histogram table were to be redefined, + but does not actually define the new table. + If the requested histogram table is too large to be supported, then the + state information will be set to zero. + This provides a way to determine if a histogram table with the given + parameters can be supported. + + + + + Notes + + glHistogram is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if width is less than zero or is + not a power of 2. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_TABLE_TOO_LARGE is generated if target is GL_HISTOGRAM + and the histogram table specified is too large for the implementation. + + + GL_INVALID_OPERATION is generated if glHistogram is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetHistogramParameter + + + See Also + + glGetHistogram, + glResetHistogram + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glIndex.xml b/upstream-man-pages/man2/glIndex.xml new file mode 100644 index 0000000..7dafff7 --- /dev/null +++ b/upstream-man-pages/man2/glIndex.xml @@ -0,0 +1,164 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIndex + 3G + + + glIndex + set the current color index + + + + C Specification + + + void glIndexs + GLshort c + + + + + void glIndexi + GLint c + + + + + void glIndexf + GLfloat c + + + + + void glIndexd + GLdouble c + + + + + void glIndexub + GLubyte c + + + + Parameters + + + c + + + Specifies the new value for the current color index. + + + + + + + + C Specification + + + void glIndexsv + const GLshort * c + + + + + void glIndexiv + const GLint * c + + + + + void glIndexfv + const GLfloat * c + + + + + void glIndexdv + const GLdouble * c + + + + + void glIndexubv + const GLubyte * c + + + + Parameters + + + c + + + Specifies a pointer to a one-element array that contains + the new value for the current color index. + + + + + + Description + + glIndex updates the current (single-valued) color index. + It takes one argument, the new value for the current color index. + + + The current index is stored as a floating-point value. + Integer values are converted directly to floating-point values, + with no special mapping. + The initial value is 1. + + + Index values outside the representable range of the color index buffer + are not clamped. + However, + before an index is dithered (if enabled) and written to the frame buffer, + it is converted to fixed-point format. + Any bits in the integer portion of the resulting fixed-point value + that do not correspond to bits in the frame buffer are masked out. + + + Notes + + glIndexub and glIndexubv are available only if the GL version is + 1.1 or greater. + + + The current index can be updated at any time. + In particular, + glIndex can be called between a call to glBegin and the corresponding + call to glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_INDEX + + + See Also + + glColor, + glIndexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glIndexMask.xml b/upstream-man-pages/man2/glIndexMask.xml new file mode 100644 index 0000000..cc8f180 --- /dev/null +++ b/upstream-man-pages/man2/glIndexMask.xml @@ -0,0 +1,95 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIndexMask + 3G + + + glIndexMask + control the writing of individual bits in the color index buffers + + C Specification + + + void glIndexMask + GLuint mask + + + + + Parameters + + + mask + + + Specifies a bit mask to enable and disable the writing of individual bits + in the color index buffers. + Initially, the mask is all 1's. + + + + + + Description + + glIndexMask controls the writing of individual bits in the color index buffers. + The least significant + n + bits of mask, + where + n + is the number of bits in a color index buffer, + specify a mask. + Where a 1 (one) appears in the mask, + it's possible to write to the corresponding bit in the color index + buffer (or buffers). + Where a 0 (zero) appears, + the corresponding bit is write-protected. + + + This mask is used only in color index mode, + and it affects only the buffers currently selected for writing + (see glDrawBuffer). + Initially, all bits are enabled for writing. + + + Errors + + GL_INVALID_OPERATION is generated if glIndexMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_INDEX_WRITEMASK + + + See Also + + glColorMask, + glDepthMask, + glDrawBuffer, + glIndex, + glIndexPointer, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glIndexPointer.xml b/upstream-man-pages/man2/glIndexPointer.xml new file mode 100644 index 0000000..4f3b77e --- /dev/null +++ b/upstream-man-pages/man2/glIndexPointer.xml @@ -0,0 +1,190 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIndexPointer + 3G + + + glIndexPointer + define an array of color indexes + + C Specification + + + void glIndexPointer + GLenum type + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + type + + + Specifies the data type of each color index in the array. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_INT, + GL_FLOAT, + and GL_DOUBLE + are accepted. The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive color indexes. + If stride is 0, the color indexes are understood to + be tightly packed in the array. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first index in the array. + The initial value is 0. + + + + + + Description + + glIndexPointer specifies the location and data format of an array of color indexes + to use when rendering. + type specifies the data type of + each color index and stride specifies the byte stride from one + color index to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a color index array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as color index vertex array + client-side state (GL_INDEX_ARRAY_BUFFER_BINDING). + + + When a color index array is specified, + type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the color index array, call + glEnableClientState and glDisableClientState with the argument + GL_INDEX_ARRAY. If + enabled, the color index array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. + + + Notes + + glIndexPointer is available only if the GL version is 1.1 or greater. + + + Color indexes are not supported for interleaved vertex array formats + (see glInterleavedArrays). + + + The color index array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glIndexPointer is not allowed between + glBegin and the corresponding glEnd, + but an error may or may not be generated. If an error is not generated, + the operation is undefined. + + + glIndexPointer is typically implemented on the client side. + + + Color index array parameters are client-side state and are + therefore not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. + + + Errors + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_INDEX_ARRAY + + + glGet with argument GL_INDEX_ARRAY_TYPE + + + glGet with argument GL_INDEX_ARRAY_STRIDE + + + glGet with argument GL_INDEX_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_INDEX_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glIndex, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glInitNames.xml b/upstream-man-pages/man2/glInitNames.xml new file mode 100644 index 0000000..371afbb --- /dev/null +++ b/upstream-man-pages/man2/glInitNames.xml @@ -0,0 +1,70 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glInitNames + 3G + + + glInitNames + initialize the name stack + + C Specification + + + void glInitNames + void + + + + Description + + The name stack is used during selection mode to allow sets of rendering + commands to be uniquely identified. + It consists of an ordered set of unsigned integers. + glInitNames causes the name stack to be initialized to its default empty state. + + + The name stack is always empty while the render mode is not GL_SELECT. + Calls to glInitNames while the render mode is not GL_SELECT are ignored. + + + Errors + + GL_INVALID_OPERATION is generated if glInitNames + is executed between the execution of glBegin and the corresponding execution of + glEnd. + + + Associated Gets + + glGet with argument GL_NAME_STACK_DEPTH + + + glGet with argument GL_MAX_NAME_STACK_DEPTH + + + See Also + + glLoadName, + glPushName, + glRenderMode, + glSelectBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glInterleavedArrays.xml b/upstream-man-pages/man2/glInterleavedArrays.xml new file mode 100644 index 0000000..f4b5cc1 --- /dev/null +++ b/upstream-man-pages/man2/glInterleavedArrays.xml @@ -0,0 +1,162 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glInterleavedArrays + 3G + + + glInterleavedArrays + simultaneously specify and enable several interleaved arrays + + C Specification + + + void glInterleavedArrays + GLenum format + GLsizei stride + const GLvoid * pointer + + + + Parameters + + + format + + + Specifies the type of array to enable. Symbolic constants + GL_V2F, + GL_V3F, + GL_C4UB_V2F, + GL_C4UB_V3F, + GL_C3F_V3F, + GL_N3F_V3F, + GL_C4F_N3F_V3F, + GL_T2F_V3F, + GL_T4F_V4F, + GL_T2F_C4UB_V3F, + GL_T2F_C3F_V3F, + GL_T2F_N3F_V3F, + GL_T2F_C4F_N3F_V3F, + and + GL_T4F_C4F_N3F_V4F + are accepted. + + + + + stride + + + Specifies the offset in bytes between each aggregate array element. + + + + + + Description + + glInterleavedArrays lets you specify and enable individual color, + normal, + texture and vertex + arrays whose elements are part of a larger aggregate array element. + For some implementations, this is more efficient than specifying the arrays + separately. + + + If stride is 0, the aggregate elements are stored consecutively. + Otherwise, stride bytes occur between the beginning of one + aggregate array element and the beginning of the next aggregate array + element. + + + format serves as a ``key'' + describing the extraction of individual arrays from the aggregate array. + If format contains a T, then texture coordinates are + extracted from the interleaved array. If C is present, color values + are extracted. If N is present, normal coordinates are extracted. + Vertex coordinates are always extracted. + + + The digits 2, 3, and 4 denote how many values are extracted. + F indicates that values are extracted as floating-point values. + Colors may also be extracted as 4 unsigned bytes if 4UB follows the + C. If a color is extracted as 4 unsigned bytes, the vertex + array element which follows is located at the first possible + floating-point aligned address. + + + Notes + + glInterleavedArrays is available only if the GL version is 1.1 or greater. + + + If glInterleavedArrays is called while compiling a display list, it is not + compiled into the list, and it is executed immediately. + + + Execution of glInterleavedArrays is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glInterleavedArrays is typically implemented on the client side. + + + Vertex array parameters are client-side state and are therefore not + saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and glPopClientAttrib instead. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glInterleavedArrays + only updates the texture coordinate array for the client active texture + unit. The texture coordinate state for other client texture units is not + updated, regardless of whether the client texture unit is enabled or not. + + + Secondary color values are not supported in interleaved vertex array formats. + + + Errors + + GL_INVALID_ENUM is generated if format is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + See Also + + glArrayElement, + glClientActiveTexture, + glColorPointer, + glDrawArrays, + glDrawElements, + glEdgeFlagPointer, + glEnableClientState, + glGetPointerv, + glIndexPointer, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glIsBuffer.xml b/upstream-man-pages/man2/glIsBuffer.xml new file mode 100644 index 0000000..8f48959 --- /dev/null +++ b/upstream-man-pages/man2/glIsBuffer.xml @@ -0,0 +1,78 @@ + + + + + + + 2005 + Sams Publishing + + + glIsBuffer + 3G + + + glIsBuffer + determine if a name corresponds to a buffer object + + C Specification + + + GLboolean glIsBuffer + GLuint buffer + + + + Parameters + + + buffer + + + Specifies a value that may be the name of a buffer object. + + + + + + Description + + glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. + If buffer is zero, or is a non-zero value that is not currently the + name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. + + + A name returned by glGenBuffers, but not yet associated with a buffer object + by calling glBindBuffer, is not the name of a buffer object. + + + Notes + + glIsBuffer is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glIsBuffer is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glBindBuffer, + glDeleteBuffers, + glGenBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glIsEnabled.xml b/upstream-man-pages/man2/glIsEnabled.xml new file mode 100644 index 0000000..ba88ec4 --- /dev/null +++ b/upstream-man-pages/man2/glIsEnabled.xml @@ -0,0 +1,752 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsEnabled + 3G + + + glIsEnabled + test whether a capability is enabled + + C Specification + + + GLboolean glIsEnabled + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + Description + + glIsEnabled returns GL_TRUE if cap is an enabled capability + and returns GL_FALSE otherwise. + Initially all capabilities except GL_DITHER are disabled; + GL_DITHER is initially enabled. + + + The following capabilities are accepted for cap: + + + + + + + + + + + Constant + + + See + + + + + + + GL_ALPHA_TEST + + + glAlphaFunc + + + + + GL_AUTO_NORMAL + + + glEvalCoord + + + + + GL_BLEND + + + glBlendFunc, glLogicOp + + + + + GL_CLIP_PLANEi + + + glClipPlane + + + + + GL_COLOR_ARRAY + + + glColorPointer + + + + + GL_COLOR_LOGIC_OP + + + glLogicOp + + + + + GL_COLOR_MATERIAL + + + glColorMaterial + + + + + GL_COLOR_SUM + + + glSecondaryColor + + + + + GL_COLOR_TABLE + + + glColorTable + + + + + GL_CONVOLUTION_1D + + + glConvolutionFilter1D + + + + + GL_CONVOLUTION_2D + + + glConvolutionFilter2D + + + + + GL_CULL_FACE + + + glCullFace + + + + + GL_DEPTH_TEST + + + glDepthFunc, glDepthRange + + + + + GL_DITHER + + + glEnable + + + + + GL_EDGE_FLAG_ARRAY + + + glEdgeFlagPointer + + + + + GL_FOG + + + glFog + + + + + GL_FOG_COORD_ARRAY + + + glFogCoordPointer + + + + + GL_HISTOGRAM + + + glHistogram + + + + + GL_INDEX_ARRAY + + + glIndexPointer + + + + + GL_INDEX_LOGIC_OP + + + glLogicOp + + + + + GL_LIGHTi + + + glLightModel, glLight + + + + + GL_LIGHTING + + + glMaterial, glLightModel, glLight + + + + + GL_LINE_SMOOTH + + + glLineWidth + + + + + GL_LINE_STIPPLE + + + glLineStipple + + + + + GL_MAP1_COLOR_4 + + + glMap1 + + + + + GL_MAP1_INDEX + + + glMap1 + + + + + GL_MAP1_NORMAL + + + glMap1 + + + + + GL_MAP1_TEXTURE_COORD_1 + + + glMap1 + + + + + GL_MAP1_TEXTURE_COORD_2 + + + glMap1 + + + + + GL_MAP1_TEXTURE_COORD_3 + + + glMap1 + + + + + GL_MAP1_TEXTURE_COORD_4 + + + glMap1 + + + + + GL_MAP2_COLOR_4 + + + glMap2 + + + + + GL_MAP2_INDEX + + + glMap2 + + + + + GL_MAP2_NORMAL + + + glMap2 + + + + + GL_MAP2_TEXTURE_COORD_1 + + + glMap2 + + + + + GL_MAP2_TEXTURE_COORD_2 + + + glMap2 + + + + + GL_MAP2_TEXTURE_COORD_3 + + + glMap2 + + + + + GL_MAP2_TEXTURE_COORD_4 + + + glMap2 + + + + + GL_MAP2_VERTEX_3 + + + glMap2 + + + + + GL_MAP2_VERTEX_4 + + + glMap2 + + + + + GL_MINMAX + + + glMinmax + + + + + GL_MULTISAMPLE + + + glSampleCoverage + + + + + GL_NORMAL_ARRAY + + + glNormalPointer + + + + + GL_NORMALIZE + + + glNormal + + + + + GL_POINT_SMOOTH + + + glPointSize + + + + + GL_POINT_SPRITE + + + glEnable + + + + + GL_POLYGON_SMOOTH + + + glPolygonMode + + + + + GL_POLYGON_OFFSET_FILL + + + glPolygonOffset + + + + + GL_POLYGON_OFFSET_LINE + + + glPolygonOffset + + + + + GL_POLYGON_OFFSET_POINT + + + glPolygonOffset + + + + + GL_POLYGON_STIPPLE + + + glPolygonStipple + + + + + GL_POST_COLOR_MATRIX_COLOR_TABLE + + + glColorTable + + + + + GL_POST_CONVOLUTION_COLOR_TABLE + + + glColorTable + + + + + GL_RESCALE_NORMAL + + + glNormal + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE + + + glSampleCoverage + + + + + GL_SAMPLE_ALPHA_TO_ONE + + + glSampleCoverage + + + + + GL_SAMPLE_COVERAGE + + + glSampleCoverage + + + + + GL_SCISSOR_TEST + + + glScissor + + + + + GL_SECONDARY_COLOR_ARRAY + + + glSecondaryColorPointer + + + + + GL_SEPARABLE_2D + + + glSeparableFilter2D + + + + + GL_STENCIL_TEST + + + glStencilFunc, glStencilOp + + + + + GL_TEXTURE_1D + + + glTexImage1D + + + + + GL_TEXTURE_2D + + + glTexImage2D + + + + + GL_TEXTURE_3D + + + glTexImage3D + + + + + GL_TEXTURE_COORD_ARRAY + + + glTexCoordPointer + + + + + GL_TEXTURE_CUBE_MAP + + + glTexImage2D + + + + + GL_TEXTURE_GEN_Q + + + glTexGen + + + + + GL_TEXTURE_GEN_R + + + glTexGen + + + + + GL_TEXTURE_GEN_S + + + glTexGen + + + + + GL_TEXTURE_GEN_T + + + glTexGen + + + + + GL_VERTEX_ARRAY + + + glVertexPointer + + + + + GL_VERTEX_PROGRAM_POINT_SIZE + + + glEnable + + + + + GL_VERTEX_PROGRAM_TWO_SIDE + + + glEnable + + + + + + + + + Notes + + If an error is generated, + glIsEnabled returns 0. + + + GL_COLOR_LOGIC_OP, + GL_COLOR_ARRAY, + GL_EDGE_FLAG_ARRAY, + GL_INDEX_ARRAY, + GL_INDEX_LOGIC_OP, + GL_NORMAL_ARRAY, + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + GL_POLYGON_OFFSET_POINT, + GL_TEXTURE_COORD_ARRAY, and + GL_VERTEX_ARRAY + are available only + if the GL version is 1.1 or greater. + + + GL_RESCALE_NORMAL, and GL_TEXTURE_3D are available only if the GL + version is 1.2 or greater. + + + GL_MULTISAMPLE, + GL_SAMPLE_ALPHA_TO_COVERAGE, + GL_SAMPLE_ALPHA_TO_ONE, + GL_SAMPLE_COVERAGE, + GL_TEXTURE_CUBE_MAP + are available only if the GL version is 1.3 or greater. + + + GL_FOG_COORD_ARRAY and GL_SECONDARY_COLOR_ARRAY + are available only if the GL version is 1.4 or greater. + + + GL_POINT_SPRITE, + GL_VERTEX_PROGRAM_POINT_SIZE, and + GL_VERTEX_PROGRAM_TWO_SIDE + are available only if the GL version is 2.0 or greater. + + + GL_COLOR_TABLE, GL_CONVOLUTION_1D, GL_CONVOLUTION_2D, + GL_HISTOGRAM, GL_MINMAX, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, and + GL_SEPARABLE_2D are available only if ARB_imaging is + returned when glGet is called with GL_EXTENSIONS. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, the following + parameters return the associated value for the active texture unit: + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, + GL_TEXTURE_GEN_Q, + GL_TEXTURE_MATRIX, and + GL_TEXTURE_STACK_DEPTH. + Likewise, the following parameters return the associated value for the + active client texture unit: + GL_TEXTURE_COORD_ARRAY, + GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_TYPE. + + + Errors + + GL_INVALID_ENUM is generated if cap is not an accepted value. + + + GL_INVALID_OPERATION is generated if glIsEnabled + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glEnable, + glEnableClientState, + glGet + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glIsList.xml b/upstream-man-pages/man2/glIsList.xml new file mode 100644 index 0000000..840b5ee --- /dev/null +++ b/upstream-man-pages/man2/glIsList.xml @@ -0,0 +1,74 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsList + 3G + + + glIsList + determine if a name corresponds to a display list + + C Specification + + + GLboolean glIsList + GLuint list + + + + Parameters + + + list + + + Specifies a potential display list name. + + + + + + Description + + glIsList returns GL_TRUE if list is the name + of a display list and returns GL_FALSE if it is not, or if an error occurs. + + + A name returned by glGenLists, but not yet associated with a display list + by calling glNewList, is not the name of a display list. + + + Errors + + GL_INVALID_OPERATION is generated if glIsList + is executed between the execution of + glBegin + and the corresponding execution of glEnd. + + + See Also + + glCallList, + glCallLists, + glDeleteLists, + glGenLists, + glNewList + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glIsProgram.xml b/upstream-man-pages/man2/glIsProgram.xml new file mode 100644 index 0000000..d2f8f2c --- /dev/null +++ b/upstream-man-pages/man2/glIsProgram.xml @@ -0,0 +1,113 @@ + + + + + glIsProgram + 3G + + + glIsProgram + Determines if a name corresponds to a program object + + C Specification + + + GLboolean glIsProgram + GLuint program + + + + Parameters + + + program + + Specifies a potential program object. + + + + + Description + glIsProgram returns + GL_TRUE if program + is the name of a program object previously created with + glCreateProgram + and not yet deleted with glDeleteProgram. + If program is zero or a non-zero value that + is not the name of a program object, or if an error occurs, + glIsProgram returns GL_FALSE. + + Notes + glIsProgram is available only if the + GL version is 2.0 or greater. + + No error is generated if program is + not a valid program object name. + + A program object marked for deletion with glDeleteProgram + but still in use as part of current rendering state is still considered + a program object and glIsProgram will return GL_TRUE. + + Errors + GL_INVALID_OPERATION is generated if + glIsProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with arguments program and the index of + an active attribute variable + + glGetActiveUniform + with arguments program and the index of + an active uniform variable + + glGetAttachedShaders + with argument program + + glGetAttribLocation + with arguments program and the name of an + attribute variable + + glGetProgram + with arguments program and the parameter + to be queried + + glGetProgramInfoLog + with argument program + + glGetUniform + with arguments program and the location + of a uniform variable + + glGetUniformLocation + with arguments program and the name of a + uniform variable + + See Also + glAttachShader, + glBindAttribLocation, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glIsQuery.xml b/upstream-man-pages/man2/glIsQuery.xml new file mode 100644 index 0000000..264e4cc --- /dev/null +++ b/upstream-man-pages/man2/glIsQuery.xml @@ -0,0 +1,78 @@ + + + + + + + 2005 + Sams Publishing + + + glIsQuery + 3G + + + glIsQuery + determine if a name corresponds to a query object + + C Specification + + + GLboolean glIsQuery + GLuint id + + + + Parameters + + + id + + + Specifies a value that may be the name of a query object. + + + + + + Description + + glIsQuery returns GL_TRUE if id is currently the name of a query object. + If id is zero, or is a non-zero value that is not currently the + name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. + + + A name returned by glGenQueries, but not yet associated with a query object + by calling glBeginQuery, is not the name of a query object. + + + Notes + + glIsQuery is available only if the GL version is 1.5 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glIsQuery is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glBeginQuery, + glDeleteQueries, + glEndQuery, + glGenQueries + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glIsShader.xml b/upstream-man-pages/man2/glIsShader.xml new file mode 100644 index 0000000..6ed6ce4 --- /dev/null +++ b/upstream-man-pages/man2/glIsShader.xml @@ -0,0 +1,92 @@ + + + + + glIsShader + 3G + + + glIsShader + Determines if a name corresponds to a shader object + + C Specification + + + GLboolean glIsShader + GLuint shader + + + + Parameters + + + shader + + Specifies a potential shader object. + + + + + Description + glIsShader returns + GL_TRUE if shader is + the name of a shader object previously created with + glCreateShader + and not yet deleted with glDeleteShader. + If shader is + zero or a non-zero value that is not the name of a shader + object, or if an error occurs, glIsShader returns + GL_FALSE. + + Notes + glIsShader is available only if the + GL version is 2.0 or greater. + + No error is generated if shader is + not a valid shader object name. + + A shader object marked for deletion with glDeleteShader + but still attached to a program object is still considered + a shader object and glIsShader will return GL_TRUE. + + Errors + GL_INVALID_OPERATION is generated if + glIsShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetAttachedShaders + with a valid program object + + glGetShader + with arguments shader and a parameter to + be queried + + glGetShaderInfoLog + with argument object + + glGetShaderSource + with argument object + + See Also + glAttachShader, + glCompileShader, + glCreateShader, + glDeleteShader, + glDetachShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glIsTexture.xml b/upstream-man-pages/man2/glIsTexture.xml new file mode 100644 index 0000000..d9760fa --- /dev/null +++ b/upstream-man-pages/man2/glIsTexture.xml @@ -0,0 +1,85 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsTexture + 3G + + + glIsTexture + determine if a name corresponds to a texture + + C Specification + + + GLboolean glIsTexture + GLuint texture + + + + Parameters + + + texture + + + Specifies a value that may be the name of a texture. + + + + + + Description + + glIsTexture returns GL_TRUE if texture is currently the name of a texture. + If texture is zero, or is a non-zero value that is not currently the + name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. + + + A name returned by glGenTextures, but not yet associated with a texture + by calling glBindTexture, is not the name of a texture. + + + Notes + + glIsTexture is available only if the GL version is 1.1 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glIsTexture is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glDeleteTextures, + glGenTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLight.xml b/upstream-man-pages/man2/glLight.xml new file mode 100644 index 0000000..0aa6d74 --- /dev/null +++ b/upstream-man-pages/man2/glLight.xml @@ -0,0 +1,444 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLight + 3G + + + glLight + set light source parameters + + C Specification + + + void glLightf + GLenum light + GLenum pname + GLfloat param + + + + + void glLighti + GLenum light + GLenum pname + GLint param + + + + + Parameters + + + light + + + Specifies a light. + The number of lights depends on the implementation, + but at least eight lights are supported. + They are identified by symbolic names of the form GL_LIGHT + i, + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. + + + + + pname + + + Specifies a single-valued light source parameter for light. + GL_SPOT_EXPONENT, + GL_SPOT_CUTOFF, + GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION, and + GL_QUADRATIC_ATTENUATION are accepted. + + + + + param + + + Specifies the value that parameter pname of light source light + will be set to. + + + + + + C Specification + + + void glLightfv + GLenum light + GLenum pname + const GLfloat * params + + + + + void glLightiv + GLenum light + GLenum pname + const GLint * params + + + + Parameters + + + light + + + Specifies a light. + The number of lights depends on the implementation, but + at least eight lights are supported. + They are identified by symbolic names of the form GL_LIGHT + i, + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. + + + + + pname + + + Specifies a light source parameter for light. + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_POSITION, + GL_SPOT_CUTOFF, + GL_SPOT_DIRECTION, + GL_SPOT_EXPONENT, + GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION, and + GL_QUADRATIC_ATTENUATION are accepted. + + + + + params + + + Specifies a pointer to the value or values that parameter pname + of light source light will be set to. + + + + + + Description + + glLight sets the values of individual light source parameters. + light names the light and is a symbolic name of the form GL_LIGHT + i, + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. + pname specifies one of ten light source parameters, + again by symbolic name. + params is either a single value or a pointer to an array that contains + the new values. + + + To enable and disable lighting calculation, call glEnable + and glDisable with argument GL_LIGHTING. Lighting is + initially disabled. + When it is enabled, + light sources that are enabled contribute to the lighting calculation. + Light source + i + is enabled and disabled using glEnable and + glDisable with argument GL_LIGHT + i. + + + The ten light parameters are as follows: + + + + GL_AMBIENT + + + params contains four integer or floating-point values that specify + the ambient RGBA intensity of the light. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial ambient light intensity is (0, 0, 0, 1). + + + + + GL_DIFFUSE + + + params contains four integer or floating-point values that specify + the diffuse RGBA intensity of the light. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 1). + + + + + GL_SPECULAR + + + params contains four integer or floating-point values that specify + the specular RGBA intensity of the light. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 1). + + + + + GL_POSITION + + + params contains four integer or floating-point values that specify + the position of the light in homogeneous object coordinates. + Both integer and floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + + + The position is transformed by the modelview matrix when + glLight is called (just as if it were a point), + and it is stored in eye coordinates. + If the + w + component of the position is 0, + the light is treated as a directional source. + Diffuse and specular lighting calculations take the light's direction, + but not its actual position, + into account, + and attenuation is disabled. + Otherwise, + diffuse and specular lighting calculations are based on the actual location + of the light in eye coordinates, + and attenuation is enabled. + The initial position is (0, 0, 1, 0); + thus, the initial light source is directional, + parallel to, and in the direction of the + + + + - + z + + + axis. + + + + + GL_SPOT_DIRECTION + + + params contains three integer or floating-point values that specify + the direction of the light in homogeneous object coordinates. + Both integer and floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + + + The spot direction is transformed by the upper 3x3 of the modelview matrix when + glLight is called, + and it is stored in eye coordinates. + It is significant only when GL_SPOT_CUTOFF is not 180, + which it is initially. + The initial direction is + + + + 0 + 0 + -1 + + . + + + + + GL_SPOT_EXPONENT + + + params is a single integer or floating-point value that specifies + the intensity distribution of the light. + Integer and floating-point values are mapped directly. + Only values in the range + + + + 0 + 128 + + + are accepted. + + + Effective light intensity is attenuated by the cosine of the angle between + the direction of the light and the direction from the light to the vertex + being lighted, + raised to the power of the spot exponent. + Thus, higher spot exponents result in a more focused light source, + regardless of the spot cutoff angle (see GL_SPOT_CUTOFF, next paragraph). + The initial spot exponent is 0, + resulting in uniform light distribution. + + + + + GL_SPOT_CUTOFF + + + params is a single integer or floating-point value that specifies + the maximum spread angle of a light source. + Integer and floating-point values are mapped directly. + Only values in the range + + + + 0 + 90 + + + and the special value 180 + are accepted. + If the angle between the direction of the light and the direction from the + light to the vertex being lighted is greater than the spot cutoff angle, + the light is completely masked. + Otherwise, its intensity is controlled by the spot exponent and the + attenuation factors. + The initial spot cutoff is 180, + resulting in uniform light distribution. + + + + + GL_CONSTANT_ATTENUATION + + + + + GL_LINEAR_ATTENUATION + + + + + GL_QUADRATIC_ATTENUATION + + + params is a single integer or floating-point value that specifies + one of the three light attenuation factors. + Integer and floating-point values are mapped directly. + Only nonnegative values are accepted. + If the light is positional, + rather than directional, + its intensity is attenuated by the reciprocal of the sum of the constant + factor, the linear factor times the distance between the light + and the vertex being lighted, + and the quadratic factor times the square of the same distance. + The initial attenuation factors are (1, 0, 0), + resulting in no attenuation. + + + + + + Notes + + It is always the case that GL_LIGHT + i + = GL_LIGHT0 + + i. + + + Errors + + GL_INVALID_ENUM is generated if either light or pname + is not an accepted value. + + + GL_INVALID_VALUE is generated if a spot exponent value is specified + outside the range + + + + 0 + 128 + + , + or if spot cutoff is specified outside the range + + + + 0 + 90 + + + (except for the + special value 180), + or if a negative attenuation factor is specified. + + + GL_INVALID_OPERATION is generated if glLight is executed between + the execution of + glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGetLight + + + glIsEnabled with argument GL_LIGHTING + + + See Also + + glColorMaterial, + glLightModel, + glMaterial + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLightModel.xml b/upstream-man-pages/man2/glLightModel.xml new file mode 100644 index 0000000..6a31043 --- /dev/null +++ b/upstream-man-pages/man2/glLightModel.xml @@ -0,0 +1,278 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLightModel + 3G + + + glLightModel + set the lighting model parameters + + C Specification + + + void glLightModelf + GLenum pname + GLfloat param + + + + + void glLightModeli + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies a single-valued lighting model parameter. + GL_LIGHT_MODEL_LOCAL_VIEWER, + GL_LIGHT_MODEL_COLOR_CONTROL, and + GL_LIGHT_MODEL_TWO_SIDE are accepted. + + + + + param + + + Specifies the value that param will be set to. + + + + + + C Specification + + + void glLightModelfv + GLenum pname + const GLfloat * params + + + + + void glLightModeliv + GLenum pname + const GLint * params + + + + Parameters + + + pname + + + Specifies a lighting model parameter. + GL_LIGHT_MODEL_AMBIENT, + GL_LIGHT_MODEL_COLOR_CONTROL, + GL_LIGHT_MODEL_LOCAL_VIEWER, and + GL_LIGHT_MODEL_TWO_SIDE are accepted. + + + + + params + + + Specifies a pointer to the value or values that params will be set to. + + + + + + Description + + glLightModel sets the lighting model parameter. + pname names a parameter and params gives the new value. + There are three lighting model parameters: + + + + GL_LIGHT_MODEL_AMBIENT + + + + + params contains four integer or floating-point values that specify + the ambient RGBA intensity of the entire scene. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial ambient scene intensity is (0.2, 0.2, 0.2, 1.0). + + + + + GL_LIGHT_MODEL_COLOR_CONTROL + + + + + params must be either GL_SEPARATE_SPECULAR_COLOR or + GL_SINGLE_COLOR. + GL_SINGLE_COLOR specifies that a single color is generated from the + lighting computation for a vertex. GL_SEPARATE_SPECULAR_COLOR + specifies that the specular color computation of lighting be stored + separately from the remainder of the lighting computation. The specular + color is summed into the generated fragment's color after the application + of texture mapping (if enabled). The initial value is GL_SINGLE_COLOR. + + + + + GL_LIGHT_MODEL_LOCAL_VIEWER + + + + + params is a single integer or floating-point value that specifies + how specular reflection angles are computed. + If params is 0 (or 0.0), specular reflection angles take the + view direction to be parallel to and in the direction of the -z axis, + regardless of the location of the vertex in eye coordinates. + Otherwise, specular reflections are computed from the origin + of the eye coordinate system. + The initial value is 0. + + + + + GL_LIGHT_MODEL_TWO_SIDE + + + + + params is a single integer or floating-point value that specifies + whether one- or two-sided lighting calculations are done for polygons. + It has no effect on the lighting calculations for points, + lines, + or bitmaps. + If params is 0 (or 0.0), one-sided lighting is specified, + and only the front material parameters are used in the + lighting equation. + Otherwise, two-sided lighting is specified. + In this case, vertices of back-facing polygons are lighted using the + back material parameters + and have their normals reversed before the lighting equation is evaluated. + Vertices of front-facing polygons are always lighted using the + front material parameters, + with no change to their normals. The initial value is 0. + + + + + + In RGBA mode, the lighted color of a vertex is the sum of + the material emission intensity, + the product of the material ambient reflectance and the lighting model full-scene + ambient intensity, + and the contribution of each enabled light source. + Each light source contributes the sum of three terms: + ambient, diffuse, and specular. + The ambient light source contribution is the product of the material ambient + reflectance and the light's ambient intensity. + The diffuse light source contribution is the product of the material diffuse + reflectance, + the light's diffuse intensity, + and the dot product of the vertex's normal with the normalized vector from + the vertex to the light source. + The specular light source contribution is the product of the material specular + reflectance, + the light's specular intensity, + and the dot product of the normalized vertex-to-eye and vertex-to-light + vectors, + raised to the power of the shininess of the material. + All three light source contributions are attenuated equally based on + the distance from the vertex to the light source and on light source + direction, spread exponent, and spread cutoff angle. + All dot products are replaced with 0 if they evaluate to a negative value. + + + The alpha component of the resulting lighted color is set to the alpha value + of the material diffuse reflectance. + + + In color index mode, + the value of the lighted index of a vertex ranges from the ambient + to the specular values passed to glMaterial using GL_COLOR_INDEXES. + Diffuse and specular coefficients, + computed with a (.30, .59, .11) weighting of the lights' colors, + the shininess of the material, + and the same reflection and attenuation equations as in the RGBA case, + determine how much above ambient the resulting index is. + + + Notes + + GL_LIGHT_MODEL_COLOR_CONTROL is available only if the GL version is + 1.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_ENUM is generated if pname is + GL_LIGHT_MODEL_COLOR_CONTROL and params is not one of + GL_SINGLE_COLOR or GL_SEPARATE_SPECULAR_COLOR. + + + GL_INVALID_OPERATION is generated if glLightModel is executed between + the execution of glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_LIGHT_MODEL_AMBIENT + + + glGet with argument GL_LIGHT_MODEL_COLOR_CONTROL + + + glGet with argument GL_LIGHT_MODEL_LOCAL_VIEWER + + + glGet with argument GL_LIGHT_MODEL_TWO_SIDE + + + glIsEnabled with argument GL_LIGHTING + + + See Also + + glLight, + glMaterial + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLineStipple.xml b/upstream-man-pages/man2/glLineStipple.xml new file mode 100644 index 0000000..33917ae --- /dev/null +++ b/upstream-man-pages/man2/glLineStipple.xml @@ -0,0 +1,165 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLineStipple + 3G + + + glLineStipple + specify the line stipple pattern + + C Specification + + + void glLineStipple + GLint factor + GLushort pattern + + + + + Parameters + + + factor + + + Specifies a multiplier for each bit in the line stipple pattern. + If factor is 3, + for example, + each bit in the pattern is used three times + before the next bit in the pattern is used. + factor is clamped to the range [1, 256] and defaults to 1. + + + + + pattern + + + Specifies a 16-bit integer whose bit pattern determines + which fragments of a line will be drawn when the line is rasterized. + Bit zero is used first; the default pattern is all 1's. + + + + + + Description + + Line stippling masks out certain fragments produced by rasterization; + those fragments will not be drawn. + The masking is achieved by using three parameters: + the 16-bit line stipple pattern pattern, + the repeat count factor, + and an integer stipple counter + s. + + + Counter + s + is reset to 0 whenever glBegin is called + and before each line segment of a glBegin(GL_LINES)/glEnd + sequence is generated. + It is incremented after each fragment of a unit width aliased line segment + is generated + or after each + i + fragments of an + i + width line segment are generated. + The + i + fragments associated with count + s + are masked out if + + + pattern bit + + + + + + s + factor + + + % + 16 + + + + + is 0, otherwise these fragments are sent to the frame buffer. + Bit zero of pattern is the least significant bit. + + + Antialiased lines are treated as a sequence of + + + + 1 + × + width + + + rectangles + for purposes of stippling. + Whether rectangle + s + is rasterized or not depends on the fragment rule + described for aliased lines, + counting rectangles rather than groups of fragments. + + + To enable and disable line stippling, call glEnable and glDisable + with argument GL_LINE_STIPPLE. + When enabled, + the line stipple pattern is applied as described above. + When disabled, + it is as if the pattern were all 1's. + Initially, line stippling is disabled. + + + Errors + + GL_INVALID_OPERATION is generated if glLineStipple + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_LINE_STIPPLE_PATTERN + + + glGet with argument GL_LINE_STIPPLE_REPEAT + + + glIsEnabled with argument GL_LINE_STIPPLE + + + See Also + + glLineWidth, + glPolygonStipple + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLineWidth.xml b/upstream-man-pages/man2/glLineWidth.xml new file mode 100644 index 0000000..c303c34 --- /dev/null +++ b/upstream-man-pages/man2/glLineWidth.xml @@ -0,0 +1,159 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLineWidth + 3G + + + glLineWidth + specify the width of rasterized lines + + C Specification + + + void glLineWidth + GLfloat width + + + + + Parameters + + + width + + + Specifies the width of rasterized lines. + The initial value is 1. + + + + + + Description + + glLineWidth specifies the rasterized width of both aliased and antialiased + lines. + Using a line width other than 1 has different effects, + depending on whether line antialiasing is enabled. + To enable and disable line antialiasing, call + glEnable and glDisable + with argument GL_LINE_SMOOTH. Line antialiasing is initially + disabled. + + + If line antialiasing is disabled, + the actual width is determined by rounding the supplied width + to the nearest integer. + (If the rounding results in the value 0, + it is as if the line width were 1.) + If + + + + + + Δ + x + + + >= + + + Δ + y + + + + , + i pixels are filled in each column that is rasterized, + where i is the rounded value of width. + Otherwise, + i pixels are filled in each row that is rasterized. + + + If antialiasing is enabled, + line rasterization produces a fragment for each pixel square + that intersects the region lying within the rectangle having width + equal to the current line width, + length equal to the actual length of the line, + and centered on the mathematical line segment. + The coverage value for each fragment is the window coordinate area + of the intersection of the rectangular region with the corresponding + pixel square. + This value is saved and used in the final rasterization step. + + + Not all widths can be supported when line antialiasing is enabled. If an + unsupported width is requested, the nearest supported width is used. + Only width 1 is guaranteed to be supported; others depend on the + implementation. Likewise, there is a range for aliased line widths as well. + To query the range of supported widths and the size + difference between supported widths within the range, call glGet + with arguments GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. + + + Notes + + The line width specified by glLineWidth is always returned when GL_LINE_WIDTH + is queried. + Clamping and rounding for aliased and antialiased lines have no effect on the specified value. + + + Nonantialiased line width may be clamped to an implementation-dependent maximum. Call glGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the maximum width. + + + In OpenGL 1.2, the tokens GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY were replaced by GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. The old names are retained for backward compatibility, but should not be used in new code. + + + Errors + + GL_INVALID_VALUE is generated if width is less than or equal to 0. + + + GL_INVALID_OPERATION is generated if glLineWidth + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_LINE_WIDTH + + + glGet with argument GL_ALIASED_LINE_WIDTH_RANGE + + + glGet with argument GL_SMOOTH_LINE_WIDTH_RANGE + + + glGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY + + + glIsEnabled with argument GL_LINE_SMOOTH + + + See Also + + glEnable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLinkProgram.xml b/upstream-man-pages/man2/glLinkProgram.xml new file mode 100644 index 0000000..bded296 --- /dev/null +++ b/upstream-man-pages/man2/glLinkProgram.xml @@ -0,0 +1,223 @@ + + + + + glLinkProgram + 3G + + + glLinkProgram + Links a program object + + C Specification + + + void glLinkProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object to be linked. + + + + + + Description + glLinkProgram links the program + object specified by program. If any + shader objects of type GL_VERTEX_SHADER are + attached to program, they will be used to + create an executable that will run on the programmable vertex + processor. If any shader objects of type + GL_FRAGMENT_SHADER are attached to + program, they will be used to create an + executable that will run on the programmable fragment + processor. + + The status of the link operation will be stored as part of + the program object's state. This value will be set to + GL_TRUE if the program object was linked + without errors and is ready for use, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_LINK_STATUS. + + As a result of a successful link operation, all active + user-defined uniform variables belonging to + program will be initialized to 0, and + each of the program object's active uniform variables will be + assigned a location that can be queried by calling + glGetUniformLocation. + Also, any active user-defined attribute variables that have not + been bound to a generic vertex attribute index will be bound to + one at this time. + + Linking of a program object can fail for a number of + reasons as specified in the OpenGL Shading Language + Specification. The following lists some of the + conditions that will cause a link error. + + + + The number of active attribute variables supported + by the implementation has been exceeded. + + + The storage limit for uniform variables has been + exceeded. + + + The number of active uniform variables supported + by the implementation has been exceeded. + + + The main function is missing + for the vertex shader or the fragment shader. + + + A varying variable actually used in the fragment + shader is not declared in the same way (or is not + declared at all) in the vertex shader. + + + A reference to a function or variable name is + unresolved. + + + A shared global is declared with two different + types or two different initial values. + + + One or more of the attached shader objects has not + been successfully compiled. + + + Binding a generic attribute matrix caused some + rows of the matrix to fall outside the allowed maximum + of GL_MAX_VERTEX_ATTRIBS. + + + Not enough contiguous vertex attribute slots could + be found to bind attribute matrices. + + + + When a program object has been successfully linked, the + program object can be made part of current state by calling + glUseProgram. + Whether or not the link operation was successful, the program + object's information log will be overwritten. The information + log can be retrieved by calling + glGetProgramInfoLog. + + glLinkProgram will also install the + generated executables as part of the current rendering state if + the link operation was successful and the specified program + object is already currently in use as a result of a previous + call to + glUseProgram. + If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE , but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked. + + If program contains shader objects + of type GL_VERTEX_SHADER but does not + contain shader objects of type + GL_FRAGMENT_SHADER, the vertex shader will + be linked against the implicit interface for fixed functionality + fragment processing. Similarly, if + program contains shader objects of type + GL_FRAGMENT_SHADER but it does not contain + shader objects of type GL_VERTEX_SHADER, + the fragment shader will be linked against the implicit + interface for fixed functionality vertex processing. + + The program object's information log is updated and the + program is generated at the time of the link operation. After + the link operation, applications are free to modify attached + shader objects, compile attached shader objects, detach shader + objects, delete shader objects, and attach additional shader + objects. None of these operations affects the information log or + the program that is part of the program object. + + Notes + glLinkProgram + is available only if the GL version is 2.0 or greater. + If the link operation is unsuccessful, any information about a previous link operation on program + is lost (i.e., a failed link does not restore the old state of program + ). Certain information can still be retrieved from program + even after an unsuccessful link operation. See for instance glGetActiveAttrib + and glGetActiveUniform. + + Errors + GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL. + GL_INVALID_OPERATION + is generated if program + is not a program object. + GL_INVALID_OPERATION + is generated if glLinkProgram + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + glGetActiveAttrib + with argument program + and the index of an active attribute variable + glGetActiveUniform + with argument program + and the index of an active uniform variable + glGetAttachedShaders + with argument program + glGetAttribLocation + with argument program + and an attribute variable name + glGetProgram + with arguments program + and GL_LINK_STATUS + glGetProgramInfoLog + with argument program + glGetUniform + with argument program + and a uniform variable location + glGetUniformLocation + with argument program + and a uniform variable name + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glListBase.xml b/upstream-man-pages/man2/glListBase.xml new file mode 100644 index 0000000..9818876 --- /dev/null +++ b/upstream-man-pages/man2/glListBase.xml @@ -0,0 +1,74 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glListBase + 3G + + + glListBase + set the display-list base for glCallLists + + C Specification + + + void glListBase + GLuint base + + + + Parameters + + + base + + + Specifies an integer offset that will be added to glCallLists + offsets to generate display-list names. + The initial value is 0. + + + + + + Description + + glCallLists specifies an array of offsets. + Display-list names are generated by adding base to each offset. + Names that reference valid display lists are executed; + the others are ignored. + + + Errors + + GL_INVALID_OPERATION is generated if glListBase + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_LIST_BASE + + + See Also + + glCallLists + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLoadIdentity.xml b/upstream-man-pages/man2/glLoadIdentity.xml new file mode 100644 index 0000000..940fac5 --- /dev/null +++ b/upstream-man-pages/man2/glLoadIdentity.xml @@ -0,0 +1,150 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLoadIdentity + 3G + + + glLoadIdentity + replace the current matrix with the identity matrix + + C Specification + + + void glLoadIdentity + void + + + + Description + + glLoadIdentity replaces the current matrix with the identity matrix. + It is semantically equivalent to calling glLoadMatrix + with the identity matrix + + + + + + + + + + + + 1 + + + 0 + + + 0 + + + 0 + + + + + 0 + + + 1 + + + 0 + + + 0 + + + + + 0 + + + 0 + + + 1 + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + + + + + + + but in some cases it is more efficient. + + + Errors + + GL_INVALID_OPERATION is generated if glLoadIdentity + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glLoadMatrix, + glLoadTransposeMatrix, + glMatrixMode, + glMultMatrix, + glMultTransposeMatrix, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLoadMatrix.xml b/upstream-man-pages/man2/glLoadMatrix.xml new file mode 100644 index 0000000..b043e89 --- /dev/null +++ b/upstream-man-pages/man2/glLoadMatrix.xml @@ -0,0 +1,437 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLoadMatrix + 3G + + + glLoadMatrix + replace the current matrix with the specified matrix + + C Specification + + + void glLoadMatrixd + const GLdouble * m + + + + + void glLoadMatrixf + const GLfloat * m + + + + + Parameters + + + m + + + Specifies a pointer to 16 consecutive values, which are used as the + elements of a + + + + 4 + × + 4 + + + column-major matrix. + + + + + + Description + + glLoadMatrix replaces the current matrix with the one whose elements are specified by + m. + The current matrix is the projection matrix, + modelview matrix, + or texture matrix, + depending on the current matrix mode + (see glMatrixMode). + + + The current matrix, M, defines a transformation of coordinates. + For instance, assume M refers to the modelview matrix. + If + + + + v + = + + + v + + + 0 + + + + v + + + 1 + + + + v + + + 2 + + + + v + + + 3 + + + + + + is the set of object coordinates + of a vertex, + and m points to an array of + + + 16 + + single- or double-precision + floating-point values + + + + m + = + + + m + + + 0 + + + + m + + + 1 + + + ... + + m + + + 15 + + + + + , + then the modelview transformation + + + + M + + + v + + + + does the following: + + + + + + + M + + + v + + + = + + + + + + + m + + + 0 + + + + + + m + + + 4 + + + + + + m + + + 8 + + + + + + m + + + 12 + + + + + + + + m + + + 1 + + + + + + m + + + 5 + + + + + + m + + + 9 + + + + + + m + + + 13 + + + + + + + + m + + + 2 + + + + + + m + + + 6 + + + + + + m + + + 10 + + + + + + m + + + 14 + + + + + + + + m + + + 3 + + + + + + m + + + 7 + + + + + + m + + + 11 + + + + + + m + + + 15 + + + + + + + × + + + + + + v + + + 0 + + + + + + + + v + + + 1 + + + + + + + + v + + + 2 + + + + + + + + v + + + 3 + + + + + + + + + + + + + + Projection and texture transformations are similarly defined. + + + Notes + + While the elements of the matrix may be specified with + single or double precision, the GL implementation may + store or operate on these values in less than single + precision. + + + Errors + + GL_INVALID_OPERATION is generated if glLoadMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glLoadIdentity, + glMatrixMode, + glMultMatrix, + glMultTransposeMatrix, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLoadName.xml b/upstream-man-pages/man2/glLoadName.xml new file mode 100644 index 0000000..653c2d3 --- /dev/null +++ b/upstream-man-pages/man2/glLoadName.xml @@ -0,0 +1,87 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLoadName + 3G + + + glLoadName + load a name onto the name stack + + C Specification + + + void glLoadName + GLuint name + + + + Parameters + + + name + + + Specifies a name that will replace the top value on the name stack. + + + + + + Description + + The name stack is used during selection mode to allow sets of rendering + commands to be uniquely identified. + It consists of an ordered set of unsigned integers and is initially empty. + + + glLoadName causes name to replace the value on the top of the name stack. + + + The name stack is always empty while the render mode is not GL_SELECT. + Calls to glLoadName while the render mode is not GL_SELECT are ignored. + + + Errors + + GL_INVALID_OPERATION is generated if glLoadName is called while the + name stack is empty. + + + GL_INVALID_OPERATION is generated if glLoadName is executed between + the execution of glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_NAME_STACK_DEPTH + + + glGet with argument GL_MAX_NAME_STACK_DEPTH + + + See Also + + glInitNames, + glPushName, + glRenderMode, + glSelectBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLoadTransposeMatrix.xml b/upstream-man-pages/man2/glLoadTransposeMatrix.xml new file mode 100644 index 0000000..6f221fa --- /dev/null +++ b/upstream-man-pages/man2/glLoadTransposeMatrix.xml @@ -0,0 +1,456 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLoadTransposeMatrix + 3G + + + glLoadTransposeMatrix + replace the current matrix with the specified row-major ordered matrix + + C Specification + + + void glLoadTransposeMatrixd + const GLdouble * m + + + + + void glLoadTransposeMatrixf + const GLfloat * m + + + + + Parameters + + + m + + + Specifies a pointer to 16 consecutive values, which are used as the + elements of a + + + + 4 + × + 4 + + + row-major matrix. + + + + + + Description + + glLoadTransposeMatrix replaces the current matrix with the one whose elements are specified by + m. + The current matrix is the projection matrix, + modelview matrix, + or texture matrix, + depending on the current matrix mode + (see glMatrixMode). + + + The current matrix, M, defines a transformation of coordinates. + For instance, assume M refers to the modelview matrix. + If + + + + v + = + + + v + + + 0 + + + + v + + + 1 + + + + v + + + 2 + + + + v + + + 3 + + + + + + is the set of object coordinates + of a vertex, + and m points to an array of + + + 16 + + single- or double-precision + floating-point values + + + + m + = + + + m + + + 0 + + + + m + + + 1 + + + ... + + m + + + 15 + + + + + , + then the modelview transformation + + + + M + + + v + + + + does the following: + + + + + + + M + + + v + + + = + + + + + + + m + + + 0 + + + + + + m + + + 1 + + + + + + m + + + 2 + + + + + + m + + + 3 + + + + + + + + m + + + 4 + + + + + + m + + + 5 + + + + + + m + + + 6 + + + + + + m + + + 7 + + + + + + + + m + + + 8 + + + + + + m + + + 9 + + + + + + m + + + 10 + + + + + + m + + + 11 + + + + + + + + m + + + 12 + + + + + + m + + + 13 + + + + + + m + + + 14 + + + + + + m + + + 15 + + + + + + + × + + + + + + v + + + 0 + + + + + + + + v + + + 1 + + + + + + + + v + + + 2 + + + + + + + + v + + + 3 + + + + + + + + + + + + + + Projection and texture transformations are similarly defined. + + + Calling glLoadTransposeMatrix with matrix + M + is identical in operation to + glLoadMatrix with + + + M + T + + , + where + T + represents the transpose. + + + Notes + + glLoadTransposeMatrix is available only if the GL version is 1.3 or greater. + + + While the elements of the matrix may be specified with + single or double precision, the GL implementation may + store or operate on these values in less than single + precision. + + + Errors + + GL_INVALID_OPERATION is generated if glLoadTransposeMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glLoadIdentity, + glLoadMatrix, + glMatrixMode, + glMultMatrix, + glMultTransposeMatrix, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glLogicOp.xml b/upstream-man-pages/man2/glLogicOp.xml new file mode 100644 index 0000000..389cc5c --- /dev/null +++ b/upstream-man-pages/man2/glLogicOp.xml @@ -0,0 +1,275 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLogicOp + 3G + + + glLogicOp + specify a logical pixel operation for color index rendering + + C Specification + + + void glLogicOp + GLenum opcode + + + + Parameters + + + opcode + + + Specifies a symbolic constant that selects a logical operation. + The following symbols are accepted: + GL_CLEAR, + GL_SET, + GL_COPY, + GL_COPY_INVERTED, + GL_NOOP, + GL_INVERT, + GL_AND, + GL_NAND, + GL_OR, + GL_NOR, + GL_XOR, + GL_EQUIV, + GL_AND_REVERSE, + GL_AND_INVERTED, + GL_OR_REVERSE, and + GL_OR_INVERTED. The initial value is GL_COPY. + + + + + + Description + + glLogicOp specifies a logical operation that, + when enabled, + is applied between the incoming color index or RGBA color + and the color index or RGBA color at the corresponding location in the + frame buffer. + To enable or disable the logical operation, call + glEnable and glDisable + using the symbolic constant GL_COLOR_LOGIC_OP for RGBA mode or + GL_INDEX_LOGIC_OP for color index mode. The initial value is + disabled for both operations. + + + + + + + + + + + Opcode + + + Resulting Operation + + + + + + + GL_CLEAR + + + 0 + + + + + GL_SET + + + 1 + + + + + GL_COPY + + + s + + + + + GL_COPY_INVERTED + + + ~s + + + + + GL_NOOP + + + d + + + + + GL_INVERT + + + ~d + + + + + GL_AND + + + s & d + + + + + GL_NAND + + + ~(s & d) + + + + + GL_OR + + + s | d + + + + + GL_NOR + + + ~(s | d) + + + + + GL_XOR + + + s ^ d + + + + + GL_EQUIV + + + ~(s ^ d) + + + + + GL_AND_REVERSE + + + s & ~d + + + + + GL_AND_INVERTED + + + ~s & d + + + + + GL_OR_REVERSE + + + s | ~d + + + + + GL_OR_INVERTED + + + ~s | d + + + + + + + opcode is a symbolic constant chosen from the list above. + In the explanation of the logical operations, + s represents the incoming color index and + d represents the index in the frame buffer. + Standard C-language operators are used. + As these bitwise operators suggest, + the logical operation is applied independently to each bit pair of the + source and destination indices or colors. + + + Notes + + Color index logical operations are always supported. RGBA logical + operations are supported only if the GL version is 1.1 or greater. + + + When more than one RGBA color or index buffer is enabled for drawing, + logical operations are performed separately for each enabled buffer, + using for the destination value the contents of that buffer + (see glDrawBuffer). + + + Errors + + GL_INVALID_ENUM is generated if opcode is not an accepted value. + + + GL_INVALID_OPERATION is generated if glLogicOp + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_LOGIC_OP_MODE. + + + glIsEnabled with argument GL_COLOR_LOGIC_OP or GL_INDEX_LOGIC_OP. + + + See Also + + glAlphaFunc, + glBlendFunc, + glDrawBuffer, + glEnable, + glStencilOp + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMap1.xml b/upstream-man-pages/man2/glMap1.xml new file mode 100644 index 0000000..cee30a8 --- /dev/null +++ b/upstream-man-pages/man2/glMap1.xml @@ -0,0 +1,620 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMap1 + 3G + + + glMap1 + define a one-dimensional evaluator + + C Specification + + + void glMap1f + GLenum target + GLfloat u1 + GLfloat u2 + GLint stride + GLint order + const GLfloat * points + + + + + void glMap1d + GLenum target + GLdouble u1 + GLdouble u2 + GLint stride + GLint order + const GLdouble * points + + + + + Parameters + + + target + + + Specifies the kind of values that are generated by the evaluator. + Symbolic constants + GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4, + GL_MAP1_INDEX, + GL_MAP1_COLOR_4, + GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, and + GL_MAP1_TEXTURE_COORD_4 are accepted. + + + + + u1 + u2 + + + Specify a linear mapping of + u, + as presented to glEvalCoord1, + to + + + u^ + , + the variable that is evaluated by the equations specified by this command. + + + + + stride + + + Specifies the number of floats or doubles between + the beginning of one control point and the beginning of the next one + in the data structure referenced in points. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. + + + + + order + + + Specifies the number of control points. + Must be positive. + + + + + points + + + Specifies a pointer to the array of control points. + + + + + + Description + + Evaluators provide a way to use polynomial or rational polynomial mapping + to produce vertices, + normals, + texture coordinates, + and colors. + The values produced by an evaluator are sent to further stages + of GL processing just as if they had been presented using + glVertex, + glNormal, + glTexCoord, and + glColor commands, + except that the generated values do not update the current normal, + texture coordinates, + or color. + + + All polynomial or rational polynomial splines of any degree + (up to the maximum degree supported by the GL implementation) + can be described using evaluators. + These include almost all splines used in computer graphics: B-splines, + Bezier curves, Hermite splines, and so on. + + + Evaluators define curves based on Bernstein polynomials. + Define + + + + p + + + u^ + + + + as + + + + + + + p + + + u^ + + + = + + + Σ + + i + = + 0 + + n + + + + + B + i + + + n + + + + u^ + + + + R + i + + + + + + + + + + where + + + R + i + + + is a control point and + + + + + B + i + + + n + + + + u^ + + + + is the + ith + Bernstein polynomial of degree + n + (order = + + + + n + + + 1 + + ): + + + + + + + + B + i + + + n + + + + u^ + + + = + + + + + + n + + + i + + + + + + + u^ + + i + + + + + + 1 + - + u^ + + + + + n + - + i + + + + + + + + + + Recall that + + + + + + 0 + 0 + + == + 1 + + + and + + + + + + + + n + + + 0 + + + + + == + 1 + + + + + glMap1 is used to define the basis and to specify what kind of values + are produced. + Once defined, + a map can be enabled and disabled by calling glEnable and glDisable + with the map name, one of the nine predefined values for target + described below. + glEvalCoord1 evaluates the one-dimensional maps that are enabled. + When + glEvalCoord1 presents a value + u, + the Bernstein functions are evaluated using + + + u^ + , + where + + + + u^ + = + + + + u + - + u1 + + + + + u2 + - + u1 + + + + + + + + target is a symbolic constant that indicates what kind of control points + are provided in points, + and what output is generated when the map is evaluated. + It can assume one of nine predefined values: + + + + GL_MAP1_VERTEX_3 + + + Each control point is three floating-point values representing + x, + y, + and + z. + Internal glVertex3 commands are generated when the map is evaluated. + + + + + GL_MAP1_VERTEX_4 + + + Each control point is four floating-point values representing + x, + y, + z, + and + w. + Internal glVertex4 commands are generated when the map is evaluated. + + + + + GL_MAP1_INDEX + + + Each control point is a single floating-point value representing a color index. + Internal glIndex commands are generated when the map is evaluated + but the current index is not updated with the value of these glIndex + commands. + + + + + GL_MAP1_COLOR_4 + + + Each control point is four floating-point values representing + red, green, blue, and alpha. + Internal glColor4 commands are generated when the map is + evaluated but the current color is not updated with the value of these + glColor4 commands. + + + + + GL_MAP1_NORMAL + + + Each control point is three floating-point values representing + the + x, + y, + and + z + components of a normal vector. + Internal glNormal commands are generated when the map is + evaluated but the current normal is not updated with the value of + these glNormal commands. + + + + + GL_MAP1_TEXTURE_COORD_1 + + + Each control point is a single floating-point value representing + the + s + texture coordinate. + Internal + glTexCoord1 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + GL_MAP1_TEXTURE_COORD_2 + + + Each control point is two floating-point values representing + the + s + and + t + texture coordinates. + Internal + glTexCoord2 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + GL_MAP1_TEXTURE_COORD_3 + + + Each control point is three floating-point values representing + the + s, + t, + and + r + texture coordinates. + Internal glTexCoord3 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + GL_MAP1_TEXTURE_COORD_4 + + + Each control point is four floating-point values representing + the + s, + t, + r, + and + q + texture coordinates. + Internal + glTexCoord4 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + + stride, + order, and + points define the array addressing for accessing the control points. + points is the location of the first control point, + which occupies one, two, three, or four contiguous memory locations, + depending on which map is being defined. + order is the number of control points in the array. + stride specifies how many float or double locations to advance the internal + memory pointer to reach the next control point. + + + Notes + + As is the case with all GL commands that accept pointers to data, + it is as if the contents of points were copied by glMap1 before glMap1 + returns. + Changes to the contents of points have no effect after glMap1 is called. + + + Errors + + GL_INVALID_ENUM is generated if target is not an accepted value. + + + GL_INVALID_VALUE is generated if u1 is equal to u2. + + + GL_INVALID_VALUE is generated if stride is less than the number + of values in a control point. + + + GL_INVALID_VALUE is generated if order is less than 1 or + greater than the return value of GL_MAX_EVAL_ORDER. + + + GL_INVALID_OPERATION is generated if glMap1 + is executed between the execution of + glBegin + and the corresponding execution of glEnd. + + + GL_INVALID_OPERATION is generated if glMap1 is called and the value + of GL_ACTIVE_TEXTURE is not GL_TEXTURE0. + + + Associated Gets + + glGetMap + + + glGet with argument GL_MAX_EVAL_ORDER + + + glIsEnabled with argument GL_MAP1_VERTEX_3 + + + glIsEnabled with argument GL_MAP1_VERTEX_4 + + + glIsEnabled with argument GL_MAP1_INDEX + + + glIsEnabled with argument GL_MAP1_COLOR_4 + + + glIsEnabled with argument GL_MAP1_NORMAL + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1 + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2 + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3 + + + glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4 + + + See Also + + glBegin, + glColor, + glEnable, + glEvalCoord, + glEvalMesh, + glEvalPoint, + glMap2, + glMapGrid, + glNormal, + glTexCoord, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMap2.xml b/upstream-man-pages/man2/glMap2.xml new file mode 100644 index 0000000..215f802 --- /dev/null +++ b/upstream-man-pages/man2/glMap2.xml @@ -0,0 +1,970 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMap2 + 3G + + + glMap2 + define a two-dimensional evaluator + + C Specification + + + void glMap2f + GLenum target + GLfloat u1 + GLfloat u2 + GLint ustride + GLint uorder + GLfloat v1 + GLfloat v2 + GLint vstride + GLint vorder + const GLfloat * points + + + + + void glMap2d + GLenum target + GLdouble u1 + GLdouble u2 + GLint ustride + GLint uorder + GLdouble v1 + GLdouble v2 + GLint vstride + GLint vorder + const GLdouble * points + + + + + Parameters + + + target + + + Specifies the kind of values that are generated by the evaluator. + Symbolic constants + GL_MAP2_VERTEX_3, + GL_MAP2_VERTEX_4, + GL_MAP2_INDEX, + GL_MAP2_COLOR_4, + GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3, and + GL_MAP2_TEXTURE_COORD_4 are accepted. + + + + + u1 + u2 + + + Specify a linear mapping of + u, + as presented to glEvalCoord2, + to + + + u^ + , + one of the two variables that are evaluated by the equations specified + by this command. Initially, u1 is 0 and u2 is 1. + + + + + ustride + + + Specifies the number of floats or doubles between + the beginning of control point + + + R + ij + + + and the beginning of control point + + + R + + + + + i + + + 1 + + + + j + + + + , + where + i + and + j + are the + u + and + v + control point indices, respectively. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. The initial value of ustride is 0. + + + + + uorder + + + Specifies the dimension of the control point array in the + u + axis. + Must be positive. The initial value is 1. + + + + + v1 + v2 + + + Specify a linear mapping of + v, + as presented to glEvalCoord2, + to + + + v^ + , + one of the two variables that are evaluated by the equations specified + by this command. Initially, v1 is 0 and v2 is 1. + + + + + vstride + + + Specifies the number of floats or doubles between + the beginning of control point + + + R + ij + + + and the beginning of control point + + + R + + + i + + + + j + + + 1 + + + + + + , + where + i + and + j + are the + u + and + v + control point indices, respectively. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. The initial value of vstride is 0. + + + + + vorder + + + Specifies the dimension of the control point array in the + v + axis. + Must be positive. The initial value is 1. + + + + + points + + + Specifies a pointer to the array of control points. + + + + + + Description + + Evaluators provide a way to use polynomial or rational polynomial mapping + to produce vertices, + normals, + texture coordinates, + and colors. + The values produced by an evaluator are sent on to further stages + of GL processing just as if they had been presented using + glVertex, + glNormal, + glTexCoord, and + glColor commands, + except that the generated values do not update the current normal, + texture coordinates, + or color. + + + All polynomial or rational polynomial splines of any degree + (up to the maximum degree supported by the GL implementation) + can be described using evaluators. + These include almost all surfaces used in computer graphics, + including B-spline surfaces, + NURBS surfaces, + Bezier surfaces, and so on. + + + Evaluators define surfaces based on bivariate Bernstein polynomials. + Define + + + + p + + + u^ + v^ + + + + as + + + + + + + p + + + u^ + v^ + + + = + + + Σ + + i + = + 0 + + n + + + + Σ + + j + = + 0 + + m + + + + + B + i + + + n + + + + u^ + + + + + + B + j + + + m + + + + v^ + + + + R + ij + + + + + + + + + + + where + + + R + ij + + + is a control point, + + + + + B + i + + + n + + + + u^ + + + + is the + ith + Bernstein polynomial of degree + n + (uorder = + + + + n + + + 1 + + ) + + + + + + + + B + i + + + n + + + + u^ + + + = + + + + + + n + + + i + + + + + + + u^ + + i + + + + + + 1 + - + u^ + + + + + n + - + i + + + + + + + + + + and + + + + + B + j + + + m + + + + v^ + + + + is the + jth + Bernstein polynomial of degree + m + (vorder = + + + + m + + + 1 + + ) + + + + + + + + B + j + + + m + + + + v^ + + + = + + + + + + m + + + j + + + + + + + v^ + + j + + + + + + 1 + - + v^ + + + + + m + - + j + + + + + + + + + + Recall that + + + + 0 + 0 + + == + 1 + + + and + + + + + + + + n + + + 0 + + + + + == + 1 + + + + + glMap2 is used to define the basis and to specify what kind of values + are produced. + Once defined, + a map can be enabled and disabled by calling glEnable and glDisable + with the map name, one of the nine predefined values for target, + described below. + When glEvalCoord2 presents values + u + and + v, + the bivariate Bernstein polynomials are evaluated using + + + u^ + + and + + + v^ + , + where + + + + + + u^ + = + + + + u + - + u1 + + + + + u2 + - + u1 + + + + + + + + + + + v^ + = + + + + v + - + v1 + + + + + v2 + - + v1 + + + + + + + + target is a symbolic constant that indicates what kind of control points + are provided in points, + and what output is generated when the map is evaluated. + It can assume one of nine predefined values: + + + + GL_MAP2_VERTEX_3 + + + Each control point is three floating-point values representing + x, + y, + and + z. + Internal glVertex3 commands are generated when the map is evaluated. + + + + + GL_MAP2_VERTEX_4 + + + Each control point is four floating-point values representing + x, + y, + z, + and + w. + Internal glVertex4 commands are generated when the map is evaluated. + + + + + GL_MAP2_INDEX + + + Each control point is a single floating-point value representing a color index. + Internal glIndex commands are generated when the map is evaluated + but the current index is not updated with the value of these + glIndex commands. + + + + + GL_MAP2_COLOR_4 + + + Each control point is four floating-point values representing + red, green, blue, and alpha. + Internal glColor4 commands are generated when the map is + evaluated but the current color is not updated with the value of + these glColor4 commands. + + + + + GL_MAP2_NORMAL + + + Each control point is three floating-point values representing + the + x, + y, + and + z + components of a normal vector. + Internal glNormal commands are generated when the map is + evaluated but the current normal is not updated with the value of + these glNormal commands. + + + + + GL_MAP2_TEXTURE_COORD_1 + + + Each control point is a single floating-point value representing + the + s + texture coordinate. + Internal + glTexCoord1 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + GL_MAP2_TEXTURE_COORD_2 + + + Each control point is two floating-point values representing + the + s + and + t + texture coordinates. + Internal + glTexCoord2 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + GL_MAP2_TEXTURE_COORD_3 + + + Each control point is three floating-point values representing + the + s, + t, + and + r + texture coordinates. + Internal glTexCoord3 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + GL_MAP2_TEXTURE_COORD_4 + + + Each control point is four floating-point values representing + the + s, + t, + r, + and + q + texture coordinates. + Internal + glTexCoord4 commands are generated when the map is evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. + + + + + + ustride, + uorder, + vstride, + vorder, and + points define the array addressing for accessing the control points. + points is the location of the first control point, + which occupies one, two, three, or four contiguous memory locations, + depending on which map is being defined. + There are + + + + uorder + × + vorder + + + control points in the array. + ustride specifies how many float or double locations are skipped to advance + the internal memory pointer from control point + + + R + + + i + + j + + + + + to control point + + + R + + + + + i + + + 1 + + + + j + + + + . + vstride specifies how many float or double locations are skipped to advance + the internal memory pointer from control point + + + R + + + i + + j + + + + + to control point + + + R + + + i + + + + j + + + 1 + + + + + + . + + + Notes + + As is the case with all GL commands that accept pointers to data, + it is as if the contents of points were copied by glMap2 before glMap2 + returns. + Changes to the contents of points have no effect after glMap2 is called. + + + Initially, GL_AUTO_NORMAL is enabled. If GL_AUTO_NORMAL is enabled, + normal vectors are generated when either + GL_MAP2_VERTEX_3 or GL_MAP2_VERTEX_4 is used to generate + vertices. + + + Errors + + GL_INVALID_ENUM is generated if target is not an accepted value. + + + GL_INVALID_VALUE is generated if u1 is equal to u2, + or if v1 is equal to v2. + + + GL_INVALID_VALUE is generated if either ustride or vstride + is less than the number of values in a control point. + + + GL_INVALID_VALUE is generated if either uorder or vorder + is less than 1 or greater than the return value of GL_MAX_EVAL_ORDER. + + + GL_INVALID_OPERATION is generated if glMap2 + is executed between the execution of + glBegin + and the corresponding execution of glEnd. + + + GL_INVALID_OPERATION is generated if glMap2 is called and the value + of GL_ACTIVE_TEXTURE is not GL_TEXTURE0. + + + Associated Gets + + glGetMap + + + glGet with argument GL_MAX_EVAL_ORDER + + + glIsEnabled with argument GL_MAP2_VERTEX_3 + + + glIsEnabled with argument GL_MAP2_VERTEX_4 + + + glIsEnabled with argument GL_MAP2_INDEX + + + glIsEnabled with argument GL_MAP2_COLOR_4 + + + glIsEnabled with argument GL_MAP2_NORMAL + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_1 + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_2 + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_3 + + + glIsEnabled with argument GL_MAP2_TEXTURE_COORD_4 + + + See Also + + glBegin, + glColor, + glEnable, + glEvalCoord, + glEvalMesh, + glEvalPoint, + glMap1, + glMapGrid, + glNormal, + glTexCoord, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMapBuffer.xml b/upstream-man-pages/man2/glMapBuffer.xml new file mode 100644 index 0000000..15fcb09 --- /dev/null +++ b/upstream-man-pages/man2/glMapBuffer.xml @@ -0,0 +1,185 @@ + + + + + + + 2005 + Sams Publishing + + + glMapBuffer + 3G + + + glMapBuffer + map a buffer object's data store + + C Specification + + + void * glMapBuffer + GLenum target + GLenum access + + + + Parameters + + + target + + + Specifies the target buffer object being mapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + access + + + Specifies the access policy, indicating whether it will be possible to read from, write to, + or both read from and write to the buffer object's mapped data store. The symbolic constant must be + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + + + + + + C Specification + + + GLboolean glUnmapBuffer + GLenum target + + + + + Parameters + + + target + + + Specifies the target buffer object being unmapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + + Description + + glMapBuffer maps to the client's address space the entire data store of the buffer object + currently bound to target. The data can then be directly read and/or written relative to + the returned pointer, depending on the specified access policy. If the GL is unable to + map the buffer object's data store, glMapBuffer generates an error and returns + NULL. This may occur for system-specific reasons, such as low virtual memory availability. + + + If a mapped data store is accessed in a way inconsistent with the specified access policy, + no error is generated, but performance may be negatively impacted and system errors, including program + termination, may result. Unlike the usage parameter of glBufferData, + access is not a hint, and does in fact constrain the usage of the mapped data store on + some GL implementations. In order to achieve the highest performance available, a buffer object's data store + should be used in ways consistent with both its specified usage and + access parameters. + + + A mapped data store must be unmapped with glUnmapBuffer before its buffer object is used. + Otherwise an error will be generated by any GL command that attempts to dereference the buffer object's data store. + When a data store is unmapped, the pointer to its data store becomes invalid. glUnmapBuffer + returns GL_TRUE unless the data store contents have become corrupt during the time + the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics + memory, such as screen mode changes. In such situations, GL_FALSE is returned and the + data store contents are undefined. An application must detect this rare condition and reinitialize the data store. + + + A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store + is recreated with glBufferData. + + + Notes + + If an error is generated, glMapBuffer returns NULL, and + glUnmapBuffer returns GL_FALSE. + + + glMapBuffer and glUnmapBuffer are available only if the GL version is 1.5 or greater. + + + GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are + available only if the GL version is 2.1 or greater. + + + Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, + but results will be undefined and will likely vary across GL implementations. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. + + + GL_INVALID_ENUM is generated if access is not + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + + + GL_OUT_OF_MEMORY is generated when glMapBuffer is executed + if the GL is unable to map the buffer object's data store. This may occur for a variety of system-specific + reasons, such as the absence of sufficient remaining virtual memory. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if glMapBuffer is executed for + a buffer object whose data store is already mapped. + + + GL_INVALID_OPERATION is generated if glUnmapBuffer is executed for + a buffer object whose data store is not currently mapped. + + + GL_INVALID_OPERATION is generated if glMapBuffer or glUnmapBuffer is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetBufferPointerv with argument GL_BUFFER_MAP_POINTER + + + glGetBufferParameteriv with argument GL_BUFFER_MAPPED, GL_BUFFER_ACCESS, or GL_BUFFER_USAGE + + + See Also + + glBindBuffer, + glBufferData, + glBufferSubData, + glDeleteBuffers + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glMapGrid.xml b/upstream-man-pages/man2/glMapGrid.xml new file mode 100644 index 0000000..334fba1 --- /dev/null +++ b/upstream-man-pages/man2/glMapGrid.xml @@ -0,0 +1,353 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMapGrid + 3G + + + glMapGrid + define a one- or two-dimensional mesh + + C Specification + + + void glMapGrid1d + GLint un + GLdouble u1 + GLdouble u2 + + + + + void glMapGrid1f + GLint un + GLfloat u1 + GLfloat u2 + + + + + void glMapGrid2d + GLint un + GLdouble u1 + GLdouble u2 + GLint vn + GLdouble v1 + GLdouble v2 + + + + + void glMapGrid2f + GLint un + GLfloat u1 + GLfloat u2 + GLint vn + GLfloat v1 + GLfloat v2 + + + + + Parameters + + + un + + + Specifies the number of partitions in the grid range interval + [u1, u2]. + Must be positive. + + + + + u1 + u2 + + + Specify the mappings for integer grid domain values + + + + i + = + 0 + + + and + + + + i + = + un + + . + + + + + vn + + + Specifies the number of partitions in the grid range interval + [v1, v2] + (glMapGrid2 only). + + + + + v1 + v2 + + + Specify the mappings for integer grid domain values + + + + j + = + 0 + + + and + + + + j + = + vn + + + (glMapGrid2 only). + + + + + + Description + + glMapGrid and glEvalMesh are used together to efficiently + generate and evaluate a series of evenly-spaced map domain values. + glEvalMesh steps through the integer domain + of a one- or two-dimensional grid, + whose range is the domain of the evaluation maps specified by + glMap1 and glMap2. + + + glMapGrid1 and glMapGrid2 specify the linear grid mappings + between the + i + (or + i + and + j) + integer grid coordinates, + to the + u + (or + u + and + v) + floating-point evaluation map coordinates. + See glMap1 and glMap2 for details of how + u + and + v + coordinates + are evaluated. + + + glMapGrid1 specifies a single linear mapping + such that integer grid coordinate 0 maps exactly to u1, + and integer grid coordinate un maps exactly to u2. + All other integer grid coordinates + i + are mapped so that + + + + + + u + = + + + + i + + + + u2 + - + u1 + + + + un + + + + u1 + + + + + + glMapGrid2 specifies two such linear mappings. + One maps integer grid coordinate + + + + i + = + 0 + + + exactly to u1, + and integer grid coordinate + + + + i + = + un + + + exactly to u2. + The other maps integer grid coordinate + + + + j + = + 0 + + + exactly to v1, + and integer grid coordinate + + + + j + = + vn + + + exactly to v2. + Other integer grid coordinates + i + and + j + are mapped such that + + + + + + u + = + + + + i + + + + u2 + - + u1 + + + + un + + + + u1 + + + + + + + + + v + = + + + + j + + + + v2 + - + v1 + + + + vn + + + + v1 + + + + + + The mappings specified by glMapGrid are used identically by + glEvalMesh and glEvalPoint. + + + Errors + + GL_INVALID_VALUE is generated if either un or vn is not + positive. + + + GL_INVALID_OPERATION is generated if glMapGrid + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MAP1_GRID_DOMAIN + + + glGet with argument GL_MAP2_GRID_DOMAIN + + + glGet with argument GL_MAP1_GRID_SEGMENTS + + + glGet with argument GL_MAP2_GRID_SEGMENTS + + + See Also + + glEvalCoord, + glEvalMesh, + glEvalPoint, + glMap1, + glMap2 + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMaterial.xml b/upstream-man-pages/man2/glMaterial.xml new file mode 100644 index 0000000..536a150 --- /dev/null +++ b/upstream-man-pages/man2/glMaterial.xml @@ -0,0 +1,353 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMaterial + 3G + + + glMaterial + specify material parameters for the lighting model + + C Specification + + + void glMaterialf + GLenum face + GLenum pname + GLfloat param + + + + + void glMateriali + GLenum face + GLenum pname + GLint param + + + + Parameters + + + face + + + Specifies which face or faces are being updated. + Must be one of + GL_FRONT, + GL_BACK, or + GL_FRONT_AND_BACK. + + + + + pname + + + Specifies the single-valued material parameter of the face or faces + that is being updated. + Must be GL_SHININESS. + + + + + param + + + Specifies the value that parameter GL_SHININESS will be set to. + + + + + + C Specification + + + void glMaterialfv + GLenum face + GLenum pname + const GLfloat * params + + + + + void glMaterialiv + GLenum face + GLenum pname + const GLint * params + + + + Parameters + + + face + + + Specifies which face or faces are being updated. + Must be one of + GL_FRONT, + GL_BACK, or + GL_FRONT_AND_BACK. + + + + + pname + + + Specifies the material parameter of the face or faces that is being updated. + Must be one of + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_EMISSION, + GL_SHININESS, + GL_AMBIENT_AND_DIFFUSE, or + GL_COLOR_INDEXES. + + + + + params + + + Specifies a pointer to the value or values that pname will be set to. + + + + + + Description + + glMaterial assigns values to material parameters. + There are two matched sets of material parameters. + One, + the front-facing set, + is used to shade points, + lines, + bitmaps, + and all polygons + (when two-sided lighting is disabled), + or just front-facing polygons + (when two-sided lighting is enabled). + The other set, + back-facing, + is used to shade back-facing polygons only when two-sided lighting is enabled. + Refer to the glLightModel reference page for details concerning one- and + two-sided lighting calculations. + + + glMaterial takes three arguments. + The first, + face, + specifies whether the + GL_FRONT materials, the + GL_BACK materials, or both + GL_FRONT_AND_BACK materials will be modified. + The second, + pname, + specifies which of several parameters in one or both sets will be modified. + The third, + params, + specifies what value or values will be assigned to the specified parameter. + + + Material parameters are used in the lighting equation that is optionally + applied to each vertex. + The equation is discussed in the glLightModel reference page. + The parameters that can be specified using glMaterial, + and their interpretations by the lighting equation, are as follows: + + + + GL_AMBIENT + + + params contains four integer or floating-point values that specify + the ambient RGBA reflectance of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial ambient reflectance for both front- and back-facing materials + is (0.2, 0.2, 0.2, 1.0). + + + + + GL_DIFFUSE + + + params contains four integer or floating-point values that specify + the diffuse RGBA reflectance of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial diffuse reflectance for both front- and back-facing materials + is (0.8, 0.8, 0.8, 1.0). + + + + + GL_SPECULAR + + + params contains four integer or floating-point values that specify + the specular RGBA reflectance of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial specular reflectance for both front- and back-facing materials + is (0, 0, 0, 1). + + + + + GL_EMISSION + + + params contains four integer or floating-point values that specify + the RGBA emitted light intensity of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial emission intensity for both front- and back-facing materials + is (0, 0, 0, 1). + + + + + GL_SHININESS + + + params is a single integer or floating-point value that specifies + the RGBA specular exponent of the material. + Integer and floating-point values are mapped directly. + Only values in the range + + + + 0 + 128 + + + are accepted. + The initial specular exponent for both front- and back-facing materials + is 0. + + + + + GL_AMBIENT_AND_DIFFUSE + + + Equivalent to calling glMaterial twice with the same parameter values, + once with GL_AMBIENT and once with GL_DIFFUSE. + + + + + GL_COLOR_INDEXES + + + params contains three integer or floating-point values specifying + the color indices for ambient, + diffuse, + and specular lighting. + These three values, + and GL_SHININESS, + are the only material values used by the color index mode lighting equation. + Refer to the glLightModel reference page for a discussion + of color index lighting. + + + + + + Notes + + The material parameters can be updated at any time. + In particular, + glMaterial can be called between a call to glBegin and the corresponding + call to glEnd. + If only a single material parameter is to be changed per vertex, + however, + glColorMaterial is preferred over glMaterial + (see glColorMaterial). + + + While the ambient, diffuse, specular and emission material parameters + all have alpha components, only the diffuse alpha component is used in + the lighting computation. + + + Errors + + GL_INVALID_ENUM is generated if either face or pname is not + an accepted value. + + + GL_INVALID_VALUE is generated if a specular exponent outside the range + + + + 0 + 128 + + + is specified. + + + Associated Gets + + glGetMaterial + + + See Also + + glColorMaterial, + glLight, + glLightModel + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMatrixMode.xml b/upstream-man-pages/man2/glMatrixMode.xml new file mode 100644 index 0000000..e462999 --- /dev/null +++ b/upstream-man-pages/man2/glMatrixMode.xml @@ -0,0 +1,125 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMatrixMode + 3G + + + glMatrixMode + specify which matrix is the current matrix + + C Specification + + + void glMatrixMode + GLenum mode + + + + Parameters + + + mode + + + Specifies which matrix stack is the target + for subsequent matrix operations. + Three values are accepted: + GL_MODELVIEW, + GL_PROJECTION, and + GL_TEXTURE. + The initial value is GL_MODELVIEW. + Additionally, if the ARB_imaging extension is supported, + GL_COLOR is also accepted. + + + + + + Description + + glMatrixMode sets the current matrix mode. + mode can assume one of four values: + + + + GL_MODELVIEW + + + Applies subsequent matrix operations to the modelview matrix stack. + + + + + GL_PROJECTION + + + Applies subsequent matrix operations to the projection matrix stack. + + + + + GL_TEXTURE + + + Applies subsequent matrix operations to the texture matrix stack. + + + + + GL_COLOR + + + Applies subsequent matrix operations to the color matrix stack. + + + + + + To find out which matrix stack is currently the target of all matrix + operations, call glGet with argument GL_MATRIX_MODE. The initial + value is GL_MODELVIEW. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if glMatrixMode + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + See Also + + glLoadMatrix, + glLoadTransposeMatrix, + glMultMatrix, + glMultTransposeMatrix, + glPopMatrix, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMinmax.xml b/upstream-man-pages/man2/glMinmax.xml new file mode 100644 index 0000000..4d5f5b7 --- /dev/null +++ b/upstream-man-pages/man2/glMinmax.xml @@ -0,0 +1,171 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMinmax + 3G + + + glMinmax + define minmax table + + C Specification + + + void glMinmax + GLenum target + GLenum internalformat + GLboolean sink + + + + Parameters + + + target + + + The minmax table whose parameters are to be set. + Must be + GL_MINMAX. + + + + + internalformat + + + The format of entries in the minmax table. + Must be one of + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + sink + + + If GL_TRUE, pixels will be consumed by the minmax + process and no drawing or texture loading will take place. + If GL_FALSE, pixels will proceed to the final conversion process after + minmax. + + + + + + Description + + When GL_MINMAX is enabled, the RGBA components of incoming pixels are + compared to the minimum and maximum values for each component, which are + stored in the two-element minmax table. + (The first element stores the minima, and the second element stores + the maxima.) + If a pixel component is greater than the corresponding component + in the maximum element, then the maximum element is updated with the + pixel component value. + If a pixel component is less than the corresponding component in + the minimum element, then the minimum element is updated with the + pixel component value. + (In both cases, if the internal format of the minmax table includes + luminance, then the R color component of incoming pixels is used + for comparison.) + The contents of the minmax table may be retrieved at a later time + by calling glGetMinmax. + The minmax operation is enabled or disabled by calling glEnable or + glDisable, respectively, with an argument of GL_MINMAX. + + + glMinmax redefines the current minmax table to have entries of the format + specified by internalformat. + The maximum element is initialized with the smallest possible component + values, and the minimum element is initialized with the largest possible + component values. + The values in the previous minmax table, if any, are lost. + If sink is GL_TRUE, then pixels are discarded after minmax; + no further processing of the pixels takes place, and no drawing, + texture loading, or pixel readback will result. + + + + + Notes + + glMinmax is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_OPERATION is generated if glMinmax is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetMinmaxParameter + + + See Also + + glGetMinmax, + glResetMinmax + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMultMatrix.xml b/upstream-man-pages/man2/glMultMatrix.xml new file mode 100644 index 0000000..653921b --- /dev/null +++ b/upstream-man-pages/man2/glMultMatrix.xml @@ -0,0 +1,838 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultMatrix + 3G + + + glMultMatrix + multiply the current matrix with the specified matrix + + C Specification + + + void glMultMatrixd + const GLdouble * m + + + + + void glMultMatrixf + const GLfloat * m + + + + + Parameters + + + m + + + Points to 16 consecutive values that are used as the elements of + a + + + + 4 + × + 4 + + + column-major matrix. + + + + + + Description + + glMultMatrix multiplies the current matrix with the one specified using m, and + replaces the current matrix with the product. + + + The current matrix is determined by the current matrix mode (see glMatrixMode). It is either the projection matrix, + modelview matrix, + or the texture matrix. + + + Examples + + If the current matrix is + C + and the coordinates + to be transformed are + + + + v + = + + + v + + + 0 + + + + v + + + 1 + + + + v + + + 2 + + + + v + + + 3 + + + + + , + then the current transformation is + + + + C + × + v + + , + or + + + + + + + + + + + c + + + 0 + + + + + + c + + + 4 + + + + + + c + + + 8 + + + + + + c + + + 12 + + + + + + + + c + + + 1 + + + + + + c + + + 5 + + + + + + c + + + 9 + + + + + + c + + + 13 + + + + + + + + c + + + 2 + + + + + + c + + + 6 + + + + + + c + + + 10 + + + + + + c + + + 14 + + + + + + + + c + + + 3 + + + + + + c + + + 7 + + + + + + c + + + 11 + + + + + + c + + + 15 + + + + + + + × + + + + + + v + + + 0 + + + + + + + + v + + + 1 + + + + + + + + v + + + 2 + + + + + + + + v + + + 3 + + + + + + + + + + + + + Calling glMultMatrix with an argument of + + + + m + = + + + m + + + 0 + + + + m + + + 1 + + + ... + + m + + + 15 + + + + + + replaces the current transformation with + + + + + + C + × + M + + + × + v + + , + or + + + + + + + + + + + c + + + 0 + + + + + + c + + + 4 + + + + + + c + + + 8 + + + + + + c + + + 12 + + + + + + + + c + + + 1 + + + + + + c + + + 5 + + + + + + c + + + 9 + + + + + + c + + + 13 + + + + + + + + c + + + 2 + + + + + + c + + + 6 + + + + + + c + + + 10 + + + + + + c + + + 14 + + + + + + + + c + + + 3 + + + + + + c + + + 7 + + + + + + c + + + 11 + + + + + + c + + + 15 + + + + + + + × + + + + + + m + + + 0 + + + + + + m + + + 4 + + + + + + m + + + 8 + + + + + + m + + + 12 + + + + + + + + m + + + 1 + + + + + + m + + + 5 + + + + + + m + + + 9 + + + + + + m + + + 13 + + + + + + + + m + + + 2 + + + + + + m + + + 6 + + + + + + m + + + 10 + + + + + + m + + + 14 + + + + + + + + m + + + 3 + + + + + + m + + + 7 + + + + + + m + + + 11 + + + + + + m + + + 15 + + + + + + + × + + + + + + v + + + 0 + + + + + + + + v + + + 1 + + + + + + + + v + + + 2 + + + + + + + + v + + + 3 + + + + + + + + + + + + + Where + v + is represented as a + + + + 4 + × + 1 + + + matrix. + + + Notes + + While the elements of the matrix may be specified with + single or double precision, the GL may store or operate on these + values in less-than-single precision. + + + In many computer languages, + + + + 4 + × + 4 + + + arrays are represented + in row-major order. The transformations just described + represent these matrices in column-major order. + The order of the multiplication is important. For example, if the current + transformation is a rotation, and glMultMatrix is called with a translation matrix, + the translation is done directly on the coordinates to be transformed, + while the rotation is done on the results of that translation. + + + Errors + + GL_INVALID_OPERATION is generated if glMultMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glLoadIdentity, + glLoadMatrix, + glLoadTransposeMatrix, + glMatrixMode, + glMultTransposeMatrix, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMultTransposeMatrix.xml b/upstream-man-pages/man2/glMultTransposeMatrix.xml new file mode 100644 index 0000000..0610b73 --- /dev/null +++ b/upstream-man-pages/man2/glMultTransposeMatrix.xml @@ -0,0 +1,849 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultTransposeMatrix + 3G + + + glMultTransposeMatrix + multiply the current matrix with the specified row-major ordered matrix + + C Specification + + + void glMultTransposeMatrixd + const GLdouble * m + + + + + void glMultTransposeMatrixf + const GLfloat * m + + + + + Parameters + + + m + + + Points to 16 consecutive values that are used as the elements of + a + + + + 4 + × + 4 + + + row-major matrix. + + + + + + Description + + glMultTransposeMatrix multiplies the current matrix with the one specified using m, and + replaces the current matrix with the product. + + + The current matrix is determined by the current matrix mode (see + glMatrixMode). It is either the projection matrix, modelview matrix, + or the texture matrix. + + + Examples + + If the current matrix is + C + and the coordinates + to be transformed are + + + + v + = + + + v + + + 0 + + + + v + + + 1 + + + + v + + + 2 + + + + v + + + 3 + + + + + , + then the current transformation is + + + + C + × + v + + , + or + + + + + + + + + + + c + + + 0 + + + + + + c + + + 4 + + + + + + c + + + 8 + + + + + + c + + + 12 + + + + + + + + c + + + 1 + + + + + + c + + + 5 + + + + + + c + + + 9 + + + + + + c + + + 13 + + + + + + + + c + + + 2 + + + + + + c + + + 6 + + + + + + c + + + 10 + + + + + + c + + + 14 + + + + + + + + c + + + 3 + + + + + + c + + + 7 + + + + + + c + + + 11 + + + + + + c + + + 15 + + + + + + + × + + + + + + v + + + 0 + + + + + + + + v + + + 1 + + + + + + + + v + + + 2 + + + + + + + + v + + + 3 + + + + + + + + + + + + + Calling glMultTransposeMatrix with an argument of + + + + + m + + + 16 + + + = + + + m + + + 0 + + + + m + + + 1 + + + ... + + m + + + 15 + + + + + + replaces the current transformation with + + + + + + C + × + M + + + × + v + + , + or + + + + + + + + + + + c + + + 0 + + + + + + c + + + 4 + + + + + + c + + + 8 + + + + + + c + + + 12 + + + + + + + + c + + + 1 + + + + + + c + + + 5 + + + + + + c + + + 9 + + + + + + c + + + 13 + + + + + + + + c + + + 2 + + + + + + c + + + 6 + + + + + + c + + + 10 + + + + + + c + + + 14 + + + + + + + + c + + + 3 + + + + + + c + + + 7 + + + + + + c + + + 11 + + + + + + c + + + 15 + + + + + + + × + + + + + + m + + + 0 + + + + + + m + + + 1 + + + + + + m + + + 2 + + + + + + m + + + 3 + + + + + + + + m + + + 4 + + + + + + m + + + 5 + + + + + + m + + + 6 + + + + + + m + + + 7 + + + + + + + + m + + + 8 + + + + + + m + + + 9 + + + + + + m + + + 10 + + + + + + m + + + 11 + + + + + + + + m + + + 12 + + + + + + m + + + 13 + + + + + + m + + + 14 + + + + + + m + + + 15 + + + + + + + × + + + + + + v + + + 0 + + + + + + + + v + + + 1 + + + + + + + + v + + + 2 + + + + + + + + v + + + 3 + + + + + + + + + + + + + Where + v + is represented as a + + + + 4 + × + 1 + + + matrix. + + + Calling glMultTransposeMatrix with matrix + M + is identical in operation to + glMultMatrix with + + + M + T + + , + where + T + represents the transpose. + + + Notes + + glMultTransposeMatrix is available only if the GL version is 1.3 or greater. + + + While the elements of the matrix may be specified with + single or double precision, the GL may store or operate on these + values in less-than-single precision. + + + The order of the multiplication is important. For example, if the current + transformation is a rotation, and glMultTransposeMatrix is called with a translation matrix, + the translation is done directly on the coordinates to be transformed, + while the rotation is done on the results of that translation. + + + Errors + + GL_INVALID_OPERATION is generated if glMultTransposeMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glLoadIdentity, + glLoadMatrix, + glLoadTransposeMatrix, + glMatrixMode, + glPushMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMultiDrawArrays.xml b/upstream-man-pages/man2/glMultiDrawArrays.xml new file mode 100644 index 0000000..2077ece --- /dev/null +++ b/upstream-man-pages/man2/glMultiDrawArrays.xml @@ -0,0 +1,163 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiDrawArrays + 3G + + + glMultiDrawArrays + render multiple sets of primitives from array data + + C Specification + + + void glMultiDrawArrays + GLenum mode + GLint * first + GLsizei * count + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. + + + + + first + + + Points to an array of starting indices in the enabled arrays. + + + + + count + + + Points to an array of the number of indices to be rendered. + + + + + primcount + + + Specifies the size of the first and count + + + + + + Description + + glMultiDrawArrays specifies multiple sets of geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glMultiDrawArrays. + + + glMultiDrawArrays behaves identically to glDrawArrays except that primcount + separate ranges of elements are specified instead. + + + When glMultiDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed, and how the array elements + construct those primitives. If GL_VERTEX_ARRAY is not enabled, no + geometric primitives are generated. + + + Vertex attributes that are modified by glMultiDrawArrays have an + unspecified value after glMultiDrawArrays returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glMultiDrawArrays executes. Attributes that aren't + modified remain well defined. + + + Notes + + glMultiDrawArrays is available only if the GL version is 1.4 or greater. + + + glMultiDrawArrays is included in display lists. If glMultiDrawArrays is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if glMultiDrawArrays is executed between + the execution of glBegin and the corresponding glEnd. + + + See Also + + glArrayElement, + glColorPointer, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glFogCoordPointer, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMultiDrawElements.xml b/upstream-man-pages/man2/glMultiDrawElements.xml new file mode 100644 index 0000000..ca4ba67 --- /dev/null +++ b/upstream-man-pages/man2/glMultiDrawElements.xml @@ -0,0 +1,164 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiDrawElements + 3G + + + glMultiDrawElements + render multiple sets of primitives by specifying indices of array data elements + + C Specification + + + void glMultiDrawElements + GLenum mode + const GLsizei * count + GLenum type + const GLvoid ** indices + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. + + + + + count + + + Points to an array of the elements counts. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the size of the count array. + + + + + + Description + + glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine + calls. Instead of calling a GL function to pass each individual vertex, + normal, texture coordinate, edge flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to construct a + sequence of primitives with a single call to glMultiDrawElements. + + + glMultiDrawElements is identical in operation to glDrawElements except that + primcount separate lists of elements are specified. + + + Vertex attributes that are modified by glMultiDrawElements have an + unspecified value after glMultiDrawElements returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glMultiDrawElements executes. Attributes that aren't + modified maintain their previous values. + + + Notes + + glMultiDrawElements is available only if the GL version is 1.4 or greater. + + + glMultiDrawElements is included in display lists. If glMultiDrawElements is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if glMultiDrawElements is executed between + the execution of glBegin and the corresponding glEnd. + + + See Also + + glArrayElement, + glColorPointer, + glDrawArrays, + glDrawRangeElements, + glEdgeFlagPointer, + glFogCoordPointer, + glGetPointerv, + glIndexPointer, + glInterleavedArrays, + glNormalPointer, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glMultiTexCoord.xml b/upstream-man-pages/man2/glMultiTexCoord.xml new file mode 100644 index 0000000..2a5cd81 --- /dev/null +++ b/upstream-man-pages/man2/glMultiTexCoord.xml @@ -0,0 +1,456 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiTexCoord + 3G + + + glMultiTexCoord + set the current texture coordinates + + C Specification + + + void glMultiTexCoord1s + GLenum target + GLshort s + + + + + void glMultiTexCoord1i + GLenum target + GLint s + + + + + void glMultiTexCoord1f + GLenum target + GLfloat s + + + + + void glMultiTexCoord1d + GLenum target + GLdouble s + + + + + void glMultiTexCoord2s + GLenum target + GLshort s + GLshort t + + + + + void glMultiTexCoord2i + GLenum target + GLint s + GLint t + + + + + void glMultiTexCoord2f + GLenum target + GLfloat s + GLfloat t + + + + + void glMultiTexCoord2d + GLenum target + GLdouble s + GLdouble t + + + + + void glMultiTexCoord3s + GLenum target + GLshort s + GLshort t + GLshort r + + + + + void glMultiTexCoord3i + GLenum target + GLint s + GLint t + GLint r + + + + + void glMultiTexCoord3f + GLenum target + GLfloat s + GLfloat t + GLfloat r + + + + + void glMultiTexCoord3d + GLenum target + GLdouble s + GLdouble t + GLdouble r + + + + + void glMultiTexCoord4s + GLenum target + GLshort s + GLshort t + GLshort r + GLshort q + + + + + void glMultiTexCoord4i + GLenum target + GLint s + GLint t + GLint r + GLint q + + + + + void glMultiTexCoord4f + GLenum target + GLfloat s + GLfloat t + GLfloat r + GLfloat q + + + + + void glMultiTexCoord4d + GLenum target + GLdouble s + GLdouble t + GLdouble r + GLdouble q + + + + + Parameters + + + target + + + Specifies the texture unit whose coordinates should be modified. The number + of texture units is implementation dependent, but must be at least + two. Symbolic constant must be one of + GL_TEXTUREi, + where i ranges from 0 to GL_MAX_TEXTURE_COORDS - 1, + which is an implementation-dependent value. + + + + + s + t + r + q + + + Specify s, t, r, and q texture coordinates for + target texture unit. Not all parameters are present in all forms + of the command. + + + + + + C Specification + + + void glMultiTexCoord1sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord1iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord1fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord1dv + GLenum target + const GLdouble * v + + + + + void glMultiTexCoord2sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord2iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord2fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord2dv + GLenum target + const GLdouble * v + + + + + void glMultiTexCoord3sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord3iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord3fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord3dv + GLenum target + const GLdouble * v + + + + + void glMultiTexCoord4sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord4iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord4fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord4dv + GLenum target + const GLdouble * v + + + + Parameters + + + target + + + Specifies the texture unit whose coordinates should be modified. The number + of texture units is implementation dependent, but must be at least + two. Symbolic constant must be one of + GL_TEXTUREi, + where i ranges from 0 to GL_MAX_TEXTURE_COORDS - 1, + which is an implementation-dependent value. + + + + + v + + + Specifies a pointer to an array of one, two, three, or four elements, + which in turn specify the + s, + t, + r, + and + q + texture coordinates. + + + + + + Description + + glMultiTexCoord specifies texture coordinates in one, two, three, or four + dimensions. + glMultiTexCoord1 sets the current texture + coordinates to + + + + s + 0 + 0 + 1 + + ; + a call to glMultiTexCoord2 + sets them to + + + + s + t + 0 + 1 + + . + Similarly, glMultiTexCoord3 specifies the texture coordinates as + + + + s + t + r + 1 + + , + and + glMultiTexCoord4 + defines all four components explicitly as + + + + s + t + r + q + + . + + + The current texture coordinates are part of the data + that is associated with each vertex and with the current + raster position. + Initially, the values for + + + + s + t + r + q + + + are + + + + 0 + 0 + 0 + 1 + + . + + + + + Notes + + glMultiTexCoord is only supported if the GL version is 1.3 or greater, or if + ARB_multitexture is included in the string returned by + glGetString when called with the argument GL_EXTENSIONS. + + + The current texture coordinates can be updated at any time. + In particular, + glMultiTexCoord can be called between a call to glBegin and the corresponding + call to glEnd. + + + It is always the case that GL_TEXTURE + i + = GL_TEXTURE0 + + i. + + + Associated Gets + + glGet with argument GL_CURRENT_TEXTURE_COORDS with appropriate + texture unit selected. + + + glGet with argument GL_MAX_TEXTURE_COORDS + + + See Also + + glActiveTexture, + glClientActiveTexture, + glTexCoord, + glTexCoordPointer, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glNewList.xml b/upstream-man-pages/man2/glNewList.xml new file mode 100644 index 0000000..4be7430 --- /dev/null +++ b/upstream-man-pages/man2/glNewList.xml @@ -0,0 +1,225 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glNewList + 3G + + + glNewList + create or replace a display list + + C Specification + + + void glNewList + GLuint list + GLenum mode + + + + Parameters + + + list + + + Specifies the display-list name. + + + + + mode + + + Specifies the compilation mode, + which can be + GL_COMPILE or + GL_COMPILE_AND_EXECUTE. + + + + + + C Specification + + + void glEndList + void + + + + Description + + Display lists are groups of GL commands that have been stored + for subsequent execution. + Display lists are created with glNewList. + All subsequent commands are placed in the display list, + in the order issued, + until glEndList is called. + + + glNewList has two arguments. + The first argument, + list, + is a positive integer that becomes the unique name for the display list. + Names can be created and reserved with glGenLists + and tested for uniqueness with glIsList. + The second argument, + mode, + is a symbolic constant that can assume one of two values: + + + + GL_COMPILE + + + Commands are merely compiled. + + + + + GL_COMPILE_AND_EXECUTE + + + Commands are executed as they are compiled into the display list. + + + + + + Certain commands are not compiled into the display list + but are executed immediately, + regardless of the display-list mode. + These commands are + glAreTexturesResident, + glColorPointer, + glDeleteLists, + glDeleteTextures, + glDisableClientState, + glEdgeFlagPointer, + glEnableClientState, + glFeedbackBuffer, + glFinish, + glFlush, + glGenLists, + glGenTextures, + glIndexPointer, + glInterleavedArrays, + glIsEnabled, + glIsList, + glIsTexture, + glNormalPointer, + glPopClientAttrib, + glPixelStore, + glPushClientAttrib, + glReadPixels, + glRenderMode, + glSelectBuffer, + glTexCoordPointer, + glVertexPointer, + and all of the glGet commands. + + + Similarly, + glTexImage1D, glTexImage2D, and glTexImage3D + are executed immediately and not compiled into the display list when their + first argument is GL_PROXY_TEXTURE_1D, GL_PROXY_TEXTURE_1D, or + GL_PROXY_TEXTURE_3D, respectively. + + + When the ARB_imaging extension is supported, + glHistogram executes immediately when its argument is + GL_PROXY_HISTOGRAM. Similarly, glColorTable executes + immediately when its first argument is GL_PROXY_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, or + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, + glClientActiveTexture is not compiled into display lists, but + executed immediately. + + + When glEndList is encountered, + the display-list definition is completed by associating the list + with the unique name list + (specified in the glNewList command). + If a display list with name list already exists, + it is replaced only when glEndList is called. + + + Notes + + glCallList and glCallLists can be entered into display lists. + Commands in the display list or lists executed by glCallList + or glCallLists are not included in the display list being created, + even if the list creation mode is GL_COMPILE_AND_EXECUTE. + + + A display list is just a group of commands and arguments, so errors + generated by commands in a display list must be generated when the list is + executed. If the list is created in GL_COMPILE mode, errors are + not generated until the list is executed. + + + Errors + + GL_INVALID_VALUE is generated if list is 0. + + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if glEndList is called + without a preceding glNewList, + or if glNewList is called while a display list is being defined. + + + GL_INVALID_OPERATION is generated if glNewList or glEndList + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + GL_OUT_OF_MEMORY is generated if there is insufficient memory to + compile the display list. If the GL version is 1.1 or greater, no + change is made to the previous contents of the display list, if any, + and no other change is made to the GL state. (It is as if no attempt + had been made to create the new display list.) + + + Associated Gets + + glIsList + + + glGet with argument GL_LIST_INDEX + + + glGet with argument GL_LIST_MODE + + + See Also + + glCallList, + glCallLists, + glDeleteLists, + glGenLists + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glNormal.xml b/upstream-man-pages/man2/glNormal.xml new file mode 100644 index 0000000..bd594bd --- /dev/null +++ b/upstream-man-pages/man2/glNormal.xml @@ -0,0 +1,199 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glNormal + 3G + + + glNormal + set the current normal vector + + + C Specification + + + void glNormal3b + GLbyte nx + GLbyte ny + GLbyte nz + + + + + void glNormal3d + GLdouble nx + GLdouble ny + GLdouble nz + + + + + void glNormal3f + GLfloat nx + GLfloat ny + GLfloat nz + + + + + void glNormal3i + GLint nx + GLint ny + GLint nz + + + + + void glNormal3s + GLshort nx + GLshort ny + GLshort nz + + + + Parameters + + + nx + ny + nz + + + Specify the + x, + y, + and + z + coordinates of the new current normal. + The initial value of the current normal is the unit vector, (0, 0, 1). + + + + + + + + C Specification + + + void glNormal3bv + const GLbyte * v + + + + + void glNormal3dv + const GLdouble * v + + + + + void glNormal3fv + const GLfloat * v + + + + + void glNormal3iv + const GLint * v + + + + + void glNormal3sv + const GLshort * v + + + + Parameters + + + v + + + Specifies a pointer to an array of three elements: + the + x, + y, + and + z + coordinates of the new current normal. + + + + + + + + Description + + The current normal is set to the given coordinates + whenever glNormal is issued. + Byte, short, or integer arguments are converted to floating-point + format with a linear mapping that maps the most positive representable integer + value to 1.0 + and the most negative representable integer value to + + + -1.0 + . + + + Normals specified with glNormal need not have unit length. + If GL_NORMALIZE is enabled, + then normals of any length specified with glNormal are normalized after transformation. + If GL_RESCALE_NORMAL is enabled, normals are scaled by a scaling factor + derived from the modelview matrix. GL_RESCALE_NORMAL requires that the + originally specified normals were of unit length, and that the modelview + matrix contain only uniform scales for proper results. + To enable and disable normalization, call glEnable and glDisable + with either GL_NORMALIZE or GL_RESCALE_NORMAL. + Normalization is initially disabled. + + + Notes + + The current normal can be updated at any time. + In particular, glNormal can be called between a call to glBegin and + the corresponding call to glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_NORMAL + + + glIsEnabled with argument GL_NORMALIZE + + + glIsEnabled with argument GL_RESCALE_NORMAL + + + See Also + + glBegin, + glColor, + glIndex, + glMultiTexCoord, + glNormalPointer, + glTexCoord, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glNormalPointer.xml b/upstream-man-pages/man2/glNormalPointer.xml new file mode 100644 index 0000000..79409fc --- /dev/null +++ b/upstream-man-pages/man2/glNormalPointer.xml @@ -0,0 +1,188 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glNormalPointer + 3G + + + glNormalPointer + define an array of normals + + C Specification + + + void glNormalPointer + GLenum type + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + type + + + Specifies the data type of each coordinate in the array. + Symbolic constants + GL_BYTE, + GL_SHORT, + GL_INT, + GL_FLOAT, and + GL_DOUBLE + are accepted. The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive normals. If stride is + 0, the normals are understood to be tightly packed in + the array. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first coordinate of the first normal in the + array. The initial value is 0. + + + + + + Description + + glNormalPointer specifies the location and data format of an array of normals + to use when rendering. + type specifies the data type of each normal coordinate, + and stride specifies the byte stride from one + normal to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see glInterleavedArrays.) + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a normal array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as normal vertex array + client-side state (GL_NORMAL_ARRAY_BUFFER_BINDING). + + + When a normal array is specified, + type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the normal array, call + glEnableClientState and glDisableClientState with the argument + GL_NORMAL_ARRAY. If + enabled, the normal array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. + + + Notes + + glNormalPointer is available only if the GL version is 1.1 or greater. + + + The normal array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glNormalPointer is not allowed between + glBegin and the corresponding glEnd, + but an error may or may not be generated. If an error is not generated, + the operation is undefined. + + + glNormalPointer is typically implemented on the client side. + + + Normal array parameters are client-side state and are therefore not + saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. + + + Errors + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_NORMAL_ARRAY + + + glGet with argument GL_NORMAL_ARRAY_TYPE + + + glGet with argument GL_NORMAL_ARRAY_STRIDE + + + glGet with argument GL_NORMAL_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_NORMAL_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormal, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glOrtho.xml b/upstream-man-pages/man2/glOrtho.xml new file mode 100644 index 0000000..c888d97 --- /dev/null +++ b/upstream-man-pages/man2/glOrtho.xml @@ -0,0 +1,367 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glOrtho + 3G + + + glOrtho + multiply the current matrix with an orthographic matrix + + C Specification + + + void glOrtho + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + GLdouble nearVal + GLdouble farVal + + + + Parameters + + + left + right + + + Specify the coordinates for the left and right vertical clipping planes. + + + + + bottom + top + + + Specify the coordinates for the bottom and top horizontal clipping planes. + + + + + nearVal + farVal + + + Specify the distances to the nearer and farther depth clipping planes. + These values are negative if the plane is to be behind the viewer. + + + + + + Description + + glOrtho describes a transformation that produces a parallel projection. + The current matrix (see glMatrixMode) is multiplied by this matrix + and the result replaces the current matrix, as if + glMultMatrix were called with the following matrix + as its argument: + + + + + + + + + + + 2 + + + right + - + left + + + + + + + 0 + + + 0 + + + + t + x + + + + + + + 0 + + + + + 2 + + + top + - + bottom + + + + + + + 0 + + + + t + y + + + + + + + 0 + + + 0 + + + + + -2 + + + farVal + - + nearVal + + + + + + + + t + z + + + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + + + + where + + + + t + x + + = + + - + + + + + right + + + left + + + + + right + - + left + + + + + + + + + + + t + y + + = + + - + + + + + top + + + bottom + + + + + top + - + bottom + + + + + + + + + + + t + z + + = + + - + + + + + farVal + + + nearVal + + + + + farVal + - + nearVal + + + + + + + + + + Typically, the matrix mode is GL_PROJECTION, and + + + + left + bottom + + - + nearVal + + + + and + + + + right + top + + - + nearVal + + + + specify the points on the near clipping plane that are mapped + to the lower left and upper right corners of the window, + respectively, + assuming that the eye is located at (0, 0, 0). + + + + - + farVal + + + specifies the location of the far clipping plane. + Both nearVal and farVal can be either positive or negative. + + + Use glPushMatrix and glPopMatrix to save and restore + the current matrix stack. + + + Errors + + GL_INVALID_VALUE is generated if + left = right, or + bottom = top, or + near = far. + + + GL_INVALID_OPERATION is generated if glOrtho + is executed between the execution of + glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glFrustum, + glMatrixMode, + glMultMatrix, + glPushMatrix, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPassThrough.xml b/upstream-man-pages/man2/glPassThrough.xml new file mode 100644 index 0000000..a88b984 --- /dev/null +++ b/upstream-man-pages/man2/glPassThrough.xml @@ -0,0 +1,95 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPassThrough + 3G + + + glPassThrough + place a marker in the feedback buffer + + C Specification + + + void glPassThrough + GLfloat token + + + + Parameters + + + token + + + Specifies a marker value to be placed in the feedback buffer + following a GL_PASS_THROUGH_TOKEN. + + + + + + Description + + + + Feedback is a GL render mode. + The mode is selected by calling + glRenderMode with GL_FEEDBACK. + When the GL is in feedback mode, + no pixels are produced by rasterization. + Instead, + information about primitives that would have been rasterized + is fed back to the application using the GL. + See the glFeedbackBuffer reference page for a description of the + feedback buffer and the values in it. + + + glPassThrough inserts a user-defined marker in the feedback buffer + when it is executed in feedback mode. + token is returned as if it were a primitive; + it is indicated with its own unique identifying value: + GL_PASS_THROUGH_TOKEN. + The order of glPassThrough commands with respect to the specification + of graphics primitives is maintained. + + + Notes + + glPassThrough is ignored if the GL is not in feedback mode. + + + Errors + + GL_INVALID_OPERATION is generated if glPassThrough is executed between + the execution of glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_RENDER_MODE + + + See Also + + glFeedbackBuffer, + glRenderMode + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPixelMap.xml b/upstream-man-pages/man2/glPixelMap.xml new file mode 100644 index 0000000..c4f8336 --- /dev/null +++ b/upstream-man-pages/man2/glPixelMap.xml @@ -0,0 +1,585 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPixelMap + 3G + + + glPixelMap + set up pixel transfer maps + + C Specification + + + void glPixelMapfv + GLenum map + GLsizei mapsize + const GLfloat * values + + + + + void glPixelMapuiv + GLenum map + GLsizei mapsize + const GLuint * values + + + + + void glPixelMapusv + GLenum map + GLsizei mapsize + const GLushort * values + + + + + Parameters + + + map + + + Specifies a symbolic map name. + Must be one of the following: + GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, + GL_PIXEL_MAP_I_TO_A, + GL_PIXEL_MAP_R_TO_R, + GL_PIXEL_MAP_G_TO_G, + GL_PIXEL_MAP_B_TO_B, or + GL_PIXEL_MAP_A_TO_A. + + + + + mapsize + + + Specifies the size of the map being defined. + + + + + values + + + Specifies an array of mapsize values. + + + + + + Description + + glPixelMap sets up translation tables, + or maps, + used by + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. + Additionally, if the ARB_imaging subset is supported, the + routines + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glHistogram, + glMinmax, and + glSeparableFilter2D. + Use of these maps is described completely in the + glPixelTransfer reference page, + and partly in the reference pages for the pixel and texture image commands. + Only the specification of the maps is described in this reference page. + + + map is a symbolic map name, + indicating one of ten maps to set. + mapsize specifies the number of entries in the map, + and values is a pointer to an array of mapsize map values. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a pixel transfer map is + specified, values is treated as a byte offset into the buffer object's data store. + + + The ten maps are as follows: + + + + GL_PIXEL_MAP_I_TO_I + + + Maps color indices to color indices. + + + + + GL_PIXEL_MAP_S_TO_S + + + Maps stencil indices to stencil indices. + + + + + GL_PIXEL_MAP_I_TO_R + + + Maps color indices to red components. + + + + + GL_PIXEL_MAP_I_TO_G + + + Maps color indices to green components. + + + + + GL_PIXEL_MAP_I_TO_B + + + Maps color indices to blue components. + + + + + GL_PIXEL_MAP_I_TO_A + + + Maps color indices to alpha components. + + + + + GL_PIXEL_MAP_R_TO_R + + + Maps red components to red components. + + + + + GL_PIXEL_MAP_G_TO_G + + + Maps green components to green components. + + + + + GL_PIXEL_MAP_B_TO_B + + + Maps blue components to blue components. + + + + + GL_PIXEL_MAP_A_TO_A + + + Maps alpha components to alpha components. + + + + + + The entries in a map can be specified as single-precision + floating-point numbers, + unsigned short integers, + or unsigned int integers. + Maps that store color component values + (all but GL_PIXEL_MAP_I_TO_I and GL_PIXEL_MAP_S_TO_S) + retain their values in floating-point format, + with unspecified mantissa and exponent sizes. + Floating-point values specified by glPixelMapfv are converted directly + to the internal floating-point format of these maps, + then clamped to the range [0,1]. + Unsigned integer values specified by glPixelMapusv and + glPixelMapuiv are converted linearly such that + the largest representable integer maps to 1.0, + and 0 maps to 0.0. + + + Maps that store indices, + GL_PIXEL_MAP_I_TO_I and GL_PIXEL_MAP_S_TO_S, + retain their values in fixed-point format, + with an unspecified number of bits to the right of the binary point. + Floating-point values specified by glPixelMapfv are converted directly + to the internal fixed-point format of these maps. + Unsigned integer values specified by glPixelMapusv and + glPixelMapuiv specify integer values, + with all 0's to the right of the binary point. + + + The following table shows the initial sizes and values for each of the maps. + Maps that are indexed by either color or stencil indices must have + mapsize = + + + 2 + n + + + for some + n + or the results are undefined. + The maximum allowable size for each map depends on the implementation + and can be determined by calling glGet with argument + GL_MAX_PIXEL_MAP_TABLE. + The single maximum applies to all maps; it is at + least 32. + + + + + + + + + + + + map + + + Lookup Index + + + Lookup Value + + + Initial Size + + + Initial Value + + + + + + + GL_PIXEL_MAP_I_TO_I + + + color index + + + color index + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_S_TO_S + + + stencil index + + + stencil index + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_I_TO_R + + + color index + + + R + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_I_TO_G + + + color index + + + G + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_I_TO_B + + + color index + + + B + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_I_TO_A + + + color index + + + A + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_R_TO_R + + + R + + + R + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_G_TO_G + + + G + + + G + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_B_TO_B + + + B + + + B + + + 1 + + + 0 + + + + + GL_PIXEL_MAP_A_TO_A + + + A + + + A + + + 1 + + + 0 + + + + + + + Errors + + GL_INVALID_ENUM is generated if map is not an accepted value. + + + GL_INVALID_VALUE is generated if mapsize is less than one + or larger than GL_MAX_PIXEL_MAP_TABLE. + + + GL_INVALID_VALUE is generated if map is + GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, or + GL_PIXEL_MAP_I_TO_A, + and mapsize is not a power of two. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated by glPixelMapfv if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a GLfloat datum. + + + GL_INVALID_OPERATION is generated by glPixelMapuiv if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a GLuint datum. + + + GL_INVALID_OPERATION is generated by glPixelMapusv if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a GLushort datum. + + + GL_INVALID_OPERATION is generated if glPixelMap + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetPixelMap + + + glGet with argument GL_PIXEL_MAP_I_TO_I_SIZE + + + glGet with argument GL_PIXEL_MAP_S_TO_S_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_R_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_G_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_B_SIZE + + + glGet with argument GL_PIXEL_MAP_I_TO_A_SIZE + + + glGet with argument GL_PIXEL_MAP_R_TO_R_SIZE + + + glGet with argument GL_PIXEL_MAP_G_TO_G_SIZE + + + glGet with argument GL_PIXEL_MAP_B_TO_B_SIZE + + + glGet with argument GL_PIXEL_MAP_A_TO_A_SIZE + + + glGet with argument GL_MAX_PIXEL_MAP_TABLE + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glDrawPixels, + glHistogram, + glMinmax, + glPixelStore, + glPixelTransfer, + glReadPixels, + glSeparableFilter2D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPixelStore.xml b/upstream-man-pages/man2/glPixelStore.xml new file mode 100644 index 0000000..3acce3b --- /dev/null +++ b/upstream-man-pages/man2/glPixelStore.xml @@ -0,0 +1,1490 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPixelStore + 3G + + + glPixelStore + set pixel storage modes + + C Specification + + + void glPixelStoref + GLenum pname + GLfloat param + + + + + void glPixelStorei + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies the symbolic name of the parameter to be set. + Six values affect the packing of pixel data into memory: + GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_PIXELS, + GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_IMAGES, and + GL_PACK_ALIGNMENT. + Six more affect the unpacking of pixel data from memory: + GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH, + GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_IMAGES, and + GL_UNPACK_ALIGNMENT. + + + + + param + + + Specifies the value that pname is set to. + + + + + + Description + + glPixelStore sets pixel storage modes that affect the operation of subsequent + glDrawPixels and glReadPixels as well as the unpacking of + polygon stipple patterns (see glPolygonStipple), bitmaps (see + glBitmap), texture patterns (see glTexImage1D, + glTexImage2D, glTexImage3D, glTexSubImage1D, + glTexSubImage2D, glTexSubImage3D). + Additionally, if the ARB_imaging extension is supported, pixel + storage modes affect convolution filters + (see glConvolutionFilter1D, glConvolutionFilter2D, and + glSeparableFilter2D, color table (see glColorTable, and + glColorSubTable, and unpacking histogram (See glHistogram), + and minmax (See glMinmax) data. + + + pname is a symbolic constant indicating the parameter to be set, and + param is the new value. Six of the twelve storage parameters affect + how pixel data is returned to client memory. + They are as follows: + + + + GL_PACK_SWAP_BYTES + + + If true, + byte ordering for multibyte color components, + depth components, + color indices, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is stored in memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_PACK_SWAP_BYTES is true. + GL_PACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_PACK_SWAP_BYTES. + + + + + GL_PACK_LSB_FIRST + + + If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + This parameter is significant for bitmap data only. + + + + + GL_PACK_ROW_LENGTH + + + If greater than 0, + GL_PACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + + + + + + a + s + + + + + + + + s + + n + + l + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping + + + + + + k + = + + 8 + + a + + + + + + n + + l + + + + + 8 + + a + + + + + + + + + + components or indices. + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_PACK_IMAGE_HEIGHT + + + If greater than 0, + GL_PACK_IMAGE_HEIGHT defines the number of pixels in an image + three-dimensional texture volume, where ``image'' is defined by all pixels + sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + h + + + + + + + a + s + + + + + + + + s + + n + + l + + h + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, where + n + is the number of components or indices + in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, the + width + argument to glTexImage3D otherwise), + h + is the number of + rows in a pixel image (GL_PACK_IMAGE_HEIGHT if it is greater than + 0, the + height + argument to the glTexImage3D routine otherwise), + a + is the value of + GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single + component (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, and GL_PACK_SKIP_IMAGES + + + These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated simply by + incrementing the pointer passed to glReadPixels. + Setting GL_PACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_PACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + + m + + + components or indices, + where + m + is the number of components or indices per row, + as just computed in the GL_PACK_ROW_LENGTH section. + Setting GL_PACK_SKIP_IMAGES to + k + is equivalent to incrementing + the pointer by + + + + k + + p + + , + where + p + is the number of components or indices + per image, as computed in the GL_PACK_IMAGE_HEIGHT section. + + + + + GL_PACK_ALIGNMENT + + + Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). + + + + + + The other six of the twelve storage parameters affect how pixel data is + read from client memory. + These values are significant for glDrawPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glBitmap, and + glPolygonStipple. + + + Additionally, if the ARB_imaging extension is supported, + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, and + glSeparableFilter2D. + They are as follows: + + + + GL_UNPACK_SWAP_BYTES + + + If true, + byte ordering for multibyte color components, + depth components, + color indices, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is taken from memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_UNPACK_SWAP_BYTES is true. + GL_UNPACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_UNPACK_SWAP_BYTES. + + + + + GL_UNPACK_LSB_FIRST + + + If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + This is relevant only for bitmap data. + + + + + GL_UNPACK_ROW_LENGTH + + + If greater than 0, + GL_UNPACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + + + + + + a + s + + + + + + + + s + + n + + l + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping + + + + + + k + = + + 8 + + a + + + + + + n + + l + + + + + 8 + + a + + + + + + + + + + components or indices. + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_UNPACK_IMAGE_HEIGHT + + + If greater than 0, + GL_UNPACK_IMAGE_HEIGHT defines the number of pixels in an image of + a three-dimensional texture volume. Where ``image'' is defined by all + pixel sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + h + + + + + + + a + s + + + + + + + + s + + n + + l + + h + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to glTexImage3D otherwise), + h + is the number of rows in an image (GL_UNPACK_IMAGE_HEIGHT if + it is greater than 0, the + height + argument to glTexImage3D otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_UNPACK_SKIP_PIXELS and GL_UNPACK_SKIP_ROWS + + + These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated by + incrementing the pointer passed to + glDrawPixels, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glBitmap, or + glPolygonStipple. + Setting GL_UNPACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_UNPACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + + k + + + components or indices, + where + k + is the number of components or indices per row, + as just computed in the GL_UNPACK_ROW_LENGTH section. + + + + + GL_UNPACK_ALIGNMENT + + + Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). + + + + + + The following table gives the type, + initial value, + and range of valid values for each storage parameter + that can be set with glPixelStore. + + + + + + + + + + + + + pname + + + Type + + + Initial Value + + + Valid Range + + + + + + + GL_PACK_SWAP_BYTES + + + boolean + + + false + + + true or false + + + + + GL_PACK_LSB_FIRST + + + boolean + + + false + + + true or false + + + + + GL_PACK_ROW_LENGTH + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_IMAGE_HEIGHT + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_ROWS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_PIXELS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_IMAGES + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_ALIGNMENT + + + integer + + + 4 + + + 1, 2, 4, or 8 + + + + + GL_UNPACK_SWAP_BYTES + + + boolean + + + false + + + true or false + + + + + GL_UNPACK_LSB_FIRST + + + boolean + + + false + + + true or false + + + + + GL_UNPACK_ROW_LENGTH + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_IMAGE_HEIGHT + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_ROWS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_PIXELS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_IMAGES + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_ALIGNMENT + + + integer + + + 4 + + + 1, 2, 4, or 8 + + + + + + + glPixelStoref can be used to set any pixel store parameter. + If the parameter type is boolean, + then if param is 0, + the parameter is false; + otherwise it is set to true. + If pname is a integer type parameter, + param is rounded to the nearest integer. + + + Likewise, glPixelStorei can also be used to set any of the + pixel store parameters. + Boolean parameters are set to false if param is 0 and true otherwise. + + + Notes + + The pixel storage modes in effect when + glDrawPixels, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glBitmap, + or glPolygonStipple is placed in a display list control the interpretation + of memory data. + Likewise, if the ARB_imaging extension is supported, the pixel + storage modes in effect when + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, of + glSeparableFilter2D is placed in a display list control the + interpretation of memory data. + The pixel storage modes in effect when a display list is executed are + not significant. + + + Pixel storage modes are client state and must be pushed and restored + using + glPushClientAttrib and glPopClientAttrib. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_VALUE is generated if a negative row length, + pixel skip, + or row skip value is specified, + or if alignment is specified as other than 1, 2, 4, or 8. + + + GL_INVALID_OPERATION is generated if glPixelStore + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_PACK_SWAP_BYTES + + + glGet with argument GL_PACK_LSB_FIRST + + + glGet with argument GL_PACK_ROW_LENGTH + + + glGet with argument GL_PACK_IMAGE_HEIGHT + + + glGet with argument GL_PACK_SKIP_ROWS + + + glGet with argument GL_PACK_SKIP_PIXELS + + + glGet with argument GL_PACK_SKIP_IMAGES + + + glGet with argument GL_PACK_ALIGNMENT + + + glGet with argument GL_UNPACK_SWAP_BYTES + + + glGet with argument GL_UNPACK_LSB_FIRST + + + glGet with argument GL_UNPACK_ROW_LENGTH + + + glGet with argument GL_UNPACK_IMAGE_HEIGHT + + + glGet with argument GL_UNPACK_SKIP_ROWS + + + glGet with argument GL_UNPACK_SKIP_PIXELS + + + glGet with argument GL_UNPACK_SKIP_IMAGES + + + glGet with argument GL_UNPACK_ALIGNMENT + + + See Also + + glBitmap, + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glSeparableFilter2D, + glDrawPixels, + glHistogram, + glMinmax, + glPixelMap, + glPixelTransfer, + glPixelZoom, + glPolygonStipple, + glPushClientAttrib, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPixelTransfer.xml b/upstream-man-pages/man2/glPixelTransfer.xml new file mode 100644 index 0000000..e1954e5 --- /dev/null +++ b/upstream-man-pages/man2/glPixelTransfer.xml @@ -0,0 +1,1276 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPixelTransfer + 3G + + + glPixelTransfer + set pixel transfer modes + + C Specification + + + void glPixelTransferf + GLenum pname + GLfloat param + + + + + void glPixelTransferi + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies the symbolic name of the pixel transfer parameter to be set. + Must be one of the following: + GL_MAP_COLOR, + GL_MAP_STENCIL, + GL_INDEX_SHIFT, + GL_INDEX_OFFSET, + GL_RED_SCALE, + GL_RED_BIAS, + GL_GREEN_SCALE, + GL_GREEN_BIAS, + GL_BLUE_SCALE, + GL_BLUE_BIAS, + GL_ALPHA_SCALE, + GL_ALPHA_BIAS, + GL_DEPTH_SCALE, or + GL_DEPTH_BIAS. + + + Additionally, if the ARB_imaging extension is supported, the + following symbolic names are accepted: + GL_POST_COLOR_MATRIX_RED_SCALE, + GL_POST_COLOR_MATRIX_GREEN_SCALE, + GL_POST_COLOR_MATRIX_BLUE_SCALE, + GL_POST_COLOR_MATRIX_ALPHA_SCALE, + GL_POST_COLOR_MATRIX_RED_BIAS, + GL_POST_COLOR_MATRIX_GREEN_BIAS, + GL_POST_COLOR_MATRIX_BLUE_BIAS, + GL_POST_COLOR_MATRIX_ALPHA_BIAS, + GL_POST_CONVOLUTION_RED_SCALE, + GL_POST_CONVOLUTION_GREEN_SCALE, + GL_POST_CONVOLUTION_BLUE_SCALE, + GL_POST_CONVOLUTION_ALPHA_SCALE, + GL_POST_CONVOLUTION_RED_BIAS, + GL_POST_CONVOLUTION_GREEN_BIAS, + GL_POST_CONVOLUTION_BLUE_BIAS, and + GL_POST_CONVOLUTION_ALPHA_BIAS. + + + + + param + + + Specifies the value that pname is set to. + + + + + + Description + + glPixelTransfer sets pixel transfer modes that affect the operation of subsequent + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D commands. + Additionally, if the ARB_imaging subset is supported, the + routines + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glHistogram, + glMinmax, and + glSeparableFilter2D are also affected. + The algorithms that are specified by pixel transfer modes operate on + pixels after they are read from the frame buffer + (glCopyPixels + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, and + glReadPixels), + or unpacked from client memory + (glDrawPixels, glTexImage1D, glTexImage2D, glTexImage3D, + glTexSubImage1D, glTexSubImage2D, and glTexSubImage3D). + Pixel transfer operations happen in the same order, + and in the same manner, + regardless of the command that resulted in the pixel operation. + Pixel storage modes + (see glPixelStore) + control the unpacking of pixels being read from client memory + and the packing of pixels being written back into client memory. + + + Pixel transfer operations handle four fundamental pixel types: + color, + color index, + depth, and + stencil. + Color pixels consist of four floating-point values + with unspecified mantissa and exponent sizes, + scaled such that 0 represents zero intensity + and 1 represents full intensity. + Color indices comprise a single fixed-point value, + with unspecified precision to the right of the binary point. + Depth pixels comprise a single floating-point value, + with unspecified mantissa and exponent sizes, + scaled such that 0.0 represents the minimum depth buffer value, + and 1.0 represents the maximum depth buffer value. + Finally, + stencil pixels comprise a single fixed-point value, + with unspecified precision to the right of the binary point. + + + The pixel transfer operations performed on the four basic pixel types are + as follows: + + + + Color + + + Each of the four color components is multiplied by a scale factor, + then added to a bias factor. + That is, + the red component is multiplied by GL_RED_SCALE, + then added to GL_RED_BIAS; + the green component is multiplied by GL_GREEN_SCALE, + then added to GL_GREEN_BIAS; + the blue component is multiplied by GL_BLUE_SCALE, + then added to GL_BLUE_BIAS; and + the alpha component is multiplied by GL_ALPHA_SCALE, + then added to GL_ALPHA_BIAS. + After all four color components are scaled and biased, + each is clamped to the range + + + + 0 + 1 + + . + All color, scale, and bias values are specified with glPixelTransfer. + + + If GL_MAP_COLOR is true, + each color component is scaled by the size of the corresponding + color-to-color map, + then replaced by the contents of that map indexed by the scaled component. + That is, + the red component is scaled by GL_PIXEL_MAP_R_TO_R_SIZE, + then replaced by the contents of GL_PIXEL_MAP_R_TO_R indexed by itself. + The green component is scaled by GL_PIXEL_MAP_G_TO_G_SIZE, + then replaced by the contents of GL_PIXEL_MAP_G_TO_G indexed by itself. + The blue component is scaled by GL_PIXEL_MAP_B_TO_B_SIZE, + then replaced by the contents of GL_PIXEL_MAP_B_TO_B indexed by itself. + And + the alpha component is scaled by GL_PIXEL_MAP_A_TO_A_SIZE, + then replaced by the contents of GL_PIXEL_MAP_A_TO_A indexed by itself. + All components taken from the maps are then clamped to the range + + + + 0 + 1 + + . + GL_MAP_COLOR is specified with glPixelTransfer. + The contents of the various maps are specified with glPixelMap. + + + If the ARB_imaging extension is supported, each of the four + color components may be scaled and biased after transformation by the + color matrix. + That is, + the red component is multiplied by GL_POST_COLOR_MATRIX_RED_SCALE, + then added to GL_POST_COLOR_MATRIX_RED_BIAS; + the green component is multiplied by GL_POST_COLOR_MATRIX_GREEN_SCALE, + then added to GL_POST_COLOR_MATRIX_GREEN_BIAS; + the blue component is multiplied by GL_POST_COLOR_MATRIX_BLUE_SCALE, + then added to GL_POST_COLOR_MATRIX_BLUE_BIAS; and + the alpha component is multiplied by GL_POST_COLOR_MATRIX_ALPHA_SCALE, + then added to GL_POST_COLOR_MATRIX_ALPHA_BIAS. + After all four color components are scaled and biased, + each is clamped to the range + + + + 0 + 1 + + . + + + Similarly, if the ARB_imaging extension is supported, each of + the four color components may be scaled and biased after processing by + the enabled convolution filter. + That is, + the red component is multiplied by GL_POST_CONVOLUTION_RED_SCALE, + then added to GL_POST_CONVOLUTION_RED_BIAS; + the green component is multiplied by GL_POST_CONVOLUTION_GREEN_SCALE, + then added to GL_POST_CONVOLUTION_GREEN_BIAS; + the blue component is multiplied by GL_POST_CONVOLUTION_BLUE_SCALE, + then added to GL_POST_CONVOLUTION_BLUE_BIAS; and + the alpha component is multiplied by GL_POST_CONVOLUTION_ALPHA_SCALE, + then added to GL_POST_CONVOLUTION_ALPHA_BIAS. + After all four color components are scaled and biased, + each is clamped to the range + + + + 0 + 1 + + . + + + + + Color index + + + Each color index is shifted left by GL_INDEX_SHIFT bits; any bits + beyond the number of fraction bits carried + by the fixed-point index are filled with zeros. + If GL_INDEX_SHIFT is negative, + the shift is to the right, + again zero filled. + Then GL_INDEX_OFFSET is added to the index. + GL_INDEX_SHIFT and GL_INDEX_OFFSET are specified with + glPixelTransfer. + + + From this point, operation diverges depending on the required format of + the resulting pixels. + If the resulting pixels are to be written to a color index buffer, + or if they are being read back to client memory in GL_COLOR_INDEX format, + the pixels continue to be treated as indices. + If GL_MAP_COLOR is true, + each index is masked by + + + + 2 + n + + - + 1 + + , + where + n + is GL_PIXEL_MAP_I_TO_I_SIZE, + then replaced by the contents of GL_PIXEL_MAP_I_TO_I indexed by the + masked value. + GL_MAP_COLOR is specified with glPixelTransfer. + The contents of the index map is specified with glPixelMap. + + + If the resulting pixels are to be written to an RGBA color buffer, + or if they are read back to client memory in a format other than + GL_COLOR_INDEX, + the pixels are converted from indices to colors by referencing the + four maps + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A. + Before being dereferenced, + the index is masked by + + + + 2 + n + + - + 1 + + , + where + n + is + GL_PIXEL_MAP_I_TO_R_SIZE for the red map, + GL_PIXEL_MAP_I_TO_G_SIZE for the green map, + GL_PIXEL_MAP_I_TO_B_SIZE for the blue map, and + GL_PIXEL_MAP_I_TO_A_SIZE for the alpha map. + All components taken from the maps are then clamped to the range + + + + 0 + 1 + + . + The contents of the four maps is specified with glPixelMap. + + + + + Depth + + + Each depth value is multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + then clamped to the range + + + + 0 + 1 + + . + + + + + Stencil + + + Each index is shifted GL_INDEX_SHIFT bits just as a color index is, + then added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is true, + each index is masked by + + + + 2 + n + + - + 1 + + , + where + n + is GL_PIXEL_MAP_S_TO_S_SIZE, + then replaced by the contents of GL_PIXEL_MAP_S_TO_S indexed by the + masked value. + + + + + + The following table gives the type, + initial value, + and range of valid values for each of the pixel transfer parameters + that are set with glPixelTransfer. + + + + + + + + + + + + + pname + + + Type + + + Initial Value + + + Valid Range + + + + + + + GL_MAP_COLOR + + + boolean + + + false + + + true/false + + + + + GL_MAP_STENCIL + + + boolean + + + false + + + true/false + + + + + GL_INDEX_SHIFT + + + integer + + + 0 + + + + + + + - + + + + + + + + + + GL_INDEX_OFFSET + + + integer + + + 0 + + + + + + + - + + + + + + + + + + GL_RED_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_GREEN_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_BLUE_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_ALPHA_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_DEPTH_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_RED_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_GREEN_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_BLUE_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_ALPHA_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_DEPTH_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_RED_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_GREEN_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_BLUE_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_ALPHA_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_RED_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_GREEN_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_BLUE_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_COLOR_MATRIX_ALPHA_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_RED_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_GREEN_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_BLUE_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_ALPHA_SCALE + + + float + + + 1 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_RED_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_GREEN_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_BLUE_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + GL_POST_CONVOLUTION_ALPHA_BIAS + + + float + + + 0 + + + + + + + - + + + + + + + + + + + + glPixelTransferf can be used to set any pixel transfer parameter. + If the parameter type is boolean, + 0 implies false and any other value implies true. + If pname is an integer parameter, + param is rounded to the nearest integer. + + + Likewise, + glPixelTransferi can be used to set any of the + pixel transfer parameters. + Boolean parameters are set to false if param is 0 and to true otherwise. + param is converted to floating point before being assigned to real-valued parameters. + + + Notes + + If a + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glReadPixels, + glSeparableFilter2D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, or + glTexSubImage3D + command is placed in a display list + (see glNewList and glCallList), + the pixel transfer mode settings in effect when the display list is + executed + are the ones that are used. + They may be different from the settings when the command was compiled + into the display list. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_OPERATION is generated if glPixelTransfer + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MAP_COLOR + + + glGet with argument GL_MAP_STENCIL + + + glGet with argument GL_INDEX_SHIFT + + + glGet with argument GL_INDEX_OFFSET + + + glGet with argument GL_RED_SCALE + + + glGet with argument GL_RED_BIAS + + + glGet with argument GL_GREEN_SCALE + + + glGet with argument GL_GREEN_BIAS + + + glGet with argument GL_BLUE_SCALE + + + glGet with argument GL_BLUE_BIAS + + + glGet with argument GL_ALPHA_SCALE + + + glGet with argument GL_ALPHA_BIAS + + + glGet with argument GL_DEPTH_SCALE + + + glGet with argument GL_DEPTH_BIAS + + + glGet with argument GL_POST_COLOR_MATRIX_RED_SCALE + + + glGet with argument GL_POST_COLOR_MATRIX_RED_BIAS + + + glGet with argument GL_POST_COLOR_MATRIX_GREEN_SCALE + + + glGet with argument GL_POST_COLOR_MATRIX_GREEN_BIAS + + + glGet with argument GL_POST_COLOR_MATRIX_BLUE_SCALE + + + glGet with argument GL_POST_COLOR_MATRIX_BLUE_BIAS + + + glGet with argument GL_POST_COLOR_MATRIX_ALPHA_SCALE + + + glGet with argument GL_POST_COLOR_MATRIX_ALPHA_BIAS + + + glGet with argument GL_POST_CONVOLUTION_RED_SCALE + + + glGet with argument GL_POST_CONVOLUTION_RED_BIAS + + + glGet with argument GL_POST_CONVOLUTION_GREEN_SCALE + + + glGet with argument GL_POST_CONVOLUTION_GREEN_BIAS + + + glGet with argument GL_POST_CONVOLUTION_BLUE_SCALE + + + glGet with argument GL_POST_CONVOLUTION_BLUE_BIAS + + + glGet with argument GL_POST_CONVOLUTION_ALPHA_SCALE + + + glGet with argument GL_POST_CONVOLUTION_ALPHA_BIAS + + + See Also + + glCallList, + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glNewList, + glPixelMap, + glPixelStore, + glPixelZoom, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPixelZoom.xml b/upstream-man-pages/man2/glPixelZoom.xml new file mode 100644 index 0000000..c573ea4 --- /dev/null +++ b/upstream-man-pages/man2/glPixelZoom.xml @@ -0,0 +1,175 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPixelZoom + 3G + + + glPixelZoom + specify the pixel zoom factors + + C Specification + + + void glPixelZoom + GLfloat xfactor + GLfloat yfactor + + + + + Parameters + + + xfactor + yfactor + + + Specify the + x + and + y + zoom factors for pixel write operations. + + + + + + Description + + glPixelZoom specifies values for the + x + and + y + zoom factors. + During the execution of glDrawPixels or glCopyPixels, + if + ( + + xr + , + + + yr + ) + is the current raster position, + and a given element is in the + mth + row and + nth + column of the pixel rectangle, + then pixels whose centers are in the rectangle with corners at + + + ( + + + xr + + + + n + · + xfactor + + + , + + + + yr + + + + m + · + yfactor + + + ) + + + ( + + + xr + + + + + + n + + + 1 + + + · + xfactor + + + , + + + + yr + + + + + + m + + + 1 + + + · + yfactor + + + ) + + + are candidates for replacement. + Any pixel whose center lies on the bottom or left edge of this rectangular + region is also modified. + + + Pixel zoom factors are not limited to positive values. + Negative zoom factors reflect the resulting image about the current + raster position. + + + Errors + + GL_INVALID_OPERATION is generated if glPixelZoom + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ZOOM_X + + + glGet with argument GL_ZOOM_Y + + + See Also + + glCopyPixels, + glDrawPixels + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPointParameter.xml b/upstream-man-pages/man2/glPointParameter.xml new file mode 100644 index 0000000..f342a4a --- /dev/null +++ b/upstream-man-pages/man2/glPointParameter.xml @@ -0,0 +1,233 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPointParameter + 3G + + + glPointParameter + specify point parameters + + C Specification + + + void glPointParameterf + GLenum pname + GLfloat param + + + + + + void glPointParameteri + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies a single-valued point parameter. + GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MAX, + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. + + + + + param + + + Specifies the value that pname will be set to. + + + + + + C Specification + + + void glPointParameterfv + GLenum pname + const GLfloat * params + + + + + + void glPointParameteriv + GLenum pname + const GLint * params + + + + Parameters + + + pname + + + Specifies a point parameter. + GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MAX, + GL_POINT_DISTANCE_ATTENUATION, + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. + + + + + params + + + Specifies the value or values to be assigned to pname. + GL_POINT_DISTANCE_ATTENUATION requires an array of three values. + All other parameters accept an array containing only a single value. + + + + + + Description + + The following values are accepted for pname: + + + + GL_POINT_SIZE_MIN + + + + + params is a single floating-point value that specifies the minimum point size. The default value is 0.0. + + + + + GL_POINT_SIZE_MAX + + + + + params is a single floating-point value that specifies the maximum point size. The default value is 1.0. + + + + + GL_POINT_FADE_THRESHOLD_SIZE + + + + + params is a single floating-point value that specifies the threshold value + to which point sizes are clamped if they exceed the specified value. The + default value is 1.0. + + + + + GL_POINT_DISTANCE_ATTENUATION + + + + + params is an array of three floating-point values that specify the + coefficients used for scaling the computed point size. The default values + are + + + + 1 + 0 + 0 + + . + + + + + GL_POINT_SPRITE_COORD_ORIGIN + + + + + params is a single enum specifying the point sprite texture coordinate origin, either GL_LOWER_LEFT or GL_UPPER_LEFT. + The default value is GL_UPPER_LEFT. + + + + + + Notes + + glPointParameter is available only if the GL version is 1.4 or greater. + + + GL_POINT_SPRITE_COORD_ORIGIN is available only if the GL version is 2.0 or greater. + + + Errors + + GL_INVALID_VALUE is generated If the value specified for + GL_POINT_SIZE_MIN, GL_POINT_SIZE_MAX, or + GL_POINT_FADE_THRESHOLD_SIZE is less than zero. + + + GL_INVALID_ENUM is generated If the value specified for + GL_POINT_SPRITE_COORD_ORIGIN is not GL_LOWER_LEFT or GL_UPPER_LEFT. + + + If the value for GL_POINT_SIZE_MIN is greater than + GL_POINT_SIZE_MAX, the point size after clamping is undefined, but no + error is generated. + + + + + Associated Gets + + glGet with argument GL_POINT_SIZE_MIN + + + glGet with argument GL_POINT_SIZE_MAX + + + glGet with argument GL_POINT_FADE_THRESHOLD_SIZE + + + glGet with argument GL_POINT_DISTANCE_ATTENUATION + + + glGet with argument GL_POINT_SPRITE_COORD_ORIGIN + + + See Also + + glPointSize + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPointSize.xml b/upstream-man-pages/man2/glPointSize.xml new file mode 100644 index 0000000..42ad2c9 --- /dev/null +++ b/upstream-man-pages/man2/glPointSize.xml @@ -0,0 +1,403 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPointSize + 3G + + + glPointSize + specify the diameter of rasterized points + + C Specification + + + void glPointSize + GLfloat size + + + + + Parameters + + + size + + + Specifies the diameter of rasterized points. + The initial value is 1. + + + + + + Description + + glPointSize specifies the rasterized diameter of both aliased and antialiased + points. Using a point size other than 1 has different effects, depending + on whether point antialiasing is enabled. To enable and disable point + antialiasing, call glEnable and glDisable with argument + GL_POINT_SMOOTH. Point antialiasing is initially disabled. + + + The specified point size is multiplied with a distance attenuation factor + and clamped to the specified point size range, and further clamped to the + implementation-dependent point size range to produce the derived point size + using + + + + + + pointSize + = + + clamp + + + + size + × + + + + + 1 + + + a + + + + b + × + d + + + + + c + × + + d + 2 + + + + + + + + + + + + + + + + + where + d + is the eye-coordinate distance from the eye to the vertex, and + a, + b, + and + c + are the distance attenuation coefficients (see + glPointParameter). + + + If multisampling is disabled, the computed point size is used as the + point's width. + + + If multisampling is enabled, the point may be faded by modifying the point + alpha value (see glSampleCoverage) instead of allowing the point width + to go below a given threshold (see glPointParameter). In this case, + the width is further modified in the following manner: + + + + + + pointWidth + = + + + + + pointSize + + + threshold + + + + + + + pointSize + >= + threshold + + + + otherwise + + + + + + + + + The point alpha value is modified by computing: + + + + + + pointAlpha + = + + + + + 1 + + + + + pointSize + threshold + + + 2 + + + + + + + + pointSize + >= + threshold + + + + otherwise + + + + + + + + + If point antialiasing is disabled, the actual size is determined by + rounding the supplied size to the nearest integer. (If the rounding + results in the value 0, it is as if the point size were 1.) If the rounded + size is odd, then the center point + ( + + x + , + + + y + ) + of the pixel fragment + that represents the point is computed as + + + + + + + + x + w + + + + + .5 + + + + y + w + + + + + .5 + + + + + + where + w + subscripts indicate window coordinates. All pixels that lie + within the square grid of the rounded size centered at + ( + + x + , + + + y + ) + make + up the fragment. If the size is even, the center point is + + + + + + + + x + w + + + + .5 + + + + + y + w + + + + .5 + + + + + + + and the rasterized fragment's centers are the half-integer window + coordinates within the square of the rounded size centered at + + + + x + y + + . + All pixel fragments produced in rasterizing a nonantialiased point are + assigned the same associated data, that of the vertex corresponding to the + point. + + + If antialiasing is enabled, then point rasterization produces a fragment + for each pixel square that intersects the region lying within the circle + having diameter equal to the current point size and centered at the point's + + + + x + w + + y + w + + + . + The coverage value for each fragment is the + window coordinate area of the intersection of the circular region with the + corresponding pixel square. This value is saved and used in the final + rasterization step. The data associated with each fragment is the data + associated with the point being rasterized. + + + Not all sizes are supported when point antialiasing is enabled. If an + unsupported size is requested, the nearest supported size is used. Only + size 1 is guaranteed to be supported; others depend on the implementation. + To query the range of supported sizes and the size difference between + supported sizes within the range, call glGet with arguments + GL_SMOOTH_POINT_SIZE_RANGE and GL_SMOOTH_POINT_SIZE_GRANULARITY. + For aliased points, query the supported ranges and granularity with + glGet with arguments GL_ALIASED_POINT_SIZE_RANGE. + + + Notes + + The point size specified by glPointSize is always returned when + GL_POINT_SIZE is queried. Clamping and rounding for aliased and + antialiased points have no effect on the specified value. + + + A non-antialiased point size may be clamped to an implementation-dependent + maximum. Although this maximum cannot be queried, it must be no less than + the maximum value for antialiased points, rounded to the nearest integer + value. + + + GL_POINT_SIZE_RANGE and GL_POINT_SIZE_GRANULARITY are + deprecated in GL versions 1.2 and greater. Their functionality has been + replaced by GL_SMOOTH_POINT_SIZE_RANGE and + GL_SMOOTH_POINT_SIZE_GRANULARITY. + + + Errors + + GL_INVALID_VALUE is generated if size is less than or equal to 0. + + + GL_INVALID_OPERATION is generated if glPointSize + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ALIASED_POINT_SIZE_RANGE + + + glGet with argument GL_POINT_SIZE + + + glGet with argument GL_POINT_SIZE_MIN + + + glGet with argument GL_POINT_SIZE_MAX + + + glGet with argument GL_POINT_FADE_THRESHOLD_SIZE + + + glGet with argument GL_POINT_DISTANCE_ATTENUATION + + + glGet with argument GL_SMOOTH_POINT_SIZE_RANGE + + + glGet with argument GL_SMOOTH_POINT_SIZE_GRANULARITY + + + glIsEnabled with argument GL_POINT_SMOOTH + + + See Also + + glEnable, + glPointParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPolygonMode.xml b/upstream-man-pages/man2/glPolygonMode.xml new file mode 100644 index 0000000..7161313 --- /dev/null +++ b/upstream-man-pages/man2/glPolygonMode.xml @@ -0,0 +1,167 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonMode + 3G + + + glPolygonMode + select a polygon rasterization mode + + C Specification + + + void glPolygonMode + GLenum face + GLenum mode + + + + Parameters + + + face + + + Specifies the polygons that mode applies to. + Must be + GL_FRONT for front-facing polygons, + GL_BACK for back-facing polygons, + or GL_FRONT_AND_BACK for front- and back-facing polygons. + + + + + mode + + + Specifies how polygons will be rasterized. + Accepted values are + GL_POINT, + GL_LINE, and + GL_FILL. + The initial value is GL_FILL for both front- and back-facing polygons. + + + + + + Description + + glPolygonMode controls the interpretation of polygons for rasterization. + face describes which polygons mode applies to: + front-facing polygons (GL_FRONT), + back-facing polygons (GL_BACK), + or both (GL_FRONT_AND_BACK). + The polygon mode affects only the final rasterization of polygons. + In particular, + a polygon's vertices are lit and + the polygon is clipped and possibly culled before these modes are applied. + + + Three modes are defined and can be specified in mode: + + + + GL_POINT + + + Polygon vertices that are marked as the start of a boundary edge + are drawn as points. + Point attributes such as + GL_POINT_SIZE and + GL_POINT_SMOOTH control + the rasterization of the points. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. + + + + + GL_LINE + + + Boundary edges of the polygon are drawn as line segments. + They are treated as connected line segments for line stippling; + the line stipple counter and pattern are not reset between segments + (see glLineStipple). + Line attributes such as + GL_LINE_WIDTH and + GL_LINE_SMOOTH control + the rasterization of the lines. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. + + + + + GL_FILL + + + The interior of the polygon is filled. + Polygon attributes such as + GL_POLYGON_STIPPLE and + GL_POLYGON_SMOOTH control the rasterization of the polygon. + + + + + + Examples + + To draw a surface with filled back-facing polygons + and outlined front-facing polygons, + call + +glPolygonMode(GL_FRONT, GL_LINE); + + + + Notes + + Vertices are marked as boundary or nonboundary with an edge flag. + Edge flags are generated internally by the GL when it decomposes + polygons; they can be set explicitly using glEdgeFlag. + + + Errors + + GL_INVALID_ENUM is generated if either face or mode is not + an accepted value. + + + GL_INVALID_OPERATION is generated if glPolygonMode + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_POLYGON_MODE + + + See Also + + glBegin, + glEdgeFlag, + glLineStipple, + glLineWidth, + glPointSize, + glPolygonStipple + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPolygonOffset.xml b/upstream-man-pages/man2/glPolygonOffset.xml new file mode 100644 index 0000000..d43edf8 --- /dev/null +++ b/upstream-man-pages/man2/glPolygonOffset.xml @@ -0,0 +1,139 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonOffset + 3G + + + glPolygonOffset + set the scale and units used to calculate depth values + + C Specification + + + void glPolygonOffset + GLfloat factor + GLfloat units + + + + + Parameters + + + factor + + + Specifies a scale factor that is used to create a variable + depth offset for each polygon. The initial value is 0. + + + + + units + + + Is multiplied by an implementation-specific value to + create a constant depth offset. The initial value is 0. + + + + + + Description + + When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or + GL_POLYGON_OFFSET_POINT is enabled, each + fragment's depth value will be offset after it is interpolated + from the depth values of the appropriate vertices. + The value of the offset is + + + + + factor + × + DZ + + + + + r + × + units + + + , + where + + + DZ + + is a measurement of the change in depth relative to the screen + area of the polygon, and + r + is the smallest value that is guaranteed to + produce a resolvable offset for a given implementation. + The offset is added before the depth test is performed and before + the value is written into the depth buffer. + + + glPolygonOffset is useful for rendering hidden-line images, for applying decals + to surfaces, and for rendering solids with highlighted edges. + + + Notes + + glPolygonOffset is available only if the GL version is 1.1 or greater. + + + glPolygonOffset has no effect on depth coordinates placed in the + feedback buffer. + + + glPolygonOffset has no effect on selection. + + + Errors + + GL_INVALID_OPERATION is generated if glPolygonOffset is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glIsEnabled with argument + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + or GL_POLYGON_OFFSET_POINT. + + + glGet with argument GL_POLYGON_OFFSET_FACTOR or + GL_POLYGON_OFFSET_UNITS. + + + See Also + + glDepthFunc, + glEnable, + glGet, + glIsEnabled + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPolygonStipple.xml b/upstream-man-pages/man2/glPolygonStipple.xml new file mode 100644 index 0000000..dd50c2a --- /dev/null +++ b/upstream-man-pages/man2/glPolygonStipple.xml @@ -0,0 +1,194 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonStipple + 3G + + + glPolygonStipple + set the polygon stippling pattern + + C Specification + + + void glPolygonStipple + const GLubyte * pattern + + + + + Parameters + + + pattern + + + Specifies a pointer to a + + + + 32 + × + 32 + + + stipple pattern that will be unpacked + from memory in the same way that glDrawPixels unpacks pixels. + + + + + + Description + + Polygon stippling, + like line stippling + (see glLineStipple), + masks out certain fragments produced by rasterization, + creating a pattern. + Stippling is independent of polygon antialiasing. + + + pattern is a pointer to a + + + + 32 + × + 32 + + + stipple pattern that is stored + in memory just like the pixel data supplied to a glDrawPixels + call with + + height + and + width + both equal to 32, a pixel format + of GL_COLOR_INDEX, and data type + of GL_BITMAP. + That is, + the stipple pattern is represented as a + + + + 32 + × + 32 + + + array + of 1-bit color indices packed in unsigned bytes. + glPixelStore parameters like GL_UNPACK_SWAP_BYTES + and GL_UNPACK_LSB_FIRST affect the assembling of the bits into a + stipple pattern. + Pixel transfer operations + (shift, offset, pixel map) + are not applied to the stipple image, + however. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a stipple pattern is + specified, pattern is treated as a byte offset into the buffer object's data store. + + + To enable and disable polygon stippling, call + glEnable and glDisable + with argument GL_POLYGON_STIPPLE. Polygon stippling is initially + disabled. If it's enabled, + a rasterized polygon fragment with window coordinates + + + x + w + + + and + + + y + w + + + is sent to the next stage of the GL if and only if the + ( + + + x + w + + % + 32 + + )th + bit in the + ( + + + y + w + + % + 32 + + )th + row + of the stipple pattern is 1 (one). + When polygon stippling is disabled, it is as if the stipple pattern + consists of all 1's. + + + Errors + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if glPolygonStipple + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetPolygonStipple + + + glIsEnabled with argument GL_POLYGON_STIPPLE + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glDrawPixels, + glLineStipple, + glPixelStore, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPrioritizeTextures.xml b/upstream-man-pages/man2/glPrioritizeTextures.xml new file mode 100644 index 0000000..019ece0 --- /dev/null +++ b/upstream-man-pages/man2/glPrioritizeTextures.xml @@ -0,0 +1,142 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPrioritizeTextures + 3G + + + glPrioritizeTextures + set texture residence priority + + C Specification + + + void glPrioritizeTextures + GLsizei n + const GLuint * textures + const GLclampf * priorities + + + + Parameters + + + n + + + Specifies the number of textures to be prioritized. + + + + + textures + + + Specifies an array containing the names of the textures to be prioritized. + + + + + priorities + + + Specifies an array containing the texture priorities. + A priority given in an element of priorities applies to the texture + named by the corresponding element of textures. + + + + + + Description + + glPrioritizeTextures assigns the n texture priorities given in priorities to the + n textures named in textures. + + + The GL establishes + a ``working set'' of textures that are resident in texture memory. + These textures may be bound to a texture target much more efficiently + than textures that are not resident. + By specifying a priority for each texture, + glPrioritizeTextures allows applications to guide the GL implementation in determining + which textures should be resident. + + + The priorities given in priorities are clamped to the range + + + + 0 + 1 + + + before they are assigned. + 0 indicates the lowest priority; textures with priority 0 + are least likely to be resident. + 1 indicates the highest priority; textures with priority 1 + are most likely to be resident. + However, textures are not guaranteed to be resident until they are used. + + + glPrioritizeTextures silently ignores attempts to prioritize texture 0 or any texture + name that does not correspond to an existing texture. + + + glPrioritizeTextures does not require that any of the textures named by textures + be bound to a texture target. + glTexParameter may also be used to set a texture's priority, + but only if the texture is currently bound. + This is the only way to set the priority of a default texture. + + + Notes + + glPrioritizeTextures is available only if the GL version is 1.1 or greater. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + GL_INVALID_OPERATION is generated if glPrioritizeTextures is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexParameter with parameter name GL_TEXTURE_PRIORITY + retrieves the priority of a currently bound texture. + + + See Also + + glAreTexturesResident, + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPushAttrib.xml b/upstream-man-pages/man2/glPushAttrib.xml new file mode 100644 index 0000000..5e12284 --- /dev/null +++ b/upstream-man-pages/man2/glPushAttrib.xml @@ -0,0 +1,1268 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPushAttrib + 3G + + + glPushAttrib + push and pop the server attribute stack + + C Specification + + + void glPushAttrib + GLbitfield mask + + + + Parameters + + + mask + + + Specifies a mask that indicates which attributes to save. Values for + mask are listed below. + + + + + + C Specification + + + void glPopAttrib + void + + + + Description + + glPushAttrib takes one argument, + a mask that indicates which groups of state variables + to save on the attribute stack. + Symbolic constants are used to set bits in the mask. + mask + is typically constructed by specifying the bitwise-or of several + of these constants together. + The special mask + GL_ALL_ATTRIB_BITS + can be used to save all stackable states. + + + The symbolic mask constants and their associated GL state are as follows + (the second column lists which attributes are saved): + + + + + + + + + + + GL_ACCUM_BUFFER_BIT + + + Accumulation buffer clear value + + + + + GL_COLOR_BUFFER_BIT + + + GL_ALPHA_TEST enable bit + + + + + + + Alpha test function and reference value + + + + + + + GL_BLEND enable bit + + + + + + + Blending source and destination functions + + + + + + + Constant blend color + + + + + + + Blending equation + + + + + + + GL_DITHER enable bit + + + + + + + GL_DRAW_BUFFER setting + + + + + + + GL_COLOR_LOGIC_OP enable bit + + + + + + + GL_INDEX_LOGIC_OP enable bit + + + + + + + Logic op function + + + + + + + Color mode and index mode clear values + + + + + + + Color mode and index mode writemasks + + + + + GL_CURRENT_BIT + + + Current RGBA color + + + + + + + Current color index + + + + + + + Current normal vector + + + + + + + Current texture coordinates + + + + + + + Current raster position + + + + + + + GL_CURRENT_RASTER_POSITION_VALID flag + + + + + + + RGBA color associated with current raster position + + + + + + + Color index associated with current raster position + + + + + + + Texture coordinates associated with current raster position + + + + + + + GL_EDGE_FLAG flag + + + + + GL_DEPTH_BUFFER_BIT + + + GL_DEPTH_TEST enable bit + + + + + + + Depth buffer test function + + + + + + + Depth buffer clear value + + + + + + + GL_DEPTH_WRITEMASK enable bit + + + + + GL_ENABLE_BIT + + + GL_ALPHA_TEST flag + + + + + + + GL_AUTO_NORMAL flag + + + + + + + GL_BLEND flag + + + + + + + Enable bits for the user-definable clipping planes + + + + + + + GL_COLOR_MATERIAL + + + + + + + GL_CULL_FACE flag + + + + + + + GL_DEPTH_TEST flag + + + + + + + GL_DITHER flag + + + + + + + GL_FOG flag + + + + + + + GL_LIGHTi + where + 0 <= i < GL_MAX_LIGHTS + + + + + + + + GL_LIGHTING flag + + + + + + + GL_LINE_SMOOTH flag + + + + + + + GL_LINE_STIPPLE flag + + + + + + + GL_COLOR_LOGIC_OP flag + + + + + + + GL_INDEX_LOGIC_OP flag + + + + + + + GL_MAP1_x where x is a map type + + + + + + + GL_MAP2_x where x is a map type + + + + + + + GL_MULTISAMPLE flag + + + + + + + GL_NORMALIZE flag + + + + + + + GL_POINT_SMOOTH flag + + + + + + + GL_POLYGON_OFFSET_LINE flag + + + + + + + GL_POLYGON_OFFSET_FILL flag + + + + + + + GL_POLYGON_OFFSET_POINT flag + + + + + + + GL_POLYGON_SMOOTH flag + + + + + + + GL_POLYGON_STIPPLE flag + + + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE flag + + + + + + + GL_SAMPLE_ALPHA_TO_ONE flag + + + + + + + GL_SAMPLE_COVERAGE flag + + + + + + + GL_SCISSOR_TEST flag + + + + + + + GL_STENCIL_TEST flag + + + + + + + GL_TEXTURE_1D flag + + + + + + + GL_TEXTURE_2D flag + + + + + + + GL_TEXTURE_3D flag + + + + + + + Flags GL_TEXTURE_GEN_x where x is S, T, R, or Q + + + + + GL_EVAL_BIT + + + GL_MAP1_x enable bits, where x is a map type + + + + + + + GL_MAP2_x enable bits, where x is a map type + + + + + + + 1D grid endpoints and divisions + + + + + + + 2D grid endpoints and divisions + + + + + + + GL_AUTO_NORMAL enable bit + + + + + GL_FOG_BIT + + + GL_FOG enable bit + + + + + + + Fog color + + + + + + + Fog density + + + + + + + Linear fog start + + + + + + + Linear fog end + + + + + + + Fog index + + + + + + + GL_FOG_MODE value + + + + + GL_HINT_BIT + + + GL_PERSPECTIVE_CORRECTION_HINT setting + + + + + + + GL_POINT_SMOOTH_HINT setting + + + + + + + GL_LINE_SMOOTH_HINT setting + + + + + + + GL_POLYGON_SMOOTH_HINT setting + + + + + + + GL_FOG_HINT setting + + + + + + + GL_GENERATE_MIPMAP_HINT setting + + + + + + + GL_TEXTURE_COMPRESSION_HINT setting + + + + + GL_LIGHTING_BIT + + + GL_COLOR_MATERIAL enable bit + + + + + + + GL_COLOR_MATERIAL_FACE value + + + + + + + Color material parameters that are tracking the current color + + + + + + + Ambient scene color + + + + + + + GL_LIGHT_MODEL_LOCAL_VIEWER value + + + + + + + GL_LIGHT_MODEL_TWO_SIDE setting + + + + + + + GL_LIGHTING enable bit + + + + + + + Enable bit for each light + + + + + + + Ambient, diffuse, and specular intensity for each light + + + + + + + Direction, position, exponent, and cutoff angle for each light + + + + + + + Constant, linear, and quadratic attenuation factors for each light + + + + + + + Ambient, diffuse, specular, and emissive color for each material + + + + + + + Ambient, diffuse, and specular color indices for each material + + + + + + + Specular exponent for each material + + + + + + + GL_SHADE_MODEL setting + + + + + GL_LINE_BIT + + + GL_LINE_SMOOTH flag + + + + + + + GL_LINE_STIPPLE enable bit + + + + + + + Line stipple pattern and repeat counter + + + + + + + Line width + + + + + GL_LIST_BIT + + + GL_LIST_BASE setting + + + + + GL_MULTISAMPLE_BIT + + + GL_MULTISAMPLE flag + + + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE flag + + + + + + + GL_SAMPLE_ALPHA_TO_ONE flag + + + + + + + GL_SAMPLE_COVERAGE flag + + + + + + + GL_SAMPLE_COVERAGE_VALUE value + + + + + + + GL_SAMPLE_COVERAGE_INVERT value + + + + + GL_PIXEL_MODE_BIT + + + GL_RED_BIAS and GL_RED_SCALE settings + + + + + + + GL_GREEN_BIAS and GL_GREEN_SCALE values + + + + + + + GL_BLUE_BIAS and GL_BLUE_SCALE + + + + + + + GL_ALPHA_BIAS and GL_ALPHA_SCALE + + + + + + + GL_DEPTH_BIAS and GL_DEPTH_SCALE + + + + + + + GL_INDEX_OFFSET and GL_INDEX_SHIFT values + + + + + + + GL_MAP_COLOR and GL_MAP_STENCIL flags + + + + + + + GL_ZOOM_X and GL_ZOOM_Y factors + + + + + + + GL_READ_BUFFER setting + + + + + GL_POINT_BIT + + + GL_POINT_SMOOTH flag + + + + + + + Point size + + + + + GL_POLYGON_BIT + + + GL_CULL_FACE enable bit + + + + + + + GL_CULL_FACE_MODE value + + + + + + + GL_FRONT_FACE indicator + + + + + + + GL_POLYGON_MODE setting + + + + + + + GL_POLYGON_SMOOTH flag + + + + + + + GL_POLYGON_STIPPLE enable bit + + + + + + + GL_POLYGON_OFFSET_FILL flag + + + + + + + GL_POLYGON_OFFSET_LINE flag + + + + + + + GL_POLYGON_OFFSET_POINT flag + + + + + + + GL_POLYGON_OFFSET_FACTOR + + + + + + + GL_POLYGON_OFFSET_UNITS + + + + + GL_POLYGON_STIPPLE_BIT + + + Polygon stipple image + + + + + GL_SCISSOR_BIT + + + GL_SCISSOR_TEST flag + + + + + + + Scissor box + + + + + GL_STENCIL_BUFFER_BIT + + + GL_STENCIL_TEST enable bit + + + + + + + Stencil function and reference value + + + + + + + Stencil value mask + + + + + + + Stencil fail, pass, and depth buffer pass actions + + + + + + + Stencil buffer clear value + + + + + + + Stencil buffer writemask + + + + + GL_TEXTURE_BIT + + + Enable bits for the four texture coordinates + + + + + + + Border color for each texture image + + + + + + + Minification function for each texture image + + + + + + + Magnification function for each texture image + + + + + + + Texture coordinates and wrap mode for each texture image + + + + + + + Color and mode for each texture environment + + + + + + + Enable bits GL_TEXTURE_GEN_x, x is S, T, R, and Q + + + + + + + GL_TEXTURE_GEN_MODE setting for S, T, R, and Q + + + + + + + glTexGen plane equations for S, T, R, and Q + + + + + + + Current texture bindings (for example, GL_TEXTURE_BINDING_2D) + + + + + GL_TRANSFORM_BIT + + + Coefficients of the six clipping planes + + + + + + + Enable bits for the user-definable clipping planes + + + + + + + GL_MATRIX_MODE value + + + + + + + GL_NORMALIZE flag + + + + + + + GL_RESCALE_NORMAL flag + + + + + GL_VIEWPORT_BIT + + + Depth range (near and far) + + + + + + + Viewport origin and extent + + + + + + + glPopAttrib restores the values of the state variables saved with the last + glPushAttrib command. + Those not saved are left unchanged. + + + It is an error to push attributes onto a full stack + or to pop attributes off an empty stack. + In either case, the error flag is set + and no other change is made to GL state. + + + Initially, the attribute stack is empty. + + + Notes + + Not all values for GL state can be saved on the attribute stack. + For example, + render mode state, + and select and feedback state cannot be saved. + Client state must be saved with + glPushClientAttrib. + + + The depth of the attribute stack depends on the implementation, + but it must be at least 16. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, pushing and + popping texture state applies to all supported texture units. + + + Errors + + GL_STACK_OVERFLOW is generated if glPushAttrib is called while + the attribute stack is full. + + + GL_STACK_UNDERFLOW is generated if glPopAttrib is called while + the attribute stack is empty. + + + GL_INVALID_OPERATION is generated if glPushAttrib or glPopAttrib + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_ATTRIB_STACK_DEPTH + + + glGet with argument GL_MAX_ATTRIB_STACK_DEPTH + + + See Also + + glGet, + glGetClipPlane, + glGetError, + glGetLight, + glGetMap, + glGetMaterial, + glGetPixelMap, + glGetPolygonStipple, + glGetString, + glGetTexEnv, + glGetTexGen, + glGetTexImage, + glGetTexLevelParameter, + glGetTexParameter, + glIsEnabled, + glPushClientAttrib + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPushClientAttrib.xml b/upstream-man-pages/man2/glPushClientAttrib.xml new file mode 100644 index 0000000..e83411e --- /dev/null +++ b/upstream-man-pages/man2/glPushClientAttrib.xml @@ -0,0 +1,152 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPushClientAttrib + 3G + + + glPushClientAttrib + push and pop the client attribute stack + + C Specification + + + void glPushClientAttrib + GLbitfield mask + + + + Parameters + + + mask + + + Specifies a mask that indicates which attributes to save. Values for + mask are listed below. + + + + + + C Specification + + + void glPopClientAttrib + void + + + + Description + + glPushClientAttrib takes one argument, + a mask that indicates which groups of client-state variables + to save on the client attribute stack. + Symbolic constants are used to set bits in the mask. + mask + is typically constructed by specifying the bitwise-or of several + of these constants together. + The special mask + GL_CLIENT_ALL_ATTRIB_BITS + can be used to save all stackable client state. + + + The symbolic mask constants and their associated GL client state are as follows + (the second column lists which attributes are saved): + + + GL_CLIENT_PIXEL_STORE_BIT Pixel storage modes + GL_CLIENT_VERTEX_ARRAY_BIT Vertex arrays (and enables) + + + glPopClientAttrib restores the values of the client-state variables + saved with the last glPushClientAttrib. + Those not saved are left unchanged. + + + It is an error to push attributes onto a full client attribute stack + or to pop attributes off an empty stack. + In either case, the error flag is set, + and no other change is made to GL state. + + + Initially, the client attribute stack is empty. + + + Notes + + glPushClientAttrib is available only if the GL version is 1.1 or greater. + + + Not all values for GL client state can be saved on the attribute stack. + For example, select and feedback state cannot be saved. + + + The depth of the attribute stack depends on the implementation, + but it must be at least 16. + + + Use glPushAttrib and glPopAttrib to push and restore + state that is kept on the server. Only pixel storage modes and + vertex array state may be pushed and popped with + glPushClientAttrib and glPopClientAttrib. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, pushing and + popping client vertex array state applies to all supported texture units, + and the active client texture state. + + + Errors + + GL_STACK_OVERFLOW is generated if glPushClientAttrib is called while + the attribute stack is full. + + + GL_STACK_UNDERFLOW is generated if glPopClientAttrib is called while + the attribute stack is empty. + + + Associated Gets + + glGet with argument GL_ATTRIB_STACK_DEPTH + + + glGet with argument GL_MAX_CLIENT_ATTRIB_STACK_DEPTH + + + See Also + + glColorPointer, + glDisableClientState, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glGet, + glGetError, + glIndexPointer, + glNormalPointer, + glNewList, + glPixelStore, + glPushAttrib, + glTexCoordPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPushMatrix.xml b/upstream-man-pages/man2/glPushMatrix.xml new file mode 100644 index 0000000..d60c220 --- /dev/null +++ b/upstream-man-pages/man2/glPushMatrix.xml @@ -0,0 +1,144 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPushMatrix + 3G + + + glPushMatrix + push and pop the current matrix stack + + C Specification + + + void glPushMatrix + void + + + + C Specification + + + void glPopMatrix + void + + + + Description + + There is a stack of matrices for each of the matrix modes. + In GL_MODELVIEW mode, + the stack depth is at least 32. + In the other modes, + GL_COLOR, GL_PROJECTION, and GL_TEXTURE, + the depth is at least 2. + The current matrix in any mode is the matrix on the top of the stack + for that mode. + + + glPushMatrix pushes the current matrix stack down by one, + duplicating the current matrix. + That is, + after a glPushMatrix call, + the matrix on top of the stack is identical to the one below it. + + + glPopMatrix pops the current matrix stack, + replacing the current matrix with the one below it on the stack. + + + Initially, each of the stacks contains one matrix, an identity matrix. + + + It is an error to push a full matrix stack + or to pop a matrix stack that contains only a single matrix. + In either case, the error flag is set + and no other change is made to GL state. + + + Errors + + GL_STACK_OVERFLOW is generated if glPushMatrix is called while + the current matrix stack is full. + + + GL_STACK_UNDERFLOW is generated if glPopMatrix is called while + the current matrix stack contains only a single matrix. + + + GL_INVALID_OPERATION is generated if glPushMatrix or glPopMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + glGet with argument GL_COLOR_MATRIX_STACK_DEPTH + + + glGet with argument GL_MODELVIEW_STACK_DEPTH + + + glGet with argument GL_PROJECTION_STACK_DEPTH + + + glGet with argument GL_TEXTURE_STACK_DEPTH + + + glGet with argument GL_MAX_MODELVIEW_STACK_DEPTH + + + glGet with argument GL_MAX_PROJECTION_STACK_DEPTH + + + glGet with argument GL_MAX_TEXTURE_STACK_DEPTH + + + See Also + + glFrustum, + glLoadIdentity, + glLoadMatrix, + glLoadTransposeMatrix, + glMatrixMode, + glMultMatrix, + glMultTransposeMatrix, + glOrtho, + glRotate, + glScale, + glTranslate, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glPushName.xml b/upstream-man-pages/man2/glPushName.xml new file mode 100644 index 0000000..5016c9b --- /dev/null +++ b/upstream-man-pages/man2/glPushName.xml @@ -0,0 +1,113 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPushName + 3G + + + glPushName + push and pop the name stack + + C Specification + + + void glPushName + GLuint name + + + + Parameters + + + name + + + Specifies a name that will be pushed onto the name stack. + + + + + + C Specification + + + void glPopName + void + + + + Description + + The name stack is used during selection mode to allow sets of rendering + commands to be uniquely identified. + It consists of an ordered set of unsigned integers and is initially empty. + + + glPushName causes name to be pushed onto the name stack. + glPopName pops one name off the top of the stack. + + + The maximum name stack depth is implementation-dependent; call + GL_MAX_NAME_STACK_DEPTH to find out the value for a particular + implementation. It is an + error to push a name onto a full stack + or to pop a name off an empty stack. + It is also an error to manipulate the name stack between the execution of + glBegin and the corresponding execution of glEnd. + In any of these cases, the error flag is set and no other change is + made to GL state. + + + The name stack is always empty while the render mode is not GL_SELECT. + Calls to glPushName or glPopName while the render mode is not + GL_SELECT are ignored. + + + Errors + + GL_STACK_OVERFLOW is generated if glPushName is called while the + name stack is full. + + + GL_STACK_UNDERFLOW is generated if glPopName is called while the + name stack is empty. + + + GL_INVALID_OPERATION is generated if glPushName or glPopName + is executed between a call to glBegin and the corresponding call to + glEnd. + + + Associated Gets + + glGet with argument GL_NAME_STACK_DEPTH + + + glGet with argument GL_MAX_NAME_STACK_DEPTH + + + See Also + + glInitNames, + glLoadName, + glRenderMode, + glSelectBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glRasterPos.xml b/upstream-man-pages/man2/glRasterPos.xml new file mode 100644 index 0000000..a4f5886 --- /dev/null +++ b/upstream-man-pages/man2/glRasterPos.xml @@ -0,0 +1,426 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glRasterPos + 3G + + + glRasterPos + specify the raster position for pixel operations + + C Specification + + + void glRasterPos2s + GLshort x + GLshort y + + + + + void glRasterPos2i + GLint x + GLint y + + + + + void glRasterPos2f + GLfloat x + GLfloat y + + + + + void glRasterPos2d + GLdouble x + GLdouble y + + + + + void glRasterPos3s + GLshort x + GLshort y + GLshort z + + + + + void glRasterPos3i + GLint x + GLint y + GLint z + + + + + void glRasterPos3f + GLfloat x + GLfloat y + GLfloat z + + + + + void glRasterPos3d + GLdouble x + GLdouble y + GLdouble z + + + + + void glRasterPos4s + GLshort x + GLshort y + GLshort z + GLshort w + + + + + void glRasterPos4i + GLint x + GLint y + GLint z + GLint w + + + + + void glRasterPos4f + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + + void glRasterPos4d + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + + Parameters + + + x + y + z + w + + + Specify the + x, + y, + z, + and + w + object coordinates + (if present) + for the raster + position. + + + + + + C Specification + + + void glRasterPos2sv + const GLshort * v + + + + + void glRasterPos2iv + const GLint * v + + + + + void glRasterPos2fv + const GLfloat * v + + + + + void glRasterPos2dv + const GLdouble * v + + + + + void glRasterPos3sv + const GLshort * v + + + + + void glRasterPos3iv + const GLint * v + + + + + void glRasterPos3fv + const GLfloat * v + + + + + void glRasterPos3dv + const GLdouble * v + + + + + void glRasterPos4sv + const GLshort * v + + + + + void glRasterPos4iv + const GLint * v + + + + + void glRasterPos4fv + const GLfloat * v + + + + + void glRasterPos4dv + const GLdouble * v + + + + Parameters + + + v + + + Specifies a pointer to an array of two, + three, + or four elements, + specifying + x, + y, + z, + and + w + coordinates, respectively. + + + + + + Description + + The GL maintains a 3D position in window coordinates. + This position, + called the raster position, + is used to position pixel and bitmap write operations. It is + maintained with subpixel accuracy. + See glBitmap, glDrawPixels, and glCopyPixels. + + + The current raster position consists of three window coordinates + (x, + y, + z), + a clip coordinate value + (w), + an eye coordinate distance, + a valid bit, + and associated color data and texture coordinates. + The + w + coordinate is a clip coordinate, + because + w + is not projected to window coordinates. + glRasterPos4 specifies object coordinates + x, + y, + z, + and + w + explicitly. + glRasterPos3 specifies object coordinate + x, + y, + and + z + explicitly, + while + w + is implicitly set to 1. + glRasterPos2 uses the argument values for + x + and + y + while + implicitly setting + z + and + w + to 0 and 1. + + + The object coordinates presented by glRasterPos are treated just like those + of a glVertex command: + They are transformed by the current modelview and projection matrices + and passed to the clipping stage. + If the vertex is not culled, + then it is projected and scaled to window coordinates, + which become the new current raster position, + and the GL_CURRENT_RASTER_POSITION_VALID flag is set. + If the vertex + is + culled, + then the valid bit is cleared and the current raster position + and associated color and texture coordinates are undefined. + + + The current raster position also includes some associated color data + and texture coordinates. + If lighting is enabled, + then GL_CURRENT_RASTER_COLOR + (in RGBA mode) + or GL_CURRENT_RASTER_INDEX + (in color index mode) + is set to the color produced by the lighting calculation + (see glLight, glLightModel, and + glShadeModel). + If lighting is disabled, + current color + (in RGBA mode, state variable GL_CURRENT_COLOR) + or color index + (in color index mode, state variable GL_CURRENT_INDEX) + is used to update the current raster color. + GL_CURRENT_RASTER_SECONDARY_COLOR (in RGBA mode) is likewise updated. + + + Likewise, + GL_CURRENT_RASTER_TEXTURE_COORDS is updated as a function + of GL_CURRENT_TEXTURE_COORDS, + based on the texture matrix and the texture generation functions + (see glTexGen). + Finally, + the distance from the origin of the eye coordinate system to the + vertex as transformed by only the modelview matrix replaces + GL_CURRENT_RASTER_DISTANCE. + + + Initially, the current raster position is (0, 0, 0, 1), + the current raster distance is 0, + the valid bit is set, + the associated RGBA color is (1, 1, 1, 1), + the associated color index is 1, + and the associated texture coordinates are (0, 0, 0, 1). + In RGBA mode, + GL_CURRENT_RASTER_INDEX is always 1; + in color index mode, + the current raster RGBA color always maintains its initial value. + + + Notes + + The raster position is modified by glRasterPos, glBitmap, and glWindowPos. + + + When the raster position coordinates are invalid, + drawing commands that are based on the raster position are + ignored (that is, they do not result in changes to GL state). + + + Calling glDrawElements or glDrawRangeElements may leave the + current color or index indeterminate. + If glRasterPos is executed while the current color or index is indeterminate, the + current raster color or current raster index remains indeterminate. + + + To set a valid raster position outside the viewport, first set a valid + raster position, then call glBitmap with NULL as the bitmap + parameter. + + + When the ARB_imaging extension is supported, there are distinct + raster texture coordinates for each texture unit. Each texture unit's + current raster texture coordinates are updated by glRasterPos. + + + Errors + + GL_INVALID_OPERATION is generated if glRasterPos + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_RASTER_POSITION + + + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + + + glGet with argument GL_CURRENT_RASTER_DISTANCE + + + glGet with argument GL_CURRENT_RASTER_COLOR + + + glGet with argument GL_CURRENT_RASTER_SECONDARY_COLOR + + + glGet with argument GL_CURRENT_RASTER_INDEX + + + glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS + + + See Also + + glBitmap, + glCopyPixels, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glDrawPixels, + glMultiTexCoord, + glTexCoord, + glTexGen, + glVertex, + glWindowPos + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glReadBuffer.xml b/upstream-man-pages/man2/glReadBuffer.xml new file mode 100644 index 0000000..c867bef --- /dev/null +++ b/upstream-man-pages/man2/glReadBuffer.xml @@ -0,0 +1,120 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glReadBuffer + 3G + + + glReadBuffer + select a color buffer source for pixels + + C Specification + + + void glReadBuffer + GLenum mode + + + + Parameters + + + mode + + + Specifies a color buffer. + Accepted values are + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and + GL_AUXi, + where i is between 0 and the value of GL_AUX_BUFFERS minus 1. + + + + + + Description + + glReadBuffer specifies a color buffer as the source for subsequent + glReadPixels, glCopyTexImage1D, glCopyTexImage2D, + glCopyTexSubImage1D, glCopyTexSubImage2D, + glCopyTexSubImage3D, and + glCopyPixels commands. + mode accepts one of twelve or more predefined values. + (GL_AUX0 through GL_AUX3 are always defined.) + In a fully configured system, + GL_FRONT, + GL_LEFT, and + GL_FRONT_LEFT all name the front left buffer, + GL_FRONT_RIGHT and + GL_RIGHT name the front right buffer, and + GL_BACK_LEFT and + GL_BACK name the back left buffer. + + + Nonstereo double-buffered configurations have only a front left and a + back left buffer. + Single-buffered configurations have a front left and a front right + buffer if stereo, and only a front left buffer if nonstereo. + It is an error to specify a nonexistent buffer to glReadBuffer. + + + mode is initially GL_FRONT in single-buffered configurations + and GL_BACK in double-buffered configurations. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of the twelve + (or more) accepted values. + + + GL_INVALID_OPERATION is generated if mode specifies a buffer + that does not exist. + + + GL_INVALID_OPERATION is generated if glReadBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_READ_BUFFER + + + See Also + + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawBuffer, + glReadPixels + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glReadPixels.xml b/upstream-man-pages/man2/glReadPixels.xml new file mode 100644 index 0000000..296244f --- /dev/null +++ b/upstream-man-pages/man2/glReadPixels.xml @@ -0,0 +1,859 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glReadPixels + 3G + + + glReadPixels + read a block of pixels from the frame buffer + + C Specification + + + void glReadPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLvoid * data + + + + + Parameters + + + x + y + + + Specify the window coordinates of the first pixel + that is read from the frame buffer. + This location is the lower left corner of a rectangular block of pixels. + + + + + width + height + + + Specify the dimensions of the pixel rectangle. + width and height of one correspond to a single pixel. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + Must be one of + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Returns the pixel data. + + + + + + Description + + glReadPixels returns pixel data from the frame buffer, + starting with the pixel whose lower left corner + is at location (x, y), + into client memory starting at location data. + Several parameters control the processing of the pixel data before + it is placed into client memory. + These parameters are set with three commands: + glPixelStore, + glPixelTransfer, and + glPixelMap. + This reference page describes the effects on glReadPixels of most, + but not all of the parameters specified by these three commands. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a block of pixels is + requested, data is treated as a byte offset into the buffer object's data store + rather than a pointer to client memory. + + + When the ARB_imaging extension is supported, the pixel data may + be processed by additional operations including color table lookup, + color matrix transformations, convolutions, histograms, and minimum and + maximum pixel value computations. + + + glReadPixels returns values from each pixel with lower left corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are returned in row order from the lowest to the highest row, + left to right in each row. + + + format specifies the format for the returned pixel values; + accepted values are: + + + + GL_COLOR_INDEX + + + Color indices are read from the color buffer + selected by glReadBuffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_COLOR is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_I_TO_I. + + + + + GL_STENCIL_INDEX + + + Stencil values are read from the stencil buffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_S_TO_S. + + + + + GL_DEPTH_COMPONENT + + + Depth values are read from the depth buffer. + Each component is converted to floating point such that the minimum depth + value maps to 0 and the maximum value maps to 1. + Each component is then multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + and finally clamped to the range + + + + 0 + 1 + + . + + + + + GL_RED + + + + + GL_GREEN + + + + + GL_BLUE + + + + + GL_ALPHA + + + + + GL_RGB + + + + + GL_BGR + + + + + GL_RGBA + + + + + GL_BGRA + + + + + GL_LUMINANCE + + + + + GL_LUMINANCE_ALPHA + + + Processing differs depending on whether color buffers store color indices + or RGBA color components. + If color indices are stored, + they are read from the color buffer selected by glReadBuffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + Indices are then replaced by the red, + green, + blue, + and alpha values obtained by indexing the tables + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A. + Each table must be of size + + + 2 + n + + , + but + n + may be different for + different tables. + Before an index is used to look up a value in a table of + size + + + 2 + n + + , + it must be masked against + + + + 2 + n + + - + 1 + + . + + + If RGBA color components are stored in the color buffers, + they are read from the color buffer selected by glReadBuffer. + Each color component is converted to floating point such that zero intensity + maps to 0.0 and full intensity maps to 1.0. + Each component is then multiplied by GL_c_SCALE and + added to GL_c_BIAS, + where c is RED, GREEN, BLUE, or ALPHA. + Finally, + if GL_MAP_COLOR is GL_TRUE, + each component is clamped to the range + + + + 0 + 1 + + , + scaled to the size of its corresponding table, and is then + replaced by its mapping in the table + GL_PIXEL_MAP_c_TO_c, + where c is R, G, B, or A. + + + Unneeded data is then discarded. + For example, + GL_RED discards the green, blue, and alpha components, + while GL_RGB discards only the alpha component. + GL_LUMINANCE computes a single-component value as the sum of + the red, + green, + and blue components, + and GL_LUMINANCE_ALPHA does the same, + while keeping alpha as a second value. + The final values are clamped to the range + + + + 0 + 1 + + . + + + + + + The shift, + scale, + bias, + and lookup factors just described are all specified by + glPixelTransfer. + The lookup table contents themselves are specified by glPixelMap. + + + Finally, the indices or components + are converted to the proper format, + as specified by type. + If format is GL_COLOR_INDEX or GL_STENCIL_INDEX + and type is not GL_FLOAT, + each index is masked with the mask value given in the following table. + If type is GL_FLOAT, then each integer index is converted to + single-precision floating-point format. + + + If format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA and type is not GL_FLOAT, + each component is multiplied by the multiplier shown in the following table. + If type is GL_FLOAT, then each component is passed as is + (or converted to the client's single-precision floating-point format if + it is different from the one used by the GL). + + + + + + + + + + + + type + + + Index Mask + + + Component Conversion + + + + + + + GL_UNSIGNED_BYTE + + + + + + 2 + 8 + + - + 1 + + + + + + + + + + 2 + 8 + + - + 1 + + + + c + + + + + + + GL_BYTE + + + + + + 2 + 7 + + - + 1 + + + + + + + + + + + + 2 + 8 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_BITMAP + + + + + 1 + + + + + + 1 + + + + + + GL_UNSIGNED_SHORT + + + + + + 2 + 16 + + - + 1 + + + + + + + + + + 2 + 16 + + - + 1 + + + + c + + + + + + + GL_SHORT + + + + + + 2 + 15 + + - + 1 + + + + + + + + + + + + 2 + 16 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_UNSIGNED_INT + + + + + + 2 + 32 + + - + 1 + + + + + + + + + + 2 + 32 + + - + 1 + + + + c + + + + + + + GL_INT + + + + + + 2 + 31 + + - + 1 + + + + + + + + + + + + 2 + 32 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_FLOAT + + + none + + + c + + + + + + + Return values are placed in memory as follows. + If format is + GL_COLOR_INDEX, + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, or + GL_LUMINANCE, + a single value is returned and the data for the + ith + pixel in the + jth + row + is placed in location + + + + + j + + + width + + + i + + . + GL_RGB and GL_BGR return three values, + GL_RGBA and GL_BGRA return four values, + and GL_LUMINANCE_ALPHA returns two values for each pixel, + with all values corresponding to a single pixel occupying contiguous space + in data. + Storage parameters set by glPixelStore, + such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, + affect the way that data is written into memory. + See glPixelStore for a description. + + + Notes + + Values for pixels that lie outside the window + connected to the current GL context are undefined. + + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if format or type is not an + accepted value. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and format is + not GL_COLOR_INDEX or GL_STENCIL_INDEX. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if format is GL_COLOR_INDEX + and the color buffers store RGBA color components. + + + GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. + + + GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT + and there is no depth buffer. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + The formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glReadPixels + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_INDEX_MODE + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glCopyPixels, + glDrawPixels, + glPixelMap, + glPixelStore, + glPixelTransfer, + glReadBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glRect.xml b/upstream-man-pages/man2/glRect.xml new file mode 100644 index 0000000..5b01eaf --- /dev/null +++ b/upstream-man-pages/man2/glRect.xml @@ -0,0 +1,200 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glRect + 3G + + + glRect + draw a rectangle + + C Specification + + + void glRectd + GLdouble x1 + GLdouble y1 + GLdouble x2 + GLdouble y2 + + + + + void glRectf + GLfloat x1 + GLfloat y1 + GLfloat x2 + GLfloat y2 + + + + + void glRecti + GLint x1 + GLint y1 + GLint x2 + GLint y2 + + + + + void glRects + GLshort x1 + GLshort y1 + GLshort x2 + GLshort y2 + + + + Parameters + + + x1 + y1 + + + Specify one vertex of a rectangle. + + + + + x2 + y2 + + + Specify the opposite vertex of the rectangle. + + + + + + C Specification + + + void glRectdv + const GLdouble * v1 + const GLdouble * v2 + + + + + void glRectfv + const GLfloat * v1 + const GLfloat * v2 + + + + + void glRectiv + const GLint * v1 + const GLint * v2 + + + + + void glRectsv + const GLshort * v1 + const GLshort * v2 + + + + Parameters + + + v1 + + + Specifies a pointer to one vertex of a rectangle. + + + + + v2 + + + Specifies a pointer to the opposite vertex of the rectangle. + + + + + + Description + + glRect supports efficient specification of rectangles as two corner points. + Each + rectangle command takes four arguments, + organized either as two consecutive pairs of + + + + x + y + + + coordinates + or as two pointers to arrays, + each containing an + + + + x + y + + + pair. + The resulting rectangle is defined in the + + + + z + = + 0 + + + plane. + + + glRect(x1, y1, x2, y2) + is exactly equivalent to the following sequence: + +glBegin(GL_POLYGON); +glVertex2(x1, y1); +glVertex2(x2, y1); +glVertex2(x2, y2); +glVertex2(x1, y2); +glEnd(); + + Note that if the second vertex is above and to the right of the first vertex, + the rectangle is constructed with a counterclockwise winding. + + + Errors + + GL_INVALID_OPERATION is generated if glRect + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + See Also + + glBegin, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glRenderMode.xml b/upstream-man-pages/man2/glRenderMode.xml new file mode 100644 index 0000000..40f8c28 --- /dev/null +++ b/upstream-man-pages/man2/glRenderMode.xml @@ -0,0 +1,184 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glRenderMode + 3G + + + glRenderMode + set rasterization mode + + C Specification + + + GLint glRenderMode + GLenum mode + + + + Parameters + + + mode + + + Specifies the rasterization mode. + Three values are accepted: + GL_RENDER, + GL_SELECT, and + GL_FEEDBACK. + The initial value is GL_RENDER. + + + + + + Description + + glRenderMode sets the rasterization mode. + It takes one argument, + mode, + which can assume one of three predefined values: + + + + GL_RENDER + + + Render mode. Primitives are rasterized, + producing pixel fragments, + which are written into the frame buffer. + This is the normal mode + and also the default mode. + + + + + GL_SELECT + + + Selection mode. + No pixel fragments are produced, + and no change to the frame buffer contents is made. + Instead, + a record of the names of primitives that would have been drawn + if the render mode had been GL_RENDER is returned in a select buffer, + which must be created (see glSelectBuffer) before selection mode + is entered. + + + + + GL_FEEDBACK + + + Feedback mode. + No pixel fragments are produced, + and no change to the frame buffer contents is made. + Instead, + the coordinates and attributes of vertices that would have been drawn + if the render mode had been GL_RENDER is returned in a feedback buffer, + which must be created (see glFeedbackBuffer) before feedback mode + is entered. + + + + + + The return value of glRenderMode is determined by the render mode at the time + glRenderMode is called, + rather than by mode. + The values returned for the three render modes are as follows: + + + + GL_RENDER + + + 0. + + + + + GL_SELECT + + + The number of hit records transferred to the select buffer. + + + + + GL_FEEDBACK + + + The number of values (not vertices) transferred to the feedback buffer. + + + + + + See the glSelectBuffer and glFeedbackBuffer reference pages for + more details concerning selection and feedback operation. + + + Notes + + If an error is generated, + glRenderMode returns 0 regardless of the current render mode. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of the three + accepted values. + + + GL_INVALID_OPERATION is generated if glSelectBuffer is called + while the render mode is GL_SELECT, + or if glRenderMode is called with argument GL_SELECT before + glSelectBuffer is called at least once. + + + GL_INVALID_OPERATION is generated if glFeedbackBuffer is called + while the render mode is GL_FEEDBACK, + or if glRenderMode is called with argument GL_FEEDBACK before + glFeedbackBuffer is called at least once. + + + GL_INVALID_OPERATION is generated if glRenderMode + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_RENDER_MODE + + + See Also + + glFeedbackBuffer, + glInitNames, + glLoadName, + glPassThrough, + glPushName, + glSelectBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glResetHistogram.xml b/upstream-man-pages/man2/glResetHistogram.xml new file mode 100644 index 0000000..2236505 --- /dev/null +++ b/upstream-man-pages/man2/glResetHistogram.xml @@ -0,0 +1,74 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glResetHistogram + 3G + + + glResetHistogram + reset histogram table entries to zero + + C Specification + + + void glResetHistogram + GLenum target + + + + Parameters + + + target + + + Must be + GL_HISTOGRAM. + + + + + + Description + + glResetHistogram resets all the elements of the current histogram table to zero. + + + Notes + + glResetHistogram is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_HISTOGRAM. + + + GL_INVALID_OPERATION is generated if glResetHistogram is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glHistogram + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glResetMinmax.xml b/upstream-man-pages/man2/glResetMinmax.xml new file mode 100644 index 0000000..d9e7fcc --- /dev/null +++ b/upstream-man-pages/man2/glResetMinmax.xml @@ -0,0 +1,77 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glResetMinmax + 3G + + + glResetMinmax + reset minmax table entries to initial values + + C Specification + + + void glResetMinmax + GLenum target + + + + Parameters + + + target + + + Must be + GL_MINMAX. + + + + + + Description + + glResetMinmax resets the elements of the current minmax table to their + initial values: the ``maximum'' element receives the minimum possible + component values, and the ``minimum'' element receives the maximum + possible component values. + + + Notes + + glResetMinmax is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_MINMAX. + + + GL_INVALID_OPERATION is generated if glResetMinmax is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + See Also + + glMinmax + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glRotate.xml b/upstream-man-pages/man2/glRotate.xml new file mode 100644 index 0000000..7913970 --- /dev/null +++ b/upstream-man-pages/man2/glRotate.xml @@ -0,0 +1,418 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glRotate + 3G + + + glRotate + multiply the current matrix by a rotation matrix + + C Specification + + + void glRotated + GLdouble angle + GLdouble x + GLdouble y + GLdouble z + + + + + void glRotatef + GLfloat angle + GLfloat x + GLfloat y + GLfloat z + + + + + Parameters + + + angle + + + Specifies the angle of rotation, in degrees. + + + + + x + y + z + + + Specify the x, y, and z coordinates of a vector, respectively. + + + + + + Description + + glRotate produces a rotation of angle degrees around + the vector + + + + x + y + z + + . + The current matrix (see glMatrixMode) is multiplied by a rotation + matrix with the product + replacing the current matrix, as if glMultMatrix were called + with the following matrix as its argument: + + + + + + + + + + + x + 2 + + + + + 1 + - + c + + + + + + c + + + + + x + + + y + + + + 1 + - + c + + + + - + z + + s + + + + + x + + + z + + + + 1 + - + c + + + + + + y + + s + + + + 0 + + + + + + y + + + x + + + + 1 + - + c + + + + + + z + + s + + + + + + y + 2 + + + + + 1 + - + c + + + + + + c + + + + + y + + + z + + + + 1 + - + c + + + + - + x + + s + + + + 0 + + + + + + x + + + z + + + + 1 + - + c + + + + - + y + + s + + + + + y + + + z + + + + 1 + - + c + + + + + + x + + s + + + + + + z + 2 + + + + + 1 + - + c + + + + + + c + + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + + + + + + Where + + + + c + = + + cos + + + angle + + + + , + + + + s + = + + sin + + + angle + + + + , + and + + + + + + x + y + z + + + = + 1 + + + (if not, the GL + will normalize this vector). + + + + + + + If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, + all objects drawn after glRotate is called are rotated. + Use glPushMatrix and glPopMatrix to save and restore + the unrotated coordinate system. + + + Notes + + This rotation follows the right-hand rule, so + if the vector + + + + x + y + z + + + points toward the + user, the rotation will be counterclockwise. + + + Errors + + GL_INVALID_OPERATION is generated if glRotate + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glMatrixMode, + glMultMatrix, + glPushMatrix, + glScale, + glTranslate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glSampleCoverage.xml b/upstream-man-pages/man2/glSampleCoverage.xml new file mode 100644 index 0000000..f79e44b --- /dev/null +++ b/upstream-man-pages/man2/glSampleCoverage.xml @@ -0,0 +1,131 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSampleCoverage + 3G + + + glSampleCoverage + specify multisample coverage parameters + + C Specification + + + void glSampleCoverage + GLclampf value + GLboolean invert + + + + + Parameters + + + value + + + Specify a single floating-point sample coverage value. The value is + clamped to the range + + + + 0 + 1 + + . + The initial value is 1.0. + + + + + invert + + + Specify a single boolean value representing if the coverage masks should be + inverted. GL_TRUE and GL_FALSE are accepted. The initial value + is GL_FALSE. + + + + + + Description + + Multisampling samples a pixel multiple times at various + implementation-dependent subpixel locations to generate antialiasing + effects. Multisampling transparently antialiases points, lines, polygons, + bitmaps, and images if it is enabled. + + + value is used in constructing a temporary mask used in determining which + samples will be used in resolving the final fragment color. This mask is + bitwise-anded with the coverage mask generated from the multisampling + computation. If the invert flag is set, the temporary mask is inverted + (all bits flipped) and then the bitwise-and is computed. + + + If an implementation does not have any multisample buffers available, or + multisampling is disabled, rasterization occurs with only a single sample + computing a pixel's final RGB color. + + + Provided an implementation supports multisample buffers, and multisampling + is enabled, then a pixel's final color is generated by combining several + samples per pixel. Each sample contains color, depth, and stencil + information, allowing those operations to be performed on each sample. + + + Notes + + glSampleCoverage is available only if the GL version is 1.3 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glSampleCoverage is executed between the + execution of glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_SAMPLE_COVERAGE_VALUE + + + glGet with argument GL_SAMPLE_COVERAGE_INVERT + + + glIsEnabled with argument GL_MULTISAMPLE + + + glIsEnabled with argument GL_SAMPLE_ALPHA_TO_COVERAGE + + + glIsEnabled with argument GL_SAMPLE_ALPHA_TO_ONE + + + glIsEnabled with argument GL_SAMPLE_COVERAGE + + + See Also + + glEnable, + glPushAttrib + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glScale.xml b/upstream-man-pages/man2/glScale.xml new file mode 100644 index 0000000..fd290f4 --- /dev/null +++ b/upstream-man-pages/man2/glScale.xml @@ -0,0 +1,192 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glScale + 3G + + + glScale + multiply the current matrix by a general scaling matrix + + C Specification + + + void glScaled + GLdouble x + GLdouble y + GLdouble z + + + + + void glScalef + GLfloat x + GLfloat y + GLfloat z + + + + + Parameters + + + x + y + z + + + Specify scale factors along the x, y, and z axes, respectively. + + + + + + Description + + glScale produces a nonuniform scaling along the x, y, and + z axes. + The three parameters indicate the desired scale factor along + each of the three axes. + + + The current matrix + (see glMatrixMode) + is multiplied by this scale matrix, + and the product replaces the current matrix + as if glMultMatrix were called with the following matrix + as its argument: + + + + + + + + + x + + + 0 + + + 0 + + + 0 + + + + + 0 + + + y + + + 0 + + + 0 + + + + + 0 + + + 0 + + + z + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + + + + If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, + all objects drawn after glScale is called are scaled. + + + Use glPushMatrix and glPopMatrix to save and restore + the unscaled coordinate + system. + + + Notes + + If scale factors other than 1 are applied to the modelview matrix + and lighting is enabled, lighting often appears wrong. + In that case, enable automatic normalization of normals by + calling glEnable with the argument GL_NORMALIZE. + + + Errors + + GL_INVALID_OPERATION is generated if glScale + is executed between the execution of + glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glMatrixMode, + glMultMatrix, + glPushMatrix, + glRotate, + glTranslate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glScissor.xml b/upstream-man-pages/man2/glScissor.xml new file mode 100644 index 0000000..ee4d528 --- /dev/null +++ b/upstream-man-pages/man2/glScissor.xml @@ -0,0 +1,114 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glScissor + 3G + + + glScissor + define the scissor box + + C Specification + + + void glScissor + GLint x + GLint y + GLsizei width + GLsizei height + + + + Parameters + + + x + y + + + Specify the lower left corner of the scissor box. + Initially (0, 0). + + + + + width + height + + + Specify the width and height of the scissor box. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + + Description + + glScissor defines a rectangle, called the scissor box, + in window coordinates. + The first two arguments, + x and y, + specify the lower left corner of the box. + width and height specify the width and height of the box. + + + To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. + + + When the scissor test is disabled, + it is as though the scissor box includes the entire window. + + + Errors + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if glScissor + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_SCISSOR_BOX + + + glIsEnabled with argument GL_SCISSOR_TEST + + + See Also + + glEnable, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glSecondaryColor.xml b/upstream-man-pages/man2/glSecondaryColor.xml new file mode 100644 index 0000000..7def569 --- /dev/null +++ b/upstream-man-pages/man2/glSecondaryColor.xml @@ -0,0 +1,255 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSecondaryColor + 3G + + + glSecondaryColor + set the current secondary color + + C Specification + + + void glSecondaryColor3b + GLbyte red + GLbyte green + GLbyte blue + + + + + void glSecondaryColor3s + GLshort red + GLshort green + GLshort blue + + + + + void glSecondaryColor3i + GLint red + GLint green + GLint blue + + + + + void glSecondaryColor3f + GLfloat red + GLfloat green + GLfloat blue + + + + + void glSecondaryColor3d + GLdouble red + GLdouble green + GLdouble blue + + + + + void glSecondaryColor3ub + GLubyte red + GLubyte green + GLubyte blue + + + + + void glSecondaryColor3us + GLushort red + GLushort green + GLushort blue + + + + + void glSecondaryColor3ui + GLuint red + GLuint green + GLuint blue + + + + + Parameters + + + red + green + blue + + + Specify new red, green, and blue values for the current secondary color. + + + + + + C Specification + + + void glSecondaryColor3bv + const GLbyte * v + + + + + void glSecondaryColor3sv + const GLshort * v + + + + + void glSecondaryColor3iv + const GLint * v + + + + + void glSecondaryColor3fv + const GLfloat * v + + + + + void glSecondaryColor3dv + const GLdouble * v + + + + + void glSecondaryColor3ubv + const GLubyte * v + + + + + void glSecondaryColor3usv + const GLushort * v + + + + + void glSecondaryColor3uiv + const GLuint * v + + + + Parameters + + + v + + + Specifies a pointer to an array that contains red, green, blue. + + + + + + Description + + The GL stores both a primary four-valued RGBA color and a + secondary four-valued RGBA color (where alpha is always set to 0.0) that is + associated with every vertex. + + + The secondary color is interpolated and applied to each fragment during + rasterization when GL_COLOR_SUM is enabled. When lighting is enabled, + and GL_SEPARATE_SPECULAR_COLOR is specified, the value of the + secondary color is assigned the value computed from the specular term of + the lighting computation. Both the primary and secondary current colors are + applied to each fragment, regardless of the state of GL_COLOR_SUM, + under such conditions. When GL_SEPARATE_SPECULAR_COLOR is specified, + the value returned from querying the current secondary color is undefined. + + + glSecondaryColor3b, glSecondaryColor3s, and + glSecondaryColor3i take three signed byte, short, or long integers as + arguments. When v is appended to the name, the color commands can + take a pointer to an array of such values. + + + Color values are stored in floating-point format, with + unspecified mantissa and exponent sizes. Unsigned integer color + components, when specified, are linearly mapped to floating-point values + such that the largest representable value maps to 1.0 (full intensity), and + 0 maps to 0.0 (zero intensity). Signed integer color components, when + specified, are linearly mapped to floating-point values such that the most + positive representable value maps to 1.0, and the most negative + representable value maps to + + + -1.0 + . + (Note that this mapping does not convert + 0 precisely to 0.0). Floating-point values are mapped directly. + + + Neither floating-point nor signed integer values are clamped to the range + + + + 0 + 1 + + + before the current color is updated. However, color components are + clamped to this range before they are interpolated or written into a color + buffer. + + + Notes + + glSecondaryColor is available only if the GL version is 1.4 or greater. + + + The initial value for the secondary color is (0, 0, 0, 0). + + + The secondary color can be updated at any time. In particular, glSecondaryColor can + be called between a call to glBegin and the corresponding call to + glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_SECONDARY_COLOR + + + glGet with argument GL_RGBA_MODE + + + glIsEnabled with argument GL_COLOR_SUM + + + See Also + + glColor, + glIndex, + glIsEnabled, + glLightModel, + glSecondaryColorPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glSecondaryColorPointer.xml b/upstream-man-pages/man2/glSecondaryColorPointer.xml new file mode 100644 index 0000000..0c28b18 --- /dev/null +++ b/upstream-man-pages/man2/glSecondaryColorPointer.xml @@ -0,0 +1,208 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSecondaryColorPointer + 3G + + + glSecondaryColorPointer + define an array of secondary colors + + C Specification + + + void glSecondaryColorPointer + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + size + + + Specifies the number of components per color. Must be 3. + + + + + type + + + Specifies the data type of each color component in the array. + Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + or + GL_DOUBLE + are accepted. + The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive colors. + If stride is 0, the colors are understood to be + tightly packed in the array. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first component of the first color element + in the array. The initial value is 0. + + + + + + Description + + glSecondaryColorPointer specifies the location and data format of an array of color components + to use when rendering. + size specifies the number of components per color, and must be 3. + type specifies the data type of each color component, and stride + specifies the byte stride from one color to the next, allowing vertices and + attributes to be packed into a single array or stored in separate arrays. + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a secondary color array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as secondary color vertex array + client-side state (GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING). + + + When a secondary color array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the secondary color array, call glEnableClientState and + glDisableClientState with the argument + GL_SECONDARY_COLOR_ARRAY. If enabled, the secondary color array is used when + glArrayElement, glDrawArrays, glMultiDrawArrays, + glDrawElements, glMultiDrawElements, or glDrawRangeElements + is called. + + + Notes + + glSecondaryColorPointer is available only if the GL version is 1.4 or greater. + + + Secondary colors are not supported for interleaved vertex array formats + (see glInterleavedArrays). + + + The secondary color array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glSecondaryColorPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glSecondaryColorPointer is typically implemented on the client side. + + + Secondary color array parameters are client-side state and are therefore + not saved or restored by glPushAttrib and glPopAttrib. Use + glPushClientAttrib and glPopClientAttrib instead. + + + Errors + + GL_INVALID_VALUE is generated if size is not 3. + + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_SECONDARY_COLOR_ARRAY + + + glGet with argument GL_SECONDARY_COLOR_ARRAY_SIZE + + + glGet with argument GL_SECONDARY_COLOR_ARRAY_TYPE + + + glGet with argument GL_SECONDARY_COLOR_ARRAY_STRIDE + + + glGet with argument GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_SECONDARY_COLOR_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColor, + glTexCoordPointer, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glSelectBuffer.xml b/upstream-man-pages/man2/glSelectBuffer.xml new file mode 100644 index 0000000..ed5cc4f --- /dev/null +++ b/upstream-man-pages/man2/glSelectBuffer.xml @@ -0,0 +1,176 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSelectBuffer + 3G + + + glSelectBuffer + establish a buffer for selection mode values + + C Specification + + + void glSelectBuffer + GLsizei size + GLuint * buffer + + + + + Parameters + + + size + + + Specifies the size of buffer. + + + + + buffer + + + Returns the selection data. + + + + + + Description + + glSelectBuffer has two arguments: + buffer is a pointer to an array of unsigned integers, + and size indicates the size of the array. + buffer returns values from the name stack + (see glInitNames, glLoadName, glPushName) + when the rendering mode is GL_SELECT (see glRenderMode). + glSelectBuffer must be issued before selection mode is enabled, + and it must not be issued while the rendering mode is GL_SELECT. + + + A programmer can use selection to determine which primitives + are drawn into some region of a window. + The region is defined by the current modelview and perspective matrices. + + + In selection mode, no pixel fragments are produced from rasterization. + Instead, + if a primitive or a raster position intersects the clipping + volume defined by the viewing frustum + and the user-defined clipping planes, + this primitive causes a selection hit. + (With polygons, no hit occurs if the polygon is culled.) + When a change is made to the name stack, + or when glRenderMode is called, + a hit record is copied to buffer if any hits have occurred since the + last such event + (name stack change or + glRenderMode call). + The hit record consists of the number of names in the name stack at the + time of the event, followed by the minimum and maximum depth values + of all vertices that hit since the previous event, + followed by the name stack contents, + bottom name first. + + + Depth values (which are in the range [0,1]) are multiplied by + + + + 2 + 32 + + - + 1 + + , + before being placed in the hit record. + + + An internal index into buffer is reset to 0 whenever selection mode + is entered. + Each time a hit record is copied into buffer, + the index is incremented to point to the cell just past the end + of the block of names\(emthat is, to the next available cell + If the hit record is larger than the number of remaining locations in buffer, + as much data as can fit is copied, + and the overflow flag is set. + If the name stack is empty when a hit record is copied, + that record consists of 0 followed by the minimum and maximum depth values. + + + To exit selection mode, call glRenderMode with an argument + other than GL_SELECT. + Whenever glRenderMode is called while the render mode is GL_SELECT, + it returns the number of hit records copied to buffer, + resets the overflow flag and the selection buffer pointer, + and initializes the name stack to be empty. + If the overflow bit was set when glRenderMode was called, + a negative hit record count is returned. + + + Notes + + The contents of buffer is undefined until glRenderMode is called + with an argument other than GL_SELECT. + + + glBegin/glEnd primitives and calls to glRasterPos + can result in hits. glWindowPos will always generate a selection hit. + + + Errors + + GL_INVALID_VALUE is generated if size is negative. + + + GL_INVALID_OPERATION is generated if glSelectBuffer is called while the + render mode is GL_SELECT, + or if glRenderMode is called with argument GL_SELECT before + glSelectBuffer is called at least once. + + + GL_INVALID_OPERATION is generated if glSelectBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_NAME_STACK_DEPTH + + + glGet with argument GL_SELECTION_BUFFER_SIZE + + + glGetPointerv with argument GL_SELECTION_BUFFER_POINTER + + + See Also + + glFeedbackBuffer, + glInitNames, + glLoadName, + glPushName, + glRenderMode + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glSeparableFilter2D.xml b/upstream-man-pages/man2/glSeparableFilter2D.xml new file mode 100644 index 0000000..399418e --- /dev/null +++ b/upstream-man-pages/man2/glSeparableFilter2D.xml @@ -0,0 +1,476 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSeparableFilter2D + 3G + + + glSeparableFilter2D + define a separable two-dimensional convolution filter + + C Specification + + + void glSeparableFilter2D + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + GLenum format + GLenum type + const GLvoid * row + const GLvoid * column + + + + Parameters + + + target + + + Must be GL_SEPARABLE_2D. + + + + + internalformat + + + The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. + + + + + width + + + The number of elements in the pixel array referenced by row. + (This is the width of the separable filter kernel.) + + + + + height + + + The number of elements in the pixel array referenced by column. + (This is the height of the separable filter kernel.) + + + + + format + + + The format of the pixel data in row and column. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_INTENSITY, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + The type of the pixel data in row and column. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. + + + + + row + + + Pointer to a one-dimensional array of pixel data that is processed to + build the row filter kernel. + + + + + column + + + Pointer to a one-dimensional array of pixel data that is processed to + build the column filter kernel. + + + + + + Description + + glSeparableFilter2D builds a two-dimensional separable convolution filter kernel from + two arrays of pixels. + + + The pixel arrays specified by (width, format, type, row) + and (height, format, type, column) are processed just as if + they had been passed to glDrawPixels, + but processing stops after the final expansion to RGBA is completed. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a convolution filter is + specified, row and column are treated as byte offsets into the buffer object's data store. + + + Next, the R, G, B, and A components of all pixels in both arrays are scaled + by the four separable 2D GL_CONVOLUTION_FILTER_SCALE parameters and + biased by the four separable 2D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_SEPARABLE_2D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. + + + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: + + + + + + + + + + + + + + Internal Format + + + Red + + + Green + + + Blue + + + Alpha + + + Luminance + + + Intensity + + + + + + + GL_LUMINANCE + + + + + + + + + + + R + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + + + + A + + + R + + + + + + + + GL_INTENSITY + + + + + + + + + + + + + R + + + + + GL_RGB + + + R + + + G + + + B + + + + + + + + + + + + GL_RGBA + + + R + + + G + + + B + + + A + + + + + + + + + + + + The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + They form two one-dimensional filter kernel images. + The row image is indexed by coordinate i starting at zero and + increasing from left to right. + Each location in the row image is derived from element i of row. + The column image is indexed by coordinate j starting at zero + and increasing from bottom to top. + Each location in the column image is derived from element j of column. + + + Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. + + + Notes + + glSeparableFilter2D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_SEPARABLE_2D. + + + GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not one of the allowable + values. + + + GL_INVALID_ENUM is generated if type is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_SEPARABLE_2D and name + GL_MAX_CONVOLUTION_WIDTH. + + + GL_INVALID_VALUE is generated if height is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_SEPARABLE_2D and name + GL_MAX_CONVOLUTION_HEIGHT. + + + GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and row or + column is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glSeparableFilter2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetConvolutionParameter, glGetSeparableFilter + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glConvolutionFilter1D, + glConvolutionFilter2D, + glConvolutionParameter, + glPixelTransfer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glShadeModel.xml b/upstream-man-pages/man2/glShadeModel.xml new file mode 100644 index 0000000..db51378 --- /dev/null +++ b/upstream-man-pages/man2/glShadeModel.xml @@ -0,0 +1,232 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glShadeModel + 3G + + + glShadeModel + select flat or smooth shading + + C Specification + + + void glShadeModel + GLenum mode + + + + + Parameters + + + mode + + + Specifies a symbolic value representing a shading technique. + Accepted values are GL_FLAT and GL_SMOOTH. + The initial value is GL_SMOOTH. + + + + + + Description + + GL primitives can have either flat or smooth shading. + Smooth shading, + the default, + causes the computed colors of vertices to be interpolated as the + primitive is rasterized, + typically assigning different colors to each resulting pixel fragment. + Flat shading selects the computed color of just one vertex + and assigns it to all the pixel fragments + generated by rasterizing a single primitive. + In either case, the computed color of a vertex is the result of + lighting if lighting is enabled, + or it is the current color at the time the vertex was specified if + lighting is disabled. + + + Flat and smooth shading are indistinguishable for points. + Starting when glBegin is issued and counting vertices and + primitives from 1, the GL gives each flat-shaded line segment + i + the + computed color of vertex + + + + i + + + 1 + + , + its second vertex. + Counting similarly from 1, + the GL gives each flat-shaded polygon the computed color of the vertex listed + in the following table. + This is the last vertex to specify the polygon in all cases except single + polygons, + where the first vertex specifies the flat-shaded color. + + + + + + + + + + + Primitive Type of Polygon + i + + + Vertex + + + + + + + Single polygon + ( + + + i + == + 1 + + ) + + + 1 + + + + + Triangle strip + + + + + + i + + + 2 + + + + + + + Triangle fan + + + + + + i + + + 2 + + + + + + + Independent triangle + + + + + + 3 + + i + + + + + + + Quad strip + + + + + + 2 + + i + + + 2 + + + + + + + Independent quad + + + + + + 4 + + i + + + + + + + + + Flat and smooth shading are specified by glShadeModel with mode set to + GL_FLAT and GL_SMOOTH, respectively. + + + Errors + + GL_INVALID_ENUM is generated if mode is any value other than + GL_FLAT or GL_SMOOTH. + + + GL_INVALID_OPERATION is generated if glShadeModel + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_SHADE_MODEL + + + See Also + + glBegin, + glColor, + glLight, + glLightModel + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glShaderSource.xml b/upstream-man-pages/man2/glShaderSource.xml new file mode 100644 index 0000000..740d3c9 --- /dev/null +++ b/upstream-man-pages/man2/glShaderSource.xml @@ -0,0 +1,127 @@ + + + + + glShaderSource + 3G + + + glShaderSource + Replaces the source code in a shader object + + C Specification + + + void glShaderSource + GLuint shader + GLsizei count + const GLchar **string + const GLint *length + + + + Parameters + + + shader + + Specifies the handle of the shader object + whose source code is to be replaced. + + + + count + + Specifies the number of elements in the + string and + length + arrays. + + + + string + + Specifies an array of pointers to strings + containing the source code to be loaded into the + shader. + + + + length + + Specifies an array of string lengths. + + + + + Description + glShaderSource sets the source code + in shader to the source code in the array + of strings specified by string. Any + source code previously stored in the shader object is completely + replaced. The number of strings in the array is specified by + count. If length + is NULL, each string is assumed to be null + terminated. If length is a value other + than NULL, it points to an array containing + a string length for each of the corresponding elements of + string. Each element in the + length array may contain the length of + the corresponding string (the null character is not counted as + part of the string length) or a value less than 0 to indicate + that the string is null terminated. The source code strings are + not scanned or parsed at this time; they are simply copied into + the specified shader object. + + Notes + glShaderSource is available only if + the GL version is 2.0 or greater. + + OpenGL copies the shader source code strings when + glShaderSource is called, so an application + may free its copy of the source code strings immediately after + the function returns. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + count is less than 0. + + GL_INVALID_OPERATION is generated if + glShaderSource is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetShader + with arguments shader and + GL_SHADER_SOURCE_LENGTH + + glGetShaderSource + with argument shader + + glIsShader + + See Also + glCompileShader, + glCreateShader, + glDeleteShader + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glStencilFunc.xml b/upstream-man-pages/man2/glStencilFunc.xml new file mode 100644 index 0000000..467b6f2 --- /dev/null +++ b/upstream-man-pages/man2/glStencilFunc.xml @@ -0,0 +1,299 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilFunc + 3G + + + glStencilFunc + set front and back function and reference value for stencil testing + + + C Specification + + + void glStencilFunc + GLenum func + GLint ref + GLuint mask + + + + Parameters + + + func + + + Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. + + + + + mask + + + Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + Stencil planes are first drawn into using GL drawing primitives, then + geometry and images are rendered using the stencil planes to mask out + portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. + + + There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values. Use glStencilFuncSeparate + to set front and back stencil state to different values. + + + func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. + + + If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + + + The following values are accepted by func: + + + + GL_NEVER + + + Always fails. + + + + + GL_LESS + + + Passes if ( ref & mask ) < ( stencil & mask ). + + + + + GL_LEQUAL + + + Passes if ( ref & mask ) <= ( stencil & mask ). + + + + + GL_GREATER + + + Passes if ( ref & mask ) > ( stencil & mask ). + + + + + GL_GEQUAL + + + Passes if ( ref & mask ) >= ( stencil & mask ). + + + + + GL_EQUAL + + + Passes if ( ref & mask ) = ( stencil & mask ). + + + + + GL_NOTEQUAL + + + Passes if ( ref & mask ) != ( stencil & mask ). + + + + + GL_ALWAYS + + + Always passes. + + + + + + Notes + + Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. + + + glStencilFunc is the same as + calling glStencilFuncSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. + + + GL_INVALID_OPERATION is generated if glStencilFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glAlphaFunc, + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glStencilFuncSeparate.xml b/upstream-man-pages/man2/glStencilFuncSeparate.xml new file mode 100644 index 0000000..8a9c0fd --- /dev/null +++ b/upstream-man-pages/man2/glStencilFuncSeparate.xml @@ -0,0 +1,312 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilFuncSeparate + 3G + + + glStencilFuncSeparate + set front and/or back function and reference value for stencil testing + + + C Specification + + + void glStencilFuncSeparate + GLenum face + GLenum func + GLint ref + GLuint mask + + + + Parameters + + + face + + + Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + func + + + Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. + + + + + mask + + + Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. + + + There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values, as if + glStencilFuncSeparate were called + with face set to GL_FRONT_AND_BACK. + + + func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. + + + If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + + + The following values are accepted by func: + + + + GL_NEVER + + + Always fails. + + + + + GL_LESS + + + Passes if ( ref & mask ) < ( stencil & mask ). + + + + + GL_LEQUAL + + + Passes if ( ref & mask ) <= ( stencil & mask ). + + + + + GL_GREATER + + + Passes if ( ref & mask ) > ( stencil & mask ). + + + + + GL_GEQUAL + + + Passes if ( ref & mask ) >= ( stencil & mask ). + + + + + GL_EQUAL + + + Passes if ( ref & mask ) = ( stencil & mask ). + + + + + GL_NOTEQUAL + + + Passes if ( ref & mask ) != ( stencil & mask ). + + + + + GL_ALWAYS + + + Always passes. + + + + + + Notes + + glStencilFuncSeparate is available only if + the GL version is 2.0 or greater. + + + Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. + + + Errors + + GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. + + + GL_INVALID_OPERATION is generated if glStencilFuncSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glAlphaFunc, + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glStencilMask.xml b/upstream-man-pages/man2/glStencilMask.xml new file mode 100644 index 0000000..744631b --- /dev/null +++ b/upstream-man-pages/man2/glStencilMask.xml @@ -0,0 +1,107 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilMask + 3G + + + glStencilMask + control the front and back writing of individual bits in the stencil planes + + C Specification + + + void glStencilMask + GLuint mask + + + + + Parameters + + + mask + + + Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. + + + + + + Description + + glStencilMask controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. + + + There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values. Use glStencilMaskSeparate + to set front and back stencil writemasks to different values. + + + Notes + + glStencilMask is the same as + calling glStencilMaskSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_OPERATION is generated if glStencilMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS + + + See Also + + glColorMask, + glDepthMask, + glIndexMask, + glStencilFunc, + glStencilFuncSeparate, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glStencilMaskSeparate.xml b/upstream-man-pages/man2/glStencilMaskSeparate.xml new file mode 100644 index 0000000..4616a76 --- /dev/null +++ b/upstream-man-pages/man2/glStencilMaskSeparate.xml @@ -0,0 +1,120 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilMaskSeparate + 3G + + + glStencilMaskSeparate + control the front and/or back writing of individual bits in the stencil planes + + C Specification + + + void glStencilMaskSeparate + GLenum face + GLuint mask + + + + + Parameters + + + face + + + Specifies whether the front and/or back stencil writemask is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + mask + + + Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. + + + + + + Description + + glStencilMaskSeparate controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. + + + There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values, as if + glStencilMaskSeparate were called + with face set to GL_FRONT_AND_BACK. + + + Notes + + glStencilMaskSeparate is available only if + the GL version is 2.0 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glStencilMaskSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS + + + See Also + + glColorMask, + glDepthMask, + glIndexMask, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glStencilOp.xml b/upstream-man-pages/man2/glStencilOp.xml new file mode 100644 index 0000000..d9e4f1e --- /dev/null +++ b/upstream-man-pages/man2/glStencilOp.xml @@ -0,0 +1,280 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilOp + 3G + + + glStencilOp + set front and back stencil test actions + + + C Specification + + + void glStencilOp + GLenum sfail + GLenum dpfail + GLenum dppass + + + + Parameters + + + sfail + + + Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. + + + + + dpfail + + + Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + dppass + + + Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. + + + There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values. Use glStencilOpSeparate + to set front and back stencil state to different values. + + + glStencilOp takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. + + + + GL_KEEP + + + Keeps the current value. + + + + + GL_ZERO + + + Sets the stencil buffer value to 0. + + + + + GL_REPLACE + + + Sets the stencil buffer value to ref, + as specified by glStencilFunc. + + + + + GL_INCR + + + Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. + + + + + GL_INCR_WRAP + + + Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. + + + + + GL_DECR + + + Decrements the current stencil buffer value. + Clamps to 0. + + + + + GL_DECR_WRAP + + + Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. + + + + + GL_INVERT + + + Bitwise inverts the current stencil buffer value. + + + + + + Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. + + + The other two arguments to glStencilOp specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. + + + Notes + + GL_DECR_WRAP and GL_INCR_WRAP are available only if the GL + version is 1.4 or greater. + + + Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil tests always pass, + regardless of any call to glStencilOp. + + + glStencilOp is the same as + calling glStencilOpSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. + + + GL_INVALID_OPERATION is generated if glStencilOp + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glAlphaFunc, + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glStencilOpSeparate.xml b/upstream-man-pages/man2/glStencilOpSeparate.xml new file mode 100644 index 0000000..4be1059 --- /dev/null +++ b/upstream-man-pages/man2/glStencilOpSeparate.xml @@ -0,0 +1,292 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilOpSeparate + 3G + + + glStencilOpSeparate + set front and/or back stencil test actions + + + C Specification + + + void glStencilOpSeparate + GLenum face + GLenum sfail + GLenum dpfail + GLenum dppass + + + + Parameters + + + face + + + Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + sfail + + + Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. + + + + + dpfail + + + Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + dppass + + + Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. + + + There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values, as if + glStencilOpSeparate were called + with face set to GL_FRONT_AND_BACK. + + + glStencilOpSeparate takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. + + + + GL_KEEP + + + Keeps the current value. + + + + + GL_ZERO + + + Sets the stencil buffer value to 0. + + + + + GL_REPLACE + + + Sets the stencil buffer value to ref, + as specified by glStencilFunc. + + + + + GL_INCR + + + Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. + + + + + GL_INCR_WRAP + + + Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. + + + + + GL_DECR + + + Decrements the current stencil buffer value. + Clamps to 0. + + + + + GL_DECR_WRAP + + + Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. + + + + + GL_INVERT + + + Bitwise inverts the current stencil buffer value. + + + + + + Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. + + + The other two arguments to glStencilOpSeparate specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. + + + Notes + + glStencilOpSeparate is available only if + the GL version is 2.0 or greater. + + + Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil test always passes. + + + Errors + + GL_INVALID_ENUM is generated if face is any value + other than GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK. + + + GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. + + + GL_INVALID_OPERATION is generated if glStencilOpSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glAlphaFunc, + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glTexCoord.xml b/upstream-man-pages/man2/glTexCoord.xml new file mode 100644 index 0000000..2d91771 --- /dev/null +++ b/upstream-man-pages/man2/glTexCoord.xml @@ -0,0 +1,368 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexCoord + 3G + + + glTexCoord + set the current texture coordinates + + C Specification + + + void glTexCoord1s + GLshort s + + + + + void glTexCoord1i + GLint s + + + + + void glTexCoord1f + GLfloat s + + + + + void glTexCoord1d + GLdouble s + + + + + void glTexCoord2s + GLshort s + GLshort t + + + + + void glTexCoord2i + GLint s + GLint t + + + + + void glTexCoord2f + GLfloat s + GLfloat t + + + + + void glTexCoord2d + GLdouble s + GLdouble t + + + + + void glTexCoord3s + GLshort s + GLshort t + GLshort r + + + + + void glTexCoord3i + GLint s + GLint t + GLint r + + + + + void glTexCoord3f + GLfloat s + GLfloat t + GLfloat r + + + + + void glTexCoord3d + GLdouble s + GLdouble t + GLdouble r + + + + + void glTexCoord4s + GLshort s + GLshort t + GLshort r + GLshort q + + + + + void glTexCoord4i + GLint s + GLint t + GLint r + GLint q + + + + + void glTexCoord4f + GLfloat s + GLfloat t + GLfloat r + GLfloat q + + + + + void glTexCoord4d + GLdouble s + GLdouble t + GLdouble r + GLdouble q + + + + Parameters + + + s + t + r + q + + + Specify s, t, r, and q texture coordinates. + Not all parameters are present in all forms of the command. + + + + + + C Specification + + + void glTexCoord1sv + const GLshort * v + + + + + void glTexCoord1iv + const GLint * v + + + + + void glTexCoord1fv + const GLfloat * v + + + + + void glTexCoord1dv + const GLdouble * v + + + + + void glTexCoord2sv + const GLshort * v + + + + + void glTexCoord2iv + const GLint * v + + + + + void glTexCoord2fv + const GLfloat * v + + + + + void glTexCoord2dv + const GLdouble * v + + + + + void glTexCoord3sv + const GLshort * v + + + + + void glTexCoord3iv + const GLint * v + + + + + void glTexCoord3fv + const GLfloat * v + + + + + void glTexCoord3dv + const GLdouble * v + + + + + void glTexCoord4sv + const GLshort * v + + + + + void glTexCoord4iv + const GLint * v + + + + + void glTexCoord4fv + const GLfloat * v + + + + + void glTexCoord4dv + const GLdouble * v + + + + Parameters + + + v + + + Specifies a pointer to an array of one, two, three, or four elements, + which in turn specify the + s, + t, + r, and + q texture coordinates. + + + + + + Description + + glTexCoord specifies texture coordinates in + one, + two, + three, or + four dimensions. + glTexCoord1 sets the current texture coordinates to + + + + s + 0 + 0 + 1 + + ; + a call to + glTexCoord2 sets them to + + + + s + t + 0 + 1 + + . + Similarly, glTexCoord3 specifies the texture coordinates as + + + + s + t + r + 1 + + , + and + glTexCoord4 defines all four components explicitly as + + + + s + t + r + q + + . + + + The current texture coordinates are part of the data + that is associated with each vertex and with the current + raster position. + Initially, the values for + s, + t, + r, and + q + are (0, 0, 0, 1). + + + + + Notes + + The current texture coordinates can be updated at any time. + In particular, + glTexCoord can be called between a call to glBegin and the corresponding + call to glEnd. + + + When the ARB_imaging extension is supported, glTexCoord always + updates texture unit GL_TEXTURE0. + + + Associated Gets + + glGet with argument GL_CURRENT_TEXTURE_COORDS + + + See Also + + glMultiTexCoord, + glTexCoordPointer, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexCoordPointer.xml b/upstream-man-pages/man2/glTexCoordPointer.xml new file mode 100644 index 0000000..79b53f9 --- /dev/null +++ b/upstream-man-pages/man2/glTexCoordPointer.xml @@ -0,0 +1,213 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexCoordPointer + 3G + + + glTexCoordPointer + define an array of texture coordinates + + C Specification + + + void glTexCoordPointer + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + size + + + Specifies the number of coordinates per array element. Must be 1, 2, 3, + or 4. The initial value is 4. + + + + + type + + + Specifies the data type of each texture coordinate. + Symbolic constants + GL_SHORT, + GL_INT, + GL_FLOAT, + or GL_DOUBLE + are accepted. The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive texture coordinate sets. + If stride is 0, the array elements are understood + to be tightly packed. The initial value is 0. + + + + + pointer + + + Specifies a pointer to the first coordinate of the first texture coordinate set in the + array. The initial value is 0. + + + + + + Description + + glTexCoordPointer specifies the location and data format of an array of texture + coordinates to use when rendering. + size specifies the number of coordinates per + texture coordinate set, and must be 1, 2, 3, or 4. + type specifies the data type of each texture coordinate, + and stride specifies the byte stride from one + texture coordinate set to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see + glInterleavedArrays.) + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a texture coordinate array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as texture coordinate vertex array + client-side state (GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING). + + + When a texture coordinate array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable a texture coordinate array, call glEnableClientState and + glDisableClientState with the argument + GL_TEXTURE_COORD_ARRAY. If enabled, the texture coordinate array is used when + glArrayElement, glDrawArrays, glMultiDrawArrays, + glDrawElements, glMultiDrawElements, or glDrawRangeElements + is called. + + + Notes + + glTexCoordPointer is available only if the GL version is 1.1 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture + extension is supported, glTexCoordPointer updates the + texture coordinate array state of the active client texture unit, + specified with glClientActiveTexture. + + + Each texture coordinate array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glTexCoordPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glTexCoordPointer is typically implemented on the client side. + + + Texture coordinate array parameters are client-side state and are therefore + not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. + + + Errors + + GL_INVALID_VALUE is generated if size is not 1, 2, 3, or 4. + + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_TEXTURE_COORD_ARRAY + + + glGet with argument GL_TEXTURE_COORD_ARRAY_SIZE + + + glGet with argument GL_TEXTURE_COORD_ARRAY_TYPE + + + glGet with argument GL_TEXTURE_COORD_ARRAY_STRIDE + + + glGet with argument GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_TEXTURE_COORD_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glClientActiveTexture, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glMultiTexCoord, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoord, + glVertexAttribPointer, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexEnv.xml b/upstream-man-pages/man2/glTexEnv.xml new file mode 100644 index 0000000..ac61d73 --- /dev/null +++ b/upstream-man-pages/man2/glTexEnv.xml @@ -0,0 +1,2614 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexEnv + 3G + + + glTexEnv + set texture environment parameters + + C Specification + + + void glTexEnvf + GLenum target + GLenum pname + GLfloat param + + + + + + void glTexEnvi + GLenum target + GLenum pname + GLint param + + + + + Parameters + + + target + + + Specifies a texture environment. + May be GL_TEXTURE_ENV, GL_TEXTURE_FILTER_CONTROL or GL_POINT_SPRITE. + + + + + pname + + + Specifies the symbolic name of a single-valued texture environment parameter. + May be either GL_TEXTURE_ENV_MODE, GL_TEXTURE_LOD_BIAS, + GL_COMBINE_RGB, + GL_COMBINE_ALPHA, + GL_SRC0_RGB, + GL_SRC1_RGB, + GL_SRC2_RGB, + GL_SRC0_ALPHA, + GL_SRC1_ALPHA, + GL_SRC2_ALPHA, + GL_OPERAND0_RGB, + GL_OPERAND1_RGB, + GL_OPERAND2_RGB, + GL_OPERAND0_ALPHA, + GL_OPERAND1_ALPHA, + GL_OPERAND2_ALPHA, + GL_RGB_SCALE, + GL_ALPHA_SCALE, or + GL_COORD_REPLACE. + + + + + param + + + Specifies a single symbolic constant, one of GL_ADD, + GL_ADD_SIGNED, GL_INTERPOLATE, GL_MODULATE, GL_DECAL, + GL_BLEND, GL_REPLACE, GL_SUBTRACT, GL_COMBINE, + GL_TEXTURE, GL_CONSTANT, GL_PRIMARY_COLOR, GL_PREVIOUS, + GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR, GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + a single boolean value for the point sprite texture coordinate replacement, + a single floating-point value for the texture level-of-detail bias, + or 1.0, 2.0, or 4.0 when specifying the GL_RGB_SCALE or GL_ALPHA_SCALE. + + + + + + C Specification + + + void glTexEnvfv + GLenum target + GLenum pname + const GLfloat * params + + + + + void glTexEnviv + GLenum target + GLenum pname + const GLint * params + + + + Parameters + + + target + + + Specifies a texture environment. + May be either GL_TEXTURE_ENV, or GL_TEXTURE_FILTER_CONTROL. + + + + + pname + + + Specifies the symbolic name of a texture environment parameter. + Accepted values are GL_TEXTURE_ENV_MODE, GL_TEXTURE_ENV_COLOR, or + GL_TEXTURE_LOD_BIAS. + + + + + params + + + Specifies a pointer to a parameter array that contains + either a single symbolic constant, single floating-point number, or an RGBA + color. + + + + + + Description + + A texture environment specifies how texture values are interpreted when a + fragment is textured. When target is GL_TEXTURE_FILTER_CONTROL, + pname must be GL_TEXTURE_LOD_BIAS. When target is + GL_TEXTURE_ENV, pname can be GL_TEXTURE_ENV_MODE, + GL_TEXTURE_ENV_COLOR, GL_COMBINE_RGB, GL_COMBINE_ALPHA, + GL_RGB_SCALE, GL_ALPHA_SCALE, + GL_SRC0_RGB, GL_SRC1_RGB, GL_SRC2_RGB, + GL_SRC0_ALPHA, GL_SRC1_ALPHA, or GL_SRC2_ALPHA. + + + If pname is GL_TEXTURE_ENV_MODE, + then params is (or points to) the symbolic name of a texture function. + Six texture functions may be specified: + GL_ADD, + GL_MODULATE, + GL_DECAL, + GL_BLEND, + GL_REPLACE, or + GL_COMBINE. + + + The following table shows the correspondence of filtered texture + values + R + t, + G + t, + B + t, + A + t, + L + t, + I + t + to texture source components. + C + s + and + A + s + are used by the texture functions described below. + + + + + + + + + + + Texture Base Internal Format + + + C + s + + + A + s + + + + + + + GL_ALPHA + + + (0, 0, 0) + + + A + t + + + + + GL_LUMINANCE + + + ( + L + t, + L + t, + L + t + ) + + + 1 + + + + + GL_LUMINANCE_ALPHA + + + ( + L + t, + L + t, + L + t + ) + + + A + t + + + + + GL_INTENSITY + + + ( + I + t, + I + t, + I + t + ) + + + I + t + + + + + GL_RGB + + + ( + R + t, + G + t, + B + t + ) + + + 1 + + + + + GL_RGBA + + + ( + R + t, + G + t, + B + t + ) + + + A + t + + + + + + + A texture function acts on the fragment to be textured using + the texture image value that applies to the fragment + (see glTexParameter) + and produces an RGBA color for that fragment. + The following table shows how the RGBA color is produced for each + of the first five texture functions that can be chosen. + C + is a triple of color values (RGB) and + A + is the associated alpha value. + RGBA values extracted from a texture image are in the range [0,1]. + The subscript + p + refers to the color computed from the previous texture stage (or the incoming fragment if processing texture stage 0), + the subscript + s + to the texture source color, + the subscript + c + to the texture environment color, + and the subscript + v + indicates a value produced by the texture function. + + + + + + + + + + + + + + + + Texture Base Internal Format + + + Value + + + GL_REPLACE Function + + + GL_MODULATE Function + + + GL_DECAL Function + + + GL_BLEND Function + + + GL_ADD Function + + + + + + + GL_ALPHA + + + + + + C + v + + = + + + + + + + + C + p + + + + + + + + + C + p + + + + + + undefined + + + + + + C + p + + + + + + + + + C + p + + + + + + + + + + + + + A + v + + = + + + + + + + + A + s + + + + + + + + + + A + p + + + A + s + + + + + + + + + + + + A + v + + = + + A + p + + + A + s + + + + + + + + + + + A + p + + + A + s + + + + + + + + + GL_LUMINANCE + + + + + + C + v + + = + + + + + + + + C + s + + + + + + + + + + C + p + + + C + s + + + + + + + undefined + + + + + + + C + p + + + + + 1 + - + C + s + + + + + + C + c + + + C + s + + + + + + + + + + + C + p + + + + C + s + + + + + + + + + (or 1) + + + + + + A + v + + = + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + GL_LUMINANCE_ALPHA + + + + + + C + v + + = + + + + + + + + C + s + + + + + + + + + + C + p + + + C + s + + + + + + + undefined + + + + + + + C + p + + + + + 1 + - + C + s + + + + + + C + c + + + C + s + + + + + + + + + + + C + p + + + + C + s + + + + + + + + + (or 2) + + + + + + A + v + + = + + + + + + + + A + s + + + + + + + + + + A + p + + + A + s + + + + + + + + + + + + + A + p + + + A + s + + + + + + + + + + + A + p + + + A + s + + + + + + + + + GL_INTENSITY + + + + + + C + v + + = + + + + + + + + C + s + + + + + + + + + + C + p + + + C + s + + + + + + + undefined + + + + + + + C + p + + + + + 1 + - + C + s + + + + + + C + c + + + C + s + + + + + + + + + + + C + p + + + + C + s + + + + + + + + + + + + + + A + v + + = + + + + + + + + A + s + + + + + + + + + + A + p + + + A + s + + + + + + + + + + + + + A + p + + + + + 1 + - + A + s + + + + + + A + c + + + A + s + + + + + + + + + + + A + p + + + + A + s + + + + + + + + + GL_RGB + + + + + + C + v + + = + + + + + + + + C + s + + + + + + + + + + C + p + + + C + s + + + + + + + + + + C + s + + + + + + + + + + C + p + + + + + 1 + - + C + s + + + + + + C + c + + + C + s + + + + + + + + + + + C + p + + + + C + s + + + + + + + + + (or 3) + + + + + + A + v + + = + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + GL_RGBA + + + + + + C + v + + = + + + + + + + + C + s + + + + + + + + + + C + p + + + C + s + + + + + + + + + + + C + p + + + + + 1 + - + A + s + + + + + + C + s + + + A + s + + + + + + + + + + + C + p + + + + + 1 + - + C + s + + + + + + C + c + + + C + s + + + + + + + + + + + C + p + + + + C + s + + + + + + + + + (or 4) + + + + + + A + v + + = + + + + + + + + A + s + + + + + + + + + + A + p + + + A + s + + + + + + + + + + A + p + + + + + + + + + + A + p + + + A + s + + + + + + + + + + + A + p + + + A + s + + + + + + + + + + + If pname is GL_TEXTURE_ENV_MODE, and params is GL_COMBINE, the + form of the texture function depends on the values of GL_COMBINE_RGB + and GL_COMBINE_ALPHA. + + + The following describes how the texture sources, as specified by + GL_SRC0_RGB, GL_SRC1_RGB, GL_SRC2_RGB, + GL_SRC0_ALPHA, GL_SRC1_ALPHA, and GL_SRC2_ALPHA, + are combined to produce a final texture color. In the following tables, + GL_SRC0_c is represented by + Arg0, + GL_SRC1_c is + represented by + Arg1, + and GL_SRC2_c is represented by + Arg2. + + + GL_COMBINE_RGB accepts any of GL_REPLACE, GL_MODULATE, + GL_ADD, GL_ADD_SIGNED, GL_INTERPOLATE, GL_SUBTRACT, + GL_DOT3_RGB, or GL_DOT3_RGBA. + + + + + + + + + + + GL_COMBINE_RGB + + + Texture Function + + + + + + + GL_REPLACE + + + Arg0 + + + + + GL_MODULATE + + + + + + Arg0 + × + Arg1 + + + + + + + GL_ADD + + + + + + Arg0 + + + Arg1 + + + + + + + GL_ADD_SIGNED + + + + + + Arg0 + + + Arg1 + - + 0.5 + + + + + + + GL_INTERPOLATE + + + + + + + Arg0 + × + Arg2 + + + + + Arg1 + × + + + 1 + - + Arg2 + + + + + + + + + + GL_SUBTRACT + + + + + + Arg0 + - + Arg1 + + + + + + + GL_DOT3_RGB + or + GL_DOT3_RGBA + + + + + + 4 + × + + + + + + + + Arg0 + r + + + - + 0.5 + + + × + + + + Arg1 + r + + + - + 0.5 + + + + + + + + + + + + Arg0 + g + + + - + 0.5 + + + × + + + + Arg1 + g + + + - + 0.5 + + + + + + + + + + + + Arg0 + b + + + - + 0.5 + + + × + + + + Arg1 + b + + + - + 0.5 + + + + + + + + + + + + + + + The scalar results for GL_DOT3_RGB and GL_DOT3_RGBA are placed + into each of the 3 (RGB) or 4 (RGBA) components on output. + + + Likewise, GL_COMBINE_ALPHA accepts any of GL_REPLACE, + GL_MODULATE, GL_ADD, GL_ADD_SIGNED, GL_INTERPOLATE, or + GL_SUBTRACT. The following table describes how alpha values are + combined: + + + + + + + + + + + GL_COMBINE_ALPHA + + + Texture Function + + + + + + + GL_REPLACE + + + Arg0 + + + + + GL_MODULATE + + + + + + Arg0 + × + Arg1 + + + + + + + GL_ADD + + + + + + Arg0 + + + Arg1 + + + + + + + GL_ADD_SIGNED + + + + + + Arg0 + + + Arg1 + - + 0.5 + + + + + + + GL_INTERPOLATE + + + + + + + Arg0 + × + Arg2 + + + + + Arg1 + × + + + 1 + - + Arg2 + + + + + + + + + + GL_SUBTRACT + + + + + + Arg0 + - + Arg1 + + + + + + + + + In the following tables, the value + + + C + s + + + represents the color sampled + from the currently bound texture, + + + C + c + + + represents the constant + texture-environment color, + + + C + f + + + represents the primary color of the + incoming fragment, and + + + C + p + + + represents the color computed from the + previous texture stage or + + + C + f + + + if processing texture stage 0. Likewise, + + + A + s + + , + + + A + c + + , + + + A + f + + , + and + + + A + p + + + represent the respective + alpha values. + + + The following table describes the values assigned to + Arg0, + Arg1, + and + Arg2 + based upon the RGB sources and operands: + + + + + + + + + + + + GL_SRCn_RGB + + + GL_OPERANDn_RGB + + + Argument Value + + + + + + + GL_TEXTURE + + + GL_SRC_COLOR + + + + + + C + s + + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + - + + C + s + + + + + + + + + + + GL_SRC_ALPHA + + + + + + A + s + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + s + + + + + + + + + GL_TEXTUREn + + + GL_SRC_COLOR + + + + + + C + s + + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + - + + C + s + + + + + + + + + + + GL_SRC_ALPHA + + + + + + A + s + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + s + + + + + + + + + GL_CONSTANT + + + GL_SRC_COLOR + + + + + + C + c + + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + - + + C + c + + + + + + + + + + + GL_SRC_ALPHA + + + + + + A + c + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + c + + + + + + + + + GL_PRIMARY_COLOR + + + GL_SRC_COLOR + + + + + + C + f + + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + - + + C + f + + + + + + + + + + + GL_SRC_ALPHA + + + + + + A + f + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + f + + + + + + + + + GL_PREVIOUS + + + GL_SRC_COLOR + + + + + + C + p + + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + - + + C + p + + + + + + + + + + + GL_SRC_ALPHA + + + + + + A + p + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + p + + + + + + + + + + + For GL_TEXTUREn sources, + + + C + s + + + and + + + A + s + + + represent the color + and alpha, respectively, produced from texture stage + n. + + + The follow table describes the values assigned to + Arg0, + Arg1, + and + Arg2 + based upon the alpha sources and operands: + + + + + + + + + + + + GL_SRCn_ALPHA + + + GL_OPERANDn_ALPHA + + + Argument Value + + + + + + + GL_TEXTURE + + + GL_SRC_ALPHA + + + + + + A + s + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + s + + + + + + + + + GL_TEXTUREn + + + GL_SRC_ALPHA + + + + + + A + s + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + s + + + + + + + + + GL_CONSTANT + + + GL_SRC_ALPHA + + + + + + A + c + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + c + + + + + + + + + GL_PRIMARY_COLOR + + + GL_SRC_ALPHA + + + + + + A + f + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + f + + + + + + + + + GL_PREVIOUS + + + GL_SRC_ALPHA + + + + + + A + p + + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + - + + A + p + + + + + + + + + + + The RGB and alpha results of the texture function are multipled by the + values of GL_RGB_SCALE and GL_ALPHA_SCALE, respectively, and + clamped to the range + + + + 0 + 1 + + . + + + If pname is GL_TEXTURE_ENV_COLOR, + params is a pointer to an array that holds an RGBA color consisting of four + values. + Integer color components are interpreted linearly such that the most + positive integer maps to 1.0, + and the most negative integer maps to -1.0. + The values are clamped to the range [0,1] when they are specified. + + + C + c + + + takes these four values. + + + If pname is GL_TEXTURE_LOD_BIAS, the value specified is added to the + texture level-of-detail parameter, that selects which mipmap, or mipmaps + depending upon the selected GL_TEXTURE_MIN_FILTER, will be sampled. + + + GL_TEXTURE_ENV_MODE defaults to GL_MODULATE and + GL_TEXTURE_ENV_COLOR defaults to (0, 0, 0, 0). + + + If target is GL_POINT_SPRITE and pname is GL_COORD_REPLACE, the boolean value specified + is used to either enable or disable point sprite texture coordinate replacement. The default value is GL_FALSE. + + + Notes + + GL_REPLACE may only be used if the GL version is 1.1 or greater. + + + GL_TEXTURE_FILTER_CONTROL and GL_TEXTURE_LOD_BIAS may only be + used if the GL version is 1.4 or greater. + + + GL_COMBINE mode and its associated constants may only be used if the + GL version is 1.3 or greater. + + + GL_TEXTUREn may only be used if the GL version is 1.4 or greater. + + + Internal formats other than 1, 2, 3, or 4 may only be used if the GL + version is 1.1 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexEnv controls + the texture environment for the current active texture unit, selected by + glActiveTexture. + + + GL_POINT_SPRITE and GL_COORD_REPLACE are available + only if the GL version is 2.0 or greater. + + + Errors + + GL_INVALID_ENUM is generated when target or pname is not + one of the accepted defined values, + or when params should have a defined constant value + (based on the value of pname) + and does not. + + + GL_INVALID_VALUE is generated if the params value for + GL_RGB_SCALE or GL_ALPHA_SCALE are not one of 1.0, 2.0, + or 4.0. + + + GL_INVALID_OPERATION is generated if glTexEnv + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexEnv + + + See Also + + glActiveTexture, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexGen.xml b/upstream-man-pages/man2/glTexGen.xml new file mode 100644 index 0000000..036adfc --- /dev/null +++ b/upstream-man-pages/man2/glTexGen.xml @@ -0,0 +1,786 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexGen + 3G + + + glTexGen + control the generation of texture coordinates + + C Specification + + + void glTexGeni + GLenum coord + GLenum pname + GLint param + + + + + void glTexGenf + GLenum coord + GLenum pname + GLfloat param + + + + + void glTexGend + GLenum coord + GLenum pname + GLdouble param + + + + + Parameters + + + coord + + + Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. + + + + + pname + + + Specifies the symbolic name of the texture-coordinate generation function. + Must be GL_TEXTURE_GEN_MODE. + + + + + param + + + Specifies a single-valued texture generation parameter, + one of GL_OBJECT_LINEAR, GL_EYE_LINEAR, GL_SPHERE_MAP, + GL_NORMAL_MAP, or GL_REFLECTION_MAP. + + + + + + C Specification + + + void glTexGeniv + GLenum coord + GLenum pname + const GLint * params + + + + + void glTexGenfv + GLenum coord + GLenum pname + const GLfloat * params + + + + + void glTexGendv + GLenum coord + GLenum pname + const GLdouble * params + + + + Parameters + + + coord + + + Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. + + + + + pname + + + Specifies the symbolic name of the texture-coordinate generation function + or function parameters. + Must be + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + + + + + params + + + Specifies a pointer to an array of texture generation parameters. + If pname is GL_TEXTURE_GEN_MODE, + then the array must contain a single symbolic constant, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + Otherwise, + params holds the coefficients for the texture-coordinate generation function + specified by pname. + + + + + + Description + + glTexGen selects a texture-coordinate generation function + or supplies coefficients for one of the functions. + coord names one of the (s, t, r, q) texture + coordinates; it must be one of the symbols + GL_S, + GL_T, + GL_R, or + GL_Q. + pname must be one of three symbolic constants: + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + If pname is GL_TEXTURE_GEN_MODE, + then params chooses a mode, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + If pname is either GL_OBJECT_PLANE or GL_EYE_PLANE, + params contains coefficients for the corresponding + texture generation function. + + + If the texture generation function is GL_OBJECT_LINEAR, + the function + + + + + + g + = + + + p + 1 + + × + x + o + + + + + + p + 2 + + × + y + o + + + + + + p + 3 + + × + z + o + + + + + + p + 4 + + × + w + o + + + + + + + + is used, where + g + is the value computed for the coordinate named in coord, + + + p + 1 + + , + + + p + 2 + + , + + + p + 3 + + , + and + + + p + 4 + + + are the four values supplied in params, and + + + x + o + + , + + + y + o + + , + + + z + o + + , + and + + + w + o + + + are the object coordinates of the vertex. + This function can be used, for example, to texture-map terrain using sea level + as a reference plane + (defined by + + + p + 1 + + , + + + p + 2 + + , + + + p + 3 + + , + and + + + p + 4 + + ). + The altitude of a terrain vertex is computed by the GL_OBJECT_LINEAR + coordinate generation function as its distance from sea level; + that altitude can then be used to index the texture image to map white snow + onto peaks and green grass onto foothills. + + + If the texture generation function is GL_EYE_LINEAR, the function + + + + + + g + = + + + + p + 1 + + + + + × + x + e + + + + + + + p + 2 + + + + + × + y + e + + + + + + + p + 3 + + + + + × + z + e + + + + + + + p + 4 + + + + + × + w + e + + + + + + + + is used, where + + + + + + + + + p + 1 + + + + + + + p + 2 + + + + + + + p + 3 + + + + + + + p + 4 + + + + + + + = + + + + p + 1 + + + p + 2 + + + p + 3 + + + p + 4 + + + + + M + -1 + + + + + + + and + + + x + e + + , + + + y + e + + , + + + z + e + + , + and + + + w + e + + + are the eye coordinates of the vertex, + + + p + 1 + + , + + + p + 2 + + , + + + p + 3 + + , + and + + + p + 4 + + + are the values supplied in params, and + M + is the modelview matrix when glTexGen is invoked. + If + M + is poorly conditioned or singular, + texture coordinates generated by the resulting function may be inaccurate + or undefined. + + + Note that the values in params define a reference plane in eye coordinates. + The modelview matrix that is applied to them may not be the same one + in effect when the polygon vertices are transformed. + This function establishes a field of texture coordinates + that can produce dynamic contour lines on moving objects. + + + If the texture generation function is GL_SPHERE_MAP and coord is either + GL_S or + GL_T, + s + and + t + texture coordinates are generated as follows. + Let u be the unit vector pointing from the origin to the polygon vertex + (in eye coordinates). + Let n sup prime be the current normal, + after transformation to eye coordinates. + Let + + + + + + f + = + + + f + x + + + f + y + + + f + z + + + + T + + + + be the reflection vector such that + + + + + + f + = + + u + - + 2 + + n + + + + + n + + + + T + + + u + + + + + + Finally, let + + + + m + = + + 2 + + + + + + f + x + + + 2 + + + + + f + y + + + 2 + + + + + + f + z + + + + 1 + + + 2 + + + + + + + . + Then the values assigned to the + s + and + t + texture coordinates are + + + + + + s + = + + + f + x + + m + + + + + 1 + 2 + + + + + + + + + + t + = + + + f + y + + m + + + + + 1 + 2 + + + + + + + To enable or disable a texture-coordinate generation function, call + glEnable or glDisable + with one of the symbolic texture-coordinate names + (GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, or + GL_TEXTURE_GEN_Q) as the argument. + When enabled, + the specified texture coordinate is computed + according to the generating function associated with that coordinate. + When disabled, + subsequent vertices take the specified texture coordinate + from the current set of texture coordinates. Initially, all texture + generation functions are set to GL_EYE_LINEAR and are disabled. + Both + s + plane equations are (1, 0, 0, 0), + both + t + plane equations are (0, 1, 0, 0), + and all + r + and + q + plane equations are (0, 0, 0, 0). + + + When the ARB_multitexture extension is supported, glTexGen sets the + texture generation parameters for the currently active texture unit, + selected with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated when coord or pname is not an + accepted defined value, + or when pname is GL_TEXTURE_GEN_MODE and params is not an + accepted defined value. + + + GL_INVALID_ENUM is generated when pname is GL_TEXTURE_GEN_MODE, + params is GL_SPHERE_MAP, + and coord is either GL_R or GL_Q. + + + GL_INVALID_OPERATION is generated if glTexGen + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexGen + + + glIsEnabled with argument GL_TEXTURE_GEN_S + + + glIsEnabled with argument GL_TEXTURE_GEN_T + + + glIsEnabled with argument GL_TEXTURE_GEN_R + + + glIsEnabled with argument GL_TEXTURE_GEN_Q + + + See Also + + glActiveTexture, + glCopyPixels, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexEnv, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexImage1D.xml b/upstream-man-pages/man2/glTexImage1D.xml new file mode 100644 index 0000000..14378ef --- /dev/null +++ b/upstream-man-pages/man2/glTexImage1D.xml @@ -0,0 +1,934 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage1D + 3G + + + glTexImage1D + specify a one-dimensional texture image + + C Specification + + + void glTexImage1D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be 1, 2, 3, or 4, or one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + width + + + Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support texture images that are at least 64 texels + wide. The height of the 1D texture image is 1. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. + + + Texture images are defined with glTexImage1D. + The arguments describe the parameters of the texture image, + such as width, + width of the border, + level-of-detail number + (see glTexParameter), + and the internal resolution and format used to store the image. + The last three arguments describe how the image is represented in + memory; they are identical to the pixel formats used for + glDrawPixels. + + + If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked against the implementation's capabilities. + If the implementation cannot handle a texture of the + requested texture size, it sets all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_1D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + If type is GL_BITMAP, + the data is considered as a string of unsigned bytes + (and format must be GL_COLOR_INDEX). + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the left end of the texture array. + Subsequent elements progress left-to-right through the remaining texels + in the texture array. + The final element corresponds to the right end of the texture array. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_COLOR_INDEX + + + Each element is a single value, + a color index. + The GL converts it to fixed point + (with an unspecified number of zero bits to the right of the binary point), + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET + (see glPixelTransfer). + The resulting index is converted to a set of color components + using the + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A tables, + and clamped to the range [0,1]. + + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_GREEN + + + Each element is a single green component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_BLUE + + + Each element is a single blue component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and green, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_ALPHA + + + Each element is a single alpha component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_INTENSITY + + + Each element is a single intensity value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the intensity value + three times for red, green, blue, and alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_LUMINANCE + + + Each element is a single luminance value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue and attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_LUMINANCE_ALPHA + + + Each element is a luminance/alpha pair. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] (see glPixelTransfer). + + + + + GL_DEPTH_COMPONENT + + + Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1] (see glPixelTransfer). + + + + + + Refer to the glDrawPixels reference page for a description of + the acceptable values for the type parameter. + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_LUMINANCE, + GL_LUMINANCE_ALPHA, GL_RGB, + and GL_RGBA must match exactly. The numeric values 1, 2, 3, and 4 + may also be used to specify the above representations.) + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, or + GL_SLUMINANCE8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_1D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Depth textures can be treated as LUMINANCE, INTENSITY or ALPHA textures during texture filtering and application. Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. + + + Notes + + Texturing has no effect in color index mode. + + + If the ARB_imaging extension is supported, RGBA elements may + also be processed by the imaging pipeline. The following stages may be + applied to an RGBA color before color component clamping to the range + + + + 0 + 1 + + : + + + + 1. Color component replacement by the color table specified for + + + GL_COLOR_TABLE, if enabled. See glColorTable. + + + + + 2. One-dimensional convolution filtering, if enabled. See + + + glConvolutionFilter1D. + + + If a convolution filter changes the width of the texture (by + processing with a GL_CONVOLUTION_BORDER_MODE of GL_REDUCE, for + example), the width must + + + + 2 + n + + + + + 2 + + + border + + + + , + for some + integer + n, + after filtering. + + + + + 3. RGBA components may be multiplied by GL_POST_CONVOLUTION_c_SCALE, + + + and added to GL_POST_CONVOLUTION_c_BIAS, if enabled. See + glPixelTransfer. + + + + + 4. Color component replacement by the color table specified for + + + GL_POST_CONVOLUTION_COLOR_TABLE, if enabled. See glColorTable. + + + + + 5. Transformation by the color matrix. + + + See glMatrixMode. + + + + + 6. RGBA components may be multiplied by GL_POST_COLOR_MATRIX_c_SCALE, + + + and added to GL_POST_COLOR_MATRIX_c_BIAS, if enabled. See + glPixelTransfer. + + + + + 7. Color component replacement by the color table specified for + + + GL_POST_COLOR_MATRIX_COLOR_TABLE, if enabled. See glColorTable. + + + + + + The texture image can be represented by the same data formats + as the pixels in a glDrawPixels command, + except that GL_STENCIL_INDEX + cannot be used. + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + GL_PROXY_TEXTURE_1D may be used only if the GL version is 1.1 or greater. + + + Internal formats other than 1, 2, 3, or 4 may be + used only if the GL version is 1.1 or greater. + + + In GL version 1.1 or greater, + data may be a null pointer. In this case texture memory is + allocated to accommodate a texture of width width. + You can then download subtextures to initialize the + texture memory. The image is undefined if the program tries to apply + an uninitialized portion of the texture image to a primitive. + + + Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + When the ARB_multitexture extension is supported, or the GL version is 1.3 or greater, glTexImage1D + specifies the one-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, and GL_DEPTH_COMPONENT32 are available only + if the GL version is 1.4 or greater. + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_1D + or GL_PROXY_TEXTURE_1D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX + are accepted. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not 1, 2, 3, 4, or + one of the accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than 2 + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer value of n. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glTexImage1D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_1D + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexSubImage1D, + glConvolutionFilter1D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexSubImage1D, + glDrawPixels, + glGetCompressedTexImage, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexImage2D.xml b/upstream-man-pages/man2/glTexImage2D.xml new file mode 100644 index 0000000..b10abc5 --- /dev/null +++ b/upstream-man-pages/man2/glTexImage2D.xml @@ -0,0 +1,1007 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage2D + 3G + + + glTexImage2D + specify a two-dimensional texture image + + C Specification + + + void glTexImage2D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLsizei height + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be 1, 2, 3, or 4, or one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + width + + + Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support texture images that are at least 64 texels + wide. + + + + + height + + + Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + m + + + + + 2 + + + border + + + + + for some integer + m. + All + implementations support texture images that are at least 64 texels + high. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. To enable and disable two-dimensional texturing, call glEnable and glDisable with argument GL_TEXTURE_2D. To enable and disable texturing using cube-mapped texture, call glEnable and glDisable with argument GL_TEXTURE_CUBE_MAP. + + + To define texture images, call glTexImage2D. + The arguments describe the parameters of the texture image, + such as height, + width, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory; + they are identical to the pixel formats used for glDrawPixels. + + + If target is GL_PROXY_TEXTURE_2D or GL_PROXY_TEXTURE_CUBE_MAP, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_2D, or one of the GL_TEXTURE_CUBE_MAP + targets, data is read from data as a sequence of signed or unsigned + bytes, shorts, or longs, or single-precision floating-point values, + depending on type. These values are grouped into sets of one, two, + three, or four values, depending on format, to form elements. If type + is GL_BITMAP, the data is considered as a string of unsigned bytes + (and format must be GL_COLOR_INDEX). + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_COLOR_INDEX + + + Each element is a single value, + a color index. + The GL converts it to fixed point + (with an unspecified number of zero bits to the right of the binary point), + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET + (see glPixelTransfer). + The resulting index is converted to a set of color components + using the + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A tables, + and clamped to the range [0,1]. + + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_GREEN + + + Each element is a single green component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_BLUE + + + Each element is a single blue component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and green, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_ALPHA + + + Each element is a single alpha component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_INTENSITY + + + Each element is a single intensity value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the intensity value + three times for red, green, blue, and alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_LUMINANCE + + + Each element is a single luminance value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue and attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_LUMINANCE_ALPHA + + + Each element is a luminance/alpha pair. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] (see glPixelTransfer). + + + + + GL_DEPTH_COMPONENT + + + Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1] (see glPixelTransfer). + + + + + + Refer to the glDrawPixels reference page for a description of + the acceptable values for the type parameter. + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_LUMINANCE, + GL_LUMINANCE_ALPHA, GL_RGB, + and GL_RGBA must match exactly. The numeric values 1, 2, 3, and 4 + may also be used to specify the above representations.) + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, or + GL_SLUMINANCE8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_2D or GL_PROXY_TEXTURE_CUBE_MAP target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Depth textures can be treated as LUMINANCE, INTENSITY or ALPHA textures during texture filtering and application. Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. + + + Notes + + Texturing has no effect in color index mode. + + + If the ARB_imaging extension is supported, RGBA elements may + also be processed by the imaging pipeline. The following stages may be + applied to an RGBA color before color component clamping to the range + + + + 0 + 1 + + : + + + + 1. Color component replacement by the color table specified for + + + GL_COLOR_TABLE, if enabled. See glColorTable. + + + + + 2. Two-dimensional Convolution filtering, if enabled. + + + See glConvolutionFilter1D. + + + If a convolution filter changes the width of the texture (by + processing with a GL_CONVOLUTION_BORDER_MODE of GL_REDUCE, for + example), and the GL does not support non-power-of-two textures, the width must + + + + 2 + n + + + + + 2 + + + border + + + + , + for some + integer + n, + and height must be + + + + 2 + m + + + + + 2 + + + border + + + + , + for some + integer + m, + after filtering. + + + + + 3. RGBA components may be multiplied by GL_POST_CONVOLUTION_c_SCALE, + + + and added to GL_POST_CONVOLUTION_c_BIAS, if enabled. See + glPixelTransfer. + + + + + 4. Color component replacement by the color table specified for + + + GL_POST_CONVOLUTION_COLOR_TABLE, if enabled. See glColorTable. + + + + + 5. Transformation by the color matrix. + + + See glMatrixMode. + + + + + 6. RGBA components may be multiplied by GL_POST_COLOR_MATRIX_c_SCALE, + + + and added to GL_POST_COLOR_MATRIX_c_BIAS, if enabled. See + glPixelTransfer. + + + + + 7. Color component replacement by the color table specified for + + + GL_POST_COLOR_MATRIX_COLOR_TABLE, if enabled. See glColorTable. + + + + + + The texture image can be represented by the same data formats + as the pixels in a glDrawPixels command, + except that GL_STENCIL_INDEX + cannot be used. + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + glTexImage2D and GL_PROXY_TEXTURE_2D are available only if the GL + version is 1.1 or greater. + + + Internal formats other than 1, 2, 3, or 4 may be used only if the GL + version is 1.1 or greater. + + + In GL version 1.1 or greater, data may be a null pointer. + In this case, texture memory is + allocated to accommodate a texture of width width and height height. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. + + + Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + When the ARB_multitexture extension is supported or the GL version is 1.3 or greater, glTexImage2D + specifies the two-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + GL_TEXTURE_CUBE_MAP and GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL + version is 1.3 or greater. + + + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, and GL_DEPTH_COMPONENT32 are available only + if the GL version is 1.4 or greater. + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. + + + GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than 2 + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not 1, 2, 3, 4, or one of the + accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than 2 + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or height cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some + integer value of k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if target is not + GL_TEXTURE_2D or GL_PROXY_TEXTURE_2D and internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glTexImage2D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glColorTable, + glConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glSeparableFilter2D, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexImage3D.xml b/upstream-man-pages/man2/glTexImage3D.xml new file mode 100644 index 0000000..c70f949 --- /dev/null +++ b/upstream-man-pages/man2/glTexImage3D.xml @@ -0,0 +1,941 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage3D + 3G + + + glTexImage3D + specify a three-dimensional texture image + + C Specification + + + void glTexImage3D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D or GL_PROXY_TEXTURE_3D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level + n + is the + + + n + th + + + mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be 1, 2, 3, or 4, or one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + width + + + Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + wide. + + + + + height + + + Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + m + + + + + 2 + + + border + + + + + for some integer + m. + All + implementations support 3D texture images that are at least 16 texels + high. + + + + + depth + + + Specifies the depth of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + k + + + + + 2 + + + border + + + + + for some integer + k. + All + implementations support 3D texture images that are at least 16 texels + deep. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. + + + To define texture images, call glTexImage3D. + The arguments describe the parameters of the texture image, + such as height, + width, depth, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory; + they are identical to the pixel formats used for glDrawPixels. + + + If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_3D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + If type is GL_BITMAP, + the data is considered as a string of unsigned bytes (and + format must be GL_COLOR_INDEX). + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_COLOR_INDEX + + + Each element is a single value, + a color index. + The GL converts it to fixed point + (with an unspecified number of zero bits to the right of the binary point), + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET + (see glPixelTransfer). + The resulting index is converted to a set of color components + using the + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A tables, + and clamped to the range [0,1]. + + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_GREEN + + + Each element is a single green component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_BLUE + + + Each element is a single blue component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and green, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_ALPHA + + + Each element is a single alpha component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_INTENSITY + + + Each element is a single intensity value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the intensity value + three times for red, green, blue, and alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_LUMINANCE + + + Each element is a single luminance value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue and attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). + + + + + GL_LUMINANCE_ALPHA + + + Each element is a luminance/alpha pair. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] (see glPixelTransfer). + + + + + + Refer to the glDrawPixels reference page for a description of + the acceptable values for the type parameter. + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_LUMINANCE, + GL_LUMINANCE_ALPHA, GL_RGB, + and GL_RGBA must match exactly. The numeric values 1, 2, 3, and 4 + may also be used to specify the above representations.) + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, or + GL_SLUMINANCE8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_3D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Notes + + Texturing has no effect in color index mode. + + + The texture image can be represented by the same data formats + as the pixels in a glDrawPixels command, + except that GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + cannot be used. + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + glTexImage3D is available only if the GL version is 1.2 or greater. + + + Internal formats other than 1, 2, 3, or 4 may be used only if the GL + version is 1.1 or greater. + + + data may be a null pointer. + In this case texture memory is + allocated to accommodate a texture of width width, height height, + and depth depth. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. + + + Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexImage3D + specifies the three-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + If the ARB_imaging extension is supported, RGBA elements may + also be processed by the imaging pipeline. The following stages may be + applied to an RGBA color before color component clamping to the range + + + + 0 + 1 + + : + + + + 1. Color component replacement by the color table specified for + + + GL_COLOR_TABLE, if enabled. See glColorTable. + + + + + 2. Color component replacement by the color table specified for + + + GL_POST_CONVOLUTION_COLOR_TABLE, if enabled. See glColorTable. + + + + + 3. Transformation by the color matrix. See glMatrixMode. + + + + + 4. RGBA components may be multiplied by GL_POST_COLOR_MATRIX_c_SCALE, + + + and added to GL_POST_COLOR_MATRIX_c_BIAS, if enabled. See + glPixelTransfer. + + + + + 5. Color component replacement by the color table specified for + + + GL_POST_COLOR_MATRIX_COLOR_TABLE, if enabled. See + glColorTable. + + + + + + Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. + + + The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + are accepted. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not 1, 2, 3, 4, or one of the + accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width, height, or depth is less than 0 or greater than 2 + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width, height, or depth cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some + integer value of k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if format or internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glTexImage3D + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_3D + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glGetCompressedTexImage, + glMatrixMode, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexParameter.xml b/upstream-man-pages/man2/glTexParameter.xml new file mode 100644 index 0000000..d7e857e --- /dev/null +++ b/upstream-man-pages/man2/glTexParameter.xml @@ -0,0 +1,1264 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexParameter + 3G + + + glTexParameter + set texture parameters + + C Specification + + + void glTexParameterf + GLenum target + GLenum pname + GLfloat param + + + + + void glTexParameteri + GLenum target + GLenum pname + GLint param + + + + + Parameters + + + target + + + Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, or GL_TEXTURE_CUBE_MAP. + + + + + pname + + + Specifies the symbolic name of a single-valued texture parameter. + pname can be one of the following: + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_PRIORITY, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_DEPTH_TEXTURE_MODE, or + GL_GENERATE_MIPMAP. + + + + + param + + + Specifies the value of pname. + + + + + + C Specification + + + void glTexParameterfv + GLenum target + GLenum pname + const GLfloat * params + + + + + void glTexParameteriv + GLenum target + GLenum pname + const GLint * params + + + + Parameters + + + target + + + Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D or + GL_TEXTURE_3D. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + pname can be one of the following: + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_PRIORITY, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_DEPTH_TEXTURE_MODE, or + GL_GENERATE_MIPMAP. + + + + + params + + + Specifies a pointer to an array where the value or values of pname + are stored. + + + + + + Description + + Texture mapping is a technique that applies an image onto an object's surface + as if the image were a decal or cellophane shrink-wrap. + The image is created in texture space, + with an + (s, + t) + coordinate system. + A texture is a one- or two-dimensional image and a set of parameters + that determine how samples are derived from the image. + + + glTexParameter assigns the value or values in params to the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, or GL_TEXTURE_3D. + The following symbols are accepted in pname: + + + + GL_TEXTURE_MIN_FILTER + + + The texture minifying function is used whenever the pixel being textured + maps to an area greater than one texture element. + There are six defined minifying functions. + Two of them use the nearest one or nearest four texture elements + to compute the texture value. + The other four use mipmaps. + + + A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. + + + params supplies a function for minifying the texture as one of the + following: + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + GL_NEAREST_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value. + + + + + GL_LINEAR_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value. + + + + + GL_NEAREST_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + GL_LINEAR_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + + + As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or four texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MAG_FILTER + + + The texture magnification function is used when the pixel being textured + maps to an area less than or equal to one texture element. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + + + + + + + + + + + GL_TEXTURE_MIN_LOD + + + Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. + + + + + + + + + GL_TEXTURE_MAX_LOD + + + Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. + + + + + + + + + GL_TEXTURE_BASE_LEVEL + + + Specifies the index of the lowest defined mipmap level. This is an + integer value. The initial value is 0. + + + + + + + + + GL_TEXTURE_MAX_LEVEL + + + Sets the index of the highest defined mipmap level. This is an integer + value. The initial value is 1000. + + + + + + + + + GL_TEXTURE_WRAP_S + + + Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP, + GL_CLAMP_TO_BORDER, GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP causes + s + coordinates to be clamped to the + range [0,1] and is useful for preventing wrapping artifacts when mapping a + single image onto an object. GL_CLAMP_TO_BORDER causes the + s + coordinate to be clamped to the range + + + + + + + -1 + 2N + + + + + 1 + + + + + + 1 + 2N + + + + + + , + where + N + is the size of the texture in the direction of + clamping.GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + + + s + + + + , + where + + + + frac + + + s + + + + represents the fractional part of + s. + Border texture + elements are accessed only if wrapping is set to GL_CLAMP or GL_CLAMP_TO_BORDER. Initially, + GL_TEXTURE_WRAP_S is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_T + + + Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP, + GL_CLAMP_TO_BORDER, GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP, + GL_CLAMP_TO_BORDER, GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + Sets a border color. params contains four values that comprise the RGBA + color of the texture border. Integer color components are interpreted + linearly such that the most positive integer maps to 1.0, and the most + negative integer maps to -1.0. The values are clamped to the range [0,1] + when they are specified. Initially, the border color is (0, 0, 0, 0). + + + + + GL_TEXTURE_PRIORITY + + + Specifies the texture residence priority of the currently bound texture. + Permissible values are in the range + + + + 0 + 1 + + . + See glPrioritizeTextures and glBindTexture for more information. + + + + + GL_TEXTURE_COMPARE_MODE + + + Specifies the texture comparison mode for currently bound depth textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: + + + GL_COMPARE_R_TO_TEXTURE + + + Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound depth texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to luminance, + intensity, or alpha (as specified by GL_DEPTH_TEXTURE_MODE). + + + + + GL_NONE + + + Specifies that the luminance, intensity, or alpha (as specified by + GL_DEPTH_TEXTURE_MODE) should be assigned the + appropriate value from the currently bound depth texture. + + + + + + + + + GL_TEXTURE_COMPARE_FUNC + + + Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_R_TO_TEXTURE. Permissible values are: + + + + + + + + Texture Comparison Function + + + Computed result + + + + + + + GL_LEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + + + + + + + GL_GEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + + + + + + + GL_LESS + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + + + + + + + GL_GREATER + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + + + + + + + GL_EQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + + + D + t + + + + + + + + + + + + + + GL_NOTEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + + + D + t + + + + + + + r + = + + D + t + + + + + + + + + + + + + + GL_ALWAYS + + + + + + result + = + 1.0 + + + + + + + + GL_NEVER + + + + + + result + = + 0.0 + + + + + + + + + where r + is the current interpolated texture coordinate, and + + + D + t + + + is the depth texture value sampled from the currently bound depth texture. + result + is assigned to the either the luminance, intensity, or alpha (as + specified by GL_DEPTH_TEXTURE_MODE.) + + + + + GL_DEPTH_TEXTURE_MODE + + + Specifies a single symbolic constant indicating how depth values should be + treated during filtering and texture application. Accepted values are + GL_LUMINANCE, GL_INTENSITY, and GL_ALPHA. The initial value + is GL_LUMINANCE. + + + + + GL_GENERATE_MIPMAP + + + Specifies a boolean value that indicates if all levels of a mipmap array + should be automatically updated when any modification to the base level + mipmap is done. The initial value is GL_FALSE. + + + + + + Notes + + GL_TEXTURE_3D, GL_TEXTURE_MIN_LOD, GL_TEXTURE_MAX_LOD, + GL_CLAMP_TO_EDGE, GL_TEXTURE_BASE_LEVEL, and GL_TEXTURE_MAX_LEVEL are + available only if the GL version is 1.2 or greater. + + + GL_CLAMP_TO_BORDER is available only if the GL version is 1.3 or greater. + + + GL_MIRRORED_REPEAT, GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, GL_DEPTH_TEXTURE_MODE, and + GL_GENERATE_MIPMAP are available only if the GL version is 1.4 or + greater. + + + GL_TEXTURE_COMPARE_FUNC allows the following additional comparison modes only + if the GL version is 1.5 or greater: + GL_LESS, GL_GREATER, + GL_EQUAL, GL_NOTEQUAL, + GL_ALWAYS, and GL_NEVER. + + + Suppose that a program has enabled texturing (by calling glEnable with + argument GL_TEXTURE_1D, GL_TEXTURE_2D, or GL_TEXTURE_3D) and + has set GL_TEXTURE_MIN_FILTER to one of the functions that requires a + mipmap. If either the dimensions of the texture images currently defined + (with previous calls to glTexImage1D, glTexImage2D, + glTexImage3D, glCopyTexImage1D, or glCopyTexImage2D) do not + follow the proper sequence for mipmaps (described above), or there are + fewer texture images defined than are needed, or the set of texture images + have differing numbers of texture components, then it is as if texture + mapping were disabled. + + + Linear filtering accesses the four nearest texture elements only in 2D + textures. In 1D textures, linear filtering accesses the two nearest + texture elements. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexParameter + specifies the texture parameters for the active texture unit, specified + by calling glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not + one of the accepted defined values. + + + GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. + + + GL_INVALID_OPERATION is generated if glTexParameter is executed between the + execution of glBegin and the corresponding execution of glEnd. + + + Associated Gets + + glGetTexParameter + + + glGetTexLevelParameter + + + See Also + + glActiveTexture, + glBindTexture, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glPixelStore, + glPixelTransfer, + glPrioritizeTextures, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexSubImage1D.xml b/upstream-man-pages/man2/glTexSubImage1D.xml new file mode 100644 index 0000000..d83fe0d --- /dev/null +++ b/upstream-man-pages/man2/glTexSubImage1D.xml @@ -0,0 +1,367 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage1D + 3G + + + glTexSubImage1D + specify a one-dimensional texture subimage + + C Specification + + + void glTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable or disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. + + + glTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with width of 0, but + such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glTexSubImage1D is available only if the GL version is 1.1 or greater. + + + Texturing has no effect in color index mode. + + + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexSubImage1D + specifies a one-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + When the ARB_imaging extension is supported, the RGBA components + specified in data may be processed by the imaging pipeline. See + glTexImage1D for specific details. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or if + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, and + b + is + the width of the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. + + + GL_INVALID_VALUE is generated if width is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glTexSubImage1D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_1D + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexSubImage2D.xml b/upstream-man-pages/man2/glTexSubImage2D.xml new file mode 100644 index 0000000..09c0ccb --- /dev/null +++ b/upstream-man-pages/man2/glTexSubImage2D.xml @@ -0,0 +1,442 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage2D + 3G + + + glTexSubImage2D + specify a two-dimensional texture subimage + + C Specification + + + void glTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable two-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_2D. + + + glTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + and y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glTexSubImage2D is available only if the GL version is 1.1 or greater. + + + Texturing has no effect in color index mode. + + + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexSubImage2D + specifies a two-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + When the ARB_imaging extension is supported, the RGBA components + specified in data may be processed by the imaging pipeline. See + glTexImage1D for specific details. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, and + b + is the border width + of the texture image being modified. + Note that + w + and + h + include twice the border width. + + + GL_INVALID_VALUE is generated if width or height is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage2D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glTexSubImage2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_2D + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTexSubImage3D.xml b/upstream-man-pages/man2/glTexSubImage3D.xml new file mode 100644 index 0000000..aef91bd --- /dev/null +++ b/upstream-man-pages/man2/glTexSubImage3D.xml @@ -0,0 +1,497 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage3D + 3G + + + glTexSubImage3D + specify a three-dimensional texture subimage + + C Specification + + + void glTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + zoffset + + + Specifies a texel offset in the z direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + depth + + + Specifies the depth of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. + + + glTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive, + and z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width, height, or + depth but such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glTexSubImage3D is available only if the GL version is 1.2 or greater. + + + Texturing has no effect in color index mode. + + + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. + + + Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. + + + For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexSubImage3D + specifies a three-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + When the ARB_imaging extension is supported, the RGBA components + specified in data may be processed by the imaging pipeline. See + glTexImage3D for specific details. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + or + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + depth + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH + and + b + is the border width of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. + + + GL_INVALID_VALUE is generated if width, height, or depth + is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if glTexSubImage3D is executed + between the execution of glBegin and the corresponding + execution of glEnd. + + + Associated Gets + + glGetTexImage + + + glIsEnabled with argument GL_TEXTURE_3D + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glPixelStore, + glPixelTransfer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glTranslate.xml b/upstream-man-pages/man2/glTranslate.xml new file mode 100644 index 0000000..f022474 --- /dev/null +++ b/upstream-man-pages/man2/glTranslate.xml @@ -0,0 +1,189 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTranslate + 3G + + + glTranslate + multiply the current matrix by a translation matrix + + C Specification + + + void glTranslated + GLdouble x + GLdouble y + GLdouble z + + + + + void glTranslatef + GLfloat x + GLfloat y + GLfloat z + + + + + Parameters + + + x + y + z + + + Specify the x, y, and z coordinates of a translation vector. + + + + + + Description + + glTranslate produces a translation by + + + + x + y + z + + . + The current matrix + (see + glMatrixMode) + is multiplied by this translation matrix, + with the product replacing the current matrix, as if + glMultMatrix were called with the following matrix + for its argument: + + + + + + + + + 1 + + + 0 + + + 0 + + + x + + + + + 0 + + + 1 + + + 0 + + + y + + + + + 0 + + + 0 + + + 1 + + + z + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + + + + + + If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, + all objects drawn after a call to glTranslate are translated. + + + Use glPushMatrix and + glPopMatrix to save and restore + the untranslated coordinate system. + + + Errors + + GL_INVALID_OPERATION is generated if glTranslate + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_MATRIX_MODE + + + glGet with argument GL_COLOR_MATRIX + + + glGet with argument GL_MODELVIEW_MATRIX + + + glGet with argument GL_PROJECTION_MATRIX + + + glGet with argument GL_TEXTURE_MATRIX + + + See Also + + glMatrixMode, + glMultMatrix, + glPushMatrix, + glRotate, + glScale + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glUniform.xml b/upstream-man-pages/man2/glUniform.xml new file mode 100644 index 0000000..837e3a7 --- /dev/null +++ b/upstream-man-pages/man2/glUniform.xml @@ -0,0 +1,498 @@ + + + + + glUniform + 3G + + + glUniform + glUniform1f + glUniform2f + glUniform3f + glUniform4f + glUniform1i + glUniform2i + glUniform3i + glUniform4i + glUniform1fv + glUniform2fv + glUniform3fv + glUniform4fv + glUniform1iv + glUniform2iv + glUniform3iv + glUniform4iv + glUniformMatrix2fv + glUniformMatrix3fv + glUniformMatrix4fv + glUniformMatrix2x3fv + glUniformMatrix3x2fv + glUniformMatrix2x4fv + glUniformMatrix4x2fv + glUniformMatrix3x4fv + glUniformMatrix4x3fv + Specify the value of a uniform variable for the current program object + + C Specification + + + void glUniform1f + GLint location + GLfloat v0 + + + void glUniform2f + GLint location + GLfloat v0 + GLfloat v1 + + + void glUniform3f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glUniform4f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glUniform1i + GLint location + GLint v0 + + + void glUniform2i + GLint location + GLint v0 + GLint v1 + + + void glUniform3i + GLint location + GLint v0 + GLint v1 + GLint v2 + + + void glUniform4i + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + + Parameters + + + location + + Specifies the location of the uniform variable + to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified uniform variable. + + + + + C Specification + + + void glUniform1fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform2fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform3fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform4fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform1iv + GLint location + GLsizei count + const GLint *value + + + void glUniform2iv + GLint location + GLsizei count + const GLint *value + + + void glUniform3iv + GLint location + GLsizei count + const GLint *value + + + void glUniform4iv + GLint location + GLsizei count + const GLint *value + + + + Parameters + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + C Specification + + + void glUniformMatrix2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + Parameters + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices. + + + + transpose + + Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + Description + glUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glUniform operates on the program object + that was made part of current state by calling + glUseProgram. + + The commands glUniform{1|2|3|4}{f|i} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i or the f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise. + + All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0. + + The commands glUniform{1|2|3|4}{f|i}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glUniform{1|2|3|4}{f|i}. + + For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glUniform3f or + glUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count + + The commands + glUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices. + + Notes + glUniform is available only if the GL + version is 2.0 or greater. + + glUniformMatrix{2x3|3x2|2x4|4x2|3x4|4x3}fv + is available only if the GL version is 2.1 or greater. + + glUniform1i and + glUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error. + + If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged. + + Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged. + + If location is a value other than + -1 and it does not represent a valid uniform variable location + in the current program object, an error will be generated, and + no changes will be made to the uniform variable storage of the + current program object. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed. + + Errors + GL_INVALID_OPERATION is generated if there + is no current program object. + + GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glUniform + command. + + GL_INVALID_OPERATION is generated if one of + the integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, or + ivec4, or an array of these. + + GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for the current program object and + location is not equal to -1. + + GL_INVALID_VALUE is generated if + count is less than 0. + + GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable. + + GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glUniform1i and + glUniform1iv. + + GL_INVALID_OPERATION is generated if + glUniform is executed between the execution + of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveUniform + with the handle of a program object and the index of an active uniform variable + + glGetUniform + with the handle of a program object and the location of a + uniform variable + + glGetUniformLocation + with the handle of a program object and the name of a uniform + variable + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glUseProgram.xml b/upstream-man-pages/man2/glUseProgram.xml new file mode 100644 index 0000000..761be18 --- /dev/null +++ b/upstream-man-pages/man2/glUseProgram.xml @@ -0,0 +1,258 @@ + + + + + glUseProgram + 3G + + + glUseProgram + Installs a program object as part of current rendering state + + C Specification + + + void glUseProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object + whose executables are to be used as part of current + rendering state. + + + + + Description + glUseProgram installs the program + object specified by program as part of + current rendering state. One or more executables are created in + a program object by successfully attaching shader objects to it + with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + + + A program object will contain an executable that will run + on the vertex processor if it contains one or more shader + objects of type GL_VERTEX_SHADER that have + been successfully compiled and linked. Similarly, a program + object will contain an executable that will run on the fragment + processor if it contains one or more shader objects of type + GL_FRAGMENT_SHADER that have been + successfully compiled and linked. + + Successfully installing an executable on a programmable + processor will cause the corresponding fixed functionality of + OpenGL to be disabled. Specifically, if an executable is + installed on the vertex processor, the OpenGL fixed + functionality will be disabled as follows. + + + + The modelview matrix is not applied to vertex + coordinates. + + + The projection matrix is not applied to vertex + coordinates. + + + The texture matrices are not applied to texture + coordinates. + + + Normals are not transformed to eye + coordinates. + + + Normals are not rescaled or normalized. + + + Normalization of + GL_AUTO_NORMAL evaluated normals is + not performed. + + + Texture coordinates are not generated + automatically. + + + Per-vertex lighting is not performed. + + + Color material computations are not + performed. + + + Color index lighting is not performed. + + + This list also applies when setting the current + raster position. + + + + The executable that is installed on the vertex processor + is expected to implement any or all of the desired functionality + from the preceding list. Similarly, if an executable is + installed on the fragment processor, the OpenGL fixed + functionality will be disabled as follows. + + + + Texture environment and texture functions are not + applied. + + + Texture application is not applied. + + + Color sum is not applied. + + + Fog is not applied. + + + + Again, the fragment shader that is installed is expected + to implement any or all of the desired functionality from the + preceding list. + + While a program object is in use, applications are free to + modify attached shader objects, compile attached shader objects, + attach additional shader objects, and detach or delete shader + objects. None of these operations will affect the executables + that are part of the current state. However, relinking the + program object that is currently in use will install the program + object as part of the current rendering state if the link + operation was successful (see + glLinkProgram + ). If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE, but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked. + + If program contains shader objects + of type GL_VERTEX_SHADER but it does not + contain shader objects of type + GL_FRAGMENT_SHADER, an executable will be + installed on the vertex processor, but fixed functionality will + be used for fragment processing. Similarly, if + program contains shader objects of type + GL_FRAGMENT_SHADER but it does not contain + shader objects of type GL_VERTEX_SHADER, an + executable will be installed on the fragment processor, but + fixed functionality will be used for vertex processing. If + program is 0, the programmable processors + will be disabled, and fixed functionality will be used for both + vertex and fragment processing. + + Notes + glUseProgram is available only if the + GL version is 2.0 or greater. + + While a program object is in use, the state that controls + the disabled fixed functionality may also be updated using the + normal OpenGL calls. + + Like display lists and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + + Errors + GL_INVALID_VALUE is generated if + program is neither 0 nor a value + generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program could not be made part of current + state. + + GL_INVALID_OPERATION is generated if + glUseProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with a valid program object and the index of an active attribute + variable + + glGetActiveUniform + with a valid program object and the index of an active uniform + variable + + glGetAttachedShaders + with a valid program object + + glGetAttribLocation + with a valid program object and the name of an attribute + variable + + glGetProgram + with a valid program object and the parameter to be queried + + glGetProgramInfoLog + with a valid program object + + glGetUniform + with a valid program object and the location of a uniform + variable + + glGetUniformLocation + with a valid program object and the name of a uniform + variable + + glIsProgram + + See Also + gllAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glValidateProgram, + glVertexAttrib + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glValidateProgram.xml b/upstream-man-pages/man2/glValidateProgram.xml new file mode 100644 index 0000000..6ef6e60 --- /dev/null +++ b/upstream-man-pages/man2/glValidateProgram.xml @@ -0,0 +1,142 @@ + + + + + glValidateProgram + 3G + + + glValidateProgram + Validates a program object + + C Specification + + + void glValidateProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object to + be validated. + + + + + Description + glValidateProgram checks to see + whether the executables contained in + program can execute given the current + OpenGL state. The information generated by the validation + process will be stored in program's + information log. The validation information may consist of an + empty string, or it may be a string containing information about + how the current program object interacts with the rest of + current OpenGL state. This provides a way for OpenGL + implementers to convey more information about why the current + program is inefficient, suboptimal, failing to execute, and so + on. + + The status of the validation operation will be stored as + part of the program object's state. This value will be set to + GL_TRUE if the validation succeeded, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_VALIDATE_STATUS. If validation is + successful, program is guaranteed to + execute given the current state. Otherwise, + program is guaranteed to not execute. + + This function is typically useful only during application + development. The informational string stored in the information + log is completely implementation dependent; therefore, an + application should not expect different OpenGL implementations + to produce identical information strings. + + Notes + glValidateProgram is available only + if the GL version is 2.0 or greater. + + This function mimics the validation operation that OpenGL + implementations must perform when rendering commands are issued + while programmable shaders are part of current state. The error + GL_INVALID_OPERATION will be generated by + glBegin, + glRasterPos, + or any command that performs an implicit call to + glBegin + if: + + + + any two active samplers in the current program + object are of different types, but refer to the same + texture image unit, + + + any active sampler in the current program object + refers to a texture image unit where fixed-function + fragment processing accesses a texture target that does + not match the sampler type, or + + + the sum of the number of active samplers in the + program and the number of texture image units enabled + for fixed-function fragment processing exceeds the + combined limit on the total number of texture image + units allowed. + + + + It may be difficult or cause a performance degradation for + applications to catch these errors when rendering commands are + issued. Therefore, applications are advised to make calls to + glValidateProgram to detect these issues + during application development. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + glValidateProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd. + + Associated Gets + glGetProgram + with arguments program and + GL_VALIDATE_STATUS + + glGetProgramInfoLog + with argument program + + glIsProgram + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glVertex.xml b/upstream-man-pages/man2/glVertex.xml new file mode 100644 index 0000000..cc0c7e9 --- /dev/null +++ b/upstream-man-pages/man2/glVertex.xml @@ -0,0 +1,291 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glVertex + 3G + + + glVertex + specify a vertex + + C Specification + + + void glVertex2s + GLshort x + GLshort y + + + + + void glVertex2i + GLint x + GLint y + + + + + void glVertex2f + GLfloat x + GLfloat y + + + + + void glVertex2d + GLdouble x + GLdouble y + + + + + void glVertex3s + GLshort x + GLshort y + GLshort z + + + + + void glVertex3i + GLint x + GLint y + GLint z + + + + + void glVertex3f + GLfloat x + GLfloat y + GLfloat z + + + + + void glVertex3d + GLdouble x + GLdouble y + GLdouble z + + + + + void glVertex4s + GLshort x + GLshort y + GLshort z + GLshort w + + + + + void glVertex4i + GLint x + GLint y + GLint z + GLint w + + + + + void glVertex4f + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + + void glVertex4d + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + Parameters + + + x + y + z + w + + + Specify x, y, z, and w coordinates of a vertex. + Not all parameters are present in all forms of the command. + + + + + + C Specification + + + void glVertex2sv + const GLshort * v + + + + + void glVertex2iv + const GLint * v + + + + + void glVertex2fv + const GLfloat * v + + + + + void glVertex2dv + const GLdouble * v + + + + + void glVertex3sv + const GLshort * v + + + + + void glVertex3iv + const GLint * v + + + + + void glVertex3fv + const GLfloat * v + + + + + void glVertex3dv + const GLdouble * v + + + + + void glVertex4sv + const GLshort * v + + + + + void glVertex4iv + const GLint * v + + + + + void glVertex4fv + const GLfloat * v + + + + + void glVertex4dv + const GLdouble * v + + + + Parameters + + + v + + + Specifies a pointer to an array of two, three, or four elements. + The elements of a two-element array are + x + and + y; + of a three-element array, + x, + y, + and + z; + and of a four-element array, + x, + y, + z, + and + w. + + + + + + Description + + glVertex commands are used within glBegin/glEnd pairs to specify + point, line, and polygon vertices. The current color, normal, texture + coordinates, and fog coordinate are associated with the vertex when glVertex + is called. + + + When only + x + and + y + are specified, + z + defaults to 0 and + w + defaults to 1. When + x, + y, + and + z + are specified, + w + defaults to 1. + + + Notes + + Invoking glVertex outside of a glBegin/glEnd pair + results in undefined behavior. + + + See Also + + glBegin, + glCallList, + glColor, + glEdgeFlag, + glEvalCoord, + glFogCoord, + glIndex, + glMaterial, + glMultiTexCoord, + glNormal, + glRect, + glTexCoord, + glVertexPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glVertexAttrib.xml b/upstream-man-pages/man2/glVertexAttrib.xml new file mode 100644 index 0000000..c9f161b --- /dev/null +++ b/upstream-man-pages/man2/glVertexAttrib.xml @@ -0,0 +1,422 @@ + + + + + glVertexAttrib + 3G + + + glVertexAttrib + Specifies the value of a generic vertex attribute + + C Specification + + + void glVertexAttrib1f + GLuint index + GLfloat v0 + + + void glVertexAttrib1s + GLuint index + GLshort v0 + + + void glVertexAttrib1d + GLuint index + GLdouble v0 + + + void glVertexAttrib2f + GLuint index + GLfloat v0 + GLfloat v1 + + + void glVertexAttrib2s + GLuint index + GLshort v0 + GLshort v1 + + + void glVertexAttrib2d + GLuint index + GLdouble v0 + GLdouble v1 + + + void glVertexAttrib3f + GLuint index + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glVertexAttrib3s + GLuint index + GLshort v0 + GLshort v1 + GLshort v2 + + + void glVertexAttrib3d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + + + void glVertexAttrib4f + GLuint index + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glVertexAttrib4s + GLuint index + GLshort v0 + GLshort v1 + GLshort v2 + GLshort v3 + + + void glVertexAttrib4d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + GLdouble v3 + + + void glVertexAttrib4Nub + GLuint index + GLubyte v0 + GLubyte v1 + GLubyte v2 + GLubyte v3 + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified vertex attribute. + + + + + C Specification + + + void glVertexAttrib1fv + GLuint index + const GLfloat *v + + + void glVertexAttrib1sv + GLuint index + const GLshort *v + + + void glVertexAttrib1dv + GLuint index + const GLdouble *v + + + void glVertexAttrib2fv + GLuint index + const GLfloat *v + + + void glVertexAttrib2sv + GLuint index + const GLshort *v + + + void glVertexAttrib2dv + GLuint index + const GLdouble *v + + + void glVertexAttrib3fv + GLuint index + const GLfloat *v + + + void glVertexAttrib3sv + GLuint index + const GLshort *v + + + void glVertexAttrib3dv + GLuint index + const GLdouble *v + + + void glVertexAttrib4fv + GLuint index + const GLfloat *v + + + void glVertexAttrib4sv + GLuint index + const GLshort *v + + + void glVertexAttrib4dv + GLuint index + const GLdouble *v + + + void glVertexAttrib4iv + GLuint index + const GLint *v + + + void glVertexAttrib4bv + GLuint index + const GLbyte *v + + + void glVertexAttrib4ubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4usv + GLuint index + const GLushort *v + + + void glVertexAttrib4uiv + GLuint index + const GLuint *v + + + void glVertexAttrib4Nbv + GLuint index + const GLbyte *v + + + void glVertexAttrib4Nsv + GLuint index + const GLshort *v + + + void glVertexAttrib4Niv + GLuint index + const GLint *v + + + void glVertexAttrib4Nubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4Nusv + GLuint index + const GLushort *v + + + void glVertexAttrib4Nuiv + GLuint index + const GLuint *v + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + v + + Specifies a pointer to an array of values to + be used for the generic vertex attribute. + + + + + Description + OpenGL defines a number of standard vertex attributes that + applications can modify with standard API entry points (color, + normal, texture coordinates, etc.). The + glVertexAttrib family of entry points + allows an application to pass generic vertex attributes in + numbered locations. + + Generic attributes are defined as four-component values + that are organized into an array. The first entry of this array + is numbered 0, and the size of the array is specified by the + implementation-dependent constant + GL_MAX_VERTEX_ATTRIBS. Individual elements + of this array can be modified with a + glVertexAttrib call that specifies the + index of the element to be modified and a value for that + element. + + These commands can be used to specify one, two, three, or + all four components of the generic vertex attribute specified by + index. A 1 in the + name of the command indicates that only one value is passed, and + it will be used to modify the first component of the generic + vertex attribute. The second and third components will be set to + 0, and the fourth component will be set to 1. Similarly, a + 2 in the name of the command indicates that + values are provided for the first two components, the third + component will be set to 0, and the fourth component will be set + to 1. A 3 in the name of the command + indicates that values are provided for the first three + components and the fourth component will be set to 1, whereas a + 4 in the name indicates that values are + provided for all four components. + + The letters s, + f, i, + d, ub, + us, and ui indicate + whether the arguments are of type short, float, int, double, + unsigned byte, unsigned short, or unsigned int. When + v is appended to the name, the commands can + take a pointer to an array of such values. The commands + containing N indicate that the arguments + will be passed as fixed-point values that are scaled to a + normalized range according to the component conversion rules + defined by the OpenGL specification. Signed values are + understood to represent fixed-point values in the range [-1,1], + and unsigned values are understood to represent fixed-point + values in the range [0,1]. + + OpenGL Shading Language attribute variables are allowed to + be of type mat2, mat3, or mat4. Attributes of these types may be + loaded using the glVertexAttrib entry + points. Matrices must be loaded into successive generic + attribute slots in column major order, with one column of the + matrix in each generic attribute slot. + + A user-defined attribute variable declared in a vertex + shader can be bound to a generic attribute index by calling + glBindAttribLocation. + This allows an application to use more descriptive variable + names in a vertex shader. A subsequent change to the specified + generic vertex attribute will be immediately reflected as a + change to the corresponding attribute variable in the vertex + shader. + + The binding between a generic vertex attribute index and a + user-defined attribute variable in a vertex shader is part of + the state of a program object, but the current value of the + generic vertex attribute is not. The value of each generic + vertex attribute is part of current state, just like standard + vertex attributes, and it is maintained even if a different + program object is used. + + An application may freely modify generic vertex attributes + that are not bound to a named vertex shader attribute variable. + These values are simply maintained as part of current state and + will not be accessed by the vertex shader. If a generic vertex + attribute bound to an attribute variable in a vertex shader is + not updated while the vertex shader is executing, the vertex + shader will repeatedly use the current value for the generic + vertex attribute. + + The generic vertex attribute with index 0 is the same as + the vertex position attribute previously defined by OpenGL. A + glVertex2, + glVertex3, + or + glVertex4 + command is completely equivalent to the corresponding + glVertexAttrib command with an index + argument of 0. A vertex shader can access generic vertex + attribute 0 by using the built-in attribute variable + gl_Vertex. There are no current values + for generic vertex attribute 0. This is the only generic vertex + attribute with this property; calls to set other standard vertex + attributes can be freely mixed with calls to set any of the + other generic vertex attributes. + + Notes + glVertexAttrib is available only if + the GL version is 2.0 or greater. + + Generic vertex attributes can be updated at any time. In + particular, glVertexAttrib can be called + between a call to + glBegin + and the corresponding call to + glEnd. + + It is possible for an application to bind more than one + attribute name to the same generic vertex attribute index. This + is referred to as aliasing, and it is allowed only if just one + of the aliased attribute variables is active in the vertex + shader, or if no path through the vertex shader consumes more + than one of the attributes aliased to the same location. OpenGL + implementations are not required to do error checking to detect + aliasing, they are allowed to assume that aliasing will not + occur, and they are allowed to employ optimizations that work + only in the absence of aliasing. + + There is no provision for binding standard vertex + attributes; therefore, it is not possible to alias generic + attributes with standard attributes. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with argument program and the index of an active + attribute variable + + glGetAttribLocation + with argument program and an attribute + variable name + + glGetVertexAttrib + with arguments GL_CURRENT_VERTEX_ATTRIB and + index + + See Also + glBindAttribLocation, + glVertex, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glVertexAttribPointer.xml b/upstream-man-pages/man2/glVertexAttribPointer.xml new file mode 100644 index 0000000..7f9949b --- /dev/null +++ b/upstream-man-pages/man2/glVertexAttribPointer.xml @@ -0,0 +1,241 @@ + + + + + glVertexAttribPointer + 3G + + + glVertexAttribPointer + define an array of generic vertex attribute data + + C Specification + + + void glVertexAttribPointer + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + const GLvoid * pointer + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + size + + Specifies the number of components per + generic vertex attribute. Must + be 1, 2, 3, or 4. The initial value is 4. + + + + type + + Specifies the data type of each component in + the array. Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, or + GL_DOUBLE are + accepted. The initial value is GL_FLOAT. + + + + normalized + + Specifies whether fixed-point data values + should be normalized (GL_TRUE) + or converted directly as fixed-point values + (GL_FALSE) when they are + accessed. + + + + stride + + Specifies the byte offset between consecutive + generic vertex attributes. If stride + is 0, the generic vertex attributes are + understood to be tightly packed in the + array. The initial value is 0. + + + + pointer + + Specifies a pointer to the first component of + the first generic vertex attribute in the array. The initial value is 0. + + + + + Description + glVertexAttribPointer specifies the + location and data format of the array of generic vertex attributes at index index + to use when rendering. size + specifies the number of components per attribute and must be 1, + 2, 3, or 4. type specifies the data type + of each component, and stride specifies + the byte stride from one attribute to the next, allowing vertices and + attributes to be packed into a single array or + stored in separate arrays. + If set to GL_TRUE, + normalized indicates that values stored + in an integer format are to be mapped to the range [-1,1] (for + signed values) or [0,1] (for unsigned values) when they are + accessed and converted to floating point. Otherwise, values will + be converted to floats directly without normalization. + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a generic vertex attribute array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array + client-side state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index. + + When a generic vertex attribute array is specified, + size, type, + normalized, + stride, and + pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + To enable and disable a generic vertex attribute array, + call + glEnableVertexAttribArray + and + glDisableVertexAttribArray + with index. If enabled, the generic + vertex attribute array is used when + glArrayElement, + glDrawArrays, + glMultiDrawArrays, + glDrawElements, + glMultiDrawElements, or + glDrawRangeElements + is called. + + Notes + glVertexAttribPointer is available + only if the GL version is 2.0 or greater. + + Each generic vertex attribute array is initially disabled + and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + Execution of glVertexAttribPointer is + not allowed between the execution of + glBegin + and the corresponding execution of + glEnd, + but an error may or may not be generated. If no error is + generated, the operation is undefined. + + glVertexAttribPointer is typically + implemented on the client side. + + Generic vertex attribute array parameters are client-side + state and are therefore not saved or restored by + glPushAttrib + and + glPopAttrib. + Use + glPushClientAttrib + and + glPopClientAttrib + instead. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_VALUE is generated if + size is not 1, 2, 3, or 4. + + GL_INVALID_ENUM is generated if + type is not an accepted value. + + GL_INVALID_VALUE is generated if + stride is negative. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_ENABLED + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_SIZE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_TYPE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_NORMALIZED + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_STRIDE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING + + glGet with argument + GL_ARRAY_BUFFER_BINDING + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + glArrayElement, + glBindAttribLocation, + glBindBuffer, + glColorPointer, + glDisableVertexAttribArray, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEnableVertexAttribArray, + glEdgeFlagPointer, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertexAttrib, + glVertexPointer + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man2/glVertexPointer.xml b/upstream-man-pages/man2/glVertexPointer.xml new file mode 100644 index 0000000..1ad3833 --- /dev/null +++ b/upstream-man-pages/man2/glVertexPointer.xml @@ -0,0 +1,202 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glVertexPointer + 3G + + + glVertexPointer + define an array of vertex data + + C Specification + + + void glVertexPointer + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + + + Parameters + + + size + + + Specifies the number of coordinates per vertex. Must be 2, 3, or + 4. The initial value is 4. + + + + + type + + + Specifies the data type of each coordinate in the array. + Symbolic constants + GL_SHORT, + GL_INT, + GL_FLOAT, + or GL_DOUBLE + are accepted. The initial value is GL_FLOAT. + + + + + stride + + + Specifies the byte offset between consecutive + vertices. If stride is 0, the vertices are understood to be tightly packed in + the array. The initial value + is 0. + + + + + pointer + + + Specifies a pointer to the first coordinate of the first vertex in the + array. The initial value is 0. + + + + + + Description + + glVertexPointer specifies the location and data format of an array of vertex coordinates + to use when rendering. + size specifies the number of coordinates per vertex, and must be 2, 3, or 4. + type specifies the data type of each coordinate, and stride specifies the byte stride from one + vertex to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see glInterleavedArrays.) + + + If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a vertex array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as vertex array + client-side state (GL_VERTEX_ARRAY_BUFFER_BINDING). + + + When a vertex array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. + + + To enable and disable the vertex array, call glEnableClientState and + glDisableClientState with the argument GL_VERTEX_ARRAY. If + enabled, the vertex array is used when + glArrayElement, glDrawArrays, glMultiDrawArrays, + glDrawElements, glMultiDrawElements, or glDrawRangeElements + is called. + + + Notes + + glVertexPointer is available only if the GL version is 1.1 or greater. + + + The vertex array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + Execution of glVertexPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. + + + glVertexPointer is typically implemented on the client side. + + + Vertex array parameters are client-side state and are therefore not + saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and glPopClientAttrib instead. + + + Errors + + GL_INVALID_VALUE is generated if size is not 2, 3, or 4. + + + GL_INVALID_ENUM is generated if type is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is negative. + + + Associated Gets + + glIsEnabled with argument GL_VERTEX_ARRAY + + + glGet with argument GL_VERTEX_ARRAY_SIZE + + + glGet with argument GL_VERTEX_ARRAY_TYPE + + + glGet with argument GL_VERTEX_ARRAY_STRIDE + + + glGet with argument GL_VERTEX_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGetPointerv with argument GL_VERTEX_ARRAY_POINTER + + + See Also + + glArrayElement, + glBindBuffer, + glColorPointer, + glDisableClientState, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEdgeFlagPointer, + glEnableClientState, + glFogCoordPointer, + glIndexPointer, + glInterleavedArrays, + glMultiDrawArrays, + glMultiDrawElements, + glNormalPointer, + glPopClientAttrib, + glPushClientAttrib, + glSecondaryColorPointer, + glTexCoordPointer, + glVertex, + glVertexAttribPointer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glViewport.xml b/upstream-man-pages/man2/glViewport.xml new file mode 100644 index 0000000..225dbe1 --- /dev/null +++ b/upstream-man-pages/man2/glViewport.xml @@ -0,0 +1,193 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glViewport + 3G + + + glViewport + set the viewport + + C Specification + + + void glViewport + GLint x + GLint y + GLsizei width + GLsizei height + + + + + Parameters + + + x + y + + + Specify the lower left corner of the viewport rectangle, + in pixels. The initial value is (0,0). + + + + + width + height + + + Specify the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + + Description + + glViewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: + + + + + + x + w + + = + + + + x + nd + + + + 1 + + + + + + width + 2 + + + + + x + + + + + + + + + y + w + + = + + + + y + nd + + + + 1 + + + + + + height + 2 + + + + + y + + + + + + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. + + + Errors + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if glViewport + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_VIEWPORT + + + glGet with argument GL_MAX_VIEWPORT_DIMS + + + See Also + + glDepthRange + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glWindowPos.xml b/upstream-man-pages/man2/glWindowPos.xml new file mode 100644 index 0000000..4720498 --- /dev/null +++ b/upstream-man-pages/man2/glWindowPos.xml @@ -0,0 +1,376 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glWindowPos + 3G + + + glWindowPos + specify the raster position in window coordinates for pixel operations + + C Specification + + + void glWindowPos2s + GLshort x + GLshort y + + + + + void glWindowPos2i + GLint x + GLint y + + + + + void glWindowPos2f + GLfloat x + GLfloat y + + + + + void glWindowPos2d + GLdouble x + GLdouble y + + + + + void glWindowPos3s + GLshort x + GLshort y + GLshort z + + + + + void glWindowPos3i + GLint x + GLint y + GLint z + + + + + void glWindowPos3f + GLfloat x + GLfloat y + GLfloat z + + + + + void glWindowPos3d + GLdouble x + GLdouble y + GLdouble z + + + + + Parameters + + + x + y + z + + + Specify the + x, + y, + z + coordinates for the raster position. + + + + + + C Specification + + + void glWindowPos2sv + const GLshort * v + + + + + void glWindowPos2iv + const GLint * v + + + + + void glWindowPos2fv + const GLfloat * v + + + + + void glWindowPos2dv + const GLdouble * v + + + + + void glWindowPos3sv + const GLshort * v + + + + + void glWindowPos3iv + const GLint * v + + + + + void glWindowPos3fv + const GLfloat * v + + + + + void glWindowPos3dv + const GLdouble * v + + + + Parameters + + + v + + + Specifies a pointer to an array of two or three elements, + specifying + x, + y, + z + coordinates, respectively. + + + + + + Description + + The GL maintains a 3D position in window coordinates. This position, + called the raster position, is used to position pixel and bitmap write + operations. It is maintained with subpixel accuracy. See glBitmap, + glDrawPixels, and glCopyPixels. + + + glWindowPos2 specifies the + x + and + y + coordinates, while + z + is + implicitly set to 0. glWindowPos3 specifies all three coordinates. + The + w + coordinate of the current raster position is always set to 1.0. + + + glWindowPos directly updates the + x + and + y + coordinates of the current raster + position with the values specified. That is, the values are neither + transformed by the current modelview and projection matrices, nor by + the viewport-to-window transform. The + z + coordinate of the current raster + position is updated in the following manner: + + + + + + z + = + + + + + n + + + f + + + + + n + + + + z + × + + + f + - + n + + + + + + + + + + + + + if + + z + + <= + 0 + + + + + + if + + z + + >= + 1 + + + + + otherwise + + + + + + + + + + + + where + n + is GL_DEPTH_RANGE's near value, and + f + is + GL_DEPTH_RANGE's far value. See glDepthRange. + + + The specified coordinates are not clip-tested, causing the raster position + to always be valid. + + + The current raster position also includes some associated color data and + texture coordinates. If lighting is enabled, then + GL_CURRENT_RASTER_COLOR (in RGBA mode) or GL_CURRENT_RASTER_INDEX + (in color index mode) is set to the color produced by the lighting + calculation (see glLight, glLightModel, and glShadeModel). + If lighting is disabled, current color (in RGBA mode, state variable + GL_CURRENT_COLOR) or color index (in color index mode, state variable + GL_CURRENT_INDEX) is used to update the current raster color. + GL_CURRENT_RASTER_SECONDARY_COLOR (in RGBA mode) is likewise updated. + + + Likewise, GL_CURRENT_RASTER_TEXTURE_COORDS is updated as a function of + GL_CURRENT_TEXTURE_COORDS, based on the texture matrix and the texture + generation functions (see glTexGen). The + GL_CURRENT_RASTER_DISTANCE is set to the GL_CURRENT_FOG_COORD. + + + + + Notes + + glWindowPos is available only if the GL version is 1.4 or greater. + + + The raster position is modified by glRasterPos, glBitmap, and + glWindowPos. + + + Calling glDrawElements, or glDrawRangeElements may leave the + current color or index indeterminate. + If glWindowPos is executed while the current color or index is indeterminate, the + current raster color or current raster index remains indeterminate. + + + There are distinct raster texture coordinates for each texture unit. Each + texture unit's current raster texture coordinates are updated by glWindowPos. + + + Errors + + GL_INVALID_OPERATION is generated if glWindowPos + is executed between the execution of glBegin + and the corresponding execution of glEnd. + + + Associated Gets + + glGet with argument GL_CURRENT_RASTER_POSITION + + + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + + + glGet with argument GL_CURRENT_RASTER_DISTANCE + + + glGet with argument GL_CURRENT_RASTER_COLOR + + + glGet with argument GL_CURRENT_RASTER_SECONDARY_COLOR + + + glGet with argument GL_CURRENT_RASTER_INDEX + + + glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS + + + See Also + + glBitmap, + glCopyPixels, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glDrawPixels, + glMultiTexCoord, + glRasterPos, + glTexCoord, + glTexGen, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXChooseFBConfig.xml b/upstream-man-pages/man2/glXChooseFBConfig.xml new file mode 100644 index 0000000..e48fa64 --- /dev/null +++ b/upstream-man-pages/man2/glXChooseFBConfig.xml @@ -0,0 +1,684 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXChooseFBConfig + 3G + + + glXChooseFBConfig + return a list of GLX frame buffer configurations that match the specified attributes + + C Specification + + + GLXFBConfig * glXChooseFBConfig + Display * dpy + int screen + const int * attrib_list + int * nelements + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + screen + + + Specifies the screen number. + + + + + attrib_list + + + Specifies a list of attribute/value pairs. + The last attribute must be None. + + + + + nelements + + + Returns the number of elements in the list returned by glXChooseFBConfig. + + + + + + Description + + glXChooseFBConfig returns GLX frame buffer configurations that match the attributes + specified in attrib_list, or NULL if no matches are found. + If attrib_list is NULL, then glXChooseFBConfig returns an array of GLX + frame buffer configurations that are available on the specified screen. + If an error occurs, no frame buffer configurations exist on the + specified screen, or if no frame buffer configurations match the + specified attributes, then NULL is returned. + Use XFree to free the memory returned by + glXChooseFBConfig. + + + All attributes in attrib_list, including boolean attributes, are + immediately followed by the corresponding desired value. The list is + terminated with None. If an attribute is not specified in attrib_list, + then the default value (see below) is used (and the attribute is said to be + specified implicitly). For example, if GLX_STEREO is not specified, then + it is assumed to be False. For some attributes, the default is + GLX_DONT_CARE, meaning that any value is OK for this attribute, so the + attribute will not be checked. + + + Attributes are matched in an attribute-specific manner. + Some of the attributes, such as GLX_LEVEL, must match the specified + value exactly; others, such as, GLX_RED_SIZE must meet or exceed the + specified minimum values. If more than one GLX frame buffer configuration is found, + then a list of configurations, sorted + according to the ``best'' match criteria, is returned. The match + criteria for each attribute and the exact sorting order is + defined below. + + + The interpretations of the various GLX visual attributes are as follows: + + + + GLX_FBCONFIG_ID + + + + + Must be followed by a valid XID that indicates the desired GLX frame + buffer configuration. When a GLX_FBCONFIG_ID is specified, all + attributes are ignored. The default value is GLX_DONT_CARE. + + + + + GLX_BUFFER_SIZE + + + + + Must be followed by a nonnegative integer that indicates the desired + color index buffer size. + The smallest index buffer of at least the specified size is preferred. + This attribute is ignored if GLX_COLOR_INDEX_BIT is not set in + GLX_RENDER_TYPE. The default value is 0. + + + + + GLX_LEVEL + + + + + Must be followed by an integer buffer-level specification. + This specification is honored exactly. + Buffer level 0 corresponds to the default frame buffer of the display. + Buffer level 1 is the first overlay frame buffer, level two the second + overlay frame buffer, and so on. + Negative buffer levels correspond to underlay frame buffers. + The default value is 0. + + + + + GLX_DOUBLEBUFFER + + + + + Must be followed by True or False. If + True is specified, then + only double-buffered frame buffer configurations are considered; + if + False is specified, then + only single-buffered frame buffer configurations are considered. + The default value is GLX_DONT_CARE. + + + + + GLX_STEREO + + + + + Must be followed by True or False. If + True is specified, then + only stereo frame buffer configurations are considered; + if + False is specified, then + only monoscopic frame buffer configurations are considered. + The default value is False. + + + + + GLX_AUX_BUFFERS + + + + + Must be followed by a nonnegative integer that indicates the desired + number of auxiliary buffers. + Configurations with the + smallest number of auxiliary buffers that meet or exceed + the specified number are preferred. + The default value is 0. + + + + + GLX_RED_SIZE, GLX_GREEN_SIZE, GLX_BLUE_SIZE, GLX_ALPHA_SIZE + + + + + Each attribute, if present, must be followed by a nonnegative minimum size + specification or GLX_DONT_CARE. + The largest available total RGBA color buffer size (sum of GLX_RED_SIZE, + GLX_GREEN_SIZE, GLX_BLUE_SIZE, and GLX_ALPHA_SIZE) + of at least the minimum size specified for each color component is preferred. + If the requested number of bits for a color component is 0 or + GLX_DONT_CARE, it is not considered. The default value for each color + component is 0. + + + + + GLX_DEPTH_SIZE + + + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no depth buffer are preferred. + Otherwise, the largest available depth buffer of at least the minimum size + is preferred. + The default value is 0. + + + + + GLX_STENCIL_SIZE + + + + + Must be followed by a nonnegative integer that indicates the desired + number of stencil bitplanes. + The smallest stencil buffer of at least the specified size is preferred. + If the desired value is zero, + frame buffer configurations with no stencil buffer are preferred. + The default value is 0. + + + + + GLX_ACCUM_RED_SIZE + + + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no red accumulation buffer are preferred. + Otherwise, the largest possible red accumulation buffer + of at least the minimum size is preferred. + The default value is 0. + + + + + GLX_ACCUM_GREEN_SIZE + + + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no green accumulation buffer are preferred. + Otherwise, the largest possible green accumulation buffer + of at least the minimum size is preferred. + The default value is 0. + + + + + GLX_ACCUM_BLUE_SIZE + + + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no blue accumulation buffer are preferred. + Otherwise, the largest possible blue accumulation buffer + of at least the minimum size is preferred. + The default value is 0. + + + + + GLX_ACCUM_ALPHA_SIZE + + + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no alpha accumulation buffer are preferred. + Otherwise, the largest possible alpha accumulation buffer + of at least the minimum size is preferred. + The default value is 0. + + + + + GLX_RENDER_TYPE + + + + + Must be followed by a mask indicating which OpenGL rendering modes + the frame buffer configuration must support. + Valid bits are GLX_RGBA_BIT and + GLX_COLOR_INDEX_BIT. If the mask is + set to GLX_RGBA_BIT | GLX_COLOR_INDEX_BIT, + then only frame buffer configurations that can be bound to both + RGBA contexts and color index contexts will be considered. + The default value is GLX_RGBA_BIT. + + + + + GLX_DRAWABLE_TYPE + + + + + Must be followed by a mask indicating which GLX drawable types + the frame buffer configuration must support. Valid bits are + GLX_WINDOW_BIT, + GLX_PIXMAP_BIT, and GLX_PBUFFER_BIT. + For example, if mask is set to + GLX_WINDOW_BIT | GLX_PIXMAP_BIT, + only frame buffer configurations that support both windows and GLX pixmaps + will be considered. + The default value is GLX_WINDOW_BIT. + + + + + GLX_X_RENDERABLE + + + + + Must be followed by True or False. + If True is specified, then only frame buffer configurations that + have associated X visuals (and can be used to render to Windows and/or + GLX pixmaps) will be considered. + The default value is GLX_DONT_CARE. + + + + + GLX_X_VISUAL_TYPE + + + + + Must be followed by one of + GLX_TRUE_COLOR, + GLX_DIRECT_COLOR, + GLX_PSEUDO_COLOR, + GLX_STATIC_COLOR, + GLX_GRAY_SCALE, or + GLX_STATIC_GRAY, indicating the desired X visual type. + Not all frame buffer configurations have an associated X visual. If + GLX_DRAWABLE_TYPE is specified in attrib_list and the + mask that follows does not have GLX_WINDOW_BIT set, + then this value is ignored. It is also ignored if + GLX_X_RENDERABLE is specified as False. + RGBA rendering may be supported for visuals of type + GLX_TRUE_COLOR, + GLX_DIRECT_COLOR, + GLX_PSEUDO_COLOR, + or GLX_STATIC_COLOR, + but color index rendering is only supported for visuals of type + GLX_PSEUDO_COLOR or GLX_STATIC_COLOR + (i.e., single-channel visuals). + The tokens GLX_GRAY_SCALE and GLX_STATIC_GRAY will + not match current OpenGL enabled visuals, but are included for future use. + The default value for GLX_X_VISUAL_TYPE is GLX_DONT_CARE. + + + + + GLX_CONFIG_CAVEAT + + + + + Must be followed by one of + GLX_NONE, + GLX_SLOW_CONFIG, + GLX_NON_CONFORMANT_CONFIG. + If GLX_NONE is specified, then only frame buffer configurations with + no caveats will be considered; if GLX_SLOW_CONFIG + is specified, then only slow frame buffer configurations will be considered; if + GLX_NON_CONFORMANT_CONFIG is specified, then only + nonconformant frame buffer configurations will be considered. + The default value is GLX_DONT_CARE. + + + + + GLX_TRANSPARENT_TYPE + + + + + Must be followed by one of + GLX_NONE, + GLX_TRANSPARENT_RGB, + GLX_TRANSPARENT_INDEX. + If GLX_NONE is specified, then only opaque + frame buffer configurations will be considered; if GLX_TRANSPARENT_RGB + is specified, then only transparent + frame buffer configurations that support RGBA rendering will be considered; + if GLX_TRANSPARENT_INDEX is specified, + then only transparent frame buffer configurations that support color + index rendering will be considered. + The default value is GLX_NONE. + + + + + GLX_TRANSPARENT_INDEX_VALUE + + + + + Must be followed by an integer value indicating the transparent + index value; the value must be between 0 and the maximum + frame buffer value for indices. + Only frame buffer configurations that use the + specified transparent index value will be considered. + The default value is GLX_DONT_CARE. + This attribute is ignored unless GLX_TRANSPARENT_TYPE is + included in attrib_list and specified as GLX_TRANSPARENT_INDEX. + + + + + GLX_TRANSPARENT_RED_VALUE + + + + + Must be followed by an integer value indicating the transparent + red value; the value must be between 0 and the maximum + frame buffer value for red. + Only frame buffer configurations that use the + specified transparent red value will be considered. + The default value is GLX_DONT_CARE. + This attribute is + ignored unless GLX_TRANSPARENT_TYPE is included in + attrib_list and specified as GLX_TRANSPARENT_RGB. + + + + + GLX_TRANSPARENT_GREEN_VALUE + + + + + Must be followed by an integer value indicating the transparent + green value; the value must be between 0 and the maximum + frame buffer value for green. + Only frame buffer configurations that use the + specified transparent green value will be considered. + The default value is GLX_DONT_CARE. + This attribute is + ignored unless GLX_TRANSPARENT_TYPE is included in + attrib_list and specified as GLX_TRANSPARENT_RGB. + + + + + GLX_TRANSPARENT_BLUE_VALUE + + + + + Must be followed by an integer value indicating the transparent + blue value; the value must be between 0 and the maximum + frame buffer value for blue. + Only frame buffer configurations that use the + specified transparent blue value will be considered. + The default value is GLX_DONT_CARE. + This attribute is ignored unless GLX_TRANSPARENT_TYPE is included in + attrib_list and specified as GLX_TRANSPARENT_RGB. + + + + + GLX_TRANSPARENT_ALPHA_VALUE + + + + + Must be followed by an integer value indicating the transparent + alpha value; the value must be between 0 and the maximum + frame buffer value for alpha. + Only frame buffer configurations that use the + specified transparent alpha value will be considered. + The default value is GLX_DONT_CARE. + + + + + + When more than one GLX frame buffer configuration matches the specified attributes, + a list of matching configurations is returned. The list is sorted + according to the following precedence rules, which are applied in ascending + order (i.e., configurations + that are considered equal by a lower numbered rule are sorted by the higher + numbered rule): + + + + 1. + + + By GLX_CONFIG_CAVEAT where the precedence is GLX_NONE, + GLX_SLOW_CONFIG, and GLX_NON_CONFORMANT_CONFIG. + + + + + 2. + + + Larger total number of RGBA color components + (GLX_RED_SIZE, GLX_GREEN_SIZE, GLX_BLUE_SIZE, + plus GLX_ALPHA_SIZE) + that have higher number of bits. If the requested number of bits in + attrib_list is zero or GLX_DONT_CARE for a particular color + component, then the number of bits for that component is not considered. + + + + + 3. + + + Smaller GLX_BUFFER_SIZE. + + + + + 4. + + + Single buffered configuration (GLX_DOUBLEBUFFER being + False precedes a double buffered one. + + + + + 5. + + + Smaller GLX_AUX_BUFFERS. + + + + + 6. + + + Larger GLX_DEPTH_SIZE. + + + + + 7. + + + Smaller GLX_STENCIL_SIZE. + + + + + 8. + + + Larger total number of accumulation buffer color components + (GLX_ACCUM_RED_SIZE, GLX_ACCUM_GREEN_SIZE, + GLX_ACCUM_BLUE_SIZE, plus GLX_ACCUM_ALPHA_SIZE) that have + higher number of bits. If the requested number of bits in attrib_list is + zero or GLX_DONT_CARE for a particular color component, then the + number of bits for that component is not considered. + + + + + 9. + + + By GLX_X_VISUAL_TYPE where the precedence order is + GLX_TRUE_COLOR, GLX_DIRECT_COLOR, GLX_PSEUDO_COLOR, + GLX_STATIC_COLOR, GLX_GRAY_SCALE, GLX_STATIC_GRAY. + + + + + + Examples + + + + + attrib_list = + + + {GLX_RENDER_TYPE, GLX_RGBA_BIT, + GLX_RED_SIZE, 4, + GLX_GREEN_SIZE, 4, + GLX_BLUE_SIZE, 4, + None}; + + + + + + Specifies a frame buffer configuration that supports RGBA rendering + and exists in the normal frame buffer, + not an overlay or underlay buffer. + The returned visual supports at least four bits each of red, + green, and blue, + and possibly no bits of alpha. + It does not support stereo display. + It may or may not have one or more auxiliary color buffers, + a back buffer, + a depth buffer, + a stencil buffer, + or an accumulation buffer. + + + Notes + + glXChooseFBConfig is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + glXGetFBConfigs and glXGetFBConfigAttrib can + be used to implement selection algorithms other than the generic + one implemented by glXChooseFBConfig. Call glXChooseFBConfig to retrieve all the frame buffer configurations + on a particular screen or, alternatively, all the frame buffer configurations with + a particular set of attributes. Next, call glXGetFBConfigAttrib + to retrieve additional attributes for the frame buffer configurations and then + select between them. + + + GLX implementations are strongly discouraged, + but not proscribed, + from changing the selection algorithm used by glXChooseFBConfig. + Therefore, selections may change from release to release + of the client-side library. + + + Errors + + NULL is returned if an undefined GLX attribute is + encountered in attrib_list, if screen is invalid, or if dpy does + not support the GLX extension. + + + See Also + + glXGetFBConfigAttrib, + glXGetFBConfigs, + glXGetVisualFromFBConfig + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXChooseVisual.xml b/upstream-man-pages/man2/glXChooseVisual.xml new file mode 100644 index 0000000..8305696 --- /dev/null +++ b/upstream-man-pages/man2/glXChooseVisual.xml @@ -0,0 +1,367 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXChooseVisual + 3G + + + glXChooseVisual + return a visual that matches specified attributes + + C Specification + + + XVisualInfo* glXChooseVisual + Display * dpy + int screen + int * attribList + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + screen + + + Specifies the screen number. + + + + + attribList + + + Specifies a list of boolean attributes and integer attribute/value pairs. + The last attribute must be None. + + + + + + Description + + glXChooseVisual returns a pointer to an XVisualInfo structure describing the visual + that best meets a minimum specification. + The boolean GLX attributes of the visual that is returned will match the + specified values, + and the integer GLX attributes will meet or exceed the specified + minimum values. + If all other attributes are equivalent, then TrueColor and PseudoColor + visuals have priority over DirectColor and StaticColor visuals, + respectively. + If no conforming visual exists, NULL is returned. + To free the data returned by this function, use XFree. + + + All boolean GLX attributes default to False + except GLX_USE_GL, + which defaults to True. + All integer GLX attributes default to zero. + Default specifications are superseded by attributes included in attribList. + Boolean attributes included in attribList are understood to be True. + Integer attributes and enumerated type attributes are followed immediately + by the corresponding desired or + minimum value. + The list must be terminated with None. + + + The interpretations of the various GLX visual attributes are as follows: + + + + GLX_USE_GL + + + Ignored. + Only visuals that can be rendered with GLX are considered. + + + + + GLX_BUFFER_SIZE + + + Must be followed by a nonnegative integer that indicates the desired + color index buffer size. + The smallest index buffer of at least the specified size is preferred. + Ignored if GLX_RGBA is asserted. + + + + + GLX_LEVEL + + + Must be followed by an integer buffer-level specification. + This specification is honored exactly. + Buffer level zero corresponds to the main frame buffer of the display. + Buffer level one is the first overlay frame buffer, level two the second + overlay frame buffer, and so on. + Negative buffer levels correspond to underlay frame buffers. + + + + + GLX_RGBA + + + If present, + only TrueColor and DirectColor visuals are considered. + Otherwise, + only PseudoColor and StaticColor visuals are considered. + + + + + GLX_DOUBLEBUFFER + + + If present, + only double-buffered visuals are considered. + Otherwise, + only single-buffered visuals are considered. + + + + + GLX_STEREO + + + If present, + only stereo visuals are considered. + Otherwise, + only monoscopic visuals are considered. + + + + + GLX_AUX_BUFFERS + + + Must be followed by a nonnegative integer that indicates the desired + number of auxiliary buffers. + Visuals with the + smallest number of auxiliary buffers that meets or exceeds + the specified number are preferred. + + + + + GLX_RED_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available red buffer is preferred. + Otherwise, the largest available red buffer of at least the minimum size + is preferred. + + + + + GLX_GREEN_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available green buffer is preferred. + Otherwise, the largest available green buffer of at least the minimum size + is preferred. + + + + + GLX_BLUE_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available blue buffer is preferred. + Otherwise, the largest available blue buffer of at least the minimum size + is preferred. + + + + + GLX_ALPHA_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available alpha buffer is preferred. + Otherwise, the largest available alpha buffer of at least the minimum size + is preferred. + + + + + GLX_DEPTH_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no depth buffer are preferred. + Otherwise, the largest available depth buffer of at least the minimum size + is preferred. + + + + + GLX_STENCIL_SIZE + + + Must be followed by a nonnegative integer that indicates the desired + number of stencil bitplanes. + The smallest stencil buffer of at least the specified size is preferred. + If the desired value is zero, + visuals with no stencil buffer are preferred. + + + + + GLX_ACCUM_RED_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no red accumulation buffer are preferred. + Otherwise, the largest possible red accumulation buffer + of at least the minimum size is preferred. + + + + + GLX_ACCUM_GREEN_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no green accumulation buffer are preferred. + Otherwise, the largest possible green accumulation buffer + of at least the minimum size is preferred. + + + + + GLX_ACCUM_BLUE_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no blue accumulation buffer are preferred. + Otherwise, the largest possible blue accumulation buffer + of at least the minimum size is preferred. + + + + + GLX_ACCUM_ALPHA_SIZE + + + Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no alpha accumulation buffer are preferred. + Otherwise, the largest possible alpha accumulation buffer + of at least the minimum size is preferred. + + + + + + Examples + + + + + attribList = + + + {GLX_RGBA, + GLX_RED_SIZE, 4, + GLX_GREEN_SIZE, 4, + GLX_BLUE_SIZE, 4, + None}; + + + + + + Specifies a single-buffered RGB visual in the normal frame buffer, + not an overlay or underlay buffer. + The returned visual supports at least four bits each of red, + green, and blue, + and possibly no bits of alpha. + It does not support color index mode, + double-buffering, or stereo display. + It may or may not have one or more auxiliary color buffers, + a depth buffer, + a stencil buffer, + or an accumulation buffer. + + + Notes + + XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. + + + glXChooseVisual is implemented as a client-side utility using only XGetVisualInfo + and glXGetConfig. + Calls to these two routines can be used to implement selection algorithms + other than the generic one implemented by glXChooseVisual. + + + GLX implementations are strongly discouraged, + but not proscribed, + from changing the selection algorithm used by glXChooseVisual. + Therefore, selections may change from release to release + of the client-side library. + + + There is no direct filter for picking only visuals that + support GLXPixmaps. + GLXPixmaps are supported for visuals whose + GLX_BUFFER_SIZE + is one of the pixmap depths supported by the X server. + + + Errors + + NULL is returned if an undefined GLX attribute is encountered in + attribList. + + + See Also + + glXCreateContext, + glXGetConfig + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCopyContext.xml b/upstream-man-pages/man2/glXCopyContext.xml new file mode 100644 index 0000000..a10d1cd --- /dev/null +++ b/upstream-man-pages/man2/glXCopyContext.xml @@ -0,0 +1,153 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCopyContext + 3G + + + glXCopyContext + copy state from one rendering context to another + + C Specification + + + void glXCopyContext + Display * dpy + GLXContext src + GLXContext dst + unsigned long mask + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + src + + + Specifies the source context. + + + + + dst + + + Specifies the destination context. + + + + + mask + + + Specifies which portions of src state are to be copied to dst. + + + + + + Description + + glXCopyContext copies selected groups of state variables from src to dst. + mask indicates which groups of state variables are to be copied. + mask contains the bitwise OR of the same symbolic names that are + passed to the GL command glPushAttrib. + The single symbolic constant GLX_ALL_ATTRIB_BITS can be used to + copy the maximum possible portion of rendering state. + + + The copy can be done only if the renderers named by src and dst + share an address space. + Two rendering contexts share an address space if both are nondirect + using the same server, + or if both are direct and owned by a single process. + Note that in the nondirect case it is not necessary for the calling + threads to share an address space, + only for their related rendering contexts to share an address space. + + + Not all values for GL state can be copied. + For example, + pixel pack and unpack state, + render mode state, + and select and feedback state are not copied. + The state that can be copied is exactly the state that is manipulated + by the GL command + glPushAttrib. + + + An implicit glFlush is done by glXCopyContext if src is the current + context for the calling thread. + + + Notes + + + + A process is a single execution environment, + implemented in a single address space, + consisting of one or more threads. + + + A thread is one of a set of subprocesses that share + a single address space, + but maintain separate program counters, + stack spaces, + and other related global data. + A thread that is the only member of its subprocess group + is equivalent to a process. + + + Errors + + BadMatch is generated if rendering contexts src and dst + do not share an address space + or were not created with respect to the same screen. + + + BadAccess is generated if dst is current to any thread + (including the calling thread) at the time glXCopyContext is called. + + + GLXBadCurrentWindow is generated if src is the current + context and the current drawable is a window that is no longer valid. + + + GLXBadContext is generated if either src or dst is not + a valid GLX context. + + + See Also + + glPushAttrib, + glXCreateContext, + glXIsDirect + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCreateContext.xml b/upstream-man-pages/man2/glXCreateContext.xml new file mode 100644 index 0000000..67a8dd0 --- /dev/null +++ b/upstream-man-pages/man2/glXCreateContext.xml @@ -0,0 +1,174 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCreateContext + 3G + + + glXCreateContext + create a new GLX rendering context + + C Specification + + + GLXContext glXCreateContext + Display * dpy + XVisualInfo * vis + GLXContext shareList + Bool direct + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + vis + + + Specifies the visual that defines the frame buffer resources available to + the rendering context. + It is a pointer to an XVisualInfo structure, + not a visual ID or a pointer to a Visual. + + + + + shareList + + + Specifies the context with which to share display lists. + NULL indicates that no sharing is to take place. + + + + + direct + + + Specifies whether rendering is to be done with a direct connection + to the graphics system if possible (True) + or through the X server (False). + + + + + + Description + + glXCreateContext creates a GLX rendering context and returns its handle. + This context can be used to render into both windows and GLX pixmaps. + If glXCreateContext fails to create a rendering context, + NULL is returned. + + + If direct is True, + then a direct rendering context is created if the + implementation supports direct rendering, if the connection is to an X + server that is local, and if a direct rendering context is available. (An implementation may return an indirect context when direct is True.) + If direct is False, + then a rendering context that renders through the X server is always created. + Direct rendering provides a performance advantage in some implementations. + However, direct rendering contexts cannot be shared outside a single process, + and they may be unable to render to GLX pixmaps. + + + If shareList is not NULL, + then all display-list indexes and definitions are shared by + context shareList and by the newly created context. + An arbitrary number of contexts can share a single display-list space. + However, + all rendering contexts that share a single display-list space must + themselves exist in the same address space. + Two rendering contexts share an address space if both are nondirect + using the same server, + or if both are direct and owned by a single process. + Note that in the nondirect case, it is not necessary for the calling + threads to share an address space, + only for their related rendering contexts to share an address space. + + + If the GL version is 1.1 or greater, + then all texture objects except object 0 + are shared by any contexts that share display lists. + + + Notes + + XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. + + + A process is a single execution environment, + implemented in a single address space, + consisting of one or more threads. + + + A thread is one of a set of subprocesses that share + a single address space, + but maintain separate program counters, + stack spaces, + and other related global data. + A thread that is the only member of its subprocess group + is equivalent to a process. + + + It may not be possible to render to a GLX pixmap with a direct rendering + context. + + + Errors + + NULL is returned if execution fails on the client side. + + + BadMatch is generated if the context to be created would not + share the address space or the screen of the context specified by shareList. + + + BadValue is generated if vis is not a valid visual (for + example, if a particular GLX implementation does not support it). + + + GLXBadContext is generated if shareList is not a GLX context + and is not NULL. + + + BadAlloc is generated if the server does not have enough + resources to allocate the new context. + + + See Also + + glXDestroyContext, + glXGetConfig, + glXIsDirect, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCreateGLXPixmap.xml b/upstream-man-pages/man2/glXCreateGLXPixmap.xml new file mode 100644 index 0000000..07b6e62 --- /dev/null +++ b/upstream-man-pages/man2/glXCreateGLXPixmap.xml @@ -0,0 +1,126 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCreateGLXPixmap + 3G + + + glXCreateGLXPixmap + create an off-screen GLX rendering area + + C Specification + + + GLXPixmap glXCreateGLXPixmap + Display * dpy + XVisualInfo * vis + Pixmap pixmap + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + vis + + + Specifies the visual that defines the structure of the rendering area. + It is a pointer to an XVisualInfo structure, + not a visual ID or a pointer to a Visual. + + + + + pixmap + + + Specifies the X pixmap that will be used as the front left color buffer + of the off-screen rendering area. + + + + + + Description + + glXCreateGLXPixmap creates an off-screen rendering area and returns its XID. + Any GLX rendering context that was created with respect to vis + can be used to render into this off-screen area. + Use glXMakeCurrent to associate the rendering area with a GLX + rendering context. + + + The X pixmap identified by pixmap is used as the front left buffer of the + resulting off-screen rendering area. + All other buffers specified by vis, + including color buffers other than the front left buffer, + are created without externally visible names. + GLX pixmaps with double-buffering are supported. + However, glXSwapBuffers is ignored by these pixmaps. + + + Some implementations may not support GLX pixmaps with direct rendering + contexts. + + + Notes + + XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. + + + Errors + + BadMatch is generated if the depth of pixmap does not match + the depth value reported by core X11 for vis, + or if pixmap was not created with respect to the same screen as vis. + + + BadValue is generated + if vis is not a valid XVisualInfo pointer (for example, if a + particular GLX implementation does not support this visual). + + + BadPixmap is generated if pixmap is not a valid pixmap. + + + BadAlloc is generated if the server cannot allocate the GLX + pixmap. + + + See Also + + glXCreateContext, + glXCreatePixmap, + glXDestroyGLXPixmap, + glXIsDirect, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCreateNewContext.xml b/upstream-man-pages/man2/glXCreateNewContext.xml new file mode 100644 index 0000000..c199b7d --- /dev/null +++ b/upstream-man-pages/man2/glXCreateNewContext.xml @@ -0,0 +1,175 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCreateNewContext + 3G + + + glXCreateNewContext + create a new GLX rendering context + + C Specification + + + GLXContext glXCreateNewContext + Display * dpy + GLXFBConfig config + int render_type + GLXContext share_list + Bool direct + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + config + + + Specifies the GLXFBConfig structure with the desired attributes for the + context. + + + + + render_type + + + Specifies the type of the context to be created. Must be one of + GLX_RGBA_TYPE or GLX_COLOR_INDEX_TYPE. + + + + + share_list + + + Specifies the context with which to share display lists. + NULL indicates that no sharing is to take place. + + + + + share_list + + + Specifies whether rendering is to be done with a direct connection + to the graphics system if possible (True) + or through the X server (False). + + + + + + Description + + glXCreateNewContext creates a GLX rendering context and returns its handle. + This context can be used to render into GLX windows, pixmaps, or pixel + buffers. + If glXCreateNewContext fails to create a rendering context, + NULL is returned. + + + If render_type is GLX_RGBA_TYPE, then a context that supports RGBA + rendering is created. If config is GLX_COLOR_INDEX_TYPE, then + context supporting color-index rendering is created. + + + If render_type is not NULL, + then all display-list indexes and definitions are shared by + context render_type and by the newly created context. + An arbitrary number of contexts can share a single display-list space. + However, + all rendering contexts that share a single display-list space must + themselves exist in the same address space. + Two rendering contexts share an address space if both are nondirect + using the same server, + or if both are direct and owned by a single process. + Note that in the nondirect case, it is not necessary for the calling + threads to share an address space, + only for their related rendering contexts to share an address space. + + + If share_list is True, + then a direct-rendering context is created if the + implementation supports direct rendering, if the connection is to an X + server that is local, and if a direct-rendering context is available. (An implementation may return an indirect context when share_list is True.) + If share_list is False, + then a rendering context that renders through the X server is always created. + Direct rendering provides a performance advantage in some implementations. + However, direct-rendering contexts cannot be shared outside a single process, + and they may be unable to render to GLX pixmaps. + + + Notes + + glXCreateNewContext is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + NULL is returned if execution fails on the client side. + + + GLXBadContext is generated if render_type is not a GLX context + and is not NULL. + + + GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. + + + BadMatch is generated if the context to be created would not + share the address space or the screen of the context specified by render_type. + + + BadAlloc is generated if the server does not have enough + resources to allocate the new context. + + + BadValue is generated if config is not a valid visual (for + example, if a particular GLX implementation does not support it). + + + See Also + + glXChooseFBConfig, + glXCreateContext, + glXDestroyContext, + glXGetFBConfigs, + glXGetFBConfigAttrib, + glXIsDirect, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCreatePbuffer.xml b/upstream-man-pages/man2/glXCreatePbuffer.xml new file mode 100644 index 0000000..9301b60 --- /dev/null +++ b/upstream-man-pages/man2/glXCreatePbuffer.xml @@ -0,0 +1,173 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCreatePbuffer + 3G + + + glXCreatePbuffer + create an off-screen rendering area + + C Specification + + + GLXPbuffer glXCreatePbuffer + Display * dpy + GLXFBConfig config + const int * attrib_list + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + config + + + Specifies a GLXFBConfig structure with the desired attributes for the + window. + + + + + attrib_list + + + Specifies a list of attribute value pairs, which must be terminated with + None or NULL. Accepted attributes are + GLX_PBUFFER_WIDTH, GLX_PBUFFER_HEIGHT, + GLX_PRESERVED_CONTENTS, and GLX_LARGEST_PBUFFER. + + + + + + Description + + glXCreatePbuffer creates an off-screen rendering area and returns its XID. + Any GLX rendering context that was created with respect to config + can be used to render into this window. + Use glXMakeContextCurrent to associate the rendering area with a GLX + rendering context. + + + The accepted attributes for a GLXPbuffer are: + + + + GLX_PBUFFER_WIDTH + + + Specify the pixel width of the requested GLXPbuffer. The default value + is 0. + + + + + GLX_PBUFFER_HEIGHT + + + Specify the pixel height of the requested GLXPbuffer. The default value + is 0. + + + + + GLX_LARGEST_PBUFFER + + + Specify to obtain the largest available pixel buffer, if the requested + allocation would have failed. The width and height of the allocated + pixel buffer will never exceed the specified GLX_PBUFFER_WIDTH or + GLX_PBUFFER_HEIGHT, respectively. Use glXQueryDrawable to + retrieve the dimensions of the allocated pixel buffer. The default value is + False. + + + + + GLX_PRESERVED_CONTENTS + + + Specify if the contents of the pixel buffer should be preserved when a + resource conflict occurs. If set to False, the contents of the + pixel buffer may be lost at any time. If set to True, or not + specified in attrib_list, then the contents of the pixel buffer will be preserved + (most likely by copying the contents into main system memory from the + frame buffer). In either case, the client can register (using + glXSelectEvent, to receive + pixel buffer clobber events that are generated when the pbuffer contents have + been preserved or damaged. + + + + + + GLXPbuffers contain the color and ancillary buffers specified by + config. It is possible to create a pixel buffer with back buffers and + to swap those buffers using glXSwapBuffers. + + + Notes + + glXCreatePbuffer is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + GLXPbuffers are allocated from frame buffer resources; applications + should consider deallocating them when they are not in use. + + + Errors + + BadAlloc is generated if there are insufficient resources to + allocate the requested GLXPbuffer. + + + GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. + + + BadMatch is generated if config does not support rendering to + pixel buffers (e.g., GLX_DRAWABLE_TYPE does not contain + GLX_PBUFFER_BIT). + + + See Also + + glXChooseFBConfig, + glXCreatePbuffer, + glXMakeContextCurrent, + glXSelectEvent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCreatePixmap.xml b/upstream-man-pages/man2/glXCreatePixmap.xml new file mode 100644 index 0000000..ed00620 --- /dev/null +++ b/upstream-man-pages/man2/glXCreatePixmap.xml @@ -0,0 +1,130 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCreatePixmap + 3G + + + glXCreatePixmap + create an off-screen rendering area + + C Specification + + + GLXPixmap glXCreatePixmap + Display * dpy + GLXFBConfig config + Pixmap pixmap + const int * attrib_list + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + config + + + Specifies a GLXFBConfig structure with the desired attributes for the + window. + + + + + pixmap + + + Specifies the X pixmap to be used as the rendering area. + + + + + attrib_list + + + Currently unused. This must be set to NULL or be an empty list + (i.e., one in which the first element is None). + + + + + + Description + + glXCreatePixmap creates an off-screen rendering area and returns its XID. + Any GLX rendering context that was created with respect to config + can be used to render into this window. + Use glXMakeCurrent to associate the rendering area with a GLX + rendering context. + + + Notes + + glXCreatePixmap is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + BadMatch is generated if pixmap was not created with a visual + that corresponds to config. + + + BadMatch is generated if config does not support rendering to + windows (e.g., GLX_DRAWABLE_TYPE does not contain + GLX_WINDOW_BIT). + + + BadWindow is generated if pixmap is not a valid window XID. + BadAlloc is generated if there is already a GLXFBConfig + associated with pixmap. + + + BadAlloc is generated if the X server cannot allocate a new + GLX window. + + + GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. + + + + + See Also + + glXChooseFBConfig, + glXCreateGLXPixmap, + glXDestroyWindow, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXCreateWindow.xml b/upstream-man-pages/man2/glXCreateWindow.xml new file mode 100644 index 0000000..d0f506e --- /dev/null +++ b/upstream-man-pages/man2/glXCreateWindow.xml @@ -0,0 +1,133 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXCreateWindow + 3G + + + glXCreateWindow + create an on-screen rendering area + + C Specification + + + GLXWindow glXCreateWindow + Display * dpy + GLXFBConfig config + Window win + const int * attrib_list + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + config + + + Specifies a GLXFBConfig structure with the desired attributes for the + window. + + + + + win + + + Specifies the X window to be used as the rendering area. + + + + + attrib_list + + + Currently unused. This must be set to NULL or be an empty list + (i.e., one in which the first element is None). + + + + + + Description + + glXCreateWindow creates an on-screen rendering area from an existing X window + that was created with a visual matching config. The XID of the + GLXWindow is returned. + Any GLX rendering context that was created with respect to config + can be used to render into this window. + Use glXMakeContextCurrent to associate the rendering area with a GLX + rendering context. + + + Notes + + glXCreateWindow is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + BadMatch is generated if win was not created with a visual + that corresponds to config. + + + BadMatch is generated if config does not support rendering to + windows (i.e., GLX_DRAWABLE_TYPE does not contain + GLX_WINDOW_BIT). + + + BadWindow is generated if win is not a valid pixmap XID. + + + BadAlloc is generated if there is already a GLXFBConfig + associated with win. + + + BadAlloc is generated if the X server cannot allocate a new + GLX window. + + + GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. + + + + + See Also + + glXChooseFBConfig, + glXDestroyPixmap, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXDestroyContext.xml b/upstream-man-pages/man2/glXDestroyContext.xml new file mode 100644 index 0000000..ca16c6c --- /dev/null +++ b/upstream-man-pages/man2/glXDestroyContext.xml @@ -0,0 +1,80 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXDestroyContext + 3G + + + glXDestroyContext + destroy a GLX context + + C Specification + + + void glXDestroyContext + Display * dpy + GLXContext ctx + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + ctx + + + Specifies the GLX context to be destroyed. + + + + + + Description + + If the GLX rendering context ctx is not current to any thread, + glXDestroyContext + destroys it immediately. + Otherwise, + ctx is destroyed when it becomes not current to any thread. + In either case, the resource ID + referenced by ctx is freed immediately. + + + Errors + + GLXBadContext is generated if ctx is not a valid GLX context. + + + See Also + + glXCreateContext, + glXCreateNewContext, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXDestroyGLXPixmap.xml b/upstream-man-pages/man2/glXDestroyGLXPixmap.xml new file mode 100644 index 0000000..acc2d72 --- /dev/null +++ b/upstream-man-pages/man2/glXDestroyGLXPixmap.xml @@ -0,0 +1,79 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXDestroyGLXPixmap + 3G + + + glXDestroyGLXPixmap + destroy a GLX pixmap + + C Specification + + + void glXDestroyGLXPixmap + Display * dpy + GLXPixmap pix + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + pix + + + Specifies the GLX pixmap to be destroyed. + + + + + + Description + + If the GLX pixmap pix is not current to any client, + glXDestroyGLXPixmap destroys it immediately. + Otherwise, + pix is destroyed when it becomes not current to any client. + In either case, the resource ID + is freed immediately. + + + Errors + + GLXBadPixmap is generated if pix is not a valid GLX pixmap. + + + See Also + + glXCreateGLXPixmap, + glXDestroyPixmap, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXDestroyPbuffer.xml b/upstream-man-pages/man2/glXDestroyPbuffer.xml new file mode 100644 index 0000000..2bf0c5d --- /dev/null +++ b/upstream-man-pages/man2/glXDestroyPbuffer.xml @@ -0,0 +1,85 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXDestroyPbuffer + 3G + + + glXDestroyPbuffer + destroy an off-screen rendering area + + C Specification + + + void glXDestroyPbuffer + Display * dpy + GLXPbuffer pbuf + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + pbuf + + + Specifies the GLXPbuffer to be destroyed. + + + + + + Description + + glXDestroyPbuffer destroys a GLXPbuffer created by glXCreatePbuffer. + + + Notes + + glXDestroyPbuffer is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLXBadPbuffer is generated if pbuf is not a valid + GLXPbuffer. + + + See Also + + glXChooseFBConfig, + glXCreatePbuffer, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXDestroyPixmap.xml b/upstream-man-pages/man2/glXDestroyPixmap.xml new file mode 100644 index 0000000..03e49bd --- /dev/null +++ b/upstream-man-pages/man2/glXDestroyPixmap.xml @@ -0,0 +1,86 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXDestroyPixmap + 3G + + + glXDestroyPixmap + destroy an off-screen rendering area + + C Specification + + + void glXDestroyPixmap + Display * dpy + GLXPixmap pixmap + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + pixmap + + + Specifies the GLXPixmap to be destroyed. + + + + + + Description + + glXDestroyPixmap destroys a GLXPixmap created by glXCreatePixmap. + + + Notes + + glXDestroyPixmap is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLXBadPixmap is generated if pixmap is not a valid + GLXPixmap. + + + See Also + + glXChooseFBConfig, + glXCreatePixmap, + glXDestroyGLXPixmap, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXDestroyWindow.xml b/upstream-man-pages/man2/glXDestroyWindow.xml new file mode 100644 index 0000000..d3b5955 --- /dev/null +++ b/upstream-man-pages/man2/glXDestroyWindow.xml @@ -0,0 +1,85 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXDestroyWindow + 3G + + + glXDestroyWindow + destroy an on-screen rendering area + + C Specification + + + void glXDestroyWindow + Display * dpy + GLXWindow win + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + win + + + Specifies the GLXWindow to be destroyed. + + + + + + Description + + glXDestroyWindow destroys a GLXWindow created by glXCreateWindow. + + + Notes + + glXDestroyWindow is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLXBadWindow is generated if win is not a valid + GLXPixmap. + + + See Also + + glXChooseFBConfig, + glXCreateWindow, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXFreeContextEXT.xml b/upstream-man-pages/man2/glXFreeContextEXT.xml new file mode 100644 index 0000000..017b148 --- /dev/null +++ b/upstream-man-pages/man2/glXFreeContextEXT.xml @@ -0,0 +1,86 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXFreeContextEXT + 3G + + + glXFreeContextEXT + free client-side memory for imported context + + C Specification + + + void glXFreeContextEXT + Display * dpy + GLXContext ctx + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + ctx + + + Specifies a GLX rendering context. + + + + + + Description + + glXFreeContextEXT frees the client-side part of a GLXContext that + was created with glXImportContextEXT. glXFreeContextEXT does not + free the server-side context information or the XID + associated with the server-side context. + + + glXFreeContextEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_vertex_array is supported. + + + Errors + + GLXBadContext is generated if ctx does not + refer to a valid context. + + + See Also + + glXCreateContext, + glXQueryVersion, + glXQueryExtensionsString, + glXImportContextEXT + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetClientString.xml b/upstream-man-pages/man2/glXGetClientString.xml new file mode 100644 index 0000000..ffbdbdd --- /dev/null +++ b/upstream-man-pages/man2/glXGetClientString.xml @@ -0,0 +1,107 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetClientString + 3G + + + glXGetClientString + return a string describing the client + + C Specification + + + const char * glXGetClientString + Display * dpy + int name + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + name + + + Specifies which string is returned. + The symbolic constants GLX_VENDOR, GLX_VERSION, + and GLX_EXTENSIONS are accepted. + + + + + + Description + + glXGetClientString returns a string + describing some aspect of the client library. The possible values for name + are GLX_VENDOR, GLX_VERSION, and + GLX_EXTENSIONS. If name + is not set to one of these values, glXGetClientString returns NULL. + The format and contents of the vendor string is implementation dependent. + + + The extensions string is null-terminated and contains a + space-separated list of extension names. (The extension names never + contain spaces.) + If there are no extensions to GLX, then the empty string is returned. + + + The version string is laid out as follows: + + + <major_version.minor_version><space><vendor-specific info> + + + Both the major and minor portions of the version number are of arbitrary + length. The vendor-specific information is optional. However, if it is + present, the format and contents are implementation specific. + + + Notes + + glXGetClientString is available only if the GLX version is 1.1 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + glXGetClientString only returns information about GLX extensions supported by the client. + Call glGetString to get a list of GL extensions supported by the server. + + + See Also + + glXQueryVersion, + glXQueryExtensionsString, + glXQueryServerString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetConfig.xml b/upstream-man-pages/man2/glXGetConfig.xml new file mode 100644 index 0000000..f09b313 --- /dev/null +++ b/upstream-man-pages/man2/glXGetConfig.xml @@ -0,0 +1,319 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetConfig + 3G + + + glXGetConfig + return information about GLX visuals + + C Specification + + + int glXGetConfig + Display * dpy + XVisualInfo * vis + int attrib + int * value + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + vis + + + Specifies the visual to be queried. + It is a pointer to an XVisualInfo structure, + not a visual ID or a pointer to a Visual. + + + + + attrib + + + Specifies the visual attribute to be returned. + + + + + value + + + Returns the requested value. + + + + + + Description + + glXGetConfig sets value to the attrib value of windows or GLX pixmaps + created with respect to vis. + glXGetConfig returns an error code if it fails for any reason. + Otherwise, zero is returned. + + + attrib is one of the following: + + + + + + GLX_USE_GL + + + True if OpenGL rendering is supported by this visual, + False otherwise. + + + + + GLX_BUFFER_SIZE + + + Number of bits per color buffer. + For RGBA visuals, GLX_BUFFER_SIZE is the sum of + GLX_RED_SIZE, + GLX_GREEN_SIZE, + GLX_BLUE_SIZE, and + GLX_ALPHA_SIZE. + For color index visuals, GLX_BUFFER_SIZE is the size of the + color indexes. + + + + + GLX_LEVEL + + + Frame buffer level of the visual. + Level zero is the default frame buffer. + Positive levels correspond to frame buffers that overlay the default buffer, + and negative levels correspond to frame buffers that underlay the default + buffer. + + + + + GLX_RGBA + + + True if color buffers store red, green, blue, and alpha values. + False if they store color indexes. + + + + + GLX_DOUBLEBUFFER + + + True if color buffers exist in front/back pairs that can be swapped, + False otherwise. + + + + + GLX_STEREO + + + True if color buffers exist in left/right pairs, + False otherwise. + + + + + GLX_AUX_BUFFERS + + + Number of auxiliary color buffers that are available. + Zero indicates that no auxiliary color buffers exist. + + + + + GLX_RED_SIZE + + + Number of bits of red stored in each color buffer. + Undefined if GLX_RGBA is False. + + + + + GLX_GREEN_SIZE + + + Number of bits of green stored in each color buffer. + Undefined if GLX_RGBA is False. + + + + + GLX_BLUE_SIZE + + + Number of bits of blue stored in each color buffer. + Undefined if GLX_RGBA is False. + + + + + GLX_ALPHA_SIZE + + + Number of bits of alpha stored in each color buffer. + Undefined if GLX_RGBA is False. + + + + + GLX_DEPTH_SIZE + + + Number of bits in the depth buffer. + + + + + GLX_STENCIL_SIZE + + + Number of bits in the stencil buffer. + + + + + GLX_ACCUM_RED_SIZE + + + Number of bits of red stored in the accumulation buffer. + + + + + GLX_ACCUM_GREEN_SIZE + + + Number of bits of green stored in the accumulation buffer. + + + + + GLX_ACCUM_BLUE_SIZE + + + Number of bits of blue stored in the accumulation buffer. + + + + + GLX_ACCUM_ALPHA_SIZE + + + Number of bits of alpha stored in the accumulation buffer. + + + + + + The X protocol allows a single visual ID to be instantiated with + different numbers of bits per pixel. + Windows or GLX pixmaps that will be rendered with OpenGL, however, + must be instantiated with a color buffer depth of GLX_BUFFER_SIZE. + + + Although a GLX implementation can export many visuals that support GL + rendering, + it must support + at least one RGBA visual. This visual must have at + least one color buffer, + a stencil buffer of at least 1 bit, + a depth buffer of at least 12 bits, + and an accumulation buffer. + Alpha bitplanes are optional in this visual. + However, + its color buffer size must be as great as that of the + deepest TrueColor, DirectColor, + PseudoColor, or StaticColor visual supported on level zero, + and it must itself be made available on level zero. + + + In addition, if the X server exports a PseudoColor + or StaticColor visual on framebuffer level 0, a color index + visual is also required on that level. + It must have + at least one color buffer, + a stencil buffer of at least 1 bit, + and a depth buffer of at least 12 bits. + This visual must + have as many + color bitplanes as the deepest + PseudoColor or StaticColor visual supported on level 0. + + + Applications are best written to select the visual that most closely + meets their requirements. + Creating windows or GLX pixmaps with unnecessary buffers can result in + reduced rendering performance as well as poor resource allocation. + + + Notes + + XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. + + + Errors + + GLX_NO_EXTENSION is returned if dpy does not support the GLX + extension. + + + GLX_BAD_SCREEN is returned if the screen of vis does not correspond + to a screen. + + + GLX_BAD_ATTRIBUTE is returned if attrib is not a valid GLX attribute. + + + GLX_BAD_VISUAL is returned if vis doesn't support GLX and an + attribute other than GLX_USE_GL is requested. + + + See Also + + glXChooseVisual, + glXCreateContext + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetContextIDEXT.xml b/upstream-man-pages/man2/glXGetContextIDEXT.xml new file mode 100644 index 0000000..ea20ba4 --- /dev/null +++ b/upstream-man-pages/man2/glXGetContextIDEXT.xml @@ -0,0 +1,77 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetContextIDEXT + 3G + + + glXGetContextIDEXT + get the XID for a context. + + C Specification + + + GLXContextID glXGetContextIDEXT + const GLXContext ctx + + + + + Parameters + + + ctx + + + Specifies a GLX rendering context. + + + + + + Description + + glXGetContextIDEXT returns the XID associated with a GLXContext. + + + No round trip is forced to the server; unlike most X calls that + return a value, glXGetContextIDEXT does not flush any pending events. + + + glXGetContextIDEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_import_context is supported. + + + Errors + + GLXBadContext is generated if ctx does not + refer to a valid context. + + + See Also + + glXCreateContext, + glXQueryVersion, + glXQueryExtensionsString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetCurrentContext.xml b/upstream-man-pages/man2/glXGetCurrentContext.xml new file mode 100644 index 0000000..526c64f --- /dev/null +++ b/upstream-man-pages/man2/glXGetCurrentContext.xml @@ -0,0 +1,58 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetCurrentContext + 3G + + + glXGetCurrentContext + return the current context + + C Specification + + + GLXContext glXGetCurrentContext + + + + + + Description + + glXGetCurrentContext returns the current context, + as specified by glXMakeCurrent. + If there is no current context, + NULL is returned. + + + glXGetCurrentContext returns client-side information. + It does not make a round trip to the server. + + + + + See Also + + glXCreateContext, + glXGetCurrentDisplay, + glXGetCurrentDrawable, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetCurrentDisplay.xml b/upstream-man-pages/man2/glXGetCurrentDisplay.xml new file mode 100644 index 0000000..e284d11 --- /dev/null +++ b/upstream-man-pages/man2/glXGetCurrentDisplay.xml @@ -0,0 +1,58 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetCurrentDisplay + 3G + + + glXGetCurrentDisplay + get display for current context + + C Specification + + + Display * glXGetCurrentDisplay + + + + + Description + + glXGetCurrentDisplay returns the display for the current context. If no + context is current, NULL is returned. + + + glXGetCurrentDisplay returns client-side information. It does not make a round-trip + to the server, and therefore does not flush any pending events. + + + Notes + + glXGetCurrentDisplay is only supported if the GLX version is 1.2 or greater. + + + See Also + + glXGetCurrentContext, + glXGetCurrentDrawable, + glXQueryVersion, + glXQueryExtensionsString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetCurrentDrawable.xml b/upstream-man-pages/man2/glXGetCurrentDrawable.xml new file mode 100644 index 0000000..032e7e4 --- /dev/null +++ b/upstream-man-pages/man2/glXGetCurrentDrawable.xml @@ -0,0 +1,55 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetCurrentDrawable + 3G + + + glXGetCurrentDrawable + return the current drawable + + C Specification + + + GLXDrawable glXGetCurrentDrawable + + + + Description + + glXGetCurrentDrawable returns the current drawable, + as specified by glXMakeCurrent. + If there is no current drawable, + None is returned. + + + glXGetCurrentDrawable returns client-side information. + It does not make a round trip to the server. + + + See Also + + glXCreateGLXPixmap, + glXGetCurrentContext, + glXGetCurrentDisplay, + glXGetCurrentReadDrawable, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetCurrentReadDrawable.xml b/upstream-man-pages/man2/glXGetCurrentReadDrawable.xml new file mode 100644 index 0000000..8111e94 --- /dev/null +++ b/upstream-man-pages/man2/glXGetCurrentReadDrawable.xml @@ -0,0 +1,60 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetCurrentReadDrawable + 3G + + + glXGetCurrentReadDrawable + return the current drawable + + C Specification + + + GLXDrawable glXGetCurrentReadDrawable + + + + Description + + glXGetCurrentReadDrawable returns the current read drawable, + as specified by read parameter + of glXMakeContextCurrent. + If there is no current drawable, + None is returned. + + + glXGetCurrentReadDrawable returns client-side information. + It does not make a round-trip to the server. + + + Notes + + glXGetCurrentReadDrawable is only supported if the GLX version is 1.3 or greater. + + + See Also + + glXGetCurrentContext, + glXGetCurrentDisplay, + glXGetCurrentDrawable, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetFBConfigAttrib.xml b/upstream-man-pages/man2/glXGetFBConfigAttrib.xml new file mode 100644 index 0000000..6950cda --- /dev/null +++ b/upstream-man-pages/man2/glXGetFBConfigAttrib.xml @@ -0,0 +1,506 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetFBConfigAttrib + 3G + + + glXGetFBConfigAttrib + return information about a GLX frame buffer configuration + + C Specification + + + int glXGetFBConfigAttrib + Display * dpy + GLXFBConfig config + int attribute + int * value + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + config + + + Specifies the GLX frame buffer configuration to be queried. + + + + + attribute + + + Specifies the attribute to be returned. + + + + + value + + + Returns the requested value. + + + + + + Description + + glXGetFBConfigAttrib sets value to the attribute value of GLX drawables + created with respect to config. + glXGetFBConfigAttrib returns an error code if it fails for any reason. + Otherwise, Success is returned. + + + attribute is one of the following: + + + + + + GLX_FBCONFIG_ID + + + XID of the given GLXFBConfig. + + + + + GLX_BUFFER_SIZE + + + + + Number of bits per color buffer. + If the frame buffer configuration supports RGBA contexts, then + GLX_BUFFER_SIZE is the sum of + GLX_RED_SIZE, + GLX_GREEN_SIZE, + GLX_BLUE_SIZE, and + GLX_ALPHA_SIZE. + If the frame buffer configuration supports only color index contexts, + GLX_BUFFER_SIZE is the size of the + color indexes. + + + + + GLX_LEVEL + + + + + Frame buffer level of the configuration. + Level zero is the default frame buffer. + Positive levels correspond to frame buffers that overlay the default buffer, + and negative levels correspond to frame buffers that underlie the default + buffer. + + + + + GLX_DOUBLEBUFFER + + + + + True if color buffers exist in front/back pairs that can be swapped, + False otherwise. + + + + + GLX_STEREO + + + + + True if color buffers exist in left/right pairs, + False otherwise. + + + + + GLX_AUX_BUFFERS + + + + + Number of auxiliary color buffers that are available. + Zero indicates that no auxiliary color buffers exist. + + + + + GLX_RED_SIZE + + + + + Number of bits of red stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. + + + + + GLX_GREEN_SIZE + + + + + Number of bits of green stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. + + + + + GLX_BLUE_SIZE + + + + + Number of bits of blue stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. + + + + + GLX_ALPHA_SIZE + + + + + Number of bits of alpha stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. + + + + + GLX_DEPTH_SIZE + + + + + Number of bits in the depth buffer. + + + + + GLX_STENCIL_SIZE + + + + + Number of bits in the stencil buffer. + + + + + GLX_ACCUM_RED_SIZE + + + + + Number of bits of red stored in the accumulation buffer. + + + + + GLX_ACCUM_GREEN_SIZE + + + + + Number of bits of green stored in the accumulation buffer. + + + + + GLX_ACCUM_BLUE_SIZE + + + + + Number of bits of blue stored in the accumulation buffer. + + + + + GLX_ACCUM_ALPHA_SIZE + + + + + Number of bits of alpha stored in the accumulation buffer. + + + + + GLX_RENDER_TYPE + + + + + Mask indicating what type of GLX contexts can be made + current to the frame buffer configuration. Valid bits are + GLX_RGBA_BIT and + GLX_COLOR_INDEX_BIT. + + + + + GLX_DRAWABLE_TYPE + + + + + Mask indicating what drawable types the frame buffer configuration + supports. Valid bits are GLX_WINDOW_BIT, + GLX_PIXMAP_BIT, and GLX_PBUFFER_BIT. + + + + + GLX_X_RENDERABLE + + + + + True if drawables created with the + frame buffer configuration can be rendered to by X. + + + + + GLX_VISUAL_ID + + + + + XID of the corresponding visual, or zero + if there is no associated visual (i.e., if + GLX_X_RENDERABLE is False or + GLX_DRAWABLE_TYPE does not have the + GLX_WINDOW_BIT bit set). + + + + + GLX_X_VISUAL_TYPE + + + + + Visual type of associated visual. The returned value will be one of: + GLX_TRUE_COLOR, GLX_DIRECT_COLOR, GLX_PSEUDO_COLOR, + GLX_STATIC_COLOR, GLX_GRAY_SCALE, GLX_STATIC_GRAY, + or GLX_NONE, if there is no associated visual (i.e., if + GLX_X_RENDERABLE is False or + GLX_DRAWABLE_TYPE does not have the + GLX_WINDOW_BIT bit set). + + + + + GLX_CONFIG_CAVEAT + + + + + One of GLX_NONE, + GLX_SLOW_CONFIG, or + GLX_NON_CONFORMANT_CONFIG, indicating + that the frame buffer configuration has no caveats, + some aspect of the frame buffer configuration runs slower + than other frame buffer configurations, or some aspect of the + frame buffer configuration is nonconformant, respectively. + + + + + GLX_TRANSPARENT_TYPE + + + + + One of GLX_NONE, + GLX_TRANSPARENT_RGB, + GLX_TRANSPARENT_INDEX, indicating that + the frame buffer configuration is opaque, is transparent for particular + values of red, green, and blue, or is transparent for + particular index values, respectively. + + + + + GLX_TRANSPARENT_INDEX_VALUE + + + + + Integer value between 0 and the maximum + frame buffer value for indices, indicating the transparent + index value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_INDEX. + + + + + GLX_TRANSPARENT_RED_VALUE + + + + + Integer value between 0 and the maximum + frame buffer value for red, indicating the transparent + red value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. + + + + + GLX_TRANSPARENT_GREEN_VALUE + + + + + Integer value between 0 and the maximum + frame buffer value for green, indicating the transparent + green value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. + + + + + GLX_TRANSPARENT_BLUE_VALUE + + + + + Integer value between 0 and the maximum + frame buffer value for blue, indicating the transparent + blue value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. + + + + + GLX_TRANSPARENT_ALPHA_VALUE + + + + + Integer value between 0 and the maximum + frame buffer value for alpha, indicating the transparent + blue value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. + + + + + GLX_MAX_PBUFFER_WIDTH + + + + + The maximum width that can be specified to + glXCreatePbuffer. + + + + + GLX_MAX_PBUFFER_HEIGHT + + + + + The maximum height that can be specified to + glXCreatePbuffer. + + + + + GLX_MAX_PBUFFER_PIXELS + + + + + The maximum number of pixels (width times height) for a + pixel buffer. Note that this value may be less than + GLX_MAX_PBUFFER_WIDTH times + GLX_MAX_PBUFFER_HEIGHT. Also, this + value is static and assumes that no other pixel buffers + or X resources are contending for the frame buffer memory. + As a result, it may not be possible to allocate a pixel buffer of + the size given by GLX_MAX_PBUFFER_PIXELS. + + + + + + Applications should choose the frame buffer configuration that most closely + meets their requirements. + Creating windows, GLX pixmaps, or GLX pixel buffers with unnecessary buffers + can result in + reduced rendering performance as well as poor resource allocation. + + + Notes + + glXGetFBConfigAttrib is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLX_NO_EXTENSION is returned if dpy does not support the GLX + extension. + GLX_BAD_ATTRIBUTE is returned if attribute is not a valid GLX attribute. + + + See Also + + glXGetFBConfigs, + glXChooseFBConfig, + glXGetVisualFromFBConfig, + glXGetConfig + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetFBConfigs.xml b/upstream-man-pages/man2/glXGetFBConfigs.xml new file mode 100644 index 0000000..e788186 --- /dev/null +++ b/upstream-man-pages/man2/glXGetFBConfigs.xml @@ -0,0 +1,90 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetFBConfigs + 3G + + + glXGetFBConfigs + list all GLX frame buffer configurations for a given screen + + C Specification + + + GLXFBConfig * glXGetFBConfigs + Display * dpy + int screen + int * nelements + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + screen + + + Specifies the screen number. + + + + + nelements + + + Returns the number of GLXFBConfigs returned. + + + + + + Description + + glXGetFBConfigs returns a list of all GLXFBConfigs available on the screen + specified by screen. Use glXGetFBConfigAttrib to obtain attribute + values from a specific GLXFBConfig. + + + Notes + + glXGetFBConfigs is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + See Also + + glXGetFBConfigAttrib, + glXGetVisualFromFBConfig + glXChooseFBConfig + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetProcAddress.xml b/upstream-man-pages/man2/glXGetProcAddress.xml new file mode 100644 index 0000000..ea7953b --- /dev/null +++ b/upstream-man-pages/man2/glXGetProcAddress.xml @@ -0,0 +1,65 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetProcAddress + 3G + + + glXGetProcAddress + obtain a pointer to an OpenGL or GLX function + + C Specification + + + void(*)() glXGetProcAddress + const GLubyte * procName + + + + + Parameters + + + procName + + + Specifies the name of the OpenGL or GLX function whose address is to be returned. + + + + + + Description + + glXGetProcAddress returns the address of the function specified in procName. This is + necessary in environments where the OpenGL link library exports a different + set of functions than the runtime library. + + + Notes + + A NULL pointer is returned if function requested is not suported + in the implementation being queried. + + + GLU functions are not queryable due to the fact that the library may not be + loaded at the time of the query. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetSelectedEvent.xml b/upstream-man-pages/man2/glXGetSelectedEvent.xml new file mode 100644 index 0000000..2f88f52 --- /dev/null +++ b/upstream-man-pages/man2/glXGetSelectedEvent.xml @@ -0,0 +1,92 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetSelectedEvent + 3G + + + glXGetSelectedEvent + returns GLX events that are selected for a window or a GLX pixel buffer + + C Specification + + + void glXGetSelectedEvent + Display * dpy + GLXDrawable draw + unsigned long * event_mask + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + draw + + + Specifies a GLX drawable. Must be a GLX pixel buffer or a window. + + + + + event_mask + + + Returns the events that are selected for draw. + + + + + + Description + + glXGetSelectedEvent returns in event_mask the events selected for draw. + + + Notes + + glXGetSelectedEvent is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLXBadDrawable is generated if draw is not a valid window + or a valid GLX pixel buffer. + + + See Also + + glXSelectEvent, + glXCreatePbuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXGetVisualFromFBConfig.xml b/upstream-man-pages/man2/glXGetVisualFromFBConfig.xml new file mode 100644 index 0000000..13702be --- /dev/null +++ b/upstream-man-pages/man2/glXGetVisualFromFBConfig.xml @@ -0,0 +1,92 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXGetVisualFromFBConfig + 3G + + + glXGetVisualFromFBConfig + return visual that is associated with the frame buffer configuration + + C Specification + + + XVisualInfo * glXGetVisualFromFBConfig + Display * dpy + GLXFBConfig config + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + config + + + Specifies the GLX frame buffer configuration. + + + + + + Description + + If config is a valid GLX frame buffer configuration + and it has an associated X Visual, then + information describing that visual is returned; otherwise NULL + is returned. Use XFree to free the data returned. + + + Notes + + glXGetVisualFromFBConfig is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, + screen, and depth elements. + + + Errors + + Returns NULL if config is not a valid GLXFBConfig. + + + See Also + + glXGetFBConfigAttrib, + glXChooseFBConfig, + glXChooseVisual, + glXGetConfig + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXImportContextEXT.xml b/upstream-man-pages/man2/glXImportContextEXT.xml new file mode 100644 index 0000000..577a3d1 --- /dev/null +++ b/upstream-man-pages/man2/glXImportContextEXT.xml @@ -0,0 +1,106 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXImportContextEXT + 3G + + + glXImportContextEXT + import another process's indirect rendering context. + + C Specification + + + GLXContext glXImportContextEXT + Display * dpy + GLXContextID contextID + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + contextID + + + Specifies a GLX rendering context. + + + + + + Description + + glXImportContextEXT creates a GLXContext given the XID of an existing GLXContext. + It may be used in place of glXCreateContext, + to share another process's indirect rendering context. + + + Only the server-side context information can be shared between + X clients; client-side state, such as pixel storage modes, + cannot be shared. Thus, glXImportContextEXT must allocate memory to store + client-side information. This memory is freed by calling + glXFreeContextEXT. + + + This call does not create a new XID. It merely makes an + existing object available to the importing client (Display *). + Like any XID, it goes away when the creating client drops its + connection or the ID is explicitly deleted. Note that this is + when the XID goes away. The object goes away when the XID + goes away AND the context is not current to any thread. + + + If contextID refers to a + direct rendering context then no error is generated but + glXImportContextEXT returns NULL. + + + glXImportContextEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_import_context is supported. + + + Errors + + GLXBadContext is generated if contextID does not + refer to a valid context. + + + See Also + + glXCreateContext, + glXQueryVersion, + glXQueryExtensionsString, + glXGetContextIDEXT, + glXFreeContextEXT + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXIntro.xml b/upstream-man-pages/man2/glXIntro.xml new file mode 100644 index 0000000..f67438c --- /dev/null +++ b/upstream-man-pages/man2/glXIntro.xml @@ -0,0 +1,336 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXIntro + 3G + + + glXIntro + Introduction to OpenGL in the X window system + + Overview + + + + OpenGL (called GL in other pages) is a high-performance 3D-oriented + renderer. It is available in the X window system through the GLX extension. + To determine whether the GLX extension is supported by an X server, and if + so, what version is supported, call glXQueryExtension and + glXQueryVersion. + + + GLX extended X servers make a subset of their visuals available for OpenGL + rendering. Drawables created with these visual can also be rendered into + using the core X renderer and or any other X extension that is compatible + with all core X visuals. + + + GLX extends a drawable's standard color buffer with additional buffers. + These buffers include back and auxiliary color buffers, a depth buffer, a + stencil buffer, and a color accumulation buffer. Some or all of the buffers + listed are included in each X visual that supports OpenGL. + + + GLX supports rendering into three types of drawables: windows, pixmaps, and + pbuffers (pixel buffers). GLX windows and pixmaps are X resources, and + capable of accepting core X rendering as well as OpenGL rendering. + GLX-pbuffers are GLX only resources and might not accept core X rendering. + + + To render using OpenGL into a GLX drawable, you must determine the + appropriate GLXFBConfig that supports the rendering features your + application requires. glXChooseFBConfig returns a GLXFBConfig matching + the required attributes or NULL if no match is found. A complete + list of GLXFBConfigs supported by a server can be obtained by calling + glXGetFBConfigs. Attributes of a particular GLXFBConfig can be + queried by calling glXGetFBConfigAttrib. + + + For GLX windows and pixmaps, a suitable X drawable (using either + XCreateWindow or XCreatePixmap, respectively) with a matching + visual must be created first. Call glXGetVisualFromFBConfig to obtain + the necessary XVisualInfo structure for creating the X drawable. For + pbuffers, no underlying X drawable is required. + + + To create a GLX window from an X window, call glXCreateWindow. + Likewise, to create a GLX pixmap, call glXCreatePixmap. Pbuffers are + created by calling glXCreatePbuffer. Use glXDestroyWindow, + glXDestroyPixmap, and glXDestroyPbuffer to release previously + allocated resources. + + + A GLX context is required to bind OpenGL rendering to a GLX resource. A GLX + resource and rendering context must have compatible GLXFBConfigs. To create + a GLX context, call glXCreateNewContext. A context may be bound to a + GLX drawable by using glXMakeContextCurrent. This context/drawable + pair becomes the current context and current drawable, and is used by all + OpenGL rendering commands until glXMakeContextCurrent is called with + different arguments. + + + Both core X and OpenGL commands can be used to operate on drawables; + however, the X and OpenGL command streams are not synchronized. + Synchronization can be explicitly specified using by calling glXWaitGL, + glXWaitX, XSync, and XFlush. + + + + + Examples + + Below is a minimal example of creating an RGBA-format X window that's + compatible with OpenGL using GLX 1.3 commands. The window is cleared to + yellow when the program runs. The program does minimal error checking; all + return values should be checked. + + + +#include <stdio.h> +#include <stdlib.h> +#include <GL/gl.h> +#include <GL/glx.h> + +int singleBufferAttributess[] = { + GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, + GLX_RENDER_TYPE, GLX_RGBA_BIT, + GLX_RED_SIZE, 1, /* Request a single buffered color buffer */ + GLX_GREEN_SIZE, 1, /* with the maximum number of color bits */ + GLX_BLUE_SIZE, 1, /* for each component */ + None +}; + +int doubleBufferAttributes[] = { + GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, + GLX_RENDER_TYPE, GLX_RGBA_BIT, + GLX_DOUBLEBUFFER, True, /* Request a double-buffered color buffer with */ + GLX_RED_SIZE, 1, /* the maximum number of bits per component */ + GLX_GREEN_SIZE, 1, + GLX_BLUE_SIZE, 1, + None +}; + + +static Bool WaitForNotify( Display *dpy, XEvent *event, XPointer arg ) { + return (event->type == MapNotify) && (event->xmap.window == (Window) arg); +} +int main( int argc, char *argv[] ) +{ + Display *dpy; + Window xWin; + XEvent event; + XVisualInfo *vInfo; + XSetWindowAttributes swa; + GLXFBConfig *fbConfigs; + GLXContext context; + GLXWindow glxWin; + int swaMask; + int numReturned; + int swapFlag = True; + + /* Open a connection to the X server */ + dpy = XOpenDisplay( NULL ); + if ( dpy == NULL ) { + printf( "Unable to open a connection to the X server\n" ); + exit( EXIT_FAILURE ); + } + + /* Request a suitable framebuffer configuration - try for a double + ** buffered configuration first */ + fbConfigs = glXChooseFBConfig( dpy, DefaultScreen(dpy), + doubleBufferAttributes, &numReturned ); + + if ( fbConfigs == NULL ) { /* no double buffered configs available */ + fbConfigs = glXChooseFBConfig( dpy, DefaultScreen(dpy), + singleBufferAttributess, &numReturned ); + swapFlag = False; + } + + /* Create an X colormap and window with a visual matching the first + ** returned framebuffer config */ + vInfo = glXGetVisualFromFBConfig( dpy, fbConfigs[0] ); + + swa.border_pixel = 0; + swa.event_mask = StructureNotifyMask; + swa.colormap = XCreateColormap( dpy, RootWindow(dpy, vInfo->screen), + vInfo->visual, AllocNone ); + + swaMask = CWBorderPixel | CWColormap | CWEventMask; + + xWin = XCreateWindow( dpy, RootWindow(dpy, vInfo->screen), 0, 0, 256, 256, + 0, vInfo->depth, InputOutput, vInfo->visual, + swaMask, &swa ); + + /* Create a GLX context for OpenGL rendering */ + context = glXCreateNewContext( dpy, fbConfigs[0], GLX_RGBA_TYPE, + NULL, True ); + + /* Create a GLX window to associate the frame buffer configuration + ** with the created X window */ + glxWin = glXCreateWindow( dpy, fbConfigs[0], xWin, NULL ); + + /* Map the window to the screen, and wait for it to appear */ + XMapWindow( dpy, xWin ); + XIfEvent( dpy, &event, WaitForNotify, (XPointer) xWin ); + + /* Bind the GLX context to the Window */ + glXMakeContextCurrent( dpy, glxWin, glxWin, context ); + + /* OpenGL rendering ... */ + glClearColor( 1.0, 1.0, 0.0, 1.0 ); + glClear( GL_COLOR_BUFFER_BIT ); + + glFlush(); + + if ( swapFlag ) + glXSwapBuffers( dpy, glxWin ); + + sleep( 10 ); + exit( EXIT_SUCCESS ); +} + + + + + + Notes + + An X color map must be created and passed to XCreateWindow. + + + A GLX context must be created and bound to a GLX drawable before OpenGL + commands can be executed. OpenGL commands executed while no + context/drawable pair is current result in undefined behavior. + + + Exposure events indicate that all buffers associated with the + specified window may be damaged and should be repainted. Although certain + buffers of some visuals on some systems may never require repainting (the + depth buffer, for example), it is incorrect to write a program assuming that + these buffers will not be damaged. + + + GLX commands utilize XVisualInfo structures rather than pointers to visuals + or visualIDs directly. XVisualInfo structures contain visual, + visualID, screen, and depth elements, as well as other + X-specific information. + + + + + Using GLX Extensions + + All supported GLX extensions will have a corresponding definition in glx.h + and a token in the extension string returned by + glXQueryExtensionsString. For example, if the + EXT_visual_info extension is supported, then this token will be + defined in glx.h and EXT_visual_info will appear in the extension + string returned by glXQueryExtensionsString. The definitions in glx.h + can be used at compile time to determine if procedure calls corresponding to + an extension exist in the library. + + + OpenGL itself is capable of being extended. + + + + + GLX 1.1, GLX 1.2, and GLX 1.3 + + GLX 1.3 is now supported and is backward compatible with GLX 1.1 and GLX + 1.2. It introduces new functionality (namely GLXFBConfigs) that supersedes + the GLX 1.2 functionality. GLX 1.2 commands are supported, but their use in + new application development is not recommended. + + + GLX 1.3 corresponds to OpenGL versions 1.2 and introduces the following new + calls: glXGetFBConfigs, glXGetFBConfigAttrib, + glXGetVisualFromFBConfig, glXCreateWindow, glXDestroyWindow, + glXCreatePixmap, glXDestroyPixmap, glXCreatePbuffer, + glXDestroyPbuffer, glXQueryDrawable, glXCreateNewContext, + glXMakeContextCurrent, glXGetCurrentReadDrawable, + glXGetCurrentDisplay, glXQueryContext, and glXSelectEvent, + glXGetSelectedEvent. + + + GLX 1.2 corresponds to OpenGL version 1.1 and introduces the following new + call: glXGetCurrentDisplay. + + + GLX 1.1 corresponds to OpenGL version 1.0 and introduces the following new + calls: glXQueryExtensionsString, glXQueryServerString, and + glXGetClientString. + + + Call glXQueryVersion to determine at runtime what version of GLX is + available. glXQueryVersion returns the version that is supported on the + connection. Thus, if 1.3 is returned, both the client and server support GLX + 1.3. You can also check the GLX version at compile time: GLX_VERSION_1_1 + will be defined in glx.h if GLX 1.1 calls are supported, GLX_VERSION_1_2 + will be defined if GLX 1.2 calls are supported, and GLX_VERSION_1_3 will be + defined if GLX 1.3 calls are supported. + + + + + See Also + + glFinish, + glFlush, + glXChooseVisual, + glXCopyContext, + glXCreateContext, + glXCreateGLXPixmap, + glXCreateNewContext, + glXCreatePbuffer, + glXCreatePixmap, + glXCreateWindow, + glXDestroyContext, + glXDestroyPbuffer, + glXDestroyPixmap, + glXDestroyWindow, + glXGetClientString, + glXGetConfig, + glXGetCurrentDisplay, + glXGetCurrentReadDrawable, + glXGetFBConfigAttrib, + glXGetFBConfigs, + glXGetProcAddress, + glXGetSelectedEvent, + glXGetVisualFromFBConfig, + glXIsDirect, + glXMakeContextCurrent, + glXMakeCurrent, + glXQueryContext, + glXQueryDrawable, + glXQueryExtension, + glXQueryExtensionsString, + glXQueryServerString, + glXQueryVersion, + glXSelectEvent, + glXSwapBuffers, + glXUseXFont, + glXWaitGL, + glXWaitX. + XCreateColormap, + XCreateWindow, + XSync + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXIsDirect.xml b/upstream-man-pages/man2/glXIsDirect.xml new file mode 100644 index 0000000..cec7509 --- /dev/null +++ b/upstream-man-pages/man2/glXIsDirect.xml @@ -0,0 +1,78 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXIsDirect + 3G + + + glXIsDirect + indicate whether direct rendering is enabled + + C Specification + + + Bool glXIsDirect + Display * dpy + GLXContext ctx + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + ctx + + + Specifies the GLX context that is being queried. + + + + + + Description + + glXIsDirect returns True if ctx is a direct rendering context, + False otherwise. + Direct rendering contexts pass rendering commands directly from the calling + process's address space to the rendering system, + bypassing the X server. + Nondirect rendering contexts pass all rendering commands to the X server. + + + Errors + + GLXBadContext is generated if ctx is not a valid GLX context. + + + See Also + + glXCreateContext, + glXCreateNewContext + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXMakeContextCurrent.xml b/upstream-man-pages/man2/glXMakeContextCurrent.xml new file mode 100644 index 0000000..702bf53 --- /dev/null +++ b/upstream-man-pages/man2/glXMakeContextCurrent.xml @@ -0,0 +1,200 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXMakeContextCurrent + 3G + + + glXMakeContextCurrent + attach a GLX context to a GLX drawable + + C Specification + + + Bool glXMakeContextCurrent + Display * display + GLXDrawable draw + GLXDrawable read + GLXContext ctx + + + + + Parameters + + + display + + + Specifies the connection to the X server. + + + + + draw + + + Specifies a GLX drawable to render into. + Must be an XID representing a GLXWindow, GLXPixmap, or GLXPbuffer. + + + + + read + + + Specifies a GLX drawable to read from. + Must be an XID representing a GLXWindow, GLXPixmap, or GLXPbuffer. + + + + + ctx + + + Specifies the GLX context to be bound to read and ctx. + + + + + + Description + + glXMakeContextCurrent binds ctx to the current rendering thread and to the draw + and read GLX drawables. draw and read may be the same. + + + draw is used for all OpenGL operations except: + + + Any pixel data that are read based on the value of GLX_READ_BUFFER. + Note that accumulation operations use the value of GLX_READ_BUFFER, + but are not allowed unless draw is identical to read. + + + Any depth values that are retrieved by glReadPixels or glCopyPixels. + + + Any stencil values that are retrieved by glReadPixels or + glCopyPixels. + + + Frame buffer values are taken from draw. + + + If the current rendering thread has a current rendering context, that + context is flushed and replaced by ctx. + + + The first time that ctx is made current, the viewport and scissor + dimensions are set to the size of the draw drawable. The viewport + and scissor are not modified when ctx is subsequently made current. + + + To release the current context without assigning a new one, + call glXMakeContextCurrent with draw and read set to None and ctx + set to NULL. + + + glXMakeContextCurrent returns True if it is successful, + False otherwise. + If False is returned, the previously current rendering context + and drawable (if any) remain unchanged. + + + Notes + + glXMakeContextCurrent is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + + + Errors + + BadMatch is generated if draw and read are not compatible. + + + BadAccess is generated if ctx is current to some other + thread. + + + GLXContextState is generated if there is a current rendering + context and its render mode is either GLX_FEEDBACK or + GLX_SELECT. + + + GLXBadContext is generated if ctx is not a valid GLX + rendering context. + + + GLXBadDrawable is generated if draw or read is not a valid + GLX drawable. + + + GLXBadWindow is generated if the underlying X window for either + draw or read is no longer valid. + + + GLXBadCurrentDrawable is generated if the previous context of + the calling thread has unflushed commands and the previous drawable is + no longer valid. + + + BadAlloc is generated if the X server does not have enough + resources to allocate the buffers. + + + BadMatch is generated if: + + + draw and read cannot fit into frame buffer memory simultaneously. + + + draw or read is a GLXPixmap and ctx is a direct-rendering + context. + + + draw or read is a GLXPixmap and ctx was previously bound to a + GLXWindow or GLXPbuffer. + + + draw or read is a GLXWindow or GLXPbuffer and ctx was + previously bound to a GLXPixmap. + + + See Also + + glXCreateNewContext, + glXCreateWindow, + glXCreatePixmap, + glXCreatePbuffer, + glXDestroyContext, + glXGetCurrentContext, + glXGetCurrentDisplay, + glXGetCurrentDrawable, + glXGetCurrentReadDrawable, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXMakeCurrent.xml b/upstream-man-pages/man2/glXMakeCurrent.xml new file mode 100644 index 0000000..9af9e76 --- /dev/null +++ b/upstream-man-pages/man2/glXMakeCurrent.xml @@ -0,0 +1,167 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXMakeCurrent + 3G + + + glXMakeCurrent + attach a GLX context to a window or a GLX pixmap + + C Specification + + + Bool glXMakeCurrent + Display * dpy + GLXDrawable drawable + GLXContext ctx + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + drawable + + + Specifies a GLX drawable. + Must be either an X window ID or a GLX pixmap ID. + + + + + ctx + + + Specifies a GLX rendering context that is to be attached to drawable. + + + + + + Description + + glXMakeCurrent does two things: + It makes ctx the current GLX rendering context of the calling thread, + replacing the previously current context if there was one, + and it attaches ctx to a GLX drawable, + either a window or a GLX pixmap. + As a result of these two actions, + subsequent GL rendering calls + use rendering context ctx to modify GLX drawable drawable (for + reading and writing). + Because glXMakeCurrent always replaces the current rendering context with ctx, + there can be only one current context per thread. + + + Pending commands to the + previous context, if any, are flushed before it is released. + + + The first time ctx is made current to any thread, + its viewport is set to the full size of drawable. + Subsequent calls by any thread to glXMakeCurrent with ctx + have no effect on its viewport. + + + To release the current context without assigning a new one, + call glXMakeCurrent with drawable set to None and ctx + set to NULL. + + + glXMakeCurrent returns True if it is successful, + False otherwise. + If False is returned, the previously current rendering context + and drawable (if any) remain unchanged. + + + Notes + + A process is a single-execution environment, + implemented in a single address space, + consisting of one or more threads. + + + A thread is one of a set of subprocesses that share + a single address space, + but maintain separate program counters, + stack spaces, + and other related global data. + A thread that is the only member of its subprocess group + is equivalent to a process. + + + Errors + + BadMatch is generated if drawable was not + created with the same X screen and visual as ctx. + It is also generated if drawable is None and ctx is not + NULL. + + + BadAccess is generated if ctx was current to another thread + at the time glXMakeCurrent was called. + + + GLXBadDrawable is generated if drawable is not a valid GLX drawable. + + + GLXBadContext is generated if ctx is not a valid GLX context. + + + GLXBadContextState is generated if glXMakeCurrent is executed between + the execution of glBegin and the corresponding execution of glEnd. + + + GLXBadContextState is also generated if the rendering context current + to the calling thread has GL renderer state GLX_FEEDBACK or + GLX_SELECT. + + + GLXBadCurrentWindow is generated if there are pending GL + commands for the previous context and the current drawable is + a window that is no longer valid. + + + BadAlloc may be generated if the server has delayed allocation + of ancillary buffers until glXMakeCurrent is called, only to find that it has + insufficient resources to complete the allocation. + + + See Also + + glXCreateContext, + glXCreateGLXPixmap + glXGetCurrentContext, + glXGetCurrentDisplay, + glXGetCurrentDrawable, + glXGetCurrentReadDrawable, + glXMakeContextCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryContext.xml b/upstream-man-pages/man2/glXQueryContext.xml new file mode 100644 index 0000000..dc950a8 --- /dev/null +++ b/upstream-man-pages/man2/glXQueryContext.xml @@ -0,0 +1,139 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryContext + 3G + + + glXQueryContext + query context information + + C Specification + + + int glXQueryContext + Display * dpy + GLXContext ctx + int attribute + int * value + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + ctx + + + Specifies a GLX rendering context. + + + + + attribute + + + Specifies that a context parameter should be retrieved. Must be one of + GLX_FBCONFIG_ID, GLX_RENDER_TYPE, or GLX_SCREEN. + + + + + value + + + Contains the return value for attribute. + + + + + + Description + + glXQueryContext sets value to the value of attribute with respect to ctx. + attribute may be one of the following: + + + + GLX_FBCONFIG_ID + + + Returns the XID of the GLXFBConfig associated with ctx. + + + + + GLX_RENDER_TYPE + + + Returns the rendering type supported by ctx. + + + + + GLX_SCREEN + + + Returns the screen number associated with ctx. + + + + + + Success is returned unless attribute is not a valid GLX + context attribute, in which case GLX_BAD_ATTRIBUTE is returned. + + + This call may cause a round-trip to the server. + + + Notes + + glXQueryContext is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLXBadContext is generated if ctx does not + refer to a valid context. + + + See Also + + glXCreateNewContext, + glXGetCurrentContext, + glXQueryVersion, + glXQueryExtensionsString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryContextInfoEXT.xml b/upstream-man-pages/man2/glXQueryContextInfoEXT.xml new file mode 100644 index 0000000..5647549 --- /dev/null +++ b/upstream-man-pages/man2/glXQueryContextInfoEXT.xml @@ -0,0 +1,143 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryContextInfoEXT + 3G + + + glXQueryContextInfoEXT + query context information + + C Specification + + + int glXQueryContextInfoEXT + Display * dpy + GLXContext ctx + int attribute + int * value + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + ctx + + + Specifies a GLX rendering context. + + + + + attribute + + + Specifies that a context parameter should be retrieved. Must be one of + GLX_SHARED_CONTEXT_EXT, GLX_VISUAL_ID_EXT, or GLX_SCREEN_EXT. + + + + + value + + + Contains the return value for attribute. + + + + + + Description + + glXQueryContextInfoEXT sets value to the value of attribute with respect to ctx. + glXQueryContextInfoEXT returns an error code if it fails for any reason. Otherwise, + Success is returned. + + + attribute may be one of the following: + + + + GLX_SHARED_CONTEXT_EXT + + + Returns the XID of the share list context associated with ctx at its + creation. + + + + + GLX_VISUAL_ID_EXT + + + Returns the XID of the GLX Visual associated with ctx. + + + + + GLX_SCREEN_EXT + + + Returns the screen number associated with ctx. + + + + + + This call may cause a round-trip to the server. + + + glXQueryContextInfoEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_import_context is supported. + + + Errors + + GLXBadContext is generated if ctx does not + refer to a valid context. + + + GLX_BAD_ATTRIBUTE is returned if attribute is not a valid GLX + context attribute. + + + fred GLX_BAD_CONTEXT is returned if attribute is not a valid context. + + + See Also + + glXCreateContext, + glXQueryVersion, + glXQueryExtensionsString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryDrawable.xml b/upstream-man-pages/man2/glXQueryDrawable.xml new file mode 100755 index 0000000..ab092f2 --- /dev/null +++ b/upstream-man-pages/man2/glXQueryDrawable.xml @@ -0,0 +1,171 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryDrawable + 3G + + + glXQueryDrawable + returns an attribute assoicated with a GLX drawable + + C Specification + + + int glXQueryDrawable + Display * dpy + GLXDrawable draw + int attribute + unsigned int * value + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + draw + + + Specifies the GLX drawable to be queried. + + + + + attribute + + + Specifies the attribute to be returned. Must be one of + GLX_WIDTH, + GLX_HEIGHT, + GLX_PRESERVED_CONTENTS, + GLX_LARGEST_PBUFFER, or + GLX_FBCONFIG_ID. + + + + + value + + + Contains the return value for + attribute. + + + + + + Description + + glXQueryDrawable sets + value to the value of + attribute with respect to the GLXDrawable + draw. + + + attribute may be one of the following: + + + + GLX_WIDTH + + + Returns the width of ctx. + + + + + GLX_HEIGHT + + + Returns the height of ctx. + + + + + GLX_PRESERVED_CONTENTS + + + Returns True if the contents + of a GLXPbuffer are preserved when a resource + conflict occurs; False otherwise. + + + + + GLX_LARGEST_PBUFFER + + + Returns the value set when + glXCreatePbuffer was called to + create the GLXPbuffer. If + False is returned, then the + call to glXCreatePbuffer will + fail to create a GLXPbuffer if the requested size + is larger than the implementation maximum or + available resources. If True + is returned, a GLXPbuffer of the maximum availble + size (if less than the requested width and height) + is created. + + + + + GLX_FBCONFIG_ID + + + Returns the XID for draw. + + + + + + If draw is a GLXWindow or GLXPixmap and + attribute is set to + GLX_PRESERVED_CONTENTS or + GLX_LARGETST_PBUFFER, the contents of + value are undefined. If + attribute is not one of the attributes + listed above, the contents of value are + unedfined. + + + Errors + + A GLXBadDrawable is generated if + draw is not a valid GLXDrawable. + + + See Also + + glXCreateWindow, + glXCreatePixmap, + glXCreatePbuffer, + glXGetFBConfigAttrib, + glXChooseFBConfig + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryExtension.xml b/upstream-man-pages/man2/glXQueryExtension.xml new file mode 100644 index 0000000..32120ee --- /dev/null +++ b/upstream-man-pages/man2/glXQueryExtension.xml @@ -0,0 +1,87 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryExtension + 3G + + + glXQueryExtension + indicate whether the GLX extension is supported + + C Specification + + + Bool glXQueryExtension + Display * dpy + int * errorBase + int * eventBase + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + errorBase + + + Returns the base error code of the GLX server extension. + + + + + eventBase + + + Returns the base event code of the GLX server extension. + + + + + + Description + + glXQueryExtension returns True if the X server of + connection dpy supports the GLX extension, + False otherwise. + If True is returned, + then errorBase and eventBase return the error base and event base of + the GLX extension. These values should be added to the constant + error and event values to determine the actual event or error values. + Otherwise, errorBase and eventBase are unchanged. + + + errorBase and eventBase do not return values if they are specified + as NULL. + + + See Also + + glXQueryVersion + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryExtensionsString.xml b/upstream-man-pages/man2/glXQueryExtensionsString.xml new file mode 100644 index 0000000..9fe62ad --- /dev/null +++ b/upstream-man-pages/man2/glXQueryExtensionsString.xml @@ -0,0 +1,84 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryExtensionsString + 3G + + + glXQueryExtensionsString + return list of supported extensions + + C Specification + + + const char * glXQueryExtensionsString + Display * dpy + int screen + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + screen + + + Specifies the screen number. + + + + + + Description + + glXQueryExtensionsString returns a pointer to a string describing + which GLX extensions are supported on the connection. The string + is null-terminated and contains a space-separated list of + extension names. (The extension names themselves never contain + spaces.) If there are no extensions to GLX, then the empty string is + returned. + + + Notes + + glXQueryExtensionsString is available only if the GLX version is 1.1 or greater. + + + glXQueryExtensionsString only returns information about GLX extensions. Call + glGetString to get a list of GL extensions. + + + See Also + + glGetString, + glXQueryVersion, + glXQueryServerString, + glXGetClientString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryServerString.xml b/upstream-man-pages/man2/glXQueryServerString.xml new file mode 100644 index 0000000..919ac19 --- /dev/null +++ b/upstream-man-pages/man2/glXQueryServerString.xml @@ -0,0 +1,100 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryServerString + 3G + + + glXQueryServerString + return string describing the server + + C Specification + + + const char * glXQueryServerString + Display * dpy + int screen + int name + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + screen + + + Specifies the screen number. + + + + + name + + + Specifies which string is returned: + one of GLX_VENDOR, GLX_VERSION, or GLX_EXTENSIONS. + + + + + + Description + + glXQueryServerString + returns a pointer to a static, null-terminated string + describing some aspect of the server's GLX extension. The possible values for + name and the format of the strings is the same as for + glXGetClientString. If name is not set to a recognized value, + NULL is returned. + + + Notes + + glXQueryServerString is available only if the GLX version is 1.1 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, the GL version must be 1.1. + If the GLX version is 1.3, the GL version must be 1.2. + + + glXQueryServerString only returns information about GLX extensions supported by the server. + Call glGetString to get a list of GL extensions. + Call glXGetClientString to get a list of GLX extensions supported by the + client. + + + See Also + + glXQueryVersion, + glXGetClientString, + glXQueryExtensionsString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXQueryVersion.xml b/upstream-man-pages/man2/glXQueryVersion.xml new file mode 100644 index 0000000..e8f2cab --- /dev/null +++ b/upstream-man-pages/man2/glXQueryVersion.xml @@ -0,0 +1,93 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXQueryVersion + 3G + + + glXQueryVersion + return the version numbers of the GLX extension + + C Specification + + + Bool glXQueryVersion + Display * dpy + int * major + int * minor + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + major + + + Returns the major version number of the GLX server extension. + + + + + minor + + + Returns the minor version number of the GLX server extension. + + + + + + Description + + glXQueryVersion returns the major and minor version numbers of the GLX extension + implemented by the server associated with connection dpy. + Implementations with the same major version number are upward compatible, + meaning that the implementation with the higher minor number is a superset + of the version with the lower minor number. + + + major and minor do not return values if they are specified as + NULL. + + + Errors + + glXQueryVersion returns False if it fails, + True otherwise. + + + major and minor are not updated when False is returned. + + + See Also + + glXQueryExtension + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXSelectEvent.xml b/upstream-man-pages/man2/glXSelectEvent.xml new file mode 100644 index 0000000..eaa00b0 --- /dev/null +++ b/upstream-man-pages/man2/glXSelectEvent.xml @@ -0,0 +1,329 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXSelectEvent + 3G + + + glXSelectEvent + select GLX events for a window or a GLX pixel buffer + + C Specification + + + void glXSelectEvent + Display * dpy + GLXDrawable draw + unsigned long event_mask + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + draw + + + Specifies a GLX drawable. Must be a GLX pixel buffer or a window. + + + + + event_mask + + + Specifies the events to be returned for draw. + + + + + + Description + + glXSelectEvent sets the GLX event mask for a GLX pixel buffer or a window. + Calling glXSelectEvent overrides any previous event mask that was + set by the client for draw. Note that it does not affect the + event masks that other clients may have specified for draw since + each client rendering to draw has a separate event mask for it. + + + Currently, only one GLX event, GLX_PBUFFER_CLOBBER_MASK, + can be selected. The following data is returned to the client when a + GLX_PBUFFER_CLOBBER_MASK event occurs: + + + typedef struct { + + + + + + + + + int event_type; + + + /* GLX_DAMAGED or GLX_SAVED */ + + + + + int draw_type; + + + /* GLX_WINDOW or GLX_PBUFFER */ + + + + + unsigned long serial; + + + /* # of last request processed by server */ + + + + + Bool send_event; + + + /* true if this came for SendEvent request */ + + + + + Display *display; + + + /* display the event was read from */ + + + + + GLXDrawable drawable; + + + /* i.d. of Drawable */ + + + + + unsigned int buffer_mask; + + + /* mask indicating affected buffers */ + + + + + int x, y; + + + + + + + + int width, height; + + + + + + + + int count; + + + /* if nonzero, at least this many more */ + + + + + + + } GLXPbufferClobberEvent; + The valid bit masks used in buffer_mask are: + + + + + + + + + + + Bitmask + + + Corresponding Buffer + + + + + + + GLX_FRONT_LEFT_BUFFER_BIT + + + Front left color buffer + + + + + GLX_FRONT_RIGHT_BUFFER_BIT + + + Front right color buffer + + + + + GLX_BACK_LEFT_BUFFER_BIT + + + Back left color buffer + + + + + GLX_BACK_RIGHT_BUFFER_BIT + + + Back right color buffer + + + + + GLX_AUX_BUFFERS_BIT + + + Auxiliary buffer + + + + + GLX_DEPTH_BUFFER_BIT + + + Depth buffer + + + + + GLX_STENCIL_BUFFER_BIT + + + Stencil buffer + + + + + GLX_ACCUM_BUFFER_BIT + + + Accumulation buffer + + + + + + + A single X server operation can cause several buffer clobber events to be + sent. (e.g., a single GLX pixel buffer may be damaged and cause multiple + buffer clobber events to be generated). Each event specifies one + region of the GLX drawable that was affected by the X Server operation. + The buffer_mask field indicates which color buffers and + ancillary buffers were affected. All the buffer clobber events + generated by a single X server action are guaranteed to be + contiguous in the event queue. The conditions under which this event is + generated and the event_type varies, depending on the type of the + GLX drawable. + + + When the GLX_AUX_BUFFERS_BIT is set in buffer_mask, then + aux_buffer is set to indicate which buffer was affected. If more + than one aux buffer was affected, then additional events are + generated as part of the same contiguous event group. Each + additional event will have only the GLX_AUX_BUFFERS_BIT set in + buffer_mask, and the aux_buffer field will be set + appropriately. For nonstereo drawables, + GLX_FRONT_LEFT_BUFFER_BIT and GLX_BACK_LEFT_BUFFER_BIT are + used to specify the front and back color buffers. + + + For preserved GLX pixel buffers, a buffer clobber event with + type GLX_SAVED is generated whenever the contents of the + GLX pixel buffer is moved out of offscreen memory. The event(s) describes which + portions of the GLX pixel buffer were affected. Clients who receive many + buffer clobber events, referring to different save actions, + should consider freeing the GLX pixel buffer resource in order to prevent + the system from thrashing due to insufficient resources. + + + For an unpreserved GLXPbuffer, a buffer clobber event, with type + GLX_DAMAGED, is generated whenever a portion of the GLX pixel buffer + becomes invalid. The client may wish to regenerate the invalid portions + of the GLX pixel buffer. + + + For Windows, buffer clobber events, with type GLX_SAVED, occur + whenever an ancillary buffer, associated with the window, gets clobbered + or moved out of off-screen memory. The event contains information + indicating which color buffers and ancillary buffers\(emand which portions + of those buffers\(emwere affected. + + + Notes + + glXSelectEvent is available only if the GLX version is 1.3 or greater. + + + If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. + + + Errors + + GLXBadDrawable is generated if draw is not a valid window + or a valid GLX pixel buffer. + + + Associated Gets + + glXGetSelectedEvent + + + See Also + + glXCreatePbuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXSwapBuffers.xml b/upstream-man-pages/man2/glXSwapBuffers.xml new file mode 100644 index 0000000..901efc6 --- /dev/null +++ b/upstream-man-pages/man2/glXSwapBuffers.xml @@ -0,0 +1,110 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXSwapBuffers + 3G + + + glXSwapBuffers + exchange front and back buffers + + C Specification + + + void glXSwapBuffers + Display * dpy + GLXDrawable drawable + + + + + Parameters + + + dpy + + + Specifies the connection to the X server. + + + + + drawable + + + Specifies the drawable whose buffers are to be swapped. + + + + + + Description + + glXSwapBuffers promotes the contents of the back buffer of drawable to become + the contents of the front buffer of drawable. + The contents of the back buffer then become undefined. + The update typically takes place during the vertical retrace of + the monitor, + rather than immediately after glXSwapBuffers is called. + + + glXSwapBuffers performs an implicit glFlush before it returns. + Subsequent OpenGL commands may be issued immediately after calling glXSwapBuffers, + but are not executed until the buffer exchange is completed. + + + If drawable was not created with respect to a double-buffered visual, + glXSwapBuffers has no effect, + and no error is generated. + + + Notes + + The contents of the back buffer become undefined after + a swap. Note that this applies to pixel buffers as well as windows. + + + All GLX rendering contexts share the same notion of which are front buffers + and which are back buffers. + One consequence is that when multiple clients are rendering to the same + double-buffered window, + all of them should finish rendering before one of them issues the command + to swap buffers. + The clients are responsible for implementing this synchronization. + Typically this is accomplished by executing glFinish and then + using a semaphore in shared memory to rendezvous before swapping. + + + Errors + + GLXBadDrawable is generated if drawable is not a valid GLX drawable. + + + GLXBadCurrentWindow is generated if dpy and drawable are + respectively the display and drawable associated with the current + context of the calling thread, and drawable identifies a window that + is no longer valid. + + + See Also + + glFlush + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXUseXFont.xml b/upstream-man-pages/man2/glXUseXFont.xml new file mode 100644 index 0000000..07bbe71 --- /dev/null +++ b/upstream-man-pages/man2/glXUseXFont.xml @@ -0,0 +1,192 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXUseXFont + 3G + + + glXUseXFont + create bitmap display lists from an X font + + C Specification + + + void glXUseXFont + Font font + int first + int count + int listBase + + + + + Parameters + + + font + + + Specifies the font from which character glyphs are to be taken. + + + + + first + + + Specifies the index of the first glyph to be taken. + + + + + count + + + Specifies the number of glyphs to be taken. + + + + + listBase + + + Specifies the index of the first display list to be generated. + + + + + + Description + + glXUseXFont generates count display lists, + named listBase through + + + + listBase + + + count + - + 1 + + , + each containing a single glBitmap command. + The parameters of the glBitmap command of display list + + + + listBase + + + i + + + are derived from glyph + + + + first + + + i + + . + Bitmap parameters + xorig, + yorig, + width, + and + height + are computed from font metrics as + + + + descent + - + 1 + + , + + + + - + lbearing + + , + + + + rbearing + - + lbearing + + , + and + + + + ascent + + + descent + + , + respectively. + xmove + is taken from the glyph's + width + metric, + and + ymove + is set to zero. + Finally, + the glyph's image is converted to the appropriate format for glBitmap. + + + Using glXUseXFont may be more efficient than accessing the X font and generating + the display lists explicitly, + both because the display lists are created on the server without requiring + a round trip of the glyph data, + and because the server may choose to delay the creation of each + bitmap until it is accessed. + + + Empty display lists are created for all glyphs that are requested and + are not defined in font. + glXUseXFont is ignored if there is no current GLX context. + + + Errors + + BadFont is generated if font is not a valid font. + + + GLXBadContextState is generated if the current GLX context is + in display-list construction mode. + + + GLXBadCurrentWindow is generated if the drawable associated + with the current context of the calling thread is a window, and that + window is no longer valid. + + + See Also + + glBitmap, + glXMakeCurrent + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXWaitGL.xml b/upstream-man-pages/man2/glXWaitGL.xml new file mode 100644 index 0000000..6dd2689 --- /dev/null +++ b/upstream-man-pages/man2/glXWaitGL.xml @@ -0,0 +1,69 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXWaitGL + 3G + + + glXWaitGL + complete GL execution prior to subsequent X calls + + C Specification + + + void glXWaitGL + void + + + + + Description + + GL rendering calls made prior to glXWaitGL are guaranteed to be + executed before X rendering calls made after glXWaitGL. + Although this same result can be achieved using glFinish, + glXWaitGL does not require a round trip to the server, + and it is therefore more efficient in cases where client and server + are on separate machines. + + + glXWaitGL is ignored if there is no current GLX context. + + + Notes + + glXWaitGL may or may not flush the X stream. + + + Errors + + GLXBadCurrentWindow is generated if the drawable associated + with the current context of the calling thread is a window, and that + window is no longer valid. + + + See Also + + glFinish, + glFlush, + glXWaitX, + XSync + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/glXWaitX.xml b/upstream-man-pages/man2/glXWaitX.xml new file mode 100644 index 0000000..7cb2f22 --- /dev/null +++ b/upstream-man-pages/man2/glXWaitX.xml @@ -0,0 +1,69 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glXWaitX + 3G + + + glXWaitX + complete X execution prior to subsequent GL calls + + C Specification + + + void glXWaitX + void + + + + + Description + + X rendering calls made prior to glXWaitX are guaranteed to be + executed before GL rendering calls made after glXWaitX. + Although the same result can be achieved using XSync, + glXWaitX does not require a round trip to the server, + and it is therefore more efficient in cases where client and server + are on separate machines. + + + glXWaitX is ignored if there is no current GLX context. + + + Notes + + glXWaitX may or may not flush the GL stream. + + + Errors + + GLXBadCurrentWindow is generated if the drawable associated + with the current context of the calling thread is a window, and that + window is no longer valid. + + + See Also + + glFinish, + glFlush, + glXWaitGL, + XSync + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBeginCurve.xml b/upstream-man-pages/man2/gluBeginCurve.xml new file mode 100644 index 0000000..d4daab0 --- /dev/null +++ b/upstream-man-pages/man2/gluBeginCurve.xml @@ -0,0 +1,100 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBeginCurve + 3G + + + gluBeginCurve + delimit a NURBS curve definition + + C Specification + + + void gluBeginCurve + GLUnurbs* nurb + + + + C Specification + + + void gluEndCurve + GLUnurbs* nurb + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + + Description + + Use gluBeginCurve to mark the beginning of a NURBS + curve definition. + After + calling gluBeginCurve, make one or more calls to + gluNurbsCurve to define the attributes of the curve. + Exactly one of the calls to gluNurbsCurve must have + a curve type of GLU_MAP1_VERTEX_3 or GLU_MAP1_VERTEX_4. + To mark the end of the NURBS curve definition, call gluEndCurve. + + + GL evaluators are used to render the NURBS curve as a series of line + segments. + Evaluator state is preserved during rendering + with glPushAttrib(GLU_EVAL_BIT) and + glPopAttrib(). + See the glPushAttrib reference page for details on exactly what state + these calls preserve. + + + Example + + The following commands render a textured NURBS curve with normals; + texture coordinates and normals are also specified as NURBS curves: + +gluBeginCurve(nobj); + gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2); + gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL); + gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4); +gluEndCurve(nobj); + + + + See Also + + gluBeginSurface, + gluBeginTrim, + gluNewNurbsRenderer, + gluNurbsCurve, + glPopAttrib, + glPushAttrib + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBeginPolygon.xml b/upstream-man-pages/man2/gluBeginPolygon.xml new file mode 100644 index 0000000..017420f --- /dev/null +++ b/upstream-man-pages/man2/gluBeginPolygon.xml @@ -0,0 +1,113 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBeginPolygon + 3G + + + gluBeginPolygon + delimit a polygon description + + C Specification + + + void gluBeginPolygon + GLUtesselator* tess + + + + C Specification + + + void gluEndPolygon + GLUtesselator* tess + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + + Description + + gluBeginPolygon and gluEndPolygon delimit the definition of a + nonconvex polygon. + To define such a polygon, first call gluBeginPolygon. + Then define the contours of the polygon + by calling + gluTessVertex for each vertex + and gluNextContour to start each new contour. + Finally, call gluEndPolygon + to signal the end of the definition. + See the gluTessVertex and + gluNextContour reference pages for more details. + + + Once gluEndPolygon is called, the polygon is tessellated, and the + resulting triangles are described through callbacks. + See gluTessCallback for descriptions of the callback functions. + + + Notes + + This command is obsolete and is provided for backward compatibility + only. Calls to gluBeginPolygon are mapped to + gluTessBeginPolygon + followed by + gluTessBeginContour. Calls to gluEndPolygon are mapped + to gluTessEndContour followed by gluTessEndPolygon. + + + Example + + A quadrilateral with a triangular hole in it can be described like this: + +gluBeginPolygon(tobj); + gluTessVertex(tobj, v1, v1); + gluTessVertex(tobj, v2, v2); + gluTessVertex(tobj, v3, v3); + gluTessVertex(tobj, v4, v4); +gluNextContour(tobj, GLU_INTERIOR); + gluTessVertex(tobj, v5, v5); + gluTessVertex(tobj, v6, v6); + gluTessVertex(tobj, v7, v7); +gluEndPolygon(tobj); + + + + See Also + + gluNewTess, + gluNextContour, + gluTessBeginContour, + gluTessBeginPolygon, + gluTessCallback, + gluTessVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBeginSurface.xml b/upstream-man-pages/man2/gluBeginSurface.xml new file mode 100644 index 0000000..41bca0c --- /dev/null +++ b/upstream-man-pages/man2/gluBeginSurface.xml @@ -0,0 +1,105 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBeginSurface + 3G + + + gluBeginSurface + delimit a NURBS surface definition + + C Specification + + + void gluBeginSurface + GLUnurbs* nurb + + + + C Specification + + + void gluEndSurface + GLUnurbs* nurb + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + + Description + + Use gluBeginSurface to mark the beginning of a NURBS + surface definition. After + calling gluBeginSurface, make one or more calls to + gluNurbsSurface to define the attributes of the surface. + Exactly one of these calls to gluNurbsSurface must have a + surface type of GLU_MAP2_VERTEX_3 or GLU_MAP2_VERTEX_4. + To mark the end of the NURBS surface definition, call + gluEndSurface. + + + Trimming of NURBS surfaces is supported with gluBeginTrim, + gluPwlCurve, gluNurbsCurve, and gluEndTrim. See the + gluBeginTrim reference page for details. + + + GL evaluators are used to render the NURBS surface as a set of polygons. + Evaluator state is preserved during rendering + with glPushAttrib(GLU_EVAL_BIT) and + glPopAttrib. + See the glPushAttrib reference page for details on exactly what state + these calls preserve. + + + Example + + The following commands render a textured NURBS surface with normals; + the texture coordinates and normals are also described as NURBS surfaces: + +gluBeginSurface(nobj); + gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2); + gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL); + gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4); +gluEndSurface(nobj); + + + + See Also + + gluBeginCurve, + gluBeginTrim, + gluNewNurbsRenderer, + gluNurbsCurve, + gluNurbsSurface, + gluPwlCurve, + glPushAttrib + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBeginTrim.xml b/upstream-man-pages/man2/gluBeginTrim.xml new file mode 100644 index 0000000..db47cb0 --- /dev/null +++ b/upstream-man-pages/man2/gluBeginTrim.xml @@ -0,0 +1,145 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBeginTrim + 3G + + + gluBeginTrim + delimit a NURBS trimming loop definition + + C Specification + + + void gluBeginTrim + GLUnurbs* nurb + + + + C Specification + + + void gluEndTrim + GLUnurbs* nurb + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + + Description + + Use gluBeginTrim to mark the beginning of a + trimming loop and gluEndTrim to mark the end + of a trimming loop. A trimming loop is + a set of oriented curve segments (forming a closed curve) that + define boundaries of a NURBS surface. You include these + trimming loops in the definition of a NURBS + surface, between calls to gluBeginSurface and gluEndSurface. + + + The definition for a NURBS surface can contain many + trimming loops. For example, if you wrote a definition + for a NURBS surface that resembled a rectangle with + a hole punched out, the definition would contain two + trimming loops. One loop would define the outer edge + of the rectangle; the other would define + the hole punched out of the rectangle. The definitions + of each of these trimming loops would be bracketed by a + gluBeginTrim/gluEndTrim pair. + + + The definition of a single closed trimming loop can consist + of multiple curve segments, each described as a piecewise + linear curve (see gluPwlCurve) or as a single NURBS + curve (see gluNurbsCurve), or as a combination of + both in any order. The only library calls that can + appear in a trimming loop definition (between the calls + to gluBeginTrim and gluEndTrim) are + gluPwlCurve and gluNurbsCurve. + + + The area of the NURBS surface that is displayed is the + region in the domain to the left of the trimming curve + as the curve parameter increases. Thus, the retained + region of the NURBS surface is inside a + counterclockwise trimming loop and outside a clockwise + trimming loop. For the rectangle mentioned earlier, + the trimming loop for the outer edge of the rectangle runs + counterclockwise, while the trimming loop for the punched-out hole + runs clockwise. + + + If you use more than one curve to define a single trimming + loop, the curve segments must form a closed loop (that is, + the endpoint of each curve must be the starting point of the + next curve, and the endpoint of the final curve must + be the starting point of the first curve). If the + endpoints of the curve are sufficiently close together + but not exactly coincident, they will be coerced to match. + If the endpoints are not sufficiently close, an error results + (see gluNurbsCallback). + + + If a trimming loop definition contains multiple curves, + the direction of the curves must be consistent (that is, the + inside must be to the left of all of the curves). Nested + trimming loops are legal as long as the curve orientations + alternate correctly. + If trimming curves are self-intersecting, + or intersect one another, an error results. + + + If no trimming information is given + for a NURBS surface, the entire surface is drawn. + + + Example + + This code fragment defines a trimming loop that consists of one + piecewise linear curve, and two NURBS curves: + +gluBeginTrim(nobj); + gluPwlCurve(..., GLU_MAP1_TRIM_2); + gluNurbsCurve(..., GLU_MAP1_TRIM_2); + gluNurbsCurve(..., GLU_MAP1_TRIM_3); +gluEndTrim(nobj); + + + + See Also + + gluBeginSurface, + gluNewNurbsRenderer, + gluNurbsCallback, + gluNurbsCurve, + gluPwlCurve + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBuild1DMipmapLevels.xml b/upstream-man-pages/man2/gluBuild1DMipmapLevels.xml new file mode 100644 index 0000000..d18db6e --- /dev/null +++ b/upstream-man-pages/man2/gluBuild1DMipmapLevels.xml @@ -0,0 +1,409 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBuild1DMipmapLevels + 3G + + + gluBuild1DMipmapLevels + builds a subset of one-dimensional mipmap levels + + C Specification + + + GLint gluBuild1DMipmapLevels + GLenum target + GLint internalFormat + GLsizei width + GLenum format + GLenum type + GLint level + GLint base + GLint max + const void * data + + + + + Parameters + + + target + + + Specifies the target texture. Must be GLU_TEXTURE_1D. + + + + + internalFormat + + + Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. + + + + + width + + + Specifies the width in pixels of the texture image. + This should be a power of 2. + + + + + format + + + Specifies the format of the pixel data. + Must be one of: + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type for data. + Must be one of: GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + level + + + Specifies the mipmap level of the image data. + + + + + base + + + Specifies the minimum mipmap level to pass to glTexImage1D. + + + + + max + + + Specifies the maximum mipmap level to pass to glTexImage1D. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + gluBuild1DMipmapLevels builds a subset of prefiltered one-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. + + + A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). + + + A series of mipmap levels from base to max is built by decimating + data in half + until size + + + + 1 + × + 1 + + + is reached. At each level, each texel in the + halved mipmap level is an average of the corresponding two texels in the larger + mipmap level. + glTexImage1D is called to load these mipmap levels from base + to max. If max is larger than the highest mipmap level for the + texture of the specified size, then a GLU error code is returned (see + gluErrorString) and nothing is loaded. + + + For example, if level is 2 and width is 16, the + following levels are possible: + + + + 16 + × + 1 + + , + + + + 8 + × + 1 + + , + + + + 4 + × + 1 + + , + + + + 2 + × + 1 + + , + + + + 1 + × + 1 + + . + These correspond + to levels 2 through 6 respectively. + If base is 3 and max is 5, then only mipmap levels + + + + 8 + × + 1 + + , + + + + 4 + × + 1 + + + and + + + + 2 + × + 1 + + + are + loaded. However, if max is 7, then an error is returned and nothing is + loaded since max is larger than the highest mipmap level which is, in + this case, 6. + + + The highest mipmap level can be derived from the formula + + + + log + 2 + + + + + width + × + 2 + level + + + + + . + + + See the glTexImage1D reference page for a description of the + acceptable values for type parameter. See the glDrawPixels + reference page for a description of the acceptable values + for level parameter. + + + Notes + + gluBuild1DMipmapLevels is only available if the GLU version is 1.3 or greater. + + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if level > base, base < 0, + max < base or max is > the highest mipmap level for data. + + + GLU_INVALID_VALUE is returned if width is < 1. + + + GLU_INVALID_ENUM is returned if internalFormat, format, or type are not + legal. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmaps, + gluBuild2DMipmapLevels, + gluBuild2DMipmaps, + gluBuild3DMipmapLevels, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glGetTexImage, + glGetTexLevelParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBuild1DMipmaps.xml b/upstream-man-pages/man2/gluBuild1DMipmaps.xml new file mode 100644 index 0000000..50fd92b --- /dev/null +++ b/upstream-man-pages/man2/gluBuild1DMipmaps.xml @@ -0,0 +1,393 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBuild1DMipmaps + 3G + + + gluBuild1DMipmaps + builds a one-dimensional mipmap + + C Specification + + + GLint gluBuild1DMipmaps + GLenum target + GLint internalFormat + GLsizei width + GLenum format + GLenum type + const void * data + + + + + Parameters + + + target + + + Specifies the target texture. Must be GLU_TEXTURE_1D. + + + + + internalFormat + + + Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. + + + + + width + + + Specifies the width, in pixels, of the texture image. + + + + + format + + + Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + gluBuild1DMipmaps builds a series of prefiltered one-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. + + + A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). + + + Initially, the width of data is checked to see if it is + a power of 2. If not, a copy of data is scaled up or down to the + nearest power of 2. (If width is exactly between powers of 2, then + the copy of data will scale upwards.) This copy will be used for + subsequent mipmapping operations described below. + For example, if width is 57, then a copy of data + will scale up to 64 before mipmapping + takes place. + + + Then, proxy textures (see glTexImage1D) are used to determine if + the implementation can fit the requested texture. If not, width is + continually halved until it fits. + + + Next, a series of mipmap levels is built by decimating a copy of + data in half + until size + + + + 1 + × + 1 + + + is reached. At each level, each texel in the + halved mipmap level is an average of the corresponding two texels in the larger + mipmap level. + + + glTexImage1D is called to load each of these mipmap levels. + Level 0 is a copy of data. + The highest level is + + + + + log + 2 + + + + + width + + + . + For example, if width is 64 and the implementation can store a texture of + this size, the following mipmap levels are + built: + + + + 64 + × + 1 + + , + + + + 32 + × + 1 + + , + + + + 16 + × + 1 + + , + + + + 8 + × + 1 + + , + + + + 4 + × + 1 + + , + + + + 2 + × + 1 + + , + and + + + + 1 + × + 1 + + . + These correspond to + levels 0 through 6, respectively. + + + See the glTexImage1D reference page for a description of the + acceptable values for the type parameter. See the glDrawPixels + reference page for a description of the acceptable values + for the data parameter. + + + Notes + + Note that there is no direct way of querying the maximum level. This can + be derived indirectly via glGetTexLevelParameter. First, query + for the + width actually used at level 0. + (The width may not be equal to width since + proxy textures might have scaled it to fit the implementation.) + Then the maximum + level can be derived from the formula + + + + + log + 2 + + + + + width + + + . + + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater, and if the GLU version is 1.3 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if width is < 1. + + + GLU_INVALID_ENUM is returned if format or type are not legal. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmapLevels, + gluBuild2DMipmapLevels, + gluBuild2DMipmaps, + gluBuild3DMipmapLevels, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glGetTexImage, + glGetTexLevelParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBuild2DMipmapLevels.xml b/upstream-man-pages/man2/gluBuild2DMipmapLevels.xml new file mode 100644 index 0000000..afb5f10 --- /dev/null +++ b/upstream-man-pages/man2/gluBuild2DMipmapLevels.xml @@ -0,0 +1,437 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBuild2DMipmapLevels + 3G + + + gluBuild2DMipmapLevels + builds a subset of two-dimensional mipmap levels + + C Specification + + + GLint gluBuild2DMipmapLevels + GLenum target + GLint internalFormat + GLsizei width + GLsizei height + GLenum format + GLenum type + GLint level + GLint base + GLint max + const void * data + + + + + Parameters + + + target + + + Specifies the target texture. Must be GLU_TEXTURE_2D. + + + + + internalFormat + + + Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. + + + + + width + height + + + Specifies the width and height, respectively, in pixels of the texture image. + These should be a power of 2. + + + + + format + + + Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + level + + + Specifies the mipmap level of the image data. + + + + + base + + + Specifies the minimum mipmap level to pass to glTexImage2D. + + + + + max + + + Specifies the maximum mipmap level to pass to glTexImage2D. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + gluBuild2DMipmapLevels builds a subset of prefiltered two-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. + + + A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). + + + A series of mipmap levels from base to max is built by decimating + data in half along + both dimensions until size + + + + 1 + × + 1 + + + is reached. At each level, each texel in the + halved mipmap level is an average of the corresponding four texels in the larger + mipmap level. (In the case of rectangular images, the decimation will ultimately + reach an + + + + N + × + 1 + + + or + + + + 1 + × + N + + + configuration. Here, two texels are + averaged instead.) + glTexImage2D is called to load these mipmap levels from base + to max. If max is larger than the highest mipmap level for the + texture of the specified size, then a GLU error code is returned (see + gluErrorString) and nothing is loaded. + + + For example, if level is 2 and width is 16 and height is 8, the + following levels are possible: + + + + 16 + × + 8 + + , + + + + 8 + × + 4 + + , + + + + 4 + × + 2 + + , + + + + 2 + × + 1 + + , + + + + 1 + × + 1 + + . + These correspond to levels 2 through 6 + respectively. If base is 3 and max is 5, then only mipmap levels + + + + 8 + × + 4 + + , + + + + 4 + × + 2 + + , + and + + + + 2 + × + 1 + + + are loaded. However, if max + is 7, then an error is returned and nothing is loaded since max is + larger than the highest mipmap level which is, in this case, 6. + + + The highest mipmap level can be derived from the formula + + + + log + 2 + + + + + + max + + + width + height + + + × + 2 + level + + + + + . + + + See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. + + + Notes + + gluBuild2DMipmapLevels is only available if the GLU version is 1.3 or greater. + + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if level > base, base < 0, + max < base, or max is > the highest mipmap level for data. + + + GLU_INVALID_VALUE is returned if width or height is < 1. + + + GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmapLevels, + gluBuild1DMipmaps, + gluBuild2DMipmaps, + gluBuild3DMipmapLevels, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glGetTexImage, + glGetTexLevelParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBuild2DMipmaps.xml b/upstream-man-pages/man2/gluBuild2DMipmaps.xml new file mode 100644 index 0000000..10c9668 --- /dev/null +++ b/upstream-man-pages/man2/gluBuild2DMipmaps.xml @@ -0,0 +1,429 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBuild2DMipmaps + 3G + + + gluBuild2DMipmaps + builds a two-dimensional mipmap + + C Specification + + + GLint gluBuild2DMipmaps + GLenum target + GLint internalFormat + GLsizei width + GLsizei height + GLenum format + GLenum type + const void * data + + + + + Parameters + + + target + + + Specifies the target texture. Must be GLU_TEXTURE_2D. + + + + + internalFormat + + + Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. + + + + + width + height + + + Specifies in pixels the width and height, respectively, of the texture image. + + + + + format + + + Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + gluBuild2DMipmaps builds a series of prefiltered two-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture-mapped primitives. + + + A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). + + + Initially, the width and height of data are checked to see if they + are a power of 2. If not, a copy of data (not data), is scaled up + or down to the nearest power of 2. This copy will be used for subsequent + mipmapping operations described below. (If width or height is exactly + between powers of 2, then the copy of data will scale upwards.) For + example, if width is 57 and height is 23, then a copy of data will + scale up to 64 in width and down to 16 in depth, before mipmapping takes + place. + + + Then, proxy textures (see glTexImage2D) are used to determine if + the implementation can fit the requested texture. If not, both dimensions + are continually halved until it fits. (If the OpenGL version is \(<= 1.0, + both maximum texture dimensions are clamped to the value returned + by glGetIntegerv with the argument GLU_MAX_TEXTURE_SIZE.) + + + Next, a series of mipmap levels is built by decimating a copy of data + in half along both dimensions until size + + + + 1 + × + 1 + + + is reached. At + each level, + each texel in the halved mipmap level is an average of the corresponding + four texels in the larger mipmap level. (In the case of rectangular + images, the decimation will ultimately reach an + + + + N + × + 1 + + + or + + + + 1 + × + N + + + configuration. Here, two texels are averaged instead.) + + + glTexImage2D is called to load each of these mipmap levels. + Level 0 is a copy of data. The highest level is + + + + + log + 2 + + + + + + max + + + width + height + + + + + . + For example, + if width is 64 and height is 16 + and the implementation can store a texture of this size, the following + mipmap levels are built: + + + + 64 + × + 16 + + , + + + + 32 + × + 8 + + , + + + + 16 + × + 4 + + , + + + + 8 + × + 2 + + , + + + + 4 + × + 1 + + , + + + + 2 + × + 1 + + , + and + + + + 1 + × + 1 + + + These + correspond to levels 0 through 6, respectively. + + + See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. + + + Notes + + Note that there is no direct way of querying the maximum level. This can + be derived indirectly via glGetTexLevelParameter. First, query + for the width and height actually used at level 0. (The width and + height may not be equal to width and height respectively since proxy + textures might have scaled them to fit the implementation.) Then the + maximum level can be derived from the formula + + + + + log + 2 + + + + + + max + + + width + height + + + + + . + + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater and if the GLU version is 1.3 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if width or height is < 1. + + + GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmapLevels, + gluBuild1DMipmaps, + gluBuild2DMipmapLevels, + gluBuild3DMipmapLevels, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glGetTexImage, + glGetTexLevelParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBuild3DMipmapLevels.xml b/upstream-man-pages/man2/gluBuild3DMipmapLevels.xml new file mode 100644 index 0000000..466a35c --- /dev/null +++ b/upstream-man-pages/man2/gluBuild3DMipmapLevels.xml @@ -0,0 +1,439 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBuild3DMipmapLevels + 3G + + + gluBuild3DMipmapLevels + builds a subset of three-dimensional mipmap levels + + C Specification + + + GLint gluBuild3DMipmapLevels + GLenum target + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + GLint level + GLint base + GLint max + const void * data + + + + + Parameters + + + target + + + Specifies the target texture. Must be GLU_TEXTURE_3D. + + + + + internalFormat + + + Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. + + + + + width + height + depth + + + Specifies in pixels the width, height and depth respectively, of the texture + image. These should be a power of 2. + + + + + format + + + Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + level + + + Specifies the mipmap level of the image data. + + + + + base + + + Specifies the minimum mipmap level to pass to glTexImage3D. + + + + + max + + + Specifies the maximum mipmap level to pass to glTexImage3D. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + gluBuild3DMipmapLevels builds a subset of prefiltered three-dimensional texture maps of + decreasing resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. + + + A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). + + + A series of mipmap levels from base to max is built by + decimating data in half along both dimensions until size + + + + 1 + × + 1 + × + 1 + + + is reached. At each level, each texel in the halved mipmap + level is an average of the corresponding eight texels in the larger + mipmap level. (If exactly one of the dimensions is 1, four texels are + averaged. If exactly two of the dimensions are 1, two texels are + averaged.) glTexImage3D is called to load these mipmap levels + from base to max. If max is larger than the highest mipmap + level for the texture of the specified size, then a GLU error code is + returned (see gluErrorString) and nothing is loaded. + + + For example, if level is 2 and width is 16, height is 8 and depth + is 4, the following levels are possible: + + + + 16 + × + 8 + × + 4 + + , + + + + 8 + × + 4 + × + 2 + + , + + + + 4 + × + 2 + × + 1 + + , + + + + 2 + × + 1 + × + 1 + + , + + + + 1 + × + 1 + × + 1 + + . + These correspond to levels 2 through 6 respectively. If base is + 3 and max is 5, then only mipmap levels + + + + 8 + × + 4 + × + 2 + + , + + + + 4 + × + 2 + × + 1 + + , + and + + + + 2 + × + 1 + × + 1 + + + are loaded. However, if + max is 7, then an error is returned and nothing is loaded, since + max is larger than the highest mipmap level which is, in this case, + 6. + + + The highest mipmap level can be derived from the formula + + + + log + 2 + + + + + + max + + + width + height + depth + + + × + 2 + level + + + + + . + + + See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. + + + Notes + + gluBuild3DMipmapLevels is only available if the GLU version is 1.3 or greater. + + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if level > base, base < 0, + max < base, or max is > the highest mipmap level for data. + + + GLU_INVALID_VALUE is returned if width, height, or depth is < 1. + + + GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmapLevels, + gluBuild1DMipmaps, + gluBuild2DMipmapLevels, + gluBuild2DMipmaps, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glGetTexImage, + glGetTexLevelParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluBuild3DMipmaps.xml b/upstream-man-pages/man2/gluBuild3DMipmaps.xml new file mode 100644 index 0000000..c454d4e --- /dev/null +++ b/upstream-man-pages/man2/gluBuild3DMipmaps.xml @@ -0,0 +1,433 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluBuild3DMipmaps + 3G + + + gluBuild3DMipmaps + builds a three-dimensional mipmap + + C Specification + + + GLint gluBuild3DMipmaps + GLenum target + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void * data + + + + + Parameters + + + target + + + Specifies the target texture. Must be GLU_TEXTURE_3D. + + + + + internalFormat + + + Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. + + + + + width + height + depth + + + Specifies in pixels the width, height and depth respectively, in pixels + of the texture image. + + + + + format + + + Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. + + + + + type + + + Specifies the data type for data. + Must be one of: + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + gluBuild3DMipmaps builds a series of prefiltered three-dimensional texture maps of + decreasing resolutions called a mipmap. This is used for the antialiasing of + texture-mapped primitives. + + + A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). + + + Initially, the width, height and depth of data are checked to + see if they are a power of 2. If not, a copy of data is made and + scaled up or down to the nearest power of 2. (If width, height, or + depth is exactly between powers of 2, then the copy of data will + scale upwards.) This copy will be used for subsequent mipmapping + operations described below. For example, if width is 57, height is + 23, and depth is 24, then a copy of data will scale up to 64 in + width, down to 16 in height, and up to 32 in depth before mipmapping + takes place. + + + Then, proxy textures (see glTexImage3D) are used to determine if + the implementation can fit the requested texture. If not, all three dimensions + are continually halved until it fits. + + + Next, a series of mipmap levels is built by decimating a copy of data + in half along all three dimensions until size + + + + 1 + × + 1 + × + 1 + + + is + reached. At each level, each texel in the halved mipmap level is an + average of the corresponding eight texels in the larger mipmap + level. (If exactly one of the dimensions is 1, four texels are averaged. + If exactly two of the dimensions are 1, two texels are averaged.) + + + glTexImage3D is called to load each of these mipmap levels. + Level 0 is a copy of data. The highest level is + + + + + log + 2 + + + + + + max + + + width + height + depth + + + + + . + For example, if width is 64, height is + 16, and depth is 32, and the implementation can store a texture of this + size, the following mipmap levels are built: + + + + 64 + × + 16 + × + 32 + + , + + + + 32 + × + 8 + × + 16 + + , + + + + 16 + × + 4 + × + 8 + + , + + + + 8 + × + 2 + × + 4 + + , + + + + 4 + × + 1 + × + 2 + + , + + + + 2 + × + 1 + × + 1 + + , + and + + + + 1 + × + 1 + × + 1 + + . + These correspond + to levels 0 through 6, respectively. + + + See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. + + + Notes + + Note that there is no direct way of querying the maximum level. This can + be derived indirectly via glGetTexLevelParameter. First, query + the width, height, and depth actually used at level 0. (The width, + height, and depth may not be equal to width, height, and depth + respectively since proxy textures might have scaled them to fit the + implementation.) Then the maximum level can be derived from the formula + + + + + log + 2 + + + + + + max + + + width + height + depth + + + + + . + + + gluBuild3DMipmaps is only available if the GLU version is 1.3 or greater. + + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if width, height, or depth is < 1. + + + GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmapLevels, + gluBuild1DMipmaps, + gluBuild2DMipmapLevels, + gluBuild3DMipmapLevels, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glGetTexImage, + glGetTexLevelParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluCheckExtension.xml b/upstream-man-pages/man2/gluCheckExtension.xml new file mode 100644 index 0000000..72ef61d --- /dev/null +++ b/upstream-man-pages/man2/gluCheckExtension.xml @@ -0,0 +1,93 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluCheckExtension + 3G + + + gluCheckExtension + determines if an extension name is supported + + C Specification + + + GLboolean gluCheckExtension + const GLubyte * extName + const GLubyte * extString + + + + Parameters + + + extName + + + Specifies an extension name. + + + + + extString + + + Specifies a space-separated list of extension names supported. + + + + + + Description + + gluCheckExtension returns GLU_TRUE if extName is supported otherwise + GLU_FALSE is returned. + + + This is used to check for the presence for OpenGL, GLU, or GLX extension names + by passing the extension strings returned by glGetString, + gluGetString, glXGetClientString, + glXQueryExtensionsString, or glXQueryServerString, + respectively, as extString. + + + Notes + + Cases where one extension name is a substring of another are + correctly handled. + + + There may or may not be leading or trailing blanks in extString. + + + Extension names should not contain embedded spaces. + + + All strings are null-terminated. + + + See Also + + gluGetString, + glGetString, + glXGetClientString, + glXQueryExtensionsString, + glXQueryServerString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluCylinder.xml b/upstream-man-pages/man2/gluCylinder.xml new file mode 100644 index 0000000..abdd1b7 --- /dev/null +++ b/upstream-man-pages/man2/gluCylinder.xml @@ -0,0 +1,136 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluCylinder + 3G + + + gluCylinder + draw a cylinder + + C Specification + + + void gluCylinder + GLUquadric* quad + GLdouble base + GLdouble top + GLdouble height + GLint slices + GLint stacks + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + base + + + Specifies the radius of the cylinder at z = 0. + + + + + top + + + Specifies the radius of the cylinder at z = height. + + + + + height + + + Specifies the height of the cylinder. + + + + + slices + + + Specifies the number of subdivisions around the z axis. + + + + + stacks + + + Specifies the number of subdivisions along the z axis. + + + + + + Description + + gluCylinder draws a cylinder oriented along the z axis. The base of the cylinder + is placed at z = 0 and the top at + + + + z + = + height + + . + Like a sphere, + a cylinder is subdivided around the z axis into slices and along the + z axis into stacks. + + + Note that if top is set to 0.0, this routine generates a cone. + + + If the orientation is set to GLU_OUTSIDE + (with gluQuadricOrientation), then any generated normals + point away from the z axis. Otherwise, they point toward the + z axis. + + + If texturing is turned on (with gluQuadricTexture), then texture + coordinates are generated so that t ranges linearly from 0.0 + at z = 0 to 1.0 at z = height, and s + ranges from 0.0 at the +y axis, to 0.25 at the +x axis, + to 0.5 at the -y axis, to 0.75 at the \-x axis, + and back to 1.0 at the +y axis. + + + See Also + + gluDisk, + gluNewQuadric, + gluPartialDisk, + gluQuadricTexture, + gluSphere + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluDeleteNurbsRenderer.xml b/upstream-man-pages/man2/gluDeleteNurbsRenderer.xml new file mode 100644 index 0000000..5ad63d1 --- /dev/null +++ b/upstream-man-pages/man2/gluDeleteNurbsRenderer.xml @@ -0,0 +1,61 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluDeleteNurbsRenderer + 3G + + + gluDeleteNurbsRenderer + destroy a NURBS object + + C Specification + + + void gluDeleteNurbsRenderer + GLUnurbs* nurb + + + + + Parameters + + + nurb + + + Specifies the NURBS object to be destroyed. + + + + + + Description + + gluDeleteNurbsRenderer destroys the NURBS object (which was created with + gluNewNurbsRenderer) and frees any memory it uses. + Once + gluDeleteNurbsRenderer has been called, nurb cannot be used again. + + + See Also + + gluNewNurbsRenderer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluDeleteQuadric.xml b/upstream-man-pages/man2/gluDeleteQuadric.xml new file mode 100644 index 0000000..cbf03ab --- /dev/null +++ b/upstream-man-pages/man2/gluDeleteQuadric.xml @@ -0,0 +1,60 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluDeleteQuadric + 3G + + + gluDeleteQuadric + destroy a quadrics object + + C Specification + + + void gluDeleteQuadric + GLUquadric* quad + + + + + Parameters + + + quad + + + Specifies the quadrics object to be destroyed. + + + + + + Description + + gluDeleteQuadric destroys the quadrics object (created with gluNewQuadric) + and frees any memory it uses. + Once gluDeleteQuadric has been called, quad cannot be used again. + + + See Also + + gluNewQuadric + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluDeleteTess.xml b/upstream-man-pages/man2/gluDeleteTess.xml new file mode 100644 index 0000000..592df0d --- /dev/null +++ b/upstream-man-pages/man2/gluDeleteTess.xml @@ -0,0 +1,61 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluDeleteTess + 3G + + + gluDeleteTess + destroy a tessellation object + + C Specification + + + void gluDeleteTess + GLUtesselator* tess + + + + + Parameters + + + tess + + + Specifies the tessellation object to destroy. + + + + + + Description + + gluDeleteTess destroys the indicated tessellation object (which was created + with gluNewTess) and frees any memory that it used. + + + See Also + + gluBeginPolygon, + gluNewTess, + gluTessCallback + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluDisk.xml b/upstream-man-pages/man2/gluDisk.xml new file mode 100644 index 0000000..85ab59c --- /dev/null +++ b/upstream-man-pages/man2/gluDisk.xml @@ -0,0 +1,130 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluDisk + 3G + + + gluDisk + draw a disk + + C Specification + + + void gluDisk + GLUquadric* quad + GLdouble inner + GLdouble outer + GLint slices + GLint loops + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + inner + + + Specifies the inner radius of the disk (may be 0). + + + + + outer + + + Specifies the outer radius of the disk. + + + + + slices + + + Specifies the number of subdivisions around the z axis. + + + + + loops + + + Specifies the number of concentric rings about the origin into which + the disk is subdivided. + + + + + + Description + + gluDisk renders a disk on the z = 0 plane. The disk has a radius of + outer and contains a concentric circular hole with a radius + of inner. If inner is 0, then no hole is generated. The disk is + subdivided around the z axis into slices (like pizza slices) and also + about the z axis into rings + (as specified by slices and loops, respectively). + + + With respect to orientation, the +z side of the disk is considered to be + ``outside'' (see gluQuadricOrientation). + This means that if the + orientation is set to GLU_OUTSIDE, then any normals generated + point along the +z axis. Otherwise, they point along the \-z + axis. + + + If texturing has been turned on (with gluQuadricTexture), + texture coordinates are generated + linearly such that where + + + + r + = + outer + + , + the value at (r, 0, 0) is + (1, 0.5), at (0, r, 0) it is (0.5, 1), at (\-r, 0, 0) + it is (0, 0.5), and + at (0, \-r, 0) it is (0.5, 0). + + + See Also + + gluCylinder, + gluNewQuadric, + gluPartialDisk, + gluQuadricOrientation, + gluQuadricTexture, + gluSphere + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluErrorString.xml b/upstream-man-pages/man2/gluErrorString.xml new file mode 100644 index 0000000..e75254b --- /dev/null +++ b/upstream-man-pages/man2/gluErrorString.xml @@ -0,0 +1,78 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluErrorString + 3G + + + gluErrorString + produce an error string from a GL or GLU error code + + C Specification + + + const GLubyte * gluErrorString + GLenum error + + + + + Parameters + + + error + + + Specifies a GL or GLU error code. + + + + + + Description + + gluErrorString produces an error string from a GL or GLU error code. The string + is in ISO Latin 1 format. For example, + gluErrorString(GLU_OUT_OF_MEMORY) returns the string + out of memory. + + + The standard GLU error codes are GLU_INVALID_ENUM, + GLU_INVALID_VALUE, + and GLU_OUT_OF_MEMORY. + Certain other GLU functions can return specialized error codes + through callbacks. + See the glGetError reference page for the list of + GL error codes. + + + Errors + + NULL is returned if error is not a valid GL or GLU error code. + + + See Also + + gluNurbsCallback, + gluQuadricCallback, + gluTessCallback, + glGetError + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluGetNurbsProperty.xml b/upstream-man-pages/man2/gluGetNurbsProperty.xml new file mode 100644 index 0000000..649f93f --- /dev/null +++ b/upstream-man-pages/man2/gluGetNurbsProperty.xml @@ -0,0 +1,91 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluGetNurbsProperty + 3G + + + gluGetNurbsProperty + get a NURBS property + + C Specification + + + void gluGetNurbsProperty + GLUnurbs* nurb + GLenum property + GLfloat* data + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + property + + + Specifies the property whose value is to be fetched. Valid values are + GLU_CULLING, + GLU_SAMPLING_TOLERANCE, + GLU_DISPLAY_MODE, + GLU_AUTO_LOAD_MATRIX, + GLU_PARAMETRIC_TOLERANCE, + GLU_SAMPLING_METHOD, + GLU_U_STEP, + GLU_V_STEP, and + GLU_NURBS_MODE. + + + + + data + + + Specifies a pointer to the location into which the value of the + named property is written. + + + + + + Description + + gluGetNurbsProperty retrieves properties stored in a NURBS object. These + properties affect the way that NURBS curves and surfaces + are rendered. See the + gluNurbsProperty reference page for information about what the + properties are and what they do. + + + See Also + + gluNewNurbsRenderer, + gluNurbsProperty + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluGetString.xml b/upstream-man-pages/man2/gluGetString.xml new file mode 100644 index 0000000..470e6e6 --- /dev/null +++ b/upstream-man-pages/man2/gluGetString.xml @@ -0,0 +1,107 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluGetString + 3G + + + gluGetString + return a string describing the GLU version or GLU extensions + + C Specification + + + const GLubyte * gluGetString + GLenum name + + + + Parameters + + + name + + + Specifies a symbolic constant, one of + GLU_VERSION, or GLU_EXTENSIONS. + + + + + + Description + + gluGetString returns a pointer to a static string describing the + GLU version or the GLU extensions that are supported. + + + The version number is one of the following + forms: + + + major_number.minor_number + major_number.minor_number.release_number. + + + The version string is of the following form: + + + version number<space>vendor-specific information + + + Vendor-specific information is optional. + Its format and contents depend on the implementation. + + + The standard GLU contains a basic set of features and capabilities. + If a company or group of companies wish to support other features, + these may be included as extensions to the GLU. + If name is + GLU_EXTENSIONS, then gluGetString + returns a space-separated list of names of supported GLU extensions. + (Extension names never contain spaces.) + + + All strings are null-terminated. + + + Notes + + gluGetString only returns information about GLU extensions. Call glGetString + to get a list of GL extensions. + + + gluGetString is an initialization routine. Calling it after + a glNewList results in undefined behavior. + + + Errors + + NULL is returned if name is not + GLU_VERSION or GLU_EXTENSIONS. + + + + + See Also + + glGetString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluGetTessProperty.xml b/upstream-man-pages/man2/gluGetTessProperty.xml new file mode 100644 index 0000000..218f384 --- /dev/null +++ b/upstream-man-pages/man2/gluGetTessProperty.xml @@ -0,0 +1,85 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluGetTessProperty + 3G + + + gluGetTessProperty + get a tessellation object property + + C Specification + + + void gluGetTessProperty + GLUtesselator* tess + GLenum which + GLdouble* data + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + which + + + Specifies the property whose value is to be fetched. Valid values are + GLU_TESS_WINDING_RULE, + GLU_TESS_BOUNDARY_ONLY, and + GLU_TESS_TOLERANCE. + + + + + data + + + Specifies a pointer to the location into which the value of the + named property is written. + + + + + + Description + + gluGetTessProperty retrieves properties stored in a tessellation object. These + properties affect the way that tessellation objects + are interpreted and rendered. See the + gluTessProperty reference page for information about the + properties and what they do. + + + See Also + + gluNewTess, + gluTessProperty + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluLoadSamplingMatrices.xml b/upstream-man-pages/man2/gluLoadSamplingMatrices.xml new file mode 100644 index 0000000..9cf9606 --- /dev/null +++ b/upstream-man-pages/man2/gluLoadSamplingMatrices.xml @@ -0,0 +1,102 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluLoadSamplingMatrices + 3G + + + gluLoadSamplingMatrices + load NURBS sampling and culling matrices + + C Specification + + + void gluLoadSamplingMatrices + GLUnurbs* nurb + const GLfloat * model + const GLfloat * perspective + const GLint * view + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + model + + + Specifies a modelview matrix (as from a glGetFloatv call). + + + + + perspective + + + Specifies a projection matrix (as from a glGetFloatv call). + + + + + view + + + Specifies a viewport (as from a glGetIntegerv call). + + + + + + Description + + gluLoadSamplingMatrices uses model, perspective, and view to recompute the sampling and culling + matrices stored in nurb. + The sampling matrix determines how finely a NURBS curve or surface + must be tessellated to satisfy the sampling tolerance (as determined by the + GLU_SAMPLING_TOLERANCE property). + The culling matrix is used in deciding if a NURBS curve or surface + should be culled before + rendering (when the GLU_CULLING property is turned on). + + + gluLoadSamplingMatrices is necessary only if the GLU_AUTO_LOAD_MATRIX property is turned + off (see gluNurbsProperty). + Although it can be convenient to leave the GLU_AUTO_LOAD_MATRIX + property turned on, there can be a performance penalty for doing so. + (A round trip to the GL server is needed to fetch the current values + of the modelview matrix, projection matrix, and viewport.) + + + See Also + + gluGetNurbsProperty, + gluNewNurbsRenderer, + gluNurbsProperty + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluLookAt.xml b/upstream-man-pages/man2/gluLookAt.xml new file mode 100644 index 0000000..6b18f1c --- /dev/null +++ b/upstream-man-pages/man2/gluLookAt.xml @@ -0,0 +1,369 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluLookAt + 3G + + + gluLookAt + define a viewing transformation + + C Specification + + + void gluLookAt + GLdouble eyeX + GLdouble eyeY + GLdouble eyeZ + GLdouble centerX + GLdouble centerY + GLdouble centerZ + GLdouble upX + GLdouble upY + GLdouble upZ + + + + + Parameters + + + eyeX + eyeY + eyeZ + + + Specifies the position of the eye point. + + + + + centerX + centerY + centerZ + + + Specifies the position of the reference point. + + + + + upX + upY + upZ + + + Specifies the direction of the up vector. + + + + + + Description + + gluLookAt creates a viewing matrix derived from an eye point, a reference + point indicating the center of the scene, and an UP vector. + + + The matrix + maps the reference point to the negative z axis and the + eye point to the origin. + When a typical projection matrix is used, + the center of the scene therefore maps to the center of the viewport. + Similarly, the direction described by the UP + vector projected onto the viewing plane is mapped to the positive y + axis so that it points upward in the viewport. + The UP vector must not be parallel to the line of sight from the + eye point to the reference point. + + + Let + + + + + + F + = + + + + + + centerX + - + eyeX + + + + + + + centerY + - + eyeY + + + + + + + centerZ + - + eyeZ + + + + + + + + + + + + Let UP be the vector + + + + upX + upY + upZ + + . + + + Then normalize as follows: + + + + f + = + + F + + + F + + + + + + + + + + + UP + + + = + + UP + + + UP + + + + + + + + + + Finally, let + + + + s + = + + f + × + UP + + + + + , + and + + + + u + = + + s + × + f + + + . + + + + + M is then constructed as follows: + + + + M + = + + + + + + s + + + 0 + + + + + + s + + + 1 + + + + + + s + + + 2 + + + + + 0 + + + + + + u + + + 0 + + + + + + u + + + 1 + + + + + + u + + + 2 + + + + + 0 + + + + + + - + + f + + + 0 + + + + + + + - + + f + + + 1 + + + + + + + - + + f + + + 2 + + + + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + + + + + and gluLookAt is equivalent to + +glMultMatrixf(M); +glTranslated(-eyex, -eyey, -eyez); + + + + See Also + + gluPerspective, + glFrustum + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNewNurbsRenderer.xml b/upstream-man-pages/man2/gluNewNurbsRenderer.xml new file mode 100644 index 0000000..c3bb0cd --- /dev/null +++ b/upstream-man-pages/man2/gluNewNurbsRenderer.xml @@ -0,0 +1,54 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNewNurbsRenderer + 3G + + + gluNewNurbsRenderer + create a NURBS object + + C Specification + + + GLUnurbs* gluNewNurbsRenderer + + + + + Description + + gluNewNurbsRenderer creates and returns a pointer to + a new NURBS object. + This object must be referred to when calling + NURBS rendering and control functions. A return value of + 0 means that there is not enough memory to allocate the object. + + + See Also + + gluBeginCurve, + gluBeginSurface, + gluBeginTrim, + gluDeleteNurbsRenderer, + gluNurbsCallback, + gluNurbsProperty + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNewQuadric.xml b/upstream-man-pages/man2/gluNewQuadric.xml new file mode 100644 index 0000000..2a1b23e --- /dev/null +++ b/upstream-man-pages/man2/gluNewQuadric.xml @@ -0,0 +1,57 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNewQuadric + 3G + + + gluNewQuadric + create a quadrics object + + C Specification + + + GLUquadric* gluNewQuadric + + + + + Description + + gluNewQuadric creates and returns a pointer to + a new quadrics object. This object must be referred to when + calling quadrics rendering and control functions. A return value of + 0 means that there is not enough memory to allocate the object. + + + See Also + + gluCylinder, + gluDeleteQuadric, + gluDisk, + gluPartialDisk, + gluQuadricCallback, + gluQuadricDrawStyle, + gluQuadricNormals, + gluQuadricOrientation, + gluQuadricTexture, + gluSphere + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNewTess.xml b/upstream-man-pages/man2/gluNewTess.xml new file mode 100644 index 0000000..e2f4ed2 --- /dev/null +++ b/upstream-man-pages/man2/gluNewTess.xml @@ -0,0 +1,50 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNewTess + 3G + + + gluNewTess + create a tessellation object + + C Specification + + + GLUtesselator* gluNewTess + + + + + Description + + gluNewTess creates and returns a pointer to a new tessellation object. + This object must be referred to when calling + tessellation functions. A return value of + 0 means that there is not enough memory to allocate the object. + + + See Also + + gluTessBeginPolygon, + gluDeleteTess, + gluTessCallback + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNextContour.xml b/upstream-man-pages/man2/gluNextContour.xml new file mode 100644 index 0000000..1c30667 --- /dev/null +++ b/upstream-man-pages/man2/gluNextContour.xml @@ -0,0 +1,167 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNextContour + 3G + + + gluNextContour + mark the beginning of another contour + + C Specification + + + void gluNextContour + GLUtesselator* tess + GLenum type + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + type + + + Specifies the type of the contour being defined. Valid values are + GLU_EXTERIOR, + GLU_INTERIOR, + GLU_UNKNOWN, + GLU_CCW, and + GLU_CW. + + + + + + Description + + gluNextContour is used in describing polygons with multiple contours. After the first + contour has been described through a series of gluTessVertex calls, + a gluNextContour call indicates that the previous contour is complete and that the + next contour is about to begin. + Another series of gluTessVertex calls is then used to describe the new + contour. This process can be repeated until all contours have been described. + + + type defines what type of contour follows. + The legal contour types are as follows: + + + + GLU_EXTERIOR + + + An exterior contour defines an exterior boundary of the polygon. + + + + + GLU_INTERIOR + + + An interior contour defines an interior boundary of the polygon (such as + a hole). + + + + + GLU_UNKNOWN + + + An unknown contour is analyzed by the library to determine if it is interior + or exterior. + + + + + GLU_CCW, + + + + + GLU_CW + + + The first GLU_CCW or GLU_CW contour defined is considered to + be exterior. All other contours are considered to be exterior if they + are oriented in the same direction (clockwise or counterclockwise) as + the first contour, and interior if they are not. + + + + + + If one contour is of type GLU_CCW or GLU_CW, then all + contours must be of the same type (if they are not, then all GLU_CCW + and GLU_CW contours will be changed to GLU_UNKNOWN). + + + Note that there is no real difference between the GLU_CCW and + GLU_CW contour types. + + + Before the first contour is described, gluNextContour can be called to + define the type of the first contour. + If gluNextContour is not called before the first contour, then the first contour is + marked GLU_EXTERIOR. + + + This command is obsolete and is provided for backward compatibility + only. Calls to gluNextContour are mapped to gluTessEndContour + followed by + gluTessBeginContour. + + + Example + + A quadrilateral with a triangular hole in it can be described as follows: + +gluBeginPolygon(tobj); + gluTessVertex(tobj, v1, v1); + gluTessVertex(tobj, v2, v2); + gluTessVertex(tobj, v3, v3); + gluTessVertex(tobj, v4, v4); +gluNextContour(tobj, GLU_INTERIOR); + gluTessVertex(tobj, v5, v5); + gluTessVertex(tobj, v6, v6); + gluTessVertex(tobj, v7, v7); +gluEndPolygon(tobj); + + + + See Also + + gluBeginPolygon, + gluNewTess, + gluTessBeginContour, + gluTessCallback, + gluTessVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNurbsCallback.xml b/upstream-man-pages/man2/gluNurbsCallback.xml new file mode 100644 index 0000000..fcfef28 --- /dev/null +++ b/upstream-man-pages/man2/gluNurbsCallback.xml @@ -0,0 +1,338 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNurbsCallback + 3G + + + gluNurbsCallback + define a callback for a NURBS object + + C Specification + + + void gluNurbsCallback + GLUnurbs* nurb + GLenum which + _GLUfuncptr CallBackFunc + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + which + + + Specifies the callback being defined. + Valid values are GLU_NURBS_BEGIN, GLU_NURBS_VERTEX, GLU_NURBS_NORMAL, GLU_NURBS_COLOR, GLU_NURBS_TEXTURE_COORD, GLU_NURBS_END, GLU_NURBS_BEGIN_DATA, GLU_NURBS_VERTEX_DATA, GLU_NURBS_NORMAL_DATA, GLU_NURBS_COLOR_DATA, GLU_NURBS_TEXTURE_COORD_DATA, GLU_NURBS_END_DATA, and GLU_NURBS_ERROR. + + + + + CallBackFunc + + + Specifies the function that the callback calls. + + + + + + Description + + gluNurbsCallback is used to define a callback to be used by a NURBS + object. + If the specified callback is already defined, then it is replaced. If + CallBackFunc is NULL, then this callback will not get + invoked and the related data, if any, will be lost. + + + Except the error callback, these callbacks are used by NURBS tessellator (when GLU_NURBS_MODE is set to be GLU_NURBS_TESSELLATOR) to return back the OpenGL + polygon primitives resulting from the tessellation. Note that there are two + versions of each callback: one with a user data pointer and one without. If both versions for a particular callback are specified then the callback with + the user data pointer will be used. Note that ``userData'' is a copy of the pointer that was specified at the last call to gluNurbsCallbackData. + + + The error callback function is effective no matter which value that + GLU_NURBS_MODE is set to. + All other callback functions are effective only when GLU_NURBS_MODE + is set to GLU_NURBS_TESSELLATOR. + + + The legal callbacks are as follows: + + + + GLU_NURBS_BEGIN + + + + + The begin callback indicates the start of a primitive. The function + takes a single argument of type GLenum, which can be one of + GLU_LINES, GLU_LINE_STRIP, GLU_TRIANGLE_FAN, GLU_TRIANGLE_STRIP, GLU_TRIANGLES, or GLU_QUAD_STRIP. The + default begin callback function is NULL. The function prototype + for this callback looks like: + +void begin( GLenum type ); + + + + + + GLU_NURBS_BEGIN_DATA + + + + + The same as the GLU_NURBS_BEGIN callback except that it takes an + additional pointer argument. This pointer is a copy of the pointer that + was specified at the last call to gluNurbsCallbackData. The + default callback function is NULL. The function prototype for this + callback function looks like: + +void beginData(GLenum type, void *userData); + + + + + + GLU_NURBS_VERTEX + + + + + The vertex callback indicates a vertex of the primitive. The + coordinates of the vertex are stored in the parameter ``vertex''. All + the generated vertices have dimension 3; that is, homogeneous + coordinates have been transformed into affine coordinates. The default + vertex callback function is NULL. The function prototype for this + callback function looks like: + +void vertex( GLfloat *vertex ); + + + + + + GLU_NURBS_VERTEX_DATA + + + + + This is the same as the GLU_NURBS_VERTEX callback, except that + it takes an additional pointer argument. This pointer is a copy of the + pointer that was specified at the last call to + gluNurbsCallbackData. The default callback function is NULL. The + function prototype for this callback function looks like: + +void vertexData( GLfloat *vertex, void *userData ); + + + + + + GLU_NURBS_NORMAL + + + + + The normal callback is invoked as the vertex normal is generated. + The components of the normal are stored in the parameter ``normal.'' + In the case of a NURBS curve, the callback function is effective only when + the user provides a normal map (GLU_MAP1_NORMAL). + In the case of a NURBS surface, if a normal map (GLU_MAP2_NORMAL) + is provided, then the generated normal is computed from the normal map. + If a normal map is not provided, then a surface normal is computed in + a manner similar to that described for evaluators when GLU_AUTO_NORMAL + is enabled. + The default normal callback function is NULL. The function + prototype for this callback function looks like: + +void normal( GLfloat *normal ); + + + + + + GLU_NURBS_NORMAL_DATA + + + + + The same as the GLU_NURBS_NORMAL callback except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: + +void normalData( GLfloat *normal, void *userData ); + + + + + + GLU_NURBS_COLOR + + + + + The color callback is invoked as the color of a vertex is generated. + The components of the color are stored in the parameter ``color.'' + This callback is effective only when the user provides a color map + (GLU_MAP1_COLOR_4 or GLU_MAP2_COLOR_4). ``color'' contains four + components: R, G, B, A. The default color callback function is NULL. + The prototype for this callback function looks like: + +void color( GLfloat *color ); + + + + + + GLU_NURBS_COLOR_DATA + + + + + The same as the GLU_NURBS_COLOR callback except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: + +void colorData( GLfloat *color, void *userData ); + + + + + + GLU_NURBS_TEXTURE_COORD + + + + + The texture callback is invoked as the texture coordinates + of a vertex are generated. These coordinates are stored in the parameter + ``texCoord.'' The number of texture coordinates can be 1, 2, 3, or 4 depending + on which type of texture map is specified + (GLU_MAP1_TEXTURE_COORD_1, + GLU_MAP1_TEXTURE_COORD_2, + GLU_MAP1_TEXTURE_COORD_3, + GLU_MAP1_TEXTURE_COORD_4, + GLU_MAP2_TEXTURE_COORD_1, + GLU_MAP2_TEXTURE_COORD_2, + GLU_MAP2_TEXTURE_COORD_3, + GLU_MAP2_TEXTURE_COORD_4). + If no texture map is specified, this callback function will not be called. + The default texture callback function is NULL. The function prototype + for this callback function looks like: + +void texCoord( GLfloat *texCoord ); + + + + + + GLU_NURBS_TEXTURE_COORD_DATA + + + + + This is the same as the GLU_NURBS_TEXTURE_COORD callback, except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: + +void texCoordData( GLfloat *texCoord, void *userData ); + + + + + + GLU_NURBS_END + + + + + The end callback is invoked at the end of a primitive. The default end callback function is NULL. The function prototype for this callback function looks like: + +void end( void ); + + + + + + GLU_NURBS_END_DATA + + + + + This is the same as the GLU_NURBS_END callback, except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: + +void endData( void *userData ); + + + + + + GLU_NURBS_ERROR + + + + + The error function is called when an error is encountered. + Its single argument + is of type GLenum, and it indicates the specific error that occurred. + There are 37 errors unique to NURBS, named + GLU_NURBS_ERROR1 through GLU_NURBS_ERROR37. + Character strings describing these errors can be retrieved with + gluErrorString. + + + + + + Notes + + gluNurbsCallback is available only if the GLU version is 1.2 or greater. + + + GLU version 1.2 supports only the GLU_ERROR parameter for + which. The GLU_ERROR value is deprecated in GLU version 1.3 in + favor of GLU_NURBS_ERROR. All other accepted values for CallBackFunc + are available only if the GLU version is 1.3 or greater. + + + See Also + + gluErrorString, + gluNewNurbsRenderer, + gluNurbsCallbackData, + gluNurbsProperty + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNurbsCallbackData.xml b/upstream-man-pages/man2/gluNurbsCallbackData.xml new file mode 100644 index 0000000..991c57a --- /dev/null +++ b/upstream-man-pages/man2/gluNurbsCallbackData.xml @@ -0,0 +1,75 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNurbsCallbackData + 3G + + + gluNurbsCallbackData + set a user data pointer + + C Specification + + + void gluNurbsCallbackData + GLUnurbs* nurb + GLvoid* userData + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + userData + + + Specifies a pointer to the user's data. + + + + + + Description + + gluNurbsCallbackData is used to pass a pointer to the application's data to NURBS + tessellator. A copy of this pointer will be passed by the tessellator + in the NURBS callback functions (set by gluNurbsCallback). + + + Notes + + gluNurbsCallbackData is available only if the GLU version is 1.3 or greater. + + + See Also + + gluNewNurbsRenderer, + gluNurbsCallback + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNurbsCallbackDataEXT.xml b/upstream-man-pages/man2/gluNurbsCallbackDataEXT.xml new file mode 100644 index 0000000..5f7a7a9 --- /dev/null +++ b/upstream-man-pages/man2/gluNurbsCallbackDataEXT.xml @@ -0,0 +1,69 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNurbsCallbackDataEXT + 3G + + + gluNurbsCallbackDataEXT + set a user data pointer + + C Specification + + + void gluNurbsCallbackDataEXT + GLUnurbs* nurb + GLvoid* userData + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + userData + + + Specifies a pointer to the user's data. + + + + + + Description + + gluNurbsCallbackDataEXT is used to pass a pointer to the application's data to NURBS + tessellator. A copy of this pointer will be passed by the tessellator + in the NURBS callback functions (set by gluNurbsCallback). + + + See Also + + gluNurbsCallback + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNurbsCurve.xml b/upstream-man-pages/man2/gluNurbsCurve.xml new file mode 100644 index 0000000..e8c846a --- /dev/null +++ b/upstream-man-pages/man2/gluNurbsCurve.xml @@ -0,0 +1,163 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNurbsCurve + 3G + + + gluNurbsCurve + define the shape of a NURBS curve + + C Specification + + + void gluNurbsCurve + GLUnurbs* nurb + GLint knotCount + GLfloat * knots + GLint stride + GLfloat * control + GLint order + GLenum type + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + knotCount + + + Specifies the number of knots in knots. + knotCount equals the number of control points plus the order. + + + + + knots + + + Specifies an array of knotCount nondecreasing knot values. + + + + + stride + + + Specifies the offset (as a number of single-precision floating-point values) + between successive curve control points. + + + + + control + + + Specifies a pointer to an array of control points. The coordinates must + agree with type, specified below. + + + + + order + + + Specifies the order of the NURBS curve. order equals degree + 1, hence + a cubic curve has an order of 4. + + + + + type + + + Specifies the type of the curve. If this curve is defined within a + gluBeginCurve/gluEndCurve pair, then + the type can be any of the valid + one-dimensional evaluator types (such as GLU_MAP1_VERTEX_3 or + GLU_MAP1_COLOR_4). Between a gluBeginTrim/gluEndTrim pair, + the only valid types are GLU_MAP1_TRIM_2 and GLU_MAP1_TRIM_3. + + + + + + Description + + Use gluNurbsCurve to describe a NURBS curve. + + + When gluNurbsCurve appears between a gluBeginCurve/gluEndCurve pair, it is + used to describe a curve to be rendered. + Positional, texture, and color coordinates are associated + by presenting each as a separate gluNurbsCurve between a + gluBeginCurve/gluEndCurve pair. No more than + one call to gluNurbsCurve for each of color, position, and texture + data can be made within a single gluBeginCurve/gluEndCurve + pair. Exactly one call must be made to describe the position of the + curve (a type of GLU_MAP1_VERTEX_3 or GLU_MAP1_VERTEX_4). + + + When gluNurbsCurve appears between a gluBeginTrim/gluEndTrim pair, it is + used to describe a trimming curve on a NURBS surface. If type is + GLU_MAP1_TRIM_2, then it describes a curve in two-dimensional (u + and v) + parameter space. If it is GLU_MAP1_TRIM_3, then it describes a + curve in two-dimensional homogeneous (u, v, and w) + parameter space. + See the gluBeginTrim reference page for more discussion about trimming + curves. + + + Example + + The following commands render a textured NURBS curve with normals: + +gluBeginCurve(nobj); + gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2); + gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL); + gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4); +gluEndCurve(nobj); + + + + Notes + + To define trim curves that stitch well, use gluPwlCurve. + + + See Also + + gluBeginCurve, + gluBeginTrim, + gluNewNurbsRenderer, + gluPwlCurve + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNurbsProperty.xml b/upstream-man-pages/man2/gluNurbsProperty.xml new file mode 100644 index 0000000..5ea35cf --- /dev/null +++ b/upstream-man-pages/man2/gluNurbsProperty.xml @@ -0,0 +1,300 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNurbsProperty + 3G + + + gluNurbsProperty + set a NURBS property + + C Specification + + + void gluNurbsProperty + GLUnurbs* nurb + GLenum property + GLfloat value + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + property + + + Specifies the property to be set. Valid values are + GLU_SAMPLING_TOLERANCE, + GLU_DISPLAY_MODE, + GLU_CULLING, + GLU_AUTO_LOAD_MATRIX, + GLU_PARAMETRIC_TOLERANCE, + GLU_SAMPLING_METHOD, + GLU_U_STEP, + GLU_V_STEP, or + GLU_NURBS_MODE. + + + + + value + + + Specifies the value of the indicated property. + It may be a numeric value or one of + GLU_OUTLINE_POLYGON, + GLU_FILL, + GLU_OUTLINE_PATCH, + GLU_TRUE, + GLU_FALSE, + GLU_PATH_LENGTH, + GLU_PARAMETRIC_ERROR, + GLU_DOMAIN_DISTANCE, + GLU_NURBS_RENDERER, or + GLU_NURBS_TESSELLATOR. + + + + + + Description + + gluNurbsProperty is used to control properties stored in a NURBS object. These + properties affect the way that a NURBS curve is rendered. The accepted + values for property are as follows: + + + + GLU_NURBS_MODE + + + value should be set to be either GLU_NURBS_RENDERER or + GLU_NURBS_TESSELLATOR. When set to GLU_NURBS_RENDERER, NURBS objects + are tessellated into OpenGL primitives and sent to the pipeline for + rendering. When set to GLU_NURBS_TESSELLATOR, NURBS objects are + tessellated into OpenGL primitives but the vertices, normals, colors, and/or textures are + retrieved back through a callback interface (see gluNurbsCallback). This allows the user to cache the + tessellated results for further processing. + The initial value is GLU_NURBS_RENDERER. + + + + + GLU_SAMPLING_METHOD + + + Specifies how a NURBS surface should be + tessellated. + value may be one of GLU_PATH_LENGTH, + GLU_PARAMETRIC_ERROR, GLU_DOMAIN_DISTANCE, + GLU_OBJECT_PATH_LENGTH, or + GLU_OBJECT_PARAMETRIC_ERROR. + When set to GLU_PATH_LENGTH, the surface is rendered so that + the maximum length, in + pixels, of the edges of the tessellation polygons is no greater than + what is specified by GLU_SAMPLING_TOLERANCE. + + + GLU_PARAMETRIC_ERROR specifies that the surface is rendered in such a + way that the value specified by GLU_PARAMETRIC_TOLERANCE describes the + maximum distance, in pixels, between the tessellation polygons and the + surfaces they approximate. + + + GLU_DOMAIN_DISTANCE allows users to specify, in parametric coordinates, + how many sample points per unit length are taken in u, v + direction. + + + GLU_OBJECT_PATH_LENGTH is similar to GLU_PATH_LENGTH + except that it is view independent; that is, the surface is rendered so that the maximum length, in object space, of edges of the tessellation polygons is no greater than what is specified by GLU_SAMPLING_TOLERANCE. + + + GLU_OBJECT_PARAMETRIC_ERROR is similar to GLU_PARAMETRIC_ERROR except that it is view independent; that is, the surface is rendered in such a way that the value specified by GLU_PARAMETRIC_TOLERANCE describes the maximum distance, in object space, between the tessellation polygons and the surfaces they approximate. + + + The initial value of GLU_SAMPLING_METHOD is GLU_PATH_LENGTH. + + + + + GLU_SAMPLING_TOLERANCE + + + Specifies the maximum length, in pixels or in object space length unit, + to use when the sampling method is set to GLU_PATH_LENGTH or + GLU_OBJECT_PATH_LENGTH. + The NURBS code is conservative when rendering a curve + or surface, so the actual length can be somewhat shorter. The initial + value is 50.0 pixels. + + + + + GLU_PARAMETRIC_TOLERANCE + + + Specifies the maximum distance, in pixels or in object space length unit, + to use when the sampling method is GLU_PARAMETRIC_ERROR or + GLU_OBJECT_PARAMETRIC_ERROR. + The initial value is 0.5. + + + + + GLU_U_STEP + + + Specifies the number of sample points per unit length taken + along the u axis in parametric coordinates. It is needed when + GLU_SAMPLING_METHOD is set to GLU_DOMAIN_DISTANCE. + The initial value is 100. + + + + + GLU_V_STEP + + + Specifies the number of sample points per unit length taken + along the v axis in parametric coordinate. It is needed when + GLU_SAMPLING_METHOD is set to GLU_DOMAIN_DISTANCE. The initial + value is 100. + + + + + GLU_DISPLAY_MODE + + + value can be set to + GLU_OUTLINE_POLYGON, GLU_FILL, or + GLU_OUTLINE_PATCH. + When GLU_NURBS_MODE is set to be GLU_NURBS_RENDERER, + value defines how a NURBS surface should be rendered. + When value is set to GLU_FILL, the surface is rendered as a + set of polygons. When value is set to + GLU_OUTLINE_POLYGON, the NURBS library draws only the outlines + of the polygons created by tessellation. When value is set to + GLU_OUTLINE_PATCH just the outlines of patches and trim + curves defined by the user are drawn. + + + When GLU_NURBS_MODE is set to be GLU_NURBS_TESSELLATOR, + value defines how a NURBS surface should be tessellated. + When GLU_DISPLAY_MODE is set to GLU_FILL or + GLU_OUTLINE_POLYGON, + the NURBS surface is tessellated into OpenGL triangle primitives that can be + retrieved back through callback functions. If GLU_DISPLAY_MODE is set to + GLU_OUTLINE_PATCH, only the outlines of the patches and trim curves are generated as a sequence of line strips that can be retrieved back through callback functions. + + + The initial value is GLU_FILL. + + + + + GLU_CULLING + + + value is a boolean value that, when set to GLU_TRUE, indicates that + a NURBS curve should be discarded prior to tessellation if its control points + lie outside the current viewport. The initial value is GLU_FALSE. + + + + + GLU_AUTO_LOAD_MATRIX + + + value is a boolean value. When set to GLU_TRUE, the NURBS code + downloads the projection matrix, the modelview matrix, and the + viewport from the GL server to compute sampling and + culling + matrices for each NURBS curve that is rendered. Sampling and culling matrices + are required to determine the tessellation of a NURBS surface into line segments + or polygons and to cull a NURBS surface if it lies outside the viewport. + + + If this mode is set to GLU_FALSE, then the program needs + to provide a projection matrix, a modelview matrix, and a viewport + for the NURBS renderer to use to construct sampling and culling matrices. + This can be done with the gluLoadSamplingMatrices function. + This mode is initially set to GLU_TRUE. + Changing it from GLU_TRUE to GLU_FALSE does not affect + the sampling and culling matrices until + gluLoadSamplingMatrices + is called. + + + + + + Notes + + If GLU_AUTO_LOAD_MATRIX is true, sampling and culling may be + executed incorrectly if NURBS routines are compiled into a display list. + + + A property of + GLU_PARAMETRIC_TOLERANCE, + GLU_SAMPLING_METHOD, + GLU_U_STEP, or + GLU_V_STEP, + or a value of + GLU_PATH_LENGTH, + GLU_PARAMETRIC_ERROR, + GLU_DOMAIN_DISTANCE + are only available if the GLU version is 1.1 or greater. They are not + valid parameters in GLU 1.0. + + + gluGetString can + be used to determine the GLU version. + + + GLU_NURBS_MODE is only available if the GLU version is 1.3 or + greater. + + + The GLU_OBJECT_PATH_LENGTH and GLU_OBJECT_PARAMETRIC_ERROR + values for the GLU_SAMPLING_METHOD property are only available if + the GLU version is 1.3 or greater. + + + See Also + + gluGetNurbsProperty, + gluGetString, + gluLoadSamplingMatrices, + gluNewNurbsRenderer, + gluNurbsCallback + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluNurbsSurface.xml b/upstream-man-pages/man2/gluNurbsSurface.xml new file mode 100644 index 0000000..e920d76 --- /dev/null +++ b/upstream-man-pages/man2/gluNurbsSurface.xml @@ -0,0 +1,207 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluNurbsSurface + 3G + + + gluNurbsSurface + define the shape of a NURBS surface + + C Specification + + + void gluNurbsSurface + GLUnurbs* nurb + GLint sKnotCount + GLfloat* sKnots + GLint tKnotCount + GLfloat* tKnots + GLint sStride + GLint tStride + GLfloat* control + GLint sOrder + GLint tOrder + GLenum type + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + sKnotCount + + + Specifies the number of knots in the parametric u direction. + + + + + sKnots + + + Specifies an array of sKnotCount nondecreasing knot values in the parametric + u direction. + + + + + tKnotCount + + + Specifies the number of knots in the parametric v direction. + + + + + tKnots + + + Specifies an array of tKnotCount nondecreasing knot values in the parametric + v direction. + + + + + sStride + + + Specifies the offset (as a number of single-precision floating-point values) + between successive control points in the parametric u direction + in control. + + + + + tStride + + + Specifies the offset (in single-precision floating-point values) + between successive control points in the parametric v direction + in control. + + + + + control + + + Specifies an array containing control points for the NURBS surface. + The offsets between successive control points in the parametric u + and v directions are given by sStride and tStride. + + + + + sOrder + + + Specifies the order of the NURBS surface in the parametric u + direction. The order is one more than the degree, hence + a surface that is cubic in u has a u order of 4. + + + + + tOrder + + + Specifies the order of the NURBS surface in the parametric v + direction. The order is one more than the degree, hence + a surface that is cubic in v has a v order of 4. + + + + + type + + + Specifies type of the surface. type can be any of the valid + two-dimensional evaluator types (such as GLU_MAP2_VERTEX_3 or + GLU_MAP2_COLOR_4). + + + + + + Description + + Use gluNurbsSurface within a NURBS (Non-Uniform Rational B-Spline) surface + definition to describe the shape of a NURBS surface (before + any trimming). To mark the beginning of + a NURBS surface definition, use the gluBeginSurface command. + To mark the end of a NURBS surface definition, use the + gluEndSurface command. Call gluNurbsSurface within a NURBS + surface definition only. + + + Positional, texture, and color coordinates are associated + with a surface by presenting each as a separate gluNurbsSurface between a + gluBeginSurface/gluEndSurface pair. No more than + one call to gluNurbsSurface for each of color, position, and texture + data can be made within a single gluBeginSurface/gluEndSurface + pair. Exactly one call must be made to describe the position of the + surface (a type of GLU_MAP2_VERTEX_3 or GLU_MAP2_VERTEX_4). + + + A NURBS surface can be trimmed by using the commands + gluNurbsCurve and gluPwlCurve between calls to + gluBeginTrim and gluEndTrim. + + + Note that a gluNurbsSurface with sKnotCount knots in the u direction + and tKnotCount knots in the v direction with orders + sOrder and tOrder must have + (sKnotCount - sOrder) + times + (tKnotCount - tOrder) control points. + + + Example + + The following commands render a textured NURBS surface with normals; + the texture coordinates and normals are also NURBS surfaces: + +gluBeginSurface(nobj); + gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2); + gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL); + gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4); +gluEndSurface(nobj); + + + + See Also + + gluBeginSurface, + gluBeginTrim, + gluNewNurbsRenderer, + gluNurbsCurve, + gluPwlCurve + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluOrtho2D.xml b/upstream-man-pages/man2/gluOrtho2D.xml new file mode 100644 index 0000000..e9b30e6 --- /dev/null +++ b/upstream-man-pages/man2/gluOrtho2D.xml @@ -0,0 +1,90 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluOrtho2D + 3G + + + gluOrtho2D + define a 2D orthographic projection matrix + + C Specification + + + void gluOrtho2D + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + + + + + Parameters + + + left + right + + + Specify the coordinates for the left and right vertical clipping planes. + + + + + bottom + top + + + Specify the coordinates for the bottom and top horizontal clipping planes. + + + + + + Description + + gluOrtho2D sets up a two-dimensional orthographic viewing region. + This is equivalent to calling glOrtho with + + + + near + = + -1 + + + and + + + + far + = + 1 + + . + + + See Also + + glOrtho, + gluPerspective + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluPartialDisk.xml b/upstream-man-pages/man2/gluPartialDisk.xml new file mode 100644 index 0000000..53d5ce4 --- /dev/null +++ b/upstream-man-pages/man2/gluPartialDisk.xml @@ -0,0 +1,166 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluPartialDisk + 3G + + + gluPartialDisk + draw an arc of a disk + + C Specification + + + void gluPartialDisk + GLUquadric* quad + GLdouble inner + GLdouble outer + GLint slices + GLint loops + GLdouble start + GLdouble sweep + + + + + Parameters + + + quad + + + Specifies a quadrics object (created with gluNewQuadric). + + + + + inner + + + Specifies the inner radius of the partial disk (can be 0). + + + + + outer + + + Specifies the outer radius of the partial disk. + + + + + slices + + + Specifies the number of subdivisions around the z axis. + + + + + loops + + + Specifies the number of concentric rings about the origin into which + the partial disk is subdivided. + + + + + start + + + Specifies the starting angle, in degrees, of the disk portion. + + + + + sweep + + + Specifies the sweep angle, in degrees, of the disk portion. + + + + + + Description + + gluPartialDisk renders a partial disk on the + + + + z + = + 0 + + + plane. A partial disk is + similar to a full disk, except that only the subset of the disk from + start through start + sweep is included (where 0 degrees is along the + +\f2y\f axis, + 90 degrees along the +x axis, 180 degrees along the \-y axis, and + 270 degrees along the \-x axis). + + + The partial disk has a radius of + outer and contains a concentric circular hole with a radius + of inner. If inner is 0, then no hole is generated. The partial disk is + subdivided around the z axis into slices (like pizza slices) and also + about the z axis into rings + (as specified by slices and loops, respectively). + + + With respect to orientation, the +z + side of the partial disk is considered to + be outside (see gluQuadricOrientation). + This means that if the + orientation is set to GLU_OUTSIDE, then any normals generated + point along the +z axis. Otherwise, they point along the \-z + axis. + + + If texturing is turned on (with gluQuadricTexture), texture + coordinates are generated + linearly such that where + + + + r + = + outer + + , + the value at (r, 0, 0) is + (1.0, 0.5), at (0, r, 0) it is (0.5, 1.0), at (\-r, 0, 0) + it is (0.0, 0.5), and + at (0, \-r, 0) it is (0.5, 0.0). + + + See Also + + gluCylinder, + gluDisk, + gluNewQuadric, + gluQuadricOrientation, + gluQuadricTexture, + gluSphere + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluPerspective.xml b/upstream-man-pages/man2/gluPerspective.xml new file mode 100644 index 0000000..06aed18 --- /dev/null +++ b/upstream-man-pages/man2/gluPerspective.xml @@ -0,0 +1,281 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluPerspective + 3G + + + gluPerspective + set up a perspective projection matrix + + C Specification + + + void gluPerspective + GLdouble fovy + GLdouble aspect + GLdouble zNear + GLdouble zFar + + + + + Parameters + + + fovy + + + Specifies the field of view angle, in degrees, in the y direction. + + + + + aspect + + + Specifies the aspect ratio that determines + the field of view in the x direction. + The aspect ratio is the ratio of x (width) to y (height). + + + + + zNear + + + Specifies the distance from the viewer to the near clipping plane + (always positive). + + + + + zFar + + + Specifies the distance from the viewer to the far clipping plane + (always positive). + + + + + + Description + + gluPerspective specifies a viewing frustum into the world coordinate system. + In general, the aspect ratio in gluPerspective should match the aspect ratio + of the associated viewport. For example, + + + + aspect + = + 2.0 + + + means + the viewer's + angle of view is twice as wide in x as it is in y. + If the viewport is + twice as wide as it is tall, it displays the image without distortion. + + + The matrix generated by gluPerspective is multipled by the current matrix, + just as if glMultMatrix were called with the generated matrix. + To load the perspective matrix onto the current matrix stack instead, + precede the call to gluPerspective with a call to glLoadIdentity. + + + Given f defined as follows: + + + + + + f + = + + cotangent + + + + fovy + 2 + + + + + + The generated matrix is + + + + + + + + + + f + aspect + + + + 0 + + + 0 + + + 0 + + + + + 0 + + + f + + + 0 + + + 0 + + + + + 0 + + + 0 + + + + + + zFar + + + zNear + + + + + zNear + - + zFar + + + + + + + + + 2 + × + zFar + × + zNear + + + + + zNear + - + zFar + + + + + + + + 0 + + + 0 + + + -1 + + + 0 + + + + + + + + Notes + + Depth buffer precision is affected by the values specified for + zNear and zFar. + The greater the ratio of zFar to zNear is, + the less effective the depth buffer will be at distinguishing between + surfaces that are near each other. + If + + + + + + r + = + + zFar + zNear + + + + + + + + roughly + + + + log + 2 + + + + r + + + + bits of depth buffer precision are lost. + Because + r + approaches infinity as zNear approaches 0, + zNear must never be set to 0. + + + See Also + + gluOrtho2D, + glFrustum, + glLoadIdentity, + glMultMatrix + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluPickMatrix.xml b/upstream-man-pages/man2/gluPickMatrix.xml new file mode 100644 index 0000000..15a1761 --- /dev/null +++ b/upstream-man-pages/man2/gluPickMatrix.xml @@ -0,0 +1,132 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluPickMatrix + 3G + + + gluPickMatrix + define a picking region + + C Specification + + + void gluPickMatrix + GLdouble x + GLdouble y + GLdouble delX + GLdouble delY + GLint * viewport + + + + + Parameters + + + x + y + + + Specify the center of a picking region in window coordinates. + + + + + delX + delY + + + Specify the width and height, respectively, of the picking region in window + coordinates. + + + + + viewport + + + Specifies the current viewport (as from a glGetIntegerv call). + + + + + + Description + + gluPickMatrix creates a projection matrix that can be used to restrict drawing + to a small region of the viewport. + This is typically useful to + determine what objects are being drawn near the cursor. + Use gluPickMatrix to + restrict drawing to a small region around the cursor. + Then, + enter selection mode (with glRenderMode) and rerender the scene. + All primitives that would have been drawn near + the cursor are identified and stored in the selection buffer. + + + The matrix created by gluPickMatrix is multiplied by the current matrix just + as if glMultMatrix is called with the generated matrix. + To effectively use the generated pick matrix for picking, + first call glLoadIdentity to load an identity matrix onto the + perspective matrix stack. + Then call gluPickMatrix, + and, finally, call a command (such as gluPerspective) + to multiply the perspective matrix by the pick matrix. + + + When using gluPickMatrix to pick NURBS, be careful to turn off the NURBS + property + GLU_AUTO_LOAD_MATRIX. If GLU_AUTO_LOAD_MATRIX is not + turned off, then any NURBS surface rendered is subdivided differently with + the pick matrix than the way it was subdivided without the pick matrix. + + + Example + + When rendering a scene as follows: + +glMatrixMode(GL_PROJECTION); +glLoadIdentity(); +gluPerspective(...); +glMatrixMode(GL_MODELVIEW); +/* Draw the scene */ + + a portion of the viewport can be selected as a pick region like this: + +glMatrixMode(GL_PROJECTION); +glLoadIdentity(); +gluPickMatrix(x, y, width, height, viewport); +gluPerspective(...); +glMatrixMode(GL_MODELVIEW); +/* Draw the scene */ + + + + See Also + + gluPerspective, + glGet, + glLoadIdentity, + glMultMatrix, + glRenderMode + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluProject.xml b/upstream-man-pages/man2/gluProject.xml new file mode 100644 index 0000000..714db45 --- /dev/null +++ b/upstream-man-pages/man2/gluProject.xml @@ -0,0 +1,294 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluProject + 3G + + + gluProject + map object coordinates to window coordinates + + C Specification + + + GLint gluProject + GLdouble objX + GLdouble objY + GLdouble objZ + const GLdouble * model + const GLdouble * proj + const GLint * view + GLdouble* winX + GLdouble* winY + GLdouble* winZ + + + + + Parameters + + + objX + objY + objZ + + + Specify the object coordinates. + + + + + model + + + Specifies the current modelview matrix (as from a glGetDoublev call). + + + + + proj + + + Specifies the current projection matrix (as from a glGetDoublev call). + + + + + view + + + Specifies the current viewport (as from a glGetIntegerv call). + + + + + winX + winY + winZ + + + Return the computed window coordinates. + + + + + + Description + + gluProject transforms the specified object coordinates into window coordinates + using model, proj, and view. The result is stored + in winX, winY, and winZ. A return value of + GLU_TRUE indicates success, a return value of GLU_FALSE + indicates failure. + + + To compute the coordinates, + let + + + + v + = + + objX + objY + objZ + 1.0 + + + + represented as a matrix with 4 rows and 1 column. + Then gluProject computes + + + v + + + + as follows: + + + + + + v + + + = + + P + × + M + × + v + + + + + + where + P + is the current projection matrix proj and + M + is the current + modelview matrix model (both represented as + + + + 4 + × + 4 + + + matrices in column-major order). + + + The window coordinates are then computed as follows: + + + + + + winX + = + + + view + + + 0 + + + + + + + + view + + + 2 + + + × + + + + v + + + + + 0 + + + + + 1 + + + + 2 + + + + + + + + + winY + = + + + view + + + 1 + + + + + + + + view + + + 3 + + + × + + + + v + + + + + 1 + + + + + 1 + + + + 2 + + + + + + + + + + winZ + = + + + + + v + + + + + 2 + + + + + 1 + + + 2 + + + + + + + + + See Also + + gluUnProject, + glGet + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluPwlCurve.xml b/upstream-man-pages/man2/gluPwlCurve.xml new file mode 100644 index 0000000..93fed02 --- /dev/null +++ b/upstream-man-pages/man2/gluPwlCurve.xml @@ -0,0 +1,121 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluPwlCurve + 3G + + + gluPwlCurve + describe a piecewise linear NURBS trimming curve + + C Specification + + + void gluPwlCurve + GLUnurbs* nurb + GLint count + GLfloat* data + GLint stride + GLenum type + + + + + Parameters + + + nurb + + + Specifies the NURBS object (created with gluNewNurbsRenderer). + + + + + count + + + Specifies the number of points on the curve. + + + + + data + + + Specifies an array containing the curve points. + + + + + stride + + + Specifies the offset (a number of single-precision floating-point values) + between points on the curve. + + + + + type + + + Specifies the type of curve. + Must be either GLU_MAP1_TRIM_2 or GLU_MAP1_TRIM_3. + + + + + + Description + + gluPwlCurve describes a piecewise linear trimming curve for a NURBS surface. + A piecewise linear curve consists of a list of + coordinates of points in the parameter space for the + NURBS surface to be trimmed. These points are connected + with line segments to form a curve. If the curve is + an approximation to a curve that is not piecewise linear, + the points should be close enough in parameter space that the + resulting path appears curved at the resolution used in the application. + + + If type is + GLU_MAP1_TRIM_2, then it describes a curve in two-dimensional (u + and v) parameter space. If it is GLU_MAP1_TRIM_3, then it + describes a curve in two-dimensional homogeneous (u, v, + and w) parameter space. + See the gluBeginTrim reference page for more information + about trimming curves. + + + Notes + + To describe a trim curve that closely follows the contours of a NURBS + surface, call gluNurbsCurve. + + + See Also + + gluBeginCurve, + gluBeginTrim, + gluNewNurbsRenderer, + gluNurbsCurve + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluQuadricCallback.xml b/upstream-man-pages/man2/gluQuadricCallback.xml new file mode 100644 index 0000000..066e00d --- /dev/null +++ b/upstream-man-pages/man2/gluQuadricCallback.xml @@ -0,0 +1,96 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluQuadricCallback + 3G + + + gluQuadricCallback + define a callback for a quadrics object + + C Specification + + + void gluQuadricCallback + GLUquadric* quad + GLenum which + _GLUfuncptr CallBackFunc + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + which + + + Specifies the callback being defined. + The only valid value is GLU_ERROR. + + + + + CallBackFunc + + + Specifies the function to be called. + + + + + + Description + + gluQuadricCallback is used to define a new callback to be used by a quadrics object. + If the specified callback is already defined, then it is replaced. If + CallBackFunc is NULL, then any existing callback is erased. + + + The one legal callback is GLU_ERROR: + + + + GLU_ERROR + + + The function is called when an error is encountered. Its single argument + is of type GLenum, and it indicates the specific error that occurred. + Character strings describing these errors can be retrieved with the + gluErrorString call. + + + + + + See Also + + gluErrorString, + gluNewQuadric + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluQuadricDrawStyle.xml b/upstream-man-pages/man2/gluQuadricDrawStyle.xml new file mode 100644 index 0000000..7d4ee14 --- /dev/null +++ b/upstream-man-pages/man2/gluQuadricDrawStyle.xml @@ -0,0 +1,112 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluQuadricDrawStyle + 3G + + + gluQuadricDrawStyle + specify the draw style desired for quadrics + + C Specification + + + void gluQuadricDrawStyle + GLUquadric* quad + GLenum draw + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + draw + + + Specifies the desired draw style. Valid values are + GLU_FILL, + GLU_LINE, + GLU_SILHOUETTE, and + GLU_POINT. + + + + + + Description + + gluQuadricDrawStyle specifies the draw style for quadrics rendered with + quad. The legal values are as follows: + + + + GLU_FILL + + + Quadrics are rendered with polygon primitives. The polygons + are drawn in a counterclockwise fashion with respect to their + normals (as defined with gluQuadricOrientation). + + + + + GLU_LINE + + + Quadrics are rendered as a set of lines. + + + + + GLU_SILHOUETTE + + + Quadrics are rendered as a set of lines, except that edges separating + coplanar faces will not be drawn. + + + + + GLU_POINT + + + Quadrics are rendered as a set of points. + + + + + + See Also + + gluNewQuadric, + gluQuadricNormals, + gluQuadricOrientation, + gluQuadricTexture + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluQuadricNormals.xml b/upstream-man-pages/man2/gluQuadricNormals.xml new file mode 100644 index 0000000..afb8abc --- /dev/null +++ b/upstream-man-pages/man2/gluQuadricNormals.xml @@ -0,0 +1,101 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluQuadricNormals + 3G + + + gluQuadricNormals + specify what kind of normals are desired for quadrics + + C Specification + + + void gluQuadricNormals + GLUquadric* quad + GLenum normal + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + normal + + + Specifies the desired type of normals. Valid values are + GLU_NONE, + GLU_FLAT, and + GLU_SMOOTH. + + + + + + Description + + gluQuadricNormals specifies what kind of normals are desired for quadrics rendered with + quad. The legal values are as follows: + + + + GLU_NONE + + + No normals are generated. + + + + + GLU_FLAT + + + One normal is generated for every facet of a quadric. + + + + + GLU_SMOOTH + + + One normal is generated for every vertex of a quadric. This is the + initial value. + + + + + + See Also + + gluNewQuadric, + gluQuadricDrawStyle, + gluQuadricOrientation, + gluQuadricTexture + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluQuadricOrientation.xml b/upstream-man-pages/man2/gluQuadricOrientation.xml new file mode 100644 index 0000000..cf71ef7 --- /dev/null +++ b/upstream-man-pages/man2/gluQuadricOrientation.xml @@ -0,0 +1,95 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluQuadricOrientation + 3G + + + gluQuadricOrientation + specify inside/outside orientation for quadrics + + C Specification + + + void gluQuadricOrientation + GLUquadric* quad + GLenum orientation + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + orientation + + + Specifies the desired orientation. Valid values are + GLU_OUTSIDE and + GLU_INSIDE. + + + + + + Description + + gluQuadricOrientation specifies what kind of orientation is desired for quadrics rendered + with quad. The orientation values are as follows: + + + + GLU_OUTSIDE + + + Quadrics are drawn with normals pointing outward (the initial value). + + + + + GLU_INSIDE + + + Quadrics are drawn with normals pointing inward. + + + + + + Note that the interpretation of outward and inward depends on the + quadric being drawn. + + + See Also + + gluNewQuadric, + gluQuadricDrawStyle, + gluQuadricNormals, + gluQuadricTexture + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluQuadricTexture.xml b/upstream-man-pages/man2/gluQuadricTexture.xml new file mode 100644 index 0000000..995a14e --- /dev/null +++ b/upstream-man-pages/man2/gluQuadricTexture.xml @@ -0,0 +1,78 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluQuadricTexture + 3G + + + gluQuadricTexture + specify if texturing is desired for quadrics + + C Specification + + + void gluQuadricTexture + GLUquadric* quad + GLboolean texture + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + texture + + + Specifies a flag indicating if texture coordinates should be generated. + + + + + + Description + + gluQuadricTexture specifies if texture coordinates should be generated + for quadrics rendered with quad. + If the value of texture is GLU_TRUE, then texture coordinates + are generated, and if texture is GLU_FALSE, they are not. The + initial value is GLU_FALSE. + + + The manner in which texture coordinates are generated depends + upon the specific quadric rendered. + + + See Also + + gluNewQuadric, + gluQuadricDrawStyle, + gluQuadricNormals, + gluQuadricOrientation + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluScaleImage.xml b/upstream-man-pages/man2/gluScaleImage.xml new file mode 100644 index 0000000..77fe12e --- /dev/null +++ b/upstream-man-pages/man2/gluScaleImage.xml @@ -0,0 +1,247 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluScaleImage + 3G + + + gluScaleImage + scale an image to an arbitrary size + + C Specification + + + GLint gluScaleImage + GLenum format + GLsizei wIn + GLsizei hIn + GLenum typeIn + const void * dataIn + GLsizei wOut + GLsizei hOut + GLenum typeOut + GLvoid* dataOut + + + + + Parameters + + + format + + + Specifies the format of the pixel data. + The following symbolic values are valid: + GLU_COLOR_INDEX, + GLU_STENCIL_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, and + GLU_LUMINANCE_ALPHA. + + + + + wIn + hIn + + + Specify in pixels the width and height, respectively, of the source image. + + + + + typeIn + + + Specifies the data type for dataIn. Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + dataIn + + + Specifies a pointer to the source image. + + + + + wOut + hOut + + + Specify the width and height, respectively, in pixels of the destination image. + + + + + typeOut + + + Specifies the data type for dataOut. Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. + + + + + dataOut + + + Specifies a pointer to the destination image. + + + + + + Description + + gluScaleImage scales a pixel image using the appropriate pixel store modes to + unpack data from the source image and pack data into the destination image. + + + When shrinking an image, gluScaleImage uses a box filter to sample the source image + and create pixels for the destination image. When magnifying an image, + the pixels from the source image are linearly interpolated to create the + destination image. + + + A return value of zero indicates success, otherwise a GLU error code is returned (see gluErrorString). + + + See the glReadPixels reference page for a description of + the acceptable values for the format, typeIn, and typeOut parameters. + + + Notes + + Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. + + + Errors + + GLU_INVALID_VALUE is returned if wIn, hIn, wOut, or hOut + is negative. + + + GLU_INVALID_ENUM is returned if format, typeIn, or typeOut is not + legal. + + + GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. + + + GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. + + + See Also + + gluBuild1DMipmaps, + gluBuild2DMipmaps, + gluBuild3DMipmaps, + gluErrorString, + glDrawPixels, + glReadPixels + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluSphere.xml b/upstream-man-pages/man2/gluSphere.xml new file mode 100644 index 0000000..e7d1282 --- /dev/null +++ b/upstream-man-pages/man2/gluSphere.xml @@ -0,0 +1,133 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluSphere + 3G + + + gluSphere + draw a sphere + + C Specification + + + void gluSphere + GLUquadric* quad + GLdouble radius + GLint slices + GLint stacks + + + + + Parameters + + + quad + + + Specifies the quadrics object (created with gluNewQuadric). + + + + + radius + + + Specifies the radius of the sphere. + + + + + slices + + + Specifies the number of subdivisions around the z axis + (similar to lines of longitude). + + + + + stacks + + + Specifies the number of subdivisions along the z axis + (similar to lines of + latitude). + + + + + + Description + + gluSphere draws a sphere of the given radius centered around the origin. The + sphere is subdivided around the z axis into slices and along the + z axis + into stacks (similar to lines of longitude and latitude). + + + If the orientation is set to GLU_OUTSIDE + (with gluQuadricOrientation), then any normals generated + point away from the center of the sphere. + Otherwise, they point toward the center of the sphere. + + + If texturing is turned on (with gluQuadricTexture), then texture + coordinates are + generated so that t ranges from 0.0 at + + + + z + = + + - + radius + + + + to 1.0 at + + + + z + = + radius + + + (t increases linearly along longitudinal + lines), + and s ranges from 0.0 at the +y axis, to 0.25 at the + +x axis, + to 0.5 at the \-y axis, to 0.75 at the \-x axis, and back to 1.0 + at the +y axis. + + + See Also + + gluCylinder, + gluDisk, + gluNewQuadric, + gluPartialDisk, + gluQuadricOrientation, + gluQuadricTexture + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessBeginContour.xml b/upstream-man-pages/man2/gluTessBeginContour.xml new file mode 100644 index 0000000..38afb46 --- /dev/null +++ b/upstream-man-pages/man2/gluTessBeginContour.xml @@ -0,0 +1,77 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessBeginContour + 3G + + + gluTessBeginContour + delimit a contour description + + C Specification + + + void gluTessBeginContour + GLUtesselator* tess + + + + C Specification + + + void gluTessEndContour + GLUtesselator* tess + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + + Description + + gluTessBeginContour and gluTessEndContour delimit the definition of a + polygon contour. Within each gluTessBeginContour/gluTessEndContour + pair, there can be zero or more calls to gluTessVertex. The vertices + specify a closed contour (the last vertex of each contour is automatically linked + to the first). See the gluTessVertex reference page for more details. + gluTessBeginContour can only be called between gluTessBeginPolygon and gluTessEndPolygon. + + + See Also + + gluNewTess, + gluTessBeginPolygon, + gluTessCallback, + gluTessEndPolygon, + gluTessNormal, + gluTessProperty, + gluTessVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessBeginPolygon.xml b/upstream-man-pages/man2/gluTessBeginPolygon.xml new file mode 100644 index 0000000..b405b87 --- /dev/null +++ b/upstream-man-pages/man2/gluTessBeginPolygon.xml @@ -0,0 +1,111 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessBeginPolygon + 3G + + + gluTessBeginPolygon + delimit a polygon description + + C Specification + + + void gluTessBeginPolygon + GLUtesselator* tess + GLvoid* data + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + data + + + Specifies a pointer to user polygon data. + + + + + + Description + + gluTessBeginPolygon and gluTessEndPolygon delimit the definition of a + convex, concave or self-intersecting polygon. Within each gluTessBeginPolygon/gluTessEndPolygon + pair, there must be one or more calls to gluTessBeginContour/gluTessEndContour. + Within each contour, there are zero or more calls to gluTessVertex. The vertices + specify a closed contour (the last vertex of each contour is automatically linked + to the first). See the gluTessVertex, gluTessBeginContour, and + gluTessEndContour reference pages for more details. + + + data is a pointer to a user-defined data structure. If the appropriate callback(s) + are specified (see gluTessCallback), then this pointer is returned to the + callback function(s). Thus, it is a convenient way to store per-polygon information. + + + Once gluTessEndPolygon is called, the polygon is tessellated, and the + resulting triangles are described through callbacks. + See gluTessCallback for descriptions of the callback functions. + + + Example + + A quadrilateral with a triangular hole in it can be described as follows: + +gluTessBeginPolygon(tobj, NULL); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v1, v1); + gluTessVertex(tobj, v2, v2); + gluTessVertex(tobj, v3, v3); + gluTessVertex(tobj, v4, v4); + gluTessEndContour(tobj); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v5, v5); + gluTessVertex(tobj, v6, v6); + gluTessVertex(tobj, v7, v7); + gluTessEndContour(tobj); +gluTessEndPolygon(tobj); + + + + + + See Also + + gluNewTess, + gluTessBeginContour, + gluTessCallback, + gluTessEndPolygon, + gluTessNormal, + gluTessProperty, + gluTessVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessCallback.xml b/upstream-man-pages/man2/gluTessCallback.xml new file mode 100644 index 0000000..7ce6564 --- /dev/null +++ b/upstream-man-pages/man2/gluTessCallback.xml @@ -0,0 +1,379 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessCallback + 3G + + + gluTessCallback + define a callback for a tessellation object + + C Specification + + + void gluTessCallback + GLUtesselator* tess + GLenum which + _GLUfuncptr CallBackFunc + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + which + + + Specifies the callback being defined. The following values are valid: + GLU_TESS_BEGIN, + GLU_TESS_BEGIN_DATA, + GLU_TESS_EDGE_FLAG, + GLU_TESS_EDGE_FLAG_DATA, + GLU_TESS_VERTEX, + GLU_TESS_VERTEX_DATA, + GLU_TESS_END, + GLU_TESS_END_DATA, + GLU_TESS_COMBINE, + GLU_TESS_COMBINE_DATA, + GLU_TESS_ERROR, and + GLU_TESS_ERROR_DATA. + + + + + CallBackFunc + + + Specifies the function to be called. + + + + + + Description + + gluTessCallback is used to indicate a callback to be used by a tessellation object. + If the specified callback is already defined, then it is replaced. If + CallBackFunc is NULL, then the existing callback becomes undefined. + + + These callbacks are used by the tessellation object to describe how a + polygon specified by the user is broken into triangles. Note that there + are two versions of each callback: one with user-specified polygon data + and one without. If both versions of a particular callback are specified, + then the callback with user-specified polygon data will be used. Note + that the polygon_data parameter used by some of the functions is + a copy of the pointer that was specified when + gluTessBeginPolygon was called. The legal callbacks are as follows: + + + + GLU_TESS_BEGIN + + + The begin callback is invoked like glBegin to indicate the start of + a (triangle) primitive. The function takes a single argument of type + GLenum. If the GLU_TESS_BOUNDARY_ONLY property is set to + GLU_FALSE, then the argument is set to either + GLU_TRIANGLE_FAN, GLU_TRIANGLE_STRIP, or GLU_TRIANGLES. + If the GLU_TESS_BOUNDARY_ONLY property is set to GLU_TRUE, + then the argument will be set to GLU_LINE_LOOP. The function + prototype for this callback is: + +void begin( GLenum type ); + + + + + + GLU_TESS_BEGIN_DATA + + + The same as the GLU_TESS_BEGIN callback except that it + takes an additional pointer argument. This pointer is identical to the + opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: + +void beginData( GLenum type, void *polygon_data ); + + + + + + GLU_TESS_EDGE_FLAG + + + The edge flag callback is similar to glEdgeFlag. The function + takes a single boolean flag that indicates which edges lie on the + polygon boundary. If the flag is GLU_TRUE, then each vertex + that follows begins an edge that lies on the polygon boundary, that is, + an edge that separates an interior region from an exterior one. + If the flag is GLU_FALSE, then each vertex that follows begins an edge + that lies in the polygon interior. The edge flag callback (if defined) is + invoked before the first vertex callback. + + + Since triangle fans and triangle strips do not support edge flags, the begin + callback is not called with GLU_TRIANGLE_FAN or GLU_TRIANGLE_STRIP + if a non-NULL edge flag callback is provided. (If the callback is + initialized to NULL, there is no impact on performance). Instead, the fans and + strips are converted to independent triangles. The function prototype + for this callback is: + +void edgeFlag( GLboolean flag ); + + + + + + GLU_TESS_EDGE_FLAG_DATA + + + The same as the GLU_TESS_EDGE_FLAG callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: + +void edgeFlagData( GLboolean flag, void *polygon_data ); + + + + + + GLU_TESS_VERTEX + + + The vertex callback is invoked between the begin and end callbacks. + It is similar to glVertex, and it defines the vertices of the triangles + created by the tessellation process. The function + takes a pointer as its only argument. This pointer is identical to + the opaque pointer provided by the user when the vertex was described + (see gluTessVertex). The function prototype for this callback is: + +void vertex( void *vertex_data ); + + + + + + GLU_TESS_VERTEX_DATA + + + The same as the GLU_TESS_VERTEX callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: + +void vertexData( void *vertex_data, void *polygon_data ); + + + + + + GLU_TESS_END + + + The end callback serves the same purpose as glEnd. It indicates the + end of a primitive and it takes no arguments. The function prototype for this + callback is: + +void end( void ); + + + + + + GLU_TESS_END_DATA + + + The same as the GLU_TESS_END callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: + +void endData( void *polygon_data ); + + + + + + GLU_TESS_COMBINE + + + The combine callback is called to create a new vertex when the tessellation + detects an intersection or wishes to merge features. The function takes + four arguments: an array of three elements each of type GLdouble, an array + of four pointers, an array of four elements each of type GLfloat, and a + pointer to a pointer. The prototype is: + +void combine( GLdouble coords[3], void *vertex_data[4], + GLfloat weight[4], void **outData ); + + + + The vertex is defined as a linear combination of up to four existing vertices, + stored in vertex_data. The coefficients of the linear + combination are given by weight; these weights always add up to 1. + All vertex pointers are valid even when some of the weights are 0. + coords gives the location of the new vertex. + + + The user must allocate another vertex, interpolate parameters using + vertex_data and weight, and return the new vertex pointer in + outData. This handle is supplied during rendering callbacks. + The user is responsible for freeing the memory some time after + gluTessEndPolygon is called. + + + For example, if the polygon lies in an arbitrary plane in 3-space, + and a color is associated with each vertex, the + GLU_TESS_COMBINE callback might look like this: + +void myCombine( GLdouble coords[3], VERTEX *d[4], + GLfloat w[4], VERTEX **dataOut ) +{ + VERTEX *new = new_vertex(); + + new->x = coords[0]; + new->y = coords[1]; + new->z = coords[2]; + new->r = w[0]*d[0]->r + w[1]*d[1]->r + w[2]*d[2]->r + w[3]*d[3]->r; + new->g = w[0]*d[0]->g + w[1]*d[1]->g + w[2]*d[2]->g + w[3]*d[3]->g; + new->b = w[0]*d[0]->b + w[1]*d[1]->b + w[2]*d[2]->b + w[3]*d[3]->b; + new->a = w[0]*d[0]->a + w[1]*d[1]->a + w[2]*d[2]->a + w[3]*d[3]->a; + *dataOut = new; +} + + + + If the tessellation detects an intersection, then the GLU_TESS_COMBINE or + GLU_TESS_COMBINE_DATA callback (see below) must be defined, and it must + write a non-NULL pointer into dataOut. Otherwise the + GLU_TESS_NEED_COMBINE_CALLBACK error occurs, and no + output is generated. + + + + + GLU_TESS_COMBINE_DATA + + + The same as the GLU_TESS_COMBINE callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: + +void combineData( GLdouble coords[3], void *vertex_data[4], + GLfloat weight[4], void **outData, + void *polygon_data ); + + + + + + GLU_TESS_ERROR + + + The error callback is called when an error is encountered. The one argument + is of type GLenum; it indicates the specific error that occurred and will be + set to one of GLU_TESS_MISSING_BEGIN_POLYGON, GLU_TESS_MISSING_END_POLYGON, + GLU_TESS_MISSING_BEGIN_CONTOUR, GLU_TESS_MISSING_END_CONTOUR, + GLU_TESS_COORD_TOO_LARGE, GLU_TESS_NEED_COMBINE_CALLBACK, or + GLU_OUT_OF_MEMORY. Character + strings describing these errors can be retrieved with the + gluErrorString call. The function prototype for this callback is: + +void error( GLenum errno ); + + + + The GLU library will recover from the first four + errors by inserting the missing call(s). + GLU_TESS_COORD_TOO_LARGE indicates that some vertex coordinate exceeded + the predefined constant GLU_TESS_MAX_COORD in absolute value, and + that the value has been clamped. (Coordinate values must be small + enough so that two can be multiplied together without overflow.) + GLU_TESS_NEED_COMBINE_CALLBACK indicates that the tessellation + detected an intersection between two edges in the input data, and the + GLU_TESS_COMBINE or GLU_TESS_COMBINE_DATA callback was + not provided. No output is generated. GLU_OUT_OF_MEMORY indicates + that there is not enough memory so no output is generated. + + + + + GLU_TESS_ERROR_DATA + + + The same as the GLU_TESS_ERROR callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: + +void errorData( GLenum errno, void *polygon_data ); + + + + + + + Example + + Polygons tessellated can be rendered directly like this: + +gluTessCallback(tobj, GLU_TESS_BEGIN, glBegin); +gluTessCallback(tobj, GLU_TESS_VERTEX, glVertex3dv); +gluTessCallback(tobj, GLU_TESS_END, glEnd); +gluTessCallback(tobj, GLU_TESS_COMBINE, myCombine); +gluTessBeginPolygon(tobj, NULL); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v, v); + ... + gluTessEndContour(tobj); +gluTessEndPolygon(tobj); + + Typically, the tessellated polygon should be stored in a display list so that + it does not need to be retessellated every time it is rendered. + + + See Also + + gluErrorString, + gluNewTess, + gluTessBeginContour, + gluTessBeginPolygon, + gluTessNormal, + gluTessProperty, + gluTessVertex, + glBegin, + glEdgeFlag, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessEndPolygon.xml b/upstream-man-pages/man2/gluTessEndPolygon.xml new file mode 100644 index 0000000..98a9b30 --- /dev/null +++ b/upstream-man-pages/man2/gluTessEndPolygon.xml @@ -0,0 +1,105 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessEndPolygon + 3G + + + gluTessEndPolygon + delimit a polygon description + + C Specification + + + void gluTessEndPolygon + GLUtesselator* tess + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + + Description + + gluTessBeginPolygon and gluTessEndPolygon delimit the + definition of a convex, concave, or self-intersecting polygon. Within + each gluTessBeginPolygon/gluTessEndPolygon pair, there must be + one or more calls to gluTessBeginContour/gluTessEndContour. + Within each contour, there are zero or more calls to gluTessVertex. + The vertices specify a closed contour (the last vertex of each contour + is automatically linked to the first). See the gluTessVertex, + gluTessBeginContour, and gluTessEndContour reference pages for + more details. + + + Once gluTessEndPolygon is called, the polygon is tessellated, and the + resulting triangles are described through callbacks. + See gluTessCallback for descriptions of the callback functions. + + + Example + + A quadrilateral with a triangular hole in it can be described like this: + +gluTessBeginPolygon(tobj, NULL); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v1, v1); + gluTessVertex(tobj, v2, v2); + gluTessVertex(tobj, v3, v3); + gluTessVertex(tobj, v4, v4); + gluTessEndContour(tobj); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v5, v5); + gluTessVertex(tobj, v6, v6); + gluTessVertex(tobj, v7, v7); + gluTessEndContour(tobj); +gluTessEndPolygon(tobj); + + In the above example the pointers, + v1 + through + v7, + should point to different + addresses, + since the values stored at these addresses will not be read by + the tesselator until gluTessEndPolygon is called. + + + See Also + + gluNewTess, + gluTessBeginContour, + gluTessBeginPolygon, + gluTessCallback, + gluTessNormal, + gluTessProperty, + gluTessVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessNormal.xml b/upstream-man-pages/man2/gluTessNormal.xml new file mode 100644 index 0000000..3282fe3 --- /dev/null +++ b/upstream-man-pages/man2/gluTessNormal.xml @@ -0,0 +1,107 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessNormal + 3G + + + gluTessNormal + specify a normal for a polygon + + C Specification + + + void gluTessNormal + GLUtesselator* tess + GLdouble valueX + GLdouble valueY + GLdouble valueZ + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + valueX + + + Specifies the first component of the normal. + + + + + valueY + + + Specifies the second component of the normal. + + + + + valueZ + + + Specifies the third component of the normal. + + + + + + Description + + gluTessNormal describes a normal for a polygon that the program is defining. + All input data will be projected onto a plane perpendicular to one of + the three coordinate axes before tessellation and all output triangles + will be oriented CCW with + respect to the normal (CW orientation can be obtained by reversing the + sign of the supplied normal). For example, if you know that all polygons + lie in the x-y plane, call gluTessNormal(tess, 0.0, 0.0, 1.0) + before rendering any polygons. + + + If the supplied normal is (0.0, 0.0, 0.0) (the initial value), the normal is + determined as follows. The direction of the normal, up to its sign, is + found by fitting a plane to the vertices, without regard to how the + vertices are connected. It is expected that the input data lies approximately + in the plane; otherwise, projection perpendicular to one of the three + coordinate axes may substantially change the geometry. The sign of the + normal is chosen so that the sum of the signed areas of all input + contours is nonnegative (where a CCW contour has positive area). + + + The supplied normal persists until it is changed by another call to + gluTessNormal. + + + See Also + + gluTessBeginPolygon, + gluTessEndPolygon + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessProperty.xml b/upstream-man-pages/man2/gluTessProperty.xml new file mode 100644 index 0000000..20fee90 --- /dev/null +++ b/upstream-man-pages/man2/gluTessProperty.xml @@ -0,0 +1,156 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessProperty + 3G + + + gluTessProperty + set a tessellation object property + + C Specification + + + void gluTessProperty + GLUtesselator* tess + GLenum which + GLdouble data + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + which + + + Specifies the property to be set. Valid values are + GLU_TESS_WINDING_RULE, + GLU_TESS_BOUNDARY_ONLY, and + GLU_TESS_TOLERANCE. + + + + + data + + + Specifies the value of the indicated property. + + + + + + Description + + gluTessProperty is used to control properties stored in a tessellation object. These + properties affect the way that the polygons are interpreted and rendered. + The legal values for which are as follows: + + + + GLU_TESS_WINDING_RULE + + + Determines which parts of the polygon are on the ``interior''. + data may be set to one of GLU_TESS_WINDING_ODD, + GLU_TESS_WINDING_NONZERO, GLU_TESS_WINDING_POSITIVE, + GLU_TESS_WINDING_NEGATIVE, or GLU_TESS_WINDING_ABS_GEQ_TWO. + + + To understand how the winding rule works, consider that the input + contours partition the plane into regions. The winding rule determines which + of these regions are inside the polygon. + + + For a single contour C, the winding number of a point x is simply the signed + number of revolutions we make around x as we travel once around C + (where CCW is positive). When there are several contours, the individual + winding numbers are summed. This procedure associates a signed integer + value with each point x in the plane. Note that the winding number is the + same for all points in a single region. + + + The winding rule classifies a region as ``inside'' if its winding number + belongs to the chosen category (odd, nonzero, positive, negative, or + absolute value of at least two). The previous GLU tessellator (prior to + GLU 1.2) used the ``odd'' rule. The ``nonzero'' rule is another common way to + define the interior. The other three rules are useful for polygon CSG + operations. + + + + + GLU_TESS_BOUNDARY_ONLY + + + Is a boolean value (``value'' should be set + to GL_TRUE or GL_FALSE). When set to GL_TRUE, a set of closed contours + separating the polygon interior and exterior are returned instead of a + tessellation. Exterior contours are oriented CCW with respect to the + normal; interior contours are oriented CW. The GLU_TESS_BEGIN + and GLU_TESS_BEGIN_DATA callbacks use the type GL_LINE_LOOP for + each contour. + + + + + GLU_TESS_TOLERANCE + + + Specifies a tolerance for merging features to reduce the size of the output. + For example, two vertices that are very close to each other might be + replaced by a single vertex. The tolerance is multiplied by the largest + coordinate magnitude of any input vertex; this specifies the maximum + distance that any feature can move as the result of a single merge + operation. If a single feature takes part in several merge operations, the + total distance moved could be larger. + + + Feature merging is completely optional; the tolerance is only a hint. + The implementation is free to merge in some cases and not in others, or to + never merge features at all. The initial tolerance is 0. + + + The current implementation merges vertices only if they are exactly + coincident, regardless of the current tolerance. A vertex is spliced into + an edge only if the implementation is unable to distinguish which side of + the edge the vertex lies on. Two edges are merged only when both endpoints + are identical. + + + + + + See Also + + gluGetTessProperty, + gluNewTess + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluTessVertex.xml b/upstream-man-pages/man2/gluTessVertex.xml new file mode 100644 index 0000000..18c9e7b --- /dev/null +++ b/upstream-man-pages/man2/gluTessVertex.xml @@ -0,0 +1,143 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluTessVertex + 3G + + + gluTessVertex + specify a vertex on a polygon + + C Specification + + + void gluTessVertex + GLUtesselator* tess + GLdouble * location + GLvoid* data + + + + + Parameters + + + tess + + + Specifies the tessellation object (created with gluNewTess). + + + + + location + + + Specifies the location of the vertex. + + + + + data + + + Specifies an opaque pointer passed back to the program with the vertex callback + (as specified by gluTessCallback). + + + + + + Description + + gluTessVertex describes a vertex on a polygon that the program defines. Successive + gluTessVertex calls describe a closed contour. For example, + to describe a quadrilateral, gluTessVertex should be called four times. + gluTessVertex can only be called between gluTessBeginContour and + gluTessEndContour. + + + data normally points to a structure containing the vertex + location, as well as other per-vertex attributes such as color and normal. + This pointer is passed back to the user through the GLU_TESS_VERTEX + or GLU_TESS_VERTEX_DATA callback after tessellation + (see the gluTessCallback reference page). + + + Example + + A quadrilateral with a triangular hole in it can be described as follows: + +gluTessBeginPolygon(tobj, NULL); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v1, v1); + gluTessVertex(tobj, v2, v2); + gluTessVertex(tobj, v3, v3); + gluTessVertex(tobj, v4, v4); + gluTessEndContour(tobj); + gluTessBeginContour(tobj); + gluTessVertex(tobj, v5, v5); + gluTessVertex(tobj, v6, v6); + gluTessVertex(tobj, v7, v7); + gluTessEndContour(tobj); +gluTessEndPolygon(tobj); + + + + Notes + + It is a common error to use a local variable for location or data and store + values into it as part of a loop. + For example: + +for (i = 0; i < NVERTICES; ++i) { + GLdouble data[3]; + data[0] = vertex[i][0]; + data[1] = vertex[i][1]; + data[2] = vertex[i][2]; + gluTessVertex(tobj, data, data); +} + + + + This doesn't work. + Because the pointers specified by location and data might not be + dereferenced until gluTessEndPolygon is executed, + all the vertex coordinates but the very last set could be overwritten + before tessellation begins. + + + Two common symptoms of this problem are when the data consists of a single + point (when a local variable is used for data) and a + GLU_TESS_NEED_COMBINE_CALLBACK error (when a local variable is + used for location). + + + See Also + + gluNewTess, + gluTessBeginContour, + gluTessBeginPolygon, + gluTessCallback, + gluTessEndPolygon, + gluTessNormal, + gluTessProperty + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluUnProject.xml b/upstream-man-pages/man2/gluUnProject.xml new file mode 100644 index 0000000..c6d74c0 --- /dev/null +++ b/upstream-man-pages/man2/gluUnProject.xml @@ -0,0 +1,253 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluUnProject + 3G + + + gluUnProject + map window coordinates to object coordinates + + C Specification + + + GLint gluUnProject + GLdouble winX + GLdouble winY + GLdouble winZ + const GLdouble * model + const GLdouble * proj + const GLint * view + GLdouble* objX + GLdouble* objY + GLdouble* objZ + + + + + Parameters + + + winX + winY + winZ + + + Specify the window coordinates to be mapped. + + + + + model + + + Specifies the modelview matrix (as from a glGetDoublev call). + + + + + proj + + + Specifies the projection matrix (as from a glGetDoublev call). + + + + + view + + + Specifies the viewport (as from a glGetIntegerv call). + + + + + objX + objY + objZ + + + Returns the computed object coordinates. + + + + + + Description + + gluUnProject maps the specified window coordinates into object + coordinates using model, proj, and view. + The result is stored in objX, objY, and objZ. A return value of + GLU_TRUE indicates success; a return value of GLU_FALSE + indicates failure. + + + To compute the coordinates + + + + objX + objY + objZ + + , + gluUnProject multiplies the normalized device coordinates by the inverse of + model * proj as follows: + + + + + + + + + objX + + + objY + + + objZ + + + W + + + + = + + + INV + + + + P + + M + + + + + + + + + + + + 2 + + + + winX + - + + view + + + 0 + + + + + + + + + view + + + 2 + + + + + - + 1 + + + + + + + + 2 + + + + winY + - + + view + + + 1 + + + + + + + + + view + + + 3 + + + + + - + 1 + + + + + + 2 + + + winZ + + + - + 1 + + + + 1 + + + + + + + INV + denotes matrix inversion. + W is an unused variable, included for consistent matrix notation. + + + See Also + + gluProject, + glGet + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/gluUnProject4.xml b/upstream-man-pages/man2/gluUnProject4.xml new file mode 100644 index 0000000..0bdf8ca --- /dev/null +++ b/upstream-man-pages/man2/gluUnProject4.xml @@ -0,0 +1,322 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + gluUnProject4 + 3G + + + gluUnProject4 + map window and clip coordinates to object coordinates + + C Specification + + + GLint gluUnProject4 + GLdouble winX + GLdouble winY + GLdouble winZ + GLdouble clipW + const GLdouble * model + const GLdouble * proj + const GLint * view + GLdouble nearVal + GLdouble farVal + GLdouble* objX + GLdouble* objY + GLdouble* objZ + GLdouble* objW + + + + + Parameters + + + winX + winY + winZ + + + Specify the window coordinates to be mapped. + + + + + clipW + + + Specify the clip w coordinate to be mapped. + + + + + model + + + Specifies the modelview matrix (as from a glGetDoublev call). + + + + + proj + + + Specifies the projection matrix (as from a glGetDoublev call). + + + + + view + + + Specifies the viewport (as from a glGetIntegerv call). + + + + + nearVal + farVal + + + Specifies the near and far planes (as from a glGetDoublev call). + + + + + objX + objY + objZ + objW + + + Returns the computed object coordinates. + + + + + + Description + + gluUnProject4 maps the specified window coordinatesi: winX, winY, and winZ + and its clip w coordinate clipW + into object + coordinates + + + + objX + objY + objZ + objW + + + using model, proj, and view. clipW can be other than + 1 as for vertices in glFeedbackBuffer when data type + GLU_4D_COLOR_TEXTURE is returned. + This also handles the case + where the nearVal and farVal planes are different from the default, + 0 and 1, respectively. + A return + value of GLU_TRUE indicates success; a return value of GLU_FALSE + indicates failure. + + + To compute the coordinates + + + + objX + objY + objZ + objW + + , + gluUnProject4 multiplies the normalized device coordinates by the inverse of + model * proj as follows: + + + + + + + + + objX + + + objY + + + objZ + + + objW + + + + = + + + INV + + + + P + + M + + + + + + + + + + + + 2 + + + + winX + - + + view + + + 0 + + + + + + + + + view + + + 2 + + + + + - + 1 + + + + + + + + 2 + + + + winY + - + + view + + + 1 + + + + + + + + + view + + + 3 + + + + + - + 1 + + + + + + + + 2 + + + + winZ + - + nearVal + + + + + + + + farVal + - + nearVal + + + + + - + 1 + + + + clipW + + + + + + + + + INV + denotes matrix inversion. + + + gluUnProject4 is equivalent to gluUnProject when clipW is 1, nearVal is 0, and + farVal is 1. + + + Notes + + gluUnProject4 is available only if the GLU version is 1.3 or greater. + + + See Also + + gluProject, + gluUnProject, + glFeedbackBuffer, + glGet + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man2/index.php b/upstream-man-pages/man2/index.php new file mode 100644 index 0000000..96a9dfd --- /dev/null +++ b/upstream-man-pages/man2/index.php @@ -0,0 +1,9 @@ + + +OpenGL 2.1 Reference Pages + + + + + + diff --git a/upstream-man-pages/man2/pdf/DejaVuSans.ttf b/upstream-man-pages/man2/pdf/DejaVuSans.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a467fe54e1df2eca898e8ed234551ebd2aee6de3 GIT binary patch literal 581372 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 a4Z07Q#!Q9PuUeF#*Rqsm{TfHxt((;AA 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

4SAGu&EVhZQ#=Y{_@o2#i@ zCY3(8`Mxb9@8jHc2%1ccJ#IYXS^L6}xCG$YD3(Qs1J6(;xT#R-HJAp*0Mjtv%82ri zfH;9_eYn!J;BMHu@~++;T`;^(d}o0dZn_d#qk>p;1keprLgH%Br7Rw8UQiD3m##mCd&Z4;JV7#JO^G>namiuU8Skj62=&WqGv47&L@ z!m!;yf)F;YY(n$gE26W2cINj49KVd+E_4;J7=ZXSo~d6E(-uBUe{uS<5;E7bXeg56 zrTg*Emkf%CvDpfN`JMp9*i z@+JY5u|nYPz>U=ZU9i)K$c^rXUj={P3qiO3_N}2^tS5>wZWM_}{%#Bd>Y?48_<7K- z4(vQ==ZTwZhledjeqr)!#%j?l7K;Cx(J$Oodu+M}_*fCecGA_ghBQY)8y%)!KM00^*R&^O>#DElqIhCN3%mcY}` z7K@=TR;2-oz+yl@;)CJ5To!T-JgqT2BHl8q2&RBY{a@HqHRDqf`o8eC%Wvb`_hT-8 z=^OsUx(a1g)$$5!crwRe_xOY|s_COQO6dpJ@h57^nWK|6zjlvL?s8tGE*X`X!xQi` ze7jdM<49$eZ&&PJ%O%4t5+|DqCvQYuPTnqEXZISYAClyfu5%xFU~aELUcO$w+Ap@% zb8inC+A`MfmkNDpKup$iZ$Ag8@6Q!-(>Y_?v>EH|^Sz3V+0Dhw564@=!~DlsnC{rS zqfzn8pF_hO-)TKw&;oj~UOYnTa0=gng{N=0J{XI^mx= zf}ui1MlPZ45YuC3hYA

P{<}Abuqy^A|M@ruuCzWr2r?Jih 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%0Ad@KF=`z>U3BDg}}b8W`8~tf_2bj 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 XWjpWx=9hi;{}2B@?*HkX{FMI#`$(sz literal 0 HcmV?d00001 diff --git a/upstream-man-pages/man2/pdf/Makefile b/upstream-man-pages/man2/pdf/Makefile new file mode 100644 index 0000000..90e44db --- /dev/null +++ b/upstream-man-pages/man2/pdf/Makefile @@ -0,0 +1,414 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc +SED = sed +CAT = cat +FOPDIR = /cygdrive/c/man_pages/fop-0.94 + +FOP = $(FOPDIR)/fop.bat +CONFIG = $(FOPDIR)/user.cfg + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and the specifically +# stylesheet to convert Docbook+MathML => XHTML+MathML +DB2XHTML = ./ogl_prep_xml.xsl +#DB2PDF = ../../../../../../../../docbook-xsl-1.73.2/fo/docbook.xsl +DB2PDF = ./opengl-pdf.xsl +#CONFIG = ../../../../../../../../fop-0.94/user.cfg + +OUTFILE = glReference + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +# ARB Ecosystem man pages +ARBXML = \ + glBlendEquationSeparate.xml \ + glStencilFuncSeparate.xml \ + glStencilMaskSeparate.xml \ + glStencilOpSeparate.xml + +# SuperBible GL 1.5 man pages +SUPERBIBLEXML = \ + glBeginQuery.xml \ + glBindBuffer.xml \ + glBufferData.xml \ + glBufferSubData.xml \ + glDeleteBuffers.xml \ + glDeleteQueries.xml \ + glGenBuffers.xml \ + glGenQueries.xml \ + glGetBufferParameteriv.xml \ + glGetBufferPointerv.xml \ + glGetBufferSubData.xml \ + glGetQueryiv.xml \ + glGetQueryObject.xml \ + glIsBuffer.xml \ + glIsQuery.xml \ + glMapBuffer.xml + +# 3Dlabs GL 2.0 man pages +3DLABSXML = \ + glAttachShader.xml \ + glBindAttribLocation.xml \ + glCompileShader.xml \ + glCreateProgram.xml \ + glCreateShader.xml \ + glDeleteProgram.xml \ + glDeleteShader.xml \ + glDetachShader.xml \ + glDrawBuffers.xml \ + glEnableVertexAttribArray.xml \ + glGetActiveAttrib.xml \ + glGetActiveUniform.xml \ + glGetAttachedShaders.xml \ + glGetAttribLocation.xml \ + glGetProgram.xml \ + glGetProgramInfoLog.xml \ + glGetShader.xml \ + glGetShaderInfoLog.xml \ + glGetShaderSource.xml \ + glGetUniform.xml \ + glGetUniformLocation.xml \ + glGetVertexAttrib.xml \ + glGetVertexAttribPointerv.xml \ + glIsProgram.xml \ + glIsShader.xml \ + glLinkProgram.xml \ + glShaderSource.xml \ + glUniform.xml \ + glUseProgram.xml \ + glValidateProgram.xml \ + glVertexAttrib.xml \ + glVertexAttribPointer.xml + +# SGI OpenGL 1.4 man pages +SGIGLXML = \ + glAccum.xml \ + glActiveTexture.xml \ + glAlphaFunc.xml \ + glAreTexturesResident.xml \ + glArrayElement.xml \ + glBegin.xml \ + glBindTexture.xml \ + glBitmap.xml \ + glBlendColor.xml \ + glBlendEquation.xml \ + glBlendFuncSeparate.xml \ + glBlendFunc.xml \ + glCallLists.xml \ + glCallList.xml \ + glClearAccum.xml \ + glClearColor.xml \ + glClearDepth.xml \ + glClearIndex.xml \ + glClearStencil.xml \ + glClear.xml \ + glClientActiveTexture.xml \ + glClipPlane.xml \ + glColorMask.xml \ + glColorMaterial.xml \ + glColorPointer.xml \ + glColorSubTable.xml \ + glColorTableParameter.xml \ + glColorTable.xml \ + glColor.xml \ + glCompressedTexImage1D.xml \ + glCompressedTexImage2D.xml \ + glCompressedTexImage3D.xml \ + glCompressedTexSubImage1D.xml \ + glCompressedTexSubImage2D.xml \ + glCompressedTexSubImage3D.xml \ + glConvolutionFilter1D.xml \ + glConvolutionFilter2D.xml \ + glConvolutionParameter.xml \ + glCopyColorSubTable.xml \ + glCopyColorTable.xml \ + glCopyConvolutionFilter1D.xml \ + glCopyConvolutionFilter2D.xml \ + glCopyPixels.xml \ + glCopyTexImage1D.xml \ + glCopyTexImage2D.xml \ + glCopyTexSubImage1D.xml \ + glCopyTexSubImage2D.xml \ + glCopyTexSubImage3D.xml \ + glCullFace.xml \ + glDeleteLists.xml \ + glDeleteTextures.xml \ + glDepthFunc.xml \ + glDepthMask.xml \ + glDepthRange.xml \ + glDrawArrays.xml \ + glDrawBuffer.xml \ + glDrawElements.xml \ + glDrawPixels.xml \ + glDrawRangeElements.xml \ + glEdgeFlagPointer.xml \ + glEdgeFlag.xml \ + glEnableClientState.xml \ + glEnable.xml \ + glEvalCoord.xml \ + glEvalMesh.xml \ + glEvalPoint.xml \ + glFeedbackBuffer.xml \ + glFinish.xml \ + glFlush.xml \ + glFogCoordPointer.xml \ + glFogCoord.xml \ + glFog.xml \ + glFrontFace.xml \ + glFrustum.xml \ + glGenLists.xml \ + glGenTextures.xml \ + glGetClipPlane.xml \ + glGetColorTableParameter.xml \ + glGetColorTable.xml \ + glGetCompressedTexImage.xml \ + glGetConvolutionFilter.xml \ + glGetConvolutionParameter.xml \ + glGetError.xml \ + glGetHistogramParameter.xml \ + glGetHistogram.xml \ + glGetLight.xml \ + glGetMap.xml \ + glGetMaterial.xml \ + glGetMinmaxParameter.xml \ + glGetMinmax.xml \ + glGetPixelMap.xml \ + glGetPointerv.xml \ + glGetPolygonStipple.xml \ + glGetSeparableFilter.xml \ + glGetString.xml \ + glGetTexEnv.xml \ + glGetTexGen.xml \ + glGetTexImage.xml \ + glGetTexLevelParameter.xml \ + glGetTexParameter.xml \ + glGet.xml \ + glHint.xml \ + glHistogram.xml \ + glIndexMask.xml \ + glIndexPointer.xml \ + glIndex.xml \ + glInitNames.xml \ + glInterleavedArrays.xml \ + glIsEnabled.xml \ + glIsList.xml \ + glIsTexture.xml \ + glLightModel.xml \ + glLight.xml \ + glLineStipple.xml \ + glLineWidth.xml \ + glListBase.xml \ + glLoadIdentity.xml \ + glLoadMatrix.xml \ + glLoadName.xml \ + glLoadTransposeMatrix.xml \ + glLogicOp.xml \ + glMap1.xml \ + glMap2.xml \ + glMapGrid.xml \ + glMaterial.xml \ + glMatrixMode.xml \ + glMinmax.xml \ + glMultiDrawArrays.xml \ + glMultiDrawElements.xml \ + glMultiTexCoord.xml \ + glMultMatrix.xml \ + glMultTransposeMatrix.xml \ + glNewList.xml \ + glNormalPointer.xml \ + glNormal.xml \ + glOrtho.xml \ + glPassThrough.xml \ + glPixelMap.xml \ + glPixelStore.xml \ + glPixelTransfer.xml \ + glPixelZoom.xml \ + glPointParameter.xml \ + glPointSize.xml \ + glPolygonMode.xml \ + glPolygonOffset.xml \ + glPolygonStipple.xml \ + glPrioritizeTextures.xml \ + glPushAttrib.xml \ + glPushClientAttrib.xml \ + glPushMatrix.xml \ + glPushName.xml \ + glRasterPos.xml \ + glReadBuffer.xml \ + glReadPixels.xml \ + glRect.xml \ + glRenderMode.xml \ + glResetHistogram.xml \ + glResetMinmax.xml \ + glRotate.xml \ + glSampleCoverage.xml \ + glScale.xml \ + glScissor.xml \ + glSecondaryColorPointer.xml \ + glSecondaryColor.xml \ + glSelectBuffer.xml \ + glSeparableFilter2D.xml \ + glShadeModel.xml \ + glStencilFunc.xml \ + glStencilMask.xml \ + glStencilOp.xml \ + glTexCoordPointer.xml \ + glTexCoord.xml \ + glTexEnv.xml \ + glTexGen.xml \ + glTexImage1D.xml \ + glTexImage2D.xml \ + glTexImage3D.xml \ + glTexParameter.xml \ + glTexSubImage1D.xml \ + glTexSubImage2D.xml \ + glTexSubImage3D.xml \ + glTranslate.xml \ + glVertexPointer.xml \ + glVertex.xml \ + glViewport.xml \ + glWindowPos.xml + +# SGI GLU 1.3 man pages +SGIGLUXML = \ + gluBeginCurve.xml \ + gluBeginPolygon.xml \ + gluBeginSurface.xml \ + gluBeginTrim.xml \ + gluBuild1DMipmapLevels.xml \ + gluBuild1DMipmaps.xml \ + gluBuild2DMipmapLevels.xml \ + gluBuild2DMipmaps.xml \ + gluBuild3DMipmapLevels.xml \ + gluBuild3DMipmaps.xml \ + gluCheckExtension.xml \ + gluCylinder.xml \ + gluDeleteNurbsRenderer.xml \ + gluDeleteQuadric.xml \ + gluDeleteTess.xml \ + gluDisk.xml \ + gluErrorString.xml \ + gluGetNurbsProperty.xml \ + gluGetString.xml \ + gluGetTessProperty.xml \ + gluLoadSamplingMatrices.xml \ + gluLookAt.xml \ + gluNewNurbsRenderer.xml \ + gluNewQuadric.xml \ + gluNewTess.xml \ + gluNextContour.xml \ + gluNurbsCallbackDataEXT.xml \ + gluNurbsCallbackData.xml \ + gluNurbsCallback.xml \ + gluNurbsCurve.xml \ + gluNurbsProperty.xml \ + gluNurbsSurface.xml \ + gluOrtho2D.xml \ + gluPartialDisk.xml \ + gluPerspective.xml \ + gluPickMatrix.xml \ + gluProject.xml \ + gluPwlCurve.xml \ + gluQuadricCallback.xml \ + gluQuadricDrawStyle.xml \ + gluQuadricNormals.xml \ + gluQuadricOrientation.xml \ + gluQuadricTexture.xml \ + gluScaleImage.xml \ + gluSphere.xml \ + gluTessBeginContour.xml \ + gluTessBeginPolygon.xml \ + gluTessCallback.xml \ + gluTessEndPolygon.xml \ + gluTessNormal.xml \ + gluTessProperty.xml \ + gluTessVertex.xml \ + gluUnProject4.xml \ + gluUnProject.xml + +# SGI GLX 1.4 man pages +SGIGLXXML = \ + glXChooseFBConfig.xml \ + glXChooseVisual.xml \ + glXCopyContext.xml \ + glXCreateContext.xml \ + glXCreateGLXPixmap.xml \ + glXCreateNewContext.xml \ + glXCreatePbuffer.xml \ + glXCreatePixmap.xml \ + glXCreateWindow.xml \ + glXDestroyContext.xml \ + glXDestroyGLXPixmap.xml \ + glXDestroyPbuffer.xml \ + glXDestroyPixmap.xml \ + glXDestroyWindow.xml \ + glXFreeContextEXT.xml \ + glXGetClientString.xml \ + glXGetConfig.xml \ + glXGetContextIDEXT.xml \ + glXGetCurrentContext.xml \ + glXGetCurrentDisplay.xml \ + glXGetCurrentDrawable.xml \ + glXGetCurrentReadDrawable.xml \ + glXGetFBConfigAttrib.xml \ + glXGetFBConfigs.xml \ + glXGetProcAddress.xml \ + glXGetSelectedEvent.xml \ + glXGetVisualFromFBConfig.xml \ + glXImportContextEXT.xml \ + glXIntro.xml \ + glXIsDirect.xml \ + glXMakeContextCurrent.xml \ + glXMakeCurrent.xml \ + glXQueryContextInfoEXT.xml \ + glXQueryContext.xml \ + glXQueryExtensionsString.xml \ + glXQueryExtension.xml \ + glXQueryServerString.xml \ + glXQueryVersion.xml \ + glXSelectEvent.xml \ + glXSwapBuffers.xml \ + glXUseXFont.xml \ + glXWaitGL.xml \ + glXWaitX.xml + +# XML man page source and XHTML targets +GLXML = $(SGIGLXML) $(3DLABSXML) $(SUPERBIBLEXML) $(ARBXML) +GLUXML = $(SGIGLUXML) +GLXXML = $(SGIGLXXML) +XML = $(GLXML) $(GLUXML) $(GLXXML) + + +default: pdf + +%.xml: ../%.xml ogl_prep_xml.xsl + $(XSLT) --xinclude -o $@ $(DB2XHTML) $< + +$(OUTFILE).xml.tmp: $(ARBXML) + $(RM) glReference.xml.tmp + $(CAT) header >> $(OUTFILE).xml.tmp + $(CAT) gl*.xml >> $(OUTFILE).xml.tmp + $(CAT) footer >> $(OUTFILE).xml.tmp + +%.pdf: $(OUTFILE).xml.tmp +# $(FOP) -c $(CONFIG) -xml $(OUTFILE).xml.tmp -xsl $(DB2PDF) -pdf $(OUTFILE).pdf + $(FOP) -xml $(OUTFILE).xml.tmp -xsl $(DB2PDF) -pdf $(OUTFILE).pdf + + + +#default: pdf + +#default: remove_temp $(XML) xml pdf + +xml: glReference.xml + +pdf: glReference.pdf + +remove_temp: + $(RM) *.tmp + +clean: + $(RM) $(XML) $(OUTFILE).pdf *.tmp diff --git a/upstream-man-pages/man2/pdf/footer b/upstream-man-pages/man2/pdf/footer new file mode 100644 index 0000000..429a735 --- /dev/null +++ b/upstream-man-pages/man2/pdf/footer @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/upstream-man-pages/man2/pdf/header b/upstream-man-pages/man2/pdf/header new file mode 100644 index 0000000..7c487d9 --- /dev/null +++ b/upstream-man-pages/man2/pdf/header @@ -0,0 +1,346 @@ + + + + + + + + + + + + + +<graphic fileref="opengl_logo.gif" scale="25"/>Reference Pages + + +OpenGL® Reference Pages + + + + OpenGL® Architectural Review Board TSG, Khronos Group Inc. + BrentInskoE + 2.1 11/14/2007 - DRAFT + 2007 + Khronos Group, Inc. + + + Contents + + This document contains reference information for the OpenGL® Application +Programming Interface. These reference pages (also known as "man pages") include +all of the important usage information for each command. This information includes +a description of all parameters, return values, error conditions, and related +commands. In addition, this document also provides usage information for the OpenGL® +Utility Library (GLU) and the OpenGL® extension to the X Window System (GLX). + + + These pages also exist online in the +OpenGL® SDK. + + +If you find any inaccuracies or typos in the reference pages, don't hesitate to inform us via +the online specification feedback form. + + + + + + + + + +Copyrights + + + +The following OpenGL reference pages are Copyright © 2007 The Khronos Group Inc. and licensed under the Khronos Free Use License. For details, see http://www.khronos.org/help/legal/KFUL/. + + +

+ + glBlendEquationSeparate, + glStencilFuncSeparate, + glStencilMaskSeparate, + glStencilOpSeparate + +
+ + +The following OpenGL reference pages are Copyright © 2005 Addison-Wesley and may be distributed subject to the terms and conditions set forth in the Open Publication Licesnse, v 1.0, 8, June 1999. For details, see http://openlcontent.org/openpub/. + + +
+ + glBeginQuery, + glBindBuffer, + glBufferData, + glBufferSubData, + glDeleteBuffers, + glDeleteQueries, + glGenBuffers, + glGenQueries, + glGetBufferParameteriv, + glGetBufferPointerv, + glGetBufferSubData, + glGetQueryiv, + glGetQueryObject, + glIsBuffer, + glIsQuery, + glMapBuffer + +
+ + +The following OpenGL reference pages are Copyright © 2003-2005 3Dlabs, Inc. Ltd. And may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8, June 1999. For details, see http://openlcontent.org/openpub/. + + +
+ + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glCreateShader, + glDeleteProgram, + glDeleteShader, + glDetachShader, + glDrawBuffers, + glEnableVertexAttribArray, + glGetActiveAttrib, + glGetActiveUniform, + glGetAttachedShaders, + glGetAttribLocation, + glGetProgram, + glGetProgramInfoLog, + glGetShader, + glGetShaderInfoLog, + glGetShaderSource, + glGetUniform, + glGetUniformLocation, + glGetVertexAttrib, + glGetVertexAttribPointerv, + glIsProgram, + glIsShader, + glLinkProgram, + glShaderSource, + glUniform, + glUseProgram, + glValidateProgram, + glVertexAttrib, + glVertexAttribPointer + +
+ + + + All reference pages referring to the OpenGL Utility Library and the OpenGL +extension to the X Window System, and the following core OpenGL reference pages +are Copyright © 1991-2006 Silicon Graphics, Inc. and may be distributed +subject to the terms and conditions set forth in the Free Software B License. +For details, see +http://oss.sgi.com/projects/FreeB/. + +
+ + glAccum, + glActiveTexture, + glAlphaFunc, + glAreTexturesResident, + glArrayElement, + glBegin, + glBindTexture, + glBitmap, + glBlendColor, + glBlendEquation, + glBlendFunc, + glBlendFuncSeparate, + glCallList, + glCallLists, + glClear, + glClearAccum, + glClearColor, + glClearDepth, + glClearIndex, + gllearStencil, + glCLientActiveTexture, + glClipPlane, + glColor, + glColorMask, + glColorMaterial, + glColorPointer, + glColorSubTable, + glColorTable, + glColorTableParameter, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glConvolutionFilter2D, + glConvolutionParameter, + glCopyColorSubTable, + glCopyColorTable, + glCopyConvolutionFilter1D, + glCopyConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glCullFace, + glDeleteLists, + glDeleteTextures, + glDepthFunc, + glDepthMask, + glDepthRange, + glDrawArrays, + glDrawBuffer, + glDrawElements, + glDrawPixels, + glDrawRangeElements, + glEdgeFlag, + glEdgeFlagPointer, + glEnable, + glEnableClientState, + glEvalCoord, + glEvalMesh, + glEvalPoint, + glFeedbackBuffer, + glFinish, + glFlush, + glFog, + glFogCoord, + glFogCoordPointer, + glFrontFace, + glFrustum, + glGenLists, + glGenTextures, + glGet, + glGetClipPlane, + glGetColorTable, + glGetColorTableParameter, + glGetCompressedTexImage, + glGetConvolutionFilter, + glGetConvolutionParameter, + glGetError, + glGetHistogram, + glGetHistogramParameter, + glGetLight, + glGetMap, + glGetMaterial, + glGetMinmax, + glGetMinmaxParameter, + glGetPixelMap, + glGetPointerv, + glGetPolygonStipple, + glGetSeparableFilter, + glGetString, + glGetTexEnv, + glGetTexGen, + glGetTexImage, + glGetTexLevelParameter, + glGetTexParameter, + glHint, + glHistogram, + glIndex, + glIndexMask, + glIndexPointer, + glInitNames, + glInterleavedArrays, + glIsEnabled, + glIsList, + glIsTexture, + glLight, + glLightModel, + glLineStipple, + glLineWidth, + glListBase, + glLoadIdentity, + glLoadMatrix, + glLoadName, + glLoadTransposeMatrix, + glLogicOp, + glMap1, + glMap2, + glMapGrid, + glMaterial, + glMatrixMode, + glMinmax, + glMultiDrawArrays, + glMultiDrawElements, + glMultiTexCoord, + glMultMatrix, + glMultTransposeMatrix, + glNewList, + glNormal, + glNormalPointer, + glOrtho, + glPassThrough, + glPixelMap, + glPixelStore, + glPixelTransfer, + glPixelZoom, + glPointParameter, + glPointSize, + glPolygonMode, + glPolygonOffset, + glPolygonStipple, + glPrioritizeTextures, + glPushAttrib, + glPushClientAttrib, + glPushMatrix, + glPushName, + glRasterPos, + glReadBuffer, + glReadPixels, + glRect, + glRenderMode, + glResetHistogram, + glResetMinmax, + glRotate, + glSampleCoverage, + glScale, + glScissor, + glSecondaryColor, + glSecondaryColorPointer, + glSelectBuffer, + glSeparableFilter2D, + glShadeModel, + glStencilFunc, + glStencilMask, + glStencilOp, + glTexCoord, + glTexCoordPointer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTranslate, + glVertex, + glVertexPointer, + glViewport, + glWindowPos + +
+ + + + + + + + + +OpenGL<superscript>®</superscript> Commands diff --git a/upstream-man-pages/man2/pdf/ogl_prep_xml.xsl b/upstream-man-pages/man2/pdf/ogl_prep_xml.xsl new file mode 100644 index 0000000..ec5d5df --- /dev/null +++ b/upstream-man-pages/man2/pdf/ogl_prep_xml.xsl @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man2/pdf/opengl-pdf.xsl b/upstream-man-pages/man2/pdf/opengl-pdf.xsl new file mode 100644 index 0000000..d5bac43 --- /dev/null +++ b/upstream-man-pages/man2/pdf/opengl-pdf.xsl @@ -0,0 +1,349 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Symbol,ZapfDingbats,Lucida Sans Unicode +ansi + + + + + + + + + + + + + + + + + + + + + encountered + + in + + + , but no template matches. + + + < + + > + + </ + + > + + + + + + + + + + + + + + + + + + + + + Note + + + namesp. cut + + + stripped namespace before processing + + + + + + + Note + + + namesp. cut + + + processing stripped document + + + + + + + + Unable to strip the namespace from DB5 document, + cannot proceed. + + + + + + + + + + ID ' + + ' not found in document. + + + + + ERROR: Document root element ($rootid= + + ) for FO output + must be one of the following elements: + + + + + + + + + + + + + + + + + + + + + ERROR: Document root element for FO output + must be one of the following elements: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [could not find document title] + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Making + + pages on + + paper ( + + x + + ) + + + + + + diff --git a/upstream-man-pages/man2/top.php b/upstream-man-pages/man2/top.php new file mode 100644 index 0000000..b861d9c --- /dev/null +++ b/upstream-man-pages/man2/top.php @@ -0,0 +1,10 @@ + + +OpenGL SDK + + + + + + + diff --git a/upstream-man-pages/man2/usr/include/make/commondefs b/upstream-man-pages/man2/usr/include/make/commondefs new file mode 100644 index 0000000..1dd291b --- /dev/null +++ b/upstream-man-pages/man2/usr/include/make/commondefs @@ -0,0 +1,407 @@ +# Copyright (c) 1991-2000 Silicon Graphics, Inc. +# This document is licensed under the SGI Free Software B license. +# For details, see +# +# http://oss.sgi.com/projects/FreeB +# +# $Date$ $Revision$ +# $Header: //depot/main/tools/include/commondefs#43 $ + +COMMONRULES=$(ROOT)/usr/include/make/commonrules + +# what OS are we running on +OS=$(shell uname) +ifeq ($(subst 64,,$(OS)), IRIX) +OS=IRIX +endif +ifeq (CYGWIN,$(findstring CYGWIN,$(OS))) +OS=Linux +endif + +# various source-level directories +TOOLSSRC = $(TOPDIR)/tools +GFXINCLUDESRC = $(TOPDIR)/gfx/include +OGLLIBSRC = $(TOPDIR)/gfx/lib/opengl +GLXLIBSRC = $(TOPDIR)/glx + +# SGI Free Software B license +OSSCOPYRIGHT = $(TOPDIR)/doc/release/OSSCOPYRIGHT + +# shell-related defs +SHELL = /bin/sh +AWK = awk +ifeq ($(OS),IRIX) +ECHO = /bin/echo +endif +ifeq ($(OS),Linux) +ECHO = /bin/echo -e +endif +RM = rm -f +MV = mv +PERL = perl +SED = sed +UNIQ = uniq + +# M4 options - run GNU M4 in compatibility mode +# rdist options - Red Hat 5.2 must have daemon location specified +ifeq ($(OS),IRIX) +M4OPTS = +endif +ifeq ($(OS),Linux) +M4OPTS = -G +RDIST_OPTS = -p /usr/sbin/rdistd +endif + +# override default gmake CXX with what we have +ifeq ($(OS),IRIX) +CXX = CC +endif + +# what language are we using? Default to ansi with extended defines +ifeq ($(OS),IRIX) +CVERSION = -xansi +endif +ifeq ($(OS),Linux) +CVERSION= -ansi -include $(ROOT)/usr/include/make/linuxdefs +endif + +# WARN is the warning option +ifeq ($(OS),IRIX) +# +# Turn of explicitly some warnings on IRIX. Specifically: +# 1155: unrecognized #pragma +# 1174: parameter/variable "???" was declared but never referenced +# 1201: trailing comma is nonstandard (last element in struct assnment) +# 1209: controlling expression is constant +# 1506: implicit conversion from "???" to "???": rounding, sign +# extension, or loss of accuracy may result +# 3170: "???" not marked as intrinsic because it is not declared +# as a function +# +WARN = -fullwarn \ + -woff 1155,1174,1506,1201,1209,3170 +endif +ifeq ($(OS),Linux) +WARN = -Wimplicit \ + -Wreturn-type \ + -Wswitch \ + -Wcomment \ + -Wformat \ + -Wchar-subscripts \ + -Wparentheses \ + -Wpointer-arith \ + -Wcast-qual \ + -Wmissing-prototypes \ + -Wmissing-declarations \ + $(NULL) +endif + +# default optimization +ifeq ($(subst y,1,$(GLDEBUG)),1) +OPTIMIZER=-g +else +OPTIMIZER=-O2 +ifeq ($(OS),Linux) +WARN += -Wuninitialized +endif +endif + +# how to make dependencies +ifeq ($(OS),IRIX) +MKDEPOPT = -MDupdate Makedepend +endif +ifeq ($(OS),Linux) +MKDEPOPT = -MD +endif + +override GCOPTS = $(OPTIMIZER) $(MKDEPOPT) $(WARN) +override GCXXOPTS = $(OPTIMIZER) $(MKDEPOPT) $(WARN) + +# where is the default include directory? +# (we don't grab it off $ROOT, to avoid populating $ROOT with system +# includes. Yes, I know... You don't like the idea. +INCLDIR = /usr/include + +# where to install include files? +INCLUDE_LOCATION = $(ROOT)/usr/include + +# we would like to use nostdinc on Linux, but unfortunately, it also +# removes include directories with no well-known fixed path (ie. the +# gcc install directory). +ifeq ($(OS),IRIX) +override GCINCS = -nostdinc -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +override GCXXINCS = -nostdinc -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +endif +ifeq ($(OS),Linux) +override GCINCS = -I$(ROOT)$(INCLDIR) +override GCXXINCS = -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +endif + +ifeq ($(GLDEBUG),1) +override GCDEFS = -DDEBUG -UNDEBUG +override GCXXDEFS = -DDEBUG -UNDEBUG +else +override GCDEFS = -UDEBUG -DNDEBUG +override GCXXDEFS = -UDEBUG -DNDEBUG +endif + +# +# Cc flags, composed of: +# variable (V*) (set on the command line) +# local (L*) (set in the makefile) +# global (G*) (defined in this file, not overrideable) +# in that order. This is done so that the locally defined includes +# are searched before the globally defined ones. +# +CFLAGS = $(CVERSION) $(VCFLAGS) $(LCFLAGS) $(GCFLAGS) + +# +# Each of these three components is divided into defines (-D's and -U's), +# includes (-I's), and other options. By segregating the different +# classes of flag to cc, the defines (CDEFS) and includes (CINCS) can be +# easily given to other programs, e.g., lint. +# +# Notes: +# - The local assignments should be to LCOPTS, LCDEFS, and LCINCS, not to +# LCFLAGS, although CFLAGS will be correctly set if this is done. +# - If a program cannot be optimized, it should override the setting of +# OPTIMIZER with a line such as "OPTIMIZER=" in its make file. +# - If a program cannot be compiled with ANSI C, its makefile +# should set CVERSION=-cckr +# +VCFLAGS = $(VCDEFS) $(VCINCS) $(VCOPTS) +LCFLAGS = $(LCDEFS) $(LCINCS) $(LCOPTS) +GCFLAGS = $(GCDEFS) $(GCINCS) $(GCOPTS) + +COPTS = $(VCOPTS) $(LCOPTS) $(GCOPTS) +CDEFS = $(VCDEFS) $(LCDEFS) $(GCDEFS) +CINCS = $(VCINCS) $(LCINCS) $(GCINCS) + +# +# CXX flags are decomposed using the same hierarchy as C flags. +# +CXXFLAGS = $(CVERSION) $(VCXXFLAGS) $(LCXXFLAGS) $(GCXXFLAGS) + +VCXXFLAGS = $(VCXXDEFS) $(VCXXINCS) $(VCXXOPTS) +LCXXFLAGS = $(LCXXDEFS) $(LCXXINCS) $(LCXXOPTS) +GCXXFLAGS = $(GCXXDEFS) $(GCXXINCS) $(GCXXOPTS) + +CXXOPTS = $(VCXXOPTS) $(LCXXOPTS) $(GCXXOPTS) +CXXDEFS = $(VCXXDEFS) $(LCXXDEFS) $(GCXXDEFS) +CXXINCS = $(VCXXINCS) $(LCXXINCS) $(GCXXINCS) + +# +# Do something for the linker +# +# +# Library paths (-L's) are part of LDOPTS. +# Libraries (-l's) are part of LDLIBS. +# This is done so that there is a guarantee that all library paths are +# included before the libraries. +# +override GLDOPTS= +override GLDDSOOPTS= +ifeq ($(OS),IRIX) +override GLDOPTS += -L$(ROOT)/usr/lib32 +override GLDDSOOPTS += -L$(ROOT)/usr/lib32 +endif +ifeq ($(OS),Linux) +override GLDOPTS += -L$(ROOT)/usr/lib -L$(XTOPDIR)/xc/exports/lib +override GLDDSOOPTS += -L$(ROOT)/usr/lib -L$(XTOPDIR)/xc/exports/lib +endif + +# options used for DSO's. +ifeq ($(OS),IRIX) +DSONAMEOPT = -soname $(DSONAME) +ifneq ($(DSOEXPORTS),) +DSOEXPORTSOPT = -exports_file $(DSOEXPORTS) +endif +override GLDDSOOPTS += -elf -shared -all $(DSOEXPORTSOPT) $(DSONAMEOPT) +endif + +ifeq ($(OS),Linux) +DSONAMEOPT = -soname=$(DSONAME) +ifneq ($(DSOEXPORTS),) +DSOEXPORTSOPT = $(addprefix -u ,$(shell cat $(DSOEXPORTS))) +else +DSOEXPORTSOPT = --whole-archive +endif +override GLDDSOOPTS += -shared $(DSOEXPORTSOPT) $(DSONAMEOPT) +endif + +LDDSOOPTS = $(VLDDSOOPTS) $(LLDDSOOPTS) $(GLDDSOOPTS) +LDDSOLIBS = $(VLDDSOLIBS) $(LLDDSOLIBS) $(GLDDSOLIBS) +LDDSOFLAGS = $(LDDSOOPTS) $(LDDSOLIBS) $(ENDIAN) + +LDOPTS = $(VLDOPTS) $(LLDOPTS) $(GLDOPTS) +LDLIBS = $(VLDLIBS) $(LLDLIBS) $(GLDLIBS) +LDFLAGS = $(LDOPTS) $(LDLIBS) $(ENDIAN) + +# where to install libraries +ifeq ($(OS),IRIX) +OBJECT_STYLE = N32 +LIB_LOCATION = $(ROOT)/usr/lib32 +endif +ifeq ($(OS),Linux) +LIB_LOCATION = $(ROOT)/usr/lib +endif + +# +# as flags are just like cc flags. +# By default, ASTYLE is the same as CSTYLE, but some may need to make +# the asm more aggressive than 'C' and can set ASTYLE. Users of 'make' +# always get ASTYLE == CSTYLE +# +ASFLAGS = $(VASFLAGS) $(LASFLAGS) $(GASFLAGS) + +VASFLAGS = $(VASDEFS) $(VASINCS) $(VASOPTS) +LASFLAGS = $(LASDEFS) $(LASINCS) $(LASOPTS) +GASFLAGS = $(GASDEFS) $(GASINCS) $(GASOPTS) + +ASOPTS = $(VASOPTS) $(LASOPTS) $(GASOPTS) +ASDEFS = $(VASDEFS) $(LASDEFS) $(GASDEFS) +ASINCS = $(VASINCS) $(LASINCS) $(GASINCS) + +override GASOPTS = $(OPTIMIZER) $(MKDEPOPT) +override GASDEFS = $(GCDEFS) +override GASINCS = $(GCINCS) + +# +# the install command to use +# +INSTALL = $(ROOT)/usr/bin/gfxinstall +INSTALLFLAGS = -v -m 0444 + +# +# Convenient command macros that include the flags macros. +# +# You should always invoke make in makefiles via $(MAKE), as make passes +# all command-line variables through the environment to sub-makes. +# +# Never use just $(CCF), etc. in rules that link executables; LDFLAGS +# needs to be included after your objects in the command line. +# +ASF = $(AS) $(ASFLAGS) +CXXF = $(CXX) $(CXXFLAGS) +C++F = $(CXXF) +CCF = $(CC) $(CFLAGS) +LDF = $(LD) $(LDFLAGS) +LEXF = $(LEX) $(LFLAGS) +YACCF = $(YACC) $(YFLAGS) + +# Targets + +COMMONTARGS = clobber clean rmtargets + +ALLTARGS = headers headers_install libs libs_install install apps distsi \ + $(COMMONTARGS) + +# +# Rule macros for nonterminal makefiles that iterate over subdirectories, +# making the current target. Set *SUBDIRS to the relevant list of kids. +# +# Set NOSUBMESG to any value to suppress a warning that subdirectories +# are not present. This is useful with mandefs/rules +# +SUBDIR_MAKERULE= \ + if test ! -d $$d; then \ + if test "$(NOSUBMESG)" = "" ; then \ + echo "SKIPPING $$d: No such directory."; \ + fi \ + else \ + $(ECHO) "\t(cd $$d; $(MAKE) $${RULE:=$@})"; \ + (cd $$d; ${MAKE} $${RULE:=$@}); \ + fi + +SUBDIRS_MAKERULE= \ + @for d in $(SUBDIRS); do $(SUBDIR_MAKERULE); done + +# +# One problem with the above rules is that if a make fails, and -k is +# set, the entire for loop might stop. This is because make still can +# (and XPG requires it) exit with an error status if the -k option is set. +# This is an alternate rule for SUBDIRS when it is desired that -k keep +# working on the next SUBDIR if the previous one failed. Its not quite +# as compact a rule as the previous ones. +# A standard usage would be: +# default install $(COMMONTARGS): $(_FORCE) +# $(MAKE) __DORULE=$@ $(SUBDIRS) +# $(SUBDIRS): $(_FORCE) +# @$(NSUBDIR_MAKERULE) + +NSUBDIR_MAKERULE= \ + if test ! -d $@; then \ + if test "$(NOSUBMESG)" = "" ; then \ + echo "SKIPPING $@: No such directory."; \ + fi \ + else \ + echo "\t(cd $@; $(MAKE) $(__DORULE))"; \ + (cd $@; ${MAKE} $(__DORULE)); \ + fi + +# +# Convenience file list macros: +# - Commondefs defines the following lists: SOURCES, enumerating all +# source files; OBJECTS, the .o files derived from compilable source; +# and DIRT, which lists intermediates and temporary files to be +# removed by clean. +# - The including (parent) makefile may define source file lists for +# the standard suffixes: CFILES for .c, ASFILES for .s, YFILES for +# .y, etc. We combine all such lists into SOURCES. The including +# makefile need not define CFILES &c before including commondefs. +# +SOURCES=$(HFILES) $(ASFILES) $(CCFILES) $(C++FILES) $(CXXFILES) $(CFILES) \ + $(EFILES) $(FFILES) $(LFILES) $(PFILES) $(RFILES) $(SHFILES) $(YFILES) + +CXXO1=$(CXXFILES:.c++=.o) $(C++FILES:.c++=.o) $(CCFILES:.c++=.o) +CXXO2=$(CXXO1:.cxx=.o) +CXXO3=$(CXXO2:.C=.o) +CXXO4=$(CXXO3:.cc=.o) +CXXOALL=$(CXXO4) +YO1=$(YFILES:.y=.o) +YO2=$(YO1:.yxx=.o) +YO3=$(YO2:.Y=.o) +YOALL=$(YO3) +LO1=$(LFILES:.l=.o) +LO2=$(LO1:.lxx=.o) +LO3=$(LO2:.L=.o) +LOALL=$(LO3) +OBJECTS=$(ASFILES:.s=.o) $(CXXOALL) $(CFILES:.c=.o) $(EFILES:.e=.o) \ + $(FFILES:.f=.o) $(LOALL) $(PFILES:.p=.o) $(RFILES:.r=.o) \ + $(YOALL) + +# +# dependency file(s) +# +ifeq ($(OS),IRIX) +MKDEPFILE = Makedepend +endif +ifeq ($(OS),Linux) +MKDEPFILE = $(OBJECTS:.o=.d) +endif + +# +# distribution file +# +DISTFILE_EXT = Distfile +DISTFILE_INT = Distfile.int +ifeq ($(OS),IRIX) +DISTFILE = $(DISTFILE_EXT) +else +ifeq ($(OS),Linux) +DISTFILE = $(DISTFILE_EXT) +else +DISTFILE = $(DISTFILE_EXT) $(DISTFILE_INT) +endif +endif + +# +# dirt stuff +# +DIRT=$(GDIRT) $(VDIRT) $(LDIRT) +override GDIRT=*.o a.out core lex.yy.[co] y.tab.[cho] ar.tmp.* so_locations + +LOCALDEFS = ./localdefs +LOCALRULES = ./localrules + +-include $(LOCALDEFS) diff --git a/upstream-man-pages/man2/usr/include/make/commonrules b/upstream-man-pages/man2/usr/include/make/commonrules new file mode 100644 index 0000000..95f42d6 --- /dev/null +++ b/upstream-man-pages/man2/usr/include/make/commonrules @@ -0,0 +1,96 @@ +# Copyright (c) 1991-2000 Silicon Graphics, Inc. +# This document is licensed under the SGI Free Software B license. +# For details, see +# +# http://oss.sgi.com/projects/FreeB +# +# $Date$ $Revision$ +# $Header: //depot/main/tools/include/commonrules#21 $ + +# +# Notes: +# - After including $(ROOT)/usr/include/make/commondefs, a makefile may +# say ``include $(COMMONRULES)'' to get this file. +# - It is up to the including makefile to define a default rule before +# including $(COMMONRULES). +# - The parent makefile must define TARGETS in order for clobber to work. +# - If the parent makefile must overload the common targets with special +# rules (e.g. to perform recursive or subdirectory makes), then set +# COMMONPREF to some unique prefix before including $(COMMONRULES), +# and make sure that each common target depends on its prefixed name. +# For example, a makefile which passes common targets and install on +# to makes in subdirectories listed in DIRS might say +# +# COMMONPREF=xxx +# include $(COMMONRULES) +# +# $(COMMONTARGS) install: $(COMMONPREF)$$@ +# @for d in $(DIRS); do \ +# $(ECHO) "\tcd $$d; $(MAKE) $@"; \ +# cd $$d; $(MAKE) $@; cd ..; \ +# done +# +# Thus, all of the common rules plus install are passed to sub-makes +# *and* executed in the current makefile (as xxxclean, xxxclobber, +# xxxinstall, etc). SUBDIRS_MAKERULE in commondefs is a convenience +# macro that expands to the above loop. +# + + +# +# cleaning targets +# +$(COMMONPREF)clobber: $(COMMONPREF)clean $(COMMONPREF)rmtargets +ifdef MKDEPFILE + $(RM) -r $(MKDEPFILE) +endif + +$(COMMONPREF)clean: +ifdef DIRT + $(RM) -r $(DIRT) +endif + +$(COMMONPREF)rmtargets: +ifdef TARGETS + $(RM) -r $(TARGETS) +endif + +# +# targets to build distributions +# +-include $(DISTFILE) + +# build SI distribution +$(COMMONPREF)distsi: + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)/$(DISTDIR_SI) $(DISTFILES_SI) + @$(ECHO) "" + +# build OSS distribution +$(COMMONPREF)distoss: + @$(INSTALL) $(INSTALLFLAGS_OSS) -F $(DIST)/$(DISTDIR_OSS) $(DISTFILES_OSS) + @$(ECHO) "" + +# +# additional target for .cxx files. (gmake only likes .C and .cc) +# +%.o : %.cxx + $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@ + +# +# preprocessor only target +# +%.i : %.c + $(CC) -E $(CPPFLAGS) $(CFLAGS) $< | $(SED) -e 's/^ $$//' | $(UNIQ) > $@ + +%.i : %.cc %.C %.cxx + $(CXX) -E $(CPPFLAGS) $(CXXFLAGS) $< | $(SED) -e 's/^ $$//' | $(UNIQ) > $@ + +# +# include the make dependency file(s), if they exist +# +-include $(MKDEPFILE) + +# +# Local make rules +# +-include $(LOCALRULES) diff --git a/upstream-man-pages/man2/usr/include/make/commonrules.win32 b/upstream-man-pages/man2/usr/include/make/commonrules.win32 new file mode 100644 index 0000000..118b10c --- /dev/null +++ b/upstream-man-pages/man2/usr/include/make/commonrules.win32 @@ -0,0 +1,109 @@ + + +.SUFFIXES: .l .y .o + +# +# targets for lex and yacc +# +.l.c: + $(RM) $@ + $(LEX) $(LFLAGS) $< + $(MV) lex.yy.c $@ + +.y.c: + $(RM) $@ + $(YACC) $(YFLAGS) $< + $(MV) y.tab.c $@ + +.o.obj: + ; + +# +# target to create preprocessor output file from .c file (for debugging) +# +.c.i: + $(RM) $@ + $(CC) $(USER_C_FLAGS) -E $< > $*.i + +# +# main target (first) resolves to makefile.def's main target +# +default: all + +# +# This has to be here, for dependencies +# +INCLUDES = $(VCINCS); $(LCINCS); $(GCINCS) + + +# +# cleaning targets +# +$(COMMONPREF)clobber: $(COMMONPREF)clobber_subdirs + $(RM) $(DIRT) $(TARGETS) obj$(BUILD_ALT_DIR) + +$(COMMONPREF)clean: $(COMMONPREF)clean_subdirs + $(RM) $(DIRT) + +$(COMMONPREF)rmtargets: $(COMMONPREF)rmtargets_subdirs + $(RM) $(TARGETS) + +# +# targets to build distributions +# +!IF EXIST($(DISTFILE)) +!INCLUDE $(DISTFILE) +!ENDIF + +$(COMMONPREF)distddk: $(COMMONPREF)distddk_subdirs + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)$(DISTDIR_DDK) $(DISTFILES_DDK) + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)$(DISTDIR_DDK) $(DISTFILES_DDK2) + @$(ECHO) "" + +$(COMMONPREF)clobber_subdirs: + +!IFDEF DIRS +# +# DIRS defined. We have to do subdirectories +# +CLOBBER_SUBDIRS=$(DIRS:.dir=.clobber) +CLEAN_SUBDIRS=$(DIRS:.dir=.clean) +RMTARGETS_SUBDIRS=$(DIRS:.dir=.rmtargets) +DISTDDK_SUBDIRS=$(DIRS:.dir=.distddk) + +$(COMMONPREF)clobber_subdirs: $(CLOBBER_SUBDIRS) + +$(COMMONPREF)clean_subdirs: $(CLEAN_SUBDIRS) + +$(COMMONPREF)rmtargets_subdirs: $(RMTARGETS_SUBDIRS) + +$(COMMONPREF)distddk_subdirs: $(DISTDDK_SUBDIRS) + +$(CLOBBER_SUBDIRS): + @cd $* + @echo === clobbering $* === + @$(MAKE) -nologo -f Makefile.win32 clobber + @cd .. + +$(CLEAN_SUBDIRS): + @cd $* + @echo === cleaning $* === + @$(MAKE) -nologo -f Makefile.win32 clean + @cd .. + +$(RMTARGETS_SUBDIRS): + @cd $* + @echo === removing targets in $* === + @$(MAKE) -nologo -f Makefile.win32 rmtargets + @cd .. + +$(DISTDDK_SUBDIRS): + @cd $* + @echo === making DDK distribution in $* === + @$(MAKE) -nologo -f Makefile.win32 distddk + @cd .. +!ELSE + +$(COMMONPREF)clobber_subdirs $(COMMONPREF)clean_subdirs $(COMMONPREF)rmtargets_subdirs $(COMMONPREF)distddk_subdirs: + +!ENDIF diff --git a/upstream-man-pages/man2/usr/include/make/linuxdefs b/upstream-man-pages/man2/usr/include/make/linuxdefs new file mode 100644 index 0000000..a0670dc --- /dev/null +++ b/upstream-man-pages/man2/usr/include/make/linuxdefs @@ -0,0 +1,31 @@ + +/* + * ident "$Header$" + * + * Copyright (c) 1991-2000 Silicon Graphics, Inc. + * This document is licensed under the SGI Free Software B license. + * For details, see + * + * http://oss.sgi.com/projects/FreeB + * + */ + +/* + * defines to make gcc's -ansi more-or-less equivalent to SGI's -xansi + */ + +#if defined(__i386__) +#define i386 1 +#endif + +#if defined(__linux__) +#define linux 1 +#endif + +#if defined(__unix__) +#define unix 1 +#endif + +#if !defined(_BSD_SOURCE) +#define _BSD_SOURCE 1 +#endif diff --git a/upstream-man-pages/man2/xhtml/Makefile b/upstream-man-pages/man2/xhtml/Makefile new file mode 100644 index 0000000..a573b86 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/Makefile @@ -0,0 +1,388 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc --nonet +SED = sed + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and specifically the +# stylesheet to convert Docbook+MathML => XHTML+MathML +DB2XHTML = opengl-man.xsl + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +%.xml: ../%.xml opengl-man.xsl + $(XSLT) --xinclude -o $@.tmp $(DB2XHTML) $< + $(SED) 's/\n $@ + $(RM) $@.tmp + +# ARB Ecosystem man pages +ARBXML = \ + glBlendEquationSeparate.xml \ + glStencilFuncSeparate.xml \ + glStencilMaskSeparate.xml \ + glStencilOpSeparate.xml + +# SuperBible GL 1.5 man pages +SUPERBIBLEXML = \ + glBeginQuery.xml \ + glBindBuffer.xml \ + glBufferData.xml \ + glBufferSubData.xml \ + glDeleteBuffers.xml \ + glDeleteQueries.xml \ + glGenBuffers.xml \ + glGenQueries.xml \ + glGetBufferParameteriv.xml \ + glGetBufferPointerv.xml \ + glGetBufferSubData.xml \ + glGetQueryiv.xml \ + glGetQueryObject.xml \ + glIsBuffer.xml \ + glIsQuery.xml \ + glMapBuffer.xml + +# 3Dlabs GL 2.0 man pages +3DLABSXML = \ + glAttachShader.xml \ + glBindAttribLocation.xml \ + glCompileShader.xml \ + glCreateProgram.xml \ + glCreateShader.xml \ + glDeleteProgram.xml \ + glDeleteShader.xml \ + glDetachShader.xml \ + glDrawBuffers.xml \ + glEnableVertexAttribArray.xml \ + glGetActiveAttrib.xml \ + glGetActiveUniform.xml \ + glGetAttachedShaders.xml \ + glGetAttribLocation.xml \ + glGetProgram.xml \ + glGetProgramInfoLog.xml \ + glGetShader.xml \ + glGetShaderInfoLog.xml \ + glGetShaderSource.xml \ + glGetUniform.xml \ + glGetUniformLocation.xml \ + glGetVertexAttrib.xml \ + glGetVertexAttribPointerv.xml \ + glIsProgram.xml \ + glIsShader.xml \ + glLinkProgram.xml \ + glShaderSource.xml \ + glUniform.xml \ + glUseProgram.xml \ + glValidateProgram.xml \ + glVertexAttrib.xml \ + glVertexAttribPointer.xml + +# SGI OpenGL 1.4 man pages +SGIGLXML = \ + glAccum.xml \ + glActiveTexture.xml \ + glAlphaFunc.xml \ + glAreTexturesResident.xml \ + glArrayElement.xml \ + glBegin.xml \ + glBindTexture.xml \ + glBitmap.xml \ + glBlendColor.xml \ + glBlendEquation.xml \ + glBlendFuncSeparate.xml \ + glBlendFunc.xml \ + glCallLists.xml \ + glCallList.xml \ + glClearAccum.xml \ + glClearColor.xml \ + glClearDepth.xml \ + glClearIndex.xml \ + glClearStencil.xml \ + glClear.xml \ + glClientActiveTexture.xml \ + glClipPlane.xml \ + glColorMask.xml \ + glColorMaterial.xml \ + glColorPointer.xml \ + glColorSubTable.xml \ + glColorTableParameter.xml \ + glColorTable.xml \ + glColor.xml \ + glCompressedTexImage1D.xml \ + glCompressedTexImage2D.xml \ + glCompressedTexImage3D.xml \ + glCompressedTexSubImage1D.xml \ + glCompressedTexSubImage2D.xml \ + glCompressedTexSubImage3D.xml \ + glConvolutionFilter1D.xml \ + glConvolutionFilter2D.xml \ + glConvolutionParameter.xml \ + glCopyColorSubTable.xml \ + glCopyColorTable.xml \ + glCopyConvolutionFilter1D.xml \ + glCopyConvolutionFilter2D.xml \ + glCopyPixels.xml \ + glCopyTexImage1D.xml \ + glCopyTexImage2D.xml \ + glCopyTexSubImage1D.xml \ + glCopyTexSubImage2D.xml \ + glCopyTexSubImage3D.xml \ + glCullFace.xml \ + glDeleteLists.xml \ + glDeleteTextures.xml \ + glDepthFunc.xml \ + glDepthMask.xml \ + glDepthRange.xml \ + glDrawArrays.xml \ + glDrawBuffer.xml \ + glDrawElements.xml \ + glDrawElementsInstanced.xml \ + glDrawPixels.xml \ + glDrawRangeElements.xml \ + glEdgeFlagPointer.xml \ + glEdgeFlag.xml \ + glEnableClientState.xml \ + glEnable.xml \ + glEvalCoord.xml \ + glEvalMesh.xml \ + glEvalPoint.xml \ + glFeedbackBuffer.xml \ + glFinish.xml \ + glFlush.xml \ + glFogCoordPointer.xml \ + glFogCoord.xml \ + glFog.xml \ + glFrontFace.xml \ + glFrustum.xml \ + glGenLists.xml \ + glGenTextures.xml \ + glGetClipPlane.xml \ + glGetColorTableParameter.xml \ + glGetColorTable.xml \ + glGetCompressedTexImage.xml \ + glGetConvolutionFilter.xml \ + glGetConvolutionParameter.xml \ + glGetError.xml \ + glGetHistogramParameter.xml \ + glGetHistogram.xml \ + glGetLight.xml \ + glGetMap.xml \ + glGetMaterial.xml \ + glGetMinmaxParameter.xml \ + glGetMinmax.xml \ + glGetPixelMap.xml \ + glGetPointerv.xml \ + glGetPolygonStipple.xml \ + glGetSeparableFilter.xml \ + glGetString.xml \ + glGetTexEnv.xml \ + glGetTexGen.xml \ + glGetTexImage.xml \ + glGetTexLevelParameter.xml \ + glGetTexParameter.xml \ + glGet.xml \ + glHint.xml \ + glHistogram.xml \ + glIndexMask.xml \ + glIndexPointer.xml \ + glIndex.xml \ + glInitNames.xml \ + glInterleavedArrays.xml \ + glIsEnabled.xml \ + glIsList.xml \ + glIsTexture.xml \ + glLightModel.xml \ + glLight.xml \ + glLineStipple.xml \ + glLineWidth.xml \ + glListBase.xml \ + glLoadIdentity.xml \ + glLoadMatrix.xml \ + glLoadName.xml \ + glLoadTransposeMatrix.xml \ + glLogicOp.xml \ + glMap1.xml \ + glMap2.xml \ + glMapGrid.xml \ + glMaterial.xml \ + glMatrixMode.xml \ + glMinmax.xml \ + glMultiDrawArrays.xml \ + glMultiDrawElements.xml \ + glMultiTexCoord.xml \ + glMultMatrix.xml \ + glMultTransposeMatrix.xml \ + glNewList.xml \ + glNormalPointer.xml \ + glNormal.xml \ + glOrtho.xml \ + glPassThrough.xml \ + glPixelMap.xml \ + glPixelStore.xml \ + glPixelTransfer.xml \ + glPixelZoom.xml \ + glPointParameter.xml \ + glPointSize.xml \ + glPolygonMode.xml \ + glPolygonOffset.xml \ + glPolygonStipple.xml \ + glPrioritizeTextures.xml \ + glPushAttrib.xml \ + glPushClientAttrib.xml \ + glPushMatrix.xml \ + glPushName.xml \ + glRasterPos.xml \ + glReadBuffer.xml \ + glReadPixels.xml \ + glRect.xml \ + glRenderMode.xml \ + glResetHistogram.xml \ + glResetMinmax.xml \ + glRotate.xml \ + glSampleCoverage.xml \ + glScale.xml \ + glScissor.xml \ + glSecondaryColorPointer.xml \ + glSecondaryColor.xml \ + glSelectBuffer.xml \ + glSeparableFilter2D.xml \ + glShadeModel.xml \ + glStencilFunc.xml \ + glStencilMask.xml \ + glStencilOp.xml \ + glTexCoordPointer.xml \ + glTexCoord.xml \ + glTexEnv.xml \ + glTexGen.xml \ + glTexImage1D.xml \ + glTexImage2D.xml \ + glTexImage3D.xml \ + glTexParameter.xml \ + glTexSubImage1D.xml \ + glTexSubImage2D.xml \ + glTexSubImage3D.xml \ + glTranslate.xml \ + glVertexPointer.xml \ + glVertex.xml \ + glViewport.xml \ + glWindowPos.xml + +# SGI GLU 1.3 man pages +SGIGLUXML = \ + gluBeginCurve.xml \ + gluBeginPolygon.xml \ + gluBeginSurface.xml \ + gluBeginTrim.xml \ + gluBuild1DMipmapLevels.xml \ + gluBuild1DMipmaps.xml \ + gluBuild2DMipmapLevels.xml \ + gluBuild2DMipmaps.xml \ + gluBuild3DMipmapLevels.xml \ + gluBuild3DMipmaps.xml \ + gluCheckExtension.xml \ + gluCylinder.xml \ + gluDeleteNurbsRenderer.xml \ + gluDeleteQuadric.xml \ + gluDeleteTess.xml \ + gluDisk.xml \ + gluErrorString.xml \ + gluGetNurbsProperty.xml \ + gluGetString.xml \ + gluGetTessProperty.xml \ + gluLoadSamplingMatrices.xml \ + gluLookAt.xml \ + gluNewNurbsRenderer.xml \ + gluNewQuadric.xml \ + gluNewTess.xml \ + gluNextContour.xml \ + gluNurbsCallbackDataEXT.xml \ + gluNurbsCallbackData.xml \ + gluNurbsCallback.xml \ + gluNurbsCurve.xml \ + gluNurbsProperty.xml \ + gluNurbsSurface.xml \ + gluOrtho2D.xml \ + gluPartialDisk.xml \ + gluPerspective.xml \ + gluPickMatrix.xml \ + gluProject.xml \ + gluPwlCurve.xml \ + gluQuadricCallback.xml \ + gluQuadricDrawStyle.xml \ + gluQuadricNormals.xml \ + gluQuadricOrientation.xml \ + gluQuadricTexture.xml \ + gluScaleImage.xml \ + gluSphere.xml \ + gluTessBeginContour.xml \ + gluTessBeginPolygon.xml \ + gluTessCallback.xml \ + gluTessEndPolygon.xml \ + gluTessNormal.xml \ + gluTessProperty.xml \ + gluTessVertex.xml \ + gluUnProject4.xml \ + gluUnProject.xml + +# SGI GLX 1.4 man pages +SGIGLXXML = \ + glXChooseFBConfig.xml \ + glXChooseVisual.xml \ + glXCopyContext.xml \ + glXCreateContext.xml \ + glXCreateGLXPixmap.xml \ + glXCreateNewContext.xml \ + glXCreatePbuffer.xml \ + glXCreatePixmap.xml \ + glXCreateWindow.xml \ + glXDestroyContext.xml \ + glXDestroyGLXPixmap.xml \ + glXDestroyPbuffer.xml \ + glXDestroyPixmap.xml \ + glXDestroyWindow.xml \ + glXFreeContextEXT.xml \ + glXGetClientString.xml \ + glXGetConfig.xml \ + glXGetContextIDEXT.xml \ + glXGetCurrentContext.xml \ + glXGetCurrentDisplay.xml \ + glXGetCurrentDrawable.xml \ + glXGetCurrentReadDrawable.xml \ + glXGetFBConfigAttrib.xml \ + glXGetFBConfigs.xml \ + glXGetProcAddress.xml \ + glXGetSelectedEvent.xml \ + glXGetVisualFromFBConfig.xml \ + glXImportContextEXT.xml \ + glXIntro.xml \ + glXIsDirect.xml \ + glXMakeContextCurrent.xml \ + glXMakeCurrent.xml \ + glXQueryContextInfoEXT.xml \ + glXQueryContext.xml \ + glXQueryDrawable.xml \ + glXQueryExtensionsString.xml \ + glXQueryExtension.xml \ + glXQueryServerString.xml \ + glXQueryVersion.xml \ + glXSelectEvent.xml \ + glXSwapBuffers.xml \ + glXUseXFont.xml \ + glXWaitGL.xml \ + glXWaitX.xml + +# XML man page source and XHTML targets +GLXML = $(SGIGLXML) $(3DLABSXML) $(SUPERBIBLEXML) $(ARBXML) +GLUXML = $(SGIGLUXML) +GLXXML = $(SGIGLXXML) +XML = $(GLXML) $(GLUXML) $(GLXXML) + +default: $(XML) + +clean: + $(RM) $(TEX_FILES) *.log *.aux *.toc *.dvi *.out + +clobber: clean + $(RM) $(XML) $(PDF_FILES) diff --git a/upstream-man-pages/man2/xhtml/ctop.xsl b/upstream-man-pages/man2/xhtml/ctop.xsl new file mode 100644 index 0000000..6f4b7c1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/ctop.xsl @@ -0,0 +1,1319 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + e + + i + + + + + + + + + E + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (-1) + + + + + + + + + + + + + + + + + λ + + . + + + + + + + + + + + + + + + + + + + + +id + + + + +domain + + + + +codomain + + + + +image + + + + + + + + + + +{ + + + + +   if   + + + + + + + + + + + + + +/ + + + + + + + + + + + + + +! + + + + + + + + + / + + + + + + + + + + max + + + + + + + max + + + + + + + + + + + + + + + + + + + + + + + + + + + + ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + + mod + + + + + + + + + + + ( + + + + + × + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + +gcd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + xor + + + + + + + +¬ + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + . + + + + + + + + + + +| + +| + + + + + + + + + +¯ + + + + + + arg + + + + + + + + + + + + + + + + lcm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + = + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + + < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | + + + + + + + + + + + + + + + d + + + + + + + + + + + + + + + + d + + d + + + + d + d + + + + + + + + + + D + + +, + + + + + + + + + + + + + + + + + ++ + + ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + + + + + +div + + + + +grad + + + + +curl + + + + + +2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +| + +| + + + + + + + + + + × + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + limit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +e + + + + + + + + + + + + +log + + + +log + + + + + + + + + + + + + + + + + + , + + + + + + + + +σ + + + + + + +σ +( + +) + +2 + + + + + + +median + + + + + +mode + + + + + + + + + + + + + + + + + + + + +( + + + + + +) + + + + + + +( + + + +) + + + + + + + + + + + + + + + +det + + + + + + + + +| + + + +| + + + + + + + + + +T + + + + + + + + + + + + + , + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + +Z + + + + +R + + + + +Q + + + + +N + + + + +C + + + + +P + + + + + e + + + + + i + + + + + NaN + + + + + true + + + + + false + + + + + + + + + + + π + + + + + γ + + + + + + + + + + + + + + + ( + + + + + + + + + ) + + + + + + + + + ( + + + + + + + + ) + + + + + + + + + + + + | + + + + + + , + + + + + + + + + diff --git a/upstream-man-pages/man2/xhtml/glAccum.xml b/upstream-man-pages/man2/xhtml/glAccum.xml new file mode 100644 index 0000000..6c1f6d4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glAccum.xml @@ -0,0 +1,198 @@ + + +glAccum

Name

glAccum — operate on the accumulation buffer

C Specification

void glAccum(GLenum  op,
 GLfloat  value);

Parameters

op

+ Specifies the accumulation buffer operation. + Symbolic constants + GL_ACCUM, + GL_LOAD, + GL_ADD, + GL_MULT, + and + GL_RETURN are accepted. +

value

+ Specifies a floating-point value used in the accumulation buffer operation. + op determines how value is used. +

Description

+ The accumulation buffer is an extended-range color buffer. + Images are not rendered into it. + Rather, + images rendered into one of the color buffers + are added to the contents of the accumulation buffer after rendering. + Effects such as antialiasing (of points, lines, and polygons), + motion blur, + and depth of field can be created + by accumulating images generated with different transformation matrices. +

+ Each pixel in the accumulation buffer consists of + red, green, blue, and alpha values. + The number of bits per component in the accumulation buffer + depends on the implementation. You can examine this number + by calling glGetIntegerv four times, + with arguments GL_ACCUM_RED_BITS, + GL_ACCUM_GREEN_BITS, + GL_ACCUM_BLUE_BITS, + and GL_ACCUM_ALPHA_BITS. + Regardless of the number of bits per component, + the range of values stored by each component is + + + + -1 + 1 + + . + The accumulation buffer pixels are mapped one-to-one with frame buffer pixels. +

+ glAccum operates on the accumulation buffer. + The first argument, op, + is a symbolic constant that selects an accumulation buffer operation. + The second argument, value, + is a floating-point value to be used in that operation. + Five operations are specified: + GL_ACCUM, GL_LOAD, GL_ADD, + GL_MULT, and GL_RETURN. +

+ All accumulation buffer operations are limited + to the area of the current scissor box and applied identically to + the red, green, blue, and alpha components of each pixel. + If a glAccum operation results in a value outside the range + + + + -1 + 1 + + , + the contents of an accumulation buffer pixel component are undefined. +

+ The operations are as follows: +

GL_ACCUM

+ Obtains R, G, B, and A values + from the buffer currently selected for reading (see glReadBuffer). + Each component value is divided by + + + + 2 + n + + - + 1 + + , + where + n + is the number of bits allocated to each color component + in the currently selected buffer. + The result is a floating-point value in the range + + + + 0 + 1 + + , + which is multiplied by value and added to the corresponding pixel component + in the accumulation buffer, + thereby updating the accumulation buffer. +

GL_LOAD

+ Similar to GL_ACCUM, + except that the current value in the accumulation buffer is not used + in the calculation of the new value. + That is, the R, G, B, and A values from the currently selected buffer + are divided by + + + + 2 + n + + - + 1 + + , + multiplied by value, + and then stored in the corresponding accumulation buffer cell, + overwriting the current value. +

GL_ADD

+ Adds value to each R, G, B, and A + in the accumulation buffer. +

GL_MULT

+ Multiplies each R, G, B, and A + in the accumulation buffer by value and returns the scaled component + to its corresponding accumulation buffer location. +

GL_RETURN

+ Transfers accumulation buffer values + to the color buffer or buffers currently selected for writing. + Each R, G, B, and A component is multiplied by value, + then multiplied by + + + + 2 + n + + - + 1 + + , + clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + and stored + in the corresponding display buffer cell. + The only fragment operations that are applied to this transfer are + pixel ownership, + scissor, + dithering, + and color writemasks. +

+ To clear the accumulation buffer, call glClearAccum with R, G, B, + and A values to set it to, then call glClear with the + accumulation buffer enabled. +

Notes

+ Only pixels within the current scissor box are updated by a + glAccum operation. +

Errors

+ GL_INVALID_ENUM is generated if op is not an accepted value. +

+ GL_INVALID_OPERATION is generated if there is no accumulation buffer. +

+ GL_INVALID_OPERATION is generated if glAccum + is executed between the execution of + glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ACCUM_RED_BITS +

+ glGet with argument GL_ACCUM_GREEN_BITS +

+ glGet with argument GL_ACCUM_BLUE_BITS +

+ glGet with argument GL_ACCUM_ALPHA_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glActiveTexture.xml b/upstream-man-pages/man2/xhtml/glActiveTexture.xml new file mode 100644 index 0000000..1114135 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glActiveTexture.xml @@ -0,0 +1,39 @@ + + +glActiveTexture

Name

glActiveTexture — select active texture unit

C Specification

void glActiveTexture(GLenum  texture);

Parameters

texture

+ Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + two. texture must be one of + GL_TEXTUREi, + where + i ranges from 0 to the larger of (GL_MAX_TEXTURE_COORDS - 1) + and (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + The initial value is GL_TEXTURE0. +

Description

+ glActiveTexture selects which texture unit subsequent texture state calls will + affect. The number of texture units an implementation supports is + implementation dependent, but must be at least 2. +

+ Vertex arrays are client-side GL resources, which are selected by the + glClientActiveTexture routine. +

Notes

+ glActiveTexture is only supported if the GL version is 1.3 or greater, or if + ARB_multitexture is included in the string returned by + glGetString when called with the argument GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where i ranges from 0 to the larger of (GL_MAX_TEXTURE_COORDS - 1) + and (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). +

Associated Gets

+ glGet with argument GL_ACTIVE_TEXTURE, GL_MAX_TEXTURE_COORDS, or GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glAlphaFunc.xml b/upstream-man-pages/man2/xhtml/glAlphaFunc.xml new file mode 100644 index 0000000..afcb70e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glAlphaFunc.xml @@ -0,0 +1,96 @@ + + +glAlphaFunc

Name

glAlphaFunc — specify the alpha test function

C Specification

void glAlphaFunc(GLenum  func,
 GLclampf  ref);

Parameters

func

+ Specifies the alpha comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value that incoming alpha values are compared to. + This value is clamped to the range + + + + 0 + 1 + + , + where 0 represents the lowest possible alpha value + and 1 the highest possible value. + The initial reference value is 0. +

Description

+ The alpha test discards fragments depending on the outcome of a comparison + between an incoming fragment's alpha value and a constant reference value. + glAlphaFunc specifies the reference value and the comparison function. + The comparison is performed only if alpha testing is enabled. By + default, it is not enabled. + (See + glEnable and glDisable of GL_ALPHA_TEST.) +

+ func and ref specify the conditions under which + the pixel is drawn. + The incoming alpha value is compared to ref + using the function specified by func. + If the value passes the comparison, + the incoming fragment is drawn + if it also passes subsequent stencil and depth buffer tests. + If the value fails the comparison, + no change is made to the frame buffer at that pixel location. The + comparison functions are as follows: +

GL_NEVER

+ Never passes. +

GL_LESS

+ Passes if the incoming alpha value is less than the reference value. +

GL_EQUAL

+ Passes if the incoming alpha value is equal to the reference value. +

GL_LEQUAL

+ Passes if the incoming alpha value is less than or equal to the reference value. +

GL_GREATER

+ Passes if the incoming alpha value is greater than the reference value. +

GL_NOTEQUAL

+ Passes if the incoming alpha value is not equal to the reference value. +

GL_GEQUAL

+ Passes if the incoming alpha value is greater than or equal to + the reference value. +

GL_ALWAYS

+ Always passes (initial value). +

+ glAlphaFunc operates on all pixel write operations, + including those resulting from the scan conversion of points, + lines, + polygons, + and bitmaps, + and from pixel draw and copy operations. + glAlphaFunc does not affect screen clear operations. +

Notes

+ Alpha testing is performed only in RGBA mode. +

Errors

+ GL_INVALID_ENUM is generated if func is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glAlphaFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ALPHA_TEST_FUNC +

+ glGet with argument GL_ALPHA_TEST_REF +

+ glIsEnabled with argument GL_ALPHA_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glAreTexturesResident.xml b/upstream-man-pages/man2/xhtml/glAreTexturesResident.xml new file mode 100644 index 0000000..57c8eb9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glAreTexturesResident.xml @@ -0,0 +1,72 @@ + + +glAreTexturesResident

Name

glAreTexturesResident — determine if textures are loaded in texture memory

C Specification

GLboolean glAreTexturesResident(GLsizei  n,
 const GLuint *  textures,
 GLboolean *  residences);

Parameters

n

+ Specifies the number of textures to be queried. +

textures

+ Specifies an array containing the names of the textures to be queried. +

residences

+ Specifies an array in which the texture residence status is returned. + The residence status of a texture named by an element of textures is + returned in the corresponding element of residences. +

Description

+ GL establishes + a ``working set'' of textures that are resident in texture memory. + These textures can be bound to a texture target much more efficiently + than textures that are not resident. +

+ glAreTexturesResident queries the texture residence status of the n textures named by + the elements of textures. + If all the named textures are resident, + glAreTexturesResident returns GL_TRUE, + and the contents of residences are undisturbed. + If not all the named textures are resident, glAreTexturesResident returns GL_FALSE, + and detailed status is returned in the n elements of residences. + If an element of residences is GL_TRUE, then the texture named by + the corresponding element of textures is resident. +

+ The residence status of a single bound texture may also be queried + by calling + glGetTexParameter with the target argument set to the + target to which the texture is bound, and the pname argument + set to GL_TEXTURE_RESIDENT. + This is the only way that the residence status of a default texture can be + queried. +

Notes

+ glAreTexturesResident is available only if the GL version is 1.1 or greater. +

+ glAreTexturesResident returns the residency status of the textures at the time of + invocation. It does not guarantee that the textures will remain + resident at any other time. +

+ If textures reside in virtual memory (there is no texture memory), they + are considered always resident. +

+ Some implementations may not load a texture until the first use of + that texture. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_VALUE is generated if any element in textures + is 0 or does not name a texture. In that case, the function returns + GL_FALSE and the contents of residences is indeterminate. +

+ GL_INVALID_OPERATION is generated if glAreTexturesResident is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexParameter with parameter name GL_TEXTURE_RESIDENT + retrieves the residence status of a currently bound texture. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glArrayElement.xml b/upstream-man-pages/man2/xhtml/glArrayElement.xml new file mode 100644 index 0000000..f7eb0fe --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glArrayElement.xml @@ -0,0 +1,59 @@ + + +glArrayElement

Name

glArrayElement — render a vertex using the specified vertex array element

C Specification

void glArrayElement(GLint  i);

Parameters

i

+ Specifies an index into the enabled vertex data arrays. +

Description

+ glArrayElement commands are used within glBegin/glEnd pairs to + specify vertex and attribute data for point, line, and polygon + primitives. If GL_VERTEX_ARRAY is enabled when glArrayElement is called, a + single vertex is drawn, using + vertex and attribute data taken from location i of the enabled + arrays. If GL_VERTEX_ARRAY is not enabled, no drawing occurs but + the attributes corresponding to the enabled arrays are modified. +

+ Use glArrayElement to construct primitives by indexing vertex data, rather than + by streaming through arrays of data in first-to-last order. Because + each call specifies only a single vertex, it is possible to explicitly + specify per-primitive attributes such as a single normal for each + triangle. +

+ Changes made to array data between the execution of glBegin and the + corresponding execution of glEnd may affect calls to glArrayElement that are made + within the same glBegin/glEnd period in nonsequential ways. + That is, a call to + glArrayElement that precedes a change to array data may + access the changed data, and a call that follows a change to array data + may access original data. +

Notes

+ glArrayElement is available only if the GL version is 1.1 or greater. +

+ glArrayElement is included in display lists. If glArrayElement is entered into a + display list, the necessary array data (determined by the array + pointers and enables) is also entered into the display list. Because + the array pointers and enables are client-side state, their values + affect display lists when the lists are created, not when the lists + are executed. +

Errors

+ GL_INVALID_VALUE may be generated if i is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glAttachShader.xml b/upstream-man-pages/man2/xhtml/glAttachShader.xml new file mode 100644 index 0000000..3cc1abd --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glAttachShader.xml @@ -0,0 +1,47 @@ + + +glAttachShader

Name

glAttachShader — Attaches a shader object to a program object

C Specification

void glAttachShader(GLuint  program,
 GLuint  shader);

Parameters

program

Specifies the program object to which a shader + object will be attached.

shader

Specifies the shader object that is to be attached.

Description

In order to create an executable, there must be a way to + specify the list of things that will be linked together. Program + objects provide this mechanism. Shaders that are to be linked + together in a program object must first be attached to that + program object. glAttachShader attaches the + shader object specified by shader to the + program object specified by program. This + indicates that shader will be included in + link operations that will be performed on + program.

All operations that can be performed on a shader object + are valid whether or not the shader object is attached to a + program object. It is permissible to attach a shader object to a + program object before source code has been loaded into the + shader object or before the shader object has been compiled. It + is permissible to attach multiple shader objects of the same + type because each may contain a portion of the complete shader. + It is also permissible to attach a shader object to more than + one program object. If a shader object is deleted while it is + attached to a program object, it will be flagged for deletion, + and deletion will not occur until + glDetachShader + is called to detach it from all program objects to which it is + attached.

Notes

glAttachShader + is available only if the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if either + program or shader + is not a value generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + shader is already attached to + program.

GL_INVALID_OPERATION is generated if + glAttachShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetAttachedShaders + with the handle of a valid program object

glIsProgram

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glBegin.xml b/upstream-man-pages/man2/xhtml/glBegin.xml new file mode 100644 index 0000000..5d10483 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBegin.xml @@ -0,0 +1,495 @@ + + +glBegin

Name

glBegin — delimit the vertices of a primitive or a group of like primitives

C Specification

void glBegin(GLenum  mode);

Parameters

mode

+ Specifies the primitive or primitives that will be created from vertices + presented between glBegin and the subsequent glEnd. + Ten symbolic constants are accepted: + GL_POINTS, + GL_LINES, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_TRIANGLES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_QUADS, + GL_QUAD_STRIP, and + GL_POLYGON. +

C Specification

void glEnd( void);

Description

+ glBegin and glEnd delimit the vertices that define a primitive or + a group of like primitives. + glBegin accepts a single argument that specifies in which of ten ways the + vertices are interpreted. + Taking + n + as an integer count starting at one, + and + N + as the total number of vertices specified, + the interpretations are as follows: +

GL_POINTS

+ Treats each vertex as a single point. + Vertex + n + defines point + n. + N + points are drawn. +

GL_LINES

+ Treats each pair of vertices as an independent line segment. + Vertices + + + + 2 + ⁢ + n + - + 1 + + + and + + + + 2 + ⁢ + n + + + define line + n. + + + + N + 2 + + + lines are drawn. +

GL_LINE_STRIP

+ Draws a connected group of line segments from the first vertex + to the last. + Vertices + n + and + + + + n + + + 1 + + + define line + n. + + + + N + - + 1 + + + lines are drawn. +

GL_LINE_LOOP

+ Draws a connected group of line segments from the first vertex + to the last, + then back to the first. + Vertices + n + and + + + + n + + + 1 + + + define line + n. + The last line, however, is defined by vertices + N + and + + + 1 + . + N + lines are drawn. +

GL_TRIANGLES

+ Treats each triplet of vertices as an independent triangle. + Vertices + + + + 3 + ⁢ + n + - + 2 + + , + + + + 3 + ⁢ + n + - + 1 + + , + and + + + + 3 + ⁢ + n + + + define triangle + n. + + + + N + 3 + + + triangles are drawn. +

GL_TRIANGLE_STRIP

+ Draws a connected group of triangles. One triangle is defined for each + vertex presented after the first two vertices. For odd + n, + vertices + n, + + + + n + + + 1 + + , + and + + + + n + + + 2 + + + define triangle + n. + For even + n, + vertices + + + + n + + + 1 + + , + n, + and + + + + n + + + 2 + + + define triangle + n. + + + + N + - + 2 + + + triangles are + drawn. +

GL_TRIANGLE_FAN

+ Draws a connected group of triangles. + One triangle is defined for each vertex presented after the first two vertices. + Vertices + + + 1 + , + + + + n + + + 1 + + , + and + + + + n + + + 2 + + + define triangle + n. + + + + N + - + 2 + + + triangles are drawn. +

GL_QUADS

+ Treats each group of four vertices as an independent quadrilateral. + Vertices + + + + 4 + ⁢ + n + - + 3 + + , + + + + 4 + ⁢ + n + - + 2 + + , + + + + 4 + ⁢ + n + - + 1 + + , + and + + + + 4 + ⁢ + n + + + define quadrilateral + n. + + + + N + 4 + + + quadrilaterals are drawn. +

GL_QUAD_STRIP

+ Draws a connected group of quadrilaterals. + One quadrilateral is defined for each pair of vertices presented + after the first pair. + Vertices + + + + 2 + ⁢ + n + - + 1 + + , + + + + 2 + ⁢ + n + + , + + + + 2 + ⁢ + n + + + 2 + + , + and + + + + 2 + ⁢ + n + + + 1 + + + define quadrilateral + n. + + + + + N + 2 + + - + 1 + + + quadrilaterals are drawn. + Note that the order in which vertices are used to construct a quadrilateral + from strip data is different from that used with independent data. +

GL_POLYGON

+ Draws a single, + convex polygon. + Vertices + + + 1 + + through + N + define this polygon. +

+ Only a subset of GL commands can be used between glBegin and glEnd. + The commands are + glVertex, + glColor, + glSecondaryColor, + glIndex, + glNormal, + glFogCoord, + glTexCoord, + glMultiTexCoord, + glVertexAttrib, + glEvalCoord, + glEvalPoint, + glArrayElement, + glMaterial, and + glEdgeFlag. + Also, + it is acceptable to use + glCallList or + glCallLists to execute + display lists that include only the preceding commands. + If any other GL command is executed between glBegin and glEnd, + the error flag is set and the command is ignored. +

+ Regardless of the value chosen for mode, + there is no limit to the number of vertices that can be defined + between glBegin and glEnd. + Lines, + triangles, + quadrilaterals, + and polygons that are incompletely specified are not drawn. + Incomplete specification results when either too few vertices are + provided to specify even a single primitive or when an incorrect multiple + of vertices is specified. The incomplete primitive is ignored; the rest are drawn. +

+ The minimum specification of vertices + for each primitive is as follows: + 1 for a point, + 2 for a line, + 3 for a triangle, + 4 for a quadrilateral, + and 3 for a polygon. + Modes that require a certain multiple of vertices are + GL_LINES (2), + GL_TRIANGLES (3), + GL_QUADS (4), + and GL_QUAD_STRIP (2). +

Errors

+ GL_INVALID_ENUM is generated if mode is set to an unaccepted value. +

+ GL_INVALID_OPERATION is generated if glBegin is executed between a + glBegin + and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if glEnd is executed without being + preceded by a glBegin. +

+ GL_INVALID_OPERATION is generated if a command other than + glVertex, + glColor, + glSecondaryColor, + glIndex, + glNormal, + glFogCoord, + glTexCoord, + glMultiTexCoord, + glVertexAttrib, + glEvalCoord, + glEvalPoint, + glArrayElement, + glMaterial, + glEdgeFlag, + glCallList, or + glCallLists is executed between + the execution of glBegin and the corresponding + execution glEnd. +

+ Execution of + glEnableClientState, + glDisableClientState, + glEdgeFlagPointer, + glFogCoordPointer, + glTexCoordPointer, + glColorPointer, + glSecondaryColorPointer, + glIndexPointer, + glNormalPointer, + glVertexPointer, + glVertexAttribPointer, + glInterleavedArrays, or + glPixelStore is not allowed after a call to glBegin and before + the corresponding call to glEnd, + but an error may or may not be generated. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBeginQuery.xml b/upstream-man-pages/man2/xhtml/glBeginQuery.xml new file mode 100644 index 0000000..e32db35 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBeginQuery.xml @@ -0,0 +1,68 @@ + + +glBeginQuery

Name

glBeginQuery — delimit the boundaries of a query object

C Specification

void glBeginQuery(GLenum  target,
 GLuint  id);

Parameters

target

+ Specifies the target type of query object established between + glBeginQuery and the subsequent glEndQuery. + The symbolic constant must be GL_SAMPLES_PASSED. +

id

+ Specifies the name of a query object. +

C Specification

void glEndQuery(GLenum  target);

Parameters

target

+ Specifies the target type of query object to be concluded. + The symbolic constant must be GL_SAMPLES_PASSED. +

Description

+ glBeginQuery and glEndQuery delimit the + boundaries of a query object. If a query object with name id does not yet exist it is created. +

+ When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter once for every sample that passes the depth test. When glEndQuery + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. +

Notes

+ If the samples-passed count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. +

+ An implementation may support 0 bits in its samples-passed counter, in which case query results are always undefined + and essentially useless. +

+ When GL_SAMPLE_BUFFERS is 0, the samples-passed counter will increment once for each fragment that passes + the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment the samples-passed + counter individually for each sample of a fragment that passes the depth test, or it may choose to increment the counter for + all samples of a fragment if any one of them passes the depth test. +

+ glBeginQuery and glEndQuery + are available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_SAMPLES_PASSED. +

+ GL_INVALID_OPERATION is generated if glBeginQuery is executed while + a query object of the same target is already active. +

+ GL_INVALID_OPERATION is generated if glEndQuery + is executed when a query object of the same target is not active. +

+ GL_INVALID_OPERATION is generated if id is 0. +

+ GL_INVALID_OPERATION is generated if id is the name of an already active query object. +

+ GL_INVALID_OPERATION is generated if glBeginQuery or + glEndQuery is executed between the execution of + glBegin and the corresponding execution of + glEnd. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glBindAttribLocation.xml b/upstream-man-pages/man2/xhtml/glBindAttribLocation.xml new file mode 100644 index 0000000..88d0537 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBindAttribLocation.xml @@ -0,0 +1,106 @@ + + +glBindAttribLocation

Name

glBindAttribLocation — Associates a generic vertex attribute index with a named attribute variable

C Specification

void glBindAttribLocation(GLuint  program,
 GLuint  index,
 const GLchar * name);

Parameters

program

Specifies the handle of the program object in + which the association is to be made.

index

Specifies the index of the generic vertex + attribute to be bound.

name

Specifies a null terminated string containing + the name of the vertex shader attribute variable to + which index is to be + bound.

Description

glBindAttribLocation is used to + associate a user-defined attribute variable in the program + object specified by program with a + generic vertex attribute index. The name of the user-defined + attribute variable is passed as a null terminated string in + name. The generic vertex attribute index + to be bound to this variable is specified by + index. When + program is made part of current state, + values provided via the generic vertex attribute + index will modify the value of the + user-defined attribute variable specified by + name.

If name refers to a matrix + attribute variable, index refers to the + first column of the matrix. Other matrix columns are then + automatically bound to locations index+1 + for a matrix of type mat2; index+1 and + index+2 for a matrix of type mat3; and + index+1, index+2, + and index+3 for a matrix of type + mat4.

This command makes it possible for vertex shaders to use + descriptive names for attribute variables rather than generic + variables that are numbered from 0 to + GL_MAX_VERTEX_ATTRIBS -1. The values sent + to each generic attribute index are part of current state, just + like standard vertex attributes such as color, normal, and + vertex position. If a different program object is made current + by calling + glUseProgram, + the generic vertex attributes are tracked in such a way that the + same values will be observed by attributes in the new program + object that are also bound to + index.

Attribute variable + name-to-generic attribute index bindings for a program object + can be explicitly assigned at any time by calling + glBindAttribLocation. Attribute bindings do + not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for generic attributes remain fixed (and their + values can be queried) until the next link command + occurs.

Applications are not allowed to bind any of the standard + OpenGL vertex attributes using this command, as they are bound + automatically when needed. Any attribute binding that occurs + after the program object has been linked will not take effect + until the next time the program object is linked.

Notes

glBindAttribLocation is available + only if the GL version is 2.0 or greater.

glBindAttribLocation can be called + before any vertex shader objects are bound to the specified + program object. It is also permissible to bind a generic + attribute index to an attribute variable name that is never used + in a vertex shader.

If name was bound previously, that + information is lost. Thus you cannot bind one user-defined + attribute variable to multiple indices, but you can bind + multiple user-defined attribute variables to the same + index.

Applications are allowed to bind more than one + user-defined attribute variable to the same generic vertex + attribute index. This is called aliasing, + and it is allowed only if just one of the aliased attributes is + active in the executable program, or if no path through the + shader consumes more than one attribute of a set of attributes + aliased to the same location. The compiler and linker are + allowed to assume that no aliasing is done and are free to + employ optimizations that work only in the absence of aliasing. + OpenGL implementations are not required to do error checking to + detect aliasing. Because there is no way to bind standard + attributes, it is not possible to alias generic attributes with + conventional ones (except for generic attribute 0).

Active attributes that are not explicitly bound will be + bound by the linker when + glLinkProgram + is called. The locations assigned can be queried by calling + glGetAttribLocation.

OpenGL copies the name string when + glBindAttribLocation is called, so an + application may free its copy of the name + string immediately after the function returns.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_OPERATION is generated if + name starts with the reserved prefix + "gl_".

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + glBindAttribLocation is executed between + the execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetActiveAttrib + with argument program

glGetAttribLocation + with arguments program and + name

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glBindBuffer.xml b/upstream-man-pages/man2/xhtml/glBindBuffer.xml new file mode 100644 index 0000000..b877045 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBindBuffer.xml @@ -0,0 +1,132 @@ + + +glBindBuffer

Name

glBindBuffer — bind a named buffer object

C Specification

void glBindBuffer(GLenum  target,
 GLuint  buffer);

Parameters

target

+ Specifies the target to which the buffer object is bound. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

buffer

+ Specifies the name of a buffer object. +

Description

+ glBindBuffer lets you create or use a named buffer object. Calling glBindBuffer with + target set to + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, GL_PIXEL_PACK_BUFFER or + GL_PIXEL_UNPACK_BUFFER and buffer set to the name + of the new buffer object binds the buffer object name to the target. + When a buffer object is bound to a target, the previous binding for that + target is automatically broken. +

+ Buffer object names are unsigned integers. The value zero is reserved, but + there is no default buffer object for each buffer object target. Instead, buffer set to zero + effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target. + Buffer object names and the corresponding buffer object contents are local to + the shared display-list space (see glXCreateContext) of the current + GL rendering context; + two rendering contexts share buffer object names only if they + also share display lists. +

+ You may use glGenBuffers to generate a set of new buffer object names. +

+ The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with + GL_READ_WRITE access and GL_STATIC_DRAW usage. +

+ While a non-zero buffer object name is bound, GL operations on the target to which it is + bound affect the bound buffer object, and queries of the target to which it is bound return state + from the bound buffer object. While buffer object name zero is bound, as in the initial state, + attempts to modify or query state on the target to which it is bound generates an + GL_INVALID_OPERATION error. +

+ When vertex array pointer state is changed, for example by a call to + glNormalPointer, + the current buffer object binding (GL_ARRAY_BUFFER_BINDING) is copied into the + corresponding client state for the vertex array type being changed, for example + GL_NORMAL_ARRAY_BUFFER_BINDING. While a non-zero buffer object is bound to the + GL_ARRAY_BUFFER target, the vertex array pointer parameter that is traditionally + interpreted as a pointer to client-side memory is instead interpreted as an offset within the + buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, + the indices parameter of glDrawElements, + glDrawRangeElements, or + glMultiDrawElements that is traditionally + interpreted as a pointer to client-side memory is instead interpreted as an offset within the + buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, + the following commands are affected: glGetCompressedTexImage, + glGetConvolutionFilter, + glGetHistogram, + glGetMinmax, + glGetPixelMap, + glGetPolygonStipple, + glGetSeparableFilter, + glGetTexImage, and + glReadPixels. The pointer parameter that is + traditionally interpreted as a pointer to client-side memory where the pixels are to be packed is instead + interpreted as an offset within the buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, + the following commands are affected: glBitmap, + glColorSubTable, + glColorTable, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glConvolutionFilter2D, + glDrawPixels, + glPixelMap, + glPolygonStipple, + glSeparableFilter2D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. The pointer parameter that is + traditionally interpreted as a pointer to client-side memory from which the pixels are to be unpacked is + instead interpreted as an offset within the buffer object measured in basic machine units. +

+ A buffer object binding created with glBindBuffer remains active until a different + buffer object name is bound to the same target, or until the bound buffer object is + deleted with glDeleteBuffers. +

+ Once created, a named buffer object may be re-bound to any target as often as needed. However, + the GL implementation may make choices about how to optimize the storage of a buffer object based + on its initial binding target. +

Notes

+ glBindBuffer is available only if the GL version is 1.5 or greater. +

+ GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are + available only if the GL version is 2.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if glBindBuffer is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ELEMENT_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glBindTexture.xml b/upstream-man-pages/man2/xhtml/glBindTexture.xml new file mode 100644 index 0000000..65725de --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBindTexture.xml @@ -0,0 +1,97 @@ + + +glBindTexture

Name

glBindTexture — bind a named texture to a texturing target

C Specification

void glBindTexture(GLenum  target,
 GLuint  texture);

Parameters

target

+ Specifies the target to which the texture is bound. + Must be either + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, or + GL_TEXTURE_CUBE_MAP. +

texture

+ Specifies the name of a texture. +

Description

+ glBindTexture lets you create or use a named texture. Calling glBindTexture with + target set to + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D or + GL_TEXTURE_CUBE_MAP and texture set to the name + of the new texture binds the texture name to the target. + When a texture is bound to a target, the previous binding for that + target is automatically broken. +

+ Texture names are unsigned integers. The value zero is reserved to + represent the default texture for each texture target. + Texture names and the corresponding texture contents are local to + the shared display-list space (see glXCreateContext) of the current + GL rendering context; + two rendering contexts share texture names only if they + also share display lists. +

+ You may use glGenTextures to generate a set of new texture names. +

+ When a texture is first bound, it assumes the specified target: + A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a + texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a + texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, and a + texture first bound to GL_TEXTURE_CUBE_MAP + becomes a cube-mapped texture. The state of a one-dimensional texture + immediately after it is first bound is equivalent to the state of the + default GL_TEXTURE_1D at GL initialization, and similarly for two- + and three-dimensional textures and cube-mapped textures. +

+ While a texture is bound, GL operations on the target to which it is + bound affect the bound texture, and queries of the target to which it + is bound return state from the bound texture. If texture mapping is active + on the target to which a texture is bound, the bound texture is used. + In effect, the texture targets become aliases for the textures currently + bound to them, and the texture name zero refers to the default textures + that were bound to them at initialization. +

+ A texture binding created with glBindTexture remains active until a different + texture is bound to the same target, or until the bound texture is + deleted with glDeleteTextures. +

+ Once created, a named texture may be re-bound to its same original target as often as needed. + It is usually much faster to use glBindTexture to bind an existing named + texture to one of the texture targets than it is to reload the texture image + using glTexImage1D, glTexImage2D, or glTexImage3D. + For additional control over performance, use + glPrioritizeTextures. +

+ glBindTexture is included in display lists. +

Notes

+ glBindTexture is available only if the GL version is 1.1 or greater. +

+ GL_TEXTURE_CUBE_MAP is available only if the GL version is 1.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if texture was previously created with a target + that doesn't match that of target. +

+ GL_INVALID_OPERATION is generated if glBindTexture is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGet with argument GL_TEXTURE_BINDING_1D +

+ glGet with argument GL_TEXTURE_BINDING_2D +

+ glGet with argument GL_TEXTURE_BINDING_3D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBitmap.xml b/upstream-man-pages/man2/xhtml/glBitmap.xml new file mode 100644 index 0000000..cac1759 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBitmap.xml @@ -0,0 +1,178 @@ + + +glBitmap

Name

glBitmap — draw a bitmap

C Specification

void glBitmap(GLsizei  width,
 GLsizei  height,
 GLfloat  xorig,
 GLfloat  yorig,
 GLfloat  xmove,
 GLfloat  ymove,
 const GLubyte *  bitmap);

Parameters

width, height

+ Specify the pixel width and height of the bitmap image. +

xorig, yorig

+ Specify the location of the origin in the bitmap image. + The origin is measured from the lower left corner of the bitmap, + with right and up being the positive axes. +

xmove, ymove

+ Specify the x and y offsets to be added to the current raster position + after the bitmap is drawn. +

bitmap

+ Specifies the address of the bitmap image. +

Description

+ A bitmap is a binary image. + When drawn, + the bitmap is positioned relative to the current raster position, + and frame buffer pixels corresponding to 1's in the bitmap are + written using the current raster color or index. + Frame buffer pixels corresponding to 0's in the bitmap are not modified. +

+ glBitmap takes seven arguments. + The first pair specifies the width and height of the bitmap image. + The second pair specifies the location of the bitmap origin relative + to the lower left corner of the bitmap image. + The third pair of arguments specifies x and y offsets to be added + to the current raster position after the bitmap has been drawn. + The final argument is a pointer to the bitmap image itself. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a bitmap image is + specified, bitmap is treated as a byte offset into the buffer object's data store. +

+ The bitmap image is interpreted like image data for the glDrawPixels + command, + with width and height corresponding to the width and height arguments + of that command, + and with type set to GL_BITMAP + and format set to GL_COLOR_INDEX. + Modes specified using glPixelStore affect the + interpretation of bitmap image data; + modes specified using glPixelTransfer do not. +

+ If the current raster position is invalid, glBitmap is ignored. + Otherwise, + the lower left corner of the bitmap image is positioned at the window coordinates +

+ + + + x + w + + = + + + x + r + + - + x + o + + + + + +

+ + + + y + w + + = + + + y + r + + - + y + o + + + + + +

+ where + + + + x + r + + y + r + + + + is the raster position + and + + + + x + o + + y + o + + + + is the bitmap origin. + Fragments are then generated for each pixel corresponding to a 1 (one) + in the bitmap image. + These fragments are generated using the current raster z coordinate, + color or color index, and current raster texture coordinates. + They are then treated just as if they had been generated + by a point, line, or polygon, + including texture mapping, + fogging, + and all per-fragment operations such as alpha and depth testing. +

+ After the bitmap has been drawn, + the x and y coordinates of the current raster position are offset by + xmove and ymove. + No change is made to the z coordinate of the current raster position, + or to the current raster color, texture coordinates, or index. +

Notes

+ To set a valid raster position outside the viewport, first set a valid + raster position inside the viewport, then call glBitmap with NULL + as the bitmap parameter and with xmove and ymove set to + the offsets of the new raster position. This technique is useful when + panning an image around the viewport. +

Errors

+ GL_INVALID_VALUE is generated if width or height is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glBitmap + is executed between the execution of glBegin and the corresponding execution of + glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_RASTER_POSITION +

+ glGet with argument GL_CURRENT_RASTER_COLOR +

+ glGet with argument GL_CURRENT_RASTER_SECONDARY_COLOR +

+ glGet with argument GL_CURRENT_RASTER_DISTANCE +

+ glGet with argument GL_CURRENT_RASTER_INDEX +

+ glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS +

+ glGet with argument GL_CURRENT_RASTER_POSITION_VALID +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBlendColor.xml b/upstream-man-pages/man2/xhtml/glBlendColor.xml new file mode 100644 index 0000000..0e7db5d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBlendColor.xml @@ -0,0 +1,38 @@ + + +glBlendColor

Name

glBlendColor — set the blend color

C Specification

void glBlendColor(GLclampf  red,
 GLclampf  green,
 GLclampf  blue,
 GLclampf  alpha);

Parameters

red, green, blue, alpha

+ specify the components of GL_BLEND_COLOR +

Description

+ The GL_BLEND_COLOR may be used to calculate the source and destination + blending factors. The color components are clamped to the range + + + + 0 + 1 + + + before being stored. See glBlendFunc for a complete description of the + blending operations. + Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). +

Notes

+ glBlendColor is part of the ARB_imaging subset. glBlendColor is present only + if ARB_imaging is returned when glGetString is called with + GL_EXTENSIONS as its argument. +

Errors

+ GL_INVALID_OPERATION is generated if glBlendColor is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

+

Associated Gets

+ glGet with an argument of GL_BLEND_COLOR +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBlendEquation.xml b/upstream-man-pages/man2/xhtml/glBlendEquation.xml new file mode 100644 index 0000000..5f0d95a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBlendEquation.xml @@ -0,0 +1,664 @@ + + +glBlendEquation

Name

glBlendEquation — specify the equation used for both the RGB blend equation and the Alpha blend equation

C Specification

void glBlendEquation(GLenum  mode);

Parameters

mode

+ specifies how source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

Description

+ The blend equations determine how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function sets both the RGB blend equation and the alpha + blend equation to a single equation. +

+ These equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. +

+ In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + +

+ Mode + + RGB Components + + Alpha Component +
+ GL_FUNC_ADD + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_SUBTRACT + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + - + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + - + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + - + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + - + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_REVERSE_SUBTRACT + +
+ + + Rr + = + + R + d + + ⁢ + d + R + + - + R + s + + ⁢ + s + R + + + +
+
+ + + Gr + = + + G + d + + ⁢ + d + G + + - + G + s + + ⁢ + s + G + + + +
+
+ + + Br + = + + B + d + + ⁢ + d + B + + - + B + s + + ⁢ + s + B + + + +
+
+
+ + + Ar + = + + A + d + + ⁢ + d + A + + - + A + s + + ⁢ + s + A + + + +
+
+ GL_MIN + +
+ + + Rr + = + + min + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + min + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + min + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + min + ⁡ + + + A + s + + + + A + d + + + + + +
+
+ GL_MAX + +
+ + + Rr + = + + max + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + max + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + max + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + max + ⁡ + + + A + s + + + + A + d + + + + + +
+

+

+ The results of these equations are clamped to the range + + + + 0 + 1 + + . +

+ The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. +

+ Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. +

+

Notes

+ The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. +

+ GL_INVALID_OPERATION is generated if glBlendEquation is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGet with an argument of GL_BLEND_EQUATION_RGB +

+ glGet with an argument of GL_BLEND_EQUATION_ALPHA +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBlendEquationSeparate.xml b/upstream-man-pages/man2/xhtml/glBlendEquationSeparate.xml new file mode 100644 index 0000000..599595d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBlendEquationSeparate.xml @@ -0,0 +1,670 @@ + + +glBlendEquationSeparate

Name

glBlendEquationSeparate — set the RGB blend equation and the alpha blend equation separately

C Specification

void glBlendEquationSeparate(GLenum  modeRGB,
 GLenum  modeAlpha);

Parameters

modeRGB

+ specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

modeAlpha

+ specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

Description

+ The blend equations determines how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function specifies one blend equation for the RGB-color + components and one blend equation for the alpha component. +

+ The blend equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. +

+ In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + +

+ Mode + + RGB Components + + Alpha Component +
+ GL_FUNC_ADD + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_SUBTRACT + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + - + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + - + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + - + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + - + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_REVERSE_SUBTRACT + +
+ + + Rr + = + + R + d + + ⁢ + d + R + + - + R + s + + ⁢ + s + R + + + +
+
+ + + Gr + = + + G + d + + ⁢ + d + G + + - + G + s + + ⁢ + s + G + + + +
+
+ + + Br + = + + B + d + + ⁢ + d + B + + - + B + s + + ⁢ + s + B + + + +
+
+
+ + + Ar + = + + A + d + + ⁢ + d + A + + - + A + s + + ⁢ + s + A + + + +
+
+ GL_MIN + +
+ + + Rr + = + + min + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + min + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + min + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + min + ⁡ + + + A + s + + + + A + d + + + + + +
+
+ GL_MAX + +
+ + + Rr + = + + max + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + max + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + max + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + max + ⁡ + + + A + s + + + + A + d + + + + + +
+

+

+ The results of these equations are clamped to the range + + + + 0 + 1 + + . +

+ The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. +

+ Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. +

+

Notes

+ glBlendEquationSeparate is available only if the GL version is 2.0 or greater. +

+ The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. +

Errors

+ GL_INVALID_ENUM is generated if either modeRGB or modeAlpha is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. +

+ GL_INVALID_OPERATION is generated if glBlendEquationSeparate is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGet with an argument of GL_BLEND_EQUATION_RGB +

+ glGet with an argument of GL_BLEND_EQUATION_ALPHA +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glBlendFunc.xml b/upstream-man-pages/man2/xhtml/glBlendFunc.xml new file mode 100644 index 0000000..f06729f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBlendFunc.xml @@ -0,0 +1,1095 @@ + + +glBlendFunc

Name

glBlendFunc — specify pixel arithmetic

C Specification

void glBlendFunc(GLenum  sfactor,
 GLenum  dfactor);

Parameters

sfactor

+ Specifies how the red, green, blue, + and alpha source blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, and + GL_SRC_ALPHA_SATURATE. + The initial value is GL_ONE. +

dfactor

+ Specifies how the red, green, blue, + and alpha destination blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. +

Description

+ In RGBA mode, pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. +

+ glBlendFunc defines the operation of blending when it is enabled. + sfactor specifies which method is used to scale the + source color components. + dfactor specifies which method is used to scale the + destination color components. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + In the table and in subsequent equations, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + . + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where +

+

+ + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + +

+

+ and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. +

+ Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + The scale factors described in the table, + denoted + + + + f + R + + f + G + + f + B + + f + A + + + , + represent either source or destination factors. + All scale factors have range + + + + 0 + 1 + + . +

+

+ Parameter + + + + + f + R + + f + G + + f + B + + f + A + + + +
+ GL_ZERO + + + + + 0 + 0 + 0 + 0 + + +
+ GL_ONE + + + + + 1 + 1 + 1 + 1 + + +
+ GL_SRC_COLOR + + + + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + A + s + + k + A + + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + A + s + + k + A + + + + + +
+ GL_DST_COLOR + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + +
+ GL_ONE_MINUS_DST_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + +
+ GL_SRC_ALPHA + + + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + +
+ GL_DST_ALPHA + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + +
+ GL_ONE_MINUS_DST_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + +
+ GL_CONSTANT_COLOR + + + + + R + c + + G + c + + B + c + + A + c + + + +
+ GL_ONE_MINUS_CONSTANT_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + A + c + + + + +
+ GL_CONSTANT_ALPHA + + + + + A + c + + A + c + + A + c + + A + c + + + +
+ GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + A + c + + + + +
+ GL_SRC_ALPHA_SATURATE + + + + + i + i + i + 1 + + +

+ In the table, +

+

+ + + + i + = + + + min + ⁡ + + A + s + + + k + A + + - + A + d + + + + + k + A + + + + +

+

+ To determine the blended RGBA values of a pixel when drawing in RGBA mode, + the system uses the following equations: +

+

+ + + + R + d + + = + + min + ⁡ + + k + R + + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + + + + + + + + G + d + + = + + min + ⁡ + + k + G + + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + + + + + + + + B + d + + = + + min + ⁡ + + k + B + + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + + + + + + + + A + d + + = + + min + ⁡ + + k + A + + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + + + + +

+

+ Despite the apparent precision of the above equations, + blending arithmetic is not exactly specified, + because blending operates with imprecise integer color values. + However, + a blend factor that should be equal to 1 + is guaranteed not to modify its multiplicand, + and a blend factor equal to 0 reduces its multiplicand to 0. + For example, + when sfactor is GL_SRC_ALPHA, + dfactor is GL_ONE_MINUS_SRC_ALPHA, + and + + + A + s + + + is equal to + + + k + A + + , + the equations reduce to simple replacement: +

+

+ + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + +

+

+

Examples

+

+ Transparency is best implemented using blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + with primitives sorted from farthest to nearest. + Note that this transparency calculation does not require + the presence of alpha bitplanes in the frame buffer. +

+ Blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + is also useful for rendering antialiased points and lines + in arbitrary order. +

+ Polygon antialiasing is optimized using blend function + (GL_SRC_ALPHA_SATURATE, GL_ONE) + with polygons sorted from nearest to farthest. + (See the glEnable, glDisable reference page and the + GL_POLYGON_SMOOTH argument for information on polygon antialiasing.) + Destination alpha bitplanes, + which must be present for this blend function to operate correctly, + store the accumulated coverage. +

Notes

+ Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. +

+ When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) +

+ Blending affects only RGBA rendering. + It is ignored by color index renderers. +

+ GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA are available only + if the GL version is 1.4 or greater or if the ARB_imaging is + supported by your implementation. +

+ GL_SRC_COLOR and GL_ONE_MINUS_SRC_COLOR are valid only for + sfactor if the GL version is 1.4 or greater. +

+ GL_DST_COLOR and GL_ONE_MINUS_DST_COLOR are valid only for + dfactor if the GL version is 1.4 or greater. +

Errors

+ GL_INVALID_ENUM is generated if either sfactor or dfactor is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glBlendFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_BLEND_SRC +

+ glGet with argument GL_BLEND_DST +

+ glIsEnabled with argument GL_BLEND +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBlendFuncSeparate.xml b/upstream-man-pages/man2/xhtml/glBlendFuncSeparate.xml new file mode 100644 index 0000000..c537d1e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBlendFuncSeparate.xml @@ -0,0 +1,1125 @@ + + +glBlendFuncSeparate

Name

glBlendFuncSeparate — specify pixel arithmetic for RGB and alpha components separately

C Specification

void glBlendFuncSeparate(GLenum  srcRGB,
 GLenum  dstRGB,
 GLenum  srcAlpha,
 GLenum  dstAlpha);

Parameters

srcRGB

+ Specifies how the red, green, and blue blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, and + GL_SRC_ALPHA_SATURATE. + The initial value is GL_ONE. +

dstRGB

+ Specifies how the red, green, and blue destination blending factors are + computed. The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. +

srcAlpha

+ Specified how the alpha source blending factor is computed. The same + symbolic constants are accepted as for srcRGB. + The initial value is GL_ONE. +

dstAlpha

+ Specified how the alpha destination blending factor is computed. The same + symbolic constants are accepted as for dstRGB. + The initial value is GL_ZERO. +

Description

+ In RGBA mode, pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. +

+ glBlendFuncSeparate defines the operation of blending when it is enabled. + srcRGB specifies which method is used to scale the + source RGB-color components. + dstRGB specifies which method is used to scale the + destination RGB-color components. + Likewise, srcAlpha specifies which method is used to scale the source alpha + color component, and dstAlpha specifies which method is used to scale the + destination alpha component. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. +

+ In the table and in subsequent equations, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + . + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where +

+

+ + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + +

+

+ and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. +

+ Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + All scale factors have range + + + + 0 + 1 + + . +

+

+ Parameter + + RGB Factor + + Alpha Factor +
+ GL_ZERO + + + + + 0 + 0 + 0 + + + + + + 0 + +
+ GL_ONE + + + + + 1 + 1 + 1 + + + + + + 1 + +
+ GL_SRC_COLOR + + + + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + + + + + + A + s + + k + A + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s + + k + R + + + + G + s + + k + G + + + + B + s + + k + B + + + + + + + + + + 1 + - + + A + s + + k + A + + + + +
+ GL_DST_COLOR + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + A + d + + k + A + + + +
+ GL_ONE_MINUS_DST_COLOR + + + + + + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + 1 + - + + A + d + + k + A + + + + +
+ GL_SRC_ALPHA + + + + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + + + + + A + s + + k + A + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + s + + k + A + + + + A + s + + k + A + + + + A + s + + k + A + + + + + + + + + + 1 + - + + A + s + + k + A + + + + +
+ GL_DST_ALPHA + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + A + d + + k + A + + + +
+ GL_ONE_MINUS_DST_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + 1 + - + + A + d + + k + A + + + + +
+ GL_CONSTANT_COLOR + + + + + R + c + + G + c + + B + c + + + + + + + A + c + + +
+ GL_ONE_MINUS_CONSTANT_COLOR + + + + + + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + + + + + + + + 1 + - + A + c + + + +
+ GL_CONSTANT_ALPHA + + + + + A + c + + A + c + + A + c + + + + + + + A + c + + +
+ GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + + + + + + + + 1 + - + A + c + + + +
+ GL_SRC_ALPHA_SATURATE + + + + + i + i + i + + + + + + 1 + +

+ In the table, +

+

+ + + + i + = + + min + ⁡ + + A + s + + + 1 + - + + A + d + + + + + + + +

+

+ To determine the blended RGBA values of a pixel when drawing in RGBA mode, + the system uses the following equations: +

+

+ + + + R + d + + = + + min + ⁡ + + k + R + + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + + + + + + + + G + d + + = + + min + ⁡ + + k + G + + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + + + + + + + + B + d + + = + + min + ⁡ + + k + B + + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + + + + + + + + A + d + + = + + min + ⁡ + + k + A + + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + + + + +

+

+ Despite the apparent precision of the above equations, blending arithmetic + is not exactly specified, because blending operates with imprecise integer + color values. However, a blend factor that should be equal to 1 is + guaranteed not to modify its multiplicand, and a blend factor equal to 0 + reduces its multiplicand to 0. For example, when srcRGB is + GL_SRC_ALPHA, dstRGB is GL_ONE_MINUS_SRC_ALPHA, and + + + A + s + + + is + equal to + + + k + A + + , + the equations reduce to simple replacement: +

+

+ + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + +

+

+

Notes

+ glBlendFuncSeparate is available only if the GL version is 1.4 or greater. +

+ Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. +

+ When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) +

+ Blending affects only RGBA rendering. + It is ignored by color index renderers. +

+ GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA are available only + if the GL version is 1.4 or greater or if the ARB_imaging is + supported by your implementation. +

+ GL_SRC_COLOR and GL_ONE_MINUS_SRC_COLOR are valid only for + srcRGB if the GL version is 1.4 or greater. +

+ GL_DST_COLOR and GL_ONE_MINUS_DST_COLOR are valid only for + dstRGB if the GL version is 1.4 or greater. +

Errors

+ GL_INVALID_ENUM is generated if either srcRGB or dstRGB is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glBlendFuncSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_BLEND_SRC_RGB +

+ glGet with argument GL_BLEND_SRC_ALPHA +

+ glGet with argument GL_BLEND_DST_RGB +

+ glGet with argument GL_BLEND_DST_ALPHA +

+ glIsEnabled with argument GL_BLEND +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glBufferData.xml b/upstream-man-pages/man2/xhtml/glBufferData.xml new file mode 100644 index 0000000..9bb5bca --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBufferData.xml @@ -0,0 +1,96 @@ + + +glBufferData

Name

glBufferData — creates and initializes a buffer object's data store

C Specification

void glBufferData(GLenum  target,
 GLsizeiptr  size,
 const GLvoid *  data,
 GLenum  usage);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

size

+ Specifies the size in bytes of the buffer object's new data store. +

data

+ Specifies a pointer to data that will be copied into the data store for initialization, + or NULL if no data is to be copied. +

usage

+ Specifies the expected usage pattern of the data store. The symbolic constant must be + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. +

Description

+ glBufferData creates a new data store for the buffer object currently bound to + target. Any pre-existing data store is deleted. The new data store is created with the + specified size in bytes and usage. If data + is not NULL, the data store is initialized with data from this pointer. In its initial + state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access + is GL_READ_WRITE. +

+ usage is a hint to the GL implementation as to how a buffer object's data store will be + accessed. This enables the GL implementation to make more intelligent decisions that may significantly + impact buffer object performance. It does not, however, constrain the actual usage of the data store. + usage can be broken down into two parts: first, the frequency of access (modification + and usage), and second, the nature of that access. The frequency of access may be one of these: +

STREAM

+ The data store contents will be modified once and used at most a few times. +

STATIC

+ The data store contents will be modified once and used many times. +

DYNAMIC

+ The data store contents will be modified repeatedly and used many times. +

+ The nature of access may be one of these: +

DRAW

+ The data store contents are modified by the application, and used as the source for GL drawing and + image specification commands. +

READ

+ The data store contents are modified by reading data from the GL, and used to return that data + when queried by the application. +

COPY

+ The data store contents are modified by reading data from the GL, and used as the source for GL + drawing and image specification commands. +

Notes

+ glBufferData is available only if the GL version is 1.5 or greater. +

+ Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. +

+ If data is NULL, a data store of the specified size is still created, + but its contents remain uninitialized and thus undefined. +

+ Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. +

+ GL_INVALID_ENUM is generated if usage is not + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. +

+ GL_INVALID_VALUE is generated if size is negative. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store with the specified size. +

+ GL_INVALID_OPERATION is generated if glBufferData + is executed between the execution of + glBegin and the corresponding execution of + glEnd. +

Associated Gets

+ glGetBufferSubData +

+ glGetBufferParameteriv with argument GL_BUFFER_SIZE or GL_BUFFER_USAGE +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glBufferSubData.xml b/upstream-man-pages/man2/xhtml/glBufferSubData.xml new file mode 100644 index 0000000..3471d97 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glBufferSubData.xml @@ -0,0 +1,70 @@ + + +glBufferSubData

Name

glBufferSubData — updates a subset of a buffer object's data store

C Specification

void glBufferSubData(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  size,
 const GLvoid *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

offset

+ Specifies the offset into the buffer object's data store where data replacement will begin, + measured in bytes. +

size

+ Specifies the size in bytes of the data store region being replaced. +

data

+ Specifies a pointer to the new data that will be copied into the data store. +

Description

+ glBufferSubData redefines some or all of the data store for the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied to the data store from the memory pointed to by + data. An error is thrown if offset and size + together define a range beyond the bounds of the buffer object's data store. +

Notes

+ glBufferSubData is available only if the GL version is 1.5 or greater. +

+ Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. +

+ When replacing the entire data store, consider using glBufferSubData rather + than completely recreating the data store with glBufferData. This avoids the cost of + reallocating the data store. +

+ Consider using multiple buffer objects to avoid stalling the rendering pipeline during data store updates. + If any rendering in the pipeline makes reference to data in the buffer object being updated by + glBufferSubData, especially from the specific region being updated, that rendering must + drain from the pipeline before the data store can be updated. +

+ Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. +

+ GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer object being updated is mapped. +

+ GL_INVALID_OPERATION is generated if glBufferSubData + is executed between the execution of + glBegin and the corresponding execution of + glEnd. +

Associated Gets

+ glGetBufferSubData +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glCallList.xml b/upstream-man-pages/man2/xhtml/glCallList.xml new file mode 100644 index 0000000..9e65567 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCallList.xml @@ -0,0 +1,48 @@ + + +glCallList

Name

glCallList — execute a display list

C Specification

void glCallList(GLuint  list);

Parameters

list

+ Specifies the integer name of the display list to be executed. +

Description

+ glCallList causes the named display list to be executed. + The commands saved in the display list are executed in order, + just as if they were called without using a display list. + If list has not been defined as a display list, + glCallList is ignored. +

+ glCallList can appear inside a display list. + To avoid the possibility of infinite recursion resulting from display lists + calling one another, + a limit is placed on the nesting level of display + lists during display-list execution. + This limit is at least 64, and it depends on the implementation. +

+ GL state is not saved and restored across a call to glCallList. + Thus, + changes made to GL state during the execution of a display list + remain after execution of the display list is completed. + Use glPushAttrib, + glPopAttrib, + glPushMatrix, + and glPopMatrix to preserve GL state across glCallList calls. +

Notes

+ Display lists can be executed between a call to glBegin + and the corresponding call to glEnd, + as long as the display list includes only commands that are allowed + in this interval. +

Associated Gets

+ glGet with argument GL_MAX_LIST_NESTING +

+ glIsList +

See Also

+ glCallLists, + glDeleteLists, + glGenLists, + glNewList, + glPushAttrib, + glPushMatrix +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCallLists.xml b/upstream-man-pages/man2/xhtml/glCallLists.xml new file mode 100644 index 0000000..97d511f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCallLists.xml @@ -0,0 +1,148 @@ + + +glCallLists

Name

glCallLists — execute a list of display lists

C Specification

void glCallLists(GLsizei  n,
 GLenum  type,
 const GLvoid *  lists);

Parameters

n

+ Specifies the number of display lists to be executed. +

type

+ Specifies the type of values in lists. + Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + GL_2_BYTES, + GL_3_BYTES, and + GL_4_BYTES are accepted. +

lists

+ Specifies the address of an array of name offsets in the display list. + The pointer type is void because the offsets can be bytes, + shorts, + ints, + or floats, + depending on the value of type. +

Description

+ glCallLists causes each display list in the list of names passed as lists + to be executed. + As a result, + the commands saved in each display list are executed in order, + just as if they were called without using a display list. + Names of display lists that have not been defined are ignored. +

+ glCallLists provides an efficient means for executing more than one display list. + type allows lists with various name formats to be accepted. + The formats are as + follows: +

GL_BYTE

+ lists is treated as an array of signed bytes, + each in the range + + + -128 + + through 127. +

GL_UNSIGNED_BYTE

+ lists is treated as an array of unsigned bytes, + each in the range 0 through 255. +

GL_SHORT

+ lists is treated as an array of signed two-byte integers, + each in the range + + + -32768 + + through 32767. +

GL_UNSIGNED_SHORT

+ lists is treated as an array of unsigned two-byte integers, + each in the range 0 through 65535. +

GL_INT

+ lists is treated as an array of signed four-byte integers. +

GL_UNSIGNED_INT

+ lists is treated as an array of unsigned four-byte integers. +

GL_FLOAT

+ lists is treated as an array of four-byte floating-point values. +

GL_2_BYTES

+ lists is treated as an array of unsigned bytes. + Each pair of bytes specifies a single display-list name. + The value of the pair is computed as 256 times the unsigned value + of the first byte plus the unsigned value of the second byte. +

GL_3_BYTES

+ lists is treated as an array of unsigned bytes. + Each triplet of bytes specifies a single display-list name. + The value of the triplet is computed as 65536 times the unsigned value + of the first byte, + plus 256 times the unsigned value of the second byte, + plus the unsigned value of the third byte. +

GL_4_BYTES

+ lists is treated as an array of unsigned bytes. + Each quadruplet of bytes specifies a single display-list name. + The value of the quadruplet is computed as 16777216 times the unsigned value + of the first byte, + plus 65536 times the unsigned value of the second byte, + plus 256 times the unsigned value of the third byte, + plus the unsigned value of the fourth byte. +

+ The list of display-list names is not null-terminated. + Rather, + n specifies how many names are to be taken from lists. +

+ An additional level of indirection is made available with the + glListBase command, + which specifies an unsigned offset that is added to each display-list + name specified in lists before that display list is executed. +

+ glCallLists can appear inside a display list. + To avoid the possibility of infinite recursion resulting from display lists + calling one another, + a limit is placed on the nesting level of display + lists during display-list execution. + This limit must be at least 64, and it depends on the implementation. +

+ GL state is not saved and restored across a call to glCallLists. + Thus, + changes made to GL state during the execution of the display lists + remain after execution is completed. + Use glPushAttrib, + glPopAttrib, + glPushMatrix, + and glPopMatrix to preserve GL state across glCallLists calls. +

Notes

+ Display lists can be executed between a call to glBegin + and the corresponding call to glEnd, + as long as the display list includes only commands that are allowed + in this interval. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_ENUM is generated if type is not one of + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + GL_2_BYTES, + GL_3_BYTES, + GL_4_BYTES. +

Associated Gets

+ glGet with argument GL_LIST_BASE +

+ glGet with argument GL_MAX_LIST_NESTING +

+ glIsList +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClear.xml b/upstream-man-pages/man2/xhtml/glClear.xml new file mode 100644 index 0000000..33e6ab3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClear.xml @@ -0,0 +1,80 @@ + + +glClear

Name

glClear — clear buffers to preset values

C Specification

void glClear(GLbitfield  mask);

Parameters

mask

+ Bitwise OR of masks that indicate the buffers to be cleared. + The four masks are + GL_COLOR_BUFFER_BIT, + GL_DEPTH_BUFFER_BIT, + GL_ACCUM_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. +

Description

+ glClear sets the bitplane area of the window to values previously selected + by glClearColor, glClearIndex, glClearDepth, + glClearStencil, and glClearAccum. + Multiple color buffers can be cleared simultaneously by selecting + more than one buffer at a time using glDrawBuffer. +

+ The pixel ownership test, + the scissor test, + dithering, and the buffer writemasks affect the operation of glClear. + The scissor box bounds the cleared region. + Alpha function, + blend function, + logical operation, + stenciling, + texture mapping, + and depth-buffering are ignored by glClear. +

+ glClear takes a single argument that is the bitwise OR of several + values indicating which buffer is to be cleared. +

+ The values are as follows: +

GL_COLOR_BUFFER_BIT

+ Indicates the buffers currently enabled for color + writing. +

GL_DEPTH_BUFFER_BIT

+ Indicates the depth buffer. +

GL_ACCUM_BUFFER_BIT

+ Indicates the accumulation buffer. +

GL_STENCIL_BUFFER_BIT

+ Indicates the stencil buffer. +

+ The value to which each buffer is cleared depends on the setting of the + clear value for that buffer. +

Notes

+ If a buffer is not present, + then a glClear directed at that buffer has no effect. +

Errors

+ GL_INVALID_VALUE is generated if any bit other than the four defined + bits is set in mask. +

+ GL_INVALID_OPERATION is generated if glClear + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ACCUM_CLEAR_VALUE +

+ glGet with argument GL_DEPTH_CLEAR_VALUE +

+ glGet with argument GL_INDEX_CLEAR_VALUE +

+ glGet with argument GL_COLOR_CLEAR_VALUE +

+ glGet with argument GL_STENCIL_CLEAR_VALUE +

See Also

+ glClearAccum, + glClearColor, + glClearDepth, + glClearIndex, + glClearStencil, + glColorMask, + glDepthMask, + glDrawBuffer, + glScissor, + glStencilMask +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClearAccum.xml b/upstream-man-pages/man2/xhtml/glClearAccum.xml new file mode 100644 index 0000000..de5df54 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClearAccum.xml @@ -0,0 +1,34 @@ + + +glClearAccum

Name

glClearAccum — specify clear values for the accumulation buffer

C Specification

void glClearAccum(GLfloat  red,
 GLfloat  green,
 GLfloat  blue,
 GLfloat  alpha);

Parameters

red, green, blue, alpha

+ Specify the red, green, blue, and alpha values used when the + accumulation buffer is cleared. + The initial values are all 0. +

Description

+ glClearAccum specifies the red, green, blue, and alpha values used by glClear + to clear the accumulation buffer. +

+ Values specified by glClearAccum are clamped to the + range + + + + -1 + 1 + + . +

Errors

+ GL_INVALID_OPERATION is generated if glClearAccum + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ACCUM_CLEAR_VALUE +

See Also

+ glAccum, + glClear +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClearColor.xml b/upstream-man-pages/man2/xhtml/glClearColor.xml new file mode 100644 index 0000000..0c37887 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClearColor.xml @@ -0,0 +1,33 @@ + + +glClearColor

Name

glClearColor — specify clear values for the color buffers

C Specification

void glClearColor(GLclampf  red,
 GLclampf  green,
 GLclampf  blue,
 GLclampf  alpha);

Parameters

red, green, blue, alpha

+ Specify the red, green, blue, and alpha values used when the + color buffers are cleared. + The initial values are all 0. +

Description

+ glClearColor specifies the red, + green, + blue, + and alpha values used by glClear to clear the color buffers. + Values specified by glClearColor are clamped to the range + + + + 0 + 1 + + . +

Errors

+ GL_INVALID_OPERATION is generated if glClearColor + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_COLOR_CLEAR_VALUE +

See Also

+ glClear +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClearDepth.xml b/upstream-man-pages/man2/xhtml/glClearDepth.xml new file mode 100644 index 0000000..872d358 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClearDepth.xml @@ -0,0 +1,29 @@ + + +glClearDepth

Name

glClearDepth — specify the clear value for the depth buffer

C Specification

void glClearDepth(GLclampd  depth);

Parameters

depth

+ Specifies the depth value used when the depth buffer is cleared. The + initial value is 1. +

Description

+ glClearDepth specifies the depth value used by glClear to clear the depth buffer. + Values specified by glClearDepth are clamped to the range + + + + 0 + 1 + + . +

Errors

+ GL_INVALID_OPERATION is generated if glClearDepth + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_DEPTH_CLEAR_VALUE +

See Also

+ glClear +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClearIndex.xml b/upstream-man-pages/man2/xhtml/glClearIndex.xml new file mode 100644 index 0000000..f23f185 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClearIndex.xml @@ -0,0 +1,42 @@ + + +glClearIndex

Name

glClearIndex — specify the clear value for the color index buffers

C Specification

void glClearIndex(GLfloat  c);

Parameters

c

+ Specifies the index used when the color index buffers are cleared. + The initial value is 0. +

Description

+ glClearIndex specifies the index used by glClear + to clear the color index buffers. + c is not clamped. + Rather, + c is converted to a fixed-point value with unspecified precision + to the right of the binary point. + The integer part of this value is then masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in a color index stored in the frame buffer. +

Errors

+ GL_INVALID_OPERATION is generated if glClearIndex + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_INDEX_CLEAR_VALUE +

+ glGet with argument GL_INDEX_BITS +

See Also

+ glClear +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClearStencil.xml b/upstream-man-pages/man2/xhtml/glClearStencil.xml new file mode 100644 index 0000000..aed115e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClearStencil.xml @@ -0,0 +1,43 @@ + + +glClearStencil

Name

glClearStencil — specify the clear value for the stencil buffer

C Specification

void glClearStencil(GLint  s);

Parameters

s

+ Specifies the index used when the stencil buffer is cleared. + The initial value is 0. +

Description

+ glClearStencil specifies the index used by glClear to clear the stencil buffer. + s is masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in the stencil buffer. +

Errors

+ GL_INVALID_OPERATION is generated if glClearStencil + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_STENCIL_CLEAR_VALUE +

+ glGet with argument GL_STENCIL_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClientActiveTexture.xml b/upstream-man-pages/man2/xhtml/glClientActiveTexture.xml new file mode 100644 index 0000000..c1f7edf --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClientActiveTexture.xml @@ -0,0 +1,38 @@ + + +glClientActiveTexture

Name

glClientActiveTexture — select active texture unit

C Specification

void glClientActiveTexture(GLenum  texture);

Parameters

texture

+ Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + two. texture must be one of + GL_TEXTUREi, + where i ranges from 0 to the value of GL_MAX_TEXTURE_COORDS - 1, which is an + implementation-dependent value. The initial value is + GL_TEXTURE0. +

Description

+ glClientActiveTexture selects the vertex array client state parameters to be modified by + glTexCoordPointer, and enabled or disabled with + glEnableClientState or glDisableClientState, respectively, + when called with a parameter of GL_TEXTURE_COORD_ARRAY. +

Notes

+ glClientActiveTexture is supported only if the GL version is 1.3 or greater, or + ARB_multitexture is included in the string returned by + glGetString when called with the argument GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where + i ranges from 0 to the value of GL_MAX_TEXTURE_COORDS - 1. +

Associated Gets

+ glGet with argument GL_CLIENT_ACTIVE_TEXTURE or GL_MAX_TEXTURE_COORDS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glClipPlane.xml b/upstream-man-pages/man2/xhtml/glClipPlane.xml new file mode 100644 index 0000000..533e9e4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glClipPlane.xml @@ -0,0 +1,69 @@ + + +glClipPlane

Name

glClipPlane — specify a plane against which all geometry is clipped

C Specification

void glClipPlane(GLenum  plane,
 const GLdouble *  equation);

Parameters

plane

+ Specifies which clipping plane is being positioned. + Symbolic names of the form GL_CLIP_PLANEi, + where i is an integer between 0 and GL_MAX_CLIP_PLANES + + + -1 + , + are accepted. +

equation

+ Specifies the address of an array of four double-precision floating-point values. + These values are interpreted as a plane equation. +

Description

+ Geometry is always clipped against the boundaries of a six-plane frustum + in x, y, and z. + glClipPlane allows the specification of additional planes, + not necessarily perpendicular to the x, y, or z axis, + against which all geometry is clipped. + To determine the maximum number of additional clipping planes, call + glGetIntegerv with argument GL_MAX_CLIP_PLANES. All + implementations support at least six such clipping planes. + Because the resulting clipping region is the intersection + of the defined half-spaces, + it is always convex. +

+ glClipPlane specifies a half-space using a four-component plane equation. + When glClipPlane is called, + equation is transformed by the inverse of the modelview matrix + and stored in the resulting eye coordinates. + Subsequent changes to the modelview matrix have no effect on the + stored plane-equation components. + If the dot product of the eye coordinates of a vertex with the + stored plane equation components is positive or zero, + the vertex is in with respect to that clipping plane. + Otherwise, it is out. +

+ To enable and disable clipping planes, call + glEnable and glDisable with the argument + GL_CLIP_PLANEi, + where i is the plane number. +

+ All clipping planes are initially defined as (0, 0, 0, 0) in eye coordinates + and are + disabled. +

Notes

+ It is always the case that GL_CLIP_PLANE + i + = GL_CLIP_PLANE0 + + i. +

Errors

+ GL_INVALID_ENUM is generated if plane is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glClipPlane + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetClipPlane +

+ glIsEnabled with argument GL_CLIP_PLANEi +

See Also

+ glEnable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColor.xml b/upstream-man-pages/man2/xhtml/glColor.xml new file mode 100644 index 0000000..d976537 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColor.xml @@ -0,0 +1,82 @@ + + +glColor

Name

glColor — set the current color

C Specification

void glColor3b(GLbyte  red,
 GLbyte  green,
 GLbyte  blue);
void glColor3s(GLshort  red,
 GLshort  green,
 GLshort  blue);
void glColor3i(GLint  red,
 GLint  green,
 GLint  blue);
void glColor3f(GLfloat  red,
 GLfloat  green,
 GLfloat  blue);
void glColor3d(GLdouble  red,
 GLdouble  green,
 GLdouble  blue);
void glColor3ub(GLubyte  red,
 GLubyte  green,
 GLubyte  blue);
void glColor3us(GLushort  red,
 GLushort  green,
 GLushort  blue);
void glColor3ui(GLuint  red,
 GLuint  green,
 GLuint  blue);
void glColor4b(GLbyte  red,
 GLbyte  green,
 GLbyte  blue,
 GLbyte  alpha);
void glColor4s(GLshort  red,
 GLshort  green,
 GLshort  blue,
 GLshort  alpha);
void glColor4i(GLint  red,
 GLint  green,
 GLint  blue,
 GLint  alpha);
void glColor4f(GLfloat  red,
 GLfloat  green,
 GLfloat  blue,
 GLfloat  alpha);
void glColor4d(GLdouble  red,
 GLdouble  green,
 GLdouble  blue,
 GLdouble  alpha);
void glColor4ub(GLubyte  red,
 GLubyte  green,
 GLubyte  blue,
 GLubyte  alpha);
void glColor4us(GLushort  red,
 GLushort  green,
 GLushort  blue,
 GLushort  alpha);
void glColor4ui(GLuint  red,
 GLuint  green,
 GLuint  blue,
 GLuint  alpha);

Parameters

red, green, blue

+ Specify new red, green, and blue values for the current color. +

alpha

+ Specifies a new alpha value for the current color. + Included only in the four-argument glColor4 commands. +

C Specification

void glColor3bv(const GLbyte *  v);
void glColor3sv(const GLshort *  v);
void glColor3iv(const GLint *  v);
void glColor3fv(const GLfloat *  v);
void glColor3dv(const GLdouble *  v);
void glColor3ubv(const GLubyte *  v);
void glColor3usv(const GLushort *  v);
void glColor3uiv(const GLuint *  v);
void glColor4bv(const GLbyte *  v);
void glColor4sv(const GLshort *  v);
void glColor4iv(const GLint *  v);
void glColor4fv(const GLfloat *  v);
void glColor4dv(const GLdouble *  v);
void glColor4ubv(const GLubyte *  v);
void glColor4usv(const GLushort *  v);
void glColor4uiv(const GLuint *  v);

Parameters

v

+ Specifies a pointer to an array that contains red, green, blue, + and (sometimes) alpha values. +

Description

+ The GL stores both a current single-valued color index + and a current four-valued RGBA color. + glColor sets a new four-valued RGBA color. + glColor has two major variants: + glColor3 and glColor4. + glColor3 variants specify new red, + green, + and blue values explicitly + and set the current alpha value to 1.0 (full intensity) implicitly. + glColor4 variants specify all four color components explicitly. +

+ glColor3b, glColor4b, + glColor3s, glColor4s, glColor3i, and glColor4i take + three or four signed byte, short, or long integers as arguments. + When v is appended to the name, + the color commands can take a pointer to an array of such values. +

+ Current color values are stored in floating-point format, + with unspecified mantissa and exponent sizes. + Unsigned integer color components, + when specified, + are linearly mapped to floating-point values such that the largest + representable value maps to 1.0 (full intensity), + and 0 maps to 0.0 (zero intensity). + Signed integer color components, + when specified, + are linearly mapped to floating-point values such that the most positive + representable value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + (Note that + this mapping does not convert 0 precisely to 0.0.) + Floating-point values are mapped directly. +

+ Neither floating-point nor signed integer values are clamped + to the range + + + + 0 + 1 + + + before the current color is updated. + However, + color components are clamped to this range before they are interpolated + or written into a color buffer. +

Notes

+ The initial value for the current color is (1, 1, 1, 1). +

+ The current color can be updated at any time. + In particular, + glColor can be called between a call to glBegin and the corresponding + call to glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_COLOR +

+ glGet with argument GL_RGBA_MODE +

See Also

+ glColorPointer, + glIndex, + glSecondaryColor +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColor4.xml b/upstream-man-pages/man2/xhtml/glColor4.xml new file mode 100644 index 0000000..e5e4dd3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColor4.xml @@ -0,0 +1,4 @@ + + + +glColor4 diff --git a/upstream-man-pages/man2/xhtml/glColorMask.xml b/upstream-man-pages/man2/xhtml/glColorMask.xml new file mode 100644 index 0000000..6e3e262 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColorMask.xml @@ -0,0 +1,42 @@ + + +glColorMask

Name

glColorMask — enable and disable writing of frame buffer color components

C Specification

void glColorMask(GLboolean  red,
 GLboolean  green,
 GLboolean  blue,
 GLboolean  alpha);

Parameters

red, green, blue, alpha

+ Specify whether red, green, blue, and alpha can or cannot be written + into the frame buffer. + The initial values are all GL_TRUE, + indicating that the color components can be written. +

Description

+ glColorMask specifies whether the individual color components in the frame buffer + can or cannot be written. + If red is GL_FALSE, + for example, + no change is made to the red component of any pixel in any of the + color buffers, + regardless of the drawing operation attempted. +

+ Changes to individual bits of components cannot be controlled. + Rather, + changes are either enabled or disabled for entire color components. +

Errors

+ GL_INVALID_OPERATION is generated if glColorMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_COLOR_WRITEMASK +

+ glGet with argument GL_RGBA_MODE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColorMaterial.xml b/upstream-man-pages/man2/xhtml/glColorMaterial.xml new file mode 100644 index 0000000..9c074ab --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColorMaterial.xml @@ -0,0 +1,77 @@ + + +glColorMaterial

Name

glColorMaterial — cause a material color to track the current color

C Specification

void glColorMaterial(GLenum  face,
 GLenum  mode);

Parameters

face

+ Specifies whether front, + back, + or both front and back material parameters should track the current color. + Accepted values are + GL_FRONT, + GL_BACK, + and GL_FRONT_AND_BACK. + The initial value is GL_FRONT_AND_BACK. +

mode

+ Specifies which of several material parameters track the current color. + Accepted values are + GL_EMISSION, + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + and GL_AMBIENT_AND_DIFFUSE. + The initial value is GL_AMBIENT_AND_DIFFUSE. +

Description

+ glColorMaterial specifies which material parameters track the current color. + When GL_COLOR_MATERIAL is enabled, + the material parameter or parameters specified by mode, + of the material or materials specified by face, + track the current color at all times. +

+ To enable and disable GL_COLOR_MATERIAL, call + glEnable and glDisable with argument GL_COLOR_MATERIAL. + GL_COLOR_MATERIAL is initially disabled. +

Notes

+ glColorMaterial makes it possible to change a subset of material parameters for each + vertex using only the glColor command, + without calling glMaterial. + If only such a subset of parameters is to be specified for each + vertex, calling glColorMaterial is preferable to calling glMaterial. +

+ Call glColorMaterial before enabling GL_COLOR_MATERIAL. +

+ Calling glDrawElements, glDrawArrays, or glDrawRangeElements + may leave the current color indeterminate, if the color array is enabled. + If + glColorMaterial is enabled while the current color is indeterminate, the + lighting material state specified by face and mode is also indeterminate. +

+ If the GL version is 1.1 or greater, and GL_COLOR_MATERIAL is + enabled, evaluated color values affect the results of the lighting + equation as if the current color were being modified, but no change is + made to the tracking lighting parameter of the current color. +

Errors

+ GL_INVALID_ENUM is generated if face or mode is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glColorMaterial is executed between + the execution of glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glIsEnabled with argument GL_COLOR_MATERIAL +

+ glGet with argument GL_COLOR_MATERIAL_PARAMETER +

+ glGet with argument GL_COLOR_MATERIAL_FACE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColorPointer.xml b/upstream-man-pages/man2/xhtml/glColorPointer.xml new file mode 100644 index 0000000..b563272 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColorPointer.xml @@ -0,0 +1,119 @@ + + +glColorPointer

Name

glColorPointer — define an array of colors

C Specification

void glColorPointer(GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

size

+ Specifies the number of components per color. Must be 3 or 4. + The initial value is 4. +

type

+ Specifies the data type of each color component in the array. + Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + and + GL_DOUBLE + are accepted. + The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive colors. + If stride is 0, the colors are understood to be + tightly packed in the array. The initial value is 0. +

pointer

+ Specifies a pointer to the first component of the first color element + in the array. The initial value is 0. +

Description

+ glColorPointer specifies the location and data format of an array of color components + to use when rendering. + size specifies the number of components per color, and must be 3 or 4. + type specifies the data type of each color component, and stride + specifies the byte stride from one color to the next, allowing vertices and + attributes to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see glInterleavedArrays.) +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a color array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as color vertex array + client-side state (GL_COLOR_ARRAY_BUFFER_BINDING). +

+ When a color array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the color array, call + glEnableClientState and glDisableClientState with the argument + GL_COLOR_ARRAY. If + enabled, the color array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. +

Notes

+ glColorPointer is available only if the GL version is 1.1 or greater. +

+ The color array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glColorPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glColorPointer is typically implemented on the client side. +

+ Color array parameters are client-side state and are therefore not saved + or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and glPopClientAttrib instead. +

Errors

+ GL_INVALID_VALUE is generated if size is not 3 or 4. +

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_COLOR_ARRAY +

+ glGet with argument GL_COLOR_ARRAY_SIZE +

+ glGet with argument GL_COLOR_ARRAY_TYPE +

+ glGet with argument GL_COLOR_ARRAY_STRIDE +

+ glGet with argument GL_COLOR_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_COLOR_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColorSubTable.xml b/upstream-man-pages/man2/xhtml/glColorSubTable.xml new file mode 100644 index 0000000..aa8a882 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColorSubTable.xml @@ -0,0 +1,130 @@ + + +glColorSubTable

Name

glColorSubTable — respecify a portion of a color table

C Specification

void glColorSubTable(GLenum  target,
 GLsizei  start,
 GLsizei  count,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

Parameters

target

+ Must be one of + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. +

start

+ The starting index of the portion of the color table to be replaced. +

count

+ The number of table entries to replace. +

format

+ The format of the pixel data in data. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ The type of the pixel data in data. + The allowable values are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Pointer to a one-dimensional array of pixel data that is processed to + replace the specified region of the color table. +

Description

+ glColorSubTable is used to respecify a contiguous portion of a color table previously + defined using glColorTable. The pixels referenced by data replace the + portion of the existing table from indices start to + + + + start + + + count + - + 1 + + , + inclusive. This region may not include any + entries outside the range of the color table as it was originally specified. + It is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a portion of a color table is + respecified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glColorSubTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

+

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if + + + + + start + + + count + + > + width + + . +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glColorSubTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetColorTable, + glGetColorTableParameter +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColorTable.xml b/upstream-man-pages/man2/xhtml/glColorTable.xml new file mode 100644 index 0000000..a854274 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColorTable.xml @@ -0,0 +1,466 @@ + + +glColorTable

Name

glColorTable — define a color lookup table

C Specification

void glColorTable(GLenum  target,
 GLenum  internalformat,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

Parameters

target

+ Must be one of + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_PROXY_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, + or + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE. +

internalformat

+ The internal format of the color table. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, and + GL_RGBA16. +

width

+ The number of entries in the color lookup table specified by data. +

format

+ The format of the pixel data in data. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ The type of the pixel data in data. + The allowable values are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Pointer to a one-dimensional array of pixel data that is processed to + build the color table. +

Description

+ glColorTable may be used in two ways: + to test the actual size and color resolution of a lookup table + given a particular set of parameters, + or to load the contents of a color lookup + table. + Use the targets GL_PROXY_* for the first case + and the other targets for the second case. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a color table is + specified, data is treated as a byte offset into the buffer object's data store. +

+ If target is GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or + GL_POST_COLOR_MATRIX_COLOR_TABLE, + glColorTable builds a color lookup table from an array of pixels. + The pixel array specified by width, format, type, and data + is extracted from memory and + processed just as if glDrawPixels were called, but processing + stops after the final expansion to RGBA is completed. +

+ The four scale parameters and the four bias parameters that are defined + for the table are then used to scale and bias the R, G, B, and A components + of each pixel. + (Use glColorTableParameter to set these scale and bias + parameters.) +

+ Next, the R, G, B, and A values are clamped to the range + + + + 0 + 1 + + . + Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_ALPHA + + + + + A + + + +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ Finally, the red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in the color table. + They form a one-dimensional table with indices in the range + + + + 0 + + width + - + 1 + + + . +

+ If target is GL_PROXY_*, + glColorTable recomputes and stores the values of the proxy color table's state + variables + GL_COLOR_TABLE_FORMAT, + GL_COLOR_TABLE_WIDTH, + GL_COLOR_TABLE_RED_SIZE, + GL_COLOR_TABLE_GREEN_SIZE, + GL_COLOR_TABLE_BLUE_SIZE, + GL_COLOR_TABLE_ALPHA_SIZE, + GL_COLOR_TABLE_LUMINANCE_SIZE, and + GL_COLOR_TABLE_INTENSITY_SIZE. + There is no effect on the image or state of any actual color table. + If the specified color table is too large to be supported, then all the + proxy state variables listed above are set to zero. + Otherwise, the color table could be supported by glColorTable + using the corresponding non-proxy target, + and the proxy state variables are set as if that target were being defined. +

+ The proxy state variables can be retrieved by calling + glGetColorTableParameter with a target of + GL_PROXY_*. + This allows the application to decide if a particular glColorTable + command would succeed, and to determine what the resulting color table + attributes would be. +

+ If a color table is enabled, and its width is non-zero, then its + contents are used to replace a subset of the components of each RGBA + pixel group, based on the internal format of the table. +

+ Each pixel group has color components (R, G, B, A) + that are in the range + + + + 0.0 + 1.0 + + . + The color components are rescaled to + the size of the color lookup table to form an index. + Then a subset of the components based on the internal format of the table are + replaced by the table entry selected by that index. + If the color components and contents of the table are represented as follows: +

+

+ Representation + + Meaning +
+ r + + Table index computed from R +
+ g + + Table index computed from G +
+ b + + Table index computed from B +
+ a + + Table index computed from A +
+ L[i] + + Luminance value at table index i +
+ I[i] + + Intensity value at table index i +
+ R[i] + + Red value at table index i +
+ G[i] + + Green value at table index i +
+ B[i] + + Blue value at table index i +
+ A[i] + + Alpha value at table index i +

+ then the result of color table lookup is as follows: +

+

+ + Resulting Texture Components +
+ Table Internal Format + + R + + G + + B + + A +
+ GL_ALPHA + + R + + G + + B + + A[a] +
+ GL_LUMINANCE + + L[r] + + L[g] + + L[b] + + At +
+ GL_LUMINANCE_ALPHA + + L[r] + + L[g] + + L[b] + + A[a] +
+ GL_INTENSITY + + I[r] + + I[g] + + I[b] + + I[a] +
+ GL_RGB + + R[r] + + G[g] + + B[b] + + A +
+ GL_RGBA + + R[r] + + G[g] + + B[b] + + A[a] +

+ When GL_COLOR_TABLE is enabled, the colors resulting from + the pixel map operation (if it is enabled) are mapped + by the color lookup table before being passed to the convolution + operation. The colors resulting from the convolution operation + are modified by the post convolution color lookup table when + GL_POST_CONVOLUTION_COLOR_TABLE + is enabled. These modified colors are then sent to the color matrix operation. + Finally, if GL_POST_COLOR_MATRIX_COLOR_TABLE + is enabled, the colors resulting from the color matrix operation + are mapped by the post color matrix color lookup table before being + used by the histogram operation. +

+

Notes

+ glColorTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

+ If target is set to GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or GL_POST_COLOR_MATRIX_COLOR_TABLE, + then width must be a power of two or a GL_INVALID_VALUE + error is generated. +

+

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if width is less than zero. +

+ GL_TABLE_TOO_LARGE is generated if the requested color table + is too large to be supported by the implementation, and target is + not a GL_PROXY_* target. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glColorTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetColorTableParameter +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

See Also

+ glColorSubTable, + glColorTableParameter, + glCopyColorTable, + glCopyColorSubTable, + glGetColorTable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glColorTableParameter.xml b/upstream-man-pages/man2/xhtml/glColorTableParameter.xml new file mode 100644 index 0000000..95bb5eb --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glColorTableParameter.xml @@ -0,0 +1,57 @@ + + +glColorTableParameter

Name

glColorTableParameter — set color lookup table parameters

C Specification

void glColorTableParameterfv(GLenum  target,
 GLenum  pname,
 const GLfloat *  params);
void glColorTableParameteriv(GLenum  target,
 GLenum  pname,
 const GLint *  params);

Parameters

target

+ The target color table. + Must be + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. +

pname

+ The symbolic name of a texture color lookup table parameter. + Must be one of + GL_COLOR_TABLE_SCALE or + GL_COLOR_TABLE_BIAS. +

params

+ A pointer to an array where the values of the parameters are stored. +

Description

+ glColorTableParameter is used to specify the scale factors and bias terms applied to + color components when they are loaded into a color table. target + indicates which color table the scale and bias terms apply to; it + must be set to + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. +

+ pname must be GL_COLOR_TABLE_SCALE to set the + scale factors. + In this case, params points to an array of four values, which are + the scale factors for red, green, blue, and alpha, in that order. +

+ pname must be GL_COLOR_TABLE_BIAS to set the + bias terms. In this case, + params points to an array of four values, which are the bias + terms for red, green, blue, and alpha, in that order. +

+ The color tables themselves are specified by + calling glColorTable. +

Notes

+ glColorTableParameter is available only if ARB_imaging is returned from calling + glGetString with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not + an acceptable value. +

+ GL_INVALID_OPERATION is generated if glColorTableParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetColorTableParameter +

See Also

+ glColorTable, + glPixelTransfer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompileShader.xml b/upstream-man-pages/man2/xhtml/glCompileShader.xml new file mode 100644 index 0000000..fb5470d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompileShader.xml @@ -0,0 +1,37 @@ + + +glCompileShader

Name

glCompileShader — Compiles a shader object

C Specification

void glCompileShader(GLuint  shader);

Parameters

shader

Specifies the shader object to be + compiled.

Description

glCompileShader compiles the source + code strings that have been stored in the shader object + specified by shader.

The compilation status will be stored as part of the + shader object's state. This value will be set to + GL_TRUE if the shader was compiled without + errors and is ready for use, and GL_FALSE + otherwise. It can be queried by calling + glGetShader + with arguments shader and + GL_COMPILE_STATUS.

Compilation of a shader can fail for a number of reasons + as specified by the OpenGL Shading Language Specification. + Whether or not the compilation was successful, information about + the compilation can be obtained from the shader object's + information log by calling + glGetShaderInfoLog.

Notes

glCompileShader + is available only if the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + glCompileShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetShaderInfoLog + with argument shader

glGetShader + with arguments shader and + GL_COMPILE_STATUS

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompressedTexImage1D.xml b/upstream-man-pages/man2/xhtml/glCompressedTexImage1D.xml new file mode 100644 index 0000000..96a9a95 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompressedTexImage1D.xml @@ -0,0 +1,129 @@ + + +glCompressedTexImage1D

Name

glCompressedTexImage1D — specify a one-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage1D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. +

border

+ Specifies the width of the border. Must be either 0 or 1. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. To enable and disable one-dimensional texturing, call glEnable and glDisable with argument GL_TEXTURE_1D. +

+ glCompressedTexImage1D loads a previously defined, and retrieved, compressed one-dimensional texture image if target is GL_TEXTURE_1D (see glTexImage1D). +

+ If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. +

+ internalformat must be extension-specified compressed-texture format. When a texture is loaded with glTexImage1D using a generic compressed texture format (e.g., GL_COMPRESSED_RGB) the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glCompressedTexImage1D is available only if the GL version is 1.3 or greater. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glCompressedTexImage1D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glIsEnabled with argument GL_TEXTURE_1D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompressedTexImage2D.xml b/upstream-man-pages/man2/xhtml/glCompressedTexImage2D.xml new file mode 100644 index 0000000..85e9408 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompressedTexImage2D.xml @@ -0,0 +1,178 @@ + + +glCompressedTexImage2D

Name

glCompressedTexImage2D — specify a two-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage2D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support 2D texture images that are at least 64 texels + wide and cube-mapped texture images that are at least 16 texels wide. +

height

+ Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + Must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support 2D texture images that are at least 64 texels + high and cube-mapped texture images that are at least 16 texels high. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + two-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_2D. To enable and disable texturing using + cube-mapped textures, call glEnable and glDisable with argument + GL_TEXTURE_CUBE_MAP. +

+ glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional + texture image if target is GL_TEXTURE_2D (see glTexImage2D). +

+ If target is GL_PROXY_TEXTURE_2D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. +

+ internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage2D, query the compressed texture image's + size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glCompressedTexImage2D is available only if the GL version is 1.3 or greater. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glCompressedTexImage2D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glIsEnabled with argument + GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompressedTexImage3D.xml b/upstream-man-pages/man2/xhtml/glCompressedTexImage3D.xml new file mode 100644 index 0000000..db3c12c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompressedTexImage3D.xml @@ -0,0 +1,187 @@ + + +glCompressedTexImage3D

Name

glCompressedTexImage3D — specify a three-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage3D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D or GL_PROXY_TEXTURE_3D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + wide. +

height

+ Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + high. +

depth

+ Specifies the depth of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + deep. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + three-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_3D. +

+ glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional + texture image if target is GL_TEXTURE_3D (see glTexImage3D). +

+ If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. +

+ internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage3D, query the compressed texture image's + size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glCompressedTexImage3D is available only if the GL version is 1.3 or greater. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glCompressedTexImage3D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ Undefined results, including abnormal program termination, are generated if data is not encoded in a manner consistent with the extension specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glIsEnabled with argument GL_TEXTURE_3D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompressedTexSubImage1D.xml b/upstream-man-pages/man2/xhtml/glCompressedTexSubImage1D.xml new file mode 100644 index 0000000..1236f53 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompressedTexSubImage1D.xml @@ -0,0 +1,135 @@ + + +glCompressedTexSubImage1D

Name

glCompressedTexSubImage1D — specify a one-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLsizei  width,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + one-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_1D. +

+ glCompressedTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ format must be an extension-specified + compressed-texture format. The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage1D), and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glCompressedTexSubImage1D is available only if the GL version is 1.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if format is one of these generic compressed internal formats: + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SLUMINANCE, + GL_COMPRESSED_SLUMINANCE_ALPHA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGBA, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glCompressedTexSubImage1D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glIsEnabled with argument GL_TEXTURE_1D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompressedTexSubImage2D.xml b/upstream-man-pages/man2/xhtml/glCompressedTexSubImage2D.xml new file mode 100644 index 0000000..f188014 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompressedTexSubImage2D.xml @@ -0,0 +1,168 @@ + + +glCompressedTexSubImage2D

Name

glCompressedTexSubImage2D — specify a two-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + two-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_2D. To enable and disable texturing using + cube-mapped texture, call glEnable and glDisable with argument + GL_TEXTURE_CUBE_MAP. +

+ glCompressedTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ format must be an extension-specified + compressed-texture format. The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage2D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glCompressedTexSubImage2D is available only if the GL version is 1.3 or greater. +

+ GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. +

Errors

+ GL_INVALID_ENUM is generated if format is one of these generic compressed internal formats: + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SLUMINANCE, + GL_COMPRESSED_SLUMINANCE_ALPHA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGBA, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glCompressedTexSubImage2D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glIsEnabled with argument GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCompressedTexSubImage3D.xml b/upstream-man-pages/man2/xhtml/glCompressedTexSubImage3D.xml new file mode 100644 index 0000000..f89a3f2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCompressedTexSubImage3D.xml @@ -0,0 +1,163 @@ + + +glCompressedTexSubImage3D

Name

glCompressedTexSubImage3D — specify a three-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

depth

+ Specifies the depth of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical + primitive for which texturing is enabled. To enable and disable + three-dimensional texturing, call glEnable and glDisable with argument + GL_TEXTURE_3D. +

+ glCompressedTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + and the z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. This region may not include + any texels outside the range of the texture array as it was originally + specified. It is not an error to specify a subtexture with width of 0, + but such a specification has no effect. +

+ format must be an extension-specified + compressed-texture format. The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage3D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glCompressedTexSubImage3D is available only if the GL version is 1.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if format is one of these generic compressed internal formats: + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SLUMINANCE, + GL_COMPRESSED_SLUMINANCE_ALPHA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGBA, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glCompressedTexSubImage3D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glIsEnabled with argument GL_TEXTURE_3D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glConvolutionFilter1D.xml b/upstream-man-pages/man2/xhtml/glConvolutionFilter1D.xml new file mode 100644 index 0000000..edd557c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glConvolutionFilter1D.xml @@ -0,0 +1,276 @@ + + +glConvolutionFilter1D

Name

glConvolutionFilter1D — define a one-dimensional convolution filter

C Specification

void glConvolutionFilter1D(GLenum  target,
 GLenum  internalformat,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

Parameters

target

+ Must be GL_CONVOLUTION_1D. +

internalformat

+ The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

width

+ The width of the pixel array referenced by data. +

format

+ The format of the pixel data in data. + The allowable values are + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_INTENSITY, + GL_RGB, and + GL_RGBA. +

type

+ The type of the pixel data in data. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

data

+ Pointer to a one-dimensional array of pixel data that is processed to + build the convolution filter kernel. +

Description

+ glConvolutionFilter1D builds a one-dimensional convolution filter kernel from an array of + pixels. +

+ The pixel array specified by width, format, type, and data + is extracted from memory and + processed just as if glDrawPixels were called, but processing + stops after the final expansion to RGBA is completed. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a convolution filter is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The R, G, B, and A components of each pixel are next scaled by the four + 1D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 1D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_1D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. +

+ Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_ALPHA + + + + + A + + + +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + They form a one-dimensional filter kernel image indexed with coordinate + i such that i starts at 0 and increases from left to right. + Kernel location i is derived from the ith pixel, counting from 0. +

+ Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. +

Notes

+ glConvolutionFilter1D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_1D. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_1D and name + GL_MAX_CONVOLUTION_WIDTH. +

+ GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and type is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and type is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glConvolutionFilter1D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetConvolutionParameter, glGetConvolutionFilter +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glConvolutionFilter2D.xml b/upstream-man-pages/man2/xhtml/glConvolutionFilter2D.xml new file mode 100644 index 0000000..3c3a039 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glConvolutionFilter2D.xml @@ -0,0 +1,288 @@ + + +glConvolutionFilter2D

Name

glConvolutionFilter2D — define a two-dimensional convolution filter

C Specification

void glConvolutionFilter2D(GLenum  target,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

Parameters

target

+ Must be GL_CONVOLUTION_2D. +

internalformat

+ The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

width

+ The width of the pixel array referenced by data. +

height

+ The height of the pixel array referenced by data. +

format

+ The format of the pixel data in data. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ The type of the pixel data in data. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

data

+ Pointer to a two-dimensional array of pixel data that is processed to + build the convolution filter kernel. +

Description

+ glConvolutionFilter2D builds a two-dimensional convolution filter kernel from an array of + pixels. +

+ The pixel array specified by width, height, format, type, and + data is extracted from memory and processed just as if + glDrawPixels were called, but processing stops after the final + expansion to RGBA is completed. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a convolution filter is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The R, G, B, and A components of each pixel are next scaled by the four + 2D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 2D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_2D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. +

+ Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_ALPHA + + + + + A + + + +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + They form a two-dimensional filter kernel image indexed with coordinates + i and j such that i starts at zero and increases from left + to right, and j starts at zero and increases from bottom to top. + Kernel location i,j is derived from the Nth pixel, + where N is i+j*width. +

+ Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. +

Notes

+ glConvolutionFilter2D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_2D. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_WIDTH. +

+ GL_INVALID_VALUE is generated if height is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_HEIGHT. +

+ GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glConvolutionFilter2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glConvolutionParameter.xml b/upstream-man-pages/man2/xhtml/glConvolutionParameter.xml new file mode 100644 index 0000000..5eb5ff4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glConvolutionParameter.xml @@ -0,0 +1,166 @@ + + +glConvolutionParameter

Name

glConvolutionParameter — set convolution parameters

C Specification

void glConvolutionParameterf(GLenum  target,
 GLenum  pname,
 GLfloat  params);
void glConvolutionParameteri(GLenum  target,
 GLenum  pname,
 GLint  params);

+

Parameters

target

+ The target for the convolution parameter. + Must be one of + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D. +

pname

+ The parameter to be set. + Must be + GL_CONVOLUTION_BORDER_MODE. +

params

+ The parameter value. + Must be one of + GL_REDUCE, GL_CONSTANT_BORDER, GL_REPLICATE_BORDER. +

+

C Specification

void glConvolutionParameterfv(GLenum  target,
 GLenum  pname,
 const GLfloat *  params);
void glConvolutionParameteriv(GLenum  target,
 GLenum  pname,
 const GLint *  params);

+

Parameters

target

+ The target for the convolution parameter. + Must be one of + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D. +

pname

+ The parameter to be set. + Must be one of + GL_CONVOLUTION_BORDER_MODE, + GL_CONVOLUTION_BORDER_COLOR, + GL_CONVOLUTION_FILTER_SCALE, or + GL_CONVOLUTION_FILTER_BIAS. +

params

+ The parameter value. + If pnamev is GL_CONVOLUTION_BORDER_MODE, paramsv must be one of + GL_REDUCE, GL_CONSTANT_BORDER, or GL_REPLICATE_BORDER. + Otherwise, must be a vector of four values (for red, green, blue, and alpha, + respectively) to be used for + scaling (when pnamev is GL_CONVOLUTION_FILTER_SCALE), or + biasing (when pnamev is GL_CONVOLUTION_FILTER_BIAS) a convolution + filter kernel or setting the constant border color (when pnamev is + GL_CONVOLUTION_BORDER_COLOR. +

Description

+ glConvolutionParameter sets the value of a convolution parameter. +

+ target selects the convolution filter to be affected: + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D + for the 1D, 2D, or separable 2D filter, respectively. +

+ pname selects the parameter to be changed. + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS + affect the definition of the convolution filter kernel; see + glConvolutionFilter1D, glConvolutionFilter2D, and + glSeparableFilter2D for details. + In these cases, paramsv is an array of four values to be applied to + red, green, blue, and alpha values, respectively. The initial value for + GL_CONVOLUTION_FILTER_SCALE is (1, 1, 1, 1), and the initial value + for GL_CONVOLUTION_FILTER_BIAS is (0, 0, 0, 0). +

+ A pname value of GL_CONVOLUTION_BORDER_MODE controls the + convolution border mode. The accepted modes are: +

GL_REDUCE

+ The image resulting from convolution is + smaller than the source image. + If the filter width is + Wf + and height is + Hf, + and the source image width is + Ws + and height is + Hs, + then the convolved image width will be + + + + Ws + - + Wf + + + 1 + + + and height + will be + + + + Hs + - + Hf + + + 1 + + . + (If this reduction would generate an image with zero or negative width + and/or height, the output is simply null, with no error generated.) + The coordinates of the image resulting from convolution are zero + through + + + + Ws + - + Wf + + + in width and zero through + + + + Hs + - + Hf + + + in + height. +

GL_CONSTANT_BORDER

+ The image resulting from convolution is the same size as the source image, and + processed as if the source image were surrounded by pixels with their color + specified by the GL_CONVOLUTION_BORDER_COLOR. +

GL_REPLICATE_BORDER

+ The image resulting from convolution is the same size as the source image, and + processed as if the outermost pixel on the border of the source image were + replicated. +

Notes

+ glConvolutionParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

+ In cases where errors can result from the specification of invalid + image dimensions, it is the dimensions after convolution that are + tested, not the dimensions of the source image. + For example, glTexImage1D requires power-of-two image size. + When GL_REDUCE border mode is in effect, + the source image must be larger than the final power-of-two size + by one less than the size of the 1D filter kernel. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if pname is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if pname is + GL_CONVOLUTION_BORDER_MODE and params is not one of + GL_REDUCE, GL_CONSTANT_BORDER, or GL_REPLICATE_BORDER. +

+ GL_INVALID_OPERATION is generated if glConvolutionParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetConvolutionParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyColorSubTable.xml b/upstream-man-pages/man2/xhtml/glCopyColorSubTable.xml new file mode 100644 index 0000000..a0d8241 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyColorSubTable.xml @@ -0,0 +1,74 @@ + + +glCopyColorSubTable

Name

glCopyColorSubTable — respecify a portion of a color table

C Specification

void glCopyColorSubTable(GLenum  target,
 GLsizei  start,
 GLint  x,
 GLint  y,
 GLsizei  width);

Parameters

target

+ Must be one of + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, or + GL_POST_COLOR_MATRIX_COLOR_TABLE. +

start

+ The starting index of the portion of the color table to be replaced. +

x, y

+ The window coordinates of the left corner of the row of pixels to be + copied. +

width

+ The number of table entries to replace. +

Description

+ glCopyColorSubTable is used to respecify a contiguous portion of a color table previously + defined using glColorTable. The pixels copied from the framebuffer + replace the portion of the existing table from indices start to + + + + start + + + x + - + 1 + + , + inclusive. This region may not include any + entries outside the range of the color table, as was originally specified. + It is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

Notes

+ glCopyColorSubTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_VALUE is generated if target is not a previously defined + color table. +

+ GL_INVALID_VALUE is generated if target is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if + + + + + start + + + x + + > + width + + . +

+ GL_INVALID_OPERATION is generated if glCopyColorSubTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

See Also

+ glColorSubTable, + glColorTableParameter, + glCopyColorTable, + glCopyColorSubTable, + glGetColorTable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyColorTable.xml b/upstream-man-pages/man2/xhtml/glCopyColorTable.xml new file mode 100644 index 0000000..338e915 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyColorTable.xml @@ -0,0 +1,215 @@ + + +glCopyColorTable

Name

glCopyColorTable — copy pixels into a color table

C Specification

void glCopyColorTable(GLenum  target,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width);

Parameters

target

+ The color table target. Must be + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or GL_POST_COLOR_MATRIX_COLOR_TABLE. +

internalformat

+ The internal storage format of the texture image. + Must be one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

x

+ The x coordinate of the lower-left corner of the pixel rectangle + to be transferred to the color table. +

y

+ The y coordinate of the lower-left corner of the pixel rectangle + to be transferred to the color table. +

width

+ The width of the pixel rectangle. +

Description

+ glCopyColorTable loads a color table with pixels from the current + GL_READ_BUFFER (rather than from main memory, as is the case for + glColorTable). +

+ The screen-aligned pixel rectangle with lower-left corner at (x,\ y) + having width width and height 1 + is loaded into the color table. If any pixels within + this region are outside the window that is associated with the GL + context, the values obtained for those pixels are undefined. +

+ The pixels in the rectangle are processed just as if + glReadPixels were called, with internalformat set to RGBA, + but processing stops after the final conversion to RGBA. +

+ The four scale parameters and the four bias parameters that are defined + for the table are then used to scale and bias the R, G, B, and A components + of each pixel. The scale and bias parameters are set by calling + glColorTableParameter. +

+ Next, the R, G, B, and A values are clamped to the range + + + + 0 + 1 + + . + Each pixel is then converted to the internal format specified by + internalformat. This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_ALPHA + + + + + A + + + +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ Finally, the red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in the color table. + They form a one-dimensional table with indices in the range + + + + 0 + + width + - + 1 + + + . +

+

Notes

+ glCopyColorTable is available only if ARB_imaging is returned from calling + glGetString with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated when target is not one of the + allowable values. +

+ GL_INVALID_VALUE is generated if width is less than zero. +

+ GL_INVALID_VALUE is generated if internalformat is not one of the + allowable values. +

+ GL_TABLE_TOO_LARGE is generated if the requested color table + is too large to be supported by the implementation. +

+ GL_INVALID_OPERATION is generated if glCopyColorTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyConvolutionFilter1D.xml b/upstream-man-pages/man2/xhtml/glCopyConvolutionFilter1D.xml new file mode 100644 index 0000000..314234a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyConvolutionFilter1D.xml @@ -0,0 +1,206 @@ + + +glCopyConvolutionFilter1D

Name

glCopyConvolutionFilter1D — copy pixels into a one-dimensional convolution filter

C Specification

void glCopyConvolutionFilter1D(GLenum  target,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width);

Parameters

target

+ Must be GL_CONVOLUTION_1D. +

internalformat

+ The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

x, y

+ The window space coordinates of the lower-left coordinate of the + pixel array to copy. +

width

+ The width of the pixel array to copy. +

Description

+ glCopyConvolutionFilter1D defines a one-dimensional convolution filter kernel with pixels + from the current GL_READ_BUFFER (rather than from main memory, + as is the case for glConvolutionFilter1D). +

+ The screen-aligned pixel rectangle with lower-left corner at (x,\ y), + width width and height 1 is used to define + the convolution filter. If any pixels within this region are + outside the window that is associated with the GL context, the + values obtained for those pixels are undefined. +

+ The pixels in the rectangle are processed exactly as if glReadPixels + had been called with format + set to RGBA, but the process stops just before final conversion. + The R, G, B, and A components of each pixel are next scaled by the four + 1D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 1D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_1D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. +

+ Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_ALPHA + + + + + A + + + +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. +

+ Pixel ordering is such that lower x screen coordinates correspond to + lower i filter image coordinates. +

+ Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. +

Notes

+ glCopyConvolutionFilter1D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_1D. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_1D and name + GL_MAX_CONVOLUTION_WIDTH. +

+ GL_INVALID_OPERATION is generated if glCopyConvolutionFilter1D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyConvolutionFilter2D.xml b/upstream-man-pages/man2/xhtml/glCopyConvolutionFilter2D.xml new file mode 100644 index 0000000..ff2466e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyConvolutionFilter2D.xml @@ -0,0 +1,216 @@ + + +glCopyConvolutionFilter2D

Name

glCopyConvolutionFilter2D — copy pixels into a two-dimensional convolution filter

C Specification

void glCopyConvolutionFilter2D(GLenum  target,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

Parameters

target

+ Must be GL_CONVOLUTION_2D. +

internalformat

+ The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

x, y

+ The window space coordinates of the lower-left coordinate of the + pixel array to copy. +

width

+ The width of the pixel array to copy. +

height

+ The height of the pixel array to copy. +

Description

+ glCopyConvolutionFilter2D defines a two-dimensional convolution filter kernel with pixels + from the current GL_READ_BUFFER (rather than from main memory, + as is the case for glConvolutionFilter2D). +

+ The screen-aligned pixel rectangle with lower-left corner at (x,\ y), + width width and height height + is used to define the convolution filter. If any pixels within this + region are + outside the window that is associated with the GL context, the + values obtained for those pixels are undefined. +

+ The pixels in the rectangle are processed + exactly as if glReadPixels had been called with format + set to RGBA, but the process stops just before final conversion. + The R, G, B, and A components of each pixel are next scaled by the four + 2D GL_CONVOLUTION_FILTER_SCALE parameters and biased by the + four 2D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_CONVOLUTION_2D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. +

+ Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_ALPHA + + + + + A + + + +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. +

+ Pixel ordering is such that lower x screen coordinates correspond to + lower i filter image coordinates, and lower y screen coordinates + correspond to lower j filter image coordinates. +

+ Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. +

Notes

+ glCopyConvolutionFilter2D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_CONVOLUTION_2D. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_WIDTH. +

+ GL_INVALID_VALUE is generated if height is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_CONVOLUTION_2D and name + GL_MAX_CONVOLUTION_HEIGHT. +

+ GL_INVALID_OPERATION is generated if glCopyConvolutionFilter2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyPixels.xml b/upstream-man-pages/man2/xhtml/glCopyPixels.xml new file mode 100644 index 0000000..a4eda2b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyPixels.xml @@ -0,0 +1,495 @@ + + +glCopyPixels

Name

glCopyPixels — copy pixels in the frame buffer

C Specification

void glCopyPixels(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height,
 GLenum  type);

Parameters

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width, height

+ Specify the dimensions of the rectangular region of pixels to be copied. + Both must be nonnegative. +

type

+ Specifies whether color values, + depth values, + or stencil values are to be copied. + Symbolic constants + GL_COLOR, + GL_DEPTH, + and GL_STENCIL are accepted. +

Description

+ glCopyPixels copies a screen-aligned rectangle of pixels + from the specified frame buffer location to a region relative to the + current raster position. + Its operation is well defined only if the entire pixel source region + is within the exposed portion of the window. + Results of copies from outside the window, + or from regions of the window that are not exposed, + are hardware dependent and undefined. +

+ x and y specify the window coordinates of + the lower left corner of the rectangular region to be copied. + width and height specify the dimensions of the + rectangular region to be copied. + Both width and height must not be negative. +

+ Several parameters control the processing of the pixel data + while it is being copied. + These parameters are set with three commands: + glPixelTransfer, + glPixelMap, and + glPixelZoom. + This reference page describes the effects on glCopyPixels of most, + but not all, of the parameters specified by these three commands. +

+ glCopyPixels copies values from each pixel with the lower left-hand corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are copied in row order from the lowest to the highest row, + left to right in each row. +

+ type specifies whether color, depth, or stencil data is to be copied. + The details of the transfer for each data type are as follows: +

GL_COLOR

+ Indices or RGBA colors are read from the buffer currently specified as the + read source buffer (see glReadBuffer). + If the GL is in color index mode, + each index that is read from this buffer is converted + to a fixed-point format with an unspecified + number of bits to the right of the binary point. + Each index is then shifted left by GL_INDEX_SHIFT bits, + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + If GL_MAP_COLOR is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_I_TO_I. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in a color index buffer. +

+ If the GL is in RGBA mode, + the red, green, blue, and alpha components of each pixel that is read + are converted to an internal floating-point format with unspecified + precision. + The conversion maps the largest representable component value to 1.0, + and component value 0 to 0.0. + The resulting floating-point color values are then multiplied + by GL_c_SCALE and added to GL_c_BIAS, + where c is RED, GREEN, BLUE, and ALPHA + for the respective color components. + The results are clamped to the range [0,1]. + If GL_MAP_COLOR is true, + each color component is scaled by the size of lookup table + GL_PIXEL_MAP_c_TO_c, + then replaced by the value that it references in that table. + c is R, G, B, or A. +

+ If the ARB_imaging extension is supported, the color values may + be + additionally processed by color-table lookups, color-matrix + transformations, and convolution filters. +

+ The GL then converts the resulting indices or RGBA colors to fragments + by attaching the current raster position z coordinate and + texture coordinates to each pixel, + then assigning window coordinates + + + + + x + r + + + + i + + + y + r + + + + j + + + , + where + + + + x + r + + y + r + + + + is the current raster position, + and the pixel was the + ith + pixel in the + jth + row. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. +

GL_DEPTH

+ Depth values are read from the depth buffer and + converted directly to an internal floating-point format + with unspecified precision. + The resulting floating-point depth value is then multiplied + by GL_DEPTH_SCALE and added to GL_DEPTH_BIAS. + The result is clamped to the range [0,1]. +

+ The GL then converts the resulting depth components to fragments + by attaching the current raster position color or color index and + texture coordinates to each pixel, + then assigning window coordinates + + + + + x + r + + + + i + + + y + r + + + + j + + + , + where + + + + x + r + + y + r + + + + is the current raster position, + and the pixel was the + ith + pixel in the + jth + row. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. +

GL_STENCIL

+ Stencil indices are read from the stencil buffer and + converted to an internal fixed-point format + with an unspecified number of bits to the right of the binary point. + Each fixed-point index is then shifted left by GL_INDEX_SHIFT bits, + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + If GL_MAP_STENCIL is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_S_TO_S. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in the stencil buffer. + The resulting stencil indices are then written to the stencil buffer + such that the index read from the + ith + location of the + jth + row + is written to location + + + + + x + r + + + + i + + + y + r + + + + j + + + , + where + + + + x + r + + y + r + + + + is the current raster position. + Only the pixel ownership test, + the scissor test, + and the stencil writemask affect these write operations. +

+ The rasterization described thus far assumes pixel zoom factors of 1.0. + If + glPixelZoom is used to change the + x + and + y + pixel zoom factors, + pixels are converted to fragments as follows. + If + + + + x + r + + y + r + + + + is the current raster position, + and a given pixel is in the + ith + location in the + jth + row of the source + pixel rectangle, + then fragments are generated for pixels whose centers are in the rectangle + with corners at +

+ + + + + x + r + + + + + zoom + x + + + ⁢ + i + + + y + r + + + + + zoom + y + + + ⁢ + j + + + +

+ and +

+ + + + + x + r + + + + + + zoom + x + + + ⁡ + + + i + + + 1 + + + + + + y + r + + + + + + zoom + y + + + ⁡ + + + j + + + 1 + + + + + + +

+ where + + + zoom + x + + + is the value of GL_ZOOM_X and + + + zoom + y + + + is the value of GL_ZOOM_Y. +

Examples

+ To copy the color pixel in the lower left corner of the window to the current raster position, + use +

+

+glCopyPixels(0, 0, 1, 1, GL_COLOR);
+            

+

+

Notes

+ Modes specified by glPixelStore have no effect on the operation + of glCopyPixels. +

Errors

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if type is GL_DEPTH + and there is no depth buffer. +

+ GL_INVALID_OPERATION is generated if type is GL_STENCIL + and there is no stencil buffer. +

+ GL_INVALID_OPERATION is generated if glCopyPixels + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_RASTER_POSITION +

+ glGet with argument GL_CURRENT_RASTER_POSITION_VALID +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyTexImage1D.xml b/upstream-man-pages/man2/xhtml/glCopyTexImage1D.xml new file mode 100644 index 0000000..8f5bab2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyTexImage1D.xml @@ -0,0 +1,258 @@ + + +glCopyTexImage1D

Name

glCopyTexImage1D — copy pixels into a 1D texture image

C Specification

void glCopyTexImage1D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLint  border);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

x, y

+ Specify the window coordinates of the left corner + of the row of pixels to be copied. +

width

+ Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + The height of the texture image is 1. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

Description

+ glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. +

+ The screen-aligned pixel row with left corner at + + + + x + y + + + and with a length of + + + + width + + + + 2 + ⁡ + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. +

+ The pixels in the row are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ Pixel ordering is such that lower + x + screen coordinates correspond to + lower texture coordinates. +

+ If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. +

+ When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. +

Notes

+ glCopyTexImage1D is available only if the GL version is 1.1 or greater. +

+ Texturing has no effect in color index mode. +

+ 1, 2, 3, and 4 are not accepted values for internalformat. +

+ An image with 0 width indicates a NULL texture. +

+ When the ARB_imaging extension is supported, the RGBA components copied from the framebuffer may be processed by the imaging pipeline. See glTexImage1D for specific details. +

+ GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, and GL_DEPTH_COMPONENT32 are available only + if the GL version is 1.4 or greater. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

+ The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. See glTexImage1D for specific details about sRGB conversion. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable values. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁢ + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalformat is not an allowable value. +

+ GL_INVALID_VALUE is generated if width is less than 0 or greater than + 2 + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer value of n. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if glCopyTexImage1D is executed between the execution of glBegin and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_1D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyTexImage2D.xml b/upstream-man-pages/man2/xhtml/glCopyTexImage2D.xml new file mode 100644 index 0000000..be58b53 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyTexImage2D.xml @@ -0,0 +1,314 @@ + + +glCopyTexImage2D

Name

glCopyTexImage2D — copy pixels into a 2D texture image

C Specification

void glCopyTexImage2D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height,
 GLint  border);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. +

height

+ Specifies the height of the texture image. + Must be 0 or + + + + 2 + m + + + + + 2 + ⁡ + + border + + + + + for some integer + m. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

Description

+ glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image + with pixels from the current + GL_READ_BUFFER. +

+ The screen-aligned pixel rectangle with lower left corner at (x, + y) and with a width of + + + + width + + + + 2 + ⁡ + + border + + + + + and a height of + + + + height + + + + 2 + ⁡ + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. +

+ The pixels in the rectangle are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ Pixel ordering is such that lower + x + and + y + screen coordinates correspond to + lower + s + and + t + texture coordinates. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. +

Notes

+ glCopyTexImage2D is available only if the GL version is 1.1 or greater. +

+ Texturing has no effect in color index mode. +

+ 1, 2, 3, and 4 are not accepted values for internalformat. +

+ An image with height or width of 0 indicates a NULL texture. +

+ When the ARB_imaging extension is supported, the RGBA components read from the framebuffer may be processed by the imaging pipeline. See glTexImage1D for specific details. +

+ GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. +

+ GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, + and GL_DEPTH_COMPONENT32 are available only if the GL version is 1.4 + or greater. +

+ The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. See glTexImage2D for specific details about sRGB conversion. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁢ + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than + 2 + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or depth cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some integer + k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_VALUE is generated if internalformat is not an + accepted format. +

+ GL_INVALID_OPERATION is generated if glCopyTexImage2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

+ GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyTexSubImage1D.xml b/upstream-man-pages/man2/xhtml/glCopyTexSubImage1D.xml new file mode 100644 index 0000000..e292b6b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyTexSubImage1D.xml @@ -0,0 +1,171 @@ + + +glCopyTexSubImage1D

Name

glCopyTexSubImage1D — copy a one-dimensional texture subimage

C Specification

void glCopyTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  x,
 GLint  y,
 GLsizei  width);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies the texel offset within the texture array. +

x, y

+ Specify the window coordinates of the left corner + of the row of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

Description

+ glCopyTexSubImage1D replaces a portion of a one-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage1D). +

+ The screen-aligned pixel row with left corner at (x,\ y), and with + length width replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive. The destination in the texture array may not + include any texels outside the texture array as it was + originally specified. +

+ The pixels in the row are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ It is not an error to specify a subtexture with zero width, but + such a specification has no effect. + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glCopyTexSubImage1D is available only if the GL version is 1.1 or greater. +

+ Texturing has no effect in color index mode. +

+ glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ When the ARB_imaging extension is supported, the RGBA components + copied from the framebuffer may be processed by the imaging pipeline. See + glTexImage1D for specific details. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_1D. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D or glCopyTexImage1D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. +

+

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_1D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyTexSubImage2D.xml b/upstream-man-pages/man2/xhtml/glCopyTexSubImage2D.xml new file mode 100644 index 0000000..eeb6dc2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyTexSubImage2D.xml @@ -0,0 +1,257 @@ + + +glCopyTexSubImage2D

Name

glCopyTexSubImage2D — copy a two-dimensional texture subimage

C Specification

void glCopyTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

Description

+ glCopyTexSubImage2D replaces a rectangular portion of a two-dimensional texture image or + cube-map texture image with pixels from the current GL_READ_BUFFER + (rather than from main memory, as is the case for glTexSubImage2D). +

+ The screen-aligned pixel rectangle with lower left corner at + + + + x + y + + + and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at the mipmap level specified by level. +

+ The pixels in the rectangle are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + height, or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glCopyTexSubImage2D is available only if the GL version is 1.1 or greater. +

+ GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. +

+ Texturing has no effect in color index mode. +

+ glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ When the ARB_imaging extension is supported, the RGBA components + read from the framebuffer may be processed by the imaging pipeline. See + glTexImage1D for specific details. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_OPERATION is generated if the texture array has not been + defined by a previous glTexImage2D or glCopyTexImage2D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + and + h + include twice the border width. +

+ GL_INVALID_OPERATION is generated if glCopyTexSubImage2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_2D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCopyTexSubImage3D.xml b/upstream-man-pages/man2/xhtml/glCopyTexSubImage3D.xml new file mode 100644 index 0000000..3a65772 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCopyTexSubImage3D.xml @@ -0,0 +1,266 @@ + + +glCopyTexSubImage3D

Name

glCopyTexSubImage3D — copy a three-dimensional texture subimage

C Specification

void glCopyTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

zoffset

+ Specifies a texel offset in the z direction within the texture array. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

Description

+ glCopyTexSubImage3D replaces a rectangular portion of a three-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage3D). +

+ The screen-aligned pixel rectangle with lower left corner at + (x,\ y) and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at z index zoffset and at the mipmap level specified by level. +

+ The pixels in the rectangle are processed exactly as if + glCopyPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + height, depth, or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glCopyTexSubImage3D is available only if the GL version is 1.2 or greater. +

+ Texturing has no effect in color index mode. +

+ glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ When the ARB_imaging extension is supported, the RGBA components + copied from the framebuffer may be processed by the imaging pipeline, as + if they were a two-dimensional texture. See glTexImage2D for + specific details. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where + max + is the returned value of GL_MAX_3D_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + 1 + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. +

+ GL_INVALID_OPERATION is generated if glCopyTexSubImage3D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_3D +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glCreateProgram.xml b/upstream-man-pages/man2/xhtml/glCreateProgram.xml new file mode 100644 index 0000000..00d2877 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCreateProgram.xml @@ -0,0 +1,65 @@ + + +glCreateProgram

Name

glCreateProgram — Creates a program object

C Specification

GLuint glCreateProgram( void);

Description

glCreateProgram creates an empty + program object and returns a non-zero value by which it can be + referenced. A program object is an object to which shader + objects can be attached. This provides a mechanism to specify + the shader objects that will be linked to create a program. It + also provides a means for checking the compatibility of the + shaders that will be used to create a program (for instance, + checking the compatibility between a vertex shader and a + fragment shader). When no longer needed as part of a program + object, shader objects can be detached.

One or more executables are created in a program object by + successfully attaching shader objects to it with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + These executables are made part of current state when + glUseProgram + is called. Program objects can be deleted by calling + glDeleteProgram. + The memory associated with the program object will be deleted + when it is no longer part of current rendering state for any + context.

Notes

glCreateProgram is available only if + the GL version is 2.0 or greater.

Like display lists and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

This function returns 0 if an error occurs creating the program object.

GL_INVALID_OPERATION is generated if + glCreateProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with a valid program object and the index of an active attribute + variable

glGetActiveUniform + with a valid program object and the index of an active uniform + variable

glGetAttachedShaders + with a valid program object

glGetAttribLocation + with a valid program object and the name of an attribute + variable

glGetProgram + with a valid program object and the parameter to be queried

glGetProgramInfoLog + with a valid program object

glGetUniform + with a valid program object and the location of a uniform + variable

glGetUniformLocation + with a valid program object and the name of a uniform + variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glCreateShader.xml b/upstream-man-pages/man2/xhtml/glCreateShader.xml new file mode 100644 index 0000000..ef62f1f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCreateShader.xml @@ -0,0 +1,49 @@ + + +glCreateShader

Name

glCreateShader — Creates a shader object

C Specification

GLuint glCreateShader(GLenum  shaderType);

Parameters

shaderType

Specifies the type of shader to be created. + Must be either GL_VERTEX_SHADER + or GL_FRAGMENT_SHADER.

Description

glCreateShader creates an empty + shader object and returns a non-zero value by which it can be + referenced. A shader object is used to maintain the source code + strings that define a shader. shaderType + indicates the type of shader to be created. Two types of shaders + are supported. A shader of type + GL_VERTEX_SHADER is a shader that is + intended to run on the programmable vertex processor and replace + the fixed functionality vertex processing in OpenGL. A shader of + type GL_FRAGMENT_SHADER is a shader that is + intended to run on the programmable fragment processor and + replace the fixed functionality fragment processing in + OpenGL.

When created, a shader object's + GL_SHADER_TYPE parameter is set to either + GL_VERTEX_SHADER or + GL_FRAGMENT_SHADER, depending on the value + of shaderType.

Notes

glCreateShader is available only if + the GL version is 2.0 or greater.

Like display lists and texture objects, the name space for + shader objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

This function returns 0 if an error occurs creating the + shader object.

GL_INVALID_ENUM is generated if + shaderType is not an accepted value.

GL_INVALID_OPERATION is generated if + glCreateShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetShader + with a valid shader object and the parameter to be queried

glGetShaderInfoLog + with a valid shader object

glGetShaderSource + with a valid shader object

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glCullFace.xml b/upstream-man-pages/man2/xhtml/glCullFace.xml new file mode 100644 index 0000000..e413d57 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glCullFace.xml @@ -0,0 +1,44 @@ + + +glCullFace

Name

glCullFace — specify whether front- or back-facing facets can be culled

C Specification

void glCullFace(GLenum  mode);

Parameters

mode

+ Specifies whether front- or back-facing facets are candidates for culling. + Symbolic constants + GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. + The initial value is GL_BACK. +

Description

+ glCullFace specifies whether front- or back-facing facets are culled + (as specified by mode) when facet culling is enabled. Facet + culling is initially disabled. + To enable and disable facet culling, call the + glEnable and glDisable commands + with the argument GL_CULL_FACE. + Facets include triangles, + quadrilaterals, + polygons, and + rectangles. +

+ glFrontFace specifies which of the clockwise and counterclockwise facets + are front-facing and back-facing. + See glFrontFace. +

Notes

+ If mode is GL_FRONT_AND_BACK, no facets are drawn, but other + primitives such as points and lines are drawn. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glCullFace + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glIsEnabled with argument GL_CULL_FACE +

+ glGet with argument GL_CULL_FACE_MODE +

See Also

+ glEnable, + glFrontFace +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDeleteBuffers.xml b/upstream-man-pages/man2/xhtml/glDeleteBuffers.xml new file mode 100644 index 0000000..4ffe142 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDeleteBuffers.xml @@ -0,0 +1,35 @@ + + +glDeleteBuffers

Name

glDeleteBuffers — delete named buffer objects

C Specification

void glDeleteBuffers(GLsizei  n,
 const GLuint *  buffers);

Parameters

n

+ Specifies the number of buffer objects to be deleted. +

buffers

+ Specifies an array of buffer objects to be deleted. +

Description

+ glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. + After a buffer object is deleted, it has no contents, + and its name is free for reuse (for example by glGenBuffers). + If a buffer object that is currently bound is deleted, the binding reverts + to 0 (the absence of any buffer object, which reverts to client memory usage). +

+ glDeleteBuffers silently ignores 0's and names that do not correspond to + existing buffer objects. +

Notes

+ glDeleteBuffers is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glDeleteBuffers is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsBuffer +

See Also

+ glBindBuffer, + glGenBuffers, + glGet +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glDeleteLists.xml b/upstream-man-pages/man2/xhtml/glDeleteLists.xml new file mode 100644 index 0000000..6e82026 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDeleteLists.xml @@ -0,0 +1,53 @@ + + +glDeleteLists

Name

glDeleteLists — delete a contiguous group of display lists

C Specification

void glDeleteLists(GLuint  list,
 GLsizei  range);

Parameters

list

+ Specifies the integer name of the first display list to delete. +

range

+ Specifies the number of display lists to delete. +

Description

+ glDeleteLists causes a contiguous group of display lists to be deleted. + list is the name of the first display list to be deleted, + and range is the number of display lists to delete. + All display lists + d + with + + + + list + <= + d + <= + + list + + + range + - + 1 + + + + are deleted. +

+ All storage locations allocated to the specified display lists are freed, + and the names are available for reuse at a later time. + Names within the range that do not have an associated display list are ignored. + If range is 0, nothing happens. +

Errors

+ GL_INVALID_VALUE is generated if range is negative. +

+ GL_INVALID_OPERATION is generated if glDeleteLists + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDeleteProgram.xml b/upstream-man-pages/man2/xhtml/glDeleteProgram.xml new file mode 100644 index 0000000..193f031 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDeleteProgram.xml @@ -0,0 +1,40 @@ + + +glDeleteProgram

Name

glDeleteProgram — Deletes a program object

C Specification

void glDeleteProgram(GLuint  program);

Parameters

program

Specifies the program object to be + deleted.

Description

glDeleteProgram frees the memory and + invalidates the name associated with the program object + specified by program. This command + effectively undoes the effects of a call to + glCreateProgram.

If a program object is in use as part of current rendering + state, it will be flagged for deletion, but it will not be + deleted until it is no longer part of current state for any + rendering context. If a program object to be deleted has shader + objects attached to it, those shader objects will be + automatically detached but not deleted unless they have already + been flagged for deletion by a previous call to + glDeleteShader. + A value of 0 for program will be silently + ignored.

To determine whether a program object has been flagged for + deletion, call + glGetProgram + with arguments program and + GL_DELETE_STATUS.

Notes

glDeleteProgram is available only if + the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + glDeleteProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with argument GL_CURRENT_PROGRAM

glGetProgram + with arguments program and + GL_DELETE_STATUS

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glDeleteQueries.xml b/upstream-man-pages/man2/xhtml/glDeleteQueries.xml new file mode 100644 index 0000000..ede80d4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDeleteQueries.xml @@ -0,0 +1,36 @@ + + + +glDeleteQueries

Name

glDeleteQueries — delete named query objects

C Specification

void glDeleteQueries(GLsizei n,
 const GLuint * ids);
 

Parameters

n

+ Specifies the number of query objects to be deleted. +

ids

+ Specifies an array of query objects to be deleted. +

Description

+ glDeleteQueries deletes n query objects named by the elements of the array ids. + After a query object is deleted, it has no contents, + and its name is free for reuse (for example by glGenQueries). +

+ glDeleteQueries silently ignores 0's and names that do not correspond to + existing query objects. +

Notes

+ glDeleteQueries is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glDeleteQueries is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glDeleteShader.xml b/upstream-man-pages/man2/xhtml/glDeleteShader.xml new file mode 100644 index 0000000..a14b741 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDeleteShader.xml @@ -0,0 +1,36 @@ + + +glDeleteShader

Name

glDeleteShader — Deletes a shader object

C Specification

void glDeleteShader(GLuint  shader);

Parameters

shader

Specifies the shader object to be deleted.

Description

glDeleteShader frees the memory and + invalidates the name associated with the shader object specified + by shader. This command effectively + undoes the effects of a call to + glCreateShader.

If a shader object to be deleted is attached to a program + object, it will be flagged for deletion, but it will not be + deleted until it is no longer attached to any program object, + for any rendering context (i.e., it must be detached from + wherever it was attached before it will be deleted). A value of + 0 for shader will be silently + ignored.

To determine whether an object has been flagged for + deletion, call + glGetShader + with arguments shader and + GL_DELETE_STATUS.

Notes

glDeleteShader is available only if + the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + glDeleteShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetAttachedShaders + with the program object to be queried

glGetShader + with arguments shader and + GL_DELETE_STATUS

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glDeleteTextures.xml b/upstream-man-pages/man2/xhtml/glDeleteTextures.xml new file mode 100644 index 0000000..5de5afd --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDeleteTextures.xml @@ -0,0 +1,43 @@ + + +glDeleteTextures

Name

glDeleteTextures — delete named textures

C Specification

void glDeleteTextures(GLsizei  n,
 const GLuint *  textures);

Parameters

n

+ Specifies the number of textures to be deleted. +

textures

+ Specifies an array of textures to be deleted. +

Description

+ glDeleteTextures deletes n textures named by the elements of the array textures. + After a texture is deleted, it has no contents or dimensionality, + and its name is free for reuse (for example by glGenTextures). + If a texture that is currently bound is deleted, the binding reverts + to 0 (the default texture). +

+ glDeleteTextures silently ignores 0's and names that do not correspond to + existing textures. +

Notes

+ glDeleteTextures is available only if the GL version is 1.1 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glDeleteTextures is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsTexture +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDepthFunc.xml b/upstream-man-pages/man2/xhtml/glDepthFunc.xml new file mode 100644 index 0000000..3c19d09 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDepthFunc.xml @@ -0,0 +1,67 @@ + + +glDepthFunc

Name

glDepthFunc — specify the value used for depth buffer comparisons

C Specification

void glDepthFunc(GLenum  func);

Parameters

func

+ Specifies the depth comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. + The initial value is GL_LESS. +

Description

+ glDepthFunc specifies the function used to compare each incoming pixel depth value + with the depth value present in the depth buffer. + The comparison is performed only if depth testing is enabled. + (See glEnable and glDisable of GL_DEPTH_TEST.) +

+ func specifies the conditions under which the pixel will be drawn. + The comparison functions are as follows: +

GL_NEVER

+ Never passes. +

GL_LESS

+ Passes if the incoming depth value is less than the stored depth value. +

GL_EQUAL

+ Passes if the incoming depth value is equal to the stored depth value. +

GL_LEQUAL

+ Passes if the incoming depth value is less than or equal to + the stored depth value. +

GL_GREATER

+ Passes if the incoming depth value is greater than the stored depth value. +

GL_NOTEQUAL

+ Passes if the incoming depth value is not equal to the stored depth value. +

GL_GEQUAL

+ Passes if the incoming depth value is greater than or equal to + the stored depth value. +

GL_ALWAYS

+ Always passes. +

+ The initial value of func is GL_LESS. + Initially, depth testing is disabled. If depth testing is disabled or if no + depth buffer exists, it is as if the depth test always passes. +

Notes

+ Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. +

Errors

+ GL_INVALID_ENUM is generated if func is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glDepthFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_DEPTH_FUNC +

+ glIsEnabled with argument GL_DEPTH_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDepthMask.xml b/upstream-man-pages/man2/xhtml/glDepthMask.xml new file mode 100644 index 0000000..4061ee3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDepthMask.xml @@ -0,0 +1,32 @@ + + +glDepthMask

Name

glDepthMask — enable or disable writing into the depth buffer

C Specification

void glDepthMask(GLboolean  flag);

Parameters

flag

+ Specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. +

Description

+ glDepthMask specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. +

Errors

+ GL_INVALID_OPERATION is generated if glDepthMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_DEPTH_WRITEMASK +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDepthRange.xml b/upstream-man-pages/man2/xhtml/glDepthRange.xml new file mode 100644 index 0000000..9e55dd3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDepthRange.xml @@ -0,0 +1,67 @@ + + +glDepthRange

Name

glDepthRange — specify mapping of depth values from normalized device coordinates to window coordinates

C Specification

void glDepthRange(GLclampd  nearVal,
 GLclampd  farVal);

Parameters

nearVal

+ Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. +

farVal

+ Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. +

Description

+ After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + glDepthRange specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + Thus, + the values accepted by glDepthRange are both clamped to this range + before they are accepted. +

+ The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. +

Notes

+ It is not necessary that nearVal be less than farVal. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. +

Errors

+ GL_INVALID_OPERATION is generated if glDepthRange + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_DEPTH_RANGE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDetachShader.xml b/upstream-man-pages/man2/xhtml/glDetachShader.xml new file mode 100644 index 0000000..ca96c1a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDetachShader.xml @@ -0,0 +1,33 @@ + + +glDetachShader

Name

glDetachShader — Detaches a shader object from a program object to which it is attached

C Specification

void glDetachShader(GLuint  program,
 GLuint  shader);

Parameters

program

Specifies the program object from which to + detach the shader object.

shader

Specifies the shader object to be + detached.

Description

glDetachShader detaches the shader + object specified by shader from the + program object specified by program. This + command can be used to undo the effect of the command + glAttachShader.

If shader has already been flagged + for deletion by a call to + glDeleteShader + and it is not attached to any other program object, it will be + deleted after it has been detached.

Notes

glDetachShader is available only if + the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if either + program or shader + is a value that was not generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + shader is not attached to + program.

GL_INVALID_OPERATION is generated if + glDetachShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetAttachedShaders + with the handle of a valid program object

glGetShader + with arguments shader and + GL_DELETE_STATUS

glIsProgram

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glDisable.xml b/upstream-man-pages/man2/xhtml/glDisable.xml new file mode 100644 index 0000000..2e26c1f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDisable.xml @@ -0,0 +1,4 @@ + + + +glDisable diff --git a/upstream-man-pages/man2/xhtml/glDisableClientState.xml b/upstream-man-pages/man2/xhtml/glDisableClientState.xml new file mode 100644 index 0000000..6c09826 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDisableClientState.xml @@ -0,0 +1,4 @@ + + + +glDisableClientState diff --git a/upstream-man-pages/man2/xhtml/glDisableVertexAttribArray.xml b/upstream-man-pages/man2/xhtml/glDisableVertexAttribArray.xml new file mode 100644 index 0000000..3d93697 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDisableVertexAttribArray.xml @@ -0,0 +1,4 @@ + + + +glDisableVertexAttribArray.xml diff --git a/upstream-man-pages/man2/xhtml/glDrawArrays.xml b/upstream-man-pages/man2/xhtml/glDrawArrays.xml new file mode 100644 index 0000000..662b88b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDrawArrays.xml @@ -0,0 +1,80 @@ + + +glDrawArrays

Name

glDrawArrays — render primitives from array data

C Specification

void glDrawArrays(GLenum  mode,
 GLint  first,
 GLsizei  count);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. +

first

+ Specifies the starting index in the enabled arrays. +

count

+ Specifies the number of indices to be rendered. +

Description

+ glDrawArrays specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glDrawArrays. +

+ When glDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed and how the array elements + construct those primitives. If GL_VERTEX_ARRAY is not enabled, no + geometric primitives are generated. +

+ Vertex attributes that are modified by glDrawArrays have an + unspecified value after glDrawArrays returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glDrawArrays executes. Attributes that aren't + modified remain well defined. +

Notes

+ glDrawArrays is available only if the GL version is 1.1 or greater. +

+ glDrawArrays is included in display lists. If glDrawArrays is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if glDrawArrays is executed between + the execution of glBegin and the corresponding glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDrawBuffer.xml b/upstream-man-pages/man2/xhtml/glDrawBuffer.xml new file mode 100644 index 0000000..d39ed39 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDrawBuffer.xml @@ -0,0 +1,113 @@ + + +glDrawBuffer

Name

glDrawBuffer — specify which color buffers are to be drawn into

C Specification

void glDrawBuffer(GLenum  mode);

Parameters

mode

+ Specifies up to four color buffers to be drawn into. + Symbolic constants + GL_NONE, + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, + GL_FRONT_AND_BACK, and + GL_AUXi, + where i is between 0 and the value of GL_AUX_BUFFERS minus 1, + are accepted. (GL_AUX_BUFFERS is not the upper limit; use glGet + to query the number of available aux buffers.) + The initial value is GL_FRONT for single-buffered contexts, + and GL_BACK for double-buffered contexts. +

Description

+ When colors are written to the frame buffer, + they are written into the color buffers specified by glDrawBuffer. + The specifications are as follows: +

GL_NONE

+ No color buffers are written. +

GL_FRONT_LEFT

+ Only the front left color buffer is written. +

GL_FRONT_RIGHT

+ Only the front right color buffer is written. +

GL_BACK_LEFT

+ Only the back left color buffer is written. +

GL_BACK_RIGHT

+ Only the back right color buffer is written. +

GL_FRONT

+ Only the front left and front right color buffers are written. + If there is no front right color buffer, + only the front left color buffer is written. +

GL_BACK

+ Only the back left and back right color buffers are written. + If there is no back right color buffer, + only the back left color buffer is written. +

GL_LEFT

+ Only the front left and back left color buffers are written. + If there is no back left color buffer, + only the front left color buffer is written. +

GL_RIGHT

+ Only the front right and back right color buffers are written. + If there is no back right color buffer, + only the front right color buffer is written. +

GL_FRONT_AND_BACK

+ All the front and back color buffers + (front left, front right, back left, back right) + are written. + If there are no back color buffers, + only the front left and front right color buffers are written. + If there are no right color buffers, + only the front left and back left color buffers are written. + If there are no right or back color buffers, + only the front left color buffer is written. +

GL_AUXi

+ Only auxiliary color buffer i is written. +

+ If more than one color buffer is selected for drawing, + then blending or logical operations are computed and applied independently + for each color buffer and can produce different results in each buffer. +

+ Monoscopic contexts include only + left + buffers, and stereoscopic contexts include both + left + and + right + buffers. + Likewise, single-buffered contexts include only + front + buffers, and double-buffered contexts include both + front + and + back + buffers. + The context is selected at GL initialization. +

Notes

+ It is always the case that GL_AUX + i + = GL_AUX0 + + i. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if none of the buffers indicated + by mode exists. +

+ GL_INVALID_OPERATION is generated if glDrawBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_DRAW_BUFFER +

+ glGet with argument GL_AUX_BUFFERS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDrawBuffers.xml b/upstream-man-pages/man2/xhtml/glDrawBuffers.xml new file mode 100644 index 0000000..2a3afeb --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDrawBuffers.xml @@ -0,0 +1,82 @@ + + +glDrawBuffers

Name

glDrawBuffers — Specifies a list of color buffers to be drawn into

C Specification

void glDrawBuffers(GLsizei  n,
 const GLenum * bufs);

Parameters

n

Specifies the number of buffers in + bufs.

bufs

Points to an array of symbolic constants + specifying the buffers into which fragment colors or + data values will be written.

Description

glDrawBuffers defines an array of + buffers into which fragment color values or fragment data will + be written. If no fragment shader is active, rendering + operations will generate only one fragment color per fragment + and it will be written into each of the buffers specified by + bufs. If a fragment shader is active and + it writes a value to the output variable + gl_FragColor, then that value will be + written into each of the buffers specified by + bufs. If a fragment shader is active and + it writes a value to one or more elements of the output array + variable gl_FragData[], then the value of + gl_FragData[0] will be written into the + first buffer specified by bufs, the value + of gl_FragData[1] will be written into the + second buffer specified by bufs, and so + on up to gl_FragData[n-1]. The draw buffer + used for gl_FragData[n] and beyond is + implicitly set to be GL_NONE.

The symbolic constants contained in + bufs may be any of the following:

GL_NONE

The fragment color/data value is not written into + any color buffer.

GL_FRONT_LEFT

The fragment color/data value is written into the + front left color buffer.

GL_FRONT_RIGHT

The fragment color/data value is written into the + front right color buffer.

GL_BACK_LEFT

The fragment color/data value is written into the + back left color buffer.

GL_BACK_RIGHT

The fragment color/data value is written into the + back right color buffer.

GL_AUXi

The fragment color/data value is written into + auxiliary buffer i.

Except for GL_NONE, the preceding + symbolic constants may not appear more than once in + bufs. The maximum number of draw buffers + supported is implementation dependent and can be queried by + calling + glGet + with the argument GL_MAX_DRAW_BUFFERS. The + number of auxiliary buffers can be queried by calling + glGet + with the argument GL_AUX_BUFFERS.

Notes

glDrawBuffers is available only if + the GL version is 2.0 or greater.

It is always the case that GL_AUXi = + GL_AUX0 + i.

The symbolic constants GL_FRONT, + GL_BACK, GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK are not allowed in the + bufs array since they may refer to + multiple buffers.

If a fragment shader writes to neither + gl_FragColor nor + gl_FragData, the values of the fragment + colors following shader execution are undefined. For each + fragment generated in this situation, a different value may be + written into each of the buffers specified by + bufs.

Errors

GL_INVALID_ENUM is generated if one of the + values in bufs is not an accepted + value.

GL_INVALID_ENUM is generated if + n is less than 0.

GL_INVALID_OPERATION is generated if a + symbolic constant other than GL_NONE + appears more than once in bufs.

GL_INVALID_OPERATION is generated if any of + the entries in bufs (other than + GL_NONE ) indicates a color buffer that + does not exist in the current GL context.

GL_INVALID_VALUE is generated if + n is greater than + GL_MAX_DRAW_BUFFERS.

GL_INVALID_OPERATION is generated if + glDrawBuffers is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with argument GL_MAX_DRAW_BUFFERS

glGet + with argument GL_DRAW_BUFFERSi where + i indicates the number of the draw buffer + whose value is to be queried

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glDrawElements.xml b/upstream-man-pages/man2/xhtml/glDrawElements.xml new file mode 100644 index 0000000..cfe314e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDrawElements.xml @@ -0,0 +1,85 @@ + + +glDrawElements

Name

glDrawElements — render primitives from array data

C Specification

void glDrawElements(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 const GLvoid *  indices);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

Description

+ glDrawElements specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL function + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to + construct a sequence of primitives with a single + call to glDrawElements. +

+ When glDrawElements is called, it uses count sequential elements from an + enabled array, starting at indices to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed and how the array elements construct these primitives. If + more than one array is enabled, each is used. If + GL_VERTEX_ARRAY is not enabled, no geometric primitives are + constructed. +

+ Vertex attributes that are modified by glDrawElements have an + unspecified value after glDrawElements returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glDrawElements executes. Attributes that aren't + modified maintain their previous values. +

Notes

+ glDrawElements is available only if the GL version is 1.1 or greater. +

+ glDrawElements is included in display lists. If glDrawElements is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if glDrawElements is executed between + the execution of glBegin and the corresponding glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDrawPixels.xml b/upstream-man-pages/man2/xhtml/glDrawPixels.xml new file mode 100644 index 0000000..94dbed1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDrawPixels.xml @@ -0,0 +1,946 @@ + + +glDrawPixels

Name

glDrawPixels — write a block of pixels to the frame buffer

C Specification

void glDrawPixels(GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

Parameters

width, height

+ Specify the dimensions of the pixel rectangle to be written + into the frame buffer. +

format

+ Specifies the format of the pixel data. + Symbolic constants + GL_COLOR_INDEX, + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA are accepted. +

type

+ Specifies the data type for data. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

data

+ Specifies a pointer to the pixel data. +

Description

+ glDrawPixels reads pixel data from memory and writes it into the frame buffer + relative to the current raster position, provided that the raster + position is valid. Use + glRasterPos or glWindowPos to set the current raster position; use + glGet with argument GL_CURRENT_RASTER_POSITION_VALID + to determine if the specified raster position is valid, and + glGet with argument GL_CURRENT_RASTER_POSITION + to query the raster position. +

+ Several parameters define the encoding of pixel data in memory + and control the processing of the pixel data + before it is placed in the frame buffer. + These parameters are set with four commands: + glPixelStore, + glPixelTransfer, + glPixelMap, and glPixelZoom. + This reference page describes the effects on glDrawPixels of many, + but not all, of the parameters specified by these four commands. +

+ Data is read from data as a sequence of signed or unsigned bytes, + signed or unsigned shorts, signed or unsigned integers, or + single-precision floating-point values, depending on type. + When type is one of GL_UNSIGNED_BYTE, GL_BYTE, + GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, + GL_INT, or GL_FLOAT each of these bytes, shorts, integers, or + floating-point values is interpreted as one color or depth component, or + one index, depending on format. + When type is one of GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_INT_8_8_8_8, or + GL_UNSIGNED_INT_10_10_10_2, each unsigned value is interpreted as + containing all the components for a single pixel, with the color + components arranged according to format. + When type is one of GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8_REV, or + GL_UNSIGNED_INT_2_10_10_10_REV, each unsigned value is interpreted + as containing all color components, specified by format, for a single + pixel in a reversed order. Indices are always treated individually. + Color components are treated as groups of one, two, three, or four + values, again based on format. Both individual indices and groups of + components are referred to as pixels. + If type is GL_BITMAP, the data must be unsigned bytes, and + format must be either GL_COLOR_INDEX or GL_STENCIL_INDEX. + Each unsigned byte is treated as eight 1-bit pixels, with bit ordering + determined by GL_UNPACK_LSB_FIRST (see glPixelStore). +

+ + + + width + × + height + + + pixels are read from memory, + starting at location data. + By default, these pixels are taken from adjacent memory locations, + except that after all width pixels are read, + the read pointer is advanced to the next four-byte boundary. + The four-byte row alignment is specified by glPixelStore with + argument GL_UNPACK_ALIGNMENT, + and it can be set to one, two, four, or eight bytes. + Other pixel store parameters specify different read pointer advancements, + both before the first pixel is read + and after all width pixels are read. + See the glPixelStore reference page for details on these options. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a block of pixels is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The + + + + width + × + height + + + pixels that are read from memory are + each operated on in the same way, + based on the values of several parameters specified by glPixelTransfer + and glPixelMap. + The details of these operations, + as well as the target buffer into which the pixels are drawn, + are specific to the format of the pixels, + as specified by format. + format can assume one of 13 symbolic values: +

GL_COLOR_INDEX

+ Each pixel is a single value, + a color index. + It is converted to fixed-point format, + with an unspecified number of bits to the right of the binary point, + regardless of the memory data type. + Floating-point values convert to true fixed-point values. + Signed and unsigned integer data is converted with all fraction bits + set to 0. + Bitmap data convert to either 0 or 1. +

+ Each fixed-point index is then shifted left by GL_INDEX_SHIFT bits + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. +

+ If the GL is in RGBA mode, + the resulting index is converted to an RGBA pixel + with the help of the GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, + and GL_PIXEL_MAP_I_TO_A tables. + If the GL is in color index mode, + and if GL_MAP_COLOR is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_I_TO_I. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in a color index buffer. +

+ The GL then converts the resulting indices or RGBA colors to fragments + by attaching the current raster position z coordinate and + texture coordinates to each pixel, + then assigning + x + and + y + window coordinates to the + nth + fragment such that +

+ + + x + n + + = + + x + r + + + + + n + % + width + + + +

+

+

+ + + y + n + + = + + y + r + + + + + + n + width + + + + +

+

+

+

+

+ where + + + + x + r + + y + r + + + + is the current raster position. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. +

GL_STENCIL_INDEX

+ Each pixel is a single value, + a stencil index. + It is converted to fixed-point format, + with an unspecified number of bits to the right of the binary point, + regardless of the memory data type. + Floating-point values convert to true fixed-point values. + Signed and unsigned integer data is converted with all fraction bits + set to 0. + Bitmap data convert to either 0 or 1. +

+ Each fixed-point index is then shifted left by GL_INDEX_SHIFT bits, + and added to GL_INDEX_OFFSET. + If GL_INDEX_SHIFT is negative, + the shift is to the right. + In either case, zero bits fill otherwise unspecified bit locations in the + result. + If GL_MAP_STENCIL is true, + the index is replaced with the value that it references in lookup table + GL_PIXEL_MAP_S_TO_S. + Whether the lookup replacement of the index is done or not, + the integer part of the index is then ANDed with + + + + 2 + b + + - + 1 + + , + where + b + is the number of bits in the stencil buffer. + The resulting stencil indices are then written to the stencil buffer + such that the + nth + index is written to location +

+

+ + + x + n + + = + + x + r + + + + + n + % + width + + + +

+

+

+ + + y + n + + = + + y + r + + + + + + n + width + + + + +

+

+

+ where + + + + x + r + + y + r + + + + is the current raster position. + Only the pixel ownership test, + the scissor test, + and the stencil writemask affect these write operations. +

GL_DEPTH_COMPONENT

+ Each pixel is a single-depth component. + Floating-point data is converted directly to an internal floating-point + format with unspecified precision. + Signed integer data is mapped linearly to the internal floating-point + format such that the most positive representable integer value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Unsigned integer data is mapped similarly: + the largest integer value maps to 1.0, + and 0 maps to 0.0. + The resulting floating-point depth value is then multiplied + by GL_DEPTH_SCALE and added to GL_DEPTH_BIAS. + The result is clamped to the range + + + + 0 + 1 + + . +

+ The GL then converts the resulting depth components to fragments + by attaching the current raster position color or color index and + texture coordinates to each pixel, + then assigning + x + and + y + window coordinates to the + nth + fragment such that +

+

+ + + x + n + + = + + x + r + + + + + n + % + width + + + +

+

+

+ + + y + n + + = + + y + r + + + + + + n + width + + + + +

+

+

+ where + + + + x + r + + y + r + + + + is the current raster position. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. +

GL_RGBA
GL_BGRA

+ Each pixel is a four-component group: For GL_RGBA, the red + component is first, followed by green, followed by blue, followed by + alpha; for GL_BGRA the order is blue, green, red and then alpha. + Floating-point values are converted directly to an internal floating-point + format with unspecified precision. + Signed integer values are mapped linearly to the internal floating-point + format such that the most positive representable integer value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + (Note that + this mapping does not convert 0 precisely to 0.0.) + Unsigned integer data is mapped similarly: + The largest integer value maps to 1.0, + and 0 maps to 0.0. + The resulting floating-point color values are then multiplied + by GL_c_SCALE and added to GL_c_BIAS, + where c is RED, GREEN, BLUE, and ALPHA + for the respective color components. + The results are clamped to the range + + + + 0 + 1 + + . +

+ If GL_MAP_COLOR is true, + each color component is scaled by the size of lookup table + GL_PIXEL_MAP_c_TO_c, + then replaced by the value that it references in that table. + c is R, G, B, or A respectively. +

+ The GL then converts the resulting RGBA colors to fragments + by attaching the current raster position z coordinate and + texture coordinates to each pixel, + then assigning + x + and + y + window coordinates to the + nth + fragment such that +

+

+ + + x + n + + = + + x + r + + + + + n + % + width + + + +

+

+

+ + + y + n + + = + + y + r + + + + + + n + width + + + + +

+

+

+ where + + + + x + r + + y + r + + + + is the current raster position. + These pixel fragments are then treated just like the fragments generated by + rasterizing points, lines, or polygons. + Texture mapping, + fog, + and all the fragment operations are applied before the fragments are written + to the frame buffer. +

GL_RED

+ Each pixel is a single red component. + This component is converted to the internal floating-point format in + the same way the red component of an RGBA pixel is. It is + then converted to an RGBA pixel with green and blue set to 0, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. +

GL_GREEN

+ Each pixel is a single green component. + This component is converted to the internal floating-point format in + the same way the green component of an RGBA pixel is. + It is then converted to an RGBA pixel with red and blue set to 0, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. +

GL_BLUE

+ Each pixel is a single blue component. + This component is converted to the internal floating-point format in + the same way the blue component of an RGBA pixel is. + It is then converted to an RGBA pixel with red and green set to 0, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. +

GL_ALPHA

+ Each pixel is a single alpha component. + This component is converted to the internal floating-point format in + the same way the alpha component of an RGBA pixel is. + It is then converted to an RGBA pixel with red, green, and blue set to 0. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. +

GL_RGB
GL_BGR

+ Each pixel is a three-component group: + red first, followed by green, followed by blue; for GL_BGR, the + first component is blue, followed by green and then red. + Each component is converted to the internal floating-point format in + the same way the red, green, and blue components of an RGBA pixel are. + The color triple is converted to an RGBA pixel with alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. +

GL_LUMINANCE

+ Each pixel is a single luminance component. + This component is converted to the internal floating-point format in + the same way the red component of an RGBA pixel is. + It is then converted to an RGBA pixel with red, green, and blue set to the + converted luminance value, + and alpha set to 1. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. +

GL_LUMINANCE_ALPHA

+ Each pixel is a two-component group: + luminance first, followed by alpha. + The two components are converted to the internal floating-point format in + the same way the red component of an RGBA pixel is. + They are then converted to an RGBA pixel with red, green, and blue set to the + converted luminance value, + and alpha set to the converted alpha value. + After this conversion, the pixel is treated as if it had been read + as an RGBA pixel. + +

+ The following table summarizes the meaning of the valid constants for the + type parameter: +

+

+ Type + + Corresponding Type +
+ GL_UNSIGNED_BYTE + + unsigned 8-bit integer +
+ GL_BYTE + + signed 8-bit integer +
+ GL_BITMAP + + single bits in unsigned 8-bit integers +
+ GL_UNSIGNED_SHORT + + unsigned 16-bit integer +
+ GL_SHORT + + signed 16-bit integer +
+ GL_UNSIGNED_INT + + unsigned 32-bit integer +
+ GL_INT + + 32-bit integer +
+ GL_FLOAT + + single-precision floating-point +
+ GL_UNSIGNED_BYTE_3_3_2 + + unsigned 8-bit integer +
+ GL_UNSIGNED_BYTE_2_3_3_REV + + unsigned 8-bit integer with reversed component ordering +
+ GL_UNSIGNED_SHORT_5_6_5 + + unsigned 16-bit integer +
+ GL_UNSIGNED_SHORT_5_6_5_REV + + unsigned 16-bit integer with reversed component ordering +
+ GL_UNSIGNED_SHORT_4_4_4_4 + + unsigned 16-bit integer +
+ GL_UNSIGNED_SHORT_4_4_4_4_REV + + unsigned 16-bit integer with reversed component ordering +
+ GL_UNSIGNED_SHORT_5_5_5_1 + + unsigned 16-bit integer +
+ GL_UNSIGNED_SHORT_1_5_5_5_REV + + unsigned 16-bit integer with reversed component ordering +
+ GL_UNSIGNED_INT_8_8_8_8 + + unsigned 32-bit integer +
+ GL_UNSIGNED_INT_8_8_8_8_REV + + unsigned 32-bit integer with reversed component ordering +
+ GL_UNSIGNED_INT_10_10_10_2 + + unsigned 32-bit integer +
+ GL_UNSIGNED_INT_2_10_10_10_REV + + unsigned 32-bit integer with reversed component ordering +

+

+

+ The rasterization described so far assumes pixel zoom factors of 1. + If + glPixelZoom is used to change the + x + and + y + pixel zoom factors, + pixels are converted to fragments as follows. + If + + + + x + r + + y + r + + + + is the current raster position, + and a given pixel is in the + nth + column and + mth + row + of the pixel rectangle, + then fragments are generated for pixels whose centers are in the rectangle + with corners at +

+

+ + + + x + r + + + + + zoom + x + + + ⁢ + n + + + y + r + + + + + zoom + y + + + ⁢ + m + + +

+

+

+ + + + x + r + + + + + + zoom + x + + + ⁡ + + + n + + + 1 + + + + + + y + r + + + + + + zoom + y + + + ⁡ + + + m + + + 1 + + + + + +

+

+

+ where + + + zoom + x + + + is the value of GL_ZOOM_X and + + + zoom + y + + + is the value of GL_ZOOM_Y. +

Notes

+ GL_BGR and GL_BGRA are only valid for format if the GL + version is 1.2 or greater. +

+ GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are only valid for type if the + GL version is 1.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if format or type is not one of + the accepted values. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not either GL_COLOR_INDEX or GL_STENCIL_INDEX. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. +

+ GL_INVALID_OPERATION is generated if format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_RGBA, + GL_BGR, + GL_BGRA, + GL_LUMINANCE, + or + GL_LUMINANCE_ALPHA, + and the GL is in color index mode. +

+ GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if format is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glDrawPixels + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_RASTER_POSITION +

+ glGet with argument GL_CURRENT_RASTER_POSITION_VALID +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glDrawRangeElements.xml b/upstream-man-pages/man2/xhtml/glDrawRangeElements.xml new file mode 100644 index 0000000..056429d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glDrawRangeElements.xml @@ -0,0 +1,140 @@ + + +glDrawRangeElements

Name

glDrawRangeElements — render primitives from array data

C Specification

void glDrawRangeElements(GLenum  mode,
 GLuint  start,
 GLuint  end,
 GLsizei  count,
 GLenum  type,
 const GLvoid *  indices);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. +

start

+ Specifies the minimum array index contained in indices. +

end

+ Specifies the maximum array index contained in indices. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

Description

+ glDrawRangeElements is a restricted form of glDrawElements. mode, start, end, + and count match the corresponding arguments to glDrawElements, with + the additional constraint that all values in the arrays count must lie + between start and end, inclusive. +

+ Implementations denote recommended maximum amounts of vertex and + index data, + which may be queried by calling glGet with argument + GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. + If + + + + end + - + start + + + 1 + + + is greater than the value of + GL_MAX_ELEMENTS_VERTICES, or if count is greater than the value of + GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced + performance. There is no requirement that all vertices in the range + + + + start + end + + + be referenced. However, the implementation may + partially process unused vertices, reducing performance from what could + be achieved with an optimal index set. +

+ When glDrawRangeElements is called, it uses count sequential elements from an + enabled array, starting at start to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed, and how the array elements construct these primitives. If + more than one array is enabled, each is used. If + GL_VERTEX_ARRAY is not enabled, no geometric primitives are + constructed. +

+ Vertex attributes that are modified by glDrawRangeElements have an + unspecified value after glDrawRangeElements returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glDrawRangeElements executes. Attributes that aren't + modified maintain their previous values. +

Notes

+ glDrawRangeElements is available only if the GL version is 1.2 or greater. +

+ glDrawRangeElements is included in display lists. If glDrawRangeElements is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. +

Errors

+ It is an error for indices to lie outside the range + + + + start + end + + , + but implementations may not check for this situation. Such indices + cause implementation-dependent behavior. +

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_VALUE is generated if + + + + end + < + start + + . +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if glDrawRangeElements is executed between + the execution of glBegin and the corresponding glEnd. +

Associated Gets

+ glGet with argument GL_MAX_ELEMENTS_VERTICES +

+ glGet with argument GL_MAX_ELEMENTS_INDICES +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEdgeFlag.xml b/upstream-man-pages/man2/xhtml/glEdgeFlag.xml new file mode 100644 index 0000000..690894e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEdgeFlag.xml @@ -0,0 +1,43 @@ + + +glEdgeFlag

Name

glEdgeFlag — flag edges as either boundary or nonboundary

C Specification

void glEdgeFlag(GLboolean  flag);

Parameters

flag

+ Specifies the current edge flag value, + either GL_TRUE or GL_FALSE. The initial value is GL_TRUE. +

C Specification

void glEdgeFlagv(const GLboolean *  flag);

Parameters

flag

+ Specifies a pointer to an array that contains a single boolean element, + which replaces the current edge flag value. +

Description

+ Each vertex of a polygon, + separate triangle, + or separate quadrilateral specified between a glBegin/glEnd pair + is marked as the start of either a boundary or nonboundary edge. + If the current edge flag is true when the vertex is specified, + the vertex is marked as the start of a boundary edge. + Otherwise, the vertex is marked as the start of a nonboundary edge. + glEdgeFlag sets the edge flag bit to GL_TRUE if flag is GL_TRUE + and to GL_FALSE otherwise. +

+ The vertices of connected triangles and connected quadrilaterals are always + marked as boundary, + regardless of the value of the edge flag. +

+ Boundary and nonboundary edge flags on vertices are significant only if + GL_POLYGON_MODE is set to GL_POINT or GL_LINE. + See glPolygonMode. +

Notes

+ The current edge flag can be updated at any time. + In particular, + glEdgeFlag can be called between a call to glBegin and the corresponding + call to glEnd. +

Associated Gets

+ glGet with argument GL_EDGE_FLAG +

See Also

+ glBegin, + glEdgeFlagPointer, + glPolygonMode +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEdgeFlagPointer.xml b/upstream-man-pages/man2/xhtml/glEdgeFlagPointer.xml new file mode 100644 index 0000000..34453bc --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEdgeFlagPointer.xml @@ -0,0 +1,94 @@ + + +glEdgeFlagPointer

Name

glEdgeFlagPointer — define an array of edge flags

C Specification

void glEdgeFlagPointer(GLsizei  stride,
 const GLvoid *  pointer);

Parameters

stride

+ Specifies the byte offset between consecutive edge flags. + If stride is 0, the edge flags are understood + to be tightly packed in the array. The initial value is 0. +

pointer

+ Specifies a pointer to the first edge flag in the array. The initial + value is 0. +

Description

+ glEdgeFlagPointer specifies the location and data format of an array of boolean edge + flags to use when rendering. stride specifies the byte stride from one + edge flag to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while an edge flag array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as edge flag vertex array + client-side state (GL_EDGE_FLAG_ARRAY_BUFFER_BINDING). +

+ When an edge flag array is + specified, stride and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the edge flag array, call + glEnableClientState and glDisableClientState with the argument + GL_EDGE_FLAG_ARRAY. If + enabled, the edge flag array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. +

Notes

+ glEdgeFlagPointer is available only if the GL version is 1.1 or greater. +

+ Edge flags are not supported for interleaved vertex array formats + (see glInterleavedArrays). +

+ The edge flag array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glEdgeFlagPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glEdgeFlagPointer is typically implemented on the client side. +

+ Edge flag array parameters are client-side state and are therefore + not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. +

Errors

+ GL_INVALID_ENUM is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_EDGE_FLAG_ARRAY +

+ glGet with argument GL_EDGE_FLAG_ARRAY_STRIDE +

+ glGet with argument GL_EDGE_FLAG_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_EDGE_FLAG_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEnable.xml b/upstream-man-pages/man2/xhtml/glEnable.xml new file mode 100644 index 0000000..b21816d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEnable.xml @@ -0,0 +1,561 @@ + + +glEnable

Name

glEnable — enable or disable server-side GL capabilities

C Specification

void glEnable(GLenum  cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

C Specification

void glDisable(GLenum  cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

Description

+ glEnable and glDisable enable and disable various capabilities. + Use glIsEnabled or glGet to determine the current setting + of any capability. The initial value for each capability with the + exception of GL_DITHER and GL_MULTISAMPLE is GL_FALSE. The initial value for + GL_DITHER and GL_MULTISAMPLE is GL_TRUE. +

+ Both glEnable and glDisable take a single argument, cap, + which can assume one of the following values: +

GL_ALPHA_TEST

+

+ If enabled, + do alpha testing. See + glAlphaFunc. +

GL_AUTO_NORMAL

+

+ If enabled, + generate normal vectors when either + GL_MAP2_VERTEX_3 or + GL_MAP2_VERTEX_4 is used to generate vertices. + See glMap2. +

GL_BLEND

+

+ If enabled, + blend the computed fragment color values with the values in the color + buffers. See glBlendFunc. +

GL_CLIP_PLANEi

+

+ If enabled, + clip geometry against user-defined clipping plane i. + See glClipPlane. +

GL_COLOR_LOGIC_OP

+

+ If enabled, + apply the currently selected logical operation to the computed fragment + color and color buffer values. See glLogicOp. +

GL_COLOR_MATERIAL

+

+ If enabled, + have one or more material parameters track the current color. + See glColorMaterial. +

GL_COLOR_SUM

+

+ If enabled and no fragment shader is active, + add the secondary color value to the computed fragment color. + See glSecondaryColor. +

GL_COLOR_TABLE

+

+ If enabled, + perform a color table lookup on the incoming RGBA color values. + See glColorTable. +

GL_CONVOLUTION_1D

+

+ If enabled, + perform a 1D convolution operation on incoming RGBA color values. + See glConvolutionFilter1D. +

GL_CONVOLUTION_2D

+

+ If enabled, + perform a 2D convolution operation on incoming RGBA color values. + See glConvolutionFilter2D. +

GL_CULL_FACE

+

+ If enabled, + cull polygons based on their winding in window coordinates. + See glCullFace. +

GL_DEPTH_TEST

+

+ If enabled, + do depth comparisons and update the depth buffer. Note that even if + the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. See + glDepthFunc and + glDepthRange. +

GL_DITHER

+

+ If enabled, + dither color components or indices before they are written to the + color buffer. +

GL_FOG

+

+ If enabled and no fragment shader is active, + blend a fog color into the post-texturing color. + See glFog. +

GL_HISTOGRAM

+

+ If enabled, + histogram incoming RGBA color values. + See glHistogram. +

GL_INDEX_LOGIC_OP

+

+ If enabled, + apply the currently selected logical operation to the incoming index and color + buffer indices. + See glLogicOp. +

GL_LIGHTi

+

+ If enabled, + include light i in the evaluation of the lighting + equation. See glLightModel and glLight. +

GL_LIGHTING

+

+ If enabled and no vertex shader is active, + use the current lighting parameters to compute the vertex color or index. + Otherwise, simply associate the current color or index with each + vertex. See + glMaterial, glLightModel, and glLight. +

GL_LINE_SMOOTH

+

+ If enabled, + draw lines with correct filtering. + Otherwise, + draw aliased lines. + See glLineWidth. +

GL_LINE_STIPPLE

+

+ If enabled, + use the current line stipple pattern when drawing lines. See + glLineStipple. +

GL_MAP1_COLOR_4

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate RGBA values. + See glMap1. +

GL_MAP1_INDEX

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate color indices. + See glMap1. +

GL_MAP1_NORMAL

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate normals. + See glMap1. +

GL_MAP1_TEXTURE_COORD_1

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s + texture coordinates. + See glMap1. +

GL_MAP1_TEXTURE_COORD_2

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s and + t texture coordinates. + See glMap1. +

GL_MAP1_TEXTURE_COORD_3

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s, + t, and + r texture coordinates. + See glMap1. +

GL_MAP1_TEXTURE_COORD_4

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + s, + t, + r, and + q texture coordinates. + See glMap1. +

GL_MAP1_VERTEX_3

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + x, y, and z vertex coordinates. + See glMap1. +

GL_MAP1_VERTEX_4

+

+ If enabled, + calls to + glEvalCoord1, + glEvalMesh1, and + glEvalPoint1 generate + homogeneous + x, + y, + z, and + w vertex coordinates. + See glMap1. +

GL_MAP2_COLOR_4

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate RGBA values. + See glMap2. +

GL_MAP2_INDEX

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate color indices. + See glMap2. +

GL_MAP2_NORMAL

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate normals. + See glMap2. +

GL_MAP2_TEXTURE_COORD_1

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s + texture coordinates. + See glMap2. +

GL_MAP2_TEXTURE_COORD_2

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s and + t texture coordinates. + See glMap2. +

GL_MAP2_TEXTURE_COORD_3

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s, + t, and + r texture coordinates. + See glMap2. +

GL_MAP2_TEXTURE_COORD_4

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + s, + t, + r, and + q texture coordinates. + See glMap2. +

GL_MAP2_VERTEX_3

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + x, y, and z vertex coordinates. + See glMap2. +

GL_MAP2_VERTEX_4

+

+ If enabled, + calls to + glEvalCoord2, + glEvalMesh2, and + glEvalPoint2 generate + homogeneous + x, + y, + z, and + w vertex coordinates. + See glMap2. +

GL_MINMAX

+

+ If enabled, + compute the minimum and maximum values of incoming RGBA color values. + See glMinmax. +

GL_MULTISAMPLE

+

+ If enabled, + use multiple fragment samples in computing the final color of a pixel. + See glSampleCoverage. +

GL_NORMALIZE

+

+ If enabled and no vertex shader is active, + normal vectors are normalized to unit length + after transformation and before lighting. This method is generally + less efficient than GL_RESCALE_NORMAL. See + glNormal and + glNormalPointer. +

GL_POINT_SMOOTH

+

+ If enabled, + draw points with proper filtering. + Otherwise, + draw aliased points. + See glPointSize. +

GL_POINT_SPRITE

+

+ If enabled, + calculate texture coordinates for points based on texture + environment and point parameter settings. Otherwise texture coordinates + are constant across points. +

GL_POLYGON_OFFSET_FILL

+

+ If enabled, and if the polygon is rendered in + GL_FILL mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. +

GL_POLYGON_OFFSET_LINE

+

+ If enabled, and if the polygon is rendered in + GL_LINE mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. +

GL_POLYGON_OFFSET_POINT

+

+ If enabled, an offset is added to depth values of a polygon's fragments + before the depth comparison is performed, if the polygon is rendered in + GL_POINT mode. See glPolygonOffset. +

GL_POLYGON_SMOOTH

+

+ If enabled, draw polygons with proper filtering. + Otherwise, draw aliased polygons. For correct antialiased polygons, + an alpha buffer is needed and the polygons must be sorted front to + back. +

GL_POLYGON_STIPPLE

+

+ If enabled, + use the current polygon stipple pattern when rendering + polygons. See glPolygonStipple. +

GL_POST_COLOR_MATRIX_COLOR_TABLE

+

+ If enabled, + perform a color table lookup on RGBA color values after color matrix + transformation. + See glColorTable. +

GL_POST_CONVOLUTION_COLOR_TABLE

+

+ If enabled, + perform a color table lookup on RGBA color values after convolution. + See glColorTable. +

GL_RESCALE_NORMAL

+

+ If enabled and no vertex shader is active, + normal vectors are scaled after transformation and before + lighting by a factor computed from the modelview matrix. If the + modelview matrix scales space uniformly, this has the effect of + restoring the transformed normal to unit length. This method is generally + more efficient than GL_NORMALIZE. See + glNormal and + glNormalPointer. +

GL_SAMPLE_ALPHA_TO_COVERAGE

+

+ If enabled, + compute a temporary coverage value where each bit is determined by the + alpha value at the corresponding sample location. The temporary coverage + value is then ANDed with the fragment coverage value. +

GL_SAMPLE_ALPHA_TO_ONE

+

+ If enabled, + each sample alpha value is replaced by the maximum representable alpha value. +

GL_SAMPLE_COVERAGE

+

+ If enabled, + the fragment's coverage is ANDed with the temporary coverage value. If + GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage + value. + See glSampleCoverage. +

GL_SEPARABLE_2D

+

+ If enabled, perform a two-dimensional convolution operation using a separable + convolution filter on incoming RGBA color values. + See glSeparableFilter2D. +

GL_SCISSOR_TEST

+

+ If enabled, + discard fragments that are outside the scissor rectangle. + See glScissor. +

GL_STENCIL_TEST

+

+ If enabled, + do stencil testing and update the stencil buffer. + See glStencilFunc and glStencilOp. +

GL_TEXTURE_1D

+

+ If enabled and no fragment shader is active, + one-dimensional texturing is performed + (unless two- or three-dimensional or cube-mapped texturing is also enabled). + See glTexImage1D. +

GL_TEXTURE_2D

+

+ If enabled and no fragment shader is active, + two-dimensional texturing is performed + (unless three-dimensional or cube-mapped texturing is also enabled). + See glTexImage2D. +

GL_TEXTURE_3D

+

+ If enabled and no fragment shader is active, + three-dimensional texturing is performed + (unless cube-mapped texturing is also enabled). + See glTexImage3D. +

GL_TEXTURE_CUBE_MAP

+

+ If enabled and no fragment shader is active, + cube-mapped texturing is performed. + See glTexImage2D. +

GL_TEXTURE_GEN_Q

+

+ If enabled and no vertex shader is active, + the q texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current q texture coordinate is used. + See glTexGen. +

GL_TEXTURE_GEN_R

+

+ If enabled and no vertex shader is active, + the r texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current r texture coordinate is used. + See glTexGen. +

GL_TEXTURE_GEN_S

+

+ If enabled and no vertex shader is active, + the s texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current s texture coordinate is used. + See glTexGen. +

GL_TEXTURE_GEN_T

+

+ If enabled and no vertex shader is active, + the t texture coordinate is computed using + the texture generation function defined with glTexGen. + Otherwise, the current t texture coordinate is used. + See glTexGen. +

GL_VERTEX_PROGRAM_POINT_SIZE

+

+ If enabled + and a vertex shader is active, then the derived point size is taken from the (potentially clipped) shader builtin + gl_PointSize and clamped to the implementation-dependent point size range. +

GL_VERTEX_PROGRAM_TWO_SIDE

+

+ If enabled + and a vertex shader is active, it specifies that the GL will choose between front and back colors based on the + polygon's face direction of which the vertex being shaded is a part. It has no effect on points or lines. +

Notes

+ GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, + GL_POLYGON_OFFSET_POINT, + GL_COLOR_LOGIC_OP, and GL_INDEX_LOGIC_OP are available + only if the GL version is 1.1 or greater. +

+ GL_RESCALE_NORMAL, and GL_TEXTURE_3D are available only if the + GL version is 1.2 or greater. +

+ GL_MULTISAMPLE, + GL_SAMPLE_ALPHA_TO_COVERAGE, + GL_SAMPLE_ALPHA_TO_ONE, + GL_SAMPLE_COVERAGE, + GL_TEXTURE_CUBE_MAP + are available only if the GL version is 1.3 or greater. +

+ GL_POINT_SPRITE, + GL_VERTEX_PROGRAM_POINT_SIZE, and + GL_VERTEX_PROGRAM_TWO_SIDE + is available only if the GL version is 2.0 or greater. +

+ GL_COLOR_TABLE, GL_CONVOLUTION_1D, GL_CONVOLUTION_2D, + GL_HISTOGRAM, GL_MINMAX, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, and + GL_SEPARABLE_2D are available only if ARB_imaging is returned + from glGet with an argument of GL_EXTENSIONS. +

+ For OpenGL versions 1.3 and greater, or when ARB_multitexture is supported, GL_TEXTURE_1D, + GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, GL_TEXTURE_GEN_R, and GL_TEXTURE_GEN_Q + enable or disable the respective state for the active texture unit + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if cap is not one of the values + listed previously. +

+ GL_INVALID_OPERATION is generated if glEnable or glDisable + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glIsEnabled +

+ glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEnableClientState.xml b/upstream-man-pages/man2/xhtml/glEnableClientState.xml new file mode 100644 index 0000000..21273c2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEnableClientState.xml @@ -0,0 +1,102 @@ + + +glEnableClientState

Name

glEnableClientState — enable or disable client-side capability

C Specification

void glEnableClientState(GLenum  cap);

Parameters

cap

+ Specifies the capability to enable. + Symbolic constants + GL_COLOR_ARRAY, + GL_EDGE_FLAG_ARRAY, + GL_FOG_COORD_ARRAY, + GL_INDEX_ARRAY, + GL_NORMAL_ARRAY, + GL_SECONDARY_COLOR_ARRAY, + GL_TEXTURE_COORD_ARRAY, and + GL_VERTEX_ARRAY + are accepted. +

C Specification

void glDisableClientState(GLenum  cap);

Parameters

cap

+ Specifies the capability to disable. +

Description

+ glEnableClientState and glDisableClientState + enable or disable individual client-side capabilities. By default, all + client-side capabilities are disabled. + Both + glEnableClientState and glDisableClientState take a + single argument, cap, which can assume one of the following + values: +

GL_COLOR_ARRAY

+ If enabled, the color array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glColorPointer. +

GL_EDGE_FLAG_ARRAY

+ If enabled, the edge flag array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glEdgeFlagPointer. +

GL_FOG_COORD_ARRAY

+ If enabled, the fog coordinate array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glFogCoordPointer. +

GL_INDEX_ARRAY

+ If enabled, the index array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glIndexPointer. +

GL_NORMAL_ARRAY

+ If enabled, the normal array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glNormalPointer. +

GL_SECONDARY_COLOR_ARRAY

+ If enabled, the secondary color array is enabled for writing and used + during rendering when glArrayElement, glDrawArrays, + glDrawElements, glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glColorPointer. +

GL_TEXTURE_COORD_ARRAY

+ If enabled, the texture coordinate array is enabled for writing and used + during rendering when glArrayElement, glDrawArrays, + glDrawElements, glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glTexCoordPointer. +

GL_VERTEX_ARRAY

+ If enabled, the vertex array is enabled for writing and used during + rendering when glArrayElement, glDrawArrays, glDrawElements, + glDrawRangeElements glMultiDrawArrays, or + glMultiDrawElements is called. See glVertexPointer. +

Notes

+ glEnableClientState is available only if the GL version is 1.1 or greater. +

+ GL_FOG_COORD_ARRAY and GL_SECONDARY_COLOR_ARRAY are available only if the GL version is 1.4 or + greater. +

+ For OpenGL versions 1.3 and greater, or when ARB_multitexture is supported, enabling and disabling + GL_TEXTURE_COORD_ARRAY affects the active client texture unit. + The active client texture unit is controlled with + glClientActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if cap is not an accepted value. +

+ glEnableClientState is not allowed between the execution of glBegin and the + corresponding glEnd, but an error may or may not be generated. If + no error is generated, the behavior is undefined. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEnableVertexAttribArray.xml b/upstream-man-pages/man2/xhtml/glEnableVertexAttribArray.xml new file mode 100644 index 0000000..baf4ab3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEnableVertexAttribArray.xml @@ -0,0 +1,51 @@ + + +glEnableVertexAttribArray

Name

glEnableVertexAttribArray — Enable or disable a generic vertex attribute array

C Specification

void glEnableVertexAttribArray(GLuint  index);
void glDisableVertexAttribArray(GLuint  index);

Parameters

index

Specifies the index of the generic vertex + attribute to be enabled or disabled.

Description

glEnableVertexAttribArray enables the + generic vertex attribute array specified by + index. + glDisableVertexAttribArray disables the + generic vertex attribute array specified by + index. By default, all client-side + capabilities are disabled, including all generic vertex + attribute arrays. If enabled, the values in the generic vertex + attribute array will be accessed and used for rendering when + calls are made to vertex array commands such as + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glArrayElement, + glMultiDrawElements, + or + glMultiDrawArrays.

Notes

glEnableVertexAttribArray and + glDisableVertexAttribArray are available + only if the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_OPERATION is generated if either + glEnableVertexAttribArray or + glDisableVertexAttribArray is executed + between the execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttrib + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_ENABLED +

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glEnd.xml b/upstream-man-pages/man2/xhtml/glEnd.xml new file mode 100644 index 0000000..cef7d6d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEnd.xml @@ -0,0 +1,4 @@ + + + +glEnd diff --git a/upstream-man-pages/man2/xhtml/glEndList.xml b/upstream-man-pages/man2/xhtml/glEndList.xml new file mode 100644 index 0000000..2cb1316 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEndList.xml @@ -0,0 +1,4 @@ + + + +glEndList diff --git a/upstream-man-pages/man2/xhtml/glEndQuery.xml b/upstream-man-pages/man2/xhtml/glEndQuery.xml new file mode 100644 index 0000000..7cc406b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEndQuery.xml @@ -0,0 +1,4 @@ + + + +glEndQuery diff --git a/upstream-man-pages/man2/xhtml/glEvalCoord.xml b/upstream-man-pages/man2/xhtml/glEvalCoord.xml new file mode 100644 index 0000000..ef69344 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalCoord.xml @@ -0,0 +1,227 @@ + + +glEvalCoord

Name

glEvalCoord — evaluate enabled one- and two-dimensional maps

C Specification

void glEvalCoord1f(GLfloat  u);
void glEvalCoord1d(GLdouble  u);
void glEvalCoord2f(GLfloat  u,
 GLfloat  v);
void glEvalCoord2d(GLdouble  u,
 GLdouble  v);

Parameters

u

+ Specifies a value that is the domain coordinate + u + to the basis function + defined in a previous glMap1 or glMap2 command. +

v

+ Specifies a value that is the domain coordinate + v + to the basis function + defined in a previous glMap2 command. + This argument is not present in a glEvalCoord1 command. +

C Specification

void glEvalCoord1fv(const GLfloat *  u);
void glEvalCoord1dv(const GLdouble *  u);
void glEvalCoord2fv(const GLfloat *  u);
void glEvalCoord2dv(const GLdouble *  u);

Parameters

u

+ Specifies a pointer to an array containing + either one or two domain coordinates. + The first coordinate is + u. + The second coordinate is + v, + which is present only in glEvalCoord2 versions. +

Description

+ glEvalCoord1 evaluates enabled one-dimensional maps at argument + u. + glEvalCoord2 does the same for two-dimensional maps using + two domain values, + u and v. + To define a map, call glMap1 and glMap2; to enable and + disable it, call glEnable and glDisable. +

+ When one of the glEvalCoord commands is issued, + all currently enabled maps of the indicated dimension are evaluated. + Then, + for each enabled map, + it is as if the corresponding GL command had been issued with the + computed value. + That is, + if GL_MAP1_INDEX or + GL_MAP2_INDEX is enabled, + a glIndex command is simulated. + If GL_MAP1_COLOR_4 or + GL_MAP2_COLOR_4 is enabled, + a glColor command is simulated. + If GL_MAP1_NORMAL or GL_MAP2_NORMAL is enabled, + a normal vector is produced, + and if any of + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4, + GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3, or + GL_MAP2_TEXTURE_COORD_4 is enabled, then an appropriate glTexCoord command is simulated. +

+ For color, + color index, + normal, + and texture coordinates the GL uses evaluated values instead of current values for those evaluations + that are enabled, + and current values otherwise, + However, + the evaluated values do not update the current values. + Thus, if glVertex commands are interspersed with glEvalCoord + commands, the color, + normal, + and texture coordinates associated with the glVertex commands are not + affected by the values generated by the glEvalCoord commands, + but only by the most recent + glColor, + glIndex, + glNormal, and + glTexCoord commands. +

+ No commands are issued for maps that are not enabled. + If more than one texture evaluation is enabled for a particular dimension + (for example, GL_MAP2_TEXTURE_COORD_1 and + GL_MAP2_TEXTURE_COORD_2), + then only the evaluation of the map that produces the larger + number of coordinates + (in this case, GL_MAP2_TEXTURE_COORD_2) + is carried out. + GL_MAP1_VERTEX_4 overrides GL_MAP1_VERTEX_3, + and + GL_MAP2_VERTEX_4 overrides GL_MAP2_VERTEX_3, + in the same manner. + If neither a three- nor a four-component vertex map is enabled for the + specified dimension, + the glEvalCoord command is ignored. +

+ If you have enabled automatic normal generation, + by calling glEnable with argument GL_AUTO_NORMAL, + glEvalCoord2 generates surface normals analytically, + regardless of the contents or enabling of the GL_MAP2_NORMAL map. + Let +

+

+ + + m + = + + + + + + ∂ + p + + + + + ∂ + u + + + + + × + + + + + ∂ + p + + + + + ∂ + v + + + + + + +

+

+ Then the generated normal + + + n + + is + + + + n + = + + m + + + m + + + + + +

+ If automatic normal generation is disabled, + the corresponding normal map GL_MAP2_NORMAL, + if enabled, + is used to produce a normal. + If neither automatic normal generation nor a normal map is enabled, + no normal is generated for + glEvalCoord2 commands. +

Associated Gets

+ glIsEnabled with argument GL_MAP1_VERTEX_3 +

+ glIsEnabled with argument GL_MAP1_VERTEX_4 +

+ glIsEnabled with argument GL_MAP1_INDEX +

+ glIsEnabled with argument GL_MAP1_COLOR_4 +

+ glIsEnabled with argument GL_MAP1_NORMAL +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4 +

+ glIsEnabled with argument GL_MAP2_VERTEX_3 +

+ glIsEnabled with argument GL_MAP2_VERTEX_4 +

+ glIsEnabled with argument GL_MAP2_INDEX +

+ glIsEnabled with argument GL_MAP2_COLOR_4 +

+ glIsEnabled with argument GL_MAP2_NORMAL +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_1 +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_2 +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_3 +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_4 +

+ glIsEnabled with argument GL_AUTO_NORMAL +

+ glGetMap +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEvalCoord1.xml b/upstream-man-pages/man2/xhtml/glEvalCoord1.xml new file mode 100644 index 0000000..1627a06 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalCoord1.xml @@ -0,0 +1,4 @@ + + + +glEvalCoord1 diff --git a/upstream-man-pages/man2/xhtml/glEvalCoord2.xml b/upstream-man-pages/man2/xhtml/glEvalCoord2.xml new file mode 100644 index 0000000..1d45247 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalCoord2.xml @@ -0,0 +1,4 @@ + + + +glEvalCoord2 diff --git a/upstream-man-pages/man2/xhtml/glEvalMesh.xml b/upstream-man-pages/man2/xhtml/glEvalMesh.xml new file mode 100644 index 0000000..b983898 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalMesh.xml @@ -0,0 +1,513 @@ + + +glEvalMesh

Name

glEvalMesh — compute a one- or two-dimensional grid of points or lines

C Specification

void glEvalMesh1(GLenum  mode,
 GLint  i1,
 GLint  i2);

Parameters

mode

+ In glEvalMesh1, specifies whether to compute a one-dimensional mesh of points or lines. + Symbolic constants + GL_POINT and + GL_LINE are accepted. +

i1, i2

+ Specify the first and last integer values for grid domain variable + i. +

C Specification

void glEvalMesh2(GLenum  mode,
 GLint  i1,
 GLint  i2,
 GLint  j1,
 GLint  j2);

Parameters

mode

+ In glEvalMesh2, specifies whether to compute a two-dimensional mesh of points, lines, + or polygons. + Symbolic constants + GL_POINT, + GL_LINE, and + GL_FILL are accepted. +

i1, i2

+ Specify the first and last integer values for grid domain variable + i. +

j1, j2

+ Specify the first and last integer values for grid domain variable + j. +

Description

+ glMapGrid and glEvalMesh are used in tandem to efficiently + generate and evaluate a series of evenly-spaced map domain values. + glEvalMesh steps through the integer domain of a one- or two-dimensional grid, + whose range is the domain of the evaluation maps specified by + glMap1 and glMap2. + mode determines whether the resulting vertices are connected as + points, + lines, + or filled polygons. +

+ In the one-dimensional case, + glEvalMesh1, + the mesh is generated as if the following code fragment were executed: +

+

+glBegin( type );
+for ( i = i1; i <= i2; i += 1 )
+   glEvalCoord1( 
+   		      
+		      
+		          
+		              i
+			      ·
+			      Δ
+		              u
+		          
+		          +
+		          
+		              u
+		              1
+		          
+		      
+		   );
+glEnd();
+            

+ where +

+

+ + + + Δ + u + + = + + + + + u + 2 + + - + + u + 1 + + + + n + + +

+

+ and + n, + + + u + 1 + + , + and + + + u + 2 + + + are the arguments to the most recent + glMapGrid1 command. + type is GL_POINTS if mode is GL_POINT, + or GL_LINES if mode is GL_LINE. +

+ The one absolute numeric requirement is that if + + + + i + = + n + + , + then the + value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + . +

+ In the two-dimensional case, glEvalMesh2, let + .cp +

+ + + + Δ + u + + = + + + + u + 2 + + - + u + 1 + + + + n + + +

+

+

+ + + + Δ + v + + = + + + + v + 2 + + - + v + 1 + + + + m + + +

+

+ where + n, + + + u + 1 + + , + + + u + 2 + + , + m, + + + v + 1 + + , + and + + + v + 2 + + + are the + arguments to the most recent glMapGrid2 command. Then, if + mode is GL_FILL, the glEvalMesh2 command is equivalent + to: +

+

+for ( j = j1; j < j2; j += 1 ) {
+   glBegin( GL_QUAD_STRIP );
+   for ( i = i1; i <= i2; i += 1 ) {
+      glEvalCoord2( 
+			
+		        
+			    
+			        i
+				·
+			        Δ
+		                u
+			    
+		            +
+		            
+		                u
+		                1
+		            
+			    ,
+			    
+			    
+			        j
+				·
+			        Δ
+		                v
+
+			    
+		            +
+		            
+		                v
+		                1
+		            
+			
+		     );
+      glEvalCoord2( 
+			
+		        
+			    
+			        i
+				·
+			        Δ
+		                u
+			    
+		            +
+		            
+		                u
+		                1
+		            
+			    ,
+			    
+			    
+			        
+				    
+				        
+			                    j
+				            +
+			                    1
+				        
+				    
+				
+				·
+			        Δ
+		                v
+			    
+		            +
+		            
+		                v
+		                1
+		            
+			
+		     );
+   }
+   glEnd();
+}
+            

+

+ If mode is GL_LINE, then a call to glEvalMesh2 is equivalent to: +

+

+for ( j = j1; j <= j2; j += 1 ) {
+   glBegin( GL_LINE_STRIP );
+   for ( i = i1; i <= i2; i += 1 )
+      glEvalCoord2( 
+			
+		        
+			    
+			        i
+				·
+			        Δ
+		                u
+			    
+		            +
+		            
+		                u
+		                1
+		            
+			    ,
+			    
+			    
+			        j
+				·
+			        Δ
+		                v
+			    
+		            +
+		            
+		                v
+		                1
+		            
+			
+		     );
+   glEnd();
+}
+
+for ( i = i1;  i <= i2; i += 1 ) {
+   glBegin( GL_LINE_STRIP );
+   for ( j = j1; j <= j1; j += 1 )
+      glEvalCoord2( 
+			
+		        
+			    
+			        i
+				·
+			        Δ
+		                u
+			    
+		            +
+		            
+		                u
+		                1
+		            
+			    ,
+			    
+			    
+			        j
+				·
+			        Δ
+		                v
+			    
+		            +
+		            
+		                v
+		                1
+		            
+			
+		     );
+   glEnd();
+}
+            

+

+ And finally, if mode is GL_POINT, then a call to + glEvalMesh2 is equivalent to: +

+

+glBegin( GL_POINTS );
+for ( j = j1; j <= j2; j += 1 )
+   for ( i = i1; i <= i2; i += 1 )
+      glEvalCoord2( 
+			
+		        
+			    
+			        i
+				·
+			        Δ
+		                u
+			    
+		            +
+		            
+		                u
+		                1
+		            
+			    ,
+			    
+			    
+			        j
+				·
+			        Δ
+		                v
+			    
+		            +
+		            
+		                v
+		                1
+		            
+			
+		     );
+glEnd();
+            

+

+ In all three cases, the only absolute numeric requirements are that if + + + + i + = + n + + , + then the value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + , + and if + + + + j + = + m + + , + then the value computed from + + + + + j + · + + Δ + v + + + + + v + 1 + + + + is exactly + + + v + 2 + + . +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glEvalMesh + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MAP1_GRID_DOMAIN +

+ glGet with argument GL_MAP2_GRID_DOMAIN +

+ glGet with argument GL_MAP1_GRID_SEGMENTS +

+ glGet with argument GL_MAP2_GRID_SEGMENTS +

See Also

+ glBegin, + glEvalCoord, + glEvalPoint, + glMap1, + glMap2, + glMapGrid +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEvalMesh1.xml b/upstream-man-pages/man2/xhtml/glEvalMesh1.xml new file mode 100644 index 0000000..ff4840b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalMesh1.xml @@ -0,0 +1,4 @@ + + + +glEvalMesh1 diff --git a/upstream-man-pages/man2/xhtml/glEvalMesh2.xml b/upstream-man-pages/man2/xhtml/glEvalMesh2.xml new file mode 100644 index 0000000..19c2932 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalMesh2.xml @@ -0,0 +1,4 @@ + + + +glEvalMesh2 diff --git a/upstream-man-pages/man2/xhtml/glEvalPoint.xml b/upstream-man-pages/man2/xhtml/glEvalPoint.xml new file mode 100644 index 0000000..8b00ed7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalPoint.xml @@ -0,0 +1,313 @@ + + +glEvalPoint

Name

glEvalPoint — generate and evaluate a single point in a mesh

C Specification

void glEvalPoint1(GLint  i);
void glEvalPoint2(GLint  i,
 GLint  j);

Parameters

i

+ Specifies the integer value for grid domain variable + i. +

j

+ Specifies the integer value for grid domain variable + j + (glEvalPoint2 only). +

Description

+ glMapGrid and glEvalMesh are used in tandem to efficiently + generate and evaluate a series of evenly spaced map domain values. + glEvalPoint can be used to evaluate a single grid point in the same gridspace + that is traversed by glEvalMesh. + Calling glEvalPoint1 is equivalent to calling +

+glEvalCoord1( 
+	          
+     	          
+     	              
+     	                  i
+     	                  ·
+     	                  Δ
+     	                  u
+     	              
+     	              +
+     	              
+     	                  u
+     	                  1
+     	              
+     	          
+               );
+         

+ where +

+ + + + Δ + u + + = + + + + u + 2 + + - + u + 1 + + + + n + + +

+

+ and + n, + + + u + 1 + + , + and + + + u + 2 + + + are the arguments to the most recent glMapGrid1 command. + The one absolute numeric requirement is that if + + + + i + = + n + + , + then the value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + . +

+ In the two-dimensional case, glEvalPoint2, let +

+

+ + + + Δ + u + + = + + + + u + 2 + + - + u + 1 + + + + n + + +

+

+

+ + + + Δ + v + + = + + + + v + 2 + + - + v + 1 + + + + m + + +

+

+

+ where + n, + + + u + 1 + + , + + + u + 2 + + , + m, + + + v + 1 + + , + and + + + v + 2 + + + are the arguments to the most recent glMapGrid2 command. + Then the glEvalPoint2 command is equivalent to calling +

+glEvalCoord2( 
+			
+		        
+			    
+			        i
+				·
+			        Δ
+		                u
+			    
+		            +
+		            
+		                u
+		                1
+		            
+			    ,
+			    
+			    
+			        j
+				·
+			        Δ
+		                v
+
+			    
+		            +
+		            
+		                v
+		                1
+		            
+			
+		     );
+            

+ The only absolute numeric requirements are that if + + + + i + = + n + + , + then the value computed from + + + + + i + · + + Δ + u + + + + + u + 1 + + + + is exactly + + + u + 2 + + , + and if + + + + j + = + m + + , + then the value computed from + + + + + j + · + + Δ + v + + + + + v + 1 + + + + is exactly + + + v + 2 + + . +

Associated Gets

+ glGet with argument GL_MAP1_GRID_DOMAIN +

+ glGet with argument GL_MAP2_GRID_DOMAIN +

+ glGet with argument GL_MAP1_GRID_SEGMENTS +

+ glGet with argument GL_MAP2_GRID_SEGMENTS +

See Also

+ glEvalCoord, + glEvalMesh, + glMap1, + glMap2, + glMapGrid +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glEvalPoint1.xml b/upstream-man-pages/man2/xhtml/glEvalPoint1.xml new file mode 100644 index 0000000..4657da7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalPoint1.xml @@ -0,0 +1,4 @@ + + + +glEvalPoint1 diff --git a/upstream-man-pages/man2/xhtml/glEvalPoint2.xml b/upstream-man-pages/man2/xhtml/glEvalPoint2.xml new file mode 100644 index 0000000..edfdf6f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glEvalPoint2.xml @@ -0,0 +1,4 @@ + + + +glEvalPoint2 diff --git a/upstream-man-pages/man2/xhtml/glFeedbackBuffer.xml b/upstream-man-pages/man2/xhtml/glFeedbackBuffer.xml new file mode 100644 index 0000000..92980d7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFeedbackBuffer.xml @@ -0,0 +1,280 @@ + + +glFeedbackBuffer

Name

glFeedbackBuffer — controls feedback mode

C Specification

void glFeedbackBuffer(GLsizei  size,
 GLenum  type,
 GLfloat *  buffer);

Parameters

size

+ Specifies the maximum number of values that can be written into buffer. +

type

+ Specifies a symbolic constant that describes the information + that will be returned for each vertex. + GL_2D, + GL_3D, + GL_3D_COLOR, + GL_3D_COLOR_TEXTURE, and + GL_4D_COLOR_TEXTURE are accepted. +

buffer

+ Returns the feedback data. +

Description

+ The glFeedbackBuffer function controls feedback. + Feedback, like selection, is a GL mode. + The mode is selected by calling + glRenderMode with GL_FEEDBACK. + When the GL is in feedback mode, + no pixels are produced by rasterization. + Instead, information about primitives that would have been + rasterized is fed back to the application using the GL. +

+ glFeedbackBuffer has three arguments: + buffer is a pointer to an array of floating-point values + into which feedback information is placed. + size indicates the size of the array. + type is a symbolic constant describing the information + that is fed back for each vertex. + glFeedbackBuffer must be issued before feedback mode is enabled + (by calling glRenderMode with argument GL_FEEDBACK). + Setting GL_FEEDBACK without establishing the feedback buffer, + or calling glFeedbackBuffer while the GL is in feedback mode, + is an error. +

+ When glRenderMode is called while in feedback mode, it returns the number of entries + placed in the feedback array and resets the feedback array pointer to the base + of the feedback buffer. The returned value never exceeds size. If the feedback + data required more room than was available in buffer, + glRenderMode returns a negative value. + To take the GL out of feedback mode, call + glRenderMode with a parameter value other than GL_FEEDBACK. +

+ While in feedback mode, + each primitive, bitmap, or pixel rectangle that would be rasterized + generates a block of values that are copied into the feedback array. + If doing so would cause the number of entries to exceed the maximum, + the block is partially written so as to fill the array + (if there is any room left at all), + and an overflow flag is set. + Each block begins with a code indicating the primitive type, + followed by values that describe the primitive's vertices and + associated data. + Entries are also written for bitmaps and pixel rectangles. + Feedback occurs after polygon culling and glPolygonMode interpretation + of polygons has taken place, + so polygons that are culled are not returned in the feedback buffer. + It can also occur after polygons with more than three edges are broken up + into triangles, + if the GL implementation renders polygons by performing this decomposition. +

+ The glPassThrough command can be used to insert a marker + into the feedback buffer. + See glPassThrough. +

+ Following is the grammar for the blocks of values written + into the feedback buffer. + Each primitive is indicated with a unique identifying value + followed by some number of vertices. + Polygon entries include an integer value indicating how many vertices follow. + A vertex is fed back as some number of floating-point values, + as determined by type. + Colors are fed back as four values in RGBA mode and one value + in color index mode. +

+

+ feedbackList ← feedbackItem feedbackList | feedbackItem +

+

+ feedbackItem ← point | lineSegment | polygon | bitmap | pixelRectangle | passThru +

+

+ point ← GL_POINT_TOKEN vertex +

+

+ lineSegment ← GL_LINE_TOKEN vertex vertex | GL_LINE_RESET_TOKEN vertex vertex +

+

+ polygon ← GL_POLYGON_TOKEN n polySpec +

+

+ polySpec ← polySpec vertex | vertex vertex vertex +

+

+ bitmap ← GL_BITMAP_TOKEN vertex +

+

+ pixelRectangle ← GL_DRAW_PIXEL_TOKEN vertex | GL_COPY_PIXEL_TOKEN vertex +

+

+ passThru ← GL_PASS_THROUGH_TOKEN value +

+

+ vertex ← 2d | 3d | 3dColor | 3dColorTexture | 4dColorTexture +

+

+ 2d ← value value +

+

+ 3d ← value value value +

+

+ 3dColor ← value value value color +

+

+ 3dColorTexture ← value value value color tex +

+

+ 4dColorTexture ← value value value value color tex +

+

+ color ← rgba | index +

+

+ rgba ← value value value value +

+

+ index ← value +

+

+ tex ← value value value value +

+

+

+

+ value + is a floating-point number, + and + n + is a floating-point integer giving the number of vertices in the polygon. + GL_POINT_TOKEN, + GL_LINE_TOKEN, + GL_LINE_RESET_TOKEN, + GL_POLYGON_TOKEN, + GL_BITMAP_TOKEN, + GL_DRAW_PIXEL_TOKEN, + GL_COPY_PIXEL_TOKEN and + GL_PASS_THROUGH_TOKEN are symbolic floating-point constants. + GL_LINE_RESET_TOKEN is returned whenever the line stipple pattern + is reset. + The data returned as a vertex depends on the feedback type. +

+ The following table gives the correspondence between type + and the number of values per vertex. + k is 1 in color index mode and 4 in RGBA mode. +

+

+ Type + + Coordinates + + Color + + Texture + + Total Number of Values +
+ GL_2D + + x, y + + + + 2 +
+ GL_3D + + x, y, z + + + + 3 +
+ GL_3D_COLOR + + x, y, z + + k + + + + + + 3 + + + k + + +
+ GL_3D_COLOR_TEXTURE + + x, y, z + + k + + 4 + + + + + 7 + + + k + + +
+ GL_4D_COLOR_TEXTURE + + x, y, z, w + + k + + 4 + + + + + 8 + + + k + + +

+ Feedback vertex coordinates are in window coordinates, + except w, + which is in clip coordinates. + Feedback colors are lighted, if lighting is enabled. + Feedback texture coordinates are generated, + if texture coordinate generation is enabled. + They are always transformed by the texture matrix. +

Notes

+ glFeedbackBuffer, when used in a display list, is not compiled into the display list + but is executed immediately. +

+ glFeedbackBuffer returns only the texture coordinate of texture unit GL_TEXTURE0. +

Errors

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if size is negative. +

+ GL_INVALID_OPERATION is generated if glFeedbackBuffer is called while the + render mode is GL_FEEDBACK, + or if glRenderMode is called with argument GL_FEEDBACK before + glFeedbackBuffer is called at least once. +

+ GL_INVALID_OPERATION is generated if glFeedbackBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_RENDER_MODE +

+ glGet with argument GL_FEEDBACK_BUFFER_POINTER +

+ glGet with argument GL_FEEDBACK_BUFFER_SIZE +

+ glGet with argument GL_FEEDBACK_BUFFER_TYPE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFinish.xml b/upstream-man-pages/man2/xhtml/glFinish.xml new file mode 100644 index 0000000..0145b4d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFinish.xml @@ -0,0 +1,22 @@ + + +glFinish

Name

glFinish — block until all GL execution is complete

C Specification

void glFinish(  void);

Description

+ glFinish does not return until the effects of all previously + called GL commands are complete. + Such effects include all changes to GL state, + all changes to connection state, + and all changes to the frame buffer contents. +

Notes

+ glFinish requires a round trip to the server. +

Errors

+ GL_INVALID_OPERATION is generated if glFinish is executed between + the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glFlush +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFlush.xml b/upstream-man-pages/man2/xhtml/glFlush.xml new file mode 100644 index 0000000..74cff7f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFlush.xml @@ -0,0 +1,35 @@ + + +glFlush

Name

glFlush — force execution of GL commands in finite time

C Specification

void glFlush(  void);

Description

+ Different GL implementations buffer commands in several different locations, + including network buffers and the graphics accelerator itself. + glFlush empties all of these buffers, + causing all issued commands to be executed as quickly as + they are accepted by the actual rendering engine. + Though this execution may not be completed in any particular + time period, + it does complete in finite time. +

+ Because any GL program might be executed over a network, + or on an accelerator that buffers commands, + all programs should call glFlush whenever they count on having + all of their previously issued commands completed. + For example, + call glFlush before waiting for user input that depends on + the generated image. +

Notes

+ glFlush can return at any time. + It does not wait until the execution of all previously + issued GL commands is complete. +

Errors

+ GL_INVALID_OPERATION is generated if glFlush + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glFinish +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFog.xml b/upstream-man-pages/man2/xhtml/glFog.xml new file mode 100644 index 0000000..fdfc6af --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFog.xml @@ -0,0 +1,331 @@ + + +glFog

Name

glFog — specify fog parameters

C Specification

void glFogf(GLenum  pname,
 GLfloat  param);
void glFogi(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies a single-valued fog parameter. + GL_FOG_MODE, + GL_FOG_DENSITY, + GL_FOG_START, + GL_FOG_END, + GL_FOG_INDEX, and + GL_FOG_COORD_SRC + are accepted. +

param

+ Specifies the value that pname will be set to. +

C Specification

void glFogfv(GLenum  pname,
 const GLfloat *  params);
void glFogiv(GLenum  pname,
 const GLint *  params);

Parameters

pname

+ Specifies a fog parameter. + GL_FOG_MODE, + GL_FOG_DENSITY, + GL_FOG_START, + GL_FOG_END, + GL_FOG_INDEX, + GL_FOG_COLOR, and + GL_FOG_COORD_SRC + are accepted. +

params

+ Specifies the value or values to be assigned to pname. + GL_FOG_COLOR requires an array of four values. + All other parameters accept an array containing only a single value. +

Description

+ Fog is initially disabled. + While enabled, fog affects rasterized geometry, + bitmaps, and pixel blocks, but not buffer clear operations. To enable + and disable fog, call glEnable and glDisable with argument + GL_FOG. +

+ glFog assigns the value or values in params to the fog parameter + specified by pname. + The following values are accepted for pname: +

GL_FOG_MODE

+ params is a single integer or floating-point value that specifies + the equation to be used to compute the fog blend factor, + f. + Three symbolic constants are accepted: + GL_LINEAR, + GL_EXP, + and GL_EXP2. + The equations corresponding to these symbolic constants are defined below. + The initial fog mode is GL_EXP. +

GL_FOG_DENSITY

+ params is a single integer or floating-point value that specifies + density, + the fog density used in both exponential fog equations. + Only nonnegative densities are accepted. + The initial fog density is 1. +

GL_FOG_START

+ params is a single integer or floating-point value that specifies + start, + the near distance used in the linear fog equation. + The initial near distance is 0. +

GL_FOG_END

+ params is a single integer or floating-point value that specifies + end, + the far distance used in the linear fog equation. + The initial far distance is 1. +

GL_FOG_INDEX

+ params is a single integer or floating-point value that specifies + + + i + f + + , + the fog color index. + The initial fog index is 0. +

GL_FOG_COLOR

+ params contains four integer or floating-point values that specify + + + C + f + + , + the fog color. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + After conversion, + all color components are clamped to the range + + + + 0 + 1 + + . + The initial fog color is (0, 0, 0, 0). +

GL_FOG_COORD_SRC

+ params contains either of the following symbolic constants: + GL_FOG_COORD or GL_FRAGMENT_DEPTH. GL_FOG_COORD + specifies that the current fog coordinate should be used as distance value + in the fog color computation. GL_FRAGMENT_DEPTH specifies that the + current fragment depth should be used as distance value in the fog + computation. +

+ Fog blends a fog color with each rasterized pixel fragment's post-texturing + color using a blending factor + f. + Factor + f + is computed in one of three ways, + depending on the fog mode. + Let + c + be either the distance in eye coordinate from the origin (in the + case that the GL_FOG_COORD_SRC is GL_FRAGMENT_DEPTH) or + the current fog coordinate (in the case that GL_FOG_COORD_SRC + is GL_FOG_COORD). + The equation for GL_LINEAR fog is +

+ + + f + = + + + + end + - + c + + + + + end + - + start + + + + +

+

+ The equation for GL_EXP fog is +

+ + + f + = + e + + + - + + + density + · + c + + + + + + +

+

+ The equation for GL_EXP2 fog is +

+ + + f + = + e + + + - + + + density + · + c + + + + + 2 + + +

+

+ Regardless of the fog mode, + f + is clamped to the range + + + + 0 + 1 + + + after it is computed. + Then, + if the GL is in RGBA color mode, + the fragment's red, green, and blue colors, represented by + + + C + r + + , + are replaced by +

+

+ + + + C + r + + + ″ + + = + + + f + × + C + r + + + + + + + + 1 + - + f + + + × + C + f + + + + +

+

+ Fog does not affect a fragment's alpha component. +

+ In color index mode, the fragment's color index + + + i + r + + + is replaced by +

+

+ + + + i + r + + + ″ + + = + + i + r + + + + + + + 1 + - + f + + + × + i + f + + + + +

+

+

Notes

+ GL_FOG_COORD_SRC is available only if the GL version is 1.4 or + greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value, + or if pname is GL_FOG_MODE and params is not an accepted value. +

+ GL_INVALID_VALUE is generated if pname is GL_FOG_DENSITY + and params is negative. +

+ GL_INVALID_OPERATION is generated if glFog + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glIsEnabled with argument GL_FOG +

+ glGet with argument GL_FOG_COLOR +

+ glGet with argument GL_FOG_INDEX +

+ glGet with argument GL_FOG_DENSITY +

+ glGet with argument GL_FOG_START +

+ glGet with argument GL_FOG_END +

+ glGet with argument GL_FOG_MODE +

See Also

+ glEnable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFogCoord.xml b/upstream-man-pages/man2/xhtml/glFogCoord.xml new file mode 100644 index 0000000..9a97cc1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFogCoord.xml @@ -0,0 +1,29 @@ + + +glFogCoord

Name

glFogCoord — set the current fog coordinates

C Specification

void glFogCoordd(GLdouble  coord);
void glFogCoordf(GLfloat  coord);

Parameters

coord

+ Specify the fog distance. +

C Specification

void glFogCoorddv(GLdouble *  coord);
void glFogCoordfv(GLfloat *  coord);

Parameters

coord

+ Specifies a pointer to an array containing a single value representing the + fog distance. +

Description

+ glFogCoord specifies the fog coordinate that is associated with each vertex and + the current raster position. The value specified is interpolated and used + in computing the fog color (see glFog). +

Notes

+ glFogCoord is available only if the GL version is 1.4 or greater. +

+ The current fog coordinate can be updated at any time. In particular, + glFogCoord can be called between a call to glBegin and the corresponding + call to glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_FOG_COORD +

See Also

+ glFog, + glFogCoordPointer, + glVertex +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFogCoordPointer.xml b/upstream-man-pages/man2/xhtml/glFogCoordPointer.xml new file mode 100644 index 0000000..ec58ec2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFogCoordPointer.xml @@ -0,0 +1,106 @@ + + +glFogCoordPointer

Name

glFogCoordPointer — define an array of fog coordinates

C Specification

void glFogCoordPointer(GLenum  type,
 GLsizei  stride,
 GLvoid *  pointer);

Parameters

type

+ Specifies the data type of each fog coordinate. + Symbolic constants + GL_FLOAT, + or GL_DOUBLE + are accepted. The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive fog coordinates. + If stride is 0, the array elements are understood + to be tightly packed. The initial value is 0. +

pointer

+ Specifies a pointer to the first coordinate of the first fog coordinate in the + array. The initial value is 0. +

Description

+ glFogCoordPointer specifies the location and data format of an array of fog coordinates + to use when rendering. type specifies the data type of each fog + coordinate, and stride specifies the byte stride from one fog coordinate to + the next, allowing vertices and attributes to be packed into a single array + or stored in separate arrays. +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a fog coordinate array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as fog coordinate vertex array + client-side state (GL_FOG_COORD_ARRAY_BUFFER_BINDING). +

+ When a fog coordinate array is specified, + type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the fog coordinate array, call + glEnableClientState and glDisableClientState with the argument + GL_FOG_COORD_ARRAY. If + enabled, the fog coordinate array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. +

Notes

+ glFogCoordPointer is available only if the GL version is 1.4 or greater. +

+ Fog coordinates are not supported for interleaved vertex array formats + (see glInterleavedArrays). +

+ The fog coordinate array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glFogCoordPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glFogCoordPointer is typically implemented on the client side with no protocol. +

+ Fog coordinate array parameters are client-side state and are + therefore not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. +

Errors

+ GL_INVALID_ENUM is generated if type is not either GL_FLOAT + or GL_DOUBLE. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_FOG_COORD_ARRAY +

+ glGet with argument GL_FOG_COORD_ARRAY_STRIDE +

+ glGet with argument GL_FOG_COORD_ARRAY_TYPE +

+ glGet with argument GL_FOG_COORD_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_FOG_COORD_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFrontFace.xml b/upstream-man-pages/man2/xhtml/glFrontFace.xml new file mode 100644 index 0000000..6064dba --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFrontFace.xml @@ -0,0 +1,49 @@ + + +glFrontFace

Name

glFrontFace — define front- and back-facing polygons

C Specification

void glFrontFace(GLenum  mode);

Parameters

mode

+ Specifies the orientation of front-facing polygons. + GL_CW and GL_CCW are accepted. + The initial value is GL_CCW. +

Description

+ In a scene composed entirely of opaque closed surfaces, + back-facing polygons are never visible. + Eliminating these invisible polygons has the obvious benefit + of speeding up the rendering of the image. + To enable and disable elimination of back-facing polygons, call glEnable + and glDisable with argument GL_CULL_FACE. +

+ The projection of a polygon to window coordinates is said to have + clockwise winding if an imaginary object following the path + from its first vertex, + its second vertex, + and so on, + to its last vertex, + and finally back to its first vertex, + moves in a clockwise direction about the interior of the polygon. + The polygon's winding is said to be counterclockwise if the imaginary + object following the same path moves in a counterclockwise direction + about the interior of the polygon. + glFrontFace specifies whether polygons with clockwise winding in window coordinates, + or counterclockwise winding in window coordinates, + are taken to be front-facing. + Passing GL_CCW to mode selects counterclockwise polygons as + front-facing; + GL_CW selects clockwise polygons as front-facing. + By default, counterclockwise polygons are taken to be front-facing. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glFrontFace + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_FRONT_FACE +

See Also

+ glCullFace, + glLightModel +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glFrustum.xml b/upstream-man-pages/man2/xhtml/glFrustum.xml new file mode 100644 index 0000000..e7047d9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glFrustum.xml @@ -0,0 +1,331 @@ + + +glFrustum

Name

glFrustum — multiply the current matrix by a perspective matrix

C Specification

void glFrustum(GLdouble  left,
 GLdouble  right,
 GLdouble  bottom,
 GLdouble  top,
 GLdouble  nearVal,
 GLdouble  farVal);

Parameters

left, right

+ Specify the coordinates for the left and right vertical clipping planes. +

bottom, top

+ Specify the coordinates for the bottom and top horizontal clipping planes. +

nearVal, farVal

+ Specify the distances to the near and far depth clipping planes. + Both distances must be positive. +

Description

+ glFrustum describes a perspective matrix that produces a perspective projection. + The current matrix (see glMatrixMode) is multiplied by this matrix + and the result replaces the current matrix, as if + glMultMatrix were called with the following matrix + as its argument: +

+

+

+ + + + + + + + + + 2 + ⁢ + nearVal + + + + + right + - + left + + + + + + + 0 + + + A + + + 0 + + + + + 0 + + + + + + + 2 + ⁢ + nearVal + + + + + top + - + bottom + + + + + + + B + + + 0 + + + + + 0 + + + 0 + + + C + + + D + + + + + 0 + + + 0 + + + -1 + + + 0 + + + + +

+

+

+ + + A + = + + + + right + + + left + + + + + right + - + left + + + + +

+

+

+ + + B + = + + + + top + + + bottom + + + + + top + - + bottom + + + + +

+

+

+ + + C + = + + - + + + + + farVal + + + nearVal + + + + + farVal + - + nearVal + + + + + + +

+

+

+ + + D + = + + - + + + + + 2 + ⁢ + farVal + ⁢ + nearVal + + + + + farVal + - + nearVal + + + + + + +

+

+

+ Typically, the matrix mode is GL_PROJECTION, and + + + + left + bottom + + - + nearVal + + + + and + + + + right + top + + - + nearVal + + + + specify the points on the near clipping plane that are mapped + to the lower left and upper right corners of the window, + assuming that the eye is located at (0, 0, 0). + + + + - + farVal + + + specifies the location of the far clipping plane. + Both nearVal and farVal must be positive. +

+ Use glPushMatrix and glPopMatrix to save and restore + the current matrix stack. +

Notes

+ Depth buffer precision is affected by the values specified for + nearVal and farVal. + The greater the ratio of farVal to nearVal is, + the less effective the depth buffer will be at distinguishing between + surfaces that are near each other. + If +

+ + + + r + = + + farVal + nearVal + + + +

+ roughly + + + + log + 2 + + ⁡ + + r + + + + bits of depth buffer precision are lost. + Because + r + approaches infinity as nearVal approaches 0, + nearVal must never be set to 0. +

Errors

+ GL_INVALID_VALUE is generated if nearVal or farVal is not + positive, or if left = right, or bottom = top, + or near = far. +

+ GL_INVALID_OPERATION is generated if glFrustum + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

+ glGet with argument GL_COLOR_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGenBuffers.xml b/upstream-man-pages/man2/xhtml/glGenBuffers.xml new file mode 100644 index 0000000..fdaae00 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGenBuffers.xml @@ -0,0 +1,38 @@ + + +glGenBuffers

Name

glGenBuffers — generate buffer object names

C Specification

void glGenBuffers(GLsizei  n,
 GLuint *  buffers);

Parameters

n

+ Specifies the number of buffer object names to be generated. +

buffers

+ Specifies an array in which the generated buffer object names are stored. +

Description

+ glGenBuffers returns n buffer object names in buffers. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenBuffers. +

+ Buffer object names returned by a call to glGenBuffers are not returned by + subsequent calls, unless they are first deleted with + glDeleteBuffers. +

+ No buffer objects are associated with the returned buffer object names until they are first bound by calling + glBindBuffer. +

Notes

+ glGenBuffers is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glGenBuffers is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsBuffer +

See Also

+ glBindBuffer, + glDeleteBuffers, + glGet +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGenLists.xml b/upstream-man-pages/man2/xhtml/glGenLists.xml new file mode 100644 index 0000000..a60f670 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGenLists.xml @@ -0,0 +1,58 @@ + + +glGenLists

Name

glGenLists — generate a contiguous set of empty display lists

C Specification

GLuint glGenLists(GLsizei  range);

Parameters

range

+ Specifies the number of contiguous empty display lists + to be generated. +

Description

+ glGenLists has one argument, range. + It returns an integer n such that range contiguous + empty display lists, + named + n, + + + + n + + + 1 + + , + + + ... + , + + + + n + + + range + - + 1 + + , + are created. + If range is 0, + if there is no group of range contiguous names available, + or if any error is generated, + no display lists are generated, + and 0 is returned. +

Errors

+ GL_INVALID_VALUE is generated if range is negative. +

+ GL_INVALID_OPERATION is generated if glGenLists + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glIsList +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGenQueries.xml b/upstream-man-pages/man2/xhtml/glGenQueries.xml new file mode 100644 index 0000000..e2decfc --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGenQueries.xml @@ -0,0 +1,39 @@ + + + +glGenQueries

Name

glGenQueries — generate query object names

C Specification

void glGenQueries(GLsizei n,
 GLuint * ids);
 

Parameters

n

+ Specifies the number of query object names to be generated. +

ids

+ Specifies an array in which the generated query object names are stored. +

Description

+ glGenQueries returns n query object names in ids. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenQueries. +

+ Query object names returned by a call to glGenQueries are not returned by + subsequent calls, unless they are first deleted with + glDeleteQueries. +

+ No query objects are associated with the returned query object names until they are first used by calling + glBeginQuery. +

Notes

+ glGenQueries is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glGenQueries is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGenTextures.xml b/upstream-man-pages/man2/xhtml/glGenTextures.xml new file mode 100644 index 0000000..3770069 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGenTextures.xml @@ -0,0 +1,46 @@ + + +glGenTextures

Name

glGenTextures — generate texture names

C Specification

void glGenTextures(GLsizei  n,
 GLuint *  textures);

Parameters

n

+ Specifies the number of texture names to be generated. +

textures

+ Specifies an array in which the generated texture names are stored. +

Description

+ glGenTextures returns n texture names in textures. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenTextures. +

+ The generated textures have no dimensionality; they assume the dimensionality + of the texture target to which they are first bound + (see glBindTexture). +

+ Texture names returned by a call to glGenTextures are not returned by + subsequent calls, unless they are first deleted with + glDeleteTextures. +

Notes

+ glGenTextures is available only if the GL version is 1.1 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glGenTextures is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsTexture +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGet.xml b/upstream-man-pages/man2/xhtml/glGet.xml new file mode 100644 index 0000000..0af7e93 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGet.xml @@ -0,0 +1,2385 @@ + + +glGet

Name

glGet — return the value or values of a selected parameter

C Specification

void glGetBooleanv(GLenum  pname,
 GLboolean *  params);

C Specification

void glGetDoublev(GLenum  pname,
 GLdouble *  params);

C Specification

void glGetFloatv(GLenum  pname,
 GLfloat *  params);

C Specification

void glGetIntegerv(GLenum  pname,
 GLint *  params);

Parameters

pname

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

params

+ Returns the value or values of the specified parameter. +

Description

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

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

+ The following symbolic constants are accepted by pname: +

GL_ACCUM_ALPHA_BITS

+

+ params returns one value, + the number of alpha bitplanes in the accumulation buffer. +

GL_ACCUM_BLUE_BITS

+

+ params returns one value, + the number of blue bitplanes in the accumulation buffer. +

GL_ACCUM_CLEAR_VALUE

+

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

GL_ACCUM_GREEN_BITS

+

+ params returns one value, + the number of green bitplanes in the accumulation buffer. +

GL_ACCUM_RED_BITS

+

+ params returns one value, + the number of red bitplanes in the accumulation buffer. +

GL_ACTIVE_TEXTURE

+

+ params returns a single value indicating the active multitexture unit. + The initial value is GL_TEXTURE0. + See glActiveTexture. +

GL_ALIASED_POINT_SIZE_RANGE

+

+ params returns two values, + the smallest and largest supported sizes for aliased points. +

GL_ALIASED_LINE_WIDTH_RANGE

+

+ params returns two values, + the smallest and largest supported widths for aliased lines. +

GL_ALPHA_BIAS

+

+ params returns one value, + the alpha bias factor used during pixel transfers. The initial value is 0. + See glPixelTransfer. +

GL_ALPHA_BITS

+

+ params returns one value, + the number of alpha bitplanes in each color buffer. +

GL_ALPHA_SCALE

+

+ params returns one value, + the alpha scale factor used + during pixel transfers. The initial value is 1. + See glPixelTransfer. +

GL_ALPHA_TEST

+

+ params returns a single boolean value indicating whether alpha testing + of fragments is enabled. The initial value is GL_FALSE. + See glAlphaFunc. +

GL_ALPHA_TEST_FUNC params returns one value,

+

+ the symbolic name of the alpha test function. The initial value is + GL_ALWAYS. + See glAlphaFunc. +

GL_ALPHA_TEST_REF

+

+ params returns one value, + the reference value for the alpha test. The initial value is 0. + See glAlphaFunc. + An integer value, + if requested, + is linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer value. +

GL_ARRAY_BUFFER_BINDING

+

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

GL_ATTRIB_STACK_DEPTH

+

+ params returns one value, + the depth of the attribute stack. + If the stack is empty, + 0 is returned. The initial value is 0. + See glPushAttrib. +

GL_AUTO_NORMAL

+

+ params returns a single boolean value indicating whether 2D map evaluation + automatically generates surface normals. The initial value is GL_FALSE. + See glMap2. +

GL_AUX_BUFFERS

+

+ params returns one value, + the number of auxiliary color buffers available. +

GL_BLEND

+

+ params returns a single boolean value indicating whether blending is + enabled. The initial value is GL_FALSE. + See glBlendFunc. +

GL_BLEND_COLOR

+

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

GL_BLEND_DST_ALPHA

+

+ params returns one value, + the symbolic constant identifying the alpha destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_DST_RGB

+

+ params returns one value, + the symbolic constant identifying the RGB destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_EQUATION_RGB

+

+ params returns one value, a symbolic constant indicating whether + the RGB blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. +

GL_BLEND_EQUATION_ALPHA

+

+ params returns one value, a symbolic constant indicating whether + the Alpha blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. +

GL_BLEND_SRC_ALPHA

+

+ params returns one value, + the symbolic constant identifying the alpha source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_SRC_RGB

+

+ params returns one value, + the symbolic constant identifying the RGB source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLUE_BIAS

+

+ params returns one value, + the blue bias factor used during pixel transfers. The initial value is 0. + See glPixelTransfer. +

GL_BLUE_BITS

+

+ params returns one value, + the number of blue bitplanes in each color buffer. +

GL_BLUE_SCALE

+

+ params returns one value, + the blue scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. +

GL_CLIENT_ACTIVE_TEXTURE

+

+ params returns a single integer value indicating the current client active + multitexture unit. The initial value is GL_TEXTURE0. + See glClientActiveTexture. +

GL_CLIENT_ATTRIB_STACK_DEPTH

+

+ params returns one value indicating the depth of the + attribute stack. The initial value is 0. + See glPushClientAttrib. +

GL_CLIP_PLANEi

+

+ params returns a single boolean value indicating whether the specified + clipping plane is enabled. The initial value is GL_FALSE. + See glClipPlane. +

GL_COLOR_ARRAY

+

+ params returns a single boolean value indicating whether the color array is enabled. The initial value is GL_FALSE. + See glColorPointer. +

GL_COLOR_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the color array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glColorPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_COLOR_ARRAY_SIZE

+

+ params returns one value, + the number of components per color in the color array. The initial value + is 4. + See glColorPointer. +

GL_COLOR_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive colors in the color array. The initial + value is 0. + See glColorPointer. +

GL_COLOR_ARRAY_TYPE

+

+ params returns one value, + the data type of each component in the color array. The initial value + is GL_FLOAT. + See glColorPointer. +

GL_COLOR_CLEAR_VALUE

+

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

GL_COLOR_LOGIC_OP

+

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

GL_COLOR_MATERIAL

+

+ params returns a single boolean value indicating whether one or more + material parameters are tracking the current color. The initial value + is GL_FALSE. + See glColorMaterial. +

GL_COLOR_MATERIAL_FACE

+

+ params returns one value, + a symbolic constant indicating which materials have a parameter that is + tracking the current color. The initial value is GL_FRONT_AND_BACK. + See glColorMaterial. +

GL_COLOR_MATERIAL_PARAMETER

+

+ params returns one value, + a symbolic constant indicating which material parameters are + tracking the current color. The initial value is + GL_AMBIENT_AND_DIFFUSE. + See glColorMaterial. +

GL_COLOR_MATRIX

+

+ params returns sixteen values: + the color matrix on the top of the color matrix stack. Initially + this matrix is the identity matrix. + See glPushMatrix. +

GL_COLOR_MATRIX_STACK_DEPTH

+

+ params returns one value, + the maximum supported depth of the projection matrix stack. The value must + be at least 2. + See glPushMatrix. +

GL_COLOR_SUM

+

+ params returns a single boolean value indicating whether primary and + secondary color sum is enabled. + See glSecondaryColor. +

GL_COLOR_TABLE

+

+ params returns a single boolean value indicating whether the color table + lookup is enabled. + See glColorTable. +

GL_COLOR_WRITEMASK

+

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

GL_COMPRESSED_TEXTURE_FORMATS

+

+ params returns a list of symbolic + constants of length GL_NUM_COMPRESSED_TEXTURE_FORMATS + indicating which compressed texture formats are available. + See glCompressedTexImage2D. +

GL_CONVOLUTION_1D

+

+ params returns a single boolean value indicating whether 1D convolution + is enabled. The initial value is GL_FALSE. + See glConvolutionFilter1D. +

GL_CONVOLUTION_2D

+

+ params returns a single boolean value indicating whether 2D convolution + is enabled. The initial value is GL_FALSE. + See glConvolutionFilter2D. +

GL_CULL_FACE

+

+ params returns a single boolean value indicating whether polygon culling + is enabled. The initial value is GL_FALSE. + See glCullFace. +

GL_CULL_FACE_MODE

+

+ params returns one value, + a symbolic constant indicating which polygon faces are to be + culled. The initial value is GL_BACK. + See glCullFace. +

GL_CURRENT_COLOR

+

+ params returns four values: + the red, green, blue, and alpha values of the current color. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer value. + The initial value is (1, 1, 1, 1). + See glColor. +

GL_CURRENT_FOG_COORD

+

+ params returns one value, the current fog coordinate. The initial value + is 0. + See glFogCoord. +

GL_CURRENT_INDEX

+

+ params returns one value, + the current color index. The initial value is 1. + See glIndex. +

GL_CURRENT_NORMAL

+

+ params returns three values: + the x, y, and z values of the current normal. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer value. + The initial value is (0, 0, 1). + See glNormal. +

GL_CURRENT_PROGRAM

+

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

GL_CURRENT_RASTER_COLOR

+

+ params returns four values: + the red, green, blue, and alpha color values of the current raster position. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (1, 1, 1, 1). + See glRasterPos. +

GL_CURRENT_RASTER_DISTANCE

+

+ params returns one value, the distance from the eye to the current + raster position. The initial value is 0. + See glRasterPos. +

GL_CURRENT_RASTER_INDEX

+

+ params returns one value, + the color index of the current raster position. The initial value is 1. + See glRasterPos. +

GL_CURRENT_RASTER_POSITION

+

+ params returns four values: + the x, y, z, and w components of the current + raster position. + x, y, and z are in window coordinates, + and w is in clip coordinates. The initial value is (0, 0, 0, 1). + See glRasterPos. +

GL_CURRENT_RASTER_POSITION_VALID

+

+ params returns a single boolean value indicating whether the current + raster position is valid. The initial value is GL_TRUE. + See glRasterPos. +

GL_CURRENT_RASTER_SECONDARY_COLOR

+

+ params returns four values: + the red, green, blue, and alpha secondary color values of the current raster position. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (1, 1, 1, 1). + See glRasterPos. +

GL_CURRENT_RASTER_TEXTURE_COORDS

+

+ params returns four values: the s, t, r, and q + texture coordinates of the current raster position. The initial value is (0, 0, 0, 1). + See glRasterPos and glMultiTexCoord. +

GL_CURRENT_SECONDARY_COLOR

+

+ params returns four values: the red, green, blue, and alpha values of the + current secondary color. Integer values, if requested, are linearly mapped + from the internal floating-point representation such that 1.0 returns the + most positive representable integer value, and + + + -1.0 + + returns the most + negative representable integer value. The initial value is (0, 0, 0, 0). + See glSecondaryColor. +

GL_CURRENT_TEXTURE_COORDS

+

+ params returns four values: + the s, t, r, and q current texture + coordinates. The initial value is (0, 0, 0, 1). + See glMultiTexCoord. +

GL_DEPTH_BIAS

+

+ params returns one value, + the depth bias factor used during pixel transfers. The initial value is 0. + See glPixelTransfer. +

GL_DEPTH_BITS

+

+ params returns one value, + the number of bitplanes in the depth buffer. +

GL_DEPTH_CLEAR_VALUE

+

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

GL_DEPTH_FUNC

+

+ params returns one value, + the symbolic constant that indicates the depth comparison + function. The initial value is GL_LESS. + See glDepthFunc. +

GL_DEPTH_RANGE

+

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

GL_DEPTH_SCALE

+

+ params returns one value, + the depth scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. +

GL_DEPTH_TEST

+

+ params returns a single boolean value indicating whether depth testing + of fragments is enabled. The initial value is GL_FALSE. + See glDepthFunc and glDepthRange. +

GL_DEPTH_WRITEMASK

+

+ params returns a single boolean value indicating if the depth buffer + is enabled for writing. The initial value is GL_TRUE. + See glDepthMask. +

GL_DITHER

+

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

GL_DOUBLEBUFFER

+

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

GL_DRAW_BUFFER

+

+ params returns one value, + a symbolic constant indicating which buffers are being drawn to. + See glDrawBuffer. The initial value is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. +

GL_DRAW_BUFFERi

+

+ params returns one value, + a symbolic constant indicating which buffers are being drawn to by the corresponding output color. + See glDrawBuffers. + The initial value of GL_DRAW_BUFFER0 is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. The + initial values of draw buffers for all other output colors is GL_NONE. +

GL_EDGE_FLAG

+

+ params returns a single boolean value indicating whether the current + edge flag is GL_TRUE or GL_FALSE. The initial value is GL_TRUE. + See glEdgeFlag. +

GL_EDGE_FLAG_ARRAY

+

+ params returns a single boolean value indicating whether the edge + flag array is enabled. The initial value is GL_FALSE. + See glEdgeFlagPointer. +

GL_EDGE_FLAG_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the edge flag array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glEdgeFlagPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_EDGE_FLAG_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive edge flags in the edge flag + array. The initial value is 0. + See glEdgeFlagPointer. +

GL_ELEMENT_ARRAY_BUFFER_BINDING

+

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

GL_FEEDBACK_BUFFER_SIZE

+

+ params returns one value, the size of the feedback buffer. + See glFeedbackBuffer. +

GL_FEEDBACK_BUFFER_TYPE

+

+ params returns one value, the type of the feedback buffer. + See glFeedbackBuffer. +

GL_FOG

+

+ params returns a single boolean value indicating whether fogging is + enabled. The initial value is GL_FALSE. + See glFog. +

GL_FOG_COORD_ARRAY

+

+ params returns a single boolean value indicating whether the fog coordinate array is enabled. The initial value is GL_FALSE. + See glFogCoordPointer. +

GL_FOG_COORD_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the fog coordinate array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glFogCoordPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_FOG_COORD_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive fog coordinates in the fog coordinate + array. The initial value is 0. + See glFogCoordPointer. +

GL_FOG_COORD_ARRAY_TYPE

+

+ params returns one value, the type of the fog coordinate array. + The initial value is GL_FLOAT. + See glFogCoordPointer. +

GL_FOG_COORD_SRC

+

+ params returns one value, a symbolic constant indicating the source of the fog coordinate. + The initial value is GL_FRAGMENT_DEPTH. + See glFog. +

GL_FOG_COLOR

+

+ params returns four values: + the red, green, blue, and alpha components of the fog color. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 0, 0, 0). + See glFog. +

GL_FOG_DENSITY

+

+ params returns one value, + the fog density parameter. The initial value is 1. + See glFog. +

GL_FOG_END

+

+ params returns one value, + the end factor for the linear fog equation. The initial value is 1. + See glFog. +

GL_FOG_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the fog hint. The initial value + is GL_DONT_CARE. + See glHint. +

GL_FOG_INDEX

+

+ params returns one value, + the fog color index. The initial value is 0. + See glFog. +

GL_FOG_MODE

+

+ params returns one value, + a symbolic constant indicating which fog equation is selected. The initial + value is GL_EXP. + See glFog. +

GL_FOG_START

+

+ params returns one value, + the start factor for the linear fog equation. The initial value is 0. + See glFog. +

GL_FRAGMENT_SHADER_DERIVATIVE_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the derivative accuracy hint + for fragment shaders. The initial value + is GL_DONT_CARE. + See glHint. +

GL_FRONT_FACE

+

+ params returns one value, + a symbolic constant indicating whether clockwise or counterclockwise + polygon winding is treated as front-facing. The initial value is + GL_CCW. + See glFrontFace. +

GL_GENERATE_MIPMAP_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the mipmap generation filtering + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_GREEN_BIAS

+

+ params returns one value, + the green bias factor used during pixel transfers. The initial value is 0. +

GL_GREEN_BITS

+

+ params returns one value, + the number of green bitplanes in each color buffer. +

GL_GREEN_SCALE

+

+ params returns one value, + the green scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. +

GL_HISTOGRAM

+

+ params returns a single boolean value indicating whether histogram is + enabled. The initial value is GL_FALSE. + See glHistogram. +

GL_INDEX_ARRAY

+

+ params returns a single boolean value indicating whether the color + index array is enabled. The initial value is GL_FALSE. + See glIndexPointer. +

GL_INDEX_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the color index array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glIndexPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_INDEX_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive color indexes in the color index + array. The initial value is 0. + See glIndexPointer. +

GL_INDEX_ARRAY_TYPE

+

+ params returns one value, + the data type of indexes in the color index array. The initial value is + GL_FLOAT. + See glIndexPointer. +

GL_INDEX_BITS

+

+ params returns one value, + the number of bitplanes in each color index buffer. +

GL_INDEX_CLEAR_VALUE

+

+ params returns one value, + the color index used to clear the color index buffers. The initial value + is 0. + See glClearIndex. +

GL_INDEX_LOGIC_OP

+

+ params returns a single boolean value indicating whether a fragment's index + values are merged into the framebuffer using a logical + operation. The initial value is GL_FALSE. + See glLogicOp. +

GL_INDEX_MODE

+

+ params returns a single boolean value indicating whether the GL is in + color index mode (GL_TRUE) or RGBA mode (GL_FALSE). +

GL_INDEX_OFFSET

+

+ params returns one value, + the offset added to color and stencil indices during pixel + transfers. The initial value is 0. + See glPixelTransfer. +

GL_INDEX_SHIFT

+

+ params returns one value, + the amount that color and stencil indices are shifted during pixel + transfers. The initial value is 0. + See glPixelTransfer. +

GL_INDEX_WRITEMASK

+

+ params returns one value, + a mask indicating which bitplanes of each color index buffer can be + written. The initial value is all 1's. + See glIndexMask. +

GL_LIGHTi

+

+ params returns a single boolean value indicating whether the specified + light is enabled. The initial value is GL_FALSE. + See glLight and glLightModel. +

GL_LIGHTING

+

+ params returns a single boolean value indicating whether lighting is + enabled. The initial value is GL_FALSE. + See glLightModel. +

GL_LIGHT_MODEL_AMBIENT

+

+ params returns four values: + the red, green, blue, and alpha components of the ambient intensity of + the entire scene. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0.2, 0.2, 0.2, 1.0). + See glLightModel. +

GL_LIGHT_MODEL_COLOR_CONTROL

+

+ params returns single enumerated value indicating whether specular + reflection calculations are separated from normal lighting computations. + The initial value is GL_SINGLE_COLOR. +

GL_LIGHT_MODEL_LOCAL_VIEWER

+

+ params returns a single boolean value indicating whether specular reflection + calculations treat the viewer as being local to the scene. The initial + value is GL_FALSE. + See glLightModel. +

GL_LIGHT_MODEL_TWO_SIDE

+

+ params returns a single boolean value indicating whether separate materials + are used to compute lighting for front- and back-facing + polygons. The initial value is GL_FALSE. + See glLightModel. +

GL_LINE_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + lines is enabled. The initial value is GL_FALSE. + See glLineWidth. +

GL_LINE_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the line antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_LINE_STIPPLE

+

+ params returns a single boolean value indicating whether stippling of lines + is enabled. The initial value is GL_FALSE. + See glLineStipple. +

GL_LINE_STIPPLE_PATTERN

+

+ params returns one value, + the 16-bit line stipple pattern. The initial value is all 1's. + See glLineStipple. +

GL_LINE_STIPPLE_REPEAT

+

+ params returns one value, + the line stipple repeat factor. The initial value is 1. + See glLineStipple. +

GL_LINE_WIDTH

+

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

GL_LINE_WIDTH_GRANULARITY

+

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

GL_LINE_WIDTH_RANGE

+

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

GL_LIST_BASE

+

+ params returns one value, + the base offset added to all names in arrays presented to + glCallLists. The initial value is 0. + See glListBase. +

GL_LIST_INDEX

+

+ params returns one value, + the name of the display list currently under construction. + 0 is returned if no display list is currently under + construction. The initial value is 0. + See glNewList. +

GL_LIST_MODE

+

+ params returns one value, + a symbolic constant indicating the construction mode of the display list + currently under construction. The initial value is 0. + See glNewList. +

GL_LOGIC_OP_MODE

+

+ params returns one value, + a symbolic constant indicating the selected logic operation + mode. The initial value is GL_COPY. + See glLogicOp. +

GL_MAP1_COLOR_4

+

+ params returns a single boolean value indicating whether + 1D evaluation generates colors. The initial value is GL_FALSE. + See glMap1. +

GL_MAP1_GRID_DOMAIN

+

+ params returns two values: + the endpoints of the 1D map's grid domain. The initial value is (0, 1). + See glMapGrid. +

GL_MAP1_GRID_SEGMENTS

+

+ params returns one value, + the number of partitions in the 1D map's grid domain. The initial value + is 1. + See glMapGrid. +

GL_MAP1_INDEX

+

+ params returns a single boolean value indicating whether + 1D evaluation generates color indices. The initial value is GL_FALSE. + See glMap1. +

GL_MAP1_NORMAL

+

+ params returns a single boolean value indicating whether + 1D evaluation generates normals. The initial value is GL_FALSE. + See glMap1. +

GL_MAP1_TEXTURE_COORD_1

+

+ params returns a single boolean value indicating whether + 1D evaluation generates 1D texture coordinates. The initial value is + GL_FALSE. + See glMap1. +

GL_MAP1_TEXTURE_COORD_2

+

+ params returns a single boolean value indicating whether + 1D evaluation generates 2D texture coordinates. The initial value is + GL_FALSE. + See glMap1. +

GL_MAP1_TEXTURE_COORD_3

+

+ params returns a single boolean value indicating whether + 1D evaluation generates 3D texture coordinates. The initial value is + GL_FALSE. + See glMap1. +

GL_MAP1_TEXTURE_COORD_4

+

+ params returns a single boolean value indicating whether + 1D evaluation generates 4D texture coordinates. The initial value is + GL_FALSE. + See glMap1. +

GL_MAP1_VERTEX_3

+

+ params returns a single boolean value indicating whether + 1D evaluation generates 3D vertex coordinates. The initial value is + GL_FALSE. + See glMap1. +

GL_MAP1_VERTEX_4

+

+ params returns a single boolean value indicating whether + 1D evaluation generates 4D vertex coordinates. The initial value is + GL_FALSE. + See glMap1. +

GL_MAP2_COLOR_4

+

+ params returns a single boolean value indicating whether + 2D evaluation generates colors. The initial value is GL_FALSE. + See glMap2. +

GL_MAP2_GRID_DOMAIN

+

+ params returns four values: + the endpoints of the 2D map's + i + and + j + grid domains. The initial value + is (0,1; 0,1). + See glMapGrid. +

GL_MAP2_GRID_SEGMENTS

+

+ params returns two values: + the number of partitions in the 2D map's + i + and + j + grid + domains. The initial value is (1,1). + See glMapGrid. +

GL_MAP2_INDEX

+

+ params returns a single boolean value indicating whether + 2D evaluation generates color indices. The initial value is GL_FALSE. + See glMap2. +

GL_MAP2_NORMAL

+

+ params returns a single boolean value indicating whether + 2D evaluation generates normals. The initial value is GL_FALSE. + See glMap2. +

GL_MAP2_TEXTURE_COORD_1

+

+ params returns a single boolean value indicating whether + 2D evaluation generates 1D texture coordinates. The initial value is + GL_FALSE. + See glMap2. +

GL_MAP2_TEXTURE_COORD_2

+

+ params returns a single boolean value indicating whether + 2D evaluation generates 2D texture coordinates. The initial value is + GL_FALSE. + See glMap2. +

GL_MAP2_TEXTURE_COORD_3

+

+ params returns a single boolean value indicating whether + 2D evaluation generates 3D texture coordinates. The initial value is + GL_FALSE. + See glMap2. +

GL_MAP2_TEXTURE_COORD_4

+

+ params returns a single boolean value indicating whether + 2D evaluation generates 4D texture coordinates. The initial value is + GL_FALSE. + See glMap2. +

GL_MAP2_VERTEX_3

+

+ params returns a single boolean value indicating whether + 2D evaluation generates 3D vertex coordinates. The initial value is + GL_FALSE. + See glMap2. +

GL_MAP2_VERTEX_4

+

+ params returns a single boolean value indicating whether + 2D evaluation generates 4D vertex coordinates. The initial value is + GL_FALSE. + See glMap2. +

GL_MAP_COLOR

+

+ params returns a single boolean value indicating if colors and + color indices are to be replaced by table lookup during pixel + transfers. The initial value is GL_FALSE. + See glPixelTransfer. +

GL_MAP_STENCIL

+

+ params returns a single boolean value indicating if stencil indices + are to be replaced by table lookup during pixel transfers. The initial + value is GL_FALSE. + See glPixelTransfer. +

GL_MATRIX_MODE

+

+ params returns one value, + a symbolic constant indicating which matrix stack is currently the + target of all matrix operations. The initial value is GL_MODELVIEW. + See glMatrixMode. +

GL_MAX_3D_TEXTURE_SIZE

+

+ params returns one value, + a rough estimate of the largest 3D texture that the GL can handle. + The value must be at least 16. + If the GL version is 1.2 or greater, use + GL_PROXY_TEXTURE_3D to determine if a texture is too large. + See glTexImage3D. +

GL_MAX_CLIENT_ATTRIB_STACK_DEPTH

+

+ params returns one value indicating the maximum supported depth + of the client attribute stack. + See glPushClientAttrib. +

GL_MAX_ATTRIB_STACK_DEPTH

+

+ params returns one value, + the maximum supported depth of the attribute stack. The value must be + at least 16. + See glPushAttrib. +

GL_MAX_CLIP_PLANES

+

+ params returns one value, + the maximum number of application-defined clipping planes. The value must be at least 6. + See glClipPlane. +

GL_MAX_COLOR_MATRIX_STACK_DEPTH

+

+ params returns one value, the maximum supported depth of the color matrix + stack. The value must be at least 2. + See glPushMatrix. +

GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_CUBE_MAP_TEXTURE_SIZE

+

+ params returns one value. + The value gives a rough estimate of the largest cube-map texture that + the GL can handle. The value must be at least 16. + If the GL version is 1.3 or greater, use GL_PROXY_TEXTURE_CUBE_MAP + to determine if a texture is too large. + See glTexImage2D. +

GL_MAX_DRAW_BUFFERS

+

+ params returns one value, the maximum number + of simultaneous output colors allowed from a fragment shader using the + gl_FragData built-in array. The value must be at least 1. + See glDrawBuffers. +

GL_MAX_ELEMENTS_INDICES

+

+ params returns one value, + the recommended maximum number of vertex array indices. + See glDrawRangeElements. +

GL_MAX_ELEMENTS_VERTICES

+

+ params returns one value, + the recommended maximum number of vertex array vertices. + See glDrawRangeElements. +

GL_MAX_EVAL_ORDER

+

+ params returns one value, + the maximum equation order supported by 1D and 2D + evaluators. The value must be at least 8. + See glMap1 and glMap2. +

GL_MAX_FRAGMENT_UNIFORM_COMPONENTS

+

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

GL_MAX_LIGHTS

+

+ params returns one value, + the maximum number of lights. The value must be at least 8. + See glLight. +

GL_MAX_LIST_NESTING

+

+ params returns one value, + the maximum recursion depth allowed during display-list + traversal. The value must be at least 64. + See glCallList. +

GL_MAX_MODELVIEW_STACK_DEPTH

+

+ params returns one value, + the maximum supported depth of the modelview matrix stack. The value must + be at least 32. + See glPushMatrix. +

GL_MAX_NAME_STACK_DEPTH

+

+ params returns one value, + the maximum supported depth of the selection name stack. The value must be at least 64. + See glPushName. +

GL_MAX_PIXEL_MAP_TABLE

+

+ params returns one value, + the maximum supported size of a glPixelMap lookup table. + The value must be at least 32. + See glPixelMap. +

GL_MAX_PROJECTION_STACK_DEPTH

+

+ params returns one value, the maximum supported depth of the projection + matrix stack. The value must be at least 2. + See glPushMatrix. +

GL_MAX_TEXTURE_COORDS

+

+ params returns one value, + the maximum number of texture coordinate sets available to vertex and fragment shaders. + The value must be at least 2. + See glActiveTexture and + glClientActiveTexture. +

GL_MAX_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_TEXTURE_LOD_BIAS

+

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

GL_MAX_TEXTURE_SIZE

+

+ params returns one value. + The value gives a rough estimate of the largest texture that + the GL can handle. The value must be at least 64. + If the GL version is 1.1 or greater, use + GL_PROXY_TEXTURE_1D or GL_PROXY_TEXTURE_2D + to determine if a texture is too large. + See glTexImage1D and glTexImage2D. +

GL_MAX_TEXTURE_STACK_DEPTH

+

+ params returns one value, + the maximum supported depth of the texture matrix stack. The value must be at least 2. + See glPushMatrix. +

GL_MAX_TEXTURE_UNITS

+

+ params returns a single value indicating the number of conventional + texture units supported. Each conventional texture unit includes both a texture coordinate set + and a texture image unit. Conventional texture units may be used for fixed-function (non-shader) + rendering. The value must be at least 2. Additional texture coordinate sets and texture + image units may be accessed from vertex and fragment shaders. + See glActiveTexture and + glClientActiveTexture. +

GL_MAX_VARYING_FLOATS

+

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

GL_MAX_VERTEX_ATTRIBS

+

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

GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS

+

+ params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader. The value may be 0. + See glActiveTexture. +

GL_MAX_VERTEX_UNIFORM_COMPONENTS

+

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

GL_MAX_VIEWPORT_DIMS

+

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

GL_MINMAX

+

+ params returns a single boolean value indicating whether pixel minmax + values are computed. The initial value is GL_FALSE. + See glMinmax. +

GL_MODELVIEW_MATRIX

+

+ params returns sixteen values: + the modelview matrix on the top of the modelview matrix stack. Initially + this matrix is the identity matrix. + See glPushMatrix. +

GL_MODELVIEW_STACK_DEPTH

+

+ params returns one value, + the number of matrices on the modelview matrix stack. + The initial value is 1. + See glPushMatrix. +

GL_NAME_STACK_DEPTH

+

+ params returns one value, + the number of names on the selection name stack. The initial value is 0. + See glPushName. +

GL_NORMAL_ARRAY

+

+ params returns a single boolean value, indicating whether the normal + array is enabled. The initial value is GL_FALSE. + See glNormalPointer. +

GL_NORMAL_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the normal array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glNormalPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_NORMAL_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive normals in the normal + array. The initial value is 0. + See glNormalPointer. +

GL_NORMAL_ARRAY_TYPE

+

+ params returns one value, + the data type of each coordinate in the normal array. The initial value is + GL_FLOAT. + See glNormalPointer. +

GL_NORMALIZE

+

+ params returns a single boolean value indicating whether normals are + automatically scaled to unit length after they have been transformed to + eye coordinates. The initial value is GL_FALSE. + See glNormal. +

GL_NUM_COMPRESSED_TEXTURE_FORMATS

+

+ params returns a single integer value indicating the number of available + compressed texture formats. The minimum value is 0. + See glCompressedTexImage2D. +

GL_PACK_ALIGNMENT

+

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

GL_PACK_IMAGE_HEIGHT

+

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

GL_PACK_LSB_FIRST

+

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

GL_PACK_ROW_LENGTH

+

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

GL_PACK_SKIP_IMAGES

+

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

GL_PACK_SKIP_PIXELS

+

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

GL_PACK_SKIP_ROWS

+

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

GL_PACK_SWAP_BYTES

+

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

GL_PERSPECTIVE_CORRECTION_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the perspective correction + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_PIXEL_MAP_A_TO_A_SIZE

+

+ params returns one value, + the size of the alpha-to-alpha pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_B_TO_B_SIZE

+

+ params returns one value, + the size of the blue-to-blue pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_G_TO_G_SIZE

+

+ params returns one value, + the size of the green-to-green pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_I_TO_A_SIZE

+

+ params returns one value, + the size of the index-to-alpha pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_I_TO_B_SIZE

+

+ params returns one value, + the size of the index-to-blue pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_I_TO_G_SIZE

+

+ params returns one value, + the size of the index-to-green pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_I_TO_I_SIZE

+

+ params returns one value, + the size of the index-to-index pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_I_TO_R_SIZE

+

+ params returns one value, + the size of the index-to-red pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_R_TO_R_SIZE

+

+ params returns one value, + the size of the red-to-red pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_MAP_S_TO_S_SIZE

+

+ params returns one value, + the size of the stencil-to-stencil pixel translation table. + The initial value is 1. + See glPixelMap. +

GL_PIXEL_PACK_BUFFER_BINDING

+

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

GL_PIXEL_UNPACK_BUFFER_BINDING

+

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

GL_POINT_DISTANCE_ATTENUATION

+

+ params returns three values, + the coefficients for computing the attenuation value for points. + See glPointParameter. +

GL_POINT_FADE_THRESHOLD_SIZE

+

+ params returns one value, + the point size threshold for determining the point size. + See glPointParameter. +

GL_POINT_SIZE

+

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

GL_POINT_SIZE_GRANULARITY

+

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

GL_POINT_SIZE_MAX

+

+ params returns one value, + the upper bound for the attenuated point sizes. The initial value is 0.0. + See glPointParameter. +

GL_POINT_SIZE_MIN

+

+ params returns one value, + the lower bound for the attenuated point sizes. The initial value is 1.0. + See glPointParameter. +

GL_POINT_SIZE_RANGE

+

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

GL_POINT_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + points is enabled. The initial value is GL_FALSE. + See glPointSize. +

GL_POINT_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the point antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_POINT_SPRITE

+

+ params returns a single boolean value indicating whether point sprite is + enabled. The initial value is GL_FALSE. +

GL_POLYGON_MODE

+

+ params returns two values: + symbolic constants indicating whether front-facing and back-facing polygons + are rasterized as points, lines, or filled polygons. The initial value is + GL_FILL. + See glPolygonMode. +

GL_POLYGON_OFFSET_FACTOR

+

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

GL_POLYGON_OFFSET_UNITS

+

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

GL_POLYGON_OFFSET_FILL

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in fill mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_OFFSET_LINE

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in line mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_OFFSET_POINT

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in point mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + polygons is enabled. The initial value is GL_FALSE. + See glPolygonMode. +

GL_POLYGON_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the polygon antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_POLYGON_STIPPLE

+

+ params returns a single boolean value indicating whether polygon + stippling is enabled. The initial value is GL_FALSE. + See glPolygonStipple. +

GL_POST_COLOR_MATRIX_COLOR_TABLE

+

+ params returns a single boolean value indicating whether post color + matrix transformation lookup is enabled. + The initial value is GL_FALSE. + See glColorTable. +

GL_POST_COLOR_MATRIX_RED_BIAS

+

+ params returns one value, the red bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer. +

GL_POST_COLOR_MATRIX_GREEN_BIAS

+

+ params returns one value, the green bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer +

GL_POST_COLOR_MATRIX_BLUE_BIAS

+

+ params returns one value, the blue bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer. +

GL_POST_COLOR_MATRIX_ALPHA_BIAS

+

+ params returns one value, the alpha bias factor applied to RGBA fragments + after color matrix transformations. + The initial value is 0. + See glPixelTransfer. +

GL_POST_COLOR_MATRIX_RED_SCALE

+

+ params returns one value, the red scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. +

GL_POST_COLOR_MATRIX_GREEN_SCALE

+

+ params returns one value, the green scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. +

GL_POST_COLOR_MATRIX_BLUE_SCALE

+

+ params returns one value, the blue scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. +

GL_POST_COLOR_MATRIX_ALPHA_SCALE

+

+ params returns one value, the alpha scale factor applied to RGBA fragments + after color matrix transformations. + The initial value is 1. + See glPixelTransfer. +

GL_POST_CONVOLUTION_COLOR_TABLE

+

+ params returns a single boolean value indicating whether post convolution + lookup is enabled. The initial value is GL_FALSE. + See glColorTable. +

GL_POST_CONVOLUTION_RED_BIAS

+

+ params returns one value, the red bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. +

GL_POST_CONVOLUTION_GREEN_BIAS

+

+ params returns one value, the green bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. +

GL_POST_CONVOLUTION_BLUE_BIAS

+

+ params returns one value, the blue bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. +

GL_POST_CONVOLUTION_ALPHA_BIAS

+

+ params returns one value, the alpha bias factor applied to RGBA fragments + after convolution. The initial value is 0. + See glPixelTransfer. +

GL_POST_CONVOLUTION_RED_SCALE

+

+ params returns one value, the red scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. +

GL_POST_CONVOLUTION_GREEN_SCALE

+

+ params returns one value, the green scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. +

GL_POST_CONVOLUTION_BLUE_SCALE

+

+ params returns one value, the blue scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. +

GL_POST_CONVOLUTION_ALPHA_SCALE

+

+ params returns one value, the alpha scale factor applied to RGBA fragments + after convolution. The initial value is 1. + See glPixelTransfer. +

GL_PROJECTION_MATRIX

+

+ params returns sixteen values: + the projection matrix on the top of the projection matrix + stack. Initially this matrix is the identity matrix. + See glPushMatrix. +

GL_PROJECTION_STACK_DEPTH

+

+ params returns one value, + the number of matrices on the projection matrix stack. + The initial value is 1. + See glPushMatrix. +

GL_READ_BUFFER

+

+ params returns one value, + a symbolic constant indicating which color buffer is selected for + reading. The initial value is GL_BACK if there is a back buffer, + otherwise it is GL_FRONT. + See + glReadPixels and glAccum. +

GL_RED_BIAS

+

+ params returns one value, + the red bias factor used during pixel transfers. The initial value is 0. +

GL_RED_BITS

+

+ params returns one value, + the number of red bitplanes in each color buffer. +

GL_RED_SCALE

+

+ params returns one value, + the red scale factor used during pixel transfers. The initial value is 1. + See glPixelTransfer. +

GL_RENDER_MODE

+

+ params returns one value, + a symbolic constant indicating whether the GL is in render, + select, + or feedback mode. The initial value is GL_RENDER. + See glRenderMode. +

GL_RESCALE_NORMAL

+

+ params returns single boolean value + indicating whether normal rescaling is enabled. + See glEnable. +

GL_RGBA_MODE

+

+ params returns a single boolean value indicating whether the GL is in RGBA + mode (true) or color index mode (false). + See glColor. +

GL_SAMPLE_BUFFERS

+

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

GL_SAMPLE_COVERAGE_VALUE

+

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

GL_SAMPLE_COVERAGE_INVERT

+

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

GL_SAMPLES

+

+ params returns a single integer value indicating the coverage mask size. + See glSampleCoverage. +

GL_SCISSOR_BOX

+

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

GL_SCISSOR_TEST

+

+ params returns a single boolean value indicating whether scissoring is + enabled. The initial value is GL_FALSE. + See glScissor. +

GL_SECONDARY_COLOR_ARRAY

+

+ params returns a single boolean value indicating whether the secondary color array is enabled. The initial value is GL_FALSE. + See glSecondaryColorPointer. +

GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the secondary color array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glSecondaryColorPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_SECONDARY_COLOR_ARRAY_SIZE

+

+ params returns one value, the number of components per color in the + secondary color array. The initial value is 3. + See glSecondaryColorPointer. +

GL_SECONDARY_COLOR_ARRAY_STRIDE

+

+ params returns one value, the byte offset between consecutive colors in + the secondary color array. The initial value is 0. + See glSecondaryColorPointer. +

GL_SECONDARY_COLOR_ARRAY_TYPE

+

+ params returns one value, the data type of each component in the secondary + color array. The initial value is GL_FLOAT. + See glSecondaryColorPointer. +

GL_SELECTION_BUFFER_SIZE

+

+ params return one value, + the size of the selection buffer. + See glSelectBuffer. +

GL_SEPARABLE_2D

+

+ params returns a single boolean value indicating whether 2D separable + convolution is enabled. The initial value is GL_FALSE. + See glSeparableFilter2D. +

GL_SHADE_MODEL

+

+ params returns one value, + a symbolic constant indicating whether the shading mode is flat or + smooth. The initial value is GL_SMOOTH. + See glShadeModel. +

GL_SMOOTH_LINE_WIDTH_RANGE

+

+ params returns two values, + the smallest and largest supported widths for antialiased lines. + See glLineWidth. +

GL_SMOOTH_LINE_WIDTH_GRANULARITY

+

+ params returns one value, + the granularity of widths for antialiased lines. + See glLineWidth. +

GL_SMOOTH_POINT_SIZE_RANGE

+

+ params returns two values, + the smallest and largest supported widths for antialiased points. + See glPointSize. +

GL_SMOOTH_POINT_SIZE_GRANULARITY

+

+ params returns one value, + the granularity of sizes for antialiased points. + See glPointSize. +

GL_STENCIL_BACK_FAIL

+

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

GL_STENCIL_BACK_FUNC

+

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

GL_STENCIL_BACK_PASS_DEPTH_FAIL

+

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

GL_STENCIL_BACK_PASS_DEPTH_PASS

+

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

GL_STENCIL_BACK_REF

+

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

GL_STENCIL_BACK_VALUE_MASK

+

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

GL_STENCIL_BACK_WRITEMASK

+

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

GL_STENCIL_BITS

+

+ params returns one value, + the number of bitplanes in the stencil buffer. +

GL_STENCIL_CLEAR_VALUE

+

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

GL_STENCIL_FAIL

+

+ params returns one value, + a symbolic constant indicating what action is taken when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOp. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. +

GL_STENCIL_FUNC

+

+ params returns one value, + a symbolic constant indicating what function is used to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFunc. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. +

GL_STENCIL_PASS_DEPTH_FAIL

+

+ params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOp. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. +

GL_STENCIL_PASS_DEPTH_PASS

+

+ params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOp. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. +

GL_STENCIL_REF

+

+ params returns one value, + the reference value that is compared with the contents of the stencil + buffer. The initial value is 0. + See glStencilFunc. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. +

GL_STENCIL_TEST

+

+ params returns a single boolean value indicating whether stencil testing + of fragments is enabled. The initial value is GL_FALSE. + See glStencilFunc and glStencilOp. +

GL_STENCIL_VALUE_MASK

+

+ params returns one value, + the mask that is used to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFunc. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. +

GL_STENCIL_WRITEMASK

+

+ params returns one value, + the mask that controls writing of the stencil bitplanes. The initial value + is all 1's. + See glStencilMask. + If the GL version is 2.0 or greater, this stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilMaskSeparate. +

GL_STEREO

+

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

GL_SUBPIXEL_BITS

+

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

GL_TEXTURE_1D

+

+ params returns a single boolean value indicating whether 1D texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage1D. +

GL_TEXTURE_BINDING_1D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_2D

+

+ params returns a single boolean value indicating whether 2D texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage2D. +

GL_TEXTURE_BINDING_2D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_3D

+

+ params returns a single boolean value indicating whether 3D texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage3D. +

GL_TEXTURE_BINDING_3D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_3D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_CUBE_MAP

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_CUBE_MAP. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_COMPRESSION_HINT

+

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

GL_TEXTURE_COORD_ARRAY

+

+ params returns a single boolean value indicating whether the texture + coordinate array is enabled. The initial value is GL_FALSE. + See glTexCoordPointer. +

GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the texture coordinate array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glTexCoordPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_TEXTURE_COORD_ARRAY_SIZE

+

+ params returns one value, + the number of coordinates per element in the texture coordinate + array. The initial value is 4. + See glTexCoordPointer. +

GL_TEXTURE_COORD_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive elements in the texture coordinate + array. The initial value is 0. + See glTexCoordPointer. +

GL_TEXTURE_COORD_ARRAY_TYPE

+

+ params returns one value, + the data type of the coordinates in the texture coordinate + array. The initial value is GL_FLOAT. + See glTexCoordPointer. +

GL_TEXTURE_CUBE_MAP

+

+ params returns a single boolean value indicating whether cube-mapped texture + mapping is enabled. The initial value is GL_FALSE. + See glTexImage2D. +

GL_TEXTURE_GEN_Q

+

+ params returns a single boolean value indicating whether automatic generation + of the q texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. +

GL_TEXTURE_GEN_R

+

+ params returns a single boolean value indicating whether automatic generation + of the r texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. +

GL_TEXTURE_GEN_S

+

+ params returns a single boolean value indicating whether automatic generation + of the S texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. +

GL_TEXTURE_GEN_T

+

+ params returns a single boolean value indicating whether automatic generation + of the T texture coordinate is enabled. The initial value is GL_FALSE. + See glTexGen. +

GL_TEXTURE_MATRIX

+

+ params returns sixteen values: + the texture matrix on the top of the texture matrix stack. Initially this + matrix is the identity matrix. + See glPushMatrix. +

GL_TEXTURE_STACK_DEPTH

+

+ params returns one value, + the number of matrices on the texture matrix stack. + The initial value is 1. + See glPushMatrix. +

GL_TRANSPOSE_COLOR_MATRIX

+

+ params returns 16 values, the elements of the color matrix in row-major + order. + See glLoadTransposeMatrix. +

GL_TRANSPOSE_MODELVIEW_MATRIX

+

+ params returns 16 values, the elements of the modelview matrix in row-major + order. + See glLoadTransposeMatrix. +

GL_TRANSPOSE_PROJECTION_MATRIX

+

+ params returns 16 values, the elements of the projection matrix in row-major + order. + See glLoadTransposeMatrix. +

GL_TRANSPOSE_TEXTURE_MATRIX

+

+ params returns 16 values, the elements of the texture matrix in row-major + order. + See glLoadTransposeMatrix. +

GL_UNPACK_ALIGNMENT

+

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

GL_UNPACK_IMAGE_HEIGHT

+

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

GL_UNPACK_LSB_FIRST

+

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

GL_UNPACK_ROW_LENGTH

+

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

GL_UNPACK_SKIP_IMAGES

+

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

GL_UNPACK_SKIP_PIXELS

+

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

GL_UNPACK_SKIP_ROWS

+

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

GL_UNPACK_SWAP_BYTES

+

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

GL_VERTEX_ARRAY

+

+ params returns a single boolean value indicating whether the vertex + array is enabled. The initial value is GL_FALSE. + See glVertexPointer. +

GL_VERTEX_ARRAY_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + associated with the vertex array. This buffer object would have been bound to the + target GL_ARRAY_BUFFER at the time of the most recent call to + glVertexPointer. + If no buffer object was bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. +

GL_VERTEX_ARRAY_SIZE

+

+ params returns one value, + the number of coordinates per vertex in the vertex array. The initial + value is 4. + See glVertexPointer. +

GL_VERTEX_ARRAY_STRIDE

+

+ params returns one value, + the byte offset between consecutive vertices in the vertex + array. The initial value is 0. + See glVertexPointer. +

GL_VERTEX_ARRAY_TYPE

+

+ params returns one value, + the data type of each coordinate in the vertex array. The initial value is + GL_FLOAT. + See glVertexPointer. +

GL_VERTEX_PROGRAM_POINT_SIZE

+

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

GL_VERTEX_PROGRAM_TWO_SIDE

+

+ params returns a single boolean value indicating whether vertex + program two-sided color mode is enabled. If enabled, and a vertex shader is active, then the + GL chooses the back color output for back-facing polygons, and the front color output for + non-polygons and front-facing polygons. If disabled, and a vertex shader is active, then the + front color output is always selected. The initial value is GL_FALSE. +

GL_VIEWPORT

+

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

GL_ZOOM_X

+

+ params returns one value, + the + x + pixel zoom factor. The initial value is 1. + See glPixelZoom. +

GL_ZOOM_Y

+

+ params returns one value, + the + y + pixel zoom factor. The initial value is 1. + See glPixelZoom. +

+ Many of the boolean parameters can also be queried more easily using + glIsEnabled. +

Notes

+ GL_COLOR_LOGIC_OP, + GL_COLOR_ARRAY, + GL_COLOR_ARRAY_SIZE, + GL_COLOR_ARRAY_STRIDE, + GL_COLOR_ARRAY_TYPE, + GL_EDGE_FLAG_ARRAY, + GL_EDGE_FLAG_ARRAY_STRIDE, + GL_INDEX_ARRAY, + GL_INDEX_ARRAY_STRIDE, + GL_INDEX_ARRAY_TYPE, + GL_INDEX_LOGIC_OP, + GL_NORMAL_ARRAY, + GL_NORMAL_ARRAY_STRIDE, + GL_NORMAL_ARRAY_TYPE, + GL_POLYGON_OFFSET_UNITS, + GL_POLYGON_OFFSET_FACTOR, + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + GL_POLYGON_OFFSET_POINT, + GL_TEXTURE_COORD_ARRAY, + GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_TYPE, + GL_VERTEX_ARRAY, + GL_VERTEX_ARRAY_SIZE, + GL_VERTEX_ARRAY_STRIDE, and + GL_VERTEX_ARRAY_TYPE + are available only if the GL version is 1.1 or greater. +

+ GL_ALIASED_POINT_SIZE_RANGE, + GL_FEEDBACK_BUFFER_SIZE, + GL_FEEDBACK_BUFFER_TYPE, + GL_LIGHT_MODEL_AMBIENT, + GL_LIGHT_MODEL_COLOR_CONTROL, + GL_MAX_3D_TEXTURE_SIZE, + GL_MAX_ELEMENTS_INDICES, + GL_MAX_ELEMENTS_VERTICES, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_IMAGES, + GL_RESCALE_NORMAL, + GL_SELECTION_BUFFER_SIZE, + GL_SMOOTH_LINE_WIDTH_GRANULARITY, + GL_SMOOTH_LINE_WIDTH_RANGE, + GL_SMOOTH_POINT_SIZE_GRANULARITY, + GL_SMOOTH_POINT_SIZE_RANGE, + GL_TEXTURE_3D, + GL_TEXTURE_BINDING_3D, + GL_UNPACK_IMAGE_HEIGHT, and + GL_UNPACK_SKIP_IMAGES + are available only if the GL version is 1.2 or greater. +

+ GL_COMPRESSED_TEXTURE_FORMATS, + GL_NUM_COMPRESSED_TEXTURE_FORMATS, + GL_TEXTURE_BINDING_CUBE_MAP, and + GL_TEXTURE_COMPRESSION_HINT + are available only if the GL version is 1.3 or greater. +

+ GL_BLEND_DST_ALPHA, + GL_BLEND_DST_RGB, + GL_BLEND_SRC_ALPHA, + GL_BLEND_SRC_RGB, + GL_CURRENT_FOG_COORD, + GL_CURRENT_SECONDARY_COLOR, + GL_FOG_COORD_ARRAY_STRIDE, + GL_FOG_COORD_ARRAY_TYPE, + GL_FOG_COORD_SRC, + GL_MAX_TEXTURE_LOD_BIAS, + GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MAX, + GL_POINT_FADE_THRESHOLD_SIZE, + GL_POINT_DISTANCE_ATTENUATION, + GL_SECONDARY_COLOR_ARRAY_SIZE, + GL_SECONDARY_COLOR_ARRAY_STRIDE, and + GL_SECONDARY_COLOR_ARRAY_TYPE + are available only if the GL version is 1.4 or greater. +

+ GL_ARRAY_BUFFER_BINDING, + GL_COLOR_ARRAY_BUFFER_BINDING, + GL_EDGE_FLAG_ARRAY_BUFFER_BINDING, + GL_ELEMENT_ARRAY_BUFFER_BINDING, + GL_FOG_COORD_ARRAY_BUFFER_BINDING, + GL_INDEX_ARRAY_BUFFER_BINDING, + GL_NORMAL_ARRAY_BUFFER_BINDING, + GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING, + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING, and + GL_VERTEX_ARRAY_BUFFER_BINDING + are available only if the GL version is 1.5 or greater. +

+ GL_BLEND_EQUATION_ALPHA, + GL_BLEND_EQUATION_RGB, + GL_DRAW_BUFFERi, + GL_FRAGMENT_SHADER_DERIVATIVE_HINT, + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, + GL_MAX_DRAW_BUFFERS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, + GL_MAX_TEXTURE_COORDS, + GL_MAX_TEXTURE_IMAGE_UNITS, + GL_MAX_VARYING_FLOATS, + GL_MAX_VERTEX_ATTRIBS, + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, + GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_POINT_SPRITE, + GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_PASS_DEPTH_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, + GL_STENCIL_BACK_REF, + GL_STENCIL_BACK_VALUE_MASK, + GL_STENCIL_BACK_WRITEMASK, + GL_VERTEX_PROGRAM_POINT_SIZE, and + GL_VERTEX_PROGRAM_TWO_SIDE + are available only if the GL version is 2.0 or greater. +

+ GL_CURRENT_RASTER_SECONDARY_COLOR, + GL_PIXEL_PACK_BUFFER_BINDING and + GL_PIXEL_UNPACK_BUFFER_BINDING + are available only if the GL version is 2.1 or greater. +

+ GL_LINE_WIDTH_GRANULARITY was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_LINE_WIDTH_GRANULARITY. +

+ GL_LINE_WIDTH_RANGE was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_LINE_WIDTH_RANGE. +

+ GL_POINT_SIZE_GRANULARITY was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_POINT_SIZE_GRANULARITY. +

+ GL_POINT_SIZE_RANGE was deprecated in GL version 1.2. Its + functionality was replaced by GL_SMOOTH_POINT_SIZE_RANGE. +

+ GL_BLEND_EQUATION was deprecated in GL version 2.0. Its + functionality was replaced by GL_BLEND_EQUATION_RGB and + GL_BLEND_EQUATION_ALPHA. +

+ GL_COLOR_MATRIX, + GL_COLOR_MATRIX_STACK_DEPTH, + GL_COLOR_TABLE, + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, + GL_HISTOGRAM, + GL_MAX_COLOR_MATRIX_STACK_DEPTH, + GL_MINMAX, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_COLOR_MATRIX_RED_BIAS, + GL_POST_COLOR_MATRIX_GREEN_BIAS, + GL_POST_COLOR_MATRIX_BLUE_BIAS, + GL_POST_COLOR_MATRIX_ALPHA_BIAS, + GL_POST_COLOR_MATRIX_RED_SCALE, + GL_POST_COLOR_MATRIX_GREEN_SCALE, + GL_POST_COLOR_MATRIX_BLUE_SCALE, + GL_POST_COLOR_MATRIX_ALPHA_SCALE, + GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_CONVOLUTION_RED_BIAS, + GL_POST_CONVOLUTION_GREEN_BIAS, + GL_POST_CONVOLUTION_BLUE_BIAS, + GL_POST_CONVOLUTION_ALPHA_BIAS, + GL_POST_CONVOLUTION_RED_SCALE, + GL_POST_CONVOLUTION_GREEN_SCALE, + GL_POST_CONVOLUTION_BLUE_SCALE, + GL_POST_CONVOLUTION_ALPHA_SCALE, and + GL_SEPARABLE_2D + are available only if ARB_imaging is returned from glGet + when called with the argument GL_EXTENSIONS. +

+ When the ARB_multitexture extension is supported, or the GL version + is 1.3 or greater, the following + parameters return the associated value for the active texture unit: + GL_CURRENT_RASTER_TEXTURE_COORDS, + GL_TEXTURE_1D, GL_TEXTURE_BINDING_1D, + GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D, GL_TEXTURE_BINDING_3D, + GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, + GL_TEXTURE_GEN_Q, + GL_TEXTURE_MATRIX, and + GL_TEXTURE_STACK_DEPTH. + Likewise, the following parameters return the associated value for the + active client texture unit: + GL_TEXTURE_COORD_ARRAY, + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING, + GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_TYPE. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glGet + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetActiveAttrib.xml b/upstream-man-pages/man2/xhtml/glGetActiveAttrib.xml new file mode 100644 index 0000000..f86ae2c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetActiveAttrib.xml @@ -0,0 +1,117 @@ + + +glGetActiveAttrib

Name

glGetActiveAttrib — Returns information about an active attribute variable for the specified program object

C Specification

void glGetActiveAttrib(GLuint  program,
 GLuint  index,
 GLsizei  bufSize,
 GLsizei * length,
 GLint * size,
 GLenum * type,
 GLchar * name);

Parameters

program

Specifies the program object to be + queried.

index

Specifies the index of the attribute variable + to be queried.

bufSize

Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name.

length

Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed.

size

Returns the size of the attribute + variable.

type

Returns the data type of the attribute + variable.

name

Returns a null terminated string containing + the name of the attribute variable.

Description

glGetActiveAttrib returns information + about an active attribute variable in the program object + specified by program. The number of + active attributes can be obtained by calling + glGetProgram + with the value GL_ACTIVE_ATTRIBUTES. A + value of 0 for index selects the first + active attribute variable. Permissible values for + index range from 0 to the number of + active attribute variables minus 1.

A vertex shader may use either built-in attribute + variables, user-defined attribute variables, or both. Built-in + attribute variables have a prefix of "gl_" and + reference conventional OpenGL vertex attribtes (e.g., + gl_Vertex, + gl_Normal, etc., see the OpenGL Shading + Language specification for a complete list.) User-defined + attribute variables have arbitrary names and obtain their values + through numbered generic vertex attributes. An attribute + variable (either built-in or user-defined) is considered active + if it is determined during the link operation that it may be + accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully.

The size of the character buffer required to store the + longest attribute variable name in + program can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned attribute name. The size of this character buffer + is passed in bufSize, and a pointer to + this character buffer is passed in + name.

glGetActiveAttrib returns the name of + the attribute variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument.

The type argument will return a + pointer to the attribute variable's data type. The symbolic + constants GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, or + GL_FLOAT_MAT4x3 may be returned. The + size argument will return the size of the + attribute, in units of the type returned in + type.

The list of active attribute variables may include both + built-in attribute variables (which begin with the prefix + "gl_") as well as user-defined attribute variable + names.

This function will return as much information as it can + about the specified active attribute variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified.

Notes

glGetActiveAttrib + is available only if the GL version is 2.0 or greater.

GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, and + GL_FLOAT_MAT4x3 + will only be returned as a type + if the GL version is 2.1 or greater.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active attribute variables in + program.

GL_INVALID_OPERATION is generated if + glGetActiveAttrib is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS.

glGetProgram + with argument GL_ACTIVE_ATTRIBUTES or + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetActiveUniform.xml b/upstream-man-pages/man2/xhtml/glGetActiveUniform.xml new file mode 100644 index 0000000..29179a0 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetActiveUniform.xml @@ -0,0 +1,157 @@ + + +glGetActiveUniform

Name

glGetActiveUniform — Returns information about an active uniform variable for the specified program object

C Specification

void glGetActiveUniform(GLuint  program,
 GLuint  index,
 GLsizei  bufSize,
 GLsizei * length,
 GLint * size,
 GLenum * type,
 GLchar * name);

Parameters

program

Specifies the program object to be + queried.

index

Specifies the index of the uniform variable to + be queried.

bufSize

Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name.

length

Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed.

size

Returns the size of the uniform + variable.

type

Returns the data type of the uniform + variable.

name

Returns a null terminated string containing + the name of the uniform variable.

Description

glGetActiveUniform returns + information about an active uniform variable in the program + object specified by program. The number + of active uniform variables can be obtained by calling + glGetProgram + with the value GL_ACTIVE_UNIFORMS. A value + of 0 for index selects the first active + uniform variable. Permissible values for + index range from 0 to the number of + active uniform variables minus 1.

Shaders may use either built-in uniform variables, + user-defined uniform variables, or both. Built-in uniform + variables have a prefix of "gl_" and reference + existing OpenGL state or values derived from such state (e.g., + gl_Fog, + gl_ModelViewMatrix, etc., see the OpenGL + Shading Language specification for a complete list.) + User-defined uniform variables have arbitrary names and obtain + their values from the application through calls to + glUniform. + A uniform variable (either built-in or user-defined) is + considered active if it is determined during the link operation + that it may be accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully.

The size of the character buffer required to store the + longest uniform variable name in program + can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_UNIFORM_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned uniform variable name. The size of this character + buffer is passed in bufSize, and a + pointer to this character buffer is passed in + name.

glGetActiveUniform returns the name + of the uniform variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument.

The type + argument will return a pointer to the uniform variable's data + type. The symbolic constants + GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_INT, + GL_INT_VEC2, + GL_INT_VEC3, + GL_INT_VEC4, + GL_BOOL, + GL_BOOL_VEC2, + GL_BOOL_VEC3, + GL_BOOL_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3, + GL_SAMPLER_1D, + GL_SAMPLER_2D, + GL_SAMPLER_3D, + GL_SAMPLER_CUBE, + GL_SAMPLER_1D_SHADOW, or + GL_SAMPLER_2D_SHADOW + may be returned.

If one or more elements of an array are active, the name + of the array is returned in name, the + type is returned in type, and the + size parameter returns the highest array + element index used, plus one, as determined by the compiler + and/or linker. Only one active uniform variable will be reported + for a uniform array.

Uniform variables that are declared as structures or + arrays of structures will not be returned directly by this + function. Instead, each of these uniform variables will be + reduced to its fundamental components containing the + "." and "[]" operators such that each of the + names is valid as an argument to + glGetUniformLocation. + Each of these reduced uniform variables is counted as one active + uniform variable and is assigned an index. A valid name cannot + be a structure, an array of structures, or a subcomponent of a + vector or matrix.

The size of the uniform variable will be returned in + size. Uniform variables other than arrays + will have a size of 1. Structures and arrays of structures will + be reduced as described earlier, such that each of the names + returned will be a data type in the earlier list. If this + reduction results in an array, the size returned will be as + described for uniform arrays; otherwise, the size returned will + be 1.

The list of active uniform variables may include both + built-in uniform variables (which begin with the prefix + "gl_") as well as user-defined uniform variable + names.

This function will return as much information as it can + about the specified active uniform variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified.

Notes

glGetActiveUniform is available only + if the GL version is 2.0 or greater.

GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, and + GL_FLOAT_MAT4x3 + will only be returned as a type + if the GL version is 2.1 or greater.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active uniform variables in + program.

GL_INVALID_OPERATION is generated if + glGetActiveUniform is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS + or + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS.

glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetAttachedShaders.xml b/upstream-man-pages/man2/xhtml/glGetAttachedShaders.xml new file mode 100644 index 0000000..5387cf0 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetAttachedShaders.xml @@ -0,0 +1,44 @@ + + +glGetAttachedShaders

Name

glGetAttachedShaders — Returns the handles of the shader objects attached to a program object

C Specification

void glGetAttachedShaders(GLuint  program,
 GLsizei  maxCount,
 GLsizei * count,
 GLuint * shaders);

Parameters

program

Specifies the program object to be + queried.

maxCount

Specifies the size of the array for storing + the returned object names.

count

Returns the number of names actually returned + in objects.

shaders

Specifies an array that is used to return the + names of attached shader objects.

Description

glGetAttachedShaders returns the + names of the shader objects attached to + program. The names of shader objects that + are attached to program will be returned + in shaders. The actual number of shader + names written into shaders is returned in + count. If no shader objects are attached + to program, count + is set to 0. The maximum number of shader names that may be + returned in shaders is specified by + maxCount.

If the number of names actually returned is not required + (for instance, if it has just been obtained by calling + glGetProgram), + a value of NULL may be passed for count. If + no shader objects are attached to + program, a value of 0 will be returned in + count. The actual number of attached + shaders can be obtained by calling + glGetProgram + with the value GL_ATTACHED_SHADERS.

Notes

glGetAttachedShaders + is available only if the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + maxCount is less than 0.

GL_INVALID_OPERATION is generated if + glGetAttachedShaders + is executed between the execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetProgram + with argument GL_ATTACHED_SHADERS

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetAttribLocation.xml b/upstream-man-pages/man2/xhtml/glGetAttribLocation.xml new file mode 100644 index 0000000..ea463e6 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetAttribLocation.xml @@ -0,0 +1,51 @@ + + +glGetAttribLocation

Name

glGetAttribLocation — Returns the location of an attribute variable

C Specification

GLint glGetAttribLocation(GLuint  program,
 const GLchar * name);

Parameters

program

Specifies the program object to be + queried.

name

Points to a null terminated string containing + the name of the attribute variable whose location is + to be queried.

Description

glGetAttribLocation queries the + previously linked program object specified by + program for the attribute variable + specified by name and returns the index + of the generic vertex attribute that is bound to that attribute + variable. If name is a matrix attribute + variable, the index of the first column of the matrix is + returned. If the named attribute variable is not an active + attribute in the specified program object or if + name starts with the reserved prefix + "gl_", a value of -1 is returned.

The association between an attribute variable name and a + generic attribute index can be specified at any time by calling + glBindAttribLocation. + Attribute bindings do not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for attribute variables remain fixed until the + next link command occurs. The attribute values can only be + queried after a link if the link was successful. + glGetAttribLocation returns the binding + that actually went into effect the last time + glLinkProgram + was called for the specified program object. Attribute bindings + that have been specified since the last link operation are not + returned by glGetAttribLocation.

Notes

glGetAttribLocation is available only + if the GL version is 2.0 or greater.

Errors

GL_INVALID_OPERATION is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

GL_INVALID_OPERATION is generated if + glGetAttribLocation is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetActiveAttrib + with argument program and the index of an + active attribute

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetBufferParameteriv.xml b/upstream-man-pages/man2/xhtml/glGetBufferParameteriv.xml new file mode 100644 index 0000000..f181827 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetBufferParameteriv.xml @@ -0,0 +1,59 @@ + + +glGetBufferParameteriv

Name

glGetBufferParameteriv — return parameters of a buffer object

C Specification

void glGetBufferParameteriv(GLenum  target,
 GLenum  value,
 GLint *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

value

+ Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. +

data

+ Returns the requested parameter. +

Description

+ glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. +

+ value names a specific buffer object parameter, as follows: +

GL_BUFFER_ACCESS

+ params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. +

GL_BUFFER_MAPPED

+ params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. +

GL_BUFFER_SIZE

+ params returns the size of the buffer object, measured in bytes. + The initial value is 0. +

GL_BUFFER_USAGE

+ params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

+ glGetBufferParameteriv is available only if the GL version is 1.5 or greater. +

+ Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or value is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if glGetBufferParameteriv + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetBufferPointerv.xml b/upstream-man-pages/man2/xhtml/glGetBufferPointerv.xml new file mode 100644 index 0000000..07aaf93 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetBufferPointerv.xml @@ -0,0 +1,45 @@ + + +glGetBufferPointerv

Name

glGetBufferPointerv — return the pointer to a mapped buffer object's data store

C Specification

void glGetBufferPointerv(GLenum  target,
 GLenum  pname,
 GLvoid **  params);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

pname

+ Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER. +

params

+ Returns the pointer value specified by pname. +

Description

+ glGetBufferPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer + to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. + params is a pointer to a location in which to place the returned pointer value. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetBufferPointerv is available only if the GL version is 1.5 or greater. +

+ Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. +

+ The initial value for the pointer is NULL. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if glGetBufferPointerv + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glBindBuffer, + glMapBuffer +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetBufferSubData.xml b/upstream-man-pages/man2/xhtml/glGetBufferSubData.xml new file mode 100644 index 0000000..7b2c4d7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetBufferSubData.xml @@ -0,0 +1,59 @@ + + +glGetBufferSubData

Name

glGetBufferSubData — returns a subset of a buffer object's data store

C Specification

void glGetBufferSubData(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  size,
 GLvoid *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

offset

+ Specifies the offset into the buffer object's data store from which data will be returned, + measured in bytes. +

size

+ Specifies the size in bytes of the data store region being returned. +

data

+ Specifies a pointer to the location where buffer object data is returned. +

Description

+ glGetBufferSubData returns some or all of the data from the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied from the data store to the memory pointed to by + data. An error is thrown if the buffer object is currently mapped, or if + offset and size together define a range beyond the bounds + of the buffer object's data store. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

+ glGetBufferSubData is available only if the GL version is 1.5 or greater. +

+ Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available + only if the GL version is 2.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. +

+ GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer object being queried is mapped. +

+ GL_INVALID_OPERATION is generated if glGetBufferSubData + is executed between the execution of + glBegin and the corresponding execution of + glEnd. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetClipPlane.xml b/upstream-man-pages/man2/xhtml/glGetClipPlane.xml new file mode 100644 index 0000000..3041fc3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetClipPlane.xml @@ -0,0 +1,37 @@ + + +glGetClipPlane

Name

glGetClipPlane — return the coefficients of the specified clipping plane

C Specification

void glGetClipPlane(GLenum  plane,
 GLdouble *  equation);

Parameters

plane

+ Specifies a clipping plane. + The number of clipping planes depends on the implementation, + but at least six clipping planes are supported. + They are identified by symbolic names of the form GL_CLIP_PLANE + i + where i ranges from 0 to the value of GL_MAX_CLIP_PLANES - 1. +

equation

+ Returns four double-precision values that are the coefficients of the plane equation of plane in eye coordinates. + The initial value is (0, 0, 0, 0). +

Description

+ glGetClipPlane returns in equation the four coefficients of the plane equation + for plane. +

Notes

+ It is always the case that GL_CLIP_PLANE + i + = GL_CLIP_PLANE0 + + i. +

+ If an error is generated, + no change is made to the contents of equation. +

Errors

+ GL_INVALID_ENUM is generated if plane is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glGetClipPlane + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glClipPlane +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetColorTable.xml b/upstream-man-pages/man2/xhtml/glGetColorTable.xml new file mode 100644 index 0000000..34c9f32 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetColorTable.xml @@ -0,0 +1,150 @@ + + +glGetColorTable

Name

glGetColorTable — retrieve contents of a color lookup table

C Specification

void glGetColorTable(GLenum  target,
 GLenum  format,
 GLenum  type,
 GLvoid *  table);

Parameters

target

+ Must be GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or + GL_POST_COLOR_MATRIX_COLOR_TABLE. +

format

+ The format of the pixel data in table. + The possible values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_LUMINANCE, + GL_LUMINANCE_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ The type of the pixel data in table. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

table

+ Pointer to a one-dimensional array of pixel data containing the contents + of the color table. +

Description

+ glGetColorTable returns in table the contents of the color table specified + by target. No pixel transfer operations are performed, but pixel + storage modes that are applicable to + glReadPixels are performed. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a histogram table is + requested, table is treated as a byte offset into the buffer object's data store. +

+ Color components that are requested in + the specified format, but which are not included in the internal + format of the color lookup table, are returned as zero. The + assignments of internal color components to the components + requested by format are +

+ Internal Component + + Resulting Component +
+ Red + + Red +
+ Green + + Green +
+ Blue + + Blue +
+ Alpha + + Alpha +
+ Luminance + + Red +
+ Intensity + + Red +

+

Notes

+ glGetColorTable is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

+

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and table is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glGetColorTable is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetColorTableParameter +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetColorTableParameter.xml b/upstream-man-pages/man2/xhtml/glGetColorTableParameter.xml new file mode 100644 index 0000000..919f79c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetColorTableParameter.xml @@ -0,0 +1,125 @@ + + +glGetColorTableParameter

Name

glGetColorTableParameter — get color lookup table parameters

C Specification

void glGetColorTableParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetColorTableParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ The target color table. + Must be + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_PROXY_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, or + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE. +

pname

+ The symbolic name of a color lookup table parameter. + Must be one of + GL_COLOR_TABLE_BIAS, + GL_COLOR_TABLE_SCALE, + GL_COLOR_TABLE_FORMAT, + GL_COLOR_TABLE_WIDTH, + GL_COLOR_TABLE_RED_SIZE, + GL_COLOR_TABLE_GREEN_SIZE, + GL_COLOR_TABLE_BLUE_SIZE, + GL_COLOR_TABLE_ALPHA_SIZE, + GL_COLOR_TABLE_LUMINANCE_SIZE, or + GL_COLOR_TABLE_INTENSITY_SIZE. +

params

+ A pointer to an array where the values of the parameter will be stored. +

Description

+ Returns parameters specific to color table target. +

+ When pname is set to GL_COLOR_TABLE_SCALE or + GL_COLOR_TABLE_BIAS, glGetColorTableParameter returns the color + table scale or bias parameters for the table specified by target. + For these queries, target must be set to + GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, + or GL_POST_COLOR_MATRIX_COLOR_TABLE and + params points to an array of four elements, which receive + the scale or bias factors for red, green, blue, and alpha, in that order. +

+ glGetColorTableParameter can also be used to retrieve the format and size parameters + for a color table. For these queries, set target to either the + color table target or the proxy color table target. + The format and size parameters are set by glColorTable. +

+ The following table lists the format and size parameters that may + be queried. + For each symbolic constant listed below for pname, + params must point to an array of the + given length and receive the values indicated. +

+

+ Parameter + + N + + Meaning +
+ GL_COLOR_TABLE_FORMAT + + 1 + + Internal format (e.g., GL_RGBA) +
+ GL_COLOR_TABLE_WIDTH + + 1 + + Number of elements in table +
+ GL_COLOR_TABLE_RED_SIZE + + 1 + + Size of red component, in bits +
+ GL_COLOR_TABLE_GREEN_SIZE + + 1 + + Size of green component +
+ GL_COLOR_TABLE_BLUE_SIZE + + 1 + + Size of blue component +
+ GL_COLOR_TABLE_ALPHA_SIZE + + 1 + + Size of alpha component +
+ GL_COLOR_TABLE_LUMINANCE_SIZE + + 1 + + Size of luminance component +
+ GL_COLOR_TABLE_INTENSITY_SIZE + + 1 + + Size of intensity component +

+

Notes

+ glGetColorTableParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not + an acceptable value. +

+ GL_INVALID_OPERATION is generated if glGetColorTableParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetCompressedTexImage.xml b/upstream-man-pages/man2/xhtml/glGetCompressedTexImage.xml new file mode 100644 index 0000000..100d9a3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetCompressedTexImage.xml @@ -0,0 +1,99 @@ + + +glGetCompressedTexImage

Name

glGetCompressedTexImage — return a compressed texture image

C Specification

void glGetCompressedTexImage(GLenum  target,
 GLint  lod,
 GLvoid *  img);

Parameters

target

+ Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, and GL_TEXTURE_3D + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. +

lod

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

img

+ Returns the compressed texture image. +

Description

+ glGetCompressedTexImage returns the compressed texture image associated with target and lod + into img. img should be an array of + GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes. + target specifies whether the desired texture image was one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of GL_TEXTURE_CUBE_MAP_*), or + glTexImage3D (GL_TEXTURE_3D). + lod specifies the level-of-detail number of the desired image. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. +

+ To minimize errors, first verify that the texture is compressed by calling + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If + the texture is compressed, then determine the amount of memory required to + store the compressed texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the + internal format of the texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_INTERNAL_FORMAT. + To store the texture for later use, associate the internal format and size + with the retrieved texture image. These data can be used by the respective + texture or subtexture loading routine used for loading target textures. +

Notes

+ glGetCompressedTexImage is available only if the GL version is 1.3 or greater. +

Errors

+ GL_INVALID_VALUE is generated if lod is less than zero or greater + than the maximum number of LODs permitted by the implementation. +

+ GL_INVALID_OPERATION is generated if glGetCompressedTexImage is used to retrieve a + texture that is in an uncompressed internal format. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glGetCompressedTexImage + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED +

+ glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetConvolutionFilter.xml b/upstream-man-pages/man2/xhtml/glGetConvolutionFilter.xml new file mode 100644 index 0000000..6695e31 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetConvolutionFilter.xml @@ -0,0 +1,153 @@ + + +glGetConvolutionFilter

Name

glGetConvolutionFilter — get current 1D or 2D convolution filter kernel

C Specification

void glGetConvolutionFilter(GLenum  target,
 GLenum  format,
 GLenum  type,
 GLvoid *  image);

Parameters

target

+ The filter to be retrieved. + Must be one of + GL_CONVOLUTION_1D or + GL_CONVOLUTION_2D. +

format

+ Format of the output image. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. +

type

+ Data type of components in the output image. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

image

+ Pointer to storage for the output image. +

Description

+ glGetConvolutionFilter returns the current 1D or 2D convolution filter kernel as an image. + The one- or two-dimensional image is placed in image according to the + specifications in format and type. + No pixel transfer operations are performed on this image, but the relevant + pixel storage modes are applied. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a convolution filter is + requested, image is treated as a byte offset into the buffer object's data store. +

+ Color components that are present in format but not included in the + internal format of the filter are returned as zero. + The assignments of internal color components to the components of format + are as follows. +

+ Internal Component + + Resulting Component +
+ Red + + Red +
+ Green + + Green +
+ Blue + + Blue +
+ Alpha + + Alpha +
+ Luminance + + Red +
+ Intensity + + Red +

+

Notes

+ glGetConvolutionFilter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

+ The current separable 2D filter must be retrieved with + glGetSeparableFilter rather than glGetConvolutionFilter. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and image is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glGetConvolutionFilter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetConvolutionParameter +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetConvolutionParameter.xml b/upstream-man-pages/man2/xhtml/glGetConvolutionParameter.xml new file mode 100644 index 0000000..34affd0 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetConvolutionParameter.xml @@ -0,0 +1,89 @@ + + +glGetConvolutionParameter

Name

glGetConvolutionParameter — get convolution parameters

C Specification

void glGetConvolutionParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetConvolutionParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ The filter whose parameters are to be retrieved. + Must be one of + GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D, or + GL_SEPARABLE_2D. +

pname

+ The parameter to be retrieved. + Must be one of + GL_CONVOLUTION_BORDER_MODE, + GL_CONVOLUTION_BORDER_COLOR, + GL_CONVOLUTION_FILTER_SCALE, + GL_CONVOLUTION_FILTER_BIAS, + GL_CONVOLUTION_FORMAT, + GL_CONVOLUTION_WIDTH, + GL_CONVOLUTION_HEIGHT, + GL_MAX_CONVOLUTION_WIDTH, or + GL_MAX_CONVOLUTION_HEIGHT. +

params

+ Pointer to storage for the parameters to be retrieved. +

Description

+ glGetConvolutionParameter retrieves convolution parameters. + target determines which convolution filter is queried. + pname determines which parameter is returned: +

GL_CONVOLUTION_BORDER_MODE

+

+ The convolution border mode. + See glConvolutionParameter for a list of border modes. +

GL_CONVOLUTION_BORDER_COLOR

+

+ The current convolution border color. + params must be a pointer to an array of four elements, + which will receive the red, green, blue, and alpha border colors. +

GL_CONVOLUTION_FILTER_SCALE

+

+ The current filter scale factors. + params must be a pointer to an array of four elements, + which will receive the red, green, blue, and alpha filter scale + factors in that order. +

GL_CONVOLUTION_FILTER_BIAS

+

+ The current filter bias factors. + params must be a pointer to an array of four elements, + which will receive the red, green, blue, and alpha filter bias + terms in that order. +

GL_CONVOLUTION_FORMAT

+

+ The current internal format. + See glConvolutionFilter1D, glConvolutionFilter2D, + and glSeparableFilter2D for lists of allowable + formats. +

GL_CONVOLUTION_WIDTH

+

+ The current filter image width. +

GL_CONVOLUTION_HEIGHT

+

+ The current filter image height. +

GL_MAX_CONVOLUTION_WIDTH

+

+ The maximum acceptable filter image width. +

GL_MAX_CONVOLUTION_HEIGHT

+

+ The maximum acceptable filter image height. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if pname is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if target is GL_CONVOLUTION_1D + and pname is GL_CONVOLUTION_HEIGHT or + GL_MAX_CONVOLUTION_HEIGHT. +

+ GL_INVALID_OPERATION is generated if glGetConvolutionParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetDoublev.xml b/upstream-man-pages/man2/xhtml/glGetDoublev.xml new file mode 100644 index 0000000..23bc861 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetDoublev.xml @@ -0,0 +1,4 @@ + + + +glGetDoublev diff --git a/upstream-man-pages/man2/xhtml/glGetError.xml b/upstream-man-pages/man2/xhtml/glGetError.xml new file mode 100644 index 0000000..bbf7c00 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetError.xml @@ -0,0 +1,83 @@ + + +glGetError

Name

glGetError — return error information

C Specification

GLenum glGetError(  void);

Description

+ glGetError returns the value of the error flag. + Each detectable error is assigned a numeric code and symbolic name. + When an error occurs, + the error flag is set to the appropriate error code value. + No other errors are recorded until glGetError is called, + the error code is returned, + and the flag is reset to GL_NO_ERROR. + If a call to glGetError returns GL_NO_ERROR, + there has been no detectable error since the last call to glGetError, + or since the GL was initialized. +

+ To allow for distributed implementations, + there may be several error flags. + If any single error flag has recorded an error, + the value of that flag is returned + and that flag is reset to GL_NO_ERROR + when glGetError is called. + If more than one flag has recorded an error, + glGetError returns and clears an arbitrary error flag value. + Thus, glGetError should always be called in a loop, + until it returns GL_NO_ERROR, + if all error flags are to be reset. +

+ Initially, all error flags are set to GL_NO_ERROR. +

+ The following errors are currently defined: +

GL_NO_ERROR

+ No error has been recorded. + The value of this symbolic constant is guaranteed to be 0. +

GL_INVALID_ENUM

+ An unacceptable value is specified for an enumerated argument. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_VALUE

+ A numeric argument is out of range. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_OPERATION

+ The specified operation is not allowed in the current state. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_STACK_OVERFLOW

+ This command would cause a stack overflow. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_STACK_UNDERFLOW

+ This command would cause a stack underflow. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_OUT_OF_MEMORY

+ There is not enough memory left to execute the command. + The state of the GL is undefined, + except for the state of the error flags, + after this error is recorded. +

GL_TABLE_TOO_LARGE

+ The specified table exceeds the implementation's maximum supported table + size. The offending command is ignored and has no other side effect + than to set the error flag. +

+ When an error flag is set, + results of a GL operation are undefined only if GL_OUT_OF_MEMORY + has occurred. + In all other cases, + the command generating the error is ignored and has no effect on the GL state + or frame buffer contents. + If the generating command returns a value, it returns 0. + If glGetError itself generates an error, it returns 0. +

Notes

+ GL_TABLE_TOO_LARGE was introduced in GL version 1.2. +

Errors

+ GL_INVALID_OPERATION is generated if glGetError + is executed between the execution of glBegin + and the corresponding execution of glEnd. + In this case, glGetError returns 0. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetFloatv.xml b/upstream-man-pages/man2/xhtml/glGetFloatv.xml new file mode 100644 index 0000000..50de409 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetFloatv.xml @@ -0,0 +1,4 @@ + + + +glGetFloatv diff --git a/upstream-man-pages/man2/xhtml/glGetHistogram.xml b/upstream-man-pages/man2/xhtml/glGetHistogram.xml new file mode 100644 index 0000000..3c80e1a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetHistogram.xml @@ -0,0 +1,145 @@ + + +glGetHistogram

Name

glGetHistogram — get histogram table

C Specification

void glGetHistogram(GLenum  target,
 GLboolean  reset,
 GLenum  format,
 GLenum  type,
 GLvoid *  values);

Parameters

target

+ Must be + GL_HISTOGRAM. +

reset

+ If GL_TRUE, each component counter that is actually returned + is reset to zero. (Other counters are unaffected.) + If GL_FALSE, none of the counters in the histogram table is modified. +

format

+ The format of values to be returned in values. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. +

type

+ The type of values to be returned in values. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

values

+ A pointer to storage for the returned histogram table. +

Description

+ glGetHistogram returns the current histogram table as a one-dimensional image + with the same width as the histogram. + No pixel transfer operations are performed on this image, but pixel storage + modes that are applicable to 1D images are honored. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a histogram table is + requested, values is treated as a byte offset into the buffer object's data store. +

+ Color components that are requested in the specified format, but which + are not included in the internal format of the histogram, are returned as + zero. + The assignments of internal color components to the components + requested by format are: +

+ Internal Component + + Resulting Component +
+ Red + + Red +
+ Green + + Green +
+ Blue + + Blue +
+ Alpha + + Alpha +
+ Luminance + + Red +

+

Notes

+ glGetHistogram is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_HISTOGRAM. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glGetHistogram is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetHistogramParameter +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

See Also

+ glHistogram, + glResetHistogram, +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetHistogramParameter.xml b/upstream-man-pages/man2/xhtml/glGetHistogramParameter.xml new file mode 100644 index 0000000..d0317a1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetHistogramParameter.xml @@ -0,0 +1,86 @@ + + +glGetHistogramParameter

Name

glGetHistogramParameter — get histogram parameters

C Specification

void glGetHistogramParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetHistogramParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Must be one of + GL_HISTOGRAM or + GL_PROXY_HISTOGRAM. +

pname

+ The name of the parameter to be retrieved. + Must be one of + GL_HISTOGRAM_WIDTH, + GL_HISTOGRAM_FORMAT, + GL_HISTOGRAM_RED_SIZE, + GL_HISTOGRAM_GREEN_SIZE, + GL_HISTOGRAM_BLUE_SIZE, + GL_HISTOGRAM_ALPHA_SIZE, + GL_HISTOGRAM_LUMINANCE_SIZE, or + GL_HISTOGRAM_SINK. +

params

+ Pointer to storage for the returned values. +

Description

+ glGetHistogramParameter is used to query parameter values for the current histogram or for + a proxy. The histogram state information may be queried by calling + glGetHistogramParameter with a target of GL_HISTOGRAM (to + obtain information for the current histogram table) or + GL_PROXY_HISTOGRAM (to obtain information from the most recent + proxy request) and one of the following values for the pname argument: +

+

+ Parameter + + Description +
+ GL_HISTOGRAM_WIDTH + + Histogram table width +
+ GL_HISTOGRAM_FORMAT + + Internal format +
+ GL_HISTOGRAM_RED_SIZE + + Red component counter size, in bits +
+ GL_HISTOGRAM_GREEN_SIZE + + Green component counter size, in bits +
+ GL_HISTOGRAM_BLUE_SIZE + + Blue component counter size, in bits +
+ GL_HISTOGRAM_ALPHA_SIZE + + Alpha component counter size, in bits +
+ GL_HISTOGRAM_LUMINANCE_SIZE + + Luminance component counter size, in bits +
+ GL_HISTOGRAM_SINK + + Value of the sink parameter +

+

Notes

+ glGetHistogramParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if pname is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if glGetHistogramParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

See Also

+ glGetHistogram, + glHistogram +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetIntegerv.xml b/upstream-man-pages/man2/xhtml/glGetIntegerv.xml new file mode 100644 index 0000000..dd82b9d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetIntegerv.xml @@ -0,0 +1,4 @@ + + + +glGetIntegerv diff --git a/upstream-man-pages/man2/xhtml/glGetLight.xml b/upstream-man-pages/man2/xhtml/glGetLight.xml new file mode 100644 index 0000000..9319a30 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetLight.xml @@ -0,0 +1,199 @@ + + +glGetLight

Name

glGetLight — return light source parameter values

C Specification

void glGetLightfv(GLenum  light,
 GLenum  pname,
 GLfloat *  params);
void glGetLightiv(GLenum  light,
 GLenum  pname,
 GLint *  params);

Parameters

light

+ Specifies a light source. + The number of possible lights depends on the implementation, + but at least eight lights are supported. + They are identified by symbolic names of the form GL_LIGHT + i + where + i + ranges from 0 to the value of GL_MAX_LIGHTS - 1. +

pname

+ Specifies a light source parameter for light. + Accepted symbolic names are + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_POSITION, + GL_SPOT_DIRECTION, + GL_SPOT_EXPONENT, + GL_SPOT_CUTOFF, + GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION, and + GL_QUADRATIC_ATTENUATION. +

params

+ Returns the requested data. +

Description

+ glGetLight returns in params the value or values of a light source parameter. + light names the light and is a symbolic name of the form GL_LIGHT + i + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. + GL_MAX_LIGHTS is an implementation dependent constant that is + greater than or equal to eight. + pname specifies one of ten light source parameters, + again by symbolic name. +

+ The following parameters are defined: +

GL_AMBIENT

+ params returns four integer or floating-point values representing the + ambient intensity of the light source. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0, 0, 0, 1). +

GL_DIFFUSE

+ params returns four integer or floating-point values representing the + diffuse intensity of the light source. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 0). +

GL_SPECULAR

+ params returns four integer or floating-point values representing the + specular intensity of the light source. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 0). +

GL_POSITION

+ params returns four integer or floating-point values representing the + position of the light source. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer value. + The returned values are those maintained in eye coordinates. + They will not be equal to the values specified using glLight, + unless the modelview matrix was identity at the time glLight was + called. The initial value is (0, 0, 1, 0). +

GL_SPOT_DIRECTION

+ params returns three integer or floating-point values representing the + direction of the light source. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer value. + The returned values are those maintained in eye coordinates. + They will not be equal to the values specified using glLight, + unless the modelview matrix was identity at the time glLight was called. + Although spot direction is normalized before being used in the lighting + equation, + the returned values are the transformed versions of the specified values + prior to normalization. The initial value is + + + + 0 + 0 + -1 + + . +

GL_SPOT_EXPONENT

+ params returns a single integer or floating-point value representing the + spot exponent of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 0. +

GL_SPOT_CUTOFF

+ params returns a single integer or floating-point value representing the + spot cutoff angle of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 180. +

GL_CONSTANT_ATTENUATION

+ params returns a single integer or floating-point value representing the + constant (not distance-related) attenuation of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 1. +

GL_LINEAR_ATTENUATION

+ params returns a single integer or floating-point value representing the + linear attenuation of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 0. +

GL_QUADRATIC_ATTENUATION

+ params returns a single integer or floating-point value representing the + quadratic attenuation of the light. + An integer value, + when requested, + is computed by rounding the internal floating-point representation to + the nearest integer. The initial value is 0. +

Notes

+ It is always the case that GL_LIGHT + i + = GL_LIGHT0 + + i. +

+ If an error is generated, + no change is made to the contents of params. +

Errors

+ GL_INVALID_ENUM is generated if light or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glGetLight + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glLight +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetMap.xml b/upstream-man-pages/man2/xhtml/glGetMap.xml new file mode 100644 index 0000000..5fcb00d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetMap.xml @@ -0,0 +1,124 @@ + + +glGetMap

Name

glGetMap — return evaluator parameters

C Specification

void glGetMapdv(GLenum  target,
 GLenum  query,
 GLdouble *  v);
void glGetMapfv(GLenum  target,
 GLenum  query,
 GLfloat *  v);
void glGetMapiv(GLenum  target,
 GLenum  query,
 GLint *  v);

Parameters

target

+ Specifies the symbolic name of a map. + Accepted values are + GL_MAP1_COLOR_4, + GL_MAP1_INDEX, + GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4, + GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4, + GL_MAP2_COLOR_4, + GL_MAP2_INDEX, + GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3, + GL_MAP2_TEXTURE_COORD_4, + GL_MAP2_VERTEX_3, and + GL_MAP2_VERTEX_4. +

query

+ Specifies which parameter to return. + Symbolic names + GL_COEFF, + GL_ORDER, and + GL_DOMAIN are accepted. +

v

+ Returns the requested data. +

Description

+ glMap1 and glMap2 define evaluators. + glGetMap returns evaluator parameters. + target chooses a map, + query selects a specific parameter, + and v points to storage where the values will be returned. +

+ The acceptable values for the target parameter are described + in the glMap1 and glMap2 reference pages. +

+ query can assume the following values: +

GL_COEFF

+ v returns the control points for the evaluator function. + One-dimensional evaluators return + order + control points, + and two-dimensional evaluators return + + + + uorder + × + vorder + + + control points. + Each control point consists of one, two, three, or four integer, + single-precision floating-point, + or double-precision floating-point values, + depending on the type of the evaluator. + The GL returns two-dimensional control points in row-major order, + incrementing the + uorder + index quickly + and the + vorder + index after each row. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer values. +

GL_ORDER

+ v returns the order of the evaluator function. + One-dimensional evaluators return a single value, + order. + The initial value is 1. + Two-dimensional evaluators return two values, + uorder + and + vorder. + The initial value is 1,1. +

GL_DOMAIN

+ v returns the linear + u + and + v + mapping parameters. + One-dimensional evaluators return two values, + u1 + and + u2, + as specified by glMap1. + Two-dimensional evaluators return four values + (u1, + u2, + v1, + and + v2) + as specified by glMap2. + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer values. +

Notes

+ If an error is generated, + no change is made to the contents of v. +

Errors

+ GL_INVALID_ENUM is generated if either target or query is not + an accepted value. +

+ GL_INVALID_OPERATION is generated if glGetMap + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glEvalCoord, + glMap1, + glMap2 +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetMaterial.xml b/upstream-man-pages/man2/xhtml/glGetMaterial.xml new file mode 100644 index 0000000..c558ed9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetMaterial.xml @@ -0,0 +1,147 @@ + + +glGetMaterial

Name

glGetMaterial — return material parameters

C Specification

void glGetMaterialfv(GLenum  face,
 GLenum  pname,
 GLfloat *  params);
void glGetMaterialiv(GLenum  face,
 GLenum  pname,
 GLint *  params);

Parameters

face

+ Specifies which of the two materials is being queried. + GL_FRONT or GL_BACK are accepted, + representing the front and back materials, + respectively. +

pname

+ Specifies the material parameter to return. + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_EMISSION, + GL_SHININESS, and + GL_COLOR_INDEXES + are accepted. +

params

+ Returns the requested data. +

Description

+ glGetMaterial returns in params the value or values of parameter pname + of material face. Six parameters are defined: +

GL_AMBIENT

+ params returns four integer or floating-point values representing the + ambient reflectance of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0.2, 0.2, 0.2, 1.0) +

GL_DIFFUSE

+ params returns four integer or floating-point values representing the + diffuse reflectance of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0.8, 0.8, 0.8, 1.0). +

GL_SPECULAR

+ params returns four integer or floating-point values representing the + specular reflectance of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0, 0, 0, 1). +

GL_EMISSION

+ params returns four integer or floating-point values representing the + emitted light intensity of the material. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer value, + and + + + -1.0 + + maps to the most negative representable integer value. + If the internal value is outside the range + + + + -1 + 1 + + , + the corresponding integer return value is undefined. The initial value is + (0, 0, 0, 1). +

GL_SHININESS

+ params returns one integer or floating-point value representing the + specular exponent of the material. + Integer values, + when requested, + are computed by rounding the internal floating-point value to the + nearest integer value. The initial value is 0. +

GL_COLOR_INDEXES

+ params returns three integer or floating-point values representing the + ambient, diffuse, and specular indices of the material. + These indices are used only for color index lighting. + (All the other parameters are used only for RGBA lighting.) + Integer values, + when requested, + are computed by rounding the internal floating-point values to the + nearest integer values. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

Errors

+ GL_INVALID_ENUM is generated if face or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glGetMaterial + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glMaterial +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetMinmax.xml b/upstream-man-pages/man2/xhtml/glGetMinmax.xml new file mode 100644 index 0000000..0955412 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetMinmax.xml @@ -0,0 +1,153 @@ + + +glGetMinmax

Name

glGetMinmax — get minimum and maximum pixel values

C Specification

void glGetMinmax(GLenum  target,
 GLboolean  reset,
 GLenum  format,
 GLenum  types,
 GLvoid *  values);

Parameters

target

+ Must be + GL_MINMAX. +

reset

+ If GL_TRUE, all entries in the minmax table that are actually + returned are reset to their initial values. (Other entries are unaltered.) + If GL_FALSE, the minmax table is unaltered. +

format

+ The format of the data to be returned in values. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. +

types

+ The type of the data to be returned in values. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

values

+ A pointer to storage for the returned values. +

Description

+ glGetMinmax returns the accumulated minimum and maximum pixel values (computed on a + per-component basis) in a one-dimensional image of width 2. The first set + of return values are the minima, and the second set of return values + are the maxima. + The format of the return values is determined by format, and their type is + determined by types. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while minimum and maximum pixel values are + requested, values is treated as a byte offset into the buffer object's data store. +

+ No pixel transfer operations are performed on the return values, but pixel + storage modes that are applicable to one-dimensional images are performed. + Color components that are requested in the specified format, but that + are not included in the internal format of the minmax table, are + returned as zero. The assignment of internal color components to the + components requested by format are as follows: +

+

+ Internal Component + + Resulting Component +
+ Red + + Red +
+ Green + + Green +
+ Blue + + Blue +
+ Alpha + + Alpha +
+ Luminance + + Red +

+ If reset is GL_TRUE, the minmax table entries corresponding + to the return values are reset to their initial + values. Minimum and maximum values that are not returned are not + modified, even if reset is GL_TRUE. +

Notes

+ glGetMinmax is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_MINMAX. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if types is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if types is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if types is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glGetMinmax is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetMinmaxParameter +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

See Also

+ glMinmax, + glResetMinmax, +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetMinmaxParameter.xml b/upstream-man-pages/man2/xhtml/glGetMinmaxParameter.xml new file mode 100644 index 0000000..73f3aee --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetMinmaxParameter.xml @@ -0,0 +1,50 @@ + + +glGetMinmaxParameter

Name

glGetMinmaxParameter — get minmax parameters

C Specification

void glGetMinmaxParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetMinmaxParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Must be + GL_MINMAX. +

pname

+ The parameter to be retrieved. + Must be one of + GL_MINMAX_FORMAT or + GL_MINMAX_SINK. +

params

+ A pointer to storage for the retrieved parameters. +

Description

+ glGetMinmaxParameter retrieves parameters for the current minmax table by setting + pname to one of the following values: +

+

+ Parameter + + Description +
+ GL_MINMAX_FORMAT + + Internal format of minmax table +
+ GL_MINMAX_SINK + + Value of the sink parameter +

+

Notes

+ glGetMinmaxParameter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_MINMAX. +

+ GL_INVALID_ENUM is generated if pname is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if glGetMinmaxParameter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

See Also

+ glMinmax, + glGetMinmax +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetPixelMap.xml b/upstream-man-pages/man2/xhtml/glGetPixelMap.xml new file mode 100644 index 0000000..965b941 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetPixelMap.xml @@ -0,0 +1,144 @@ + + +glGetPixelMap

Name

glGetPixelMap — return the specified pixel map

C Specification

void glGetPixelMapfv(GLenum  map,
 GLfloat *  data);
void glGetPixelMapuiv(GLenum  map,
 GLuint *  data);
void glGetPixelMapusv(GLenum  map,
 GLushort *  data);

Parameters

map

+ Specifies the name of the pixel map to return. + Accepted values are + GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, + GL_PIXEL_MAP_I_TO_A, + GL_PIXEL_MAP_R_TO_R, + GL_PIXEL_MAP_G_TO_G, + GL_PIXEL_MAP_B_TO_B, and + GL_PIXEL_MAP_A_TO_A. +

data

+ Returns the pixel map contents. +

Description

+ See the glPixelMap reference page for a description of the acceptable + values for the map parameter. + glGetPixelMap returns in data the contents of the pixel map + specified in map. + Pixel maps are used during the execution of + glReadPixels, + glDrawPixels, + glCopyPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, and + glCopyTexSubImage3D. + to map color indices, + stencil indices, + color components, + and depth components to other values. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a pixel map is + requested, data is treated as a byte offset into the buffer object's data store. +

+ Unsigned integer values, + if requested, + are linearly mapped from the internal fixed or floating-point representation + such that 1.0 maps to the largest representable integer value, + and 0.0 maps to 0. + Return unsigned integer values are undefined if the map value was + not in the range [0,1]. +

+ To determine the required size of map, + call glGet with the appropriate symbolic + constant. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

Errors

+ GL_INVALID_ENUM is generated if map is not an accepted value. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated by glGetPixelMapfv if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a GLfloat datum. +

+ GL_INVALID_OPERATION is generated by glGetPixelMapuiv if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a GLuint datum. +

+ GL_INVALID_OPERATION is generated by glGetPixelMapusv if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a GLushort datum. +

+ GL_INVALID_OPERATION is generated if glGetPixelMap + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_PIXEL_MAP_I_TO_I_SIZE +

+ glGet with argument GL_PIXEL_MAP_S_TO_S_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_R_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_G_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_B_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_A_SIZE +

+ glGet with argument GL_PIXEL_MAP_R_TO_R_SIZE +

+ glGet with argument GL_PIXEL_MAP_G_TO_G_SIZE +

+ glGet with argument GL_PIXEL_MAP_B_TO_B_SIZE +

+ glGet with argument GL_PIXEL_MAP_A_TO_A_SIZE +

+ glGet with argument GL_MAX_PIXEL_MAP_TABLE +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetPointerv.xml b/upstream-man-pages/man2/xhtml/glGetPointerv.xml new file mode 100644 index 0000000..f2a8c32 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetPointerv.xml @@ -0,0 +1,65 @@ + + +glGetPointerv

Name

glGetPointerv — return the address of the specified pointer

C Specification

void glGetPointerv(GLenum  pname,
 GLvoid **  params);

Parameters

pname

+ Specifies the array or buffer pointer to be returned. + Symbolic constants + GL_COLOR_ARRAY_POINTER, + GL_EDGE_FLAG_ARRAY_POINTER, + GL_FOG_COORD_ARRAY_POINTER, + GL_FEEDBACK_BUFFER_POINTER, + GL_INDEX_ARRAY_POINTER, + GL_NORMAL_ARRAY_POINTER, + GL_SECONDARY_COLOR_ARRAY_POINTER, + GL_SELECTION_BUFFER_POINTER, + GL_TEXTURE_COORD_ARRAY_POINTER, + or + GL_VERTEX_ARRAY_POINTER + are accepted. +

params

+ Returns the pointer value specified by pname. +

Description

+ glGetPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, and params is a pointer to a + location in which to place the returned data. +

+ For all pname arguments except GL_FEEDBACK_BUFFER_POINTER and GL_SELECTION_BUFFER_POINTER, + if a non-zero named buffer object was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously + specified, the pointer returned is a byte offset into the buffer object's data store. + Buffer objects are only available in OpenGL versions 1.5 and greater. +

Notes

+ glGetPointerv is available only if the GL version is 1.1 or greater. +

+ GL_FOG_COORD_ARRAY_POINTER and GL_SECONDARY_COLOR_ARRAY_POINTER + are available only if the GL version is 1.4 or greater. +

+ The pointers are all client-side state. +

+ The initial value for each pointer is 0. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture + extension is supported, querying the GL_TEXTURE_COORD_ARRAY_POINTER + returns the value for the active client texture unit. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetPolygonStipple.xml b/upstream-man-pages/man2/xhtml/glGetPolygonStipple.xml new file mode 100644 index 0000000..77cf79d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetPolygonStipple.xml @@ -0,0 +1,66 @@ + + +glGetPolygonStipple

Name

glGetPolygonStipple — return the polygon stipple pattern

C Specification

void glGetPolygonStipple(GLubyte *  pattern);

Parameters

pattern

+ Returns the stipple pattern. The initial value is all 1's. +

Description

+ glGetPolygonStipple returns to pattern a + + + + 32 + × + 32 + + + polygon stipple pattern. + The pattern is packed into memory as if glReadPixels + with both height and width of 32, + type of GL_BITMAP, + and format of GL_COLOR_INDEX were called, + and the stipple pattern were stored in an internal + + + + 32 + × + 32 + + + color + index buffer. + Unlike glReadPixels, + however, + pixel transfer operations + (shift, offset, pixel map) + are not applied to the returned stipple image. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a polygon stipple pattern is + requested, pattern is treated as a byte offset into the buffer object's data store. +

Notes

+ If an error is generated, + no change is made to the contents of pattern. +

Errors

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glGetPolygonStipple + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetProgram.xml b/upstream-man-pages/man2/xhtml/glGetProgram.xml new file mode 100644 index 0000000..2f983d4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetProgram.xml @@ -0,0 +1,91 @@ + + +glGetProgram

Name

glGetProgramiv — Returns a parameter from a program object

C Specification

void glGetProgramiv(GLuint  program,
 GLenum  pname,
 GLint * params);

Parameters

program

Specifies the program object to be + queried.

pname

Specifies the object parameter. Accepted + symbolic names are + GL_DELETE_STATUS, + GL_LINK_STATUS, + GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS, + GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_MAX_LENGTH.

params

Returns the requested object parameter.

Description

glGetProgram + returns in params + the value of a parameter for a specific program object. The following parameters are defined:

GL_DELETE_STATUS

+

params returns + GL_TRUE if + program is currently flagged + for deletion, and GL_FALSE + otherwise.

GL_LINK_STATUS

+

params returns + GL_TRUE if the last link + operation on program was + successful, and GL_FALSE + otherwise.

GL_VALIDATE_STATUS

+

params returns + GL_TRUE or if the last + validation operation on + program was successful, and + GL_FALSE + otherwise.

GL_INFO_LOG_LENGTH

+

params returns the + number of characters in the information log for + program including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If program has no + information log, a value of 0 is + returned.

GL_ATTACHED_SHADERS

+

params returns the + number of shader objects attached to + program.

GL_ACTIVE_ATTRIBUTES

+

params returns the + number of active attribute variables for + program.

GL_ACTIVE_ATTRIBUTE_MAX_LENGTH

+

params returns the + length of the longest active attribute name for + program, including the null + termination character (i.e., the size of the + character buffer required to store the longest + attribute name). If no active attributes exist, 0 is + returned.

GL_ACTIVE_UNIFORMS

+

params returns the + number of active uniform variables for + program.

GL_ACTIVE_UNIFORM_MAX_LENGTH

+

params returns the + length of the longest active uniform variable name + for program, including the + null termination character (i.e., the size of the + character buffer required to store the longest + uniform variable name). If no active uniform + variables exist, 0 is returned.

Notes

glGetProgram is available only if the + GL version is 2.0 or greater.

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL.

GL_INVALID_OPERATION + is generated if program + does not refer to a program object.

GL_INVALID_ENUM + is generated if pname + is not an accepted value.

GL_INVALID_OPERATION is generated if + glGetProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetActiveAttrib + with argument program

glGetActiveUniform + with argument program

glGetAttachedShaders + with argument program

glGetProgramInfoLog + with argument program

glIsProgram +

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetProgramInfoLog.xml b/upstream-man-pages/man2/xhtml/glGetProgramInfoLog.xml new file mode 100644 index 0000000..73e4aec --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetProgramInfoLog.xml @@ -0,0 +1,54 @@ + + +glGetProgramInfoLog

Name

glGetProgramInfoLog — Returns the information log for a program object

C Specification

void glGetProgramInfoLog(GLuint  program,
 GLsizei  maxLength,
 GLsizei * length,
 GLchar * infoLog);

Parameters

program

Specifies the program object whose information + log is to be queried.

maxLength

Specifies the size of the character buffer for + storing the returned information log.

length

Returns the length of the string returned in + infoLog (excluding the null + terminator).

infoLog

Specifies an array of characters that is used + to return the information log.

Description

glGetProgramInfoLog returns the + information log for the specified program object. The + information log for a program object is modified when the + program object is linked or validated. The string that is + returned will be null terminated.

glGetProgramInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetProgram + with the value GL_INFO_LOG_LENGTH.

The information log for a program object is either an + empty string, or a string containing information about the last + link operation, or a string containing information about the + last validation operation. It may contain diagnostic messages, + warning messages, and other information. When a program object + is created, its information log will be a string of length + 0.

Notes

glGetProgramInfoLog is available only + if the GL version is 2.0 or greater.

The information log for a program object is the OpenGL + implementer's primary mechanism for conveying information about + linking and validating. Therefore, the information log can be + helpful to application developers during the development + process, even when these operations are successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + maxLength is less than 0.

GL_INVALID_OPERATION is generated if + glGetProgramInfoLog is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetProgram + with argument GL_INFO_LOG_LENGTH

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetQueryObject.xml b/upstream-man-pages/man2/xhtml/glGetQueryObject.xml new file mode 100644 index 0000000..e2acadb --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetQueryObject.xml @@ -0,0 +1,56 @@ + + +glGetQueryObject

Name

glGetQueryObject — return parameters of a query object

C Specification

void glGetQueryObjectiv(GLuint  id,
 GLenum  pname,
 GLint *  params);
void glGetQueryObjectuiv(GLuint  id,
 GLenum  pname,
 GLuint *  params);

Parameters

id

+ Specifies the name of a query object. +

pname

+ Specifies the symbolic name of a query object parameter. + Accepted values are GL_QUERY_RESULT or GL_QUERY_RESULT_AVAILABLE. +

params

+ Returns the requested data. +

Description

+ glGetQueryObject returns in params a selected parameter of the query object + specified by id. +

+ pname names a specific query object parameter. pname can be as follows: +

GL_QUERY_RESULT

+ params returns the value of the query object's passed samples counter. + The initial value is 0. +

GL_QUERY_RESULT_AVAILABLE

+ params returns whether the passed samples counter is immediately available. + If a delay would occur waiting for the query result, GL_FALSE is returned. + Otherwise, GL_TRUE is returned, which also indicates that the results of all + previous queries are available as well. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetQueryObject implicitly flushes the GL pipeline so that any incomplete rendering + delimited by the occlusion query completes in finite time. +

+ If multiple queries are issued using the same query object id before calling + glGetQueryObject, the results of the most recent query will be returned. In this case, + when issuing a new query, the results of the previous query are discarded. +

+ glGetQueryObject is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_OPERATION is generated if id is not the name of a query object. +

+ GL_INVALID_OPERATION is generated if id is the name of a currently active + query object. +

+ GL_INVALID_OPERATION is generated if glGetQueryObject + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetQueryiv.xml b/upstream-man-pages/man2/xhtml/glGetQueryiv.xml new file mode 100644 index 0000000..69523f6 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetQueryiv.xml @@ -0,0 +1,44 @@ + + +glGetQueryiv

Name

glGetQueryiv — return parameters of a query object target

C Specification

void glGetQueryiv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies a query object target. + Must be GL_SAMPLES_PASSED. +

pname

+ Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. +

params

+ Returns the requested data. +

Description

+ glGetQueryiv returns in params a selected parameter of the query object target + specified by target. +

+ pname names a specific query object target parameter. When target is + GL_SAMPLES_PASSED, pname can be as follows: +

GL_CURRENT_QUERY

+ params returns the name of the currently active occlusion query object. + If no occlusion query is active, 0 is returned. The initial value is 0. +

GL_QUERY_COUNTER_BITS

+ params returns the number of bits in the query counter used to accumulate passing samples. + If the number of bits returned is 0, the implementation does not support a query counter, and the results + obtained from glGetQueryObject are useless. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetQueryiv is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glGetQueryiv + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glGetQueryObject, + glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetSeparableFilter.xml b/upstream-man-pages/man2/xhtml/glGetSeparableFilter.xml new file mode 100644 index 0000000..505bfa9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetSeparableFilter.xml @@ -0,0 +1,156 @@ + + +glGetSeparableFilter

Name

glGetSeparableFilter — get separable convolution filter kernel images

C Specification

void glGetSeparableFilter(GLenum  target,
 GLenum  format,
 GLenum  type,
 GLvoid *  row,
 GLvoid *  column,
 GLvoid *  span);

Parameters

target

+ The separable filter to be retrieved. + Must be + GL_SEPARABLE_2D. +

format

+ Format of the output images. + Must be one of + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA. +

type

+ Data type of components in the output images. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

row

+ Pointer to storage for the row filter image. +

column

+ Pointer to storage for the column filter image. +

span

+ Pointer to storage for the span filter image (currently unused). +

Description

+ glGetSeparableFilter returns the two one-dimensional filter kernel images for the + current separable 2D convolution filter. + The row image is placed in row and the column image is placed in + column according to the specifications in format and type. + (In the current implementation, span is not affected in any way.) + No pixel transfer operations are performed on the images, but the relevant + pixel storage modes are applied. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a separable convolution filter is + requested, row, column, and span are treated as a byte offset into the buffer object's data store. +

+ Color components that are present in format but not included in the + internal format of the filters are returned as zero. + The assignments of internal color components to the components of format + are as follows: +

+

+ Internal Component + + Resulting Component +
+ Red + + Red +
+ Green + + Green +
+ Blue + + Blue +
+ Alpha + + Alpha +
+ Luminance + + Red +
+ Intensity + + Red +

+

Notes

+ glGetSeparableFilter is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

+ Non-separable 2D filters must be retrieved with glGetConvolutionFilter. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_SEPARABLE_2D. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and row or column is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glGetSeparableFilter is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetConvolutionParameter +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetShader.xml b/upstream-man-pages/man2/xhtml/glGetShader.xml new file mode 100644 index 0000000..402e18f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetShader.xml @@ -0,0 +1,62 @@ + + +glGetShader

Name

glGetShaderiv — Returns a parameter from a shader object

C Specification

void glGetShaderiv(GLuint  shader,
 GLenum  pname,
 GLint * params);

Parameters

shader

Specifies the shader object to be + queried.

pname

Specifies the object parameter. Accepted + symbolic names are + GL_SHADER_TYPE, + GL_DELETE_STATUS, + GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH.

params

Returns the requested object parameter.

Description

glGetShader + returns in params + the value of a parameter for a specific shader object. The + following parameters are defined:

GL_SHADER_TYPE

params returns + GL_VERTEX_SHADER if + shader is a vertex shader + object, and GL_FRAGMENT_SHADER + if shader is a fragment + shader object.

GL_DELETE_STATUS

params returns + GL_TRUE if + shader is currently flagged + for deletion, and GL_FALSE + otherwise.

GL_COMPILE_STATUS

params returns + GL_TRUE if the last compile + operation on shader was + successful, and GL_FALSE + otherwise.

GL_INFO_LOG_LENGTH

params returns the + number of characters in the information log for + shader including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If shader has no + information log, a value of 0 is returned.

GL_SHADER_SOURCE_LENGTH

params returns the + length of the concatenation of the source strings + that make up the shader source for the + shader, including the null + termination character. (i.e., the size of the + character buffer required to store the shader + source). If no source code exists, 0 is + returned.

Notes

glGetShader is available only if the + GL version is 2.0 or greater.

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader does not refer to a shader + object.

GL_INVALID_ENUM is generated if + pname is not an accepted value.

GL_INVALID_OPERATION is generated if + glGetShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetShaderInfoLog + with argument shader

glGetShaderSource + with argument shader

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetShaderInfoLog.xml b/upstream-man-pages/man2/xhtml/glGetShaderInfoLog.xml new file mode 100644 index 0000000..afda834 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetShaderInfoLog.xml @@ -0,0 +1,51 @@ + + +glGetShaderInfoLog

Name

glGetShaderInfoLog — Returns the information log for a shader object

C Specification

void glGetShaderInfoLog(GLuint  shader,
 GLsizei  maxLength,
 GLsizei * length,
 GLchar * infoLog);

Parameters

shader

Specifies the shader object whose information + log is to be queried.

maxLength

Specifies the size of the character buffer for + storing the returned information log.

length

Returns the length of the string returned in + infoLog (excluding the null + terminator).

infoLog

Specifies an array of characters that is used + to return the information log.

Description

glGetShaderInfoLog returns the + information log for the specified shader object. The information + log for a shader object is modified when the shader is compiled. + The string that is returned will be null terminated.

glGetShaderInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetShader + with the value GL_INFO_LOG_LENGTH.

The information log for a shader object is a string that + may contain diagnostic messages, warning messages, and other + information about the last compile operation. When a shader + object is created, its information log will be a string of + length 0.

Notes

glGetShaderInfoLog is available only + if the GL version is 2.0 or greater.

The information log for a shader object is the OpenGL + implementer's primary mechanism for conveying information about + the compilation process. Therefore, the information log can be + helpful to application developers during the development + process, even when compilation is successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + maxLength is less than 0.

GL_INVALID_OPERATION is generated if + glGetShaderInfoLog is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetShader + with argument GL_INFO_LOG_LENGTH

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetShaderSource.xml b/upstream-man-pages/man2/xhtml/glGetShaderSource.xml new file mode 100644 index 0000000..f278d3a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetShaderSource.xml @@ -0,0 +1,44 @@ + + +glGetShaderSource

Name

glGetShaderSource — Returns the source code string from a shader object

C Specification

void glGetShaderSource(GLuint  shader,
 GLsizei  bufSize,
 GLsizei * length,
 GLchar * source);

Parameters

shader

Specifies the shader object to be + queried.

bufSize

Specifies the size of the character buffer for + storing the returned source code string.

length

Returns the length of the string returned in + source (excluding the null + terminator).

source

Specifies an array of characters that is used + to return the source code string.

Description

glGetShaderSource returns the + concatenation of the source code strings from the shader object + specified by shader. The source code + strings for a shader object are the result of a previous call to + glShaderSource. + The string returned by the function will be null + terminated.

glGetShaderSource returns in + source as much of the source code string + as it can, up to a maximum of bufSize + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned source code + string can be obtained by calling + glGetShader + with the value + GL_SHADER_SOURCE_LENGTH.

Notes

glGetShaderSource is available only + if the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

GL_INVALID_OPERATION is generated if + glGetShaderSource is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetShader + with argument + GL_SHADER_SOURCE_LENGTH

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetString.xml b/upstream-man-pages/man2/xhtml/glGetString.xml new file mode 100644 index 0000000..ca48a2a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetString.xml @@ -0,0 +1,77 @@ + + +glGetString

Name

glGetString — return a string describing the current GL connection

C Specification

const GLubyte* glGetString(GLenum  name);

Parameters

name

+ Specifies a symbolic constant, one of + GL_VENDOR, GL_RENDERER, GL_VERSION, GL_SHADING_LANGUAGE_VERSION, or GL_EXTENSIONS. +

Description

+ glGetString returns a pointer to a static string + describing some aspect of the current GL connection. + name can be one of the following: +

GL_VENDOR

+

+ Returns the company responsible for this GL implementation. + This name does not change from release to release. +

GL_RENDERER

+

+ Returns the name of the renderer. + This name is typically specific to a particular configuration of a hardware + platform. + It does not change from release to release. +

GL_VERSION

+

+ Returns a version or release number. +

GL_SHADING_LANGUAGE_VERSION

+

+ Returns a version or release number for the shading language. +

GL_EXTENSIONS

+

+ Returns a space-separated list of supported extensions to GL. +

+ Because the GL does not include queries for the performance + characteristics of an implementation, some applications are written to + recognize known platforms and modify their GL usage based on known + performance characteristics of these platforms. + Strings GL_VENDOR and GL_RENDERER together uniquely specify + a platform. They do not change from release to release and should be used + by platform-recognition algorithms. +

+ Some applications want to make use of features that + are not part of the standard GL. These features + may be implemented as extensions to the standard GL. + The GL_EXTENSIONS string is a space-separated + list of supported GL extensions. + (Extension names never contain a space character.) +

+ The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. + The version number uses one + of these forms: +

+ major_number.minor_number + major_number.minor_number.release_number +

+ Vendor-specific information may follow the version + number. Its format depends on the implementation, but + a space always separates the version number and + the vendor-specific information. +

+ All strings are null-terminated. +

Notes

+ If an error is generated, glGetString returns 0. +

+ The client and server may support different versions or extensions. + glGetString always returns a compatible version number or list of extensions. + The release number always describes the server. +

+ GL_SHADING_LANGUAGE_VERSION is available only if the GL version is 2.0 or greater. +

Errors

+ GL_INVALID_ENUM is generated if name is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glGetString + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetTexEnv.xml b/upstream-man-pages/man2/xhtml/glGetTexEnv.xml new file mode 100644 index 0000000..807cc15 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetTexEnv.xml @@ -0,0 +1,163 @@ + + +glGetTexEnv

Name

glGetTexEnv — return texture environment parameters

C Specification

void glGetTexEnvfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);

void glGetTexEnviv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies a texture environment. May be + GL_TEXTURE_ENV, + GL_TEXTURE_FILTER_CONTROL, or + GL_POINT_SPRITE. +

pname

+ Specifies the symbolic name of a texture environment parameter. + Accepted values are GL_TEXTURE_ENV_MODE, GL_TEXTURE_ENV_COLOR, + GL_TEXTURE_LOD_BIAS, + GL_COMBINE_RGB, + GL_COMBINE_ALPHA, + GL_SRC0_RGB, + GL_SRC1_RGB, + GL_SRC2_RGB, + GL_SRC0_ALPHA, + GL_SRC1_ALPHA, + GL_SRC2_ALPHA, + GL_OPERAND0_RGB, + GL_OPERAND1_RGB, + GL_OPERAND2_RGB, + GL_OPERAND0_ALPHA, + GL_OPERAND1_ALPHA, + GL_OPERAND2_ALPHA, + GL_RGB_SCALE, + GL_ALPHA_SCALE, or + GL_COORD_REPLACE. +

params

+ Returns the requested data. +

Description

+ glGetTexEnv returns in params selected values of a texture environment that + was specified with glTexEnv. + target specifies a texture environment. +

+ When target is GL_TEXTURE_FILTER_CONTROL, + pname must be GL_TEXTURE_LOD_BIAS. + When target is GL_POINT_SPRITE, + pname must be GL_COORD_REPLACE. + When target is + GL_TEXTURE_ENV, pname can be GL_TEXTURE_ENV_MODE, + GL_TEXTURE_ENV_COLOR, GL_COMBINE_RGB, GL_COMBINE_ALPHA, + GL_RGB_SCALE, GL_ALPHA_SCALE, + GL_SRC0_RGB, GL_SRC1_RGB, GL_SRC2_RGB, + GL_SRC0_ALPHA, GL_SRC1_ALPHA, or GL_SRC2_ALPHA. +

+ pname names a specific texture environment parameter, as follows: +

GL_TEXTURE_ENV_MODE

+ params returns the single-valued texture environment mode, + a symbolic constant. The initial value is GL_MODULATE. +

GL_TEXTURE_ENV_COLOR

+ params returns four integer or floating-point values that are the + texture environment color. + Integer values, + when requested, + are linearly mapped from the internal floating-point representation + such that 1.0 maps to the most positive representable integer, + and + + + -1.0 + + maps to the most negative representable integer. The initial + value is (0, 0, 0, 0). +

GL_TEXTURE_LOD_BIAS

+ params returns a single floating-point value that is the texture + level-of-detail bias. The initial value is 0. +

GL_COMBINE_RGB

+ params returns a single symbolic constant value representing the current + RGB combine mode. The initial value is GL_MODULATE. +

GL_COMBINE_ALPHA

+ params returns a single symbolic constant value representing the current + alpha combine mode. The initial value is GL_MODULATE. +

GL_SRC0_RGB

+ params returns a single symbolic constant value representing the texture + combiner zero's RGB source. The initial value is GL_TEXTURE. +

GL_SRC1_RGB

+ params returns a single symbolic constant value representing the texture + combiner one's RGB source. The initial value is GL_PREVIOUS. +

GL_SRC2_RGB

+ params returns a single symbolic constant value representing the texture + combiner two's RGB source. The initial value is GL_CONSTANT. +

GL_SRC0_ALPHA

+ params returns a single symbolic constant value representing the texture + combiner zero's alpha source. The initial value is GL_TEXTURE. +

GL_SRC1_ALPHA

+ params returns a single symbolic constant value representing the texture + combiner one's alpha source. The initial value is GL_PREVIOUS. +

GL_SRC2_ALPHA

+ params returns a single symbolic constant value representing the texture + combiner two's alpha source. The initial value is GL_CONSTANT. +

GL_OPERAND0_RGB

+ params returns a single symbolic constant value representing the texture + combiner zero's RGB operand. The initial value is GL_SRC_COLOR. +

GL_OPERAND1_RGB

+ params returns a single symbolic constant value representing the texture + combiner one's RGB operand. The initial value is GL_SRC_COLOR. +

GL_OPERAND2_RGB

+ params returns a single symbolic constant value representing the texture + combiner two's RGB operand. The initial value is GL_SRC_ALPHA. +

GL_OPERAND0_ALPHA

+ params returns a single symbolic constant value representing the texture + combiner zero's alpha operand. The initial value is GL_SRC_ALPHA. +

GL_OPERAND1_ALPHA

+ params returns a single symbolic constant value representing the texture + combiner one's alpha operand. The initial value is GL_SRC_ALPHA. +

GL_OPERAND2_ALPHA

+ params returns a single symbolic constant value representing the texture + combiner two's alpha operand. The initial value is GL_SRC_ALPHA. +

GL_RGB_SCALE

+ params returns a single floating-point value representing the current RGB + texture combiner scaling factor. The initial value is 1.0. +

GL_ALPHA_SCALE

+ params returns a single floating-point value representing the current alpha + texture combiner scaling factor. The initial value is 1.0. +

GL_COORD_REPLACE

+ params returns a single boolean value representing the current point sprite + texture coordinate replacement enable state. The initial value is GL_FALSE. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexEnv returns + the texture environment parameters for the active texture unit. +

+ GL_COMBINE_RGB, + GL_COMBINE_ALPHA, + GL_SRC0_RGB, + GL_SRC1_RGB, + GL_SRC2_RGB, + GL_SRC0_ALPHA, + GL_SRC1_ALPHA, + GL_SRC2_ALPHA, + GL_OPERAND0_RGB, + GL_OPERAND1_RGB, + GL_OPERAND2_RGB, + GL_OPERAND0_ALPHA, + GL_OPERAND1_ALPHA, + GL_OPERAND2_ALPHA, + GL_RGB_SCALE, and + GL_ALPHA_SCALE are available only if the GL version is 1.3 or greater. +

+ GL_TEXTURE_FILTER_CONTROL and GL_TEXTURE_LOD_BIAS are available + only if the GL version is 1.4 or greater. +

+ GL_POINT_SPRITE and GL_COORD_REPLACE are available + only if the GL version is 2.0 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glGetTexEnv + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glActiveTexture, + glTexEnv +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetTexGen.xml b/upstream-man-pages/man2/xhtml/glGetTexGen.xml new file mode 100644 index 0000000..f0abd02 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetTexGen.xml @@ -0,0 +1,67 @@ + + +glGetTexGen

Name

glGetTexGen — return texture coordinate generation parameters

C Specification

void glGetTexGendv(GLenum  coord,
 GLenum  pname,
 GLdouble *  params);
void glGetTexGenfv(GLenum  coord,
 GLenum  pname,
 GLfloat *  params);
void glGetTexGeniv(GLenum  coord,
 GLenum  pname,
 GLint *  params);

Parameters

coord

+ Specifies a texture coordinate. + Must be + GL_S, + GL_T, + GL_R, or + GL_Q. +

pname

+ Specifies the symbolic name of the value(s) to be returned. + Must be either GL_TEXTURE_GEN_MODE + or the name of one of the texture generation plane equations: + GL_OBJECT_PLANE or GL_EYE_PLANE. +

params

+ Returns the requested data. +

Description

+ glGetTexGen returns in params selected parameters of a texture coordinate + generation function that was specified using glTexGen. + coord names one of the (s, t, r, q) + texture coordinates, + using the symbolic constant + GL_S, + GL_T, + GL_R, or + GL_Q. +

+ pname specifies one of three symbolic names: +

GL_TEXTURE_GEN_MODE

+ params returns the single-valued texture generation function, + a symbolic constant. The initial value is GL_EYE_LINEAR. +

GL_OBJECT_PLANE

+ params returns the four plane equation coefficients that specify + object linear-coordinate generation. + Integer values, when requested, + are mapped directly from the internal floating-point representation. +

GL_EYE_PLANE

+ params returns the four plane equation coefficients that specify + eye linear-coordinate generation. + Integer values, + when requested, + are mapped directly from the internal floating-point representation. + The returned values are those maintained in eye coordinates. + They are not equal to the values specified using glTexGen, + unless the modelview matrix was identity when glTexGen was called. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexGen returns + the texture coordinate generation parameters for the active texture unit. +

Errors

+ GL_INVALID_ENUM is generated if coord or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glGetTexGen + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glActiveTexture, + glTexGen +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetTexImage.xml b/upstream-man-pages/man2/xhtml/glGetTexImage.xml new file mode 100644 index 0000000..9e9e335 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetTexImage.xml @@ -0,0 +1,226 @@ + + +glGetTexImage

Name

glGetTexImage — return a texture image

C Specification

void glGetTexImage(GLenum  target,
 GLint  level,
 GLenum  format,
 GLenum  type,
 GLvoid *  img);

Parameters

target

+ Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. +

level

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

format

+ Specifies a pixel format for the returned data. + The supported formats are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies a pixel type for the returned data. + The supported types are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

img

+ Returns the texture image. + Should be a pointer to an array of the type specified by type. +

Description

+ glGetTexImage returns a texture image into img. + target specifies whether the desired texture image is one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of + GL_TEXTURE_CUBE_MAP_*), + or + glTexImage3D (GL_TEXTURE_3D). + level specifies the level-of-detail number of the desired image. + format and type specify the format and type of the desired image array. + See the reference pages glTexImage1D and glDrawPixels + for a description of the acceptable values for the format and type + parameters, respectively. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. +

+ To understand the operation of glGetTexImage, consider the selected internal + four-component texture image to be an RGBA color buffer the size of the image. + The semantics of glGetTexImage are then identical to those of glReadPixels, + with the exception that no pixel transfer operations are performed, + when called with the same format and type, + with x and y set to 0, + width set to the width of the texture image + (including border if one was specified), + and height set to 1 for 1D images, + or to the height of the texture image + (including border if one was specified) + for 2D images. + Because the internal texture image is an RGBA image, + pixel formats GL_COLOR_INDEX, + GL_STENCIL_INDEX, + and GL_DEPTH_COMPONENT are not accepted, + and pixel type GL_BITMAP is not accepted. +

+ If the selected texture image does not contain four components, + the following mappings are applied. + Single-component textures are treated as RGBA buffers with red set + to the single-component value, + green set to 0, blue set to 0, and alpha set to 1. + Two-component textures are treated as RGBA buffers with red set to + the value of component zero, + alpha set to the value of component one, + and green and blue set to 0. + Finally, + three-component textures are treated as RGBA buffers with red set to + component zero, + green set to component one, + blue set to component two, + and alpha set to 1. +

+ To determine the required size of img, + use glGetTexLevelParameter to determine the dimensions of the + internal texture image, + then scale the required number of pixels by the storage required for + each pixel, + based on format and type. + Be sure to take the pixel storage parameters into account, + especially GL_PACK_ALIGNMENT. +

Notes

+ If an error is generated, + no change is made to the contents of img. +

+ The types GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + and the formats + GL_BGR, and GL_BGRA are available only if the GL version is + 1.2 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexImage returns + the texture image for the active texture unit. +

Errors

+ GL_INVALID_ENUM is generated if target, format, or type is not + an accepted value. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁡ + + max + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB. +

+ GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV, and format is neither GL_RGBA + or GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and img is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glGetTexImage + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexLevelParameter with argument GL_TEXTURE_WIDTH +

+ glGetTexLevelParameter with argument GL_TEXTURE_HEIGHT +

+ glGetTexLevelParameter with argument GL_TEXTURE_BORDER +

+ glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT +

+ glGet with arguments GL_PACK_ALIGNMENT and others +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetTexLevelParameter.xml b/upstream-man-pages/man2/xhtml/glGetTexLevelParameter.xml new file mode 100644 index 0000000..7101525 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetTexLevelParameter.xml @@ -0,0 +1,192 @@ + + +glGetTexLevelParameter

Name

glGetTexLevelParameter — return texture parameter values for a specific level of detail

C Specification

void glGetTexLevelParameterfv(GLenum  target,
 GLint  level,
 GLenum  pname,
 GLfloat *  params);
void glGetTexLevelParameteriv(GLenum  target,
 GLint  level,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies the symbolic name of the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

pname

+ Specifies the symbolic name of a texture parameter. + GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT, + GL_TEXTURE_DEPTH, + GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_BORDER, + GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_LUMINANCE_SIZE, + GL_TEXTURE_INTENSITY_SIZE, + GL_TEXTURE_DEPTH_SIZE, + GL_TEXTURE_COMPRESSED, and + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + are accepted. +

params

+ Returns the requested data. +

Description

+ glGetTexLevelParameter returns in params texture parameter values for a specific + level-of-detail value, + specified as level. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

+ GL_MAX_TEXTURE_SIZE, and GL_MAX_3D_TEXTURE_SIZE are not really + descriptive enough. + It has to report the largest square texture image that can be + accommodated with mipmaps and borders, + but a long skinny texture, or a texture without mipmaps and borders, may + easily fit in texture memory. + The proxy targets allow the user to more accurately query + whether the GL can accommodate a texture of a given configuration. + If the texture cannot be accommodated, the texture state variables, which + may be queried with glGetTexLevelParameter, are set to 0. If the texture can be accommodated, + the texture state values will be set as they would be set for a + non-proxy target. +

+ pname specifies the texture parameter whose value or values + will be returned. +

+ The accepted parameter names are as follows: +

GL_TEXTURE_WIDTH

+

+ params returns a single value, + the width of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_HEIGHT

+

+ params returns a single value, + the height of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_DEPTH

+

+ params returns a single value, + the depth of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_INTERNAL_FORMAT

+

+ params returns a single value, + the internal format of the texture image. +

GL_TEXTURE_BORDER

+

+ params returns a single value, + the width in pixels of the border of the texture image. The initial value + is 0. +

GL_TEXTURE_RED_SIZE,
GL_TEXTURE_GREEN_SIZE,
GL_TEXTURE_BLUE_SIZE,
GL_TEXTURE_ALPHA_SIZE,
GL_TEXTURE_LUMINANCE_SIZE,
GL_TEXTURE_INTENSITY_SIZE,
GL_TEXTURE_DEPTH_SIZE

+

+ The internal storage resolution of an individual component. + The resolution chosen by the GL will be a close match for the resolution + requested by the user with the component argument of glTexImage1D, + glTexImage2D, glTexImage3D, glCopyTexImage1D, and + glCopyTexImage2D. The initial value is 0. +

GL_TEXTURE_COMPRESSED

+

+ params returns a single boolean value indicating if the texture image is + stored in a compressed internal format. The initiali value is GL_FALSE. +

GL_TEXTURE_COMPRESSED_IMAGE_SIZE

+

+ params returns a single integer value, the number of unsigned bytes of the + compressed texture image that would be returned from + glGetCompressedTexImage. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ GL_TEXTURE_INTERNAL_FORMAT is available only if the GL version is + 1.1 or greater. In version 1.0, use GL_TEXTURE_COMPONENTS + instead. +

+ GL_PROXY_TEXTURE_1D and GL_PROXY_TEXTURE_2D are + available only if the GL version is 1.1 or greater. +

+ GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, and GL_TEXTURE_DEPTH + are available only if the GL version is 1.2 or greater. +

+ GL_TEXTURE_COMPRESSED, + GL_TEXTURE_COMPRESSED_IMAGE_SIZE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, and + GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL version is 1.3 + or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glGetTexLevelParameter returns + the texture level parameters for the active texture unit. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_OPERATION is generated if glGetTexLevelParameter + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if + GL_TEXTURE_COMPRESSED_IMAGE_SIZE is queried on texture images with an + uncompressed internal format or on proxy targets. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetTexParameter.xml b/upstream-man-pages/man2/xhtml/glGetTexParameter.xml new file mode 100644 index 0000000..c2296a8 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetTexParameter.xml @@ -0,0 +1,146 @@ + + +glGetTexParameter

Name

glGetTexParameter — return texture parameter values

C Specification

void glGetTexParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetTexParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies the symbolic name of the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, and + GL_TEXTURE_CUBE_MAP + are accepted. +

pname

+ Specifies the symbolic name of a texture parameter. + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_PRIORITY, + GL_TEXTURE_RESIDENT, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_DEPTH_TEXTURE_MODE, and + GL_GENERATE_MIPMAP + are accepted. +

params

+ Returns the texture parameters. +

Description

+ glGetTexParameter returns in params the value or values of the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, or GL_TEXTURE_CUBE_MAP, + to specify one-, two-, or three-dimensional or cube-mapped texturing. + pname accepts the same symbols as glTexParameter, + with the same interpretations: +

GL_TEXTURE_MAG_FILTER

+ Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. +

GL_TEXTURE_MIN_FILTER

+ Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MIN_LOD

+ Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . +

GL_TEXTURE_MAX_LOD

+ Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. +

GL_TEXTURE_BASE_LEVEL

+ Returns the single-valued base texture mipmap level. The initial value is 0. +

GL_TEXTURE_MAX_LEVEL

+ Returns the single-valued maximum texture mipmap array level. The initial + value is 1000. +

GL_TEXTURE_WRAP_S

+ Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_T

+ Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). +

GL_TEXTURE_PRIORITY

+ Returns the residence priority of the target texture (or the named + texture bound to it). The initial value is 1. + See glPrioritizeTextures. +

GL_TEXTURE_RESIDENT

+ Returns the residence status of the target texture. + If the value returned in params is GL_TRUE, the texture is + resident in texture memory. + See glAreTexturesResident. +

GL_TEXTURE_COMPARE_MODE

+ Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glTexParameter. +

GL_TEXTURE_COMPARE_FUNC

+ Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glTexParameter. +

GL_DEPTH_TEXTURE_MODE

+ Returns a single-valued texture format indicating how the depth values + should be converted into color components. The initial value is + GL_LUMINANCE. See glTexParameter. +

GL_GENERATE_MIPMAP

+ Returns a single boolean value indicating if automatic mipmap level updates + are enabled. + See glTexParameter. +

Notes

+ GL_TEXTURE_PRIORITY and GL_TEXTURE_RESIDENT are + available only if the GL version is 1.1 or greater. +

+ GL_TEXTURE_3D, + GL_TEXTURE_MIN_LOD, GL_TEXTURE_MAX_LOD, GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, and GL_TEXTURE_WRAP_R are available only + if the GL version is 1.2 or greater. +

+ GL_TEXTURE_COMPARE_MODE, GL_TEXTURE_COMPARE_FUNC, and + GL_GENERATE_MIPMAP is available only if the GL version is 1.4 or + greater. +

+ If an error is generated, + no change is made to the contents of params. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if glGetTexParameter + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetUniform.xml b/upstream-man-pages/man2/xhtml/glGetUniform.xml new file mode 100644 index 0000000..98ad3b7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetUniform.xml @@ -0,0 +1,60 @@ + + +glGetUniform

Name

glGetUniform — Returns the value of a uniform variable

C Specification

void glGetUniformfv(GLuint  program,
 GLint  location,
 GLfloat * params);
void glGetUniformiv(GLuint  program,
 GLint  location,
 GLint * params);

Parameters

program

Specifies the program object to be + queried.

location

Specifies the location of the uniform variable + to be queried.

params

Returns the value of the specified uniform + variable.

Description

glGetUniform returns in + params the value(s) of the specified + uniform variable. The type of the uniform variable specified by + location determines the number of values + returned. If the uniform variable is defined in the shader as a + boolean, int, or float, a single value will be returned. If it + is defined as a vec2, ivec2, or bvec2, two values will be + returned. If it is defined as a vec3, ivec3, or bvec3, three + values will be returned, and so on. To query values stored in + uniform variables declared as arrays, call + glGetUniform for each element of the array. + To query values stored in uniform variables declared as + structures, call glGetUniform for each + field in the structure. The values for uniform variables + declared as a matrix will be returned in column major + order.

The locations assigned to uniform variables are not known + until the program object is linked. After linking has occurred, + the command + glGetUniformLocation + can be used to obtain the location of a uniform variable. This + location value can then be passed to + glGetUniform in order to query the current + value of the uniform variable. After a program object has been + linked successfully, the index values for uniform variables + remain fixed until the next link command occurs. The uniform + variable values can only be queried after a link if the link was + successful.

Notes

glGetUniform is available only if the + GL version is 2.0 or greater.

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

GL_INVALID_OPERATION is generated if + location does not correspond to a valid + uniform variable location for the specified program object.

GL_INVALID_OPERATION is generated if + glGetUniform is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetActiveUniform + with arguments program and the index of an active + uniform variable

glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH

glGetUniformLocation + with arguments program and the name of a + uniform variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetUniformLocation.xml b/upstream-man-pages/man2/xhtml/glGetUniformLocation.xml new file mode 100644 index 0000000..967b90a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetUniformLocation.xml @@ -0,0 +1,65 @@ + + +glGetUniformLocation

Name

glGetUniformLocation — Returns the location of a uniform variable

C Specification

GLint glGetUniformLocation(GLuint  program,
 const GLchar * name);

Parameters

program

Specifies the program object to be + queried.

name

Points to a null terminated string containing + the name of the uniform variable whose location is + to be queried.

Description

glGetUniformLocation returns an + integer that represents the location of a specific uniform + variable within a program object. name + must be a null terminated string that contains no white space. + name must be an active uniform variable + name in program that is not a structure, + an array of structures, or a subcomponent of a vector or a + matrix. This function returns -1 if name + does not correspond to an active uniform variable in + program or if name + starts with the reserved prefix "gl_".

Uniform variables that are structures or arrays of + structures may be queried by calling + glGetUniformLocation for each field within + the structure. The array element operator "[]" and the + structure field operator "." may be used in + name in order to select elements within + an array or fields within a structure. The result of using these + operators is not allowed to be another structure, an array of + structures, or a subcomponent of a vector or a matrix. Except if + the last part of name indicates a uniform + variable array, the location of the first element of an array + can be retrieved by using the name of the array, or by using the + name appended by "[0]".

The actual locations assigned to uniform variables are not + known until the program object is linked successfully. After + linking has occurred, the command + glGetUniformLocation can be used to obtain + the location of a uniform variable. This location value can then + be passed to + glUniform + to set the value of the uniform variable or to + glGetUniform + in order to query the current value of the uniform variable. + After a program object has been linked successfully, the index + values for uniform variables remain fixed until the next link + command occurs. Uniform variable locations and values can only + be queried after a link if the link was successful.

Notes

glGetUniformLocation is available + only if the GL version is 2.0 or greater.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

GL_INVALID_OPERATION is generated if + glGetUniformLocation is executed between + the execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetActiveUniform + with arguments program and the index of + an active uniform variable

glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH

glGetUniform + with arguments program and the name of a + uniform variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetVertexAttrib.xml b/upstream-man-pages/man2/xhtml/glGetVertexAttrib.xml new file mode 100644 index 0000000..7bfbfdb --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetVertexAttrib.xml @@ -0,0 +1,88 @@ + + +glGetVertexAttrib

Name

glGetVertexAttrib — Return a generic vertex attribute parameter

C Specification

void glGetVertexAttribdv(GLuint  index,
 GLenum  pname,
 GLdouble * params);
void glGetVertexAttribfv(GLuint  index,
 GLenum  pname,
 GLfloat * params);
void glGetVertexAttribiv(GLuint  index,
 GLenum  pname,
 GLint * params);

Parameters

index

Specifies the generic vertex attribute + parameter to be queried.

pname

Specifies the symbolic name of the vertex + attribute parameter to be queried. Accepted values are + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, or + GL_CURRENT_VERTEX_ATTRIB.

params

Returns the requested data.

Description

glGetVertexAttrib returns in + params the value of a generic vertex + attribute parameter. The generic vertex attribute to be queried + is specified by index, and the parameter + to be queried is specified by pname.

The accepted parameter names are as follows:

GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING

+

params returns a + single value, the name of the buffer object currently bound to + the binding point corresponding to generic vertex attribute array + index. If no buffer object is bound, + 0 is returned. The initial value is 0.

GL_VERTEX_ATTRIB_ARRAY_ENABLED

+

params returns a + single value that is non-zero (true) if the vertex + attribute array for index is + enabled and 0 (false) if it is disabled. The initial + value is GL_FALSE.

GL_VERTEX_ATTRIB_ARRAY_SIZE

+

params returns a + single value, the size of the vertex attribute array + for index. The size is the + number of values for each element of the vertex + attribute array, and it will be 1, 2, 3, or 4. The + initial value is 4.

GL_VERTEX_ATTRIB_ARRAY_STRIDE

+

params returns a + single value, the array stride for (number of bytes + between successive elements in) the vertex attribute + array for index. A value of 0 + indicates that the array elements are stored + sequentially in memory. The initial value is 0.

GL_VERTEX_ATTRIB_ARRAY_TYPE

+

params returns a + single value, a symbolic constant indicating the + array type for the vertex attribute array for + index. Possible values are + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, and + GL_DOUBLE. The initial value is + GL_FLOAT.

GL_VERTEX_ATTRIB_ARRAY_NORMALIZED

+

params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index are normalized when + they are converted to floating point, and 0 (false) + otherwise. The initial value is + GL_FALSE.

GL_CURRENT_VERTEX_ATTRIB

+

params returns four + values that represent the current value for the + generic vertex attribute specified by index. Generic + vertex attribute 0 is unique in that it has no + current state, so an error will be generated if + index is 0. The initial value + for all other generic vertex attributes is + (0,0,0,1).

All of the parameters except GL_CURRENT_VERTEX_ATTRIB + represent client-side state.

Notes

glGetVertexAttrib is available only + if the GL version is 2.0 or greater.

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM is generated if + pname is not an accepted value.

GL_INVALID_OPERATION is generated if + index is 0 and + pname is + GL_CURRENT_VERTEX_ATTRIB.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glGetVertexAttribPointerv.xml b/upstream-man-pages/man2/xhtml/glGetVertexAttribPointerv.xml new file mode 100644 index 0000000..bd8b836 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glGetVertexAttribPointerv.xml @@ -0,0 +1,26 @@ + + +glGetVertexAttribPointerv

Name

glGetVertexAttribPointerv — return the address of the specified generic vertex attribute pointer

C Specification

void glGetVertexAttribPointerv(GLuint  index,
 GLenum  pname,
 GLvoid ** pointer);

Parameters

index

Specifies the generic vertex attribute + parameter to be returned.

pname

Specifies the symbolic name of the generic + vertex attribute parameter to be returned. Must be + GL_VERTEX_ATTRIB_ARRAY_POINTER.

pointer

Returns the pointer value.

Description

glGetVertexAttribPointerv returns + pointer information. index is the generic + vertex attribute to be queried, pname is + a symbolic constant indicating the pointer to be returned, and + params is a pointer to a location in + which to place the returned data.

If a non-zero named buffer object was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously + specified, the pointer returned is a byte offset into the buffer object's data store. +

Notes

glGetVertexAttribPointerv + is available only if the GL version is 2.0 or greater.

The pointer returned is client-side state.

The initial value for each pointer is 0.

Errors

GL_INVALID_VALUE + is generated if index + is greater than or equal to GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM + is generated if pname + is not an accepted value.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glHint.xml b/upstream-man-pages/man2/xhtml/glHint.xml new file mode 100644 index 0000000..24edb56 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glHint.xml @@ -0,0 +1,115 @@ + + +glHint

Name

glHint — specify implementation-specific hints

C Specification

void glHint(GLenum  target,
 GLenum  mode);

Parameters

target

+ Specifies a symbolic constant indicating the behavior to be controlled. + GL_FOG_HINT, + GL_GENERATE_MIPMAP_HINT, + GL_LINE_SMOOTH_HINT, + GL_PERSPECTIVE_CORRECTION_HINT, + GL_POINT_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT, + GL_TEXTURE_COMPRESSION_HINT, and + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + are accepted. +

mode

+ Specifies a symbolic constant indicating the desired behavior. + GL_FASTEST, + GL_NICEST, and + GL_DONT_CARE are accepted. +

Description

+ Certain aspects of GL behavior, + when there is room for interpretation, + can be controlled with hints. + A hint is specified with two arguments. + target is a symbolic + constant indicating the behavior to be controlled, + and mode is another symbolic constant indicating the desired + behavior. The initial value for each target is GL_DONT_CARE. + mode can be one of the following: +

GL_FASTEST

+

+ The most efficient option should be chosen. +

GL_NICEST

+

+ The most correct, + or highest quality, + option should be chosen. +

GL_DONT_CARE

+

+ No preference. +

+ Though the implementation aspects that can be hinted are well defined, + the interpretation of the hints depends on the implementation. + The hint aspects that can be specified with target, + along with suggested semantics, + are as follows: +

GL_FOG_HINT

+

+ Indicates the accuracy of fog calculation. + If per-pixel fog calculation is not efficiently supported + by the GL implementation, + hinting GL_DONT_CARE or GL_FASTEST can result in per-vertex + calculation of fog effects. +

GL_FRAGMENT_SHADER_DERIVATIVE_HINT

+

+ Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: + dFdx, dFdy, and fwidth. +

GL_GENERATE_MIPMAP_HINT

+

+ Indicates the quality of filtering when generating mipmap images. +

GL_LINE_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased lines. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. +

GL_PERSPECTIVE_CORRECTION_HINT

+

+ Indicates the quality of color, texture coordinate, and fog coordinate + interpolation. If perspective-corrected parameter interpolation is not + efficiently supported by the GL implementation, hinting GL_DONT_CARE + or GL_FASTEST can result in simple linear interpolation of colors + and/or texture coordinates. +

GL_POINT_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased points. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. +

GL_POLYGON_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased polygons. + Hinting GL_NICEST can result in more pixel fragments being generated + during rasterization, + if a larger filter function is applied. +

GL_TEXTURE_COMPRESSION_HINT

+

+ Indicates the quality and performance of the compressing texture images. + Hinting GL_FASTEST indicates that texture images should be compressed + as quickly as possible, while GL_NICEST indicates that texture images + should be compressed with as little image quality loss as possible. + GL_NICEST should be selected if the texture is to be retrieved by + glGetCompressedTexImage for reuse. +

Notes

+ The interpretation of hints depends on the implementation. + Some implementations ignore glHint settings. +

+ GL_TEXTURE_COMPRESSION_HINT is available only if the GL version is 1.3 + or greater. +

+ GL_GENERATE_MIPMAP_HINT is available only if the GL version is 1.4 + or greater. +

+ GL_FRAGMENT_SHADER_DERIVATIVE_HINT is available only if the GL version is 2.0 + or greater. +

Errors

+ GL_INVALID_ENUM is generated if either target or mode is not + an accepted value. +

+ GL_INVALID_OPERATION is generated if glHint + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glHistogram.xml b/upstream-man-pages/man2/xhtml/glHistogram.xml new file mode 100644 index 0000000..3c6671f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glHistogram.xml @@ -0,0 +1,123 @@ + + +glHistogram

Name

glHistogram — define histogram table

C Specification

void glHistogram(GLenum  target,
 GLsizei  width,
 GLenum  internalformat,
 GLboolean  sink);

Parameters

target

+ The histogram whose parameters are to be set. + Must be one of + GL_HISTOGRAM or + GL_PROXY_HISTOGRAM. +

width

+ The number of entries in the histogram table. Must be a power of 2. +

internalformat

+ The format of entries in the histogram table. + Must be one of + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

sink

+ If GL_TRUE, pixels will be consumed by the histogramming + process and no drawing or texture loading will take place. + If GL_FALSE, pixels will proceed to the minmax process after + histogramming. +

Description

+ When GL_HISTOGRAM is enabled, RGBA color components are converted to + histogram table indices by clamping to the range [0,1], multiplying by + the width of the histogram table, and rounding to the nearest integer. + The table entries selected by the RGBA indices are then incremented. + (If the internal format of the histogram table includes luminance, then + the index derived from the R color component determines the luminance + table entry to be incremented.) If a histogram table entry is incremented + beyond its maximum value, then its value becomes undefined. (This is + not an error.) +

+ Histogramming is performed only for RGBA pixels (though these may + be specified originally as color indices and converted to RGBA by + index table lookup). + Histogramming is enabled with glEnable and disabled with glDisable. +

+ When target is GL_HISTOGRAM, glHistogram redefines the current + histogram table to have width entries of the format specified by + internalformat. + The entries are indexed 0 through + + + + width + - + 1 + + , + and + all entries are initialized to zero. + The values in the previous histogram table, if any, are lost. + If sink is GL_TRUE, then pixels are discarded after histogramming; + no further processing of the pixels takes place, and no drawing, + texture loading, or pixel readback will result. +

+ When target is GL_PROXY_HISTOGRAM, glHistogram computes all + state information as if the histogram table were to be redefined, + but does not actually define the new table. + If the requested histogram table is too large to be supported, then the + state information will be set to zero. + This provides a way to determine if a histogram table with the given + parameters can be supported. +

+

Notes

+ glHistogram is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if width is less than zero or is + not a power of 2. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_TABLE_TOO_LARGE is generated if target is GL_HISTOGRAM + and the histogram table specified is too large for the implementation. +

+ GL_INVALID_OPERATION is generated if glHistogram is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetHistogramParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glIndex.xml b/upstream-man-pages/man2/xhtml/glIndex.xml new file mode 100644 index 0000000..3423f59 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIndex.xml @@ -0,0 +1,44 @@ + + +glIndex

Name

glIndex — set the current color index

+

C Specification

void glIndexs(GLshort  c);
void glIndexi(GLint  c);
void glIndexf(GLfloat  c);
void glIndexd(GLdouble  c);
void glIndexub(GLubyte  c);

Parameters

c

+ Specifies the new value for the current color index. +

+

C Specification

void glIndexsv(const GLshort *  c);
void glIndexiv(const GLint *  c);
void glIndexfv(const GLfloat *  c);
void glIndexdv(const GLdouble *  c);
void glIndexubv(const GLubyte *  c);

Parameters

c

+ Specifies a pointer to a one-element array that contains + the new value for the current color index. +

Description

+ glIndex updates the current (single-valued) color index. + It takes one argument, the new value for the current color index. +

+ The current index is stored as a floating-point value. + Integer values are converted directly to floating-point values, + with no special mapping. + The initial value is 1. +

+ Index values outside the representable range of the color index buffer + are not clamped. + However, + before an index is dithered (if enabled) and written to the frame buffer, + it is converted to fixed-point format. + Any bits in the integer portion of the resulting fixed-point value + that do not correspond to bits in the frame buffer are masked out. +

Notes

+ glIndexub and glIndexubv are available only if the GL version is + 1.1 or greater. +

+ The current index can be updated at any time. + In particular, + glIndex can be called between a call to glBegin and the corresponding + call to glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_INDEX +

See Also

+ glColor, + glIndexPointer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glIndexMask.xml b/upstream-man-pages/man2/xhtml/glIndexMask.xml new file mode 100644 index 0000000..f7022ed --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIndexMask.xml @@ -0,0 +1,44 @@ + + +glIndexMask

Name

glIndexMask — control the writing of individual bits in the color index buffers

C Specification

void glIndexMask(GLuint  mask);

Parameters

mask

+ Specifies a bit mask to enable and disable the writing of individual bits + in the color index buffers. + Initially, the mask is all 1's. +

Description

+ glIndexMask controls the writing of individual bits in the color index buffers. + The least significant + n + bits of mask, + where + n + is the number of bits in a color index buffer, + specify a mask. + Where a 1 (one) appears in the mask, + it's possible to write to the corresponding bit in the color index + buffer (or buffers). + Where a 0 (zero) appears, + the corresponding bit is write-protected. +

+ This mask is used only in color index mode, + and it affects only the buffers currently selected for writing + (see glDrawBuffer). + Initially, all bits are enabled for writing. +

Errors

+ GL_INVALID_OPERATION is generated if glIndexMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_INDEX_WRITEMASK +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glIndexPointer.xml b/upstream-man-pages/man2/xhtml/glIndexPointer.xml new file mode 100644 index 0000000..90a5a2c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIndexPointer.xml @@ -0,0 +1,109 @@ + + +glIndexPointer

Name

glIndexPointer — define an array of color indexes

C Specification

void glIndexPointer(GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

type

+ Specifies the data type of each color index in the array. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_INT, + GL_FLOAT, + and GL_DOUBLE + are accepted. The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive color indexes. + If stride is 0, the color indexes are understood to + be tightly packed in the array. The initial value is 0. +

pointer

+ Specifies a pointer to the first index in the array. + The initial value is 0. +

Description

+ glIndexPointer specifies the location and data format of an array of color indexes + to use when rendering. + type specifies the data type of + each color index and stride specifies the byte stride from one + color index to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a color index array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as color index vertex array + client-side state (GL_INDEX_ARRAY_BUFFER_BINDING). +

+ When a color index array is specified, + type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the color index array, call + glEnableClientState and glDisableClientState with the argument + GL_INDEX_ARRAY. If + enabled, the color index array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. +

Notes

+ glIndexPointer is available only if the GL version is 1.1 or greater. +

+ Color indexes are not supported for interleaved vertex array formats + (see glInterleavedArrays). +

+ The color index array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glIndexPointer is not allowed between + glBegin and the corresponding glEnd, + but an error may or may not be generated. If an error is not generated, + the operation is undefined. +

+ glIndexPointer is typically implemented on the client side. +

+ Color index array parameters are client-side state and are + therefore not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. +

Errors

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_INDEX_ARRAY +

+ glGet with argument GL_INDEX_ARRAY_TYPE +

+ glGet with argument GL_INDEX_ARRAY_STRIDE +

+ glGet with argument GL_INDEX_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_INDEX_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glInitNames.xml b/upstream-man-pages/man2/xhtml/glInitNames.xml new file mode 100644 index 0000000..d19ac12 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glInitNames.xml @@ -0,0 +1,29 @@ + + +glInitNames

Name

glInitNames — initialize the name stack

C Specification

void glInitNames(  void);

Description

+ The name stack is used during selection mode to allow sets of rendering + commands to be uniquely identified. + It consists of an ordered set of unsigned integers. + glInitNames causes the name stack to be initialized to its default empty state. +

+ The name stack is always empty while the render mode is not GL_SELECT. + Calls to glInitNames while the render mode is not GL_SELECT are ignored. +

Errors

+ GL_INVALID_OPERATION is generated if glInitNames + is executed between the execution of glBegin and the corresponding execution of + glEnd. +

Associated Gets

+ glGet with argument GL_NAME_STACK_DEPTH +

+ glGet with argument GL_MAX_NAME_STACK_DEPTH +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glInterleavedArrays.xml b/upstream-man-pages/man2/xhtml/glInterleavedArrays.xml new file mode 100644 index 0000000..166ee0e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glInterleavedArrays.xml @@ -0,0 +1,95 @@ + + +glInterleavedArrays

Name

glInterleavedArrays — simultaneously specify and enable several interleaved arrays

C Specification

void glInterleavedArrays(GLenum  format,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

format

+ Specifies the type of array to enable. Symbolic constants + GL_V2F, + GL_V3F, + GL_C4UB_V2F, + GL_C4UB_V3F, + GL_C3F_V3F, + GL_N3F_V3F, + GL_C4F_N3F_V3F, + GL_T2F_V3F, + GL_T4F_V4F, + GL_T2F_C4UB_V3F, + GL_T2F_C3F_V3F, + GL_T2F_N3F_V3F, + GL_T2F_C4F_N3F_V3F, + and + GL_T4F_C4F_N3F_V4F + are accepted. +

stride

+ Specifies the offset in bytes between each aggregate array element. +

Description

+ glInterleavedArrays lets you specify and enable individual color, + normal, + texture and vertex + arrays whose elements are part of a larger aggregate array element. + For some implementations, this is more efficient than specifying the arrays + separately. +

+ If stride is 0, the aggregate elements are stored consecutively. + Otherwise, stride bytes occur between the beginning of one + aggregate array element and the beginning of the next aggregate array + element. +

+ format serves as a ``key'' + describing the extraction of individual arrays from the aggregate array. + If format contains a T, then texture coordinates are + extracted from the interleaved array. If C is present, color values + are extracted. If N is present, normal coordinates are extracted. + Vertex coordinates are always extracted. +

+ The digits 2, 3, and 4 denote how many values are extracted. + F indicates that values are extracted as floating-point values. + Colors may also be extracted as 4 unsigned bytes if 4UB follows the + C. If a color is extracted as 4 unsigned bytes, the vertex + array element which follows is located at the first possible + floating-point aligned address. +

Notes

+ glInterleavedArrays is available only if the GL version is 1.1 or greater. +

+ If glInterleavedArrays is called while compiling a display list, it is not + compiled into the list, and it is executed immediately. +

+ Execution of glInterleavedArrays is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glInterleavedArrays is typically implemented on the client side. +

+ Vertex array parameters are client-side state and are therefore not + saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and glPopClientAttrib instead. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glInterleavedArrays + only updates the texture coordinate array for the client active texture + unit. The texture coordinate state for other client texture units is not + updated, regardless of whether the client texture unit is enabled or not. +

+ Secondary color values are not supported in interleaved vertex array formats. +

Errors

+ GL_INVALID_ENUM is generated if format is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsBuffer.xml b/upstream-man-pages/man2/xhtml/glIsBuffer.xml new file mode 100644 index 0000000..d061460 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsBuffer.xml @@ -0,0 +1,28 @@ + + +glIsBuffer

Name

glIsBuffer — determine if a name corresponds to a buffer object

C Specification

GLboolean glIsBuffer(GLuint  buffer);

Parameters

buffer

+ Specifies a value that may be the name of a buffer object. +

Description

+ glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. + If buffer is zero, or is a non-zero value that is not currently the + name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. +

+ A name returned by glGenBuffers, but not yet associated with a buffer object + by calling glBindBuffer, is not the name of a buffer object. +

Notes

+ glIsBuffer is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glIsBuffer is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsEnabled.xml b/upstream-man-pages/man2/xhtml/glIsEnabled.xml new file mode 100644 index 0000000..34c38ca --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsEnabled.xml @@ -0,0 +1,386 @@ + + +glIsEnabled

Name

glIsEnabled — test whether a capability is enabled

C Specification

GLboolean glIsEnabled(GLenum  cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

Description

+ glIsEnabled returns GL_TRUE if cap is an enabled capability + and returns GL_FALSE otherwise. + Initially all capabilities except GL_DITHER are disabled; + GL_DITHER is initially enabled. +

+ The following capabilities are accepted for cap: +

+

+ Constant + + See +
+ GL_ALPHA_TEST + + glAlphaFunc +
+ GL_AUTO_NORMAL + + glEvalCoord +
+ GL_BLEND + + glBlendFunc, glLogicOp +
+ GL_CLIP_PLANEi + + glClipPlane +
+ GL_COLOR_ARRAY + + glColorPointer +
+ GL_COLOR_LOGIC_OP + + glLogicOp +
+ GL_COLOR_MATERIAL + + glColorMaterial +
+ GL_COLOR_SUM + + glSecondaryColor +
+ GL_COLOR_TABLE + + glColorTable +
+ GL_CONVOLUTION_1D + + glConvolutionFilter1D +
+ GL_CONVOLUTION_2D + + glConvolutionFilter2D +
+ GL_CULL_FACE + + glCullFace +
+ GL_DEPTH_TEST + + glDepthFunc, glDepthRange +
+ GL_DITHER + + glEnable +
+ GL_EDGE_FLAG_ARRAY + + glEdgeFlagPointer +
+ GL_FOG + + glFog +
+ GL_FOG_COORD_ARRAY + + glFogCoordPointer +
+ GL_HISTOGRAM + + glHistogram +
+ GL_INDEX_ARRAY + + glIndexPointer +
+ GL_INDEX_LOGIC_OP + + glLogicOp +
+ GL_LIGHTi + + glLightModel, glLight +
+ GL_LIGHTING + + glMaterial, glLightModel, glLight +
+ GL_LINE_SMOOTH + + glLineWidth +
+ GL_LINE_STIPPLE + + glLineStipple +
+ GL_MAP1_COLOR_4 + + glMap1 +
+ GL_MAP1_INDEX + + glMap1 +
+ GL_MAP1_NORMAL + + glMap1 +
+ GL_MAP1_TEXTURE_COORD_1 + + glMap1 +
+ GL_MAP1_TEXTURE_COORD_2 + + glMap1 +
+ GL_MAP1_TEXTURE_COORD_3 + + glMap1 +
+ GL_MAP1_TEXTURE_COORD_4 + + glMap1 +
+ GL_MAP2_COLOR_4 + + glMap2 +
+ GL_MAP2_INDEX + + glMap2 +
+ GL_MAP2_NORMAL + + glMap2 +
+ GL_MAP2_TEXTURE_COORD_1 + + glMap2 +
+ GL_MAP2_TEXTURE_COORD_2 + + glMap2 +
+ GL_MAP2_TEXTURE_COORD_3 + + glMap2 +
+ GL_MAP2_TEXTURE_COORD_4 + + glMap2 +
+ GL_MAP2_VERTEX_3 + + glMap2 +
+ GL_MAP2_VERTEX_4 + + glMap2 +
+ GL_MINMAX + + glMinmax +
+ GL_MULTISAMPLE + + glSampleCoverage +
+ GL_NORMAL_ARRAY + + glNormalPointer +
+ GL_NORMALIZE + + glNormal +
+ GL_POINT_SMOOTH + + glPointSize +
+ GL_POINT_SPRITE + + glEnable +
+ GL_POLYGON_SMOOTH + + glPolygonMode +
+ GL_POLYGON_OFFSET_FILL + + glPolygonOffset +
+ GL_POLYGON_OFFSET_LINE + + glPolygonOffset +
+ GL_POLYGON_OFFSET_POINT + + glPolygonOffset +
+ GL_POLYGON_STIPPLE + + glPolygonStipple +
+ GL_POST_COLOR_MATRIX_COLOR_TABLE + + glColorTable +
+ GL_POST_CONVOLUTION_COLOR_TABLE + + glColorTable +
+ GL_RESCALE_NORMAL + + glNormal +
+ GL_SAMPLE_ALPHA_TO_COVERAGE + + glSampleCoverage +
+ GL_SAMPLE_ALPHA_TO_ONE + + glSampleCoverage +
+ GL_SAMPLE_COVERAGE + + glSampleCoverage +
+ GL_SCISSOR_TEST + + glScissor +
+ GL_SECONDARY_COLOR_ARRAY + + glSecondaryColorPointer +
+ GL_SEPARABLE_2D + + glSeparableFilter2D +
+ GL_STENCIL_TEST + + glStencilFunc, glStencilOp +
+ GL_TEXTURE_1D + + glTexImage1D +
+ GL_TEXTURE_2D + + glTexImage2D +
+ GL_TEXTURE_3D + + glTexImage3D +
+ GL_TEXTURE_COORD_ARRAY + + glTexCoordPointer +
+ GL_TEXTURE_CUBE_MAP + + glTexImage2D +
+ GL_TEXTURE_GEN_Q + + glTexGen +
+ GL_TEXTURE_GEN_R + + glTexGen +
+ GL_TEXTURE_GEN_S + + glTexGen +
+ GL_TEXTURE_GEN_T + + glTexGen +
+ GL_VERTEX_ARRAY + + glVertexPointer +
+ GL_VERTEX_PROGRAM_POINT_SIZE + + glEnable +
+ GL_VERTEX_PROGRAM_TWO_SIDE + + glEnable +

+

Notes

+ If an error is generated, + glIsEnabled returns 0. +

+ GL_COLOR_LOGIC_OP, + GL_COLOR_ARRAY, + GL_EDGE_FLAG_ARRAY, + GL_INDEX_ARRAY, + GL_INDEX_LOGIC_OP, + GL_NORMAL_ARRAY, + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + GL_POLYGON_OFFSET_POINT, + GL_TEXTURE_COORD_ARRAY, and + GL_VERTEX_ARRAY + are available only + if the GL version is 1.1 or greater. +

+ GL_RESCALE_NORMAL, and GL_TEXTURE_3D are available only if the GL + version is 1.2 or greater. +

+ GL_MULTISAMPLE, + GL_SAMPLE_ALPHA_TO_COVERAGE, + GL_SAMPLE_ALPHA_TO_ONE, + GL_SAMPLE_COVERAGE, + GL_TEXTURE_CUBE_MAP + are available only if the GL version is 1.3 or greater. +

+ GL_FOG_COORD_ARRAY and GL_SECONDARY_COLOR_ARRAY + are available only if the GL version is 1.4 or greater. +

+ GL_POINT_SPRITE, + GL_VERTEX_PROGRAM_POINT_SIZE, and + GL_VERTEX_PROGRAM_TWO_SIDE + are available only if the GL version is 2.0 or greater. +

+ GL_COLOR_TABLE, GL_CONVOLUTION_1D, GL_CONVOLUTION_2D, + GL_HISTOGRAM, GL_MINMAX, + GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE, and + GL_SEPARABLE_2D are available only if ARB_imaging is + returned when glGet is called with GL_EXTENSIONS. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, the following + parameters return the associated value for the active texture unit: + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, + GL_TEXTURE_GEN_Q, + GL_TEXTURE_MATRIX, and + GL_TEXTURE_STACK_DEPTH. + Likewise, the following parameters return the associated value for the + active client texture unit: + GL_TEXTURE_COORD_ARRAY, + GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_TYPE. +

Errors

+ GL_INVALID_ENUM is generated if cap is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glIsEnabled + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glEnable, + glEnableClientState, + glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsList.xml b/upstream-man-pages/man2/xhtml/glIsList.xml new file mode 100644 index 0000000..4728660 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsList.xml @@ -0,0 +1,27 @@ + + +glIsList

Name

glIsList — determine if a name corresponds to a display list

C Specification

GLboolean glIsList(GLuint  list);

Parameters

list

+ Specifies a potential display list name. +

Description

+ glIsList returns GL_TRUE if list is the name + of a display list and returns GL_FALSE if it is not, or if an error occurs. +

+ A name returned by glGenLists, but not yet associated with a display list + by calling glNewList, is not the name of a display list. +

Errors

+ GL_INVALID_OPERATION is generated if glIsList + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsProgram.xml b/upstream-man-pages/man2/xhtml/glIsProgram.xml new file mode 100644 index 0000000..dc74ef5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsProgram.xml @@ -0,0 +1,47 @@ + + +glIsProgram

Name

glIsProgram — Determines if a name corresponds to a program object

C Specification

GLboolean glIsProgram(GLuint  program);

Parameters

program

Specifies a potential program object.

Description

glIsProgram returns + GL_TRUE if program + is the name of a program object previously created with + glCreateProgram + and not yet deleted with glDeleteProgram. + If program is zero or a non-zero value that + is not the name of a program object, or if an error occurs, + glIsProgram returns GL_FALSE.

Notes

glIsProgram is available only if the + GL version is 2.0 or greater.

No error is generated if program is + not a valid program object name.

A program object marked for deletion with glDeleteProgram + but still in use as part of current rendering state is still considered + a program object and glIsProgram will return GL_TRUE.

Errors

GL_INVALID_OPERATION is generated if + glIsProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with arguments program and the index of + an active attribute variable

glGetActiveUniform + with arguments program and the index of + an active uniform variable

glGetAttachedShaders + with argument program

glGetAttribLocation + with arguments program and the name of an + attribute variable

glGetProgram + with arguments program and the parameter + to be queried

glGetProgramInfoLog + with argument program

glGetUniform + with arguments program and the location + of a uniform variable

glGetUniformLocation + with arguments program and the name of a + uniform variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsQuery.xml b/upstream-man-pages/man2/xhtml/glIsQuery.xml new file mode 100644 index 0000000..7ea57f1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsQuery.xml @@ -0,0 +1,28 @@ + + +glIsQuery

Name

glIsQuery — determine if a name corresponds to a query object

C Specification

GLboolean glIsQuery(GLuint  id);

Parameters

id

+ Specifies a value that may be the name of a query object. +

Description

+ glIsQuery returns GL_TRUE if id is currently the name of a query object. + If id is zero, or is a non-zero value that is not currently the + name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. +

+ A name returned by glGenQueries, but not yet associated with a query object + by calling glBeginQuery, is not the name of a query object. +

Notes

+ glIsQuery is available only if the GL version is 1.5 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glIsQuery is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsShader.xml b/upstream-man-pages/man2/xhtml/glIsShader.xml new file mode 100644 index 0000000..f85ae1a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsShader.xml @@ -0,0 +1,36 @@ + + +glIsShader

Name

glIsShader — Determines if a name corresponds to a shader object

C Specification

GLboolean glIsShader(GLuint  shader);

Parameters

shader

Specifies a potential shader object.

Description

glIsShader returns + GL_TRUE if shader is + the name of a shader object previously created with + glCreateShader + and not yet deleted with glDeleteShader. + If shader is + zero or a non-zero value that is not the name of a shader + object, or if an error occurs, glIsShader returns + GL_FALSE.

Notes

glIsShader is available only if the + GL version is 2.0 or greater.

No error is generated if shader is + not a valid shader object name.

A shader object marked for deletion with glDeleteShader + but still attached to a program object is still considered + a shader object and glIsShader will return GL_TRUE.

Errors

GL_INVALID_OPERATION is generated if + glIsShader is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetAttachedShaders + with a valid program object

glGetShader + with arguments shader and a parameter to + be queried

glGetShaderInfoLog + with argument object

glGetShaderSource + with argument object

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glIsTexture.xml b/upstream-man-pages/man2/xhtml/glIsTexture.xml new file mode 100644 index 0000000..1657956 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glIsTexture.xml @@ -0,0 +1,35 @@ + + +glIsTexture

Name

glIsTexture — determine if a name corresponds to a texture

C Specification

GLboolean glIsTexture(GLuint  texture);

Parameters

texture

+ Specifies a value that may be the name of a texture. +

Description

+ glIsTexture returns GL_TRUE if texture is currently the name of a texture. + If texture is zero, or is a non-zero value that is not currently the + name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. +

+ A name returned by glGenTextures, but not yet associated with a texture + by calling glBindTexture, is not the name of a texture. +

Notes

+ glIsTexture is available only if the GL version is 1.1 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glIsTexture is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLight.xml b/upstream-man-pages/man2/xhtml/glLight.xml new file mode 100644 index 0000000..5365373 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLight.xml @@ -0,0 +1,261 @@ + + +glLight

Name

glLight — set light source parameters

C Specification

void glLightf(GLenum  light,
 GLenum  pname,
 GLfloat  param);
void glLighti(GLenum  light,
 GLenum  pname,
 GLint  param);

Parameters

light

+ Specifies a light. + The number of lights depends on the implementation, + but at least eight lights are supported. + They are identified by symbolic names of the form GL_LIGHT + i, + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. +

pname

+ Specifies a single-valued light source parameter for light. + GL_SPOT_EXPONENT, + GL_SPOT_CUTOFF, + GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION, and + GL_QUADRATIC_ATTENUATION are accepted. +

param

+ Specifies the value that parameter pname of light source light + will be set to. +

C Specification

void glLightfv(GLenum  light,
 GLenum  pname,
 const GLfloat *  params);
void glLightiv(GLenum  light,
 GLenum  pname,
 const GLint *  params);

Parameters

light

+ Specifies a light. + The number of lights depends on the implementation, but + at least eight lights are supported. + They are identified by symbolic names of the form GL_LIGHT + i, + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. +

pname

+ Specifies a light source parameter for light. + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_POSITION, + GL_SPOT_CUTOFF, + GL_SPOT_DIRECTION, + GL_SPOT_EXPONENT, + GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION, and + GL_QUADRATIC_ATTENUATION are accepted. +

params

+ Specifies a pointer to the value or values that parameter pname + of light source light will be set to. +

Description

+ glLight sets the values of individual light source parameters. + light names the light and is a symbolic name of the form GL_LIGHT + i, + where i ranges from 0 to the value of GL_MAX_LIGHTS - 1. + pname specifies one of ten light source parameters, + again by symbolic name. + params is either a single value or a pointer to an array that contains + the new values. +

+ To enable and disable lighting calculation, call glEnable + and glDisable with argument GL_LIGHTING. Lighting is + initially disabled. + When it is enabled, + light sources that are enabled contribute to the lighting calculation. + Light source + i + is enabled and disabled using glEnable and + glDisable with argument GL_LIGHT + i. +

+ The ten light parameters are as follows: +

GL_AMBIENT

+ params contains four integer or floating-point values that specify + the ambient RGBA intensity of the light. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial ambient light intensity is (0, 0, 0, 1). +

GL_DIFFUSE

+ params contains four integer or floating-point values that specify + the diffuse RGBA intensity of the light. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 1). +

GL_SPECULAR

+ params contains four integer or floating-point values that specify + the specular RGBA intensity of the light. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial value + for GL_LIGHT0 is (1, 1, 1, 1); for other lights, the + initial value is (0, 0, 0, 1). +

GL_POSITION

+ params contains four integer or floating-point values that specify + the position of the light in homogeneous object coordinates. + Both integer and floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. +

+ The position is transformed by the modelview matrix when + glLight is called (just as if it were a point), + and it is stored in eye coordinates. + If the + w + component of the position is 0, + the light is treated as a directional source. + Diffuse and specular lighting calculations take the light's direction, + but not its actual position, + into account, + and attenuation is disabled. + Otherwise, + diffuse and specular lighting calculations are based on the actual location + of the light in eye coordinates, + and attenuation is enabled. + The initial position is (0, 0, 1, 0); + thus, the initial light source is directional, + parallel to, and in the direction of the + + + + - + z + + + axis. +

GL_SPOT_DIRECTION

+ params contains three integer or floating-point values that specify + the direction of the light in homogeneous object coordinates. + Both integer and floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. +

+ The spot direction is transformed by the upper 3x3 of the modelview matrix when + glLight is called, + and it is stored in eye coordinates. + It is significant only when GL_SPOT_CUTOFF is not 180, + which it is initially. + The initial direction is + + + + 0 + 0 + -1 + + . +

GL_SPOT_EXPONENT

+ params is a single integer or floating-point value that specifies + the intensity distribution of the light. + Integer and floating-point values are mapped directly. + Only values in the range + + + + 0 + 128 + + + are accepted. +

+ Effective light intensity is attenuated by the cosine of the angle between + the direction of the light and the direction from the light to the vertex + being lighted, + raised to the power of the spot exponent. + Thus, higher spot exponents result in a more focused light source, + regardless of the spot cutoff angle (see GL_SPOT_CUTOFF, next paragraph). + The initial spot exponent is 0, + resulting in uniform light distribution. +

GL_SPOT_CUTOFF

+ params is a single integer or floating-point value that specifies + the maximum spread angle of a light source. + Integer and floating-point values are mapped directly. + Only values in the range + + + + 0 + 90 + + + and the special value 180 + are accepted. + If the angle between the direction of the light and the direction from the + light to the vertex being lighted is greater than the spot cutoff angle, + the light is completely masked. + Otherwise, its intensity is controlled by the spot exponent and the + attenuation factors. + The initial spot cutoff is 180, + resulting in uniform light distribution. +

GL_CONSTANT_ATTENUATION
GL_LINEAR_ATTENUATION
GL_QUADRATIC_ATTENUATION

+ params is a single integer or floating-point value that specifies + one of the three light attenuation factors. + Integer and floating-point values are mapped directly. + Only nonnegative values are accepted. + If the light is positional, + rather than directional, + its intensity is attenuated by the reciprocal of the sum of the constant + factor, the linear factor times the distance between the light + and the vertex being lighted, + and the quadratic factor times the square of the same distance. + The initial attenuation factors are (1, 0, 0), + resulting in no attenuation. +

Notes

+ It is always the case that GL_LIGHT + i + = GL_LIGHT0 + + i. +

Errors

+ GL_INVALID_ENUM is generated if either light or pname + is not an accepted value. +

+ GL_INVALID_VALUE is generated if a spot exponent value is specified + outside the range + + + + 0 + 128 + + , + or if spot cutoff is specified outside the range + + + + 0 + 90 + + + (except for the + special value 180), + or if a negative attenuation factor is specified. +

+ GL_INVALID_OPERATION is generated if glLight is executed between + the execution of + glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGetLight +

+ glIsEnabled with argument GL_LIGHTING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLightModel.xml b/upstream-man-pages/man2/xhtml/glLightModel.xml new file mode 100644 index 0000000..6ecef63 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLightModel.xml @@ -0,0 +1,140 @@ + + +glLightModel

Name

glLightModel — set the lighting model parameters

C Specification

void glLightModelf(GLenum  pname,
 GLfloat  param);
void glLightModeli(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies a single-valued lighting model parameter. + GL_LIGHT_MODEL_LOCAL_VIEWER, + GL_LIGHT_MODEL_COLOR_CONTROL, and + GL_LIGHT_MODEL_TWO_SIDE are accepted. +

param

+ Specifies the value that param will be set to. +

C Specification

void glLightModelfv(GLenum  pname,
 const GLfloat *  params);
void glLightModeliv(GLenum  pname,
 const GLint *  params);

Parameters

pname

+ Specifies a lighting model parameter. + GL_LIGHT_MODEL_AMBIENT, + GL_LIGHT_MODEL_COLOR_CONTROL, + GL_LIGHT_MODEL_LOCAL_VIEWER, and + GL_LIGHT_MODEL_TWO_SIDE are accepted. +

params

+ Specifies a pointer to the value or values that params will be set to. +

Description

+ glLightModel sets the lighting model parameter. + pname names a parameter and params gives the new value. + There are three lighting model parameters: +

GL_LIGHT_MODEL_AMBIENT

+

+ params contains four integer or floating-point values that specify + the ambient RGBA intensity of the entire scene. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial ambient scene intensity is (0.2, 0.2, 0.2, 1.0). +

GL_LIGHT_MODEL_COLOR_CONTROL

+

+ params must be either GL_SEPARATE_SPECULAR_COLOR or + GL_SINGLE_COLOR. + GL_SINGLE_COLOR specifies that a single color is generated from the + lighting computation for a vertex. GL_SEPARATE_SPECULAR_COLOR + specifies that the specular color computation of lighting be stored + separately from the remainder of the lighting computation. The specular + color is summed into the generated fragment's color after the application + of texture mapping (if enabled). The initial value is GL_SINGLE_COLOR. +

GL_LIGHT_MODEL_LOCAL_VIEWER

+

+ params is a single integer or floating-point value that specifies + how specular reflection angles are computed. + If params is 0 (or 0.0), specular reflection angles take the + view direction to be parallel to and in the direction of the -z axis, + regardless of the location of the vertex in eye coordinates. + Otherwise, specular reflections are computed from the origin + of the eye coordinate system. + The initial value is 0. +

GL_LIGHT_MODEL_TWO_SIDE

+

+ params is a single integer or floating-point value that specifies + whether one- or two-sided lighting calculations are done for polygons. + It has no effect on the lighting calculations for points, + lines, + or bitmaps. + If params is 0 (or 0.0), one-sided lighting is specified, + and only the front material parameters are used in the + lighting equation. + Otherwise, two-sided lighting is specified. + In this case, vertices of back-facing polygons are lighted using the + back material parameters + and have their normals reversed before the lighting equation is evaluated. + Vertices of front-facing polygons are always lighted using the + front material parameters, + with no change to their normals. The initial value is 0. +

+ In RGBA mode, the lighted color of a vertex is the sum of + the material emission intensity, + the product of the material ambient reflectance and the lighting model full-scene + ambient intensity, + and the contribution of each enabled light source. + Each light source contributes the sum of three terms: + ambient, diffuse, and specular. + The ambient light source contribution is the product of the material ambient + reflectance and the light's ambient intensity. + The diffuse light source contribution is the product of the material diffuse + reflectance, + the light's diffuse intensity, + and the dot product of the vertex's normal with the normalized vector from + the vertex to the light source. + The specular light source contribution is the product of the material specular + reflectance, + the light's specular intensity, + and the dot product of the normalized vertex-to-eye and vertex-to-light + vectors, + raised to the power of the shininess of the material. + All three light source contributions are attenuated equally based on + the distance from the vertex to the light source and on light source + direction, spread exponent, and spread cutoff angle. + All dot products are replaced with 0 if they evaluate to a negative value. +

+ The alpha component of the resulting lighted color is set to the alpha value + of the material diffuse reflectance. +

+ In color index mode, + the value of the lighted index of a vertex ranges from the ambient + to the specular values passed to glMaterial using GL_COLOR_INDEXES. + Diffuse and specular coefficients, + computed with a (.30, .59, .11) weighting of the lights' colors, + the shininess of the material, + and the same reflection and attenuation equations as in the RGBA case, + determine how much above ambient the resulting index is. +

Notes

+ GL_LIGHT_MODEL_COLOR_CONTROL is available only if the GL version is + 1.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_ENUM is generated if pname is + GL_LIGHT_MODEL_COLOR_CONTROL and params is not one of + GL_SINGLE_COLOR or GL_SEPARATE_SPECULAR_COLOR. +

+ GL_INVALID_OPERATION is generated if glLightModel is executed between + the execution of glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_LIGHT_MODEL_AMBIENT +

+ glGet with argument GL_LIGHT_MODEL_COLOR_CONTROL +

+ glGet with argument GL_LIGHT_MODEL_LOCAL_VIEWER +

+ glGet with argument GL_LIGHT_MODEL_TWO_SIDE +

+ glIsEnabled with argument GL_LIGHTING +

See Also

+ glLight, + glMaterial +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLineStipple.xml b/upstream-man-pages/man2/xhtml/glLineStipple.xml new file mode 100644 index 0000000..3140224 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLineStipple.xml @@ -0,0 +1,101 @@ + + +glLineStipple

Name

glLineStipple — specify the line stipple pattern

C Specification

void glLineStipple(GLint  factor,
 GLushort  pattern);

Parameters

factor

+ Specifies a multiplier for each bit in the line stipple pattern. + If factor is 3, + for example, + each bit in the pattern is used three times + before the next bit in the pattern is used. + factor is clamped to the range [1, 256] and defaults to 1. +

pattern

+ Specifies a 16-bit integer whose bit pattern determines + which fragments of a line will be drawn when the line is rasterized. + Bit zero is used first; the default pattern is all 1's. +

Description

+ Line stippling masks out certain fragments produced by rasterization; + those fragments will not be drawn. + The masking is achieved by using three parameters: + the 16-bit line stipple pattern pattern, + the repeat count factor, + and an integer stipple counter + s. +

+ Counter + s + is reset to 0 whenever glBegin is called + and before each line segment of a glBegin(GL_LINES)/glEnd + sequence is generated. + It is incremented after each fragment of a unit width aliased line segment + is generated + or after each + i + fragments of an + i + width line segment are generated. + The + i + fragments associated with count + s + are masked out if +

+ pattern bit + + + + + + s + factor + + + % + 16 + + +

+ is 0, otherwise these fragments are sent to the frame buffer. + Bit zero of pattern is the least significant bit. +

+ Antialiased lines are treated as a sequence of + + + + 1 + × + width + + + rectangles + for purposes of stippling. + Whether rectangle + s + is rasterized or not depends on the fragment rule + described for aliased lines, + counting rectangles rather than groups of fragments. +

+ To enable and disable line stippling, call glEnable and glDisable + with argument GL_LINE_STIPPLE. + When enabled, + the line stipple pattern is applied as described above. + When disabled, + it is as if the pattern were all 1's. + Initially, line stippling is disabled. +

Errors

+ GL_INVALID_OPERATION is generated if glLineStipple + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_LINE_STIPPLE_PATTERN +

+ glGet with argument GL_LINE_STIPPLE_REPEAT +

+ glIsEnabled with argument GL_LINE_STIPPLE +

See Also

+ glLineWidth, + glPolygonStipple +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLineWidth.xml b/upstream-man-pages/man2/xhtml/glLineWidth.xml new file mode 100644 index 0000000..5a3337a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLineWidth.xml @@ -0,0 +1,96 @@ + + +glLineWidth

Name

glLineWidth — specify the width of rasterized lines

C Specification

void glLineWidth(GLfloat  width);

Parameters

width

+ Specifies the width of rasterized lines. + The initial value is 1. +

Description

+ glLineWidth specifies the rasterized width of both aliased and antialiased + lines. + Using a line width other than 1 has different effects, + depending on whether line antialiasing is enabled. + To enable and disable line antialiasing, call + glEnable and glDisable + with argument GL_LINE_SMOOTH. Line antialiasing is initially + disabled. +

+ If line antialiasing is disabled, + the actual width is determined by rounding the supplied width + to the nearest integer. + (If the rounding results in the value 0, + it is as if the line width were 1.) + If + + + + + + Δ + x + + + >= + + + Δ + y + + + + , + i pixels are filled in each column that is rasterized, + where i is the rounded value of width. + Otherwise, + i pixels are filled in each row that is rasterized. +

+ If antialiasing is enabled, + line rasterization produces a fragment for each pixel square + that intersects the region lying within the rectangle having width + equal to the current line width, + length equal to the actual length of the line, + and centered on the mathematical line segment. + The coverage value for each fragment is the window coordinate area + of the intersection of the rectangular region with the corresponding + pixel square. + This value is saved and used in the final rasterization step. +

+ Not all widths can be supported when line antialiasing is enabled. If an + unsupported width is requested, the nearest supported width is used. + Only width 1 is guaranteed to be supported; others depend on the + implementation. Likewise, there is a range for aliased line widths as well. + To query the range of supported widths and the size + difference between supported widths within the range, call glGet + with arguments GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. +

Notes

+ The line width specified by glLineWidth is always returned when GL_LINE_WIDTH + is queried. + Clamping and rounding for aliased and antialiased lines have no effect on the specified value. +

+ Nonantialiased line width may be clamped to an implementation-dependent maximum. Call glGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the maximum width. +

+ In OpenGL 1.2, the tokens GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY were replaced by GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. The old names are retained for backward compatibility, but should not be used in new code. +

Errors

+ GL_INVALID_VALUE is generated if width is less than or equal to 0. +

+ GL_INVALID_OPERATION is generated if glLineWidth + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_LINE_WIDTH +

+ glGet with argument GL_ALIASED_LINE_WIDTH_RANGE +

+ glGet with argument GL_SMOOTH_LINE_WIDTH_RANGE +

+ glGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY +

+ glIsEnabled with argument GL_LINE_SMOOTH +

See Also

+ glEnable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLinkProgram.xml b/upstream-man-pages/man2/xhtml/glLinkProgram.xml new file mode 100644 index 0000000..8613e39 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLinkProgram.xml @@ -0,0 +1,117 @@ + + +glLinkProgram

Name

glLinkProgram — Links a program object

C Specification

void glLinkProgram(GLuint  program);

Parameters

program

Specifies the handle of the program object to be linked.

Description

glLinkProgram links the program + object specified by program. If any + shader objects of type GL_VERTEX_SHADER are + attached to program, they will be used to + create an executable that will run on the programmable vertex + processor. If any shader objects of type + GL_FRAGMENT_SHADER are attached to + program, they will be used to create an + executable that will run on the programmable fragment + processor.

The status of the link operation will be stored as part of + the program object's state. This value will be set to + GL_TRUE if the program object was linked + without errors and is ready for use, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_LINK_STATUS.

As a result of a successful link operation, all active + user-defined uniform variables belonging to + program will be initialized to 0, and + each of the program object's active uniform variables will be + assigned a location that can be queried by calling + glGetUniformLocation. + Also, any active user-defined attribute variables that have not + been bound to a generic vertex attribute index will be bound to + one at this time.

Linking of a program object can fail for a number of + reasons as specified in the OpenGL Shading Language + Specification. The following lists some of the + conditions that will cause a link error.

  • The number of active attribute variables supported + by the implementation has been exceeded.

  • The storage limit for uniform variables has been + exceeded.

  • The number of active uniform variables supported + by the implementation has been exceeded.

  • The main function is missing + for the vertex shader or the fragment shader.

  • A varying variable actually used in the fragment + shader is not declared in the same way (or is not + declared at all) in the vertex shader.

  • A reference to a function or variable name is + unresolved.

  • A shared global is declared with two different + types or two different initial values.

  • One or more of the attached shader objects has not + been successfully compiled.

  • Binding a generic attribute matrix caused some + rows of the matrix to fall outside the allowed maximum + of GL_MAX_VERTEX_ATTRIBS.

  • Not enough contiguous vertex attribute slots could + be found to bind attribute matrices.

When a program object has been successfully linked, the + program object can be made part of current state by calling + glUseProgram. + Whether or not the link operation was successful, the program + object's information log will be overwritten. The information + log can be retrieved by calling + glGetProgramInfoLog.

glLinkProgram will also install the + generated executables as part of the current rendering state if + the link operation was successful and the specified program + object is already currently in use as a result of a previous + call to + glUseProgram. + If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE , but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked.

If program contains shader objects + of type GL_VERTEX_SHADER but does not + contain shader objects of type + GL_FRAGMENT_SHADER, the vertex shader will + be linked against the implicit interface for fixed functionality + fragment processing. Similarly, if + program contains shader objects of type + GL_FRAGMENT_SHADER but it does not contain + shader objects of type GL_VERTEX_SHADER, + the fragment shader will be linked against the implicit + interface for fixed functionality vertex processing.

The program object's information log is updated and the + program is generated at the time of the link operation. After + the link operation, applications are free to modify attached + shader objects, compile attached shader objects, detach shader + objects, delete shader objects, and attach additional shader + objects. None of these operations affects the information log or + the program that is part of the program object.

Notes

glLinkProgram + is available only if the GL version is 2.0 or greater.

If the link operation is unsuccessful, any information about a previous link operation on program + is lost (i.e., a failed link does not restore the old state of program + ). Certain information can still be retrieved from program + even after an unsuccessful link operation. See for instance glGetActiveAttrib + and glGetActiveUniform.

Errors

GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL.

GL_INVALID_OPERATION + is generated if program + is not a program object.

GL_INVALID_OPERATION + is generated if glLinkProgram + is executed between the execution of glBegin + and the corresponding execution of glEnd.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with argument program + and the index of an active attribute variable

glGetActiveUniform + with argument program + and the index of an active uniform variable

glGetAttachedShaders + with argument program

glGetAttribLocation + with argument program + and an attribute variable name

glGetProgram + with arguments program + and GL_LINK_STATUS

glGetProgramInfoLog + with argument program

glGetUniform + with argument program + and a uniform variable location

glGetUniformLocation + with argument program + and a uniform variable name

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glListBase.xml b/upstream-man-pages/man2/xhtml/glListBase.xml new file mode 100644 index 0000000..da186f4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glListBase.xml @@ -0,0 +1,25 @@ + + +glListBase

Name

glListBase — set the display-list base for glCallLists

C Specification

void glListBase(GLuint  base);

Parameters

base

+ Specifies an integer offset that will be added to glCallLists + offsets to generate display-list names. + The initial value is 0. +

Description

+ glCallLists specifies an array of offsets. + Display-list names are generated by adding base to each offset. + Names that reference valid display lists are executed; + the others are ignored. +

Errors

+ GL_INVALID_OPERATION is generated if glListBase + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_LIST_BASE +

See Also

+ glCallLists +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLoadIdentity.xml b/upstream-man-pages/man2/xhtml/glLoadIdentity.xml new file mode 100644 index 0000000..152b40b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLoadIdentity.xml @@ -0,0 +1,103 @@ + + +glLoadIdentity

Name

glLoadIdentity — replace the current matrix with the identity matrix

C Specification

void glLoadIdentity(  void);

Description

+ glLoadIdentity replaces the current matrix with the identity matrix. + It is semantically equivalent to calling glLoadMatrix + with the identity matrix +

+

+

+ + + + + + + 1 + + + 0 + + + 0 + + + 0 + + + + + 0 + + + 1 + + + 0 + + + 0 + + + + + 0 + + + 0 + + + 1 + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + +

+

+

+ but in some cases it is more efficient. +

Errors

+ GL_INVALID_OPERATION is generated if glLoadIdentity + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLoadMatrix.xml b/upstream-man-pages/man2/xhtml/glLoadMatrix.xml new file mode 100644 index 0000000..6b93c06 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLoadMatrix.xml @@ -0,0 +1,370 @@ + + +glLoadMatrix

Name

glLoadMatrix — replace the current matrix with the specified matrix

C Specification

void glLoadMatrixd(const GLdouble *  m);
void glLoadMatrixf(const GLfloat *  m);

Parameters

m

+ Specifies a pointer to 16 consecutive values, which are used as the + elements of a + + + + 4 + × + 4 + + + column-major matrix. +

Description

+ glLoadMatrix replaces the current matrix with the one whose elements are specified by + m. + The current matrix is the projection matrix, + modelview matrix, + or texture matrix, + depending on the current matrix mode + (see glMatrixMode). +

+ The current matrix, M, defines a transformation of coordinates. + For instance, assume M refers to the modelview matrix. + If + + + + v + = + + + v + ⁡ + + 0 + + + + v + ⁡ + + 1 + + + + v + ⁡ + + 2 + + + + v + ⁡ + + 3 + + + + + + is the set of object coordinates + of a vertex, + and m points to an array of + + + 16 + + single- or double-precision + floating-point values + + + + m + = + + + m + ⁡ + + 0 + + + + m + ⁡ + + 1 + + + ... + + m + ⁡ + + 15 + + + + + , + then the modelview transformation + + + + M + ⁡ + + v + + + + does the following: +

+

+ + + + M + ⁡ + + v + + + = + + + + + + + m + ⁡ + + 0 + + + + + + m + ⁡ + + 4 + + + + + + m + ⁡ + + 8 + + + + + + m + ⁡ + + 12 + + + + + + + + m + ⁡ + + 1 + + + + + + m + ⁡ + + 5 + + + + + + m + ⁡ + + 9 + + + + + + m + ⁡ + + 13 + + + + + + + + m + ⁡ + + 2 + + + + + + m + ⁡ + + 6 + + + + + + m + ⁡ + + 10 + + + + + + m + ⁡ + + 14 + + + + + + + + m + ⁡ + + 3 + + + + + + m + ⁡ + + 7 + + + + + + m + ⁡ + + 11 + + + + + + m + ⁡ + + 15 + + + + + + + × + + + + + + v + ⁡ + + 0 + + + + + + + + v + ⁡ + + 1 + + + + + + + + v + ⁡ + + 2 + + + + + + + + v + ⁡ + + 3 + + + + + + + + +

+

+

+ Projection and texture transformations are similarly defined. +

Notes

+ While the elements of the matrix may be specified with + single or double precision, the GL implementation may + store or operate on these values in less than single + precision. +

Errors

+ GL_INVALID_OPERATION is generated if glLoadMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLoadName.xml b/upstream-man-pages/man2/xhtml/glLoadName.xml new file mode 100644 index 0000000..40292b1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLoadName.xml @@ -0,0 +1,34 @@ + + +glLoadName

Name

glLoadName — load a name onto the name stack

C Specification

void glLoadName(GLuint  name);

Parameters

name

+ Specifies a name that will replace the top value on the name stack. +

Description

+ The name stack is used during selection mode to allow sets of rendering + commands to be uniquely identified. + It consists of an ordered set of unsigned integers and is initially empty. +

+ glLoadName causes name to replace the value on the top of the name stack. +

+ The name stack is always empty while the render mode is not GL_SELECT. + Calls to glLoadName while the render mode is not GL_SELECT are ignored. +

Errors

+ GL_INVALID_OPERATION is generated if glLoadName is called while the + name stack is empty. +

+ GL_INVALID_OPERATION is generated if glLoadName is executed between + the execution of glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_NAME_STACK_DEPTH +

+ glGet with argument GL_MAX_NAME_STACK_DEPTH +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLoadTransposeMatrix.xml b/upstream-man-pages/man2/xhtml/glLoadTransposeMatrix.xml new file mode 100644 index 0000000..932fbc3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLoadTransposeMatrix.xml @@ -0,0 +1,387 @@ + + +glLoadTransposeMatrix

Name

glLoadTransposeMatrix — replace the current matrix with the specified row-major ordered matrix

C Specification

void glLoadTransposeMatrixd(const GLdouble *  m);
void glLoadTransposeMatrixf(const GLfloat *  m);

Parameters

m

+ Specifies a pointer to 16 consecutive values, which are used as the + elements of a + + + + 4 + × + 4 + + + row-major matrix. +

Description

+ glLoadTransposeMatrix replaces the current matrix with the one whose elements are specified by + m. + The current matrix is the projection matrix, + modelview matrix, + or texture matrix, + depending on the current matrix mode + (see glMatrixMode). +

+ The current matrix, M, defines a transformation of coordinates. + For instance, assume M refers to the modelview matrix. + If + + + + v + = + + + v + ⁡ + + 0 + + + + v + ⁡ + + 1 + + + + v + ⁡ + + 2 + + + + v + ⁡ + + 3 + + + + + + is the set of object coordinates + of a vertex, + and m points to an array of + + + 16 + + single- or double-precision + floating-point values + + + + m + = + + + m + ⁡ + + 0 + + + + m + ⁡ + + 1 + + + ... + + m + ⁡ + + 15 + + + + + , + then the modelview transformation + + + + M + ⁡ + + v + + + + does the following: +

+

+ + + + M + ⁡ + + v + + + = + + + + + + + m + ⁡ + + 0 + + + + + + m + ⁡ + + 1 + + + + + + m + ⁡ + + 2 + + + + + + m + ⁡ + + 3 + + + + + + + + m + ⁡ + + 4 + + + + + + m + ⁡ + + 5 + + + + + + m + ⁡ + + 6 + + + + + + m + ⁡ + + 7 + + + + + + + + m + ⁡ + + 8 + + + + + + m + ⁡ + + 9 + + + + + + m + ⁡ + + 10 + + + + + + m + ⁡ + + 11 + + + + + + + + m + ⁡ + + 12 + + + + + + m + ⁡ + + 13 + + + + + + m + ⁡ + + 14 + + + + + + m + ⁡ + + 15 + + + + + + + × + + + + + + v + ⁡ + + 0 + + + + + + + + v + ⁡ + + 1 + + + + + + + + v + ⁡ + + 2 + + + + + + + + v + ⁡ + + 3 + + + + + + + + +

+

+

+ Projection and texture transformations are similarly defined. +

+ Calling glLoadTransposeMatrix with matrix + M + is identical in operation to + glLoadMatrix with + + + M + T + + , + where + T + represents the transpose. +

Notes

+ glLoadTransposeMatrix is available only if the GL version is 1.3 or greater. +

+ While the elements of the matrix may be specified with + single or double precision, the GL implementation may + store or operate on these values in less than single + precision. +

Errors

+ GL_INVALID_OPERATION is generated if glLoadTransposeMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glLogicOp.xml b/upstream-man-pages/man2/xhtml/glLogicOp.xml new file mode 100644 index 0000000..d28178e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glLogicOp.xml @@ -0,0 +1,140 @@ + + +glLogicOp

Name

glLogicOp — specify a logical pixel operation for color index rendering

C Specification

void glLogicOp(GLenum  opcode);

Parameters

opcode

+ Specifies a symbolic constant that selects a logical operation. + The following symbols are accepted: + GL_CLEAR, + GL_SET, + GL_COPY, + GL_COPY_INVERTED, + GL_NOOP, + GL_INVERT, + GL_AND, + GL_NAND, + GL_OR, + GL_NOR, + GL_XOR, + GL_EQUIV, + GL_AND_REVERSE, + GL_AND_INVERTED, + GL_OR_REVERSE, and + GL_OR_INVERTED. The initial value is GL_COPY. +

Description

+ glLogicOp specifies a logical operation that, + when enabled, + is applied between the incoming color index or RGBA color + and the color index or RGBA color at the corresponding location in the + frame buffer. + To enable or disable the logical operation, call + glEnable and glDisable + using the symbolic constant GL_COLOR_LOGIC_OP for RGBA mode or + GL_INDEX_LOGIC_OP for color index mode. The initial value is + disabled for both operations. +

+

+ Opcode + + Resulting Operation +
+ GL_CLEAR + + 0 +
+ GL_SET + + 1 +
+ GL_COPY + + s +
+ GL_COPY_INVERTED + + ~s +
+ GL_NOOP + + d +
+ GL_INVERT + + ~d +
+ GL_AND + + s & d +
+ GL_NAND + + ~(s & d) +
+ GL_OR + + s | d +
+ GL_NOR + + ~(s | d) +
+ GL_XOR + + s ^ d +
+ GL_EQUIV + + ~(s ^ d) +
+ GL_AND_REVERSE + + s & ~d +
+ GL_AND_INVERTED + + ~s & d +
+ GL_OR_REVERSE + + s | ~d +
+ GL_OR_INVERTED + + ~s | d +

+ opcode is a symbolic constant chosen from the list above. + In the explanation of the logical operations, + s represents the incoming color index and + d represents the index in the frame buffer. + Standard C-language operators are used. + As these bitwise operators suggest, + the logical operation is applied independently to each bit pair of the + source and destination indices or colors. +

Notes

+ Color index logical operations are always supported. RGBA logical + operations are supported only if the GL version is 1.1 or greater. +

+ When more than one RGBA color or index buffer is enabled for drawing, + logical operations are performed separately for each enabled buffer, + using for the destination value the contents of that buffer + (see glDrawBuffer). +

Errors

+ GL_INVALID_ENUM is generated if opcode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glLogicOp + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_LOGIC_OP_MODE. +

+ glIsEnabled with argument GL_COLOR_LOGIC_OP or GL_INDEX_LOGIC_OP. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMap1.xhtml b/upstream-man-pages/man2/xhtml/glMap1.xhtml new file mode 100644 index 0000000..4fa031b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMap1.xhtml @@ -0,0 +1,444 @@ + + +glMap1

Name

glMap1 — define a one-dimensional evaluator

C Specification

void glMap1f(GLenum  target,
 GLfloat  u1,
 GLfloat  u2,
 GLint  stride,
 GLint  order,
 const GLfloat *  points);
void glMap1d(GLenum  target,
 GLdouble  u1,
 GLdouble  u2,
 GLint  stride,
 GLint  order,
 const GLdouble *  points);

Parameters

target

+ Specifies the kind of values that are generated by the evaluator. + Symbolic constants + GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4, + GL_MAP1_INDEX, + GL_MAP1_COLOR_4, + GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, and + GL_MAP1_TEXTURE_COORD_4 are accepted. +

u1, u2

+ Specify a linear mapping of + u, + as presented to glEvalCoord1, + to + + + û + , + the variable that is evaluated by the equations specified by this command. +

stride

+ Specifies the number of floats or doubles between + the beginning of one control point and the beginning of the next one + in the data structure referenced in points. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. +

order

+ Specifies the number of control points. + Must be positive. +

points

+ Specifies a pointer to the array of control points. +

Description

+ Evaluators provide a way to use polynomial or rational polynomial mapping + to produce vertices, + normals, + texture coordinates, + and colors. + The values produced by an evaluator are sent to further stages + of GL processing just as if they had been presented using + glVertex, + glNormal, + glTexCoord, and + glColor commands, + except that the generated values do not update the current normal, + texture coordinates, + or color. +

+ All polynomial or rational polynomial splines of any degree + (up to the maximum degree supported by the GL implementation) + can be described using evaluators. + These include almost all splines used in computer graphics: B-splines, + Bezier curves, Hermite splines, and so on. +

+ Evaluators define curves based on Bernstein polynomials. + Define + + + + p + ⁡ + + û + + + + as +

+

+ + + + p + ⁡ + + û + + + = + + + Σ + + i + = + 0 + + n + + + + + B + i + + + n + + ⁡ + + û + + + ⁢ + R + i + + + + +

+

+

+ where + + + R + i + + + is a control point and + + + + + B + i + + + n + + ⁡ + + û + + + + is the + ith + Bernstein polynomial of degree + n + (order = + + + + n + + + 1 + + ): +

+ + + + + + B + i + + + n + + ⁡ + + û + + + = + + + + + + n + + + i + + + + + ⁢ + + û + + i + + ⁢ + + + + 1 + - + û + + + + + n + - + i + + + + + + + +

+ Recall that +

+ + + + 0 + 0 + + == + 1 + + + and + + + + + + + + n + + + 0 + + + + + == + 1 + + +

+ glMap1 is used to define the basis and to specify what kind of values + are produced. + Once defined, + a map can be enabled and disabled by calling glEnable and glDisable + with the map name, one of the nine predefined values for target + described below. + glEvalCoord1 evaluates the one-dimensional maps that are enabled. + When + glEvalCoord1 presents a value + u, + the Bernstein functions are evaluated using + + + û + , + where + + + + û + = + + + + u + - + u1 + + + + + u2 + - + u1 + + + + + +

+ target is a symbolic constant that indicates what kind of control points + are provided in points, + and what output is generated when the map is evaluated. + It can assume one of nine predefined values: +

GL_MAP1_VERTEX_3

+ Each control point is three floating-point values representing + x, + y, + and + z. + Internal glVertex3 commands are generated when the map is evaluated. +

GL_MAP1_VERTEX_4

+ Each control point is four floating-point values representing + x, + y, + z, + and + w. + Internal glVertex4 commands are generated when the map is evaluated. +

GL_MAP1_INDEX

+ Each control point is a single floating-point value representing a color index. + Internal glIndex commands are generated when the map is evaluated + but the current index is not updated with the value of these glIndex + commands. +

GL_MAP1_COLOR_4

+ Each control point is four floating-point values representing + red, green, blue, and alpha. + Internal glColor4 commands are generated when the map is + evaluated but the current color is not updated with the value of these + glColor4 commands. +

GL_MAP1_NORMAL

+ Each control point is three floating-point values representing + the + x, + y, + and + z + components of a normal vector. + Internal glNormal commands are generated when the map is + evaluated but the current normal is not updated with the value of + these glNormal commands. +

GL_MAP1_TEXTURE_COORD_1

+ Each control point is a single floating-point value representing + the + s + texture coordinate. + Internal + glTexCoord1 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_2

+ Each control point is two floating-point values representing + the + s + and + t + texture coordinates. + Internal + glTexCoord2 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_3

+ Each control point is three floating-point values representing + the + s, + t, + and + r + texture coordinates. + Internal glTexCoord3 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_4

+ Each control point is four floating-point values representing + the + s, + t, + r, + and + q + texture coordinates. + Internal + glTexCoord4 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. +

+ stride, + order, and + points define the array addressing for accessing the control points. + points is the location of the first control point, + which occupies one, two, three, or four contiguous memory locations, + depending on which map is being defined. + order is the number of control points in the array. + stride specifies how many float or double locations to advance the internal + memory pointer to reach the next control point. +

Notes

+ As is the case with all GL commands that accept pointers to data, + it is as if the contents of points were copied by glMap1 before glMap1 + returns. + Changes to the contents of points have no effect after glMap1 is called. +

Errors

+ GL_INVALID_ENUM is generated if target is not an accepted value. +

+ GL_INVALID_VALUE is generated if u1 is equal to u2. +

+ GL_INVALID_VALUE is generated if stride is less than the number + of values in a control point. +

+ GL_INVALID_VALUE is generated if order is less than 1 or + greater than the return value of GL_MAX_EVAL_ORDER. +

+ GL_INVALID_OPERATION is generated if glMap1 + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if glMap1 is called and the value + of GL_ACTIVE_TEXTURE is not GL_TEXTURE0. +

Associated Gets

+ glGetMap +

+ glGet with argument GL_MAX_EVAL_ORDER +

+ glIsEnabled with argument GL_MAP1_VERTEX_3 +

+ glIsEnabled with argument GL_MAP1_VERTEX_4 +

+ glIsEnabled with argument GL_MAP1_INDEX +

+ glIsEnabled with argument GL_MAP1_COLOR_4 +

+ glIsEnabled with argument GL_MAP1_NORMAL +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4 +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMap1.xml b/upstream-man-pages/man2/xhtml/glMap1.xml new file mode 100644 index 0000000..4fa031b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMap1.xml @@ -0,0 +1,444 @@ + + +glMap1

Name

glMap1 — define a one-dimensional evaluator

C Specification

void glMap1f(GLenum  target,
 GLfloat  u1,
 GLfloat  u2,
 GLint  stride,
 GLint  order,
 const GLfloat *  points);
void glMap1d(GLenum  target,
 GLdouble  u1,
 GLdouble  u2,
 GLint  stride,
 GLint  order,
 const GLdouble *  points);

Parameters

target

+ Specifies the kind of values that are generated by the evaluator. + Symbolic constants + GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4, + GL_MAP1_INDEX, + GL_MAP1_COLOR_4, + GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, and + GL_MAP1_TEXTURE_COORD_4 are accepted. +

u1, u2

+ Specify a linear mapping of + u, + as presented to glEvalCoord1, + to + + + û + , + the variable that is evaluated by the equations specified by this command. +

stride

+ Specifies the number of floats or doubles between + the beginning of one control point and the beginning of the next one + in the data structure referenced in points. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. +

order

+ Specifies the number of control points. + Must be positive. +

points

+ Specifies a pointer to the array of control points. +

Description

+ Evaluators provide a way to use polynomial or rational polynomial mapping + to produce vertices, + normals, + texture coordinates, + and colors. + The values produced by an evaluator are sent to further stages + of GL processing just as if they had been presented using + glVertex, + glNormal, + glTexCoord, and + glColor commands, + except that the generated values do not update the current normal, + texture coordinates, + or color. +

+ All polynomial or rational polynomial splines of any degree + (up to the maximum degree supported by the GL implementation) + can be described using evaluators. + These include almost all splines used in computer graphics: B-splines, + Bezier curves, Hermite splines, and so on. +

+ Evaluators define curves based on Bernstein polynomials. + Define + + + + p + ⁡ + + û + + + + as +

+

+ + + + p + ⁡ + + û + + + = + + + Σ + + i + = + 0 + + n + + + + + B + i + + + n + + ⁡ + + û + + + ⁢ + R + i + + + + +

+

+

+ where + + + R + i + + + is a control point and + + + + + B + i + + + n + + ⁡ + + û + + + + is the + ith + Bernstein polynomial of degree + n + (order = + + + + n + + + 1 + + ): +

+ + + + + + B + i + + + n + + ⁡ + + û + + + = + + + + + + n + + + i + + + + + ⁢ + + û + + i + + ⁢ + + + + 1 + - + û + + + + + n + - + i + + + + + + + +

+ Recall that +

+ + + + 0 + 0 + + == + 1 + + + and + + + + + + + + n + + + 0 + + + + + == + 1 + + +

+ glMap1 is used to define the basis and to specify what kind of values + are produced. + Once defined, + a map can be enabled and disabled by calling glEnable and glDisable + with the map name, one of the nine predefined values for target + described below. + glEvalCoord1 evaluates the one-dimensional maps that are enabled. + When + glEvalCoord1 presents a value + u, + the Bernstein functions are evaluated using + + + û + , + where + + + + û + = + + + + u + - + u1 + + + + + u2 + - + u1 + + + + + +

+ target is a symbolic constant that indicates what kind of control points + are provided in points, + and what output is generated when the map is evaluated. + It can assume one of nine predefined values: +

GL_MAP1_VERTEX_3

+ Each control point is three floating-point values representing + x, + y, + and + z. + Internal glVertex3 commands are generated when the map is evaluated. +

GL_MAP1_VERTEX_4

+ Each control point is four floating-point values representing + x, + y, + z, + and + w. + Internal glVertex4 commands are generated when the map is evaluated. +

GL_MAP1_INDEX

+ Each control point is a single floating-point value representing a color index. + Internal glIndex commands are generated when the map is evaluated + but the current index is not updated with the value of these glIndex + commands. +

GL_MAP1_COLOR_4

+ Each control point is four floating-point values representing + red, green, blue, and alpha. + Internal glColor4 commands are generated when the map is + evaluated but the current color is not updated with the value of these + glColor4 commands. +

GL_MAP1_NORMAL

+ Each control point is three floating-point values representing + the + x, + y, + and + z + components of a normal vector. + Internal glNormal commands are generated when the map is + evaluated but the current normal is not updated with the value of + these glNormal commands. +

GL_MAP1_TEXTURE_COORD_1

+ Each control point is a single floating-point value representing + the + s + texture coordinate. + Internal + glTexCoord1 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_2

+ Each control point is two floating-point values representing + the + s + and + t + texture coordinates. + Internal + glTexCoord2 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_3

+ Each control point is three floating-point values representing + the + s, + t, + and + r + texture coordinates. + Internal glTexCoord3 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_4

+ Each control point is four floating-point values representing + the + s, + t, + r, + and + q + texture coordinates. + Internal + glTexCoord4 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. +

+ stride, + order, and + points define the array addressing for accessing the control points. + points is the location of the first control point, + which occupies one, two, three, or four contiguous memory locations, + depending on which map is being defined. + order is the number of control points in the array. + stride specifies how many float or double locations to advance the internal + memory pointer to reach the next control point. +

Notes

+ As is the case with all GL commands that accept pointers to data, + it is as if the contents of points were copied by glMap1 before glMap1 + returns. + Changes to the contents of points have no effect after glMap1 is called. +

Errors

+ GL_INVALID_ENUM is generated if target is not an accepted value. +

+ GL_INVALID_VALUE is generated if u1 is equal to u2. +

+ GL_INVALID_VALUE is generated if stride is less than the number + of values in a control point. +

+ GL_INVALID_VALUE is generated if order is less than 1 or + greater than the return value of GL_MAX_EVAL_ORDER. +

+ GL_INVALID_OPERATION is generated if glMap1 + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if glMap1 is called and the value + of GL_ACTIVE_TEXTURE is not GL_TEXTURE0. +

Associated Gets

+ glGetMap +

+ glGet with argument GL_MAX_EVAL_ORDER +

+ glIsEnabled with argument GL_MAP1_VERTEX_3 +

+ glIsEnabled with argument GL_MAP1_VERTEX_4 +

+ glIsEnabled with argument GL_MAP1_INDEX +

+ glIsEnabled with argument GL_MAP1_COLOR_4 +

+ glIsEnabled with argument GL_MAP1_NORMAL +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4 +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMap2.xml b/upstream-man-pages/man2/xhtml/glMap2.xml new file mode 100644 index 0000000..ede9c46 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMap2.xml @@ -0,0 +1,763 @@ + + +glMap2

Name

glMap2 — define a two-dimensional evaluator

C Specification

void glMap2f(GLenum  target,
 GLfloat  u1,
 GLfloat  u2,
 GLint  ustride,
 GLint  uorder,
 GLfloat  v1,
 GLfloat  v2,
 GLint  vstride,
 GLint  vorder,
 const GLfloat *  points);
void glMap2d(GLenum  target,
 GLdouble  u1,
 GLdouble  u2,
 GLint  ustride,
 GLint  uorder,
 GLdouble  v1,
 GLdouble  v2,
 GLint  vstride,
 GLint  vorder,
 const GLdouble *  points);

Parameters

target

+ Specifies the kind of values that are generated by the evaluator. + Symbolic constants + GL_MAP2_VERTEX_3, + GL_MAP2_VERTEX_4, + GL_MAP2_INDEX, + GL_MAP2_COLOR_4, + GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3, and + GL_MAP2_TEXTURE_COORD_4 are accepted. +

u1, u2

+ Specify a linear mapping of + u, + as presented to glEvalCoord2, + to + + + û + , + one of the two variables that are evaluated by the equations specified + by this command. Initially, u1 is 0 and u2 is 1. +

ustride

+ Specifies the number of floats or doubles between + the beginning of control point + + + R + ij + + + and the beginning of control point + + + R + + + + + i + + + 1 + + + ⁢ + j + + + + , + where + i + and + j + are the + u + and + v + control point indices, respectively. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. The initial value of ustride is 0. +

uorder

+ Specifies the dimension of the control point array in the + u + axis. + Must be positive. The initial value is 1. +

v1, v2

+ Specify a linear mapping of + v, + as presented to glEvalCoord2, + to + + + v̂ + , + one of the two variables that are evaluated by the equations specified + by this command. Initially, v1 is 0 and v2 is 1. +

vstride

+ Specifies the number of floats or doubles between + the beginning of control point + + + R + ij + + + and the beginning of control point + + + R + + + i + ⁡ + + + j + + + 1 + + + + + + , + where + i + and + j + are the + u + and + v + control point indices, respectively. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. The initial value of vstride is 0. +

vorder

+ Specifies the dimension of the control point array in the + v + axis. + Must be positive. The initial value is 1. +

points

+ Specifies a pointer to the array of control points. +

Description

+ Evaluators provide a way to use polynomial or rational polynomial mapping + to produce vertices, + normals, + texture coordinates, + and colors. + The values produced by an evaluator are sent on to further stages + of GL processing just as if they had been presented using + glVertex, + glNormal, + glTexCoord, and + glColor commands, + except that the generated values do not update the current normal, + texture coordinates, + or color. +

+ All polynomial or rational polynomial splines of any degree + (up to the maximum degree supported by the GL implementation) + can be described using evaluators. + These include almost all surfaces used in computer graphics, + including B-spline surfaces, + NURBS surfaces, + Bezier surfaces, and so on. +

+ Evaluators define surfaces based on bivariate Bernstein polynomials. + Define + + + + p + ⁡ + + û + v̂ + + + + as +

+

+ + + + p + ⁡ + + û + v̂ + + + = + + + Σ + + i + = + 0 + + n + + + + Σ + + j + = + 0 + + m + + + + + B + i + + + n + + ⁡ + + û + + + ⁢ + + + B + j + + + m + + ⁡ + + v̂ + + + ⁢ + R + ij + + + + + +

+

+

+ where + + + R + ij + + + is a control point, + + + + + B + i + + + n + + ⁡ + + û + + + + is the + ith + Bernstein polynomial of degree + n + (uorder = + + + + n + + + 1 + + ) +

+

+ + + + + B + i + + + n + + ⁡ + + û + + + = + + + + + + n + + + i + + + + + ⁢ + + û + + i + + ⁢ + + + + 1 + - + û + + + + + n + - + i + + + + + + +

+

+ and + + + + + B + j + + + m + + ⁡ + + v̂ + + + + is the + jth + Bernstein polynomial of degree + m + (vorder = + + + + m + + + 1 + + ) +

+

+ + + + + B + j + + + m + + ⁡ + + v̂ + + + = + + + + + + m + + + j + + + + + ⁢ + + v̂ + + j + + ⁢ + + + + 1 + - + v̂ + + + + + m + - + j + + + + + + +

+

+ Recall that + + + + 0 + 0 + + == + 1 + + + and + + + + + + + + n + + + 0 + + + + + == + 1 + + +

+ glMap2 is used to define the basis and to specify what kind of values + are produced. + Once defined, + a map can be enabled and disabled by calling glEnable and glDisable + with the map name, one of the nine predefined values for target, + described below. + When glEvalCoord2 presents values + u + and + v, + the bivariate Bernstein polynomials are evaluated using + + + û + + and + + + v̂ + , + where +

+ + + + û + = + + + + u + - + u1 + + + + + u2 + - + u1 + + + + + +

+ + + + v̂ + = + + + + v + - + v1 + + + + + v2 + - + v1 + + + + + +

+ target is a symbolic constant that indicates what kind of control points + are provided in points, + and what output is generated when the map is evaluated. + It can assume one of nine predefined values: +

GL_MAP2_VERTEX_3

+ Each control point is three floating-point values representing + x, + y, + and + z. + Internal glVertex3 commands are generated when the map is evaluated. +

GL_MAP2_VERTEX_4

+ Each control point is four floating-point values representing + x, + y, + z, + and + w. + Internal glVertex4 commands are generated when the map is evaluated. +

GL_MAP2_INDEX

+ Each control point is a single floating-point value representing a color index. + Internal glIndex commands are generated when the map is evaluated + but the current index is not updated with the value of these + glIndex commands. +

GL_MAP2_COLOR_4

+ Each control point is four floating-point values representing + red, green, blue, and alpha. + Internal glColor4 commands are generated when the map is + evaluated but the current color is not updated with the value of + these glColor4 commands. +

GL_MAP2_NORMAL

+ Each control point is three floating-point values representing + the + x, + y, + and + z + components of a normal vector. + Internal glNormal commands are generated when the map is + evaluated but the current normal is not updated with the value of + these glNormal commands. +

GL_MAP2_TEXTURE_COORD_1

+ Each control point is a single floating-point value representing + the + s + texture coordinate. + Internal + glTexCoord1 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP2_TEXTURE_COORD_2

+ Each control point is two floating-point values representing + the + s + and + t + texture coordinates. + Internal + glTexCoord2 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP2_TEXTURE_COORD_3

+ Each control point is three floating-point values representing + the + s, + t, + and + r + texture coordinates. + Internal glTexCoord3 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP2_TEXTURE_COORD_4

+ Each control point is four floating-point values representing + the + s, + t, + r, + and + q + texture coordinates. + Internal + glTexCoord4 commands are generated when the map is evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

+ ustride, + uorder, + vstride, + vorder, and + points define the array addressing for accessing the control points. + points is the location of the first control point, + which occupies one, two, three, or four contiguous memory locations, + depending on which map is being defined. + There are + + + + uorder + × + vorder + + + control points in the array. + ustride specifies how many float or double locations are skipped to advance + the internal memory pointer from control point + + + R + + + i + ⁢ + j + + + + + to control point + + + R + + + + + i + + + 1 + + + ⁢ + j + + + + . + vstride specifies how many float or double locations are skipped to advance + the internal memory pointer from control point + + + R + + + i + ⁢ + j + + + + + to control point + + + R + + + i + ⁡ + + + j + + + 1 + + + + + + . +

Notes

+ As is the case with all GL commands that accept pointers to data, + it is as if the contents of points were copied by glMap2 before glMap2 + returns. + Changes to the contents of points have no effect after glMap2 is called. +

+ Initially, GL_AUTO_NORMAL is enabled. If GL_AUTO_NORMAL is enabled, + normal vectors are generated when either + GL_MAP2_VERTEX_3 or GL_MAP2_VERTEX_4 is used to generate + vertices. +

Errors

+ GL_INVALID_ENUM is generated if target is not an accepted value. +

+ GL_INVALID_VALUE is generated if u1 is equal to u2, + or if v1 is equal to v2. +

+ GL_INVALID_VALUE is generated if either ustride or vstride + is less than the number of values in a control point. +

+ GL_INVALID_VALUE is generated if either uorder or vorder + is less than 1 or greater than the return value of GL_MAX_EVAL_ORDER. +

+ GL_INVALID_OPERATION is generated if glMap2 + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if glMap2 is called and the value + of GL_ACTIVE_TEXTURE is not GL_TEXTURE0. +

Associated Gets

+ glGetMap +

+ glGet with argument GL_MAX_EVAL_ORDER +

+ glIsEnabled with argument GL_MAP2_VERTEX_3 +

+ glIsEnabled with argument GL_MAP2_VERTEX_4 +

+ glIsEnabled with argument GL_MAP2_INDEX +

+ glIsEnabled with argument GL_MAP2_COLOR_4 +

+ glIsEnabled with argument GL_MAP2_NORMAL +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_1 +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_2 +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_3 +

+ glIsEnabled with argument GL_MAP2_TEXTURE_COORD_4 +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMapBuffer.xml b/upstream-man-pages/man2/xhtml/glMapBuffer.xml new file mode 100644 index 0000000..dfe481d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMapBuffer.xml @@ -0,0 +1,94 @@ + + +glMapBuffer

Name

glMapBuffer — map a buffer object's data store

C Specification

void * glMapBuffer(GLenum  target,
 GLenum  access);

Parameters

target

+ Specifies the target buffer object being mapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

access

+ Specifies the access policy, indicating whether it will be possible to read from, write to, + or both read from and write to the buffer object's mapped data store. The symbolic constant must be + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. +

C Specification

GLboolean glUnmapBuffer(GLenum  target);

Parameters

target

+ Specifies the target buffer object being unmapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. +

Description

+ glMapBuffer maps to the client's address space the entire data store of the buffer object + currently bound to target. The data can then be directly read and/or written relative to + the returned pointer, depending on the specified access policy. If the GL is unable to + map the buffer object's data store, glMapBuffer generates an error and returns + NULL. This may occur for system-specific reasons, such as low virtual memory availability. +

+ If a mapped data store is accessed in a way inconsistent with the specified access policy, + no error is generated, but performance may be negatively impacted and system errors, including program + termination, may result. Unlike the usage parameter of glBufferData, + access is not a hint, and does in fact constrain the usage of the mapped data store on + some GL implementations. In order to achieve the highest performance available, a buffer object's data store + should be used in ways consistent with both its specified usage and + access parameters. +

+ A mapped data store must be unmapped with glUnmapBuffer before its buffer object is used. + Otherwise an error will be generated by any GL command that attempts to dereference the buffer object's data store. + When a data store is unmapped, the pointer to its data store becomes invalid. glUnmapBuffer + returns GL_TRUE unless the data store contents have become corrupt during the time + the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics + memory, such as screen mode changes. In such situations, GL_FALSE is returned and the + data store contents are undefined. An application must detect this rare condition and reinitialize the data store. +

+ A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store + is recreated with glBufferData. +

Notes

+ If an error is generated, glMapBuffer returns NULL, and + glUnmapBuffer returns GL_FALSE. +

+ glMapBuffer and glUnmapBuffer are available only if the GL version is 1.5 or greater. +

+ GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are + available only if the GL version is 2.1 or greater. +

+ Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, + but results will be undefined and will likely vary across GL implementations. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. +

+ GL_INVALID_ENUM is generated if access is not + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. +

+ GL_OUT_OF_MEMORY is generated when glMapBuffer is executed + if the GL is unable to map the buffer object's data store. This may occur for a variety of system-specific + reasons, such as the absence of sufficient remaining virtual memory. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if glMapBuffer is executed for + a buffer object whose data store is already mapped. +

+ GL_INVALID_OPERATION is generated if glUnmapBuffer is executed for + a buffer object whose data store is not currently mapped. +

+ GL_INVALID_OPERATION is generated if glMapBuffer or glUnmapBuffer is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetBufferPointerv with argument GL_BUFFER_MAP_POINTER +

+ glGetBufferParameteriv with argument GL_BUFFER_MAPPED, GL_BUFFER_ACCESS, or GL_BUFFER_USAGE +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glMapGrid.xml b/upstream-man-pages/man2/xhtml/glMapGrid.xml new file mode 100644 index 0000000..d5fd395 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMapGrid.xml @@ -0,0 +1,240 @@ + + +glMapGrid

Name

glMapGrid — define a one- or two-dimensional mesh

C Specification

void glMapGrid1d(GLint  un,
 GLdouble  u1,
 GLdouble  u2);
void glMapGrid1f(GLint  un,
 GLfloat  u1,
 GLfloat  u2);
void glMapGrid2d(GLint  un,
 GLdouble  u1,
 GLdouble  u2,
 GLint  vn,
 GLdouble  v1,
 GLdouble  v2);
void glMapGrid2f(GLint  un,
 GLfloat  u1,
 GLfloat  u2,
 GLint  vn,
 GLfloat  v1,
 GLfloat  v2);

Parameters

un

+ Specifies the number of partitions in the grid range interval + [u1, u2]. + Must be positive. +

u1, u2

+ Specify the mappings for integer grid domain values + + + + i + = + 0 + + + and + + + + i + = + un + + . +

vn

+ Specifies the number of partitions in the grid range interval + [v1, v2] + (glMapGrid2 only). +

v1, v2

+ Specify the mappings for integer grid domain values + + + + j + = + 0 + + + and + + + + j + = + vn + + + (glMapGrid2 only). +

Description

+ glMapGrid and glEvalMesh are used together to efficiently + generate and evaluate a series of evenly-spaced map domain values. + glEvalMesh steps through the integer domain + of a one- or two-dimensional grid, + whose range is the domain of the evaluation maps specified by + glMap1 and glMap2. +

+ glMapGrid1 and glMapGrid2 specify the linear grid mappings + between the + i + (or + i + and + j) + integer grid coordinates, + to the + u + (or + u + and + v) + floating-point evaluation map coordinates. + See glMap1 and glMap2 for details of how + u + and + v + coordinates + are evaluated. +

+ glMapGrid1 specifies a single linear mapping + such that integer grid coordinate 0 maps exactly to u1, + and integer grid coordinate un maps exactly to u2. + All other integer grid coordinates + i + are mapped so that +

+

+ + + u + = + + + + i + ⁡ + + + u2 + - + u1 + + + + un + + + + u1 + + +

+

+ glMapGrid2 specifies two such linear mappings. + One maps integer grid coordinate + + + + i + = + 0 + + + exactly to u1, + and integer grid coordinate + + + + i + = + un + + + exactly to u2. + The other maps integer grid coordinate + + + + j + = + 0 + + + exactly to v1, + and integer grid coordinate + + + + j + = + vn + + + exactly to v2. + Other integer grid coordinates + i + and + j + are mapped such that +

+

+ + + u + = + + + + i + ⁡ + + + u2 + - + u1 + + + + un + + + + u1 + + +

+

+

+ + + v + = + + + + j + ⁡ + + + v2 + - + v1 + + + + vn + + + + v1 + + +

+

+ The mappings specified by glMapGrid are used identically by + glEvalMesh and glEvalPoint. +

Errors

+ GL_INVALID_VALUE is generated if either un or vn is not + positive. +

+ GL_INVALID_OPERATION is generated if glMapGrid + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MAP1_GRID_DOMAIN +

+ glGet with argument GL_MAP2_GRID_DOMAIN +

+ glGet with argument GL_MAP1_GRID_SEGMENTS +

+ glGet with argument GL_MAP2_GRID_SEGMENTS +

See Also

+ glEvalCoord, + glEvalMesh, + glEvalPoint, + glMap1, + glMap2 +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMapGrid1.xml b/upstream-man-pages/man2/xhtml/glMapGrid1.xml new file mode 100644 index 0000000..5faf5a4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMapGrid1.xml @@ -0,0 +1,4 @@ + + + +glMapGrid1 diff --git a/upstream-man-pages/man2/xhtml/glMapGrid2.xml b/upstream-man-pages/man2/xhtml/glMapGrid2.xml new file mode 100644 index 0000000..5e9c106 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMapGrid2.xml @@ -0,0 +1,4 @@ + + + +glMapGrid2 diff --git a/upstream-man-pages/man2/xhtml/glMaterial.xml b/upstream-man-pages/man2/xhtml/glMaterial.xml new file mode 100644 index 0000000..fbc1b5b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMaterial.xml @@ -0,0 +1,191 @@ + + +glMaterial

Name

glMaterial — specify material parameters for the lighting model

C Specification

void glMaterialf(GLenum  face,
 GLenum  pname,
 GLfloat  param);
void glMateriali(GLenum  face,
 GLenum  pname,
 GLint  param);

Parameters

face

+ Specifies which face or faces are being updated. + Must be one of + GL_FRONT, + GL_BACK, or + GL_FRONT_AND_BACK. +

pname

+ Specifies the single-valued material parameter of the face or faces + that is being updated. + Must be GL_SHININESS. +

param

+ Specifies the value that parameter GL_SHININESS will be set to. +

C Specification

void glMaterialfv(GLenum  face,
 GLenum  pname,
 const GLfloat *  params);
void glMaterialiv(GLenum  face,
 GLenum  pname,
 const GLint *  params);

Parameters

face

+ Specifies which face or faces are being updated. + Must be one of + GL_FRONT, + GL_BACK, or + GL_FRONT_AND_BACK. +

pname

+ Specifies the material parameter of the face or faces that is being updated. + Must be one of + GL_AMBIENT, + GL_DIFFUSE, + GL_SPECULAR, + GL_EMISSION, + GL_SHININESS, + GL_AMBIENT_AND_DIFFUSE, or + GL_COLOR_INDEXES. +

params

+ Specifies a pointer to the value or values that pname will be set to. +

Description

+ glMaterial assigns values to material parameters. + There are two matched sets of material parameters. + One, + the front-facing set, + is used to shade points, + lines, + bitmaps, + and all polygons + (when two-sided lighting is disabled), + or just front-facing polygons + (when two-sided lighting is enabled). + The other set, + back-facing, + is used to shade back-facing polygons only when two-sided lighting is enabled. + Refer to the glLightModel reference page for details concerning one- and + two-sided lighting calculations. +

+ glMaterial takes three arguments. + The first, + face, + specifies whether the + GL_FRONT materials, the + GL_BACK materials, or both + GL_FRONT_AND_BACK materials will be modified. + The second, + pname, + specifies which of several parameters in one or both sets will be modified. + The third, + params, + specifies what value or values will be assigned to the specified parameter. +

+ Material parameters are used in the lighting equation that is optionally + applied to each vertex. + The equation is discussed in the glLightModel reference page. + The parameters that can be specified using glMaterial, + and their interpretations by the lighting equation, are as follows: +

GL_AMBIENT

+ params contains four integer or floating-point values that specify + the ambient RGBA reflectance of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial ambient reflectance for both front- and back-facing materials + is (0.2, 0.2, 0.2, 1.0). +

GL_DIFFUSE

+ params contains four integer or floating-point values that specify + the diffuse RGBA reflectance of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial diffuse reflectance for both front- and back-facing materials + is (0.8, 0.8, 0.8, 1.0). +

GL_SPECULAR

+ params contains four integer or floating-point values that specify + the specular RGBA reflectance of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial specular reflectance for both front- and back-facing materials + is (0, 0, 0, 1). +

GL_EMISSION

+ params contains four integer or floating-point values that specify + the RGBA emitted light intensity of the material. + Integer values are mapped linearly such that the most positive representable + value maps to 1.0, + and the most negative representable value maps to + + + -1.0 + . + Floating-point values are mapped directly. + Neither integer nor floating-point values are clamped. + The initial emission intensity for both front- and back-facing materials + is (0, 0, 0, 1). +

GL_SHININESS

+ params is a single integer or floating-point value that specifies + the RGBA specular exponent of the material. + Integer and floating-point values are mapped directly. + Only values in the range + + + + 0 + 128 + + + are accepted. + The initial specular exponent for both front- and back-facing materials + is 0. +

GL_AMBIENT_AND_DIFFUSE

+ Equivalent to calling glMaterial twice with the same parameter values, + once with GL_AMBIENT and once with GL_DIFFUSE. +

GL_COLOR_INDEXES

+ params contains three integer or floating-point values specifying + the color indices for ambient, + diffuse, + and specular lighting. + These three values, + and GL_SHININESS, + are the only material values used by the color index mode lighting equation. + Refer to the glLightModel reference page for a discussion + of color index lighting. +

Notes

+ The material parameters can be updated at any time. + In particular, + glMaterial can be called between a call to glBegin and the corresponding + call to glEnd. + If only a single material parameter is to be changed per vertex, + however, + glColorMaterial is preferred over glMaterial + (see glColorMaterial). +

+ While the ambient, diffuse, specular and emission material parameters + all have alpha components, only the diffuse alpha component is used in + the lighting computation. +

Errors

+ GL_INVALID_ENUM is generated if either face or pname is not + an accepted value. +

+ GL_INVALID_VALUE is generated if a specular exponent outside the range + + + + 0 + 128 + + + is specified. +

Associated Gets

+ glGetMaterial +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMatrixMode.xml b/upstream-man-pages/man2/xhtml/glMatrixMode.xml new file mode 100644 index 0000000..dd7f3d5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMatrixMode.xml @@ -0,0 +1,48 @@ + + +glMatrixMode

Name

glMatrixMode — specify which matrix is the current matrix

C Specification

void glMatrixMode(GLenum  mode);

Parameters

mode

+ Specifies which matrix stack is the target + for subsequent matrix operations. + Three values are accepted: + GL_MODELVIEW, + GL_PROJECTION, and + GL_TEXTURE. + The initial value is GL_MODELVIEW. + Additionally, if the ARB_imaging extension is supported, + GL_COLOR is also accepted. +

Description

+ glMatrixMode sets the current matrix mode. + mode can assume one of four values: +

GL_MODELVIEW

+ Applies subsequent matrix operations to the modelview matrix stack. +

GL_PROJECTION

+ Applies subsequent matrix operations to the projection matrix stack. +

GL_TEXTURE

+ Applies subsequent matrix operations to the texture matrix stack. +

GL_COLOR

+ Applies subsequent matrix operations to the color matrix stack. +

+ To find out which matrix stack is currently the target of all matrix + operations, call glGet with argument GL_MATRIX_MODE. The initial + value is GL_MODELVIEW. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glMatrixMode + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMinmax.xml b/upstream-man-pages/man2/xhtml/glMinmax.xml new file mode 100644 index 0000000..c4e9c23 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMinmax.xml @@ -0,0 +1,101 @@ + + +glMinmax

Name

glMinmax — define minmax table

C Specification

void glMinmax(GLenum  target,
 GLenum  internalformat,
 GLboolean  sink);

Parameters

target

+ The minmax table whose parameters are to be set. + Must be + GL_MINMAX. +

internalformat

+ The format of entries in the minmax table. + Must be one of + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

sink

+ If GL_TRUE, pixels will be consumed by the minmax + process and no drawing or texture loading will take place. + If GL_FALSE, pixels will proceed to the final conversion process after + minmax. +

Description

+ When GL_MINMAX is enabled, the RGBA components of incoming pixels are + compared to the minimum and maximum values for each component, which are + stored in the two-element minmax table. + (The first element stores the minima, and the second element stores + the maxima.) + If a pixel component is greater than the corresponding component + in the maximum element, then the maximum element is updated with the + pixel component value. + If a pixel component is less than the corresponding component in + the minimum element, then the minimum element is updated with the + pixel component value. + (In both cases, if the internal format of the minmax table includes + luminance, then the R color component of incoming pixels is used + for comparison.) + The contents of the minmax table may be retrieved at a later time + by calling glGetMinmax. + The minmax operation is enabled or disabled by calling glEnable or + glDisable, respectively, with an argument of GL_MINMAX. +

+ glMinmax redefines the current minmax table to have entries of the format + specified by internalformat. + The maximum element is initialized with the smallest possible component + values, and the minimum element is initialized with the largest possible + component values. + The values in the previous minmax table, if any, are lost. + If sink is GL_TRUE, then pixels are discarded after minmax; + no further processing of the pixels takes place, and no drawing, + texture loading, or pixel readback will result. +

+

Notes

+ glMinmax is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_OPERATION is generated if glMinmax is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetMinmaxParameter +

See Also

+ glGetMinmax, + glResetMinmax +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMultMatrix.xml b/upstream-man-pages/man2/xhtml/glMultMatrix.xml new file mode 100644 index 0000000..43bec36 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMultMatrix.xml @@ -0,0 +1,764 @@ + + +glMultMatrix

Name

glMultMatrix — multiply the current matrix with the specified matrix

C Specification

void glMultMatrixd(const GLdouble *  m);
void glMultMatrixf(const GLfloat *  m);

Parameters

m

+ Points to 16 consecutive values that are used as the elements of + a + + + + 4 + × + 4 + + + column-major matrix. +

Description

+ glMultMatrix multiplies the current matrix with the one specified using m, and + replaces the current matrix with the product. +

+ The current matrix is determined by the current matrix mode (see glMatrixMode). It is either the projection matrix, + modelview matrix, + or the texture matrix. +

Examples

+ If the current matrix is + C + and the coordinates + to be transformed are + + + + v + = + + + v + ⁡ + + 0 + + + + v + ⁡ + + 1 + + + + v + ⁡ + + 2 + + + + v + ⁡ + + 3 + + + + + , + then the current transformation is + + + + C + × + v + + , + or +

+

+ + + + + + + + c + ⁡ + + 0 + + + + + + c + ⁡ + + 4 + + + + + + c + ⁡ + + 8 + + + + + + c + ⁡ + + 12 + + + + + + + + c + ⁡ + + 1 + + + + + + c + ⁡ + + 5 + + + + + + c + ⁡ + + 9 + + + + + + c + ⁡ + + 13 + + + + + + + + c + ⁡ + + 2 + + + + + + c + ⁡ + + 6 + + + + + + c + ⁡ + + 10 + + + + + + c + ⁡ + + 14 + + + + + + + + c + ⁡ + + 3 + + + + + + c + ⁡ + + 7 + + + + + + c + ⁡ + + 11 + + + + + + c + ⁡ + + 15 + + + + + + + × + + + + + + v + ⁡ + + 0 + + + + + + + + v + ⁡ + + 1 + + + + + + + + v + ⁡ + + 2 + + + + + + + + v + ⁡ + + 3 + + + + + + + +

+

+

+ Calling glMultMatrix with an argument of + + + + m + = + + + m + ⁡ + + 0 + + + + m + ⁡ + + 1 + + + ... + + m + ⁡ + + 15 + + + + + + replaces the current transformation with + + + + + + C + × + M + + + × + v + + , + or +

+

+ + + + + + + + c + ⁡ + + 0 + + + + + + c + ⁡ + + 4 + + + + + + c + ⁡ + + 8 + + + + + + c + ⁡ + + 12 + + + + + + + + c + ⁡ + + 1 + + + + + + c + ⁡ + + 5 + + + + + + c + ⁡ + + 9 + + + + + + c + ⁡ + + 13 + + + + + + + + c + ⁡ + + 2 + + + + + + c + ⁡ + + 6 + + + + + + c + ⁡ + + 10 + + + + + + c + ⁡ + + 14 + + + + + + + + c + ⁡ + + 3 + + + + + + c + ⁡ + + 7 + + + + + + c + ⁡ + + 11 + + + + + + c + ⁡ + + 15 + + + + + + + × + + + + + + m + ⁡ + + 0 + + + + + + m + ⁡ + + 4 + + + + + + m + ⁡ + + 8 + + + + + + m + ⁡ + + 12 + + + + + + + + m + ⁡ + + 1 + + + + + + m + ⁡ + + 5 + + + + + + m + ⁡ + + 9 + + + + + + m + ⁡ + + 13 + + + + + + + + m + ⁡ + + 2 + + + + + + m + ⁡ + + 6 + + + + + + m + ⁡ + + 10 + + + + + + m + ⁡ + + 14 + + + + + + + + m + ⁡ + + 3 + + + + + + m + ⁡ + + 7 + + + + + + m + ⁡ + + 11 + + + + + + m + ⁡ + + 15 + + + + + + + × + + + + + + v + ⁡ + + 0 + + + + + + + + v + ⁡ + + 1 + + + + + + + + v + ⁡ + + 2 + + + + + + + + v + ⁡ + + 3 + + + + + + + +

+

+

+ Where + v + is represented as a + + + + 4 + × + 1 + + + matrix. +

Notes

+ While the elements of the matrix may be specified with + single or double precision, the GL may store or operate on these + values in less-than-single precision. +

+ In many computer languages, + + + + 4 + × + 4 + + + arrays are represented + in row-major order. The transformations just described + represent these matrices in column-major order. + The order of the multiplication is important. For example, if the current + transformation is a rotation, and glMultMatrix is called with a translation matrix, + the translation is done directly on the coordinates to be transformed, + while the rotation is done on the results of that translation. +

Errors

+ GL_INVALID_OPERATION is generated if glMultMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMultTransposeMatrix.xml b/upstream-man-pages/man2/xhtml/glMultTransposeMatrix.xml new file mode 100644 index 0000000..4f5c698 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMultTransposeMatrix.xml @@ -0,0 +1,773 @@ + + +glMultTransposeMatrix

Name

glMultTransposeMatrix — multiply the current matrix with the specified row-major ordered matrix

C Specification

void glMultTransposeMatrixd(const GLdouble *  m);
void glMultTransposeMatrixf(const GLfloat *  m);

Parameters

m

+ Points to 16 consecutive values that are used as the elements of + a + + + + 4 + × + 4 + + + row-major matrix. +

Description

+ glMultTransposeMatrix multiplies the current matrix with the one specified using m, and + replaces the current matrix with the product. +

+ The current matrix is determined by the current matrix mode (see + glMatrixMode). It is either the projection matrix, modelview matrix, + or the texture matrix. +

Examples

+ If the current matrix is + C + and the coordinates + to be transformed are + + + + v + = + + + v + ⁡ + + 0 + + + + v + ⁡ + + 1 + + + + v + ⁡ + + 2 + + + + v + ⁡ + + 3 + + + + + , + then the current transformation is + + + + C + × + v + + , + or +

+

+ + + + + + + + c + ⁡ + + 0 + + + + + + c + ⁡ + + 4 + + + + + + c + ⁡ + + 8 + + + + + + c + ⁡ + + 12 + + + + + + + + c + ⁡ + + 1 + + + + + + c + ⁡ + + 5 + + + + + + c + ⁡ + + 9 + + + + + + c + ⁡ + + 13 + + + + + + + + c + ⁡ + + 2 + + + + + + c + ⁡ + + 6 + + + + + + c + ⁡ + + 10 + + + + + + c + ⁡ + + 14 + + + + + + + + c + ⁡ + + 3 + + + + + + c + ⁡ + + 7 + + + + + + c + ⁡ + + 11 + + + + + + c + ⁡ + + 15 + + + + + + + × + + + + + + v + ⁡ + + 0 + + + + + + + + v + ⁡ + + 1 + + + + + + + + v + ⁡ + + 2 + + + + + + + + v + ⁡ + + 3 + + + + + + + +

+

+

+ Calling glMultTransposeMatrix with an argument of + + + + + m + ⁡ + + 16 + + + = + + + m + ⁡ + + 0 + + + + m + ⁡ + + 1 + + + ... + + m + ⁡ + + 15 + + + + + + replaces the current transformation with + + + + + + C + × + M + + + × + v + + , + or +

+

+ + + + + + + + c + ⁡ + + 0 + + + + + + c + ⁡ + + 4 + + + + + + c + ⁡ + + 8 + + + + + + c + ⁡ + + 12 + + + + + + + + c + ⁡ + + 1 + + + + + + c + ⁡ + + 5 + + + + + + c + ⁡ + + 9 + + + + + + c + ⁡ + + 13 + + + + + + + + c + ⁡ + + 2 + + + + + + c + ⁡ + + 6 + + + + + + c + ⁡ + + 10 + + + + + + c + ⁡ + + 14 + + + + + + + + c + ⁡ + + 3 + + + + + + c + ⁡ + + 7 + + + + + + c + ⁡ + + 11 + + + + + + c + ⁡ + + 15 + + + + + + + × + + + + + + m + ⁡ + + 0 + + + + + + m + ⁡ + + 1 + + + + + + m + ⁡ + + 2 + + + + + + m + ⁡ + + 3 + + + + + + + + m + ⁡ + + 4 + + + + + + m + ⁡ + + 5 + + + + + + m + ⁡ + + 6 + + + + + + m + ⁡ + + 7 + + + + + + + + m + ⁡ + + 8 + + + + + + m + ⁡ + + 9 + + + + + + m + ⁡ + + 10 + + + + + + m + ⁡ + + 11 + + + + + + + + m + ⁡ + + 12 + + + + + + m + ⁡ + + 13 + + + + + + m + ⁡ + + 14 + + + + + + m + ⁡ + + 15 + + + + + + + × + + + + + + v + ⁡ + + 0 + + + + + + + + v + ⁡ + + 1 + + + + + + + + v + ⁡ + + 2 + + + + + + + + v + ⁡ + + 3 + + + + + + + +

+

+

+ Where + v + is represented as a + + + + 4 + × + 1 + + + matrix. +

+ Calling glMultTransposeMatrix with matrix + M + is identical in operation to + glMultMatrix with + + + M + T + + , + where + T + represents the transpose. +

Notes

+ glMultTransposeMatrix is available only if the GL version is 1.3 or greater. +

+ While the elements of the matrix may be specified with + single or double precision, the GL may store or operate on these + values in less-than-single precision. +

+ The order of the multiplication is important. For example, if the current + transformation is a rotation, and glMultTransposeMatrix is called with a translation matrix, + the translation is done directly on the coordinates to be transformed, + while the rotation is done on the results of that translation. +

Errors

+ GL_INVALID_OPERATION is generated if glMultTransposeMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMultiDrawArrays.xml b/upstream-man-pages/man2/xhtml/glMultiDrawArrays.xml new file mode 100644 index 0000000..12c3369 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMultiDrawArrays.xml @@ -0,0 +1,85 @@ + + +glMultiDrawArrays

Name

glMultiDrawArrays — render multiple sets of primitives from array data

C Specification

void glMultiDrawArrays(GLenum  mode,
 GLint *  first,
 GLsizei *  count,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. +

first

+ Points to an array of starting indices in the enabled arrays. +

count

+ Points to an array of the number of indices to be rendered. +

primcount

+ Specifies the size of the first and count +

Description

+ glMultiDrawArrays specifies multiple sets of geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glMultiDrawArrays. +

+ glMultiDrawArrays behaves identically to glDrawArrays except that primcount + separate ranges of elements are specified instead. +

+ When glMultiDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed, and how the array elements + construct those primitives. If GL_VERTEX_ARRAY is not enabled, no + geometric primitives are generated. +

+ Vertex attributes that are modified by glMultiDrawArrays have an + unspecified value after glMultiDrawArrays returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glMultiDrawArrays executes. Attributes that aren't + modified remain well defined. +

Notes

+ glMultiDrawArrays is available only if the GL version is 1.4 or greater. +

+ glMultiDrawArrays is included in display lists. If glMultiDrawArrays is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if glMultiDrawArrays is executed between + the execution of glBegin and the corresponding glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMultiDrawElements.xml b/upstream-man-pages/man2/xhtml/glMultiDrawElements.xml new file mode 100644 index 0000000..b4bb7db --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMultiDrawElements.xml @@ -0,0 +1,80 @@ + + +glMultiDrawElements

Name

glMultiDrawElements — render multiple sets of primitives by specifying indices of array data elements

C Specification

void glMultiDrawElements(GLenum  mode,
 const GLsizei *  count,
 GLenum  type,
 const GLvoid **  indices,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_QUAD_STRIP, + GL_QUADS, + and GL_POLYGON are accepted. +

count

+ Points to an array of the elements counts. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the size of the count array. +

Description

+ glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine + calls. Instead of calling a GL function to pass each individual vertex, + normal, texture coordinate, edge flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to construct a + sequence of primitives with a single call to glMultiDrawElements. +

+ glMultiDrawElements is identical in operation to glDrawElements except that + primcount separate lists of elements are specified. +

+ Vertex attributes that are modified by glMultiDrawElements have an + unspecified value after glMultiDrawElements returns. For example, if + GL_COLOR_ARRAY is enabled, the value of the current color is + undefined after glMultiDrawElements executes. Attributes that aren't + modified maintain their previous values. +

Notes

+ glMultiDrawElements is available only if the GL version is 1.4 or greater. +

+ glMultiDrawElements is included in display lists. If glMultiDrawElements is entered into a + display list, + the necessary array data (determined by the array pointers and + enables) is also + entered into the display list. Because the array pointers and + enables are client-side state, their values affect display lists + when the lists are created, not when the lists are executed. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if glMultiDrawElements is executed between + the execution of glBegin and the corresponding glEnd. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glMultiTexCoord.xml b/upstream-man-pages/man2/xhtml/glMultiTexCoord.xml new file mode 100644 index 0000000..77c52d3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glMultiTexCoord.xml @@ -0,0 +1,132 @@ + + +glMultiTexCoord

Name

glMultiTexCoord — set the current texture coordinates

C Specification

void glMultiTexCoord1s(GLenum  target,
 GLshort  s);
void glMultiTexCoord1i(GLenum  target,
 GLint  s);
void glMultiTexCoord1f(GLenum  target,
 GLfloat  s);
void glMultiTexCoord1d(GLenum  target,
 GLdouble  s);
void glMultiTexCoord2s(GLenum  target,
 GLshort  s,
 GLshort  t);
void glMultiTexCoord2i(GLenum  target,
 GLint  s,
 GLint  t);
void glMultiTexCoord2f(GLenum  target,
 GLfloat  s,
 GLfloat  t);
void glMultiTexCoord2d(GLenum  target,
 GLdouble  s,
 GLdouble  t);
void glMultiTexCoord3s(GLenum  target,
 GLshort  s,
 GLshort  t,
 GLshort  r);
void glMultiTexCoord3i(GLenum  target,
 GLint  s,
 GLint  t,
 GLint  r);
void glMultiTexCoord3f(GLenum  target,
 GLfloat  s,
 GLfloat  t,
 GLfloat  r);
void glMultiTexCoord3d(GLenum  target,
 GLdouble  s,
 GLdouble  t,
 GLdouble  r);
void glMultiTexCoord4s(GLenum  target,
 GLshort  s,
 GLshort  t,
 GLshort  r,
 GLshort  q);
void glMultiTexCoord4i(GLenum  target,
 GLint  s,
 GLint  t,
 GLint  r,
 GLint  q);
void glMultiTexCoord4f(GLenum  target,
 GLfloat  s,
 GLfloat  t,
 GLfloat  r,
 GLfloat  q);
void glMultiTexCoord4d(GLenum  target,
 GLdouble  s,
 GLdouble  t,
 GLdouble  r,
 GLdouble  q);

Parameters

target

+ Specifies the texture unit whose coordinates should be modified. The number + of texture units is implementation dependent, but must be at least + two. Symbolic constant must be one of + GL_TEXTUREi, + where i ranges from 0 to GL_MAX_TEXTURE_COORDS - 1, + which is an implementation-dependent value. +

s, t, r, q

+ Specify s, t, r, and q texture coordinates for + target texture unit. Not all parameters are present in all forms + of the command. +

C Specification

void glMultiTexCoord1sv(GLenum  target,
 const GLshort *  v);
void glMultiTexCoord1iv(GLenum  target,
 const GLint *  v);
void glMultiTexCoord1fv(GLenum  target,
 const GLfloat *  v);
void glMultiTexCoord1dv(GLenum  target,
 const GLdouble *  v);
void glMultiTexCoord2sv(GLenum  target,
 const GLshort *  v);
void glMultiTexCoord2iv(GLenum  target,
 const GLint *  v);
void glMultiTexCoord2fv(GLenum  target,
 const GLfloat *  v);
void glMultiTexCoord2dv(GLenum  target,
 const GLdouble *  v);
void glMultiTexCoord3sv(GLenum  target,
 const GLshort *  v);
void glMultiTexCoord3iv(GLenum  target,
 const GLint *  v);
void glMultiTexCoord3fv(GLenum  target,
 const GLfloat *  v);
void glMultiTexCoord3dv(GLenum  target,
 const GLdouble *  v);
void glMultiTexCoord4sv(GLenum  target,
 const GLshort *  v);
void glMultiTexCoord4iv(GLenum  target,
 const GLint *  v);
void glMultiTexCoord4fv(GLenum  target,
 const GLfloat *  v);
void glMultiTexCoord4dv(GLenum  target,
 const GLdouble *  v);

Parameters

target

+ Specifies the texture unit whose coordinates should be modified. The number + of texture units is implementation dependent, but must be at least + two. Symbolic constant must be one of + GL_TEXTUREi, + where i ranges from 0 to GL_MAX_TEXTURE_COORDS - 1, + which is an implementation-dependent value. +

v

+ Specifies a pointer to an array of one, two, three, or four elements, + which in turn specify the + s, + t, + r, + and + q + texture coordinates. +

Description

+ glMultiTexCoord specifies texture coordinates in one, two, three, or four + dimensions. + glMultiTexCoord1 sets the current texture + coordinates to + + + + s + 0 + 0 + 1 + + ; + a call to glMultiTexCoord2 + sets them to + + + + s + t + 0 + 1 + + . + Similarly, glMultiTexCoord3 specifies the texture coordinates as + + + + s + t + r + 1 + + , + and + glMultiTexCoord4 + defines all four components explicitly as + + + + s + t + r + q + + . +

+ The current texture coordinates are part of the data + that is associated with each vertex and with the current + raster position. + Initially, the values for + + + + s + t + r + q + + + are + + + + 0 + 0 + 0 + 1 + + . +

+

Notes

+ glMultiTexCoord is only supported if the GL version is 1.3 or greater, or if + ARB_multitexture is included in the string returned by + glGetString when called with the argument GL_EXTENSIONS. +

+ The current texture coordinates can be updated at any time. + In particular, + glMultiTexCoord can be called between a call to glBegin and the corresponding + call to glEnd. +

+ It is always the case that GL_TEXTURE + i + = GL_TEXTURE0 + + i. +

Associated Gets

+ glGet with argument GL_CURRENT_TEXTURE_COORDS with appropriate + texture unit selected. +

+ glGet with argument GL_MAX_TEXTURE_COORDS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glNewList.xml b/upstream-man-pages/man2/xhtml/glNewList.xml new file mode 100644 index 0000000..715642b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glNewList.xml @@ -0,0 +1,131 @@ + + +glNewList

Name

glNewList — create or replace a display list

C Specification

void glNewList(GLuint  list,
 GLenum  mode);

Parameters

list

+ Specifies the display-list name. +

mode

+ Specifies the compilation mode, + which can be + GL_COMPILE or + GL_COMPILE_AND_EXECUTE. +

C Specification

void glEndList(  void);

Description

+ Display lists are groups of GL commands that have been stored + for subsequent execution. + Display lists are created with glNewList. + All subsequent commands are placed in the display list, + in the order issued, + until glEndList is called. +

+ glNewList has two arguments. + The first argument, + list, + is a positive integer that becomes the unique name for the display list. + Names can be created and reserved with glGenLists + and tested for uniqueness with glIsList. + The second argument, + mode, + is a symbolic constant that can assume one of two values: +

GL_COMPILE

+ Commands are merely compiled. +

GL_COMPILE_AND_EXECUTE

+ Commands are executed as they are compiled into the display list. +

+ Certain commands are not compiled into the display list + but are executed immediately, + regardless of the display-list mode. + These commands are + glAreTexturesResident, + glColorPointer, + glDeleteLists, + glDeleteTextures, + glDisableClientState, + glEdgeFlagPointer, + glEnableClientState, + glFeedbackBuffer, + glFinish, + glFlush, + glGenLists, + glGenTextures, + glIndexPointer, + glInterleavedArrays, + glIsEnabled, + glIsList, + glIsTexture, + glNormalPointer, + glPopClientAttrib, + glPixelStore, + glPushClientAttrib, + glReadPixels, + glRenderMode, + glSelectBuffer, + glTexCoordPointer, + glVertexPointer, + and all of the glGet commands. +

+ Similarly, + glTexImage1D, glTexImage2D, and glTexImage3D + are executed immediately and not compiled into the display list when their + first argument is GL_PROXY_TEXTURE_1D, GL_PROXY_TEXTURE_1D, or + GL_PROXY_TEXTURE_3D, respectively. +

+ When the ARB_imaging extension is supported, + glHistogram executes immediately when its argument is + GL_PROXY_HISTOGRAM. Similarly, glColorTable executes + immediately when its first argument is GL_PROXY_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, or + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, + glClientActiveTexture is not compiled into display lists, but + executed immediately. +

+ When glEndList is encountered, + the display-list definition is completed by associating the list + with the unique name list + (specified in the glNewList command). + If a display list with name list already exists, + it is replaced only when glEndList is called. +

Notes

+ glCallList and glCallLists can be entered into display lists. + Commands in the display list or lists executed by glCallList + or glCallLists are not included in the display list being created, + even if the list creation mode is GL_COMPILE_AND_EXECUTE. +

+ A display list is just a group of commands and arguments, so errors + generated by commands in a display list must be generated when the list is + executed. If the list is created in GL_COMPILE mode, errors are + not generated until the list is executed. +

Errors

+ GL_INVALID_VALUE is generated if list is 0. +

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glEndList is called + without a preceding glNewList, + or if glNewList is called while a display list is being defined. +

+ GL_INVALID_OPERATION is generated if glNewList or glEndList + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

+ GL_OUT_OF_MEMORY is generated if there is insufficient memory to + compile the display list. If the GL version is 1.1 or greater, no + change is made to the previous contents of the display list, if any, + and no other change is made to the GL state. (It is as if no attempt + had been made to create the new display list.) +

Associated Gets

+ glIsList +

+ glGet with argument GL_LIST_INDEX +

+ glGet with argument GL_LIST_MODE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glNormal.xml b/upstream-man-pages/man2/xhtml/glNormal.xml new file mode 100644 index 0000000..e6ec46b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glNormal.xml @@ -0,0 +1,66 @@ + + +glNormal

Name

glNormal — set the current normal vector

C Specification

void glNormal3b(GLbyte  nx,
 GLbyte  ny,
 GLbyte  nz);
void glNormal3d(GLdouble  nx,
 GLdouble  ny,
 GLdouble  nz);
void glNormal3f(GLfloat  nx,
 GLfloat  ny,
 GLfloat  nz);
void glNormal3i(GLint  nx,
 GLint  ny,
 GLint  nz);
void glNormal3s(GLshort  nx,
 GLshort  ny,
 GLshort  nz);

Parameters

nx, ny, nz

+ Specify the + x, + y, + and + z + coordinates of the new current normal. + The initial value of the current normal is the unit vector, (0, 0, 1). +

+

C Specification

void glNormal3bv(const GLbyte *  v);
void glNormal3dv(const GLdouble *  v);
void glNormal3fv(const GLfloat *  v);
void glNormal3iv(const GLint *  v);
void glNormal3sv(const GLshort *  v);

Parameters

v

+ Specifies a pointer to an array of three elements: + the + x, + y, + and + z + coordinates of the new current normal. +

+

Description

+ The current normal is set to the given coordinates + whenever glNormal is issued. + Byte, short, or integer arguments are converted to floating-point + format with a linear mapping that maps the most positive representable integer + value to 1.0 + and the most negative representable integer value to + + + -1.0 + . +

+ Normals specified with glNormal need not have unit length. + If GL_NORMALIZE is enabled, + then normals of any length specified with glNormal are normalized after transformation. + If GL_RESCALE_NORMAL is enabled, normals are scaled by a scaling factor + derived from the modelview matrix. GL_RESCALE_NORMAL requires that the + originally specified normals were of unit length, and that the modelview + matrix contain only uniform scales for proper results. + To enable and disable normalization, call glEnable and glDisable + with either GL_NORMALIZE or GL_RESCALE_NORMAL. + Normalization is initially disabled. +

Notes

+ The current normal can be updated at any time. + In particular, glNormal can be called between a call to glBegin and + the corresponding call to glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_NORMAL +

+ glIsEnabled with argument GL_NORMALIZE +

+ glIsEnabled with argument GL_RESCALE_NORMAL +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glNormalPointer.xml b/upstream-man-pages/man2/xhtml/glNormalPointer.xml new file mode 100644 index 0000000..237e0b8 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glNormalPointer.xml @@ -0,0 +1,108 @@ + + +glNormalPointer

Name

glNormalPointer — define an array of normals

C Specification

void glNormalPointer(GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

type

+ Specifies the data type of each coordinate in the array. + Symbolic constants + GL_BYTE, + GL_SHORT, + GL_INT, + GL_FLOAT, and + GL_DOUBLE + are accepted. The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive normals. If stride is + 0, the normals are understood to be tightly packed in + the array. The initial value is 0. +

pointer

+ Specifies a pointer to the first coordinate of the first normal in the + array. The initial value is 0. +

Description

+ glNormalPointer specifies the location and data format of an array of normals + to use when rendering. + type specifies the data type of each normal coordinate, + and stride specifies the byte stride from one + normal to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see glInterleavedArrays.) +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a normal array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as normal vertex array + client-side state (GL_NORMAL_ARRAY_BUFFER_BINDING). +

+ When a normal array is specified, + type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the normal array, call + glEnableClientState and glDisableClientState with the argument + GL_NORMAL_ARRAY. If + enabled, the normal array is used + when glDrawArrays, glMultiDrawArrays, glDrawElements, + glMultiDrawElements, glDrawRangeElements, or + glArrayElement is called. +

Notes

+ glNormalPointer is available only if the GL version is 1.1 or greater. +

+ The normal array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glNormalPointer is not allowed between + glBegin and the corresponding glEnd, + but an error may or may not be generated. If an error is not generated, + the operation is undefined. +

+ glNormalPointer is typically implemented on the client side. +

+ Normal array parameters are client-side state and are therefore not + saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. +

Errors

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_NORMAL_ARRAY +

+ glGet with argument GL_NORMAL_ARRAY_TYPE +

+ glGet with argument GL_NORMAL_ARRAY_STRIDE +

+ glGet with argument GL_NORMAL_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_NORMAL_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glOrtho.xml b/upstream-man-pages/man2/xhtml/glOrtho.xml new file mode 100644 index 0000000..9c72da5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glOrtho.xml @@ -0,0 +1,289 @@ + + +glOrtho

Name

glOrtho — multiply the current matrix with an orthographic matrix

C Specification

void glOrtho(GLdouble  left,
 GLdouble  right,
 GLdouble  bottom,
 GLdouble  top,
 GLdouble  nearVal,
 GLdouble  farVal);

Parameters

left, right

+ Specify the coordinates for the left and right vertical clipping planes. +

bottom, top

+ Specify the coordinates for the bottom and top horizontal clipping planes. +

nearVal, farVal

+ Specify the distances to the nearer and farther depth clipping planes. + These values are negative if the plane is to be behind the viewer. +

Description

+ glOrtho describes a transformation that produces a parallel projection. + The current matrix (see glMatrixMode) is multiplied by this matrix + and the result replaces the current matrix, as if + glMultMatrix were called with the following matrix + as its argument: +

+

+ + + + + + + + 2 + + + right + - + left + + + + + + + 0 + + + 0 + + + + t + x + + + + + + + 0 + + + + + 2 + + + top + - + bottom + + + + + + + 0 + + + + t + y + + + + + + + 0 + + + 0 + + + + + -2 + + + farVal + - + nearVal + + + + + + + + t + z + + + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + +

+

+ where +

+ + + t + x + + = + + - + + + + + right + + + left + + + + + right + - + left + + + + + + +

+

+ + + t + y + + = + + - + + + + + top + + + bottom + + + + + top + - + bottom + + + + + + +

+

+ + + t + z + + = + + - + + + + + farVal + + + nearVal + + + + + farVal + - + nearVal + + + + + + +

+

+ Typically, the matrix mode is GL_PROJECTION, and + + + + left + bottom + + - + nearVal + + + + and + + + + right + top + + - + nearVal + + + + specify the points on the near clipping plane that are mapped + to the lower left and upper right corners of the window, + respectively, + assuming that the eye is located at (0, 0, 0). + + + + - + farVal + + + specifies the location of the far clipping plane. + Both nearVal and farVal can be either positive or negative. +

+ Use glPushMatrix and glPopMatrix to save and restore + the current matrix stack. +

Errors

+ GL_INVALID_VALUE is generated if + left = right, or + bottom = top, or + near = far. +

+ GL_INVALID_OPERATION is generated if glOrtho + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPassThrough.xml b/upstream-man-pages/man2/xhtml/glPassThrough.xml new file mode 100644 index 0000000..92521b5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPassThrough.xml @@ -0,0 +1,41 @@ + + +glPassThrough

Name

glPassThrough — place a marker in the feedback buffer

C Specification

void glPassThrough(GLfloat  token);

Parameters

token

+ Specifies a marker value to be placed in the feedback buffer + following a GL_PASS_THROUGH_TOKEN. +

Description

+

+ Feedback is a GL render mode. + The mode is selected by calling + glRenderMode with GL_FEEDBACK. + When the GL is in feedback mode, + no pixels are produced by rasterization. + Instead, + information about primitives that would have been rasterized + is fed back to the application using the GL. + See the glFeedbackBuffer reference page for a description of the + feedback buffer and the values in it. +

+ glPassThrough inserts a user-defined marker in the feedback buffer + when it is executed in feedback mode. + token is returned as if it were a primitive; + it is indicated with its own unique identifying value: + GL_PASS_THROUGH_TOKEN. + The order of glPassThrough commands with respect to the specification + of graphics primitives is maintained. +

Notes

+ glPassThrough is ignored if the GL is not in feedback mode. +

Errors

+ GL_INVALID_OPERATION is generated if glPassThrough is executed between + the execution of glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_RENDER_MODE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPixelMap.xml b/upstream-man-pages/man2/xhtml/glPixelMap.xml new file mode 100644 index 0000000..39a5ca1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPixelMap.xml @@ -0,0 +1,327 @@ + + +glPixelMap

Name

glPixelMap — set up pixel transfer maps

C Specification

void glPixelMapfv(GLenum  map,
 GLsizei  mapsize,
 const GLfloat *  values);
void glPixelMapuiv(GLenum  map,
 GLsizei  mapsize,
 const GLuint *  values);
void glPixelMapusv(GLenum  map,
 GLsizei  mapsize,
 const GLushort *  values);

Parameters

map

+ Specifies a symbolic map name. + Must be one of the following: + GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, + GL_PIXEL_MAP_I_TO_A, + GL_PIXEL_MAP_R_TO_R, + GL_PIXEL_MAP_G_TO_G, + GL_PIXEL_MAP_B_TO_B, or + GL_PIXEL_MAP_A_TO_A. +

mapsize

+ Specifies the size of the map being defined. +

values

+ Specifies an array of mapsize values. +

Description

+ glPixelMap sets up translation tables, + or maps, + used by + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. + Additionally, if the ARB_imaging subset is supported, the + routines + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glHistogram, + glMinmax, and + glSeparableFilter2D. + Use of these maps is described completely in the + glPixelTransfer reference page, + and partly in the reference pages for the pixel and texture image commands. + Only the specification of the maps is described in this reference page. +

+ map is a symbolic map name, + indicating one of ten maps to set. + mapsize specifies the number of entries in the map, + and values is a pointer to an array of mapsize map values. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a pixel transfer map is + specified, values is treated as a byte offset into the buffer object's data store. +

+ The ten maps are as follows: +

GL_PIXEL_MAP_I_TO_I

+ Maps color indices to color indices. +

GL_PIXEL_MAP_S_TO_S

+ Maps stencil indices to stencil indices. +

GL_PIXEL_MAP_I_TO_R

+ Maps color indices to red components. +

GL_PIXEL_MAP_I_TO_G

+ Maps color indices to green components. +

GL_PIXEL_MAP_I_TO_B

+ Maps color indices to blue components. +

GL_PIXEL_MAP_I_TO_A

+ Maps color indices to alpha components. +

GL_PIXEL_MAP_R_TO_R

+ Maps red components to red components. +

GL_PIXEL_MAP_G_TO_G

+ Maps green components to green components. +

GL_PIXEL_MAP_B_TO_B

+ Maps blue components to blue components. +

GL_PIXEL_MAP_A_TO_A

+ Maps alpha components to alpha components. +

+ The entries in a map can be specified as single-precision + floating-point numbers, + unsigned short integers, + or unsigned int integers. + Maps that store color component values + (all but GL_PIXEL_MAP_I_TO_I and GL_PIXEL_MAP_S_TO_S) + retain their values in floating-point format, + with unspecified mantissa and exponent sizes. + Floating-point values specified by glPixelMapfv are converted directly + to the internal floating-point format of these maps, + then clamped to the range [0,1]. + Unsigned integer values specified by glPixelMapusv and + glPixelMapuiv are converted linearly such that + the largest representable integer maps to 1.0, + and 0 maps to 0.0. +

+ Maps that store indices, + GL_PIXEL_MAP_I_TO_I and GL_PIXEL_MAP_S_TO_S, + retain their values in fixed-point format, + with an unspecified number of bits to the right of the binary point. + Floating-point values specified by glPixelMapfv are converted directly + to the internal fixed-point format of these maps. + Unsigned integer values specified by glPixelMapusv and + glPixelMapuiv specify integer values, + with all 0's to the right of the binary point. +

+ The following table shows the initial sizes and values for each of the maps. + Maps that are indexed by either color or stencil indices must have + mapsize = + + + 2 + n + + + for some + n + or the results are undefined. + The maximum allowable size for each map depends on the implementation + and can be determined by calling glGet with argument + GL_MAX_PIXEL_MAP_TABLE. + The single maximum applies to all maps; it is at + least 32. +

+ map + + Lookup Index + + Lookup Value + + Initial Size + + Initial Value +
+ GL_PIXEL_MAP_I_TO_I + + color index + + color index + + 1 + + 0 +
+ GL_PIXEL_MAP_S_TO_S + + stencil index + + stencil index + + 1 + + 0 +
+ GL_PIXEL_MAP_I_TO_R + + color index + + R + + 1 + + 0 +
+ GL_PIXEL_MAP_I_TO_G + + color index + + G + + 1 + + 0 +
+ GL_PIXEL_MAP_I_TO_B + + color index + + B + + 1 + + 0 +
+ GL_PIXEL_MAP_I_TO_A + + color index + + A + + 1 + + 0 +
+ GL_PIXEL_MAP_R_TO_R + + R + + R + + 1 + + 0 +
+ GL_PIXEL_MAP_G_TO_G + + G + + G + + 1 + + 0 +
+ GL_PIXEL_MAP_B_TO_B + + B + + B + + 1 + + 0 +
+ GL_PIXEL_MAP_A_TO_A + + A + + A + + 1 + + 0 +

Errors

+ GL_INVALID_ENUM is generated if map is not an accepted value. +

+ GL_INVALID_VALUE is generated if mapsize is less than one + or larger than GL_MAX_PIXEL_MAP_TABLE. +

+ GL_INVALID_VALUE is generated if map is + GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, or + GL_PIXEL_MAP_I_TO_A, + and mapsize is not a power of two. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated by glPixelMapfv if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a GLfloat datum. +

+ GL_INVALID_OPERATION is generated by glPixelMapuiv if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a GLuint datum. +

+ GL_INVALID_OPERATION is generated by glPixelMapusv if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and values is not evenly divisible + into the number of bytes needed to store in memory a GLushort datum. +

+ GL_INVALID_OPERATION is generated if glPixelMap + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetPixelMap +

+ glGet with argument GL_PIXEL_MAP_I_TO_I_SIZE +

+ glGet with argument GL_PIXEL_MAP_S_TO_S_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_R_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_G_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_B_SIZE +

+ glGet with argument GL_PIXEL_MAP_I_TO_A_SIZE +

+ glGet with argument GL_PIXEL_MAP_R_TO_R_SIZE +

+ glGet with argument GL_PIXEL_MAP_G_TO_G_SIZE +

+ glGet with argument GL_PIXEL_MAP_B_TO_B_SIZE +

+ glGet with argument GL_PIXEL_MAP_A_TO_A_SIZE +

+ glGet with argument GL_MAX_PIXEL_MAP_TABLE +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPixelStore.xml b/upstream-man-pages/man2/xhtml/glPixelStore.xml new file mode 100644 index 0000000..dd0739a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPixelStore.xml @@ -0,0 +1,1192 @@ + + +glPixelStore

Name

glPixelStore — set pixel storage modes

C Specification

void glPixelStoref(GLenum  pname,
 GLfloat  param);
void glPixelStorei(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies the symbolic name of the parameter to be set. + Six values affect the packing of pixel data into memory: + GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_PIXELS, + GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_IMAGES, and + GL_PACK_ALIGNMENT. + Six more affect the unpacking of pixel data from memory: + GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH, + GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_IMAGES, and + GL_UNPACK_ALIGNMENT. +

param

+ Specifies the value that pname is set to. +

Description

+ glPixelStore sets pixel storage modes that affect the operation of subsequent + glDrawPixels and glReadPixels as well as the unpacking of + polygon stipple patterns (see glPolygonStipple), bitmaps (see + glBitmap), texture patterns (see glTexImage1D, + glTexImage2D, glTexImage3D, glTexSubImage1D, + glTexSubImage2D, glTexSubImage3D). + Additionally, if the ARB_imaging extension is supported, pixel + storage modes affect convolution filters + (see glConvolutionFilter1D, glConvolutionFilter2D, and + glSeparableFilter2D, color table (see glColorTable, and + glColorSubTable, and unpacking histogram (See glHistogram), + and minmax (See glMinmax) data. +

+ pname is a symbolic constant indicating the parameter to be set, and + param is the new value. Six of the twelve storage parameters affect + how pixel data is returned to client memory. + They are as follows: +

GL_PACK_SWAP_BYTES

+ If true, + byte ordering for multibyte color components, + depth components, + color indices, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is stored in memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_PACK_SWAP_BYTES is true. + GL_PACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_PACK_SWAP_BYTES. +

GL_PACK_LSB_FIRST

+ If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + This parameter is significant for bitmap data only. +

GL_PACK_ROW_LENGTH

+ If greater than 0, + GL_PACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping +

+ + + + k + = + + 8 + ⁢ + a + ⁢ + + + + + n + ⁢ + l + + + + + 8 + ⁢ + a + + + + + + + +

+ components or indices. +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_PACK_IMAGE_HEIGHT

+ If greater than 0, + GL_PACK_IMAGE_HEIGHT defines the number of pixels in an image + three-dimensional texture volume, where ``image'' is defined by all pixels + sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + ⁢ + h + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + ⁢ + h + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, where + n + is the number of components or indices + in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, the + width + argument to glTexImage3D otherwise), + h + is the number of + rows in a pixel image (GL_PACK_IMAGE_HEIGHT if it is greater than + 0, the + height + argument to the glTexImage3D routine otherwise), + a + is the value of + GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single + component (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, and GL_PACK_SKIP_IMAGES

+ These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated simply by + incrementing the pointer passed to glReadPixels. + Setting GL_PACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + ⁢ + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_PACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + ⁢ + m + + + components or indices, + where + m + is the number of components or indices per row, + as just computed in the GL_PACK_ROW_LENGTH section. + Setting GL_PACK_SKIP_IMAGES to + k + is equivalent to incrementing + the pointer by + + + + k + ⁢ + p + + , + where + p + is the number of components or indices + per image, as computed in the GL_PACK_IMAGE_HEIGHT section. +

GL_PACK_ALIGNMENT

+ Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). +

+ The other six of the twelve storage parameters affect how pixel data is + read from client memory. + These values are significant for glDrawPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glBitmap, and + glPolygonStipple. +

+ Additionally, if the ARB_imaging extension is supported, + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, and + glSeparableFilter2D. + They are as follows: +

GL_UNPACK_SWAP_BYTES

+ If true, + byte ordering for multibyte color components, + depth components, + color indices, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is taken from memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_UNPACK_SWAP_BYTES is true. + GL_UNPACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_UNPACK_SWAP_BYTES. +

GL_UNPACK_LSB_FIRST

+ If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + This is relevant only for bitmap data. +

GL_UNPACK_ROW_LENGTH

+ If greater than 0, + GL_UNPACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping +

+ + + + k + = + + 8 + ⁢ + a + ⁢ + + + + + n + ⁢ + l + + + + + 8 + ⁢ + a + + + + + + + +

+ components or indices. +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_UNPACK_IMAGE_HEIGHT

+ If greater than 0, + GL_UNPACK_IMAGE_HEIGHT defines the number of pixels in an image of + a three-dimensional texture volume. Where ``image'' is defined by all + pixel sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + ⁢ + h + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + ⁢ + h + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to glTexImage3D otherwise), + h + is the number of rows in an image (GL_UNPACK_IMAGE_HEIGHT if + it is greater than 0, the + height + argument to glTexImage3D otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_UNPACK_SKIP_PIXELS and GL_UNPACK_SKIP_ROWS

+ These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated by + incrementing the pointer passed to + glDrawPixels, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glBitmap, or + glPolygonStipple. + Setting GL_UNPACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + ⁢ + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_UNPACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + ⁢ + k + + + components or indices, + where + k + is the number of components or indices per row, + as just computed in the GL_UNPACK_ROW_LENGTH section. +

GL_UNPACK_ALIGNMENT

+ Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). +

+ The following table gives the type, + initial value, + and range of valid values for each storage parameter + that can be set with glPixelStore. +

+

+ pname + + Type + + Initial Value + + Valid Range +
+ GL_PACK_SWAP_BYTES + + boolean + + false + + true or false +
+ GL_PACK_LSB_FIRST + + boolean + + false + + true or false +
+ GL_PACK_ROW_LENGTH + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_IMAGE_HEIGHT + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_ROWS + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_PIXELS + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_IMAGES + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_ALIGNMENT + + integer + + 4 + + 1, 2, 4, or 8 +
+ GL_UNPACK_SWAP_BYTES + + boolean + + false + + true or false +
+ GL_UNPACK_LSB_FIRST + + boolean + + false + + true or false +
+ GL_UNPACK_ROW_LENGTH + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_IMAGE_HEIGHT + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_ROWS + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_PIXELS + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_IMAGES + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_ALIGNMENT + + integer + + 4 + + 1, 2, 4, or 8 +

+ glPixelStoref can be used to set any pixel store parameter. + If the parameter type is boolean, + then if param is 0, + the parameter is false; + otherwise it is set to true. + If pname is a integer type parameter, + param is rounded to the nearest integer. +

+ Likewise, glPixelStorei can also be used to set any of the + pixel store parameters. + Boolean parameters are set to false if param is 0 and true otherwise. +

Notes

+ The pixel storage modes in effect when + glDrawPixels, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glBitmap, + or glPolygonStipple is placed in a display list control the interpretation + of memory data. + Likewise, if the ARB_imaging extension is supported, the pixel + storage modes in effect when + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, of + glSeparableFilter2D is placed in a display list control the + interpretation of memory data. + The pixel storage modes in effect when a display list is executed are + not significant. +

+ Pixel storage modes are client state and must be pushed and restored + using + glPushClientAttrib and glPopClientAttrib. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_VALUE is generated if a negative row length, + pixel skip, + or row skip value is specified, + or if alignment is specified as other than 1, 2, 4, or 8. +

+ GL_INVALID_OPERATION is generated if glPixelStore + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_PACK_SWAP_BYTES +

+ glGet with argument GL_PACK_LSB_FIRST +

+ glGet with argument GL_PACK_ROW_LENGTH +

+ glGet with argument GL_PACK_IMAGE_HEIGHT +

+ glGet with argument GL_PACK_SKIP_ROWS +

+ glGet with argument GL_PACK_SKIP_PIXELS +

+ glGet with argument GL_PACK_SKIP_IMAGES +

+ glGet with argument GL_PACK_ALIGNMENT +

+ glGet with argument GL_UNPACK_SWAP_BYTES +

+ glGet with argument GL_UNPACK_LSB_FIRST +

+ glGet with argument GL_UNPACK_ROW_LENGTH +

+ glGet with argument GL_UNPACK_IMAGE_HEIGHT +

+ glGet with argument GL_UNPACK_SKIP_ROWS +

+ glGet with argument GL_UNPACK_SKIP_PIXELS +

+ glGet with argument GL_UNPACK_SKIP_IMAGES +

+ glGet with argument GL_UNPACK_ALIGNMENT +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPixelTransfer.xml b/upstream-man-pages/man2/xhtml/glPixelTransfer.xml new file mode 100644 index 0000000..9c8e749 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPixelTransfer.xml @@ -0,0 +1,943 @@ + + +glPixelTransfer

Name

glPixelTransfer — set pixel transfer modes

C Specification

void glPixelTransferf(GLenum  pname,
 GLfloat  param);
void glPixelTransferi(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies the symbolic name of the pixel transfer parameter to be set. + Must be one of the following: + GL_MAP_COLOR, + GL_MAP_STENCIL, + GL_INDEX_SHIFT, + GL_INDEX_OFFSET, + GL_RED_SCALE, + GL_RED_BIAS, + GL_GREEN_SCALE, + GL_GREEN_BIAS, + GL_BLUE_SCALE, + GL_BLUE_BIAS, + GL_ALPHA_SCALE, + GL_ALPHA_BIAS, + GL_DEPTH_SCALE, or + GL_DEPTH_BIAS. +

+ Additionally, if the ARB_imaging extension is supported, the + following symbolic names are accepted: + GL_POST_COLOR_MATRIX_RED_SCALE, + GL_POST_COLOR_MATRIX_GREEN_SCALE, + GL_POST_COLOR_MATRIX_BLUE_SCALE, + GL_POST_COLOR_MATRIX_ALPHA_SCALE, + GL_POST_COLOR_MATRIX_RED_BIAS, + GL_POST_COLOR_MATRIX_GREEN_BIAS, + GL_POST_COLOR_MATRIX_BLUE_BIAS, + GL_POST_COLOR_MATRIX_ALPHA_BIAS, + GL_POST_CONVOLUTION_RED_SCALE, + GL_POST_CONVOLUTION_GREEN_SCALE, + GL_POST_CONVOLUTION_BLUE_SCALE, + GL_POST_CONVOLUTION_ALPHA_SCALE, + GL_POST_CONVOLUTION_RED_BIAS, + GL_POST_CONVOLUTION_GREEN_BIAS, + GL_POST_CONVOLUTION_BLUE_BIAS, and + GL_POST_CONVOLUTION_ALPHA_BIAS. +

param

+ Specifies the value that pname is set to. +

Description

+ glPixelTransfer sets pixel transfer modes that affect the operation of subsequent + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D commands. + Additionally, if the ARB_imaging subset is supported, the + routines + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glHistogram, + glMinmax, and + glSeparableFilter2D are also affected. + The algorithms that are specified by pixel transfer modes operate on + pixels after they are read from the frame buffer + (glCopyPixels + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, and + glReadPixels), + or unpacked from client memory + (glDrawPixels, glTexImage1D, glTexImage2D, glTexImage3D, + glTexSubImage1D, glTexSubImage2D, and glTexSubImage3D). + Pixel transfer operations happen in the same order, + and in the same manner, + regardless of the command that resulted in the pixel operation. + Pixel storage modes + (see glPixelStore) + control the unpacking of pixels being read from client memory + and the packing of pixels being written back into client memory. +

+ Pixel transfer operations handle four fundamental pixel types: + color, + color index, + depth, and + stencil. + Color pixels consist of four floating-point values + with unspecified mantissa and exponent sizes, + scaled such that 0 represents zero intensity + and 1 represents full intensity. + Color indices comprise a single fixed-point value, + with unspecified precision to the right of the binary point. + Depth pixels comprise a single floating-point value, + with unspecified mantissa and exponent sizes, + scaled such that 0.0 represents the minimum depth buffer value, + and 1.0 represents the maximum depth buffer value. + Finally, + stencil pixels comprise a single fixed-point value, + with unspecified precision to the right of the binary point. +

+ The pixel transfer operations performed on the four basic pixel types are + as follows: +

Color

+ Each of the four color components is multiplied by a scale factor, + then added to a bias factor. + That is, + the red component is multiplied by GL_RED_SCALE, + then added to GL_RED_BIAS; + the green component is multiplied by GL_GREEN_SCALE, + then added to GL_GREEN_BIAS; + the blue component is multiplied by GL_BLUE_SCALE, + then added to GL_BLUE_BIAS; and + the alpha component is multiplied by GL_ALPHA_SCALE, + then added to GL_ALPHA_BIAS. + After all four color components are scaled and biased, + each is clamped to the range + + + + 0 + 1 + + . + All color, scale, and bias values are specified with glPixelTransfer. +

+ If GL_MAP_COLOR is true, + each color component is scaled by the size of the corresponding + color-to-color map, + then replaced by the contents of that map indexed by the scaled component. + That is, + the red component is scaled by GL_PIXEL_MAP_R_TO_R_SIZE, + then replaced by the contents of GL_PIXEL_MAP_R_TO_R indexed by itself. + The green component is scaled by GL_PIXEL_MAP_G_TO_G_SIZE, + then replaced by the contents of GL_PIXEL_MAP_G_TO_G indexed by itself. + The blue component is scaled by GL_PIXEL_MAP_B_TO_B_SIZE, + then replaced by the contents of GL_PIXEL_MAP_B_TO_B indexed by itself. + And + the alpha component is scaled by GL_PIXEL_MAP_A_TO_A_SIZE, + then replaced by the contents of GL_PIXEL_MAP_A_TO_A indexed by itself. + All components taken from the maps are then clamped to the range + + + + 0 + 1 + + . + GL_MAP_COLOR is specified with glPixelTransfer. + The contents of the various maps are specified with glPixelMap. +

+ If the ARB_imaging extension is supported, each of the four + color components may be scaled and biased after transformation by the + color matrix. + That is, + the red component is multiplied by GL_POST_COLOR_MATRIX_RED_SCALE, + then added to GL_POST_COLOR_MATRIX_RED_BIAS; + the green component is multiplied by GL_POST_COLOR_MATRIX_GREEN_SCALE, + then added to GL_POST_COLOR_MATRIX_GREEN_BIAS; + the blue component is multiplied by GL_POST_COLOR_MATRIX_BLUE_SCALE, + then added to GL_POST_COLOR_MATRIX_BLUE_BIAS; and + the alpha component is multiplied by GL_POST_COLOR_MATRIX_ALPHA_SCALE, + then added to GL_POST_COLOR_MATRIX_ALPHA_BIAS. + After all four color components are scaled and biased, + each is clamped to the range + + + + 0 + 1 + + . +

+ Similarly, if the ARB_imaging extension is supported, each of + the four color components may be scaled and biased after processing by + the enabled convolution filter. + That is, + the red component is multiplied by GL_POST_CONVOLUTION_RED_SCALE, + then added to GL_POST_CONVOLUTION_RED_BIAS; + the green component is multiplied by GL_POST_CONVOLUTION_GREEN_SCALE, + then added to GL_POST_CONVOLUTION_GREEN_BIAS; + the blue component is multiplied by GL_POST_CONVOLUTION_BLUE_SCALE, + then added to GL_POST_CONVOLUTION_BLUE_BIAS; and + the alpha component is multiplied by GL_POST_CONVOLUTION_ALPHA_SCALE, + then added to GL_POST_CONVOLUTION_ALPHA_BIAS. + After all four color components are scaled and biased, + each is clamped to the range + + + + 0 + 1 + + . +

Color index

+ Each color index is shifted left by GL_INDEX_SHIFT bits; any bits + beyond the number of fraction bits carried + by the fixed-point index are filled with zeros. + If GL_INDEX_SHIFT is negative, + the shift is to the right, + again zero filled. + Then GL_INDEX_OFFSET is added to the index. + GL_INDEX_SHIFT and GL_INDEX_OFFSET are specified with + glPixelTransfer. +

+ From this point, operation diverges depending on the required format of + the resulting pixels. + If the resulting pixels are to be written to a color index buffer, + or if they are being read back to client memory in GL_COLOR_INDEX format, + the pixels continue to be treated as indices. + If GL_MAP_COLOR is true, + each index is masked by + + + + 2 + n + + - + 1 + + , + where + n + is GL_PIXEL_MAP_I_TO_I_SIZE, + then replaced by the contents of GL_PIXEL_MAP_I_TO_I indexed by the + masked value. + GL_MAP_COLOR is specified with glPixelTransfer. + The contents of the index map is specified with glPixelMap. +

+ If the resulting pixels are to be written to an RGBA color buffer, + or if they are read back to client memory in a format other than + GL_COLOR_INDEX, + the pixels are converted from indices to colors by referencing the + four maps + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A. + Before being dereferenced, + the index is masked by + + + + 2 + n + + - + 1 + + , + where + n + is + GL_PIXEL_MAP_I_TO_R_SIZE for the red map, + GL_PIXEL_MAP_I_TO_G_SIZE for the green map, + GL_PIXEL_MAP_I_TO_B_SIZE for the blue map, and + GL_PIXEL_MAP_I_TO_A_SIZE for the alpha map. + All components taken from the maps are then clamped to the range + + + + 0 + 1 + + . + The contents of the four maps is specified with glPixelMap. +

Depth

+ Each depth value is multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + then clamped to the range + + + + 0 + 1 + + . +

Stencil

+ Each index is shifted GL_INDEX_SHIFT bits just as a color index is, + then added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is true, + each index is masked by + + + + 2 + n + + - + 1 + + , + where + n + is GL_PIXEL_MAP_S_TO_S_SIZE, + then replaced by the contents of GL_PIXEL_MAP_S_TO_S indexed by the + masked value. +

+ The following table gives the type, + initial value, + and range of valid values for each of the pixel transfer parameters + that are set with glPixelTransfer. +

+

+ pname + + Type + + Initial Value + + Valid Range +
+ GL_MAP_COLOR + + boolean + + false + + true/false +
+ GL_MAP_STENCIL + + boolean + + false + + true/false +
+ GL_INDEX_SHIFT + + integer + + 0 + + + + + + - + + + + + +
+ GL_INDEX_OFFSET + + integer + + 0 + + + + + + - + + + + + +
+ GL_RED_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_GREEN_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_BLUE_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_ALPHA_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_DEPTH_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_RED_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_GREEN_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_BLUE_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_ALPHA_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_DEPTH_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_RED_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_GREEN_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_BLUE_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_ALPHA_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_RED_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_GREEN_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_BLUE_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_COLOR_MATRIX_ALPHA_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_RED_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_GREEN_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_BLUE_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_ALPHA_SCALE + + float + + 1 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_RED_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_GREEN_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_BLUE_BIAS + + float + + 0 + + + + + + - + + + + + +
+ GL_POST_CONVOLUTION_ALPHA_BIAS + + float + + 0 + + + + + + - + + + + + +

+ glPixelTransferf can be used to set any pixel transfer parameter. + If the parameter type is boolean, + 0 implies false and any other value implies true. + If pname is an integer parameter, + param is rounded to the nearest integer. +

+ Likewise, + glPixelTransferi can be used to set any of the + pixel transfer parameters. + Boolean parameters are set to false if param is 0 and to true otherwise. + param is converted to floating point before being assigned to real-valued parameters. +

Notes

+ If a + glColorTable, + glColorSubTable, + glConvolutionFilter1D, + glConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawPixels, + glReadPixels, + glSeparableFilter2D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, or + glTexSubImage3D + command is placed in a display list + (see glNewList and glCallList), + the pixel transfer mode settings in effect when the display list is + executed + are the ones that are used. + They may be different from the settings when the command was compiled + into the display list. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_OPERATION is generated if glPixelTransfer + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MAP_COLOR +

+ glGet with argument GL_MAP_STENCIL +

+ glGet with argument GL_INDEX_SHIFT +

+ glGet with argument GL_INDEX_OFFSET +

+ glGet with argument GL_RED_SCALE +

+ glGet with argument GL_RED_BIAS +

+ glGet with argument GL_GREEN_SCALE +

+ glGet with argument GL_GREEN_BIAS +

+ glGet with argument GL_BLUE_SCALE +

+ glGet with argument GL_BLUE_BIAS +

+ glGet with argument GL_ALPHA_SCALE +

+ glGet with argument GL_ALPHA_BIAS +

+ glGet with argument GL_DEPTH_SCALE +

+ glGet with argument GL_DEPTH_BIAS +

+ glGet with argument GL_POST_COLOR_MATRIX_RED_SCALE +

+ glGet with argument GL_POST_COLOR_MATRIX_RED_BIAS +

+ glGet with argument GL_POST_COLOR_MATRIX_GREEN_SCALE +

+ glGet with argument GL_POST_COLOR_MATRIX_GREEN_BIAS +

+ glGet with argument GL_POST_COLOR_MATRIX_BLUE_SCALE +

+ glGet with argument GL_POST_COLOR_MATRIX_BLUE_BIAS +

+ glGet with argument GL_POST_COLOR_MATRIX_ALPHA_SCALE +

+ glGet with argument GL_POST_COLOR_MATRIX_ALPHA_BIAS +

+ glGet with argument GL_POST_CONVOLUTION_RED_SCALE +

+ glGet with argument GL_POST_CONVOLUTION_RED_BIAS +

+ glGet with argument GL_POST_CONVOLUTION_GREEN_SCALE +

+ glGet with argument GL_POST_CONVOLUTION_GREEN_BIAS +

+ glGet with argument GL_POST_CONVOLUTION_BLUE_SCALE +

+ glGet with argument GL_POST_CONVOLUTION_BLUE_BIAS +

+ glGet with argument GL_POST_CONVOLUTION_ALPHA_SCALE +

+ glGet with argument GL_POST_CONVOLUTION_ALPHA_BIAS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPixelZoom.xml b/upstream-man-pages/man2/xhtml/glPixelZoom.xml new file mode 100644 index 0000000..64bd32c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPixelZoom.xml @@ -0,0 +1,118 @@ + + +glPixelZoom

Name

glPixelZoom — specify the pixel zoom factors

C Specification

void glPixelZoom(GLfloat  xfactor,
 GLfloat  yfactor);

Parameters

xfactor, yfactor

+ Specify the + x + and + y + zoom factors for pixel write operations. +

Description

+ glPixelZoom specifies values for the + x + and + y + zoom factors. + During the execution of glDrawPixels or glCopyPixels, + if + ( + + xr + , + + + yr + ) + is the current raster position, + and a given element is in the + mth + row and + nth + column of the pixel rectangle, + then pixels whose centers are in the rectangle with corners at +

+ ( + + + xr + + + + n + · + xfactor + + + , + + + + yr + + + + m + · + yfactor + + + ) +

+ ( + + + xr + + + + + + n + + + 1 + + + · + xfactor + + + , + + + + yr + + + + + + m + + + 1 + + + · + yfactor + + + ) +

+ are candidates for replacement. + Any pixel whose center lies on the bottom or left edge of this rectangular + region is also modified. +

+ Pixel zoom factors are not limited to positive values. + Negative zoom factors reflect the resulting image about the current + raster position. +

Errors

+ GL_INVALID_OPERATION is generated if glPixelZoom + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ZOOM_X +

+ glGet with argument GL_ZOOM_Y +

See Also

+ glCopyPixels, + glDrawPixels +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPointParameter.xml b/upstream-man-pages/man2/xhtml/glPointParameter.xml new file mode 100644 index 0000000..b3005d3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPointParameter.xml @@ -0,0 +1,87 @@ + + +glPointParameter

Name

glPointParameter — specify point parameters

C Specification

void glPointParameterf(GLenum  pname,
 GLfloat  param);

void glPointParameteri(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies a single-valued point parameter. + GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MAX, + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. +

param

+ Specifies the value that pname will be set to. +

C Specification

void glPointParameterfv(GLenum  pname,
 const GLfloat *  params);

void glPointParameteriv(GLenum  pname,
 const GLint *  params);

Parameters

pname

+ Specifies a point parameter. + GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MAX, + GL_POINT_DISTANCE_ATTENUATION, + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. +

params

+ Specifies the value or values to be assigned to pname. + GL_POINT_DISTANCE_ATTENUATION requires an array of three values. + All other parameters accept an array containing only a single value. +

Description

+ The following values are accepted for pname: +

GL_POINT_SIZE_MIN

+

+ params is a single floating-point value that specifies the minimum point size. The default value is 0.0. +

GL_POINT_SIZE_MAX

+

+ params is a single floating-point value that specifies the maximum point size. The default value is 1.0. +

GL_POINT_FADE_THRESHOLD_SIZE

+

+ params is a single floating-point value that specifies the threshold value + to which point sizes are clamped if they exceed the specified value. The + default value is 1.0. +

GL_POINT_DISTANCE_ATTENUATION

+

+ params is an array of three floating-point values that specify the + coefficients used for scaling the computed point size. The default values + are + + + + 1 + 0 + 0 + + . +

GL_POINT_SPRITE_COORD_ORIGIN

+

+ params is a single enum specifying the point sprite texture coordinate origin, either GL_LOWER_LEFT or GL_UPPER_LEFT. + The default value is GL_UPPER_LEFT. +

Notes

+ glPointParameter is available only if the GL version is 1.4 or greater. +

+ GL_POINT_SPRITE_COORD_ORIGIN is available only if the GL version is 2.0 or greater. +

Errors

+ GL_INVALID_VALUE is generated If the value specified for + GL_POINT_SIZE_MIN, GL_POINT_SIZE_MAX, or + GL_POINT_FADE_THRESHOLD_SIZE is less than zero. +

+ GL_INVALID_ENUM is generated If the value specified for + GL_POINT_SPRITE_COORD_ORIGIN is not GL_LOWER_LEFT or GL_UPPER_LEFT. +

+ If the value for GL_POINT_SIZE_MIN is greater than + GL_POINT_SIZE_MAX, the point size after clamping is undefined, but no + error is generated. +

+

Associated Gets

+ glGet with argument GL_POINT_SIZE_MIN +

+ glGet with argument GL_POINT_SIZE_MAX +

+ glGet with argument GL_POINT_FADE_THRESHOLD_SIZE +

+ glGet with argument GL_POINT_DISTANCE_ATTENUATION +

+ glGet with argument GL_POINT_SPRITE_COORD_ORIGIN +

See Also

+ glPointSize +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPointSize.xml b/upstream-man-pages/man2/xhtml/glPointSize.xml new file mode 100644 index 0000000..b80584e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPointSize.xml @@ -0,0 +1,324 @@ + + +glPointSize

Name

glPointSize — specify the diameter of rasterized points

C Specification

void glPointSize(GLfloat  size);

Parameters

size

+ Specifies the diameter of rasterized points. + The initial value is 1. +

Description

+ glPointSize specifies the rasterized diameter of both aliased and antialiased + points. Using a point size other than 1 has different effects, depending + on whether point antialiasing is enabled. To enable and disable point + antialiasing, call glEnable and glDisable with argument + GL_POINT_SMOOTH. Point antialiasing is initially disabled. +

+ The specified point size is multiplied with a distance attenuation factor + and clamped to the specified point size range, and further clamped to the + implementation-dependent point size range to produce the derived point size + using +

+

+ + + pointSize + = + + clamp + ⁢ + + + size + × + + + + + 1 + + + a + + + + b + × + d + + + + + c + × + + d + 2 + + + + + + + + + + + + + +

+

+ where + d + is the eye-coordinate distance from the eye to the vertex, and + a, + b, + and + c + are the distance attenuation coefficients (see + glPointParameter). +

+ If multisampling is disabled, the computed point size is used as the + point's width. +

+ If multisampling is enabled, the point may be faded by modifying the point + alpha value (see glSampleCoverage) instead of allowing the point width + to go below a given threshold (see glPointParameter). In this case, + the width is further modified in the following manner: +

+

+ + + pointWidth + = + + + + + pointSize + + + threshold + + + ⁢ + + + + pointSize + >= + threshold + + + + otherwise + + + + + +

+

+ The point alpha value is modified by computing: +

+

+ + + pointAlpha + = + + + + + 1 + + + + + pointSize + threshold + + + 2 + + + + ⁢ + + + + pointSize + >= + threshold + + + + otherwise + + + + + +

+

+ If point antialiasing is disabled, the actual size is determined by + rounding the supplied size to the nearest integer. (If the rounding + results in the value 0, it is as if the point size were 1.) If the rounded + size is odd, then the center point + ( + + x + , + + + y + ) + of the pixel fragment + that represents the point is computed as +

+ + + + + + x + w + + + + + .5 + + + + y + w + + + + + .5 + + + +

+ where + w + subscripts indicate window coordinates. All pixels that lie + within the square grid of the rounded size centered at + ( + + x + , + + + y + ) + make + up the fragment. If the size is even, the center point is +

+ + + + + + x + w + + + + .5 + + + + + y + w + + + + .5 + + + + +

+ and the rasterized fragment's centers are the half-integer window + coordinates within the square of the rounded size centered at + + + + x + y + + . + All pixel fragments produced in rasterizing a nonantialiased point are + assigned the same associated data, that of the vertex corresponding to the + point. +

+ If antialiasing is enabled, then point rasterization produces a fragment + for each pixel square that intersects the region lying within the circle + having diameter equal to the current point size and centered at the point's + + + + x + w + + y + w + + + . + The coverage value for each fragment is the + window coordinate area of the intersection of the circular region with the + corresponding pixel square. This value is saved and used in the final + rasterization step. The data associated with each fragment is the data + associated with the point being rasterized. +

+ Not all sizes are supported when point antialiasing is enabled. If an + unsupported size is requested, the nearest supported size is used. Only + size 1 is guaranteed to be supported; others depend on the implementation. + To query the range of supported sizes and the size difference between + supported sizes within the range, call glGet with arguments + GL_SMOOTH_POINT_SIZE_RANGE and GL_SMOOTH_POINT_SIZE_GRANULARITY. + For aliased points, query the supported ranges and granularity with + glGet with arguments GL_ALIASED_POINT_SIZE_RANGE. +

Notes

+ The point size specified by glPointSize is always returned when + GL_POINT_SIZE is queried. Clamping and rounding for aliased and + antialiased points have no effect on the specified value. +

+ A non-antialiased point size may be clamped to an implementation-dependent + maximum. Although this maximum cannot be queried, it must be no less than + the maximum value for antialiased points, rounded to the nearest integer + value. +

+ GL_POINT_SIZE_RANGE and GL_POINT_SIZE_GRANULARITY are + deprecated in GL versions 1.2 and greater. Their functionality has been + replaced by GL_SMOOTH_POINT_SIZE_RANGE and + GL_SMOOTH_POINT_SIZE_GRANULARITY. +

Errors

+ GL_INVALID_VALUE is generated if size is less than or equal to 0. +

+ GL_INVALID_OPERATION is generated if glPointSize + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ALIASED_POINT_SIZE_RANGE +

+ glGet with argument GL_POINT_SIZE +

+ glGet with argument GL_POINT_SIZE_MIN +

+ glGet with argument GL_POINT_SIZE_MAX +

+ glGet with argument GL_POINT_FADE_THRESHOLD_SIZE +

+ glGet with argument GL_POINT_DISTANCE_ATTENUATION +

+ glGet with argument GL_SMOOTH_POINT_SIZE_RANGE +

+ glGet with argument GL_SMOOTH_POINT_SIZE_GRANULARITY +

+ glIsEnabled with argument GL_POINT_SMOOTH +

See Also

+ glEnable, + glPointParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPolygonMode.xml b/upstream-man-pages/man2/xhtml/glPolygonMode.xml new file mode 100644 index 0000000..9cf55ab --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPolygonMode.xml @@ -0,0 +1,83 @@ + + +glPolygonMode

Name

glPolygonMode — select a polygon rasterization mode

C Specification

void glPolygonMode(GLenum  face,
 GLenum  mode);

Parameters

face

+ Specifies the polygons that mode applies to. + Must be + GL_FRONT for front-facing polygons, + GL_BACK for back-facing polygons, + or GL_FRONT_AND_BACK for front- and back-facing polygons. +

mode

+ Specifies how polygons will be rasterized. + Accepted values are + GL_POINT, + GL_LINE, and + GL_FILL. + The initial value is GL_FILL for both front- and back-facing polygons. +

Description

+ glPolygonMode controls the interpretation of polygons for rasterization. + face describes which polygons mode applies to: + front-facing polygons (GL_FRONT), + back-facing polygons (GL_BACK), + or both (GL_FRONT_AND_BACK). + The polygon mode affects only the final rasterization of polygons. + In particular, + a polygon's vertices are lit and + the polygon is clipped and possibly culled before these modes are applied. +

+ Three modes are defined and can be specified in mode: +

GL_POINT

+ Polygon vertices that are marked as the start of a boundary edge + are drawn as points. + Point attributes such as + GL_POINT_SIZE and + GL_POINT_SMOOTH control + the rasterization of the points. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. +

GL_LINE

+ Boundary edges of the polygon are drawn as line segments. + They are treated as connected line segments for line stippling; + the line stipple counter and pattern are not reset between segments + (see glLineStipple). + Line attributes such as + GL_LINE_WIDTH and + GL_LINE_SMOOTH control + the rasterization of the lines. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. +

GL_FILL

+ The interior of the polygon is filled. + Polygon attributes such as + GL_POLYGON_STIPPLE and + GL_POLYGON_SMOOTH control the rasterization of the polygon. +

Examples

+ To draw a surface with filled back-facing polygons + and outlined front-facing polygons, + call +

+glPolygonMode(GL_FRONT, GL_LINE);
+            

+

Notes

+ Vertices are marked as boundary or nonboundary with an edge flag. + Edge flags are generated internally by the GL when it decomposes + polygons; they can be set explicitly using glEdgeFlag. +

Errors

+ GL_INVALID_ENUM is generated if either face or mode is not + an accepted value. +

+ GL_INVALID_OPERATION is generated if glPolygonMode + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_POLYGON_MODE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPolygonOffset.xml b/upstream-man-pages/man2/xhtml/glPolygonOffset.xml new file mode 100644 index 0000000..ccd73d4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPolygonOffset.xml @@ -0,0 +1,75 @@ + + +glPolygonOffset

Name

glPolygonOffset — set the scale and units used to calculate depth values

C Specification

void glPolygonOffset(GLfloat  factor,
 GLfloat  units);

Parameters

factor

+ Specifies a scale factor that is used to create a variable + depth offset for each polygon. The initial value is 0. +

units

+ Is multiplied by an implementation-specific value to + create a constant depth offset. The initial value is 0. +

Description

+ When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or + GL_POLYGON_OFFSET_POINT is enabled, each + fragment's depth value will be offset after it is interpolated + from the depth values of the appropriate vertices. + The value of the offset is + + + + + factor + × + DZ + + + + + r + × + units + + + , + where + + + DZ + + is a measurement of the change in depth relative to the screen + area of the polygon, and + r + is the smallest value that is guaranteed to + produce a resolvable offset for a given implementation. + The offset is added before the depth test is performed and before + the value is written into the depth buffer. +

+ glPolygonOffset is useful for rendering hidden-line images, for applying decals + to surfaces, and for rendering solids with highlighted edges. +

Notes

+ glPolygonOffset is available only if the GL version is 1.1 or greater. +

+ glPolygonOffset has no effect on depth coordinates placed in the + feedback buffer. +

+ glPolygonOffset has no effect on selection. +

Errors

+ GL_INVALID_OPERATION is generated if glPolygonOffset is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glIsEnabled with argument + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + or GL_POLYGON_OFFSET_POINT. +

+ glGet with argument GL_POLYGON_OFFSET_FACTOR or + GL_POLYGON_OFFSET_UNITS. +

See Also

+ glDepthFunc, + glEnable, + glGet, + glIsEnabled +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPolygonStipple.xml b/upstream-man-pages/man2/xhtml/glPolygonStipple.xml new file mode 100644 index 0000000..d7ff8a5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPolygonStipple.xml @@ -0,0 +1,137 @@ + + +glPolygonStipple

Name

glPolygonStipple — set the polygon stippling pattern

C Specification

void glPolygonStipple(const GLubyte *  pattern);

Parameters

pattern

+ Specifies a pointer to a + + + + 32 + × + 32 + + + stipple pattern that will be unpacked + from memory in the same way that glDrawPixels unpacks pixels. +

Description

+ Polygon stippling, + like line stippling + (see glLineStipple), + masks out certain fragments produced by rasterization, + creating a pattern. + Stippling is independent of polygon antialiasing. +

+ pattern is a pointer to a + + + + 32 + × + 32 + + + stipple pattern that is stored + in memory just like the pixel data supplied to a glDrawPixels + call with + + height + and + width + both equal to 32, a pixel format + of GL_COLOR_INDEX, and data type + of GL_BITMAP. + That is, + the stipple pattern is represented as a + + + + 32 + × + 32 + + + array + of 1-bit color indices packed in unsigned bytes. + glPixelStore parameters like GL_UNPACK_SWAP_BYTES + and GL_UNPACK_LSB_FIRST affect the assembling of the bits into a + stipple pattern. + Pixel transfer operations + (shift, offset, pixel map) + are not applied to the stipple image, + however. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a stipple pattern is + specified, pattern is treated as a byte offset into the buffer object's data store. +

+ To enable and disable polygon stippling, call + glEnable and glDisable + with argument GL_POLYGON_STIPPLE. Polygon stippling is initially + disabled. If it's enabled, + a rasterized polygon fragment with window coordinates + + + x + w + + + and + + + y + w + + + is sent to the next stage of the GL if and only if the + ( + + + x + w + + % + 32 + + )th + bit in the + ( + + + y + w + + % + 32 + + )th + row + of the stipple pattern is 1 (one). + When polygon stippling is disabled, it is as if the stipple pattern + consists of all 1's. +

Errors

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if glPolygonStipple + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetPolygonStipple +

+ glIsEnabled with argument GL_POLYGON_STIPPLE +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPopAttrib.xml b/upstream-man-pages/man2/xhtml/glPopAttrib.xml new file mode 100644 index 0000000..8009669 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPopAttrib.xml @@ -0,0 +1,4 @@ + + + +glPopAttrib diff --git a/upstream-man-pages/man2/xhtml/glPopClientAttrib.xml b/upstream-man-pages/man2/xhtml/glPopClientAttrib.xml new file mode 100644 index 0000000..5e20f89 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPopClientAttrib.xml @@ -0,0 +1,4 @@ + + + +glPopClientAttrib diff --git a/upstream-man-pages/man2/xhtml/glPopMatrix.xml b/upstream-man-pages/man2/xhtml/glPopMatrix.xml new file mode 100644 index 0000000..8265e72 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPopMatrix.xml @@ -0,0 +1,4 @@ + + + +glPopMatrix diff --git a/upstream-man-pages/man2/xhtml/glPopName.xml b/upstream-man-pages/man2/xhtml/glPopName.xml new file mode 100644 index 0000000..f46dcd2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPopName.xml @@ -0,0 +1,4 @@ + + + +glPopName diff --git a/upstream-man-pages/man2/xhtml/glPrioritizeTextures.xml b/upstream-man-pages/man2/xhtml/glPrioritizeTextures.xml new file mode 100644 index 0000000..eac5a59 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPrioritizeTextures.xml @@ -0,0 +1,71 @@ + + +glPrioritizeTextures

Name

glPrioritizeTextures — set texture residence priority

C Specification

void glPrioritizeTextures(GLsizei  n,
 const GLuint *  textures,
 const GLclampf *  priorities);

Parameters

n

+ Specifies the number of textures to be prioritized. +

textures

+ Specifies an array containing the names of the textures to be prioritized. +

priorities

+ Specifies an array containing the texture priorities. + A priority given in an element of priorities applies to the texture + named by the corresponding element of textures. +

Description

+ glPrioritizeTextures assigns the n texture priorities given in priorities to the + n textures named in textures. +

+ The GL establishes + a ``working set'' of textures that are resident in texture memory. + These textures may be bound to a texture target much more efficiently + than textures that are not resident. + By specifying a priority for each texture, + glPrioritizeTextures allows applications to guide the GL implementation in determining + which textures should be resident. +

+ The priorities given in priorities are clamped to the range + + + + 0 + 1 + + + before they are assigned. + 0 indicates the lowest priority; textures with priority 0 + are least likely to be resident. + 1 indicates the highest priority; textures with priority 1 + are most likely to be resident. + However, textures are not guaranteed to be resident until they are used. +

+ glPrioritizeTextures silently ignores attempts to prioritize texture 0 or any texture + name that does not correspond to an existing texture. +

+ glPrioritizeTextures does not require that any of the textures named by textures + be bound to a texture target. + glTexParameter may also be used to set a texture's priority, + but only if the texture is currently bound. + This is the only way to set the priority of a default texture. +

Notes

+ glPrioritizeTextures is available only if the GL version is 1.1 or greater. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

+ GL_INVALID_OPERATION is generated if glPrioritizeTextures is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexParameter with parameter name GL_TEXTURE_PRIORITY + retrieves the priority of a currently bound texture. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPushAttrib.xml b/upstream-man-pages/man2/xhtml/glPushAttrib.xml new file mode 100644 index 0000000..4cf1610 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPushAttrib.xml @@ -0,0 +1,570 @@ + + +glPushAttrib

Name

glPushAttrib — push and pop the server attribute stack

C Specification

void glPushAttrib(GLbitfield  mask);

Parameters

mask

+ Specifies a mask that indicates which attributes to save. Values for + mask are listed below. +

C Specification

void glPopAttrib(  void);

Description

+ glPushAttrib takes one argument, + a mask that indicates which groups of state variables + to save on the attribute stack. + Symbolic constants are used to set bits in the mask. + mask + is typically constructed by specifying the bitwise-or of several + of these constants together. + The special mask + GL_ALL_ATTRIB_BITS + can be used to save all stackable states. +

+ The symbolic mask constants and their associated GL state are as follows + (the second column lists which attributes are saved): +

+

+ GL_ACCUM_BUFFER_BIT + + Accumulation buffer clear value +
+ GL_COLOR_BUFFER_BIT + + GL_ALPHA_TEST enable bit +
+ + Alpha test function and reference value +
+ + GL_BLEND enable bit +
+ + Blending source and destination functions +
+ + Constant blend color +
+ + Blending equation +
+ + GL_DITHER enable bit +
+ + GL_DRAW_BUFFER setting +
+ + GL_COLOR_LOGIC_OP enable bit +
+ + GL_INDEX_LOGIC_OP enable bit +
+ + Logic op function +
+ + Color mode and index mode clear values +
+ + Color mode and index mode writemasks +
+ GL_CURRENT_BIT + + Current RGBA color +
+ + Current color index +
+ + Current normal vector +
+ + Current texture coordinates +
+ + Current raster position +
+ + GL_CURRENT_RASTER_POSITION_VALID flag +
+ + RGBA color associated with current raster position +
+ + Color index associated with current raster position +
+ + Texture coordinates associated with current raster position +
+ + GL_EDGE_FLAG flag +
+ GL_DEPTH_BUFFER_BIT + + GL_DEPTH_TEST enable bit +
+ + Depth buffer test function +
+ + Depth buffer clear value +
+ + GL_DEPTH_WRITEMASK enable bit +
+ GL_ENABLE_BIT + + GL_ALPHA_TEST flag +
+ + GL_AUTO_NORMAL flag +
+ + GL_BLEND flag +
+ + Enable bits for the user-definable clipping planes +
+ + GL_COLOR_MATERIAL +
+ + GL_CULL_FACE flag +
+ + GL_DEPTH_TEST flag +
+ + GL_DITHER flag +
+ + GL_FOG flag +
+ + GL_LIGHTi + where + 0 <= i < GL_MAX_LIGHTS + +
+ + GL_LIGHTING flag +
+ + GL_LINE_SMOOTH flag +
+ + GL_LINE_STIPPLE flag +
+ + GL_COLOR_LOGIC_OP flag +
+ + GL_INDEX_LOGIC_OP flag +
+ + GL_MAP1_x where x is a map type +
+ + GL_MAP2_x where x is a map type +
+ + GL_MULTISAMPLE flag +
+ + GL_NORMALIZE flag +
+ + GL_POINT_SMOOTH flag +
+ + GL_POLYGON_OFFSET_LINE flag +
+ + GL_POLYGON_OFFSET_FILL flag +
+ + GL_POLYGON_OFFSET_POINT flag +
+ + GL_POLYGON_SMOOTH flag +
+ + GL_POLYGON_STIPPLE flag +
+ + GL_SAMPLE_ALPHA_TO_COVERAGE flag +
+ + GL_SAMPLE_ALPHA_TO_ONE flag +
+ + GL_SAMPLE_COVERAGE flag +
+ + GL_SCISSOR_TEST flag +
+ + GL_STENCIL_TEST flag +
+ + GL_TEXTURE_1D flag +
+ + GL_TEXTURE_2D flag +
+ + GL_TEXTURE_3D flag +
+ + Flags GL_TEXTURE_GEN_x where x is S, T, R, or Q +
+ GL_EVAL_BIT + + GL_MAP1_x enable bits, where x is a map type +
+ + GL_MAP2_x enable bits, where x is a map type +
+ + 1D grid endpoints and divisions +
+ + 2D grid endpoints and divisions +
+ + GL_AUTO_NORMAL enable bit +
+ GL_FOG_BIT + + GL_FOG enable bit +
+ + Fog color +
+ + Fog density +
+ + Linear fog start +
+ + Linear fog end +
+ + Fog index +
+ + GL_FOG_MODE value +
+ GL_HINT_BIT + + GL_PERSPECTIVE_CORRECTION_HINT setting +
+ + GL_POINT_SMOOTH_HINT setting +
+ + GL_LINE_SMOOTH_HINT setting +
+ + GL_POLYGON_SMOOTH_HINT setting +
+ + GL_FOG_HINT setting +
+ + GL_GENERATE_MIPMAP_HINT setting +
+ + GL_TEXTURE_COMPRESSION_HINT setting +
+ GL_LIGHTING_BIT + + GL_COLOR_MATERIAL enable bit +
+ + GL_COLOR_MATERIAL_FACE value +
+ + Color material parameters that are tracking the current color +
+ + Ambient scene color +
+ + GL_LIGHT_MODEL_LOCAL_VIEWER value +
+ + GL_LIGHT_MODEL_TWO_SIDE setting +
+ + GL_LIGHTING enable bit +
+ + Enable bit for each light +
+ + Ambient, diffuse, and specular intensity for each light +
+ + Direction, position, exponent, and cutoff angle for each light +
+ + Constant, linear, and quadratic attenuation factors for each light +
+ + Ambient, diffuse, specular, and emissive color for each material +
+ + Ambient, diffuse, and specular color indices for each material +
+ + Specular exponent for each material +
+ + GL_SHADE_MODEL setting +
+ GL_LINE_BIT + + GL_LINE_SMOOTH flag +
+ + GL_LINE_STIPPLE enable bit +
+ + Line stipple pattern and repeat counter +
+ + Line width +
+ GL_LIST_BIT + + GL_LIST_BASE setting +
+ GL_MULTISAMPLE_BIT + + GL_MULTISAMPLE flag +
+ + GL_SAMPLE_ALPHA_TO_COVERAGE flag +
+ + GL_SAMPLE_ALPHA_TO_ONE flag +
+ + GL_SAMPLE_COVERAGE flag +
+ + GL_SAMPLE_COVERAGE_VALUE value +
+ + GL_SAMPLE_COVERAGE_INVERT value +
+ GL_PIXEL_MODE_BIT + + GL_RED_BIAS and GL_RED_SCALE settings +
+ + GL_GREEN_BIAS and GL_GREEN_SCALE values +
+ + GL_BLUE_BIAS and GL_BLUE_SCALE +
+ + GL_ALPHA_BIAS and GL_ALPHA_SCALE +
+ + GL_DEPTH_BIAS and GL_DEPTH_SCALE +
+ + GL_INDEX_OFFSET and GL_INDEX_SHIFT values +
+ + GL_MAP_COLOR and GL_MAP_STENCIL flags +
+ + GL_ZOOM_X and GL_ZOOM_Y factors +
+ + GL_READ_BUFFER setting +
+ GL_POINT_BIT + + GL_POINT_SMOOTH flag +
+ + Point size +
+ GL_POLYGON_BIT + + GL_CULL_FACE enable bit +
+ + GL_CULL_FACE_MODE value +
+ + GL_FRONT_FACE indicator +
+ + GL_POLYGON_MODE setting +
+ + GL_POLYGON_SMOOTH flag +
+ + GL_POLYGON_STIPPLE enable bit +
+ + GL_POLYGON_OFFSET_FILL flag +
+ + GL_POLYGON_OFFSET_LINE flag +
+ + GL_POLYGON_OFFSET_POINT flag +
+ + GL_POLYGON_OFFSET_FACTOR +
+ + GL_POLYGON_OFFSET_UNITS +
+ GL_POLYGON_STIPPLE_BIT + + Polygon stipple image +
+ GL_SCISSOR_BIT + + GL_SCISSOR_TEST flag +
+ + Scissor box +
+ GL_STENCIL_BUFFER_BIT + + GL_STENCIL_TEST enable bit +
+ + Stencil function and reference value +
+ + Stencil value mask +
+ + Stencil fail, pass, and depth buffer pass actions +
+ + Stencil buffer clear value +
+ + Stencil buffer writemask +
+ GL_TEXTURE_BIT + + Enable bits for the four texture coordinates +
+ + Border color for each texture image +
+ + Minification function for each texture image +
+ + Magnification function for each texture image +
+ + Texture coordinates and wrap mode for each texture image +
+ + Color and mode for each texture environment +
+ + Enable bits GL_TEXTURE_GEN_x, x is S, T, R, and Q +
+ + GL_TEXTURE_GEN_MODE setting for S, T, R, and Q +
+ + glTexGen plane equations for S, T, R, and Q +
+ + Current texture bindings (for example, GL_TEXTURE_BINDING_2D) +
+ GL_TRANSFORM_BIT + + Coefficients of the six clipping planes +
+ + Enable bits for the user-definable clipping planes +
+ + GL_MATRIX_MODE value +
+ + GL_NORMALIZE flag +
+ + GL_RESCALE_NORMAL flag +
+ GL_VIEWPORT_BIT + + Depth range (near and far) +
+ + Viewport origin and extent +

+ glPopAttrib restores the values of the state variables saved with the last + glPushAttrib command. + Those not saved are left unchanged. +

+ It is an error to push attributes onto a full stack + or to pop attributes off an empty stack. + In either case, the error flag is set + and no other change is made to GL state. +

+ Initially, the attribute stack is empty. +

Notes

+ Not all values for GL state can be saved on the attribute stack. + For example, + render mode state, + and select and feedback state cannot be saved. + Client state must be saved with + glPushClientAttrib. +

+ The depth of the attribute stack depends on the implementation, + but it must be at least 16. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, pushing and + popping texture state applies to all supported texture units. +

Errors

+ GL_STACK_OVERFLOW is generated if glPushAttrib is called while + the attribute stack is full. +

+ GL_STACK_UNDERFLOW is generated if glPopAttrib is called while + the attribute stack is empty. +

+ GL_INVALID_OPERATION is generated if glPushAttrib or glPopAttrib + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_ATTRIB_STACK_DEPTH +

+ glGet with argument GL_MAX_ATTRIB_STACK_DEPTH +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPushClientAttrib.xml b/upstream-man-pages/man2/xhtml/glPushClientAttrib.xml new file mode 100644 index 0000000..40ef1bc --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPushClientAttrib.xml @@ -0,0 +1,81 @@ + + +glPushClientAttrib

Name

glPushClientAttrib — push and pop the client attribute stack

C Specification

void glPushClientAttrib(GLbitfield  mask);

Parameters

mask

+ Specifies a mask that indicates which attributes to save. Values for + mask are listed below. +

C Specification

void glPopClientAttrib(  void);

Description

+ glPushClientAttrib takes one argument, + a mask that indicates which groups of client-state variables + to save on the client attribute stack. + Symbolic constants are used to set bits in the mask. + mask + is typically constructed by specifying the bitwise-or of several + of these constants together. + The special mask + GL_CLIENT_ALL_ATTRIB_BITS + can be used to save all stackable client state. +

+ The symbolic mask constants and their associated GL client state are as follows + (the second column lists which attributes are saved): +

+ GL_CLIENT_PIXEL_STORE_BIT Pixel storage modes + GL_CLIENT_VERTEX_ARRAY_BIT Vertex arrays (and enables) +

+ glPopClientAttrib restores the values of the client-state variables + saved with the last glPushClientAttrib. + Those not saved are left unchanged. +

+ It is an error to push attributes onto a full client attribute stack + or to pop attributes off an empty stack. + In either case, the error flag is set, + and no other change is made to GL state. +

+ Initially, the client attribute stack is empty. +

Notes

+ glPushClientAttrib is available only if the GL version is 1.1 or greater. +

+ Not all values for GL client state can be saved on the attribute stack. + For example, select and feedback state cannot be saved. +

+ The depth of the attribute stack depends on the implementation, + but it must be at least 16. +

+ Use glPushAttrib and glPopAttrib to push and restore + state that is kept on the server. Only pixel storage modes and + vertex array state may be pushed and popped with + glPushClientAttrib and glPopClientAttrib. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, pushing and + popping client vertex array state applies to all supported texture units, + and the active client texture state. +

Errors

+ GL_STACK_OVERFLOW is generated if glPushClientAttrib is called while + the attribute stack is full. +

+ GL_STACK_UNDERFLOW is generated if glPopClientAttrib is called while + the attribute stack is empty. +

Associated Gets

+ glGet with argument GL_ATTRIB_STACK_DEPTH +

+ glGet with argument GL_MAX_CLIENT_ATTRIB_STACK_DEPTH +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPushMatrix.xml b/upstream-man-pages/man2/xhtml/glPushMatrix.xml new file mode 100644 index 0000000..5002af5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPushMatrix.xml @@ -0,0 +1,80 @@ + + +glPushMatrix

Name

glPushMatrix — push and pop the current matrix stack

C Specification

void glPushMatrix(  void);

C Specification

void glPopMatrix(  void);

Description

+ There is a stack of matrices for each of the matrix modes. + In GL_MODELVIEW mode, + the stack depth is at least 32. + In the other modes, + GL_COLOR, GL_PROJECTION, and GL_TEXTURE, + the depth is at least 2. + The current matrix in any mode is the matrix on the top of the stack + for that mode. +

+ glPushMatrix pushes the current matrix stack down by one, + duplicating the current matrix. + That is, + after a glPushMatrix call, + the matrix on top of the stack is identical to the one below it. +

+ glPopMatrix pops the current matrix stack, + replacing the current matrix with the one below it on the stack. +

+ Initially, each of the stacks contains one matrix, an identity matrix. +

+ It is an error to push a full matrix stack + or to pop a matrix stack that contains only a single matrix. + In either case, the error flag is set + and no other change is made to GL state. +

Errors

+ GL_STACK_OVERFLOW is generated if glPushMatrix is called while + the current matrix stack is full. +

+ GL_STACK_UNDERFLOW is generated if glPopMatrix is called while + the current matrix stack contains only a single matrix. +

+ GL_INVALID_OPERATION is generated if glPushMatrix or glPopMatrix + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

+ glGet with argument GL_COLOR_MATRIX_STACK_DEPTH +

+ glGet with argument GL_MODELVIEW_STACK_DEPTH +

+ glGet with argument GL_PROJECTION_STACK_DEPTH +

+ glGet with argument GL_TEXTURE_STACK_DEPTH +

+ glGet with argument GL_MAX_MODELVIEW_STACK_DEPTH +

+ glGet with argument GL_MAX_PROJECTION_STACK_DEPTH +

+ glGet with argument GL_MAX_TEXTURE_STACK_DEPTH +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glPushName.xml b/upstream-man-pages/man2/xhtml/glPushName.xml new file mode 100644 index 0000000..e76c65a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glPushName.xml @@ -0,0 +1,50 @@ + + +glPushName

Name

glPushName — push and pop the name stack

C Specification

void glPushName(GLuint  name);

Parameters

name

+ Specifies a name that will be pushed onto the name stack. +

C Specification

void glPopName(  void);

Description

+ The name stack is used during selection mode to allow sets of rendering + commands to be uniquely identified. + It consists of an ordered set of unsigned integers and is initially empty. +

+ glPushName causes name to be pushed onto the name stack. + glPopName pops one name off the top of the stack. +

+ The maximum name stack depth is implementation-dependent; call + GL_MAX_NAME_STACK_DEPTH to find out the value for a particular + implementation. It is an + error to push a name onto a full stack + or to pop a name off an empty stack. + It is also an error to manipulate the name stack between the execution of + glBegin and the corresponding execution of glEnd. + In any of these cases, the error flag is set and no other change is + made to GL state. +

+ The name stack is always empty while the render mode is not GL_SELECT. + Calls to glPushName or glPopName while the render mode is not + GL_SELECT are ignored. +

Errors

+ GL_STACK_OVERFLOW is generated if glPushName is called while the + name stack is full. +

+ GL_STACK_UNDERFLOW is generated if glPopName is called while the + name stack is empty. +

+ GL_INVALID_OPERATION is generated if glPushName or glPopName + is executed between a call to glBegin and the corresponding call to + glEnd. +

Associated Gets

+ glGet with argument GL_NAME_STACK_DEPTH +

+ glGet with argument GL_MAX_NAME_STACK_DEPTH +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glRasterPos.xml b/upstream-man-pages/man2/xhtml/glRasterPos.xml new file mode 100644 index 0000000..cdd81a7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glRasterPos.xml @@ -0,0 +1,181 @@ + + +glRasterPos

Name

glRasterPos — specify the raster position for pixel operations

C Specification

void glRasterPos2s(GLshort  x,
 GLshort  y);
void glRasterPos2i(GLint  x,
 GLint  y);
void glRasterPos2f(GLfloat  x,
 GLfloat  y);
void glRasterPos2d(GLdouble  x,
 GLdouble  y);
void glRasterPos3s(GLshort  x,
 GLshort  y,
 GLshort  z);
void glRasterPos3i(GLint  x,
 GLint  y,
 GLint  z);
void glRasterPos3f(GLfloat  x,
 GLfloat  y,
 GLfloat  z);
void glRasterPos3d(GLdouble  x,
 GLdouble  y,
 GLdouble  z);
void glRasterPos4s(GLshort  x,
 GLshort  y,
 GLshort  z,
 GLshort  w);
void glRasterPos4i(GLint  x,
 GLint  y,
 GLint  z,
 GLint  w);
void glRasterPos4f(GLfloat  x,
 GLfloat  y,
 GLfloat  z,
 GLfloat  w);
void glRasterPos4d(GLdouble  x,
 GLdouble  y,
 GLdouble  z,
 GLdouble  w);

Parameters

x, y, z, w

+ Specify the + x, + y, + z, + and + w + object coordinates + (if present) + for the raster + position. +

C Specification

void glRasterPos2sv(const GLshort *  v);
void glRasterPos2iv(const GLint *  v);
void glRasterPos2fv(const GLfloat *  v);
void glRasterPos2dv(const GLdouble *  v);
void glRasterPos3sv(const GLshort *  v);
void glRasterPos3iv(const GLint *  v);
void glRasterPos3fv(const GLfloat *  v);
void glRasterPos3dv(const GLdouble *  v);
void glRasterPos4sv(const GLshort *  v);
void glRasterPos4iv(const GLint *  v);
void glRasterPos4fv(const GLfloat *  v);
void glRasterPos4dv(const GLdouble *  v);

Parameters

v

+ Specifies a pointer to an array of two, + three, + or four elements, + specifying + x, + y, + z, + and + w + coordinates, respectively. +

Description

+ The GL maintains a 3D position in window coordinates. + This position, + called the raster position, + is used to position pixel and bitmap write operations. It is + maintained with subpixel accuracy. + See glBitmap, glDrawPixels, and glCopyPixels. +

+ The current raster position consists of three window coordinates + (x, + y, + z), + a clip coordinate value + (w), + an eye coordinate distance, + a valid bit, + and associated color data and texture coordinates. + The + w + coordinate is a clip coordinate, + because + w + is not projected to window coordinates. + glRasterPos4 specifies object coordinates + x, + y, + z, + and + w + explicitly. + glRasterPos3 specifies object coordinate + x, + y, + and + z + explicitly, + while + w + is implicitly set to 1. + glRasterPos2 uses the argument values for + x + and + y + while + implicitly setting + z + and + w + to 0 and 1. +

+ The object coordinates presented by glRasterPos are treated just like those + of a glVertex command: + They are transformed by the current modelview and projection matrices + and passed to the clipping stage. + If the vertex is not culled, + then it is projected and scaled to window coordinates, + which become the new current raster position, + and the GL_CURRENT_RASTER_POSITION_VALID flag is set. + If the vertex + is + culled, + then the valid bit is cleared and the current raster position + and associated color and texture coordinates are undefined. +

+ The current raster position also includes some associated color data + and texture coordinates. + If lighting is enabled, + then GL_CURRENT_RASTER_COLOR + (in RGBA mode) + or GL_CURRENT_RASTER_INDEX + (in color index mode) + is set to the color produced by the lighting calculation + (see glLight, glLightModel, and + glShadeModel). + If lighting is disabled, + current color + (in RGBA mode, state variable GL_CURRENT_COLOR) + or color index + (in color index mode, state variable GL_CURRENT_INDEX) + is used to update the current raster color. + GL_CURRENT_RASTER_SECONDARY_COLOR (in RGBA mode) is likewise updated. +

+ Likewise, + GL_CURRENT_RASTER_TEXTURE_COORDS is updated as a function + of GL_CURRENT_TEXTURE_COORDS, + based on the texture matrix and the texture generation functions + (see glTexGen). + Finally, + the distance from the origin of the eye coordinate system to the + vertex as transformed by only the modelview matrix replaces + GL_CURRENT_RASTER_DISTANCE. +

+ Initially, the current raster position is (0, 0, 0, 1), + the current raster distance is 0, + the valid bit is set, + the associated RGBA color is (1, 1, 1, 1), + the associated color index is 1, + and the associated texture coordinates are (0, 0, 0, 1). + In RGBA mode, + GL_CURRENT_RASTER_INDEX is always 1; + in color index mode, + the current raster RGBA color always maintains its initial value. +

Notes

+ The raster position is modified by glRasterPos, glBitmap, and glWindowPos. +

+ When the raster position coordinates are invalid, + drawing commands that are based on the raster position are + ignored (that is, they do not result in changes to GL state). +

+ Calling glDrawElements or glDrawRangeElements may leave the + current color or index indeterminate. + If glRasterPos is executed while the current color or index is indeterminate, the + current raster color or current raster index remains indeterminate. +

+ To set a valid raster position outside the viewport, first set a valid + raster position, then call glBitmap with NULL as the bitmap + parameter. +

+ When the ARB_imaging extension is supported, there are distinct + raster texture coordinates for each texture unit. Each texture unit's + current raster texture coordinates are updated by glRasterPos. +

Errors

+ GL_INVALID_OPERATION is generated if glRasterPos + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_RASTER_POSITION +

+ glGet with argument GL_CURRENT_RASTER_POSITION_VALID +

+ glGet with argument GL_CURRENT_RASTER_DISTANCE +

+ glGet with argument GL_CURRENT_RASTER_COLOR +

+ glGet with argument GL_CURRENT_RASTER_SECONDARY_COLOR +

+ glGet with argument GL_CURRENT_RASTER_INDEX +

+ glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glReadBuffer.xml b/upstream-man-pages/man2/xhtml/glReadBuffer.xml new file mode 100644 index 0000000..b24dc47 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glReadBuffer.xml @@ -0,0 +1,67 @@ + + +glReadBuffer

Name

glReadBuffer — select a color buffer source for pixels

C Specification

void glReadBuffer(GLenum  mode);

Parameters

mode

+ Specifies a color buffer. + Accepted values are + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and + GL_AUXi, + where i is between 0 and the value of GL_AUX_BUFFERS minus 1. +

Description

+ glReadBuffer specifies a color buffer as the source for subsequent + glReadPixels, glCopyTexImage1D, glCopyTexImage2D, + glCopyTexSubImage1D, glCopyTexSubImage2D, + glCopyTexSubImage3D, and + glCopyPixels commands. + mode accepts one of twelve or more predefined values. + (GL_AUX0 through GL_AUX3 are always defined.) + In a fully configured system, + GL_FRONT, + GL_LEFT, and + GL_FRONT_LEFT all name the front left buffer, + GL_FRONT_RIGHT and + GL_RIGHT name the front right buffer, and + GL_BACK_LEFT and + GL_BACK name the back left buffer. +

+ Nonstereo double-buffered configurations have only a front left and a + back left buffer. + Single-buffered configurations have a front left and a front right + buffer if stereo, and only a front left buffer if nonstereo. + It is an error to specify a nonexistent buffer to glReadBuffer. +

+ mode is initially GL_FRONT in single-buffered configurations + and GL_BACK in double-buffered configurations. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of the twelve + (or more) accepted values. +

+ GL_INVALID_OPERATION is generated if mode specifies a buffer + that does not exist. +

+ GL_INVALID_OPERATION is generated if glReadBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_READ_BUFFER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glReadPixels.xml b/upstream-man-pages/man2/xhtml/glReadPixels.xml new file mode 100644 index 0000000..44dd909 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glReadPixels.xml @@ -0,0 +1,622 @@ + + +glReadPixels

Name

glReadPixels — read a block of pixels from the frame buffer

C Specification

void glReadPixels(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 GLvoid *  data);

Parameters

x, y

+ Specify the window coordinates of the first pixel + that is read from the frame buffer. + This location is the lower left corner of a rectangular block of pixels. +

width, height

+ Specify the dimensions of the pixel rectangle. + width and height of one correspond to a single pixel. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + Must be one of + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Returns the pixel data. +

Description

+ glReadPixels returns pixel data from the frame buffer, + starting with the pixel whose lower left corner + is at location (x, y), + into client memory starting at location data. + Several parameters control the processing of the pixel data before + it is placed into client memory. + These parameters are set with three commands: + glPixelStore, + glPixelTransfer, and + glPixelMap. + This reference page describes the effects on glReadPixels of most, + but not all of the parameters specified by these three commands. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a block of pixels is + requested, data is treated as a byte offset into the buffer object's data store + rather than a pointer to client memory. +

+ When the ARB_imaging extension is supported, the pixel data may + be processed by additional operations including color table lookup, + color matrix transformations, convolutions, histograms, and minimum and + maximum pixel value computations. +

+ glReadPixels returns values from each pixel with lower left corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are returned in row order from the lowest to the highest row, + left to right in each row. +

+ format specifies the format for the returned pixel values; + accepted values are: +

GL_COLOR_INDEX

+ Color indices are read from the color buffer + selected by glReadBuffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_COLOR is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_I_TO_I. +

GL_STENCIL_INDEX

+ Stencil values are read from the stencil buffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_S_TO_S. +

GL_DEPTH_COMPONENT

+ Depth values are read from the depth buffer. + Each component is converted to floating point such that the minimum depth + value maps to 0 and the maximum value maps to 1. + Each component is then multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + and finally clamped to the range + + + + 0 + 1 + + . +

GL_RED
GL_GREEN
GL_BLUE
GL_ALPHA
GL_RGB
GL_BGR
GL_RGBA
GL_BGRA
GL_LUMINANCE
GL_LUMINANCE_ALPHA

+ Processing differs depending on whether color buffers store color indices + or RGBA color components. + If color indices are stored, + they are read from the color buffer selected by glReadBuffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + Indices are then replaced by the red, + green, + blue, + and alpha values obtained by indexing the tables + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A. + Each table must be of size + + + 2 + n + + , + but + n + may be different for + different tables. + Before an index is used to look up a value in a table of + size + + + 2 + n + + , + it must be masked against + + + + 2 + n + + - + 1 + + . +

+ If RGBA color components are stored in the color buffers, + they are read from the color buffer selected by glReadBuffer. + Each color component is converted to floating point such that zero intensity + maps to 0.0 and full intensity maps to 1.0. + Each component is then multiplied by GL_c_SCALE and + added to GL_c_BIAS, + where c is RED, GREEN, BLUE, or ALPHA. + Finally, + if GL_MAP_COLOR is GL_TRUE, + each component is clamped to the range + + + + 0 + 1 + + , + scaled to the size of its corresponding table, and is then + replaced by its mapping in the table + GL_PIXEL_MAP_c_TO_c, + where c is R, G, B, or A. +

+ Unneeded data is then discarded. + For example, + GL_RED discards the green, blue, and alpha components, + while GL_RGB discards only the alpha component. + GL_LUMINANCE computes a single-component value as the sum of + the red, + green, + and blue components, + and GL_LUMINANCE_ALPHA does the same, + while keeping alpha as a second value. + The final values are clamped to the range + + + + 0 + 1 + + . +

+ The shift, + scale, + bias, + and lookup factors just described are all specified by + glPixelTransfer. + The lookup table contents themselves are specified by glPixelMap. +

+ Finally, the indices or components + are converted to the proper format, + as specified by type. + If format is GL_COLOR_INDEX or GL_STENCIL_INDEX + and type is not GL_FLOAT, + each index is masked with the mask value given in the following table. + If type is GL_FLOAT, then each integer index is converted to + single-precision floating-point format. +

+ If format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, or + GL_LUMINANCE_ALPHA and type is not GL_FLOAT, + each component is multiplied by the multiplier shown in the following table. + If type is GL_FLOAT, then each component is passed as is + (or converted to the client's single-precision floating-point format if + it is different from the one used by the GL). +

+

+ type + + Index Mask + + Component Conversion +
+ GL_UNSIGNED_BYTE + + + + + 2 + 8 + + - + 1 + + + + + + + + + 2 + 8 + + - + 1 + + + ⁢ + c + + +
+ GL_BYTE + + + + + 2 + 7 + + - + 1 + + + + + + + + + + + 2 + 8 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_BITMAP + + + + 1 + + + + + 1 + +
+ GL_UNSIGNED_SHORT + + + + + 2 + 16 + + - + 1 + + + + + + + + + 2 + 16 + + - + 1 + + + ⁢ + c + + +
+ GL_SHORT + + + + + 2 + 15 + + - + 1 + + + + + + + + + + + 2 + 16 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_UNSIGNED_INT + + + + + 2 + 32 + + - + 1 + + + + + + + + + 2 + 32 + + - + 1 + + + ⁢ + c + + +
+ GL_INT + + + + + 2 + 31 + + - + 1 + + + + + + + + + + + 2 + 32 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_FLOAT + + none + + c +

+ Return values are placed in memory as follows. + If format is + GL_COLOR_INDEX, + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, or + GL_LUMINANCE, + a single value is returned and the data for the + ith + pixel in the + jth + row + is placed in location + + + + + j + + ⁢ + width + + + i + + . + GL_RGB and GL_BGR return three values, + GL_RGBA and GL_BGRA return four values, + and GL_LUMINANCE_ALPHA returns two values for each pixel, + with all values corresponding to a single pixel occupying contiguous space + in data. + Storage parameters set by glPixelStore, + such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, + affect the way that data is written into memory. + See glPixelStore for a description. +

Notes

+ Values for pixels that lie outside the window + connected to the current GL context are undefined. +

+ If an error is generated, + no change is made to the contents of data. +

Errors

+ GL_INVALID_ENUM is generated if format or type is not an + accepted value. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and format is + not GL_COLOR_INDEX or GL_STENCIL_INDEX. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if format is GL_COLOR_INDEX + and the color buffers store RGBA color components. +

+ GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. +

+ GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT + and there is no depth buffer. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ The formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glReadPixels + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_INDEX_MODE +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glRect.xml b/upstream-man-pages/man2/xhtml/glRect.xml new file mode 100644 index 0000000..2fa13a2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glRect.xml @@ -0,0 +1,69 @@ + + +glRect

Name

glRect — draw a rectangle

C Specification

void glRectd(GLdouble  x1,
 GLdouble  y1,
 GLdouble  x2,
 GLdouble  y2);
void glRectf(GLfloat  x1,
 GLfloat  y1,
 GLfloat  x2,
 GLfloat  y2);
void glRecti(GLint  x1,
 GLint  y1,
 GLint  x2,
 GLint  y2);
void glRects(GLshort  x1,
 GLshort  y1,
 GLshort  x2,
 GLshort  y2);

Parameters

x1, y1

+ Specify one vertex of a rectangle. +

x2, y2

+ Specify the opposite vertex of the rectangle. +

C Specification

void glRectdv(const GLdouble *  v1,
 const GLdouble *  v2);
void glRectfv(const GLfloat *  v1,
 const GLfloat *  v2);
void glRectiv(const GLint *  v1,
 const GLint *  v2);
void glRectsv(const GLshort *  v1,
 const GLshort *  v2);

Parameters

v1

+ Specifies a pointer to one vertex of a rectangle. +

v2

+ Specifies a pointer to the opposite vertex of the rectangle. +

Description

+ glRect supports efficient specification of rectangles as two corner points. + Each + rectangle command takes four arguments, + organized either as two consecutive pairs of + + + + x + y + + + coordinates + or as two pointers to arrays, + each containing an + + + + x + y + + + pair. + The resulting rectangle is defined in the + + + + z + = + 0 + + + plane. +

+ glRect(x1, y1, x2, y2) + is exactly equivalent to the following sequence: +

+glBegin(GL_POLYGON);
+glVertex2(x1, y1);
+glVertex2(x2, y1);
+glVertex2(x2, y2);
+glVertex2(x1, y2);
+glEnd();
+            

+ Note that if the second vertex is above and to the right of the first vertex, + the rectangle is constructed with a counterclockwise winding. +

Errors

+ GL_INVALID_OPERATION is generated if glRect + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

See Also

+ glBegin, + glVertex +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glRenderMode.xml b/upstream-man-pages/man2/xhtml/glRenderMode.xml new file mode 100644 index 0000000..87da6c7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glRenderMode.xml @@ -0,0 +1,87 @@ + + +glRenderMode

Name

glRenderMode — set rasterization mode

C Specification

GLint glRenderMode(GLenum  mode);

Parameters

mode

+ Specifies the rasterization mode. + Three values are accepted: + GL_RENDER, + GL_SELECT, and + GL_FEEDBACK. + The initial value is GL_RENDER. +

Description

+ glRenderMode sets the rasterization mode. + It takes one argument, + mode, + which can assume one of three predefined values: +

GL_RENDER

+ Render mode. Primitives are rasterized, + producing pixel fragments, + which are written into the frame buffer. + This is the normal mode + and also the default mode. +

GL_SELECT

+ Selection mode. + No pixel fragments are produced, + and no change to the frame buffer contents is made. + Instead, + a record of the names of primitives that would have been drawn + if the render mode had been GL_RENDER is returned in a select buffer, + which must be created (see glSelectBuffer) before selection mode + is entered. +

GL_FEEDBACK

+ Feedback mode. + No pixel fragments are produced, + and no change to the frame buffer contents is made. + Instead, + the coordinates and attributes of vertices that would have been drawn + if the render mode had been GL_RENDER is returned in a feedback buffer, + which must be created (see glFeedbackBuffer) before feedback mode + is entered. +

+ The return value of glRenderMode is determined by the render mode at the time + glRenderMode is called, + rather than by mode. + The values returned for the three render modes are as follows: +

GL_RENDER

+ 0. +

GL_SELECT

+ The number of hit records transferred to the select buffer. +

GL_FEEDBACK

+ The number of values (not vertices) transferred to the feedback buffer. +

+ See the glSelectBuffer and glFeedbackBuffer reference pages for + more details concerning selection and feedback operation. +

Notes

+ If an error is generated, + glRenderMode returns 0 regardless of the current render mode. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of the three + accepted values. +

+ GL_INVALID_OPERATION is generated if glSelectBuffer is called + while the render mode is GL_SELECT, + or if glRenderMode is called with argument GL_SELECT before + glSelectBuffer is called at least once. +

+ GL_INVALID_OPERATION is generated if glFeedbackBuffer is called + while the render mode is GL_FEEDBACK, + or if glRenderMode is called with argument GL_FEEDBACK before + glFeedbackBuffer is called at least once. +

+ GL_INVALID_OPERATION is generated if glRenderMode + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_RENDER_MODE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glResetHistogram.xml b/upstream-man-pages/man2/xhtml/glResetHistogram.xml new file mode 100644 index 0000000..e54c004 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glResetHistogram.xml @@ -0,0 +1,24 @@ + + +glResetHistogram

Name

glResetHistogram — reset histogram table entries to zero

C Specification

void glResetHistogram(GLenum  target);

Parameters

target

+ Must be + GL_HISTOGRAM. +

Description

+ glResetHistogram resets all the elements of the current histogram table to zero. +

Notes

+ glResetHistogram is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_HISTOGRAM. +

+ GL_INVALID_OPERATION is generated if glResetHistogram is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

See Also

+ glHistogram +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glResetMinmax.xml b/upstream-man-pages/man2/xhtml/glResetMinmax.xml new file mode 100644 index 0000000..c2b66e1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glResetMinmax.xml @@ -0,0 +1,27 @@ + + +glResetMinmax

Name

glResetMinmax — reset minmax table entries to initial values

C Specification

void glResetMinmax(GLenum  target);

Parameters

target

+ Must be + GL_MINMAX. +

Description

+ glResetMinmax resets the elements of the current minmax table to their + initial values: the ``maximum'' element receives the minimum possible + component values, and the ``minimum'' element receives the maximum + possible component values. +

Notes

+ glResetMinmax is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_MINMAX. +

+ GL_INVALID_OPERATION is generated if glResetMinmax is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

See Also

+ glMinmax +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glRotate.xml b/upstream-man-pages/man2/xhtml/glRotate.xml new file mode 100644 index 0000000..cfb3e78 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glRotate.xml @@ -0,0 +1,335 @@ + + +glRotate

Name

glRotate — multiply the current matrix by a rotation matrix

C Specification

void glRotated(GLdouble  angle,
 GLdouble  x,
 GLdouble  y,
 GLdouble  z);
void glRotatef(GLfloat  angle,
 GLfloat  x,
 GLfloat  y,
 GLfloat  z);

Parameters

angle

+ Specifies the angle of rotation, in degrees. +

x, y, z

+ Specify the x, y, and z coordinates of a vector, respectively. +

Description

+ glRotate produces a rotation of angle degrees around + the vector + + + + x + y + z + + . + The current matrix (see glMatrixMode) is multiplied by a rotation + matrix with the product + replacing the current matrix, as if glMultMatrix were called + with the following matrix as its argument: +

+

+ + + + + + + + x + 2 + + ⁡ + + + 1 + - + c + + + + + + c + + + + + x + ⁢ + + y + ⁡ + + + 1 + - + c + + + + - + z + ⁢ + s + + + + + x + ⁢ + + z + ⁡ + + + 1 + - + c + + + + + + y + ⁢ + s + + + + 0 + + + + + + y + ⁢ + + x + ⁡ + + + 1 + - + c + + + + + + z + ⁢ + s + + + + + + y + 2 + + ⁡ + + + 1 + - + c + + + + + + c + + + + + y + ⁢ + + z + ⁡ + + + 1 + - + c + + + + - + x + ⁢ + s + + + + 0 + + + + + + x + ⁢ + + z + ⁡ + + + 1 + - + c + + + + - + y + ⁢ + s + + + + + y + ⁢ + + z + ⁡ + + + 1 + - + c + + + + + + x + ⁢ + s + + + + + + z + 2 + + ⁡ + + + 1 + - + c + + + + + + c + + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + +

+

+

+ Where + + + + c + = + + cos + ⁡ + + angle + + + + , + + + + s + = + + sin + ⁡ + + angle + + + + , + and + + + + + + x + y + z + + + = + 1 + + + (if not, the GL + will normalize this vector). +

+

+

+ If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, + all objects drawn after glRotate is called are rotated. + Use glPushMatrix and glPopMatrix to save and restore + the unrotated coordinate system. +

Notes

+ This rotation follows the right-hand rule, so + if the vector + + + + x + y + z + + + points toward the + user, the rotation will be counterclockwise. +

Errors

+ GL_INVALID_OPERATION is generated if glRotate + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glSampleCoverage.xml b/upstream-man-pages/man2/xhtml/glSampleCoverage.xml new file mode 100644 index 0000000..fc21e3d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glSampleCoverage.xml @@ -0,0 +1,63 @@ + + +glSampleCoverage

Name

glSampleCoverage — specify multisample coverage parameters

C Specification

void glSampleCoverage(GLclampf  value,
 GLboolean  invert);

Parameters

value

+ Specify a single floating-point sample coverage value. The value is + clamped to the range + + + + 0 + 1 + + . + The initial value is 1.0. +

invert

+ Specify a single boolean value representing if the coverage masks should be + inverted. GL_TRUE and GL_FALSE are accepted. The initial value + is GL_FALSE. +

Description

+ Multisampling samples a pixel multiple times at various + implementation-dependent subpixel locations to generate antialiasing + effects. Multisampling transparently antialiases points, lines, polygons, + bitmaps, and images if it is enabled. +

+ value is used in constructing a temporary mask used in determining which + samples will be used in resolving the final fragment color. This mask is + bitwise-anded with the coverage mask generated from the multisampling + computation. If the invert flag is set, the temporary mask is inverted + (all bits flipped) and then the bitwise-and is computed. +

+ If an implementation does not have any multisample buffers available, or + multisampling is disabled, rasterization occurs with only a single sample + computing a pixel's final RGB color. +

+ Provided an implementation supports multisample buffers, and multisampling + is enabled, then a pixel's final color is generated by combining several + samples per pixel. Each sample contains color, depth, and stencil + information, allowing those operations to be performed on each sample. +

Notes

+ glSampleCoverage is available only if the GL version is 1.3 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glSampleCoverage is executed between the + execution of glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_SAMPLE_COVERAGE_VALUE +

+ glGet with argument GL_SAMPLE_COVERAGE_INVERT +

+ glIsEnabled with argument GL_MULTISAMPLE +

+ glIsEnabled with argument GL_SAMPLE_ALPHA_TO_COVERAGE +

+ glIsEnabled with argument GL_SAMPLE_ALPHA_TO_ONE +

+ glIsEnabled with argument GL_SAMPLE_COVERAGE +

See Also

+ glEnable, + glPushAttrib +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glScale.xml b/upstream-man-pages/man2/xhtml/glScale.xml new file mode 100644 index 0000000..999fc16 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glScale.xml @@ -0,0 +1,119 @@ + + +glScale

Name

glScale — multiply the current matrix by a general scaling matrix

C Specification

void glScaled(GLdouble  x,
 GLdouble  y,
 GLdouble  z);
void glScalef(GLfloat  x,
 GLfloat  y,
 GLfloat  z);

Parameters

x, y, z

+ Specify scale factors along the x, y, and z axes, respectively. +

Description

+ glScale produces a nonuniform scaling along the x, y, and + z axes. + The three parameters indicate the desired scale factor along + each of the three axes. +

+ The current matrix + (see glMatrixMode) + is multiplied by this scale matrix, + and the product replaces the current matrix + as if glMultMatrix were called with the following matrix + as its argument: +

+

+ + + + + + x + + + 0 + + + 0 + + + 0 + + + + + 0 + + + y + + + 0 + + + 0 + + + + + 0 + + + 0 + + + z + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + +

+

+ If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, + all objects drawn after glScale is called are scaled. +

+ Use glPushMatrix and glPopMatrix to save and restore + the unscaled coordinate + system. +

Notes

+ If scale factors other than 1 are applied to the modelview matrix + and lighting is enabled, lighting often appears wrong. + In that case, enable automatic normalization of normals by + calling glEnable with the argument GL_NORMALIZE. +

Errors

+ GL_INVALID_OPERATION is generated if glScale + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glScissor.xml b/upstream-man-pages/man2/xhtml/glScissor.xml new file mode 100644 index 0000000..7e48dd4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glScissor.xml @@ -0,0 +1,50 @@ + + +glScissor

Name

glScissor — define the scissor box

C Specification

void glScissor(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

Parameters

x, y

+ Specify the lower left corner of the scissor box. + Initially (0, 0). +

width, height

+ Specify the width and height of the scissor box. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

Description

+ glScissor defines a rectangle, called the scissor box, + in window coordinates. + The first two arguments, + x and y, + specify the lower left corner of the box. + width and height specify the width and height of the box. +

+ To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. +

+ When the scissor test is disabled, + it is as though the scissor box includes the entire window. +

Errors

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if glScissor + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_SCISSOR_BOX +

+ glIsEnabled with argument GL_SCISSOR_TEST +

See Also

+ glEnable, + glViewport +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glSecondaryColor.xml b/upstream-man-pages/man2/xhtml/glSecondaryColor.xml new file mode 100644 index 0000000..40b3b1d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glSecondaryColor.xml @@ -0,0 +1,77 @@ + + +glSecondaryColor

Name

glSecondaryColor — set the current secondary color

C Specification

void glSecondaryColor3b(GLbyte  red,
 GLbyte  green,
 GLbyte  blue);
void glSecondaryColor3s(GLshort  red,
 GLshort  green,
 GLshort  blue);
void glSecondaryColor3i(GLint  red,
 GLint  green,
 GLint  blue);
void glSecondaryColor3f(GLfloat  red,
 GLfloat  green,
 GLfloat  blue);
void glSecondaryColor3d(GLdouble  red,
 GLdouble  green,
 GLdouble  blue);
void glSecondaryColor3ub(GLubyte  red,
 GLubyte  green,
 GLubyte  blue);
void glSecondaryColor3us(GLushort  red,
 GLushort  green,
 GLushort  blue);
void glSecondaryColor3ui(GLuint  red,
 GLuint  green,
 GLuint  blue);

Parameters

red, green, blue

+ Specify new red, green, and blue values for the current secondary color. +

C Specification

void glSecondaryColor3bv(const GLbyte *  v);
void glSecondaryColor3sv(const GLshort *  v);
void glSecondaryColor3iv(const GLint *  v);
void glSecondaryColor3fv(const GLfloat *  v);
void glSecondaryColor3dv(const GLdouble *  v);
void glSecondaryColor3ubv(const GLubyte *  v);
void glSecondaryColor3usv(const GLushort *  v);
void glSecondaryColor3uiv(const GLuint *  v);

Parameters

v

+ Specifies a pointer to an array that contains red, green, blue. +

Description

+ The GL stores both a primary four-valued RGBA color and a + secondary four-valued RGBA color (where alpha is always set to 0.0) that is + associated with every vertex. +

+ The secondary color is interpolated and applied to each fragment during + rasterization when GL_COLOR_SUM is enabled. When lighting is enabled, + and GL_SEPARATE_SPECULAR_COLOR is specified, the value of the + secondary color is assigned the value computed from the specular term of + the lighting computation. Both the primary and secondary current colors are + applied to each fragment, regardless of the state of GL_COLOR_SUM, + under such conditions. When GL_SEPARATE_SPECULAR_COLOR is specified, + the value returned from querying the current secondary color is undefined. +

+ glSecondaryColor3b, glSecondaryColor3s, and + glSecondaryColor3i take three signed byte, short, or long integers as + arguments. When v is appended to the name, the color commands can + take a pointer to an array of such values. +

+ Color values are stored in floating-point format, with + unspecified mantissa and exponent sizes. Unsigned integer color + components, when specified, are linearly mapped to floating-point values + such that the largest representable value maps to 1.0 (full intensity), and + 0 maps to 0.0 (zero intensity). Signed integer color components, when + specified, are linearly mapped to floating-point values such that the most + positive representable value maps to 1.0, and the most negative + representable value maps to + + + -1.0 + . + (Note that this mapping does not convert + 0 precisely to 0.0). Floating-point values are mapped directly. +

+ Neither floating-point nor signed integer values are clamped to the range + + + + 0 + 1 + + + before the current color is updated. However, color components are + clamped to this range before they are interpolated or written into a color + buffer. +

Notes

+ glSecondaryColor is available only if the GL version is 1.4 or greater. +

+ The initial value for the secondary color is (0, 0, 0, 0). +

+ The secondary color can be updated at any time. In particular, glSecondaryColor can + be called between a call to glBegin and the corresponding call to + glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_SECONDARY_COLOR +

+ glGet with argument GL_RGBA_MODE +

+ glIsEnabled with argument GL_COLOR_SUM +

See Also

+ glColor, + glIndex, + glIsEnabled, + glLightModel, + glSecondaryColorPointer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glSecondaryColorPointer.xml b/upstream-man-pages/man2/xhtml/glSecondaryColorPointer.xml new file mode 100644 index 0000000..09609b8 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glSecondaryColorPointer.xml @@ -0,0 +1,118 @@ + + +glSecondaryColorPointer

Name

glSecondaryColorPointer — define an array of secondary colors

C Specification

void glSecondaryColorPointer(GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

size

+ Specifies the number of components per color. Must be 3. +

type

+ Specifies the data type of each color component in the array. + Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, + or + GL_DOUBLE + are accepted. + The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive colors. + If stride is 0, the colors are understood to be + tightly packed in the array. The initial value is 0. +

pointer

+ Specifies a pointer to the first component of the first color element + in the array. The initial value is 0. +

Description

+ glSecondaryColorPointer specifies the location and data format of an array of color components + to use when rendering. + size specifies the number of components per color, and must be 3. + type specifies the data type of each color component, and stride + specifies the byte stride from one color to the next, allowing vertices and + attributes to be packed into a single array or stored in separate arrays. +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a secondary color array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as secondary color vertex array + client-side state (GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING). +

+ When a secondary color array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the secondary color array, call glEnableClientState and + glDisableClientState with the argument + GL_SECONDARY_COLOR_ARRAY. If enabled, the secondary color array is used when + glArrayElement, glDrawArrays, glMultiDrawArrays, + glDrawElements, glMultiDrawElements, or glDrawRangeElements + is called. +

Notes

+ glSecondaryColorPointer is available only if the GL version is 1.4 or greater. +

+ Secondary colors are not supported for interleaved vertex array formats + (see glInterleavedArrays). +

+ The secondary color array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glSecondaryColorPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glSecondaryColorPointer is typically implemented on the client side. +

+ Secondary color array parameters are client-side state and are therefore + not saved or restored by glPushAttrib and glPopAttrib. Use + glPushClientAttrib and glPopClientAttrib instead. +

Errors

+ GL_INVALID_VALUE is generated if size is not 3. +

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_SECONDARY_COLOR_ARRAY +

+ glGet with argument GL_SECONDARY_COLOR_ARRAY_SIZE +

+ glGet with argument GL_SECONDARY_COLOR_ARRAY_TYPE +

+ glGet with argument GL_SECONDARY_COLOR_ARRAY_STRIDE +

+ glGet with argument GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_SECONDARY_COLOR_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glSelectBuffer.xml b/upstream-man-pages/man2/xhtml/glSelectBuffer.xml new file mode 100644 index 0000000..c40a28c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glSelectBuffer.xml @@ -0,0 +1,106 @@ + + +glSelectBuffer

Name

glSelectBuffer — establish a buffer for selection mode values

C Specification

void glSelectBuffer(GLsizei  size,
 GLuint *  buffer);

Parameters

size

+ Specifies the size of buffer. +

buffer

+ Returns the selection data. +

Description

+ glSelectBuffer has two arguments: + buffer is a pointer to an array of unsigned integers, + and size indicates the size of the array. + buffer returns values from the name stack + (see glInitNames, glLoadName, glPushName) + when the rendering mode is GL_SELECT (see glRenderMode). + glSelectBuffer must be issued before selection mode is enabled, + and it must not be issued while the rendering mode is GL_SELECT. +

+ A programmer can use selection to determine which primitives + are drawn into some region of a window. + The region is defined by the current modelview and perspective matrices. +

+ In selection mode, no pixel fragments are produced from rasterization. + Instead, + if a primitive or a raster position intersects the clipping + volume defined by the viewing frustum + and the user-defined clipping planes, + this primitive causes a selection hit. + (With polygons, no hit occurs if the polygon is culled.) + When a change is made to the name stack, + or when glRenderMode is called, + a hit record is copied to buffer if any hits have occurred since the + last such event + (name stack change or + glRenderMode call). + The hit record consists of the number of names in the name stack at the + time of the event, followed by the minimum and maximum depth values + of all vertices that hit since the previous event, + followed by the name stack contents, + bottom name first. +

+ Depth values (which are in the range [0,1]) are multiplied by + + + + 2 + 32 + + - + 1 + + , + before being placed in the hit record. +

+ An internal index into buffer is reset to 0 whenever selection mode + is entered. + Each time a hit record is copied into buffer, + the index is incremented to point to the cell just past the end + of the block of names\(emthat is, to the next available cell + If the hit record is larger than the number of remaining locations in buffer, + as much data as can fit is copied, + and the overflow flag is set. + If the name stack is empty when a hit record is copied, + that record consists of 0 followed by the minimum and maximum depth values. +

+ To exit selection mode, call glRenderMode with an argument + other than GL_SELECT. + Whenever glRenderMode is called while the render mode is GL_SELECT, + it returns the number of hit records copied to buffer, + resets the overflow flag and the selection buffer pointer, + and initializes the name stack to be empty. + If the overflow bit was set when glRenderMode was called, + a negative hit record count is returned. +

Notes

+ The contents of buffer is undefined until glRenderMode is called + with an argument other than GL_SELECT. +

+ glBegin/glEnd primitives and calls to glRasterPos + can result in hits. glWindowPos will always generate a selection hit. +

Errors

+ GL_INVALID_VALUE is generated if size is negative. +

+ GL_INVALID_OPERATION is generated if glSelectBuffer is called while the + render mode is GL_SELECT, + or if glRenderMode is called with argument GL_SELECT before + glSelectBuffer is called at least once. +

+ GL_INVALID_OPERATION is generated if glSelectBuffer + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_NAME_STACK_DEPTH +

+ glGet with argument GL_SELECTION_BUFFER_SIZE +

+ glGetPointerv with argument GL_SELECTION_BUFFER_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glSeparableFilter2D.xml b/upstream-man-pages/man2/xhtml/glSeparableFilter2D.xml new file mode 100644 index 0000000..9d0075c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glSeparableFilter2D.xml @@ -0,0 +1,288 @@ + + +glSeparableFilter2D

Name

glSeparableFilter2D — define a separable two-dimensional convolution filter

C Specification

void glSeparableFilter2D(GLenum  target,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const GLvoid *  row,
 const GLvoid *  column);

Parameters

target

+ Must be GL_SEPARABLE_2D. +

internalformat

+ The internal format of the convolution filter kernel. + The allowable values are + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, or + GL_RGBA16. +

width

+ The number of elements in the pixel array referenced by row. + (This is the width of the separable filter kernel.) +

height

+ The number of elements in the pixel array referenced by column. + (This is the height of the separable filter kernel.) +

format

+ The format of the pixel data in row and column. + The allowable values are + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_INTENSITY, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ The type of the pixel data in row and column. + Symbolic constants + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV + are accepted. +

row

+ Pointer to a one-dimensional array of pixel data that is processed to + build the row filter kernel. +

column

+ Pointer to a one-dimensional array of pixel data that is processed to + build the column filter kernel. +

Description

+ glSeparableFilter2D builds a two-dimensional separable convolution filter kernel from + two arrays of pixels. +

+ The pixel arrays specified by (width, format, type, row) + and (height, format, type, column) are processed just as if + they had been passed to glDrawPixels, + but processing stops after the final expansion to RGBA is completed. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a convolution filter is + specified, row and column are treated as byte offsets into the buffer object's data store. +

+ Next, the R, G, B, and A components of all pixels in both arrays are scaled + by the four separable 2D GL_CONVOLUTION_FILTER_SCALE parameters and + biased by the four separable 2D GL_CONVOLUTION_FILTER_BIAS parameters. + (The scale and bias parameters are set by glConvolutionParameter + using the GL_SEPARABLE_2D target and the names + GL_CONVOLUTION_FILTER_SCALE and GL_CONVOLUTION_FILTER_BIAS. + The parameters themselves are vectors of four values that are applied to red, + green, blue, and alpha, in that order.) + The R, G, B, and A values are not clamped to [0,1] at any time during this + process. +

+ Each pixel is then converted to the internal format specified by + internalformat. + This conversion simply maps the component values of the pixel (R, G, B, + and A) to the values included in the internal format (red, green, blue, + alpha, luminance, and intensity). The mapping is as follows: +

+ Internal Format + + Red + + Green + + Blue + + Alpha + + Luminance + + Intensity +
+ GL_LUMINANCE + + + + + + R + + +
+ GL_LUMINANCE_ALPHA + + + + + A + + R + + +
+ GL_INTENSITY + + + + + + + R +
+ GL_RGB + + R + + G + + B + + + + +
+ GL_RGBA + + R + + G + + B + + A + + + +

+ The red, green, blue, alpha, luminance, and/or intensity components of + the resulting pixels are stored in floating-point rather than integer + format. + They form two one-dimensional filter kernel images. + The row image is indexed by coordinate i starting at zero and + increasing from left to right. + Each location in the row image is derived from element i of row. + The column image is indexed by coordinate j starting at zero + and increasing from bottom to top. + Each location in the column image is derived from element j of column. +

+ Note that after a convolution is performed, the resulting color + components are also scaled by their corresponding + GL_POST_CONVOLUTION_c_SCALE parameters and biased by their + corresponding GL_POST_CONVOLUTION_c_BIAS parameters (where + c takes on the values RED, GREEN, BLUE, and + ALPHA). + These parameters are set by glPixelTransfer. +

Notes

+ glSeparableFilter2D is present only if ARB_imaging is returned when glGetString + is called with an argument of GL_EXTENSIONS. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_SEPARABLE_2D. +

+ GL_INVALID_ENUM is generated if internalformat is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not one of the allowable + values. +

+ GL_INVALID_ENUM is generated if type is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if width is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_SEPARABLE_2D and name + GL_MAX_CONVOLUTION_WIDTH. +

+ GL_INVALID_VALUE is generated if height is less than zero or greater + than the maximum supported value. + This value may be queried with glGetConvolutionParameter + using target GL_SEPARABLE_2D and name + GL_MAX_CONVOLUTION_HEIGHT. +

+ GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if height is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and row or + column is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glSeparableFilter2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetConvolutionParameter, glGetSeparableFilter +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glShadeModel.xml b/upstream-man-pages/man2/xhtml/glShadeModel.xml new file mode 100644 index 0000000..51dbc63 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glShadeModel.xml @@ -0,0 +1,140 @@ + + +glShadeModel

Name

glShadeModel — select flat or smooth shading

C Specification

void glShadeModel(GLenum  mode);

Parameters

mode

+ Specifies a symbolic value representing a shading technique. + Accepted values are GL_FLAT and GL_SMOOTH. + The initial value is GL_SMOOTH. +

Description

+ GL primitives can have either flat or smooth shading. + Smooth shading, + the default, + causes the computed colors of vertices to be interpolated as the + primitive is rasterized, + typically assigning different colors to each resulting pixel fragment. + Flat shading selects the computed color of just one vertex + and assigns it to all the pixel fragments + generated by rasterizing a single primitive. + In either case, the computed color of a vertex is the result of + lighting if lighting is enabled, + or it is the current color at the time the vertex was specified if + lighting is disabled. +

+ Flat and smooth shading are indistinguishable for points. + Starting when glBegin is issued and counting vertices and + primitives from 1, the GL gives each flat-shaded line segment + i + the + computed color of vertex + + + + i + + + 1 + + , + its second vertex. + Counting similarly from 1, + the GL gives each flat-shaded polygon the computed color of the vertex listed + in the following table. + This is the last vertex to specify the polygon in all cases except single + polygons, + where the first vertex specifies the flat-shaded color. +

+

+ Primitive Type of Polygon + i + + Vertex +
+ Single polygon + ( + + + i + == + 1 + + ) + + 1 +
+ Triangle strip + + + + + i + + + 2 + + +
+ Triangle fan + + + + + i + + + 2 + + +
+ Independent triangle + + + + + 3 + ⁢ + i + + +
+ Quad strip + + + + + 2 + ⁢ + i + + + 2 + + +
+ Independent quad + + + + + 4 + ⁢ + i + + +

+ Flat and smooth shading are specified by glShadeModel with mode set to + GL_FLAT and GL_SMOOTH, respectively. +

Errors

+ GL_INVALID_ENUM is generated if mode is any value other than + GL_FLAT or GL_SMOOTH. +

+ GL_INVALID_OPERATION is generated if glShadeModel + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_SHADE_MODEL +

See Also

+ glBegin, + glColor, + glLight, + glLightModel +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glShaderSource.xml b/upstream-man-pages/man2/xhtml/glShaderSource.xml new file mode 100644 index 0000000..4e71450 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glShaderSource.xml @@ -0,0 +1,48 @@ + + +glShaderSource

Name

glShaderSource — Replaces the source code in a shader object

C Specification

void glShaderSource(GLuint  shader,
 GLsizei  count,
 const GLchar ** string,
 const GLint * length);

Parameters

shader

Specifies the handle of the shader object + whose source code is to be replaced.

count

Specifies the number of elements in the + string and + length + arrays.

string

Specifies an array of pointers to strings + containing the source code to be loaded into the + shader.

length

Specifies an array of string lengths.

Description

glShaderSource sets the source code + in shader to the source code in the array + of strings specified by string. Any + source code previously stored in the shader object is completely + replaced. The number of strings in the array is specified by + count. If length + is NULL, each string is assumed to be null + terminated. If length is a value other + than NULL, it points to an array containing + a string length for each of the corresponding elements of + string. Each element in the + length array may contain the length of + the corresponding string (the null character is not counted as + part of the string length) or a value less than 0 to indicate + that the string is null terminated. The source code strings are + not scanned or parsed at this time; they are simply copied into + the specified shader object.

Notes

glShaderSource is available only if + the GL version is 2.0 or greater.

OpenGL copies the shader source code strings when + glShaderSource is called, so an application + may free its copy of the source code strings immediately after + the function returns.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + count is less than 0.

GL_INVALID_OPERATION is generated if + glShaderSource is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetShader + with arguments shader and + GL_SHADER_SOURCE_LENGTH

glGetShaderSource + with argument shader

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glStencilFunc.xml b/upstream-man-pages/man2/xhtml/glStencilFunc.xml new file mode 100644 index 0000000..eedad1e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glStencilFunc.xml @@ -0,0 +1,174 @@ + + +glStencilFunc

Name

glStencilFunc — set front and back function and reference value for stencil testing

C Specification

void glStencilFunc(GLenum  func,
 GLint  ref,
 GLuint  mask);

Parameters

func

+ Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. +

mask

+ Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + Stencil planes are first drawn into using GL drawing primitives, then + geometry and images are rendered using the stencil planes to mask out + portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. +

+ There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values. Use glStencilFuncSeparate + to set front and back stencil state to different values. +

+ func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. +

+ If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. +

+ The following values are accepted by func: +

GL_NEVER

+ Always fails. +

GL_LESS

+ Passes if ( ref & mask ) < ( stencil & mask ). +

GL_LEQUAL

+ Passes if ( ref & mask ) <= ( stencil & mask ). +

GL_GREATER

+ Passes if ( ref & mask ) > ( stencil & mask ). +

GL_GEQUAL

+ Passes if ( ref & mask ) >= ( stencil & mask ). +

GL_EQUAL

+ Passes if ( ref & mask ) = ( stencil & mask ). +

GL_NOTEQUAL

+ Passes if ( ref & mask ) != ( stencil & mask ). +

GL_ALWAYS

+ Always passes. +

Notes

+ Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. +

+ glStencilFunc is the same as + calling glStencilFuncSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. +

+ GL_INVALID_OPERATION is generated if glStencilFunc + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glStencilFuncSeparate.xml b/upstream-man-pages/man2/xhtml/glStencilFuncSeparate.xml new file mode 100644 index 0000000..8efd7d7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glStencilFuncSeparate.xml @@ -0,0 +1,180 @@ + + +glStencilFuncSeparate

Name

glStencilFuncSeparate — set front and/or back function and reference value for stencil testing

C Specification

void glStencilFuncSeparate(GLenum  face,
 GLenum  func,
 GLint  ref,
 GLuint  mask);

Parameters

face

+ Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

func

+ Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. +

mask

+ Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. +

+ There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values, as if + glStencilFuncSeparate were called + with face set to GL_FRONT_AND_BACK. +

+ func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. +

+ If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. +

+ The following values are accepted by func: +

GL_NEVER

+ Always fails. +

GL_LESS

+ Passes if ( ref & mask ) < ( stencil & mask ). +

GL_LEQUAL

+ Passes if ( ref & mask ) <= ( stencil & mask ). +

GL_GREATER

+ Passes if ( ref & mask ) > ( stencil & mask ). +

GL_GEQUAL

+ Passes if ( ref & mask ) >= ( stencil & mask ). +

GL_EQUAL

+ Passes if ( ref & mask ) = ( stencil & mask ). +

GL_NOTEQUAL

+ Passes if ( ref & mask ) != ( stencil & mask ). +

GL_ALWAYS

+ Always passes. +

Notes

+ glStencilFuncSeparate is available only if + the GL version is 2.0 or greater. +

+ Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. +

Errors

+ GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. +

+ GL_INVALID_OPERATION is generated if glStencilFuncSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glStencilMask.xml b/upstream-man-pages/man2/xhtml/glStencilMask.xml new file mode 100644 index 0000000..247573d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glStencilMask.xml @@ -0,0 +1,53 @@ + + +glStencilMask

Name

glStencilMask — control the front and back writing of individual bits in the stencil planes

C Specification

void glStencilMask(GLuint  mask);

Parameters

mask

+ Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. +

Description

+ glStencilMask controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. +

+ There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values. Use glStencilMaskSeparate + to set front and back stencil writemasks to different values. +

Notes

+ glStencilMask is the same as + calling glStencilMaskSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_OPERATION is generated if glStencilMask + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glStencilMaskSeparate.xml b/upstream-man-pages/man2/xhtml/glStencilMaskSeparate.xml new file mode 100644 index 0000000..f7ebbed --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glStencilMaskSeparate.xml @@ -0,0 +1,59 @@ + + +glStencilMaskSeparate

Name

glStencilMaskSeparate — control the front and/or back writing of individual bits in the stencil planes

C Specification

void glStencilMaskSeparate(GLenum  face,
 GLuint  mask);

Parameters

face

+ Specifies whether the front and/or back stencil writemask is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

mask

+ Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. +

Description

+ glStencilMaskSeparate controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. +

+ There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values, as if + glStencilMaskSeparate were called + with face set to GL_FRONT_AND_BACK. +

Notes

+ glStencilMaskSeparate is available only if + the GL version is 2.0 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glStencilMaskSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glStencilOp.xml b/upstream-man-pages/man2/xhtml/glStencilOp.xml new file mode 100644 index 0000000..a4415b1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glStencilOp.xml @@ -0,0 +1,154 @@ + + +glStencilOp

Name

glStencilOp — set front and back stencil test actions

C Specification

void glStencilOp(GLenum  sfail,
 GLenum  dpfail,
 GLenum  dppass);

Parameters

sfail

+ Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. +

dpfail

+ Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

dppass

+ Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. +

+ There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values. Use glStencilOpSeparate + to set front and back stencil state to different values. +

+ glStencilOp takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. +

GL_KEEP

+ Keeps the current value. +

GL_ZERO

+ Sets the stencil buffer value to 0. +

GL_REPLACE

+ Sets the stencil buffer value to ref, + as specified by glStencilFunc. +

GL_INCR

+ Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. +

GL_INCR_WRAP

+ Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. +

GL_DECR

+ Decrements the current stencil buffer value. + Clamps to 0. +

GL_DECR_WRAP

+ Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. +

GL_INVERT

+ Bitwise inverts the current stencil buffer value. +

+ Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. +

+ The other two arguments to glStencilOp specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. +

Notes

+ GL_DECR_WRAP and GL_INCR_WRAP are available only if the GL + version is 1.4 or greater. +

+ Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil tests always pass, + regardless of any call to glStencilOp. +

+ glStencilOp is the same as + calling glStencilOpSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. +

+ GL_INVALID_OPERATION is generated if glStencilOp + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glStencilOpSeparate.xml b/upstream-man-pages/man2/xhtml/glStencilOpSeparate.xml new file mode 100644 index 0000000..d647daf --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glStencilOpSeparate.xml @@ -0,0 +1,159 @@ + + +glStencilOpSeparate

Name

glStencilOpSeparate — set front and/or back stencil test actions

C Specification

void glStencilOpSeparate(GLenum  face,
 GLenum  sfail,
 GLenum  dpfail,
 GLenum  dppass);

Parameters

face

+ Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

sfail

+ Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. +

dpfail

+ Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

dppass

+ Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. +

+ There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values, as if + glStencilOpSeparate were called + with face set to GL_FRONT_AND_BACK. +

+ glStencilOpSeparate takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. +

GL_KEEP

+ Keeps the current value. +

GL_ZERO

+ Sets the stencil buffer value to 0. +

GL_REPLACE

+ Sets the stencil buffer value to ref, + as specified by glStencilFunc. +

GL_INCR

+ Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. +

GL_INCR_WRAP

+ Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. +

GL_DECR

+ Decrements the current stencil buffer value. + Clamps to 0. +

GL_DECR_WRAP

+ Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. +

GL_INVERT

+ Bitwise inverts the current stencil buffer value. +

+ Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. +

+ The other two arguments to glStencilOpSeparate specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. +

Notes

+ glStencilOpSeparate is available only if + the GL version is 2.0 or greater. +

+ Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil test always passes. +

Errors

+ GL_INVALID_ENUM is generated if face is any value + other than GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK. +

+ GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. +

+ GL_INVALID_OPERATION is generated if glStencilOpSeparate + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexCoord.xml b/upstream-man-pages/man2/xhtml/glTexCoord.xml new file mode 100644 index 0000000..40c4a97 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexCoord.xml @@ -0,0 +1,91 @@ + + +glTexCoord

Name

glTexCoord — set the current texture coordinates

C Specification

void glTexCoord1s(GLshort  s);
void glTexCoord1i(GLint  s);
void glTexCoord1f(GLfloat  s);
void glTexCoord1d(GLdouble  s);
void glTexCoord2s(GLshort  s,
 GLshort  t);
void glTexCoord2i(GLint  s,
 GLint  t);
void glTexCoord2f(GLfloat  s,
 GLfloat  t);
void glTexCoord2d(GLdouble  s,
 GLdouble  t);
void glTexCoord3s(GLshort  s,
 GLshort  t,
 GLshort  r);
void glTexCoord3i(GLint  s,
 GLint  t,
 GLint  r);
void glTexCoord3f(GLfloat  s,
 GLfloat  t,
 GLfloat  r);
void glTexCoord3d(GLdouble  s,
 GLdouble  t,
 GLdouble  r);
void glTexCoord4s(GLshort  s,
 GLshort  t,
 GLshort  r,
 GLshort  q);
void glTexCoord4i(GLint  s,
 GLint  t,
 GLint  r,
 GLint  q);
void glTexCoord4f(GLfloat  s,
 GLfloat  t,
 GLfloat  r,
 GLfloat  q);
void glTexCoord4d(GLdouble  s,
 GLdouble  t,
 GLdouble  r,
 GLdouble  q);

Parameters

s, t, r, q

+ Specify s, t, r, and q texture coordinates. + Not all parameters are present in all forms of the command. +

C Specification

void glTexCoord1sv(const GLshort *  v);
void glTexCoord1iv(const GLint *  v);
void glTexCoord1fv(const GLfloat *  v);
void glTexCoord1dv(const GLdouble *  v);
void glTexCoord2sv(const GLshort *  v);
void glTexCoord2iv(const GLint *  v);
void glTexCoord2fv(const GLfloat *  v);
void glTexCoord2dv(const GLdouble *  v);
void glTexCoord3sv(const GLshort *  v);
void glTexCoord3iv(const GLint *  v);
void glTexCoord3fv(const GLfloat *  v);
void glTexCoord3dv(const GLdouble *  v);
void glTexCoord4sv(const GLshort *  v);
void glTexCoord4iv(const GLint *  v);
void glTexCoord4fv(const GLfloat *  v);
void glTexCoord4dv(const GLdouble *  v);

Parameters

v

+ Specifies a pointer to an array of one, two, three, or four elements, + which in turn specify the + s, + t, + r, and + q texture coordinates. +

Description

+ glTexCoord specifies texture coordinates in + one, + two, + three, or + four dimensions. + glTexCoord1 sets the current texture coordinates to + + + + s + 0 + 0 + 1 + + ; + a call to + glTexCoord2 sets them to + + + + s + t + 0 + 1 + + . + Similarly, glTexCoord3 specifies the texture coordinates as + + + + s + t + r + 1 + + , + and + glTexCoord4 defines all four components explicitly as + + + + s + t + r + q + + . +

+ The current texture coordinates are part of the data + that is associated with each vertex and with the current + raster position. + Initially, the values for + s, + t, + r, and + q + are (0, 0, 0, 1). +

+

Notes

+ The current texture coordinates can be updated at any time. + In particular, + glTexCoord can be called between a call to glBegin and the corresponding + call to glEnd. +

+ When the ARB_imaging extension is supported, glTexCoord always + updates texture unit GL_TEXTURE0. +

Associated Gets

+ glGet with argument GL_CURRENT_TEXTURE_COORDS +

See Also

+ glMultiTexCoord, + glTexCoordPointer, + glVertex +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexCoord1.xml b/upstream-man-pages/man2/xhtml/glTexCoord1.xml new file mode 100644 index 0000000..1c1ff8e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexCoord1.xml @@ -0,0 +1,4 @@ + + + +glTexCoord1 diff --git a/upstream-man-pages/man2/xhtml/glTexCoord2.xml b/upstream-man-pages/man2/xhtml/glTexCoord2.xml new file mode 100644 index 0000000..5788afe --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexCoord2.xml @@ -0,0 +1,4 @@ + + + +glTexCoord2 diff --git a/upstream-man-pages/man2/xhtml/glTexCoord3.xml b/upstream-man-pages/man2/xhtml/glTexCoord3.xml new file mode 100644 index 0000000..b4900ba --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexCoord3.xml @@ -0,0 +1,4 @@ + + + +glTexCoord3 diff --git a/upstream-man-pages/man2/xhtml/glTexCoord4.xml b/upstream-man-pages/man2/xhtml/glTexCoord4.xml new file mode 100644 index 0000000..8508e5f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexCoord4.xml @@ -0,0 +1,4 @@ + + + +glTexCoord4 diff --git a/upstream-man-pages/man2/xhtml/glTexCoordPointer.xml b/upstream-man-pages/man2/xhtml/glTexCoordPointer.xml new file mode 100644 index 0000000..706fe73 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexCoordPointer.xml @@ -0,0 +1,123 @@ + + +glTexCoordPointer

Name

glTexCoordPointer — define an array of texture coordinates

C Specification

void glTexCoordPointer(GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

size

+ Specifies the number of coordinates per array element. Must be 1, 2, 3, + or 4. The initial value is 4. +

type

+ Specifies the data type of each texture coordinate. + Symbolic constants + GL_SHORT, + GL_INT, + GL_FLOAT, + or GL_DOUBLE + are accepted. The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive texture coordinate sets. + If stride is 0, the array elements are understood + to be tightly packed. The initial value is 0. +

pointer

+ Specifies a pointer to the first coordinate of the first texture coordinate set in the + array. The initial value is 0. +

Description

+ glTexCoordPointer specifies the location and data format of an array of texture + coordinates to use when rendering. + size specifies the number of coordinates per + texture coordinate set, and must be 1, 2, 3, or 4. + type specifies the data type of each texture coordinate, + and stride specifies the byte stride from one + texture coordinate set to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see + glInterleavedArrays.) +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a texture coordinate array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as texture coordinate vertex array + client-side state (GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING). +

+ When a texture coordinate array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable a texture coordinate array, call glEnableClientState and + glDisableClientState with the argument + GL_TEXTURE_COORD_ARRAY. If enabled, the texture coordinate array is used when + glArrayElement, glDrawArrays, glMultiDrawArrays, + glDrawElements, glMultiDrawElements, or glDrawRangeElements + is called. +

Notes

+ glTexCoordPointer is available only if the GL version is 1.1 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture + extension is supported, glTexCoordPointer updates the + texture coordinate array state of the active client texture unit, + specified with glClientActiveTexture. +

+ Each texture coordinate array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glTexCoordPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glTexCoordPointer is typically implemented on the client side. +

+ Texture coordinate array parameters are client-side state and are therefore + not saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and + glPopClientAttrib instead. +

Errors

+ GL_INVALID_VALUE is generated if size is not 1, 2, 3, or 4. +

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_TEXTURE_COORD_ARRAY +

+ glGet with argument GL_TEXTURE_COORD_ARRAY_SIZE +

+ glGet with argument GL_TEXTURE_COORD_ARRAY_TYPE +

+ glGet with argument GL_TEXTURE_COORD_ARRAY_STRIDE +

+ glGet with argument GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_TEXTURE_COORD_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexEnv.xml b/upstream-man-pages/man2/xhtml/glTexEnv.xml new file mode 100644 index 0000000..e3d7863 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexEnv.xml @@ -0,0 +1,2027 @@ + + + +glTexEnv

Name

glTexEnv — set texture environment parameters

C Specification

void glTexEnvf(GLenum target,
 GLenum pname,
 GLfloat param);
 

void glTexEnvi(GLenum target,
 GLenum pname,
 GLint param);
 

Parameters

target

+ Specifies a texture environment. + May be GL_TEXTURE_ENV, GL_TEXTURE_FILTER_CONTROL or GL_POINT_SPRITE. +

pname

+ Specifies the symbolic name of a single-valued texture environment parameter. + May be either GL_TEXTURE_ENV_MODE, GL_TEXTURE_LOD_BIAS, + GL_COMBINE_RGB, + GL_COMBINE_ALPHA, + GL_SRC0_RGB, + GL_SRC1_RGB, + GL_SRC2_RGB, + GL_SRC0_ALPHA, + GL_SRC1_ALPHA, + GL_SRC2_ALPHA, + GL_OPERAND0_RGB, + GL_OPERAND1_RGB, + GL_OPERAND2_RGB, + GL_OPERAND0_ALPHA, + GL_OPERAND1_ALPHA, + GL_OPERAND2_ALPHA, + GL_RGB_SCALE, + GL_ALPHA_SCALE, or + GL_COORD_REPLACE. +

param

+ Specifies a single symbolic constant, one of GL_ADD, + GL_ADD_SIGNED, GL_INTERPOLATE, GL_MODULATE, GL_DECAL, + GL_BLEND, GL_REPLACE, GL_SUBTRACT, GL_COMBINE, + GL_TEXTURE, GL_CONSTANT, GL_PRIMARY_COLOR, GL_PREVIOUS, + GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR, GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + a single boolean value for the point sprite texture coordinate replacement, + a single floating-point value for the texture level-of-detail bias, + or 1.0, 2.0, or 4.0 when specifying the GL_RGB_SCALE or GL_ALPHA_SCALE. +

C Specification

void glTexEnvfv(GLenum target,
 GLenum pname,
 const GLfloat * params);
 
void glTexEnviv(GLenum target,
 GLenum pname,
 const GLint * params);
 

Parameters

target

+ Specifies a texture environment. + May be either GL_TEXTURE_ENV, or GL_TEXTURE_FILTER_CONTROL. +

pname

+ Specifies the symbolic name of a texture environment parameter. + Accepted values are GL_TEXTURE_ENV_MODE, GL_TEXTURE_ENV_COLOR, or + GL_TEXTURE_LOD_BIAS. +

params

+ Specifies a pointer to a parameter array that contains + either a single symbolic constant, single floating-point number, or an RGBA + color. +

Description

+ A texture environment specifies how texture values are interpreted when a + fragment is textured. When target is GL_TEXTURE_FILTER_CONTROL, + pname must be GL_TEXTURE_LOD_BIAS. When target is + GL_TEXTURE_ENV, pname can be GL_TEXTURE_ENV_MODE, + GL_TEXTURE_ENV_COLOR, GL_COMBINE_RGB, GL_COMBINE_ALPHA, + GL_RGB_SCALE, GL_ALPHA_SCALE, + GL_SRC0_RGB, GL_SRC1_RGB, GL_SRC2_RGB, + GL_SRC0_ALPHA, GL_SRC1_ALPHA, or GL_SRC2_ALPHA. +

+ If pname is GL_TEXTURE_ENV_MODE, + then params is (or points to) the symbolic name of a texture function. + Six texture functions may be specified: + GL_ADD, + GL_MODULATE, + GL_DECAL, + GL_BLEND, + GL_REPLACE, or + GL_COMBINE. +

+ The following table shows the correspondence of filtered texture + values + R + t, + G + t, + B + t, + A + t, + L + t, + I + t + to texture source components. + C + s + and + A + s + are used by the texture functions described below. +

+

+ Texture Base Internal Format + + C + s + + A + s +
+ GL_ALPHA + + (0, 0, 0) + + A + t +
+ GL_LUMINANCE + + ( + L + t, + L + t, + L + t + ) + + 1 +
+ GL_LUMINANCE_ALPHA + + ( + L + t, + L + t, + L + t + ) + + A + t +
+ GL_INTENSITY + + ( + I + t, + I + t, + I + t + ) + + I + t +
+ GL_RGB + + ( + R + t, + G + t, + B + t + ) + + 1 +
+ GL_RGBA + + ( + R + t, + G + t, + B + t + ) + + A + t +

+ A texture function acts on the fragment to be textured using + the texture image value that applies to the fragment + (see glTexParameter) + and produces an RGBA color for that fragment. + The following table shows how the RGBA color is produced for each + of the first five texture functions that can be chosen. + C + is a triple of color values (RGB) and + A + is the associated alpha value. + RGBA values extracted from a texture image are in the range [0,1]. + The subscript + p + refers to the color computed from the previous texture stage (or the incoming fragment if processing texture stage 0), + the subscript + s + to the texture source color, + the subscript + c + to the texture environment color, + and the subscript + v + indicates a value produced by the texture function. +

+

+ Texture Base Internal Format + + Value + + GL_REPLACE Function + + GL_MODULATE Function + + GL_DECAL Function + + GL_BLEND Function + + GL_ADD Function +
+ GL_ALPHA + + + + + C + v + + = + + + + + + + C + p + + + + + + + + C + p + + + + + undefined + + + + + C + p + + + + + + + + C + p + + + +
+ + + + + A + v + + = + + + + + + + A + s + + + + + + + + + A + p + + ⁢ + A + s + + + + + + + + + + A + v + + = + + A + p + + ⁢ + A + s + + + + + + + + + + A + p + + ⁢ + A + s + + + + +
+ GL_LUMINANCE + + + + + C + v + + = + + + + + + + C + s + + + + + + + + + C + p + + ⁢ + C + s + + + + + + undefined + + + + + + C + p + + ⁢ + + + 1 + - + C + s + + + + + + C + c + + ⁢ + C + s + + + + + + + + + + C + p + + + + C + s + + + + +
+ (or 1) + + + + + A + v + + = + + + + + + + A + p + + + + + + + + A + p + + + + + + + + + A + p + + + + + + + + A + p + + + +
+ GL_LUMINANCE_ALPHA + + + + + C + v + + = + + + + + + + C + s + + + + + + + + + C + p + + ⁢ + C + s + + + + + + undefined + + + + + + C + p + + ⁢ + + + 1 + - + C + s + + + + + + C + c + + ⁢ + C + s + + + + + + + + + + C + p + + + + C + s + + + + +
+ (or 2) + + + + + A + v + + = + + + + + + + A + s + + + + + + + + + A + p + + ⁢ + A + s + + + + + + + + + + + A + p + + ⁢ + A + s + + + + + + + + + + A + p + + ⁢ + A + s + + + + +
+ GL_INTENSITY + + + + + C + v + + = + + + + + + + C + s + + + + + + + + + C + p + + ⁢ + C + s + + + + + + undefined + + + + + + C + p + + ⁢ + + + 1 + - + C + s + + + + + + C + c + + ⁢ + C + s + + + + + + + + + + C + p + + + + C + s + + + + +
+ + + + + A + v + + = + + + + + + + A + s + + + + + + + + + A + p + + ⁢ + A + s + + + + + + + + + + + A + p + + ⁢ + + + 1 + - + A + s + + + + + + A + c + + ⁢ + A + s + + + + + + + + + + A + p + + + + A + s + + + + +
+ GL_RGB + + + + + C + v + + = + + + + + + + C + s + + + + + + + + + C + p + + ⁢ + C + s + + + + + + + + + C + s + + + + + + + + + C + p + + ⁢ + + + 1 + - + C + s + + + + + + C + c + + ⁢ + C + s + + + + + + + + + + C + p + + + + C + s + + + + +
+ (or 3) + + + + + A + v + + = + + + + + + + A + p + + + + + + + + A + p + + + + + + + + A + p + + + + + + + + A + p + + + + + + + + A + p + + + +
+ GL_RGBA + + + + + C + v + + = + + + + + + + C + s + + + + + + + + + C + p + + ⁢ + C + s + + + + + + + + + + C + p + + ⁢ + + + 1 + - + A + s + + + + + + C + s + + ⁢ + A + s + + + + + + + + + + C + p + + ⁢ + + + 1 + - + C + s + + + + + + C + c + + ⁢ + C + s + + + + + + + + + + C + p + + + + C + s + + + + +
+ (or 4) + + + + + A + v + + = + + + + + + + A + s + + + + + + + + + A + p + + ⁢ + A + s + + + + + + + + + A + p + + + + + + + + + A + p + + ⁢ + A + s + + + + + + + + + + A + p + + ⁢ + A + s + + + + +

+ If pname is GL_TEXTURE_ENV_MODE, and params is GL_COMBINE, the + form of the texture function depends on the values of GL_COMBINE_RGB + and GL_COMBINE_ALPHA. +

+ The following describes how the texture sources, as specified by + GL_SRC0_RGB, GL_SRC1_RGB, GL_SRC2_RGB, + GL_SRC0_ALPHA, GL_SRC1_ALPHA, and GL_SRC2_ALPHA, + are combined to produce a final texture color. In the following tables, + GL_SRC0_c is represented by + Arg0, + GL_SRC1_c is + represented by + Arg1, + and GL_SRC2_c is represented by + Arg2. +

+ GL_COMBINE_RGB accepts any of GL_REPLACE, GL_MODULATE, + GL_ADD, GL_ADD_SIGNED, GL_INTERPOLATE, GL_SUBTRACT, + GL_DOT3_RGB, or GL_DOT3_RGBA. +

+

+ GL_COMBINE_RGB + + Texture Function +
+ GL_REPLACE + + Arg0 +
+ GL_MODULATE + + + + + Arg0 + × + Arg1 + + +
+ GL_ADD + + + + + Arg0 + + + Arg1 + + +
+ GL_ADD_SIGNED + + + + + Arg0 + + + Arg1 + - + 0.5 + + +
+ GL_INTERPOLATE + + + + + + Arg0 + × + Arg2 + + + + + Arg1 + × + + + 1 + - + Arg2 + + + + + +
+ GL_SUBTRACT + + + + + Arg0 + - + Arg1 + + +
+ GL_DOT3_RGB + or + GL_DOT3_RGBA + + + + + 4 + × + + + + + + + + Arg0 + r + + + - + 0.5 + + + × + + + + Arg1 + r + + + - + 0.5 + + + + + + + + + + + + Arg0 + g + + + - + 0.5 + + + × + + + + Arg1 + g + + + - + 0.5 + + + + + + + + + + + + Arg0 + b + + + - + 0.5 + + + × + + + + Arg1 + b + + + - + 0.5 + + + + + + + + +

+ The scalar results for GL_DOT3_RGB and GL_DOT3_RGBA are placed + into each of the 3 (RGB) or 4 (RGBA) components on output. +

+ Likewise, GL_COMBINE_ALPHA accepts any of GL_REPLACE, + GL_MODULATE, GL_ADD, GL_ADD_SIGNED, GL_INTERPOLATE, or + GL_SUBTRACT. The following table describes how alpha values are + combined: +

+

+ GL_COMBINE_ALPHA + + Texture Function +
+ GL_REPLACE + + Arg0 +
+ GL_MODULATE + + + + + Arg0 + × + Arg1 + + +
+ GL_ADD + + + + + Arg0 + + + Arg1 + + +
+ GL_ADD_SIGNED + + + + + Arg0 + + + Arg1 + - + 0.5 + + +
+ GL_INTERPOLATE + + + + + + Arg0 + × + Arg2 + + + + + Arg1 + × + + + 1 + - + Arg2 + + + + + +
+ GL_SUBTRACT + + + + + Arg0 + - + Arg1 + + +

+ In the following tables, the value + + + C + s + + + represents the color sampled + from the currently bound texture, + + + C + c + + + represents the constant + texture-environment color, + + + C + f + + + represents the primary color of the + incoming fragment, and + + + C + p + + + represents the color computed from the + previous texture stage or + + + C + f + + + if processing texture stage 0. Likewise, + + + A + s + + , + + + A + c + + , + + + A + f + + , + and + + + A + p + + + represent the respective + alpha values. +

+ The following table describes the values assigned to + Arg0, + Arg1, + and + Arg2 + based upon the RGB sources and operands: +

+

+ GL_SRCn_RGB + + GL_OPERANDn_RGB + + Argument Value +
+ GL_TEXTURE + + GL_SRC_COLOR + + + + + C + s + + + +
+ + GL_ONE_MINUS_SRC_COLOR + + + + + 1 + - + + C + s + + + + +
+ + GL_SRC_ALPHA + + + + + A + s + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + s + + + + +
+ GL_TEXTUREn + + GL_SRC_COLOR + + + + + C + s + + + +
+ + GL_ONE_MINUS_SRC_COLOR + + + + + 1 + - + + C + s + + + + +
+ + GL_SRC_ALPHA + + + + + A + s + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + s + + + + +
+ GL_CONSTANT + + GL_SRC_COLOR + + + + + C + c + + + +
+ + GL_ONE_MINUS_SRC_COLOR + + + + + 1 + - + + C + c + + + + +
+ + GL_SRC_ALPHA + + + + + A + c + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + c + + + + +
+ GL_PRIMARY_COLOR + + GL_SRC_COLOR + + + + + C + f + + + +
+ + GL_ONE_MINUS_SRC_COLOR + + + + + 1 + - + + C + f + + + + +
+ + GL_SRC_ALPHA + + + + + A + f + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + f + + + + +
+ GL_PREVIOUS + + GL_SRC_COLOR + + + + + C + p + + + +
+ + GL_ONE_MINUS_SRC_COLOR + + + + + 1 + - + + C + p + + + + +
+ + GL_SRC_ALPHA + + + + + A + p + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + p + + + + +

+ For GL_TEXTUREn sources, + + + C + s + + + and + + + A + s + + + represent the color + and alpha, respectively, produced from texture stage + n. +

+ The follow table describes the values assigned to + Arg0, + Arg1, + and + Arg2 + based upon the alpha sources and operands: +

+

+ GL_SRCn_ALPHA + + GL_OPERANDn_ALPHA + + Argument Value +
+ GL_TEXTURE + + GL_SRC_ALPHA + + + + + A + s + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + s + + + + +
+ GL_TEXTUREn + + GL_SRC_ALPHA + + + + + A + s + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + s + + + + +
+ GL_CONSTANT + + GL_SRC_ALPHA + + + + + A + c + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + c + + + + +
+ GL_PRIMARY_COLOR + + GL_SRC_ALPHA + + + + + A + f + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + f + + + + +
+ GL_PREVIOUS + + GL_SRC_ALPHA + + + + + A + p + + + +
+ + GL_ONE_MINUS_SRC_ALPHA + + + + + 1 + - + + A + p + + + + +

+ The RGB and alpha results of the texture function are multipled by the + values of GL_RGB_SCALE and GL_ALPHA_SCALE, respectively, and + clamped to the range + + + + 0 + 1 + + . +

+ If pname is GL_TEXTURE_ENV_COLOR, + params is a pointer to an array that holds an RGBA color consisting of four + values. + Integer color components are interpreted linearly such that the most + positive integer maps to 1.0, + and the most negative integer maps to -1.0. + The values are clamped to the range [0,1] when they are specified. + + + C + c + + + takes these four values. +

+ If pname is GL_TEXTURE_LOD_BIAS, the value specified is added to the + texture level-of-detail parameter, that selects which mipmap, or mipmaps + depending upon the selected GL_TEXTURE_MIN_FILTER, will be sampled. +

+ GL_TEXTURE_ENV_MODE defaults to GL_MODULATE and + GL_TEXTURE_ENV_COLOR defaults to (0, 0, 0, 0). +

+ If target is GL_POINT_SPRITE and pname is GL_COORD_REPLACE, the boolean value specified + is used to either enable or disable point sprite texture coordinate replacement. The default value is GL_FALSE. +

Notes

+ GL_REPLACE may only be used if the GL version is 1.1 or greater. +

+ GL_TEXTURE_FILTER_CONTROL and GL_TEXTURE_LOD_BIAS may only be + used if the GL version is 1.4 or greater. +

+ GL_COMBINE mode and its associated constants may only be used if the + GL version is 1.3 or greater. +

+ GL_TEXTUREn may only be used if the GL version is 1.4 or greater. +

+ Internal formats other than 1, 2, 3, or 4 may only be used if the GL + version is 1.1 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexEnv controls + the texture environment for the current active texture unit, selected by + glActiveTexture. +

+ GL_POINT_SPRITE and GL_COORD_REPLACE are available + only if the GL version is 2.0 or greater. +

Errors

+ GL_INVALID_ENUM is generated when target or pname is not + one of the accepted defined values, + or when params should have a defined constant value + (based on the value of pname) + and does not. +

+ GL_INVALID_VALUE is generated if the params value for + GL_RGB_SCALE or GL_ALPHA_SCALE are not one of 1.0, 2.0, + or 4.0. +

+ GL_INVALID_OPERATION is generated if glTexEnv + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexEnv +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexGen.xml b/upstream-man-pages/man2/xhtml/glTexGen.xml new file mode 100644 index 0000000..aa61a00 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexGen.xml @@ -0,0 +1,636 @@ + + + +glTexGen

Name

glTexGen — control the generation of texture coordinates

C Specification

void glTexGeni(GLenum  coord,
 GLenum  pname,
 GLint  param);
void glTexGenf(GLenum  coord,
 GLenum  pname,
 GLfloat  param);
void glTexGend(GLenum  coord,
 GLenum  pname,
 GLdouble  param);

Parameters

coord

+ Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. +

pname

+ Specifies the symbolic name of the texture-coordinate generation function. + Must be GL_TEXTURE_GEN_MODE. +

param

+ Specifies a single-valued texture generation parameter, + one of GL_OBJECT_LINEAR, GL_EYE_LINEAR, GL_SPHERE_MAP, + GL_NORMAL_MAP, or GL_REFLECTION_MAP. +

C Specification

void glTexGeniv(GLenum  coord,
 GLenum  pname,
 const GLint *  params);
void glTexGenfv(GLenum  coord,
 GLenum  pname,
 const GLfloat *  params);
void glTexGendv(GLenum  coord,
 GLenum  pname,
 const GLdouble *  params);

Parameters

coord

+ Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. +

pname

+ Specifies the symbolic name of the texture-coordinate generation function + or function parameters. + Must be + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. +

params

+ Specifies a pointer to an array of texture generation parameters. + If pname is GL_TEXTURE_GEN_MODE, + then the array must contain a single symbolic constant, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + Otherwise, + params holds the coefficients for the texture-coordinate generation function + specified by pname. +

Description

+ glTexGen selects a texture-coordinate generation function + or supplies coefficients for one of the functions. + coord names one of the (s, t, r, q) texture + coordinates; it must be one of the symbols + GL_S, + GL_T, + GL_R, or + GL_Q. + pname must be one of three symbolic constants: + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + If pname is GL_TEXTURE_GEN_MODE, + then params chooses a mode, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + If pname is either GL_OBJECT_PLANE or GL_EYE_PLANE, + params contains coefficients for the corresponding + texture generation function. +

+ If the texture generation function is GL_OBJECT_LINEAR, + the function +

+ + + + g + = + + + p + 1 + + × + x + o + + + + + + p + 2 + + × + y + o + + + + + + p + 3 + + × + z + o + + + + + + p + 4 + + × + w + o + + + + + +

+ is used, where + g + is the value computed for the coordinate named in coord, + + + p + 1 + + , + + + p + 2 + + , + + + p + 3 + + , + and + + + p + 4 + + + are the four values supplied in params, and + + + x + o + + , + + + y + o + + , + + + z + o + + , + and + + + w + o + + + are the object coordinates of the vertex. + This function can be used, for example, to texture-map terrain using sea level + as a reference plane + (defined by + + + p + 1 + + , + + + p + 2 + + , + + + p + 3 + + , + and + + + p + 4 + + ). + The altitude of a terrain vertex is computed by the GL_OBJECT_LINEAR + coordinate generation function as its distance from sea level; + that altitude can then be used to index the texture image to map white snow + onto peaks and green grass onto foothills. +

+ If the texture generation function is GL_EYE_LINEAR, the function +

+

+ + + g + = + + + + p + 1 + + + ″ + + × + x + e + + + + + + + p + 2 + + + ″ + + × + y + e + + + + + + + p + 3 + + + ″ + + × + z + e + + + + + + + p + 4 + + + ″ + + × + w + e + + + + +

+

+ is used, where +

+

+ + + + + + p + 1 + + + ″ + + ⁢ + + p + 2 + + + ″ + + ⁢ + + p + 3 + + + ″ + + ⁢ + + p + 4 + + + ″ + + + + = + + + + p + 1 + + ⁢ + p + 2 + + ⁢ + p + 3 + + ⁢ + p + 4 + + + + ⁢ + M + -1 + + + +

+

+ and + + + x + e + + , + + + y + e + + , + + + z + e + + , + and + + + w + e + + + are the eye coordinates of the vertex, + + + p + 1 + + , + + + p + 2 + + , + + + p + 3 + + , + and + + + p + 4 + + + are the values supplied in params, and + M + is the modelview matrix when glTexGen is invoked. + If + M + is poorly conditioned or singular, + texture coordinates generated by the resulting function may be inaccurate + or undefined. +

+ Note that the values in params define a reference plane in eye coordinates. + The modelview matrix that is applied to them may not be the same one + in effect when the polygon vertices are transformed. + This function establishes a field of texture coordinates + that can produce dynamic contour lines on moving objects. +

+ If the texture generation function is GL_SPHERE_MAP and coord is either + GL_S or + GL_T, + s + and + t + texture coordinates are generated as follows. + Let u be the unit vector pointing from the origin to the polygon vertex + (in eye coordinates). + Let n sup prime be the current normal, + after transformation to eye coordinates. + Let +

+ + + + f + = + + + f + x + + ⁢ + f + y + + ⁢ + f + z + + + + T + + + + be the reflection vector such that +

+ + + + f + = + + u + - + 2 + ⁢ + n + ″ + + ⁢ + + n + ″ + + + T + + ⁢ + u + + + +

+ Finally, let + + + + m + = + + 2 + ⁢ + + + + + f + x + + + 2 + + + + + f + y + + + 2 + + + + + + f + z + + + + 1 + + + 2 + + + + + + + . + Then the values assigned to the + s + and + t + texture coordinates are +

+ + + + s + = + + + f + x + + m + + + + + 1 + 2 + + + + +

+ + + + t + = + + + f + y + + m + + + + + 1 + 2 + + + + +

+ To enable or disable a texture-coordinate generation function, call + glEnable or glDisable + with one of the symbolic texture-coordinate names + (GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, or + GL_TEXTURE_GEN_Q) as the argument. + When enabled, + the specified texture coordinate is computed + according to the generating function associated with that coordinate. + When disabled, + subsequent vertices take the specified texture coordinate + from the current set of texture coordinates. Initially, all texture + generation functions are set to GL_EYE_LINEAR and are disabled. + Both + s + plane equations are (1, 0, 0, 0), + both + t + plane equations are (0, 1, 0, 0), + and all + r + and + q + plane equations are (0, 0, 0, 0). +

+ When the ARB_multitexture extension is supported, glTexGen sets the + texture generation parameters for the currently active texture unit, + selected with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated when coord or pname is not an + accepted defined value, + or when pname is GL_TEXTURE_GEN_MODE and params is not an + accepted defined value. +

+ GL_INVALID_ENUM is generated when pname is GL_TEXTURE_GEN_MODE, + params is GL_SPHERE_MAP, + and coord is either GL_R or GL_Q. +

+ GL_INVALID_OPERATION is generated if glTexGen + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexGen +

+ glIsEnabled with argument GL_TEXTURE_GEN_S +

+ glIsEnabled with argument GL_TEXTURE_GEN_T +

+ glIsEnabled with argument GL_TEXTURE_GEN_R +

+ glIsEnabled with argument GL_TEXTURE_GEN_Q +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexImage1D.xml b/upstream-man-pages/man2/xhtml/glTexImage1D.xml new file mode 100644 index 0000000..85b3431 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexImage1D.xml @@ -0,0 +1,663 @@ + + +glTexImage1D

Name

glTexImage1D — specify a one-dimensional texture image

C Specification

void glTexImage1D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be 1, 2, 3, or 4, or one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

width

+ Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support texture images that are at least 64 texels + wide. The height of the 1D texture image is 1. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. +

+ Texture images are defined with glTexImage1D. + The arguments describe the parameters of the texture image, + such as width, + width of the border, + level-of-detail number + (see glTexParameter), + and the internal resolution and format used to store the image. + The last three arguments describe how the image is represented in + memory; they are identical to the pixel formats used for + glDrawPixels. +

+ If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked against the implementation's capabilities. + If the implementation cannot handle a texture of the + requested texture size, it sets all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_1D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + If type is GL_BITMAP, + the data is considered as a string of unsigned bytes + (and format must be GL_COLOR_INDEX). + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the left end of the texture array. + Subsequent elements progress left-to-right through the remaining texels + in the texture array. + The final element corresponds to the right end of the texture array. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_COLOR_INDEX

+ Each element is a single value, + a color index. + The GL converts it to fixed point + (with an unspecified number of zero bits to the right of the binary point), + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET + (see glPixelTransfer). + The resulting index is converted to a set of color components + using the + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A tables, + and clamped to the range [0,1]. +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_GREEN

+ Each element is a single green component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_BLUE

+ Each element is a single blue component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and green, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_ALPHA

+ Each element is a single alpha component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_INTENSITY

+ Each element is a single intensity value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the intensity value + three times for red, green, blue, and alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_LUMINANCE

+ Each element is a single luminance value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue and attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_LUMINANCE_ALPHA

+ Each element is a luminance/alpha pair. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] (see glPixelTransfer). +

GL_DEPTH_COMPONENT

+ Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1] (see glPixelTransfer). +

+ Refer to the glDrawPixels reference page for a description of + the acceptable values for the type parameter. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_LUMINANCE, + GL_LUMINANCE_ALPHA, GL_RGB, + and GL_RGBA must match exactly. The numeric values 1, 2, 3, and 4 + may also be used to specify the above representations.) +

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, or + GL_SLUMINANCE8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_1D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

+ Depth textures can be treated as LUMINANCE, INTENSITY or ALPHA textures during texture filtering and application. Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. +

Notes

+ Texturing has no effect in color index mode. +

+ If the ARB_imaging extension is supported, RGBA elements may + also be processed by the imaging pipeline. The following stages may be + applied to an RGBA color before color component clamping to the range + + + + 0 + 1 + + : +

1. Color component replacement by the color table specified for

+ GL_COLOR_TABLE, if enabled. See glColorTable. +

2. One-dimensional convolution filtering, if enabled. See

+ glConvolutionFilter1D. +

+ If a convolution filter changes the width of the texture (by + processing with a GL_CONVOLUTION_BORDER_MODE of GL_REDUCE, for + example), the width must + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + , + for some + integer + n, + after filtering. +

3. RGBA components may be multiplied by GL_POST_CONVOLUTION_c_SCALE,

+ and added to GL_POST_CONVOLUTION_c_BIAS, if enabled. See + glPixelTransfer. +

4. Color component replacement by the color table specified for

+ GL_POST_CONVOLUTION_COLOR_TABLE, if enabled. See glColorTable. +

5. Transformation by the color matrix.

+ See glMatrixMode. +

6. RGBA components may be multiplied by GL_POST_COLOR_MATRIX_c_SCALE,

+ and added to GL_POST_COLOR_MATRIX_c_BIAS, if enabled. See + glPixelTransfer. +

7. Color component replacement by the color table specified for

+ GL_POST_COLOR_MATRIX_COLOR_TABLE, if enabled. See glColorTable. +

+ The texture image can be represented by the same data formats + as the pixels in a glDrawPixels command, + except that GL_STENCIL_INDEX + cannot be used. + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ GL_PROXY_TEXTURE_1D may be used only if the GL version is 1.1 or greater. +

+ Internal formats other than 1, 2, 3, or 4 may be + used only if the GL version is 1.1 or greater. +

+ In GL version 1.1 or greater, + data may be a null pointer. In this case texture memory is + allocated to accommodate a texture of width width. + You can then download subtextures to initialize the + texture memory. The image is undefined if the program tries to apply + an uninitialized portion of the texture image to a primitive. +

+ Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ When the ARB_multitexture extension is supported, or the GL version is 1.3 or greater, glTexImage1D + specifies the one-dimensional texture for the current texture unit, + specified with glActiveTexture. +

+ GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, and GL_DEPTH_COMPONENT32 are available only + if the GL version is 1.4 or greater. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

+ The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_1D + or GL_PROXY_TEXTURE_1D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX + are accepted. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not 1, 2, 3, 4, or + one of the accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than 2 + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer value of n. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glTexImage1D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_1D +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexImage2D.xml b/upstream-man-pages/man2/xhtml/glTexImage2D.xml new file mode 100644 index 0000000..ea08f6d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexImage2D.xml @@ -0,0 +1,726 @@ + + +glTexImage2D

Name

glTexImage2D — specify a two-dimensional texture image

C Specification

void glTexImage2D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be 1, 2, 3, or 4, or one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

width

+ Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support texture images that are at least 64 texels + wide. +

height

+ Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + m + + + + + 2 + ⁡ + + border + + + + + for some integer + m. + All + implementations support texture images that are at least 64 texels + high. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. To enable and disable two-dimensional texturing, call glEnable and glDisable with argument GL_TEXTURE_2D. To enable and disable texturing using cube-mapped texture, call glEnable and glDisable with argument GL_TEXTURE_CUBE_MAP. +

+ To define texture images, call glTexImage2D. + The arguments describe the parameters of the texture image, + such as height, + width, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory; + they are identical to the pixel formats used for glDrawPixels. +

+ If target is GL_PROXY_TEXTURE_2D or GL_PROXY_TEXTURE_CUBE_MAP, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_2D, or one of the GL_TEXTURE_CUBE_MAP + targets, data is read from data as a sequence of signed or unsigned + bytes, shorts, or longs, or single-precision floating-point values, + depending on type. These values are grouped into sets of one, two, + three, or four values, depending on format, to form elements. If type + is GL_BITMAP, the data is considered as a string of unsigned bytes + (and format must be GL_COLOR_INDEX). + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_COLOR_INDEX

+ Each element is a single value, + a color index. + The GL converts it to fixed point + (with an unspecified number of zero bits to the right of the binary point), + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET + (see glPixelTransfer). + The resulting index is converted to a set of color components + using the + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A tables, + and clamped to the range [0,1]. +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_GREEN

+ Each element is a single green component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_BLUE

+ Each element is a single blue component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and green, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_ALPHA

+ Each element is a single alpha component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_INTENSITY

+ Each element is a single intensity value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the intensity value + three times for red, green, blue, and alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_LUMINANCE

+ Each element is a single luminance value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue and attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_LUMINANCE_ALPHA

+ Each element is a luminance/alpha pair. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] (see glPixelTransfer). +

GL_DEPTH_COMPONENT

+ Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1] (see glPixelTransfer). +

+ Refer to the glDrawPixels reference page for a description of + the acceptable values for the type parameter. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_LUMINANCE, + GL_LUMINANCE_ALPHA, GL_RGB, + and GL_RGBA must match exactly. The numeric values 1, 2, 3, and 4 + may also be used to specify the above representations.) +

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, or + GL_SLUMINANCE8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_2D or GL_PROXY_TEXTURE_CUBE_MAP target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

+ Depth textures can be treated as LUMINANCE, INTENSITY or ALPHA textures during texture filtering and application. Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. +

Notes

+ Texturing has no effect in color index mode. +

+ If the ARB_imaging extension is supported, RGBA elements may + also be processed by the imaging pipeline. The following stages may be + applied to an RGBA color before color component clamping to the range + + + + 0 + 1 + + : +

1. Color component replacement by the color table specified for

+ GL_COLOR_TABLE, if enabled. See glColorTable. +

2. Two-dimensional Convolution filtering, if enabled.

+ See glConvolutionFilter1D. +

+ If a convolution filter changes the width of the texture (by + processing with a GL_CONVOLUTION_BORDER_MODE of GL_REDUCE, for + example), and the GL does not support non-power-of-two textures, the width must + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + , + for some + integer + n, + and height must be + + + + 2 + m + + + + + 2 + ⁡ + + border + + + + , + for some + integer + m, + after filtering. +

3. RGBA components may be multiplied by GL_POST_CONVOLUTION_c_SCALE,

+ and added to GL_POST_CONVOLUTION_c_BIAS, if enabled. See + glPixelTransfer. +

4. Color component replacement by the color table specified for

+ GL_POST_CONVOLUTION_COLOR_TABLE, if enabled. See glColorTable. +

5. Transformation by the color matrix.

+ See glMatrixMode. +

6. RGBA components may be multiplied by GL_POST_COLOR_MATRIX_c_SCALE,

+ and added to GL_POST_COLOR_MATRIX_c_BIAS, if enabled. See + glPixelTransfer. +

7. Color component replacement by the color table specified for

+ GL_POST_COLOR_MATRIX_COLOR_TABLE, if enabled. See glColorTable. +

+ The texture image can be represented by the same data formats + as the pixels in a glDrawPixels command, + except that GL_STENCIL_INDEX + cannot be used. + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ glTexImage2D and GL_PROXY_TEXTURE_2D are available only if the GL + version is 1.1 or greater. +

+ Internal formats other than 1, 2, 3, or 4 may be used only if the GL + version is 1.1 or greater. +

+ In GL version 1.1 or greater, data may be a null pointer. + In this case, texture memory is + allocated to accommodate a texture of width width and height height. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. +

+ Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ When the ARB_multitexture extension is supported or the GL version is 1.3 or greater, glTexImage2D + specifies the two-dimensional texture for the current texture unit, + specified with glActiveTexture. +

+ GL_TEXTURE_CUBE_MAP and GL_PROXY_TEXTURE_CUBE_MAP are available only if the GL + version is 1.3 or greater. +

+ GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, and GL_DEPTH_COMPONENT32 are available only + if the GL version is 1.4 or greater. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

+ The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. +

+ GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than 2 + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not 1, 2, 3, 4, or one of the + accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than 2 + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or height cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some + integer value of k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if target is not + GL_TEXTURE_2D or GL_PROXY_TEXTURE_2D and internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glTexImage2D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_2D or GL_TEXTURE_CUBE_MAP +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexImage3D.xml b/upstream-man-pages/man2/xhtml/glTexImage3D.xml new file mode 100644 index 0000000..c231478 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexImage3D.xml @@ -0,0 +1,679 @@ + + +glTexImage3D

Name

glTexImage3D — specify a three-dimensional texture image

C Specification

void glTexImage3D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D or GL_PROXY_TEXTURE_3D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level + n + is the + + + n + th + + + mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be 1, 2, 3, or 4, or one of the following symbolic constants: + GL_ALPHA, + GL_ALPHA4, + GL_ALPHA8, + GL_ALPHA12, + GL_ALPHA16, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_LUMINANCE, + GL_LUMINANCE4, + GL_LUMINANCE8, + GL_LUMINANCE12, + GL_LUMINANCE16, + GL_LUMINANCE_ALPHA, + GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16, + GL_INTENSITY, + GL_INTENSITY4, + GL_INTENSITY8, + GL_INTENSITY12, + GL_INTENSITY16, + GL_R3_G3_B2, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, + GL_SLUMINANCE8_ALPHA8, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

width

+ Specifies the width of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + All + implementations support 3D texture images that are at least 16 texels + wide. +

height

+ Specifies the height of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + m + + + + + 2 + ⁡ + + border + + + + + for some integer + m. + All + implementations support 3D texture images that are at least 16 texels + high. +

depth

+ Specifies the depth of the texture image including the border if any. If the GL version does not support non-power-of-two sizes, this value must be + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some integer + k. + All + implementations support 3D texture images that are at least 16 texels + deep. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. +

+ To define texture images, call glTexImage3D. + The arguments describe the parameters of the texture image, + such as height, + width, depth, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory; + they are identical to the pixel formats used for glDrawPixels. +

+ If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_3D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + If type is GL_BITMAP, + the data is considered as a string of unsigned bytes (and + format must be GL_COLOR_INDEX). + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_COLOR_INDEX

+ Each element is a single value, + a color index. + The GL converts it to fixed point + (with an unspecified number of zero bits to the right of the binary point), + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET + (see glPixelTransfer). + The resulting index is converted to a set of color components + using the + GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B, and + GL_PIXEL_MAP_I_TO_A tables, + and clamped to the range [0,1]. +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_GREEN

+ Each element is a single green component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_BLUE

+ Each element is a single blue component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red and green, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_ALPHA

+ Each element is a single alpha component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_INTENSITY

+ Each element is a single intensity value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the intensity value + three times for red, green, blue, and alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_LUMINANCE

+ Each element is a single luminance value. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue and attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] + (see glPixelTransfer). +

GL_LUMINANCE_ALPHA

+ Each element is a luminance/alpha pair. + The GL converts it to floating point, + then assembles it into an RGBA element by replicating the luminance value + three times for red, green, and blue. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1] (see glPixelTransfer). +

+ Refer to the glDrawPixels reference page for a description of + the acceptable values for the type parameter. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_LUMINANCE, + GL_LUMINANCE_ALPHA, GL_RGB, + and GL_RGBA must match exactly. The numeric values 1, 2, 3, and 4 + may also be used to specify the above representations.) +

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_ALPHA, + GL_COMPRESSED_INTENSITY, + GL_COMPRESSED_LUMINANCE, + GL_COMPRESSED_LUMINANCE_ALPHA, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, or + GL_SLUMINANCE8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_3D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

Notes

+ Texturing has no effect in color index mode. +

+ The texture image can be represented by the same data formats + as the pixels in a glDrawPixels command, + except that GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + cannot be used. + glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ glTexImage3D is available only if the GL version is 1.2 or greater. +

+ Internal formats other than 1, 2, 3, or 4 may be used only if the GL + version is 1.1 or greater. +

+ data may be a null pointer. + In this case texture memory is + allocated to accommodate a texture of width width, height height, + and depth depth. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. +

+ Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexImage3D + specifies the three-dimensional texture for the current texture unit, + specified with glActiveTexture. +

+ If the ARB_imaging extension is supported, RGBA elements may + also be processed by the imaging pipeline. The following stages may be + applied to an RGBA color before color component clamping to the range + + + + 0 + 1 + + : +

1. Color component replacement by the color table specified for

+ GL_COLOR_TABLE, if enabled. See glColorTable. +

2. Color component replacement by the color table specified for

+ GL_POST_CONVOLUTION_COLOR_TABLE, if enabled. See glColorTable. +

3. Transformation by the color matrix. See glMatrixMode.
4. RGBA components may be multiplied by GL_POST_COLOR_MATRIX_c_SCALE,

+ and added to GL_POST_COLOR_MATRIX_c_BIAS, if enabled. See + glPixelTransfer. +

5. Color component replacement by the color table specified for

+ GL_POST_COLOR_MATRIX_COLOR_TABLE, if enabled. See + glColorTable. +

+ Non-power-of-two textures are supported if the GL version is 2.0 or greater, or if the implementation exports the GL_ARB_texture_non_power_of_two extension. +

+ The + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, + GL_SRGB8_ALPHA8, + GL_SLUMINANCE, + GL_SLUMINANCE8, + GL_SLUMINANCE_ALPHA, and + GL_SLUMINANCE8_ALPHA8 + internal formats are only available if the GL version is 2.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + are accepted. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not 1, 2, 3, 4, or one of the + accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width, height, or depth is less than 0 or greater than 2 + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width, height, or depth cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some + integer value of k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if format or internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glTexImage3D + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_3D +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexParameter.xml b/upstream-man-pages/man2/xhtml/glTexParameter.xml new file mode 100644 index 0000000..bcacb5b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexParameter.xml @@ -0,0 +1,914 @@ + + +glTexParameter

Name

glTexParameter — set texture parameters

C Specification

void glTexParameterf(GLenum  target,
 GLenum  pname,
 GLfloat  param);
void glTexParameteri(GLenum  target,
 GLenum  pname,
 GLint  param);

Parameters

target

+ Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, or GL_TEXTURE_CUBE_MAP. +

pname

+ Specifies the symbolic name of a single-valued texture parameter. + pname can be one of the following: + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_PRIORITY, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_DEPTH_TEXTURE_MODE, or + GL_GENERATE_MIPMAP. +

param

+ Specifies the value of pname. +

C Specification

void glTexParameterfv(GLenum  target,
 GLenum  pname,
 const GLfloat *  params);
void glTexParameteriv(GLenum  target,
 GLenum  pname,
 const GLint *  params);

Parameters

target

+ Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D or + GL_TEXTURE_3D. +

pname

+ Specifies the symbolic name of a texture parameter. + pname can be one of the following: + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_PRIORITY, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_DEPTH_TEXTURE_MODE, or + GL_GENERATE_MIPMAP. +

params

+ Specifies a pointer to an array where the value or values of pname + are stored. +

Description

+ Texture mapping is a technique that applies an image onto an object's surface + as if the image were a decal or cellophane shrink-wrap. + The image is created in texture space, + with an + (s, + t) + coordinate system. + A texture is a one- or two-dimensional image and a set of parameters + that determine how samples are derived from the image. +

+ glTexParameter assigns the value or values in params to the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, or GL_TEXTURE_3D. + The following symbols are accepted in pname: +

GL_TEXTURE_MIN_FILTER

+ The texture minifying function is used whenever the pixel being textured + maps to an area greater than one texture element. + There are six defined minifying functions. + Two of them use the nearest one or nearest four texture elements + to compute the texture value. + The other four use mipmaps. +

+ A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + ⁡ + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + ⁡ + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. +

+ params supplies a function for minifying the texture as one of the + following: +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

GL_NEAREST_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value. +

GL_LINEAR_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value. +

GL_NEAREST_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

GL_LINEAR_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

+

+ As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or four texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MAG_FILTER

+ The texture magnification function is used when the pixel being textured + maps to an area less than or equal to one texture element. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

+

+

+

+

GL_TEXTURE_MIN_LOD

+ Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. +

+

GL_TEXTURE_MAX_LOD

+ Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. +

+

GL_TEXTURE_BASE_LEVEL

+ Specifies the index of the lowest defined mipmap level. This is an + integer value. The initial value is 0. +

+

GL_TEXTURE_MAX_LEVEL

+ Sets the index of the highest defined mipmap level. This is an integer + value. The initial value is 1000. +

+

GL_TEXTURE_WRAP_S

+ Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP, + GL_CLAMP_TO_BORDER, GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP causes + s + coordinates to be clamped to the + range [0,1] and is useful for preventing wrapping artifacts when mapping a + single image onto an object. GL_CLAMP_TO_BORDER causes the + s + coordinate to be clamped to the range + + + + + + + -1 + 2N + + + + + 1 + + + + + + 1 + 2N + + + + + + , + where + N + is the size of the texture in the direction of + clamping.GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + ⁡ + + s + + + + , + where + + + + frac + ⁡ + + s + + + + represents the fractional part of + s. + Border texture + elements are accessed only if wrapping is set to GL_CLAMP or GL_CLAMP_TO_BORDER. Initially, + GL_TEXTURE_WRAP_S is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_T

+ Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP, + GL_CLAMP_TO_BORDER, GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP, + GL_CLAMP_TO_BORDER, GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ Sets a border color. params contains four values that comprise the RGBA + color of the texture border. Integer color components are interpreted + linearly such that the most positive integer maps to 1.0, and the most + negative integer maps to -1.0. The values are clamped to the range [0,1] + when they are specified. Initially, the border color is (0, 0, 0, 0). +

GL_TEXTURE_PRIORITY

+ Specifies the texture residence priority of the currently bound texture. + Permissible values are in the range + + + + 0 + 1 + + . + See glPrioritizeTextures and glBindTexture for more information. +

GL_TEXTURE_COMPARE_MODE

+ Specifies the texture comparison mode for currently bound depth textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: +

GL_COMPARE_R_TO_TEXTURE

+ Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound depth texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to luminance, + intensity, or alpha (as specified by GL_DEPTH_TEXTURE_MODE). +

GL_NONE

+ Specifies that the luminance, intensity, or alpha (as specified by + GL_DEPTH_TEXTURE_MODE) should be assigned the + appropriate value from the currently bound depth texture. +

+

GL_TEXTURE_COMPARE_FUNC

+ Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_R_TO_TEXTURE. Permissible values are: +

+ Texture Comparison Function + + Computed result +
+ GL_LEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + +
+
+ GL_GEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + +
+
+ GL_LESS + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + +
+
+ GL_GREATER + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + +
+
+ GL_EQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + ≠ + + D + t + + + + + + + + +
+
+ GL_NOTEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + ≠ + + D + t + + + + + + + r + = + + D + t + + + + + + + + +
+
+ GL_ALWAYS + +
+ + result + = + 1.0 + +
+
+ GL_NEVER + +
+ + result + = + 0.0 + +
+

+ where r + is the current interpolated texture coordinate, and + + + D + t + + + is the depth texture value sampled from the currently bound depth texture. + result + is assigned to the either the luminance, intensity, or alpha (as + specified by GL_DEPTH_TEXTURE_MODE.) +

GL_DEPTH_TEXTURE_MODE

+ Specifies a single symbolic constant indicating how depth values should be + treated during filtering and texture application. Accepted values are + GL_LUMINANCE, GL_INTENSITY, and GL_ALPHA. The initial value + is GL_LUMINANCE. +

GL_GENERATE_MIPMAP

+ Specifies a boolean value that indicates if all levels of a mipmap array + should be automatically updated when any modification to the base level + mipmap is done. The initial value is GL_FALSE. +

Notes

+ GL_TEXTURE_3D, GL_TEXTURE_MIN_LOD, GL_TEXTURE_MAX_LOD, + GL_CLAMP_TO_EDGE, GL_TEXTURE_BASE_LEVEL, and GL_TEXTURE_MAX_LEVEL are + available only if the GL version is 1.2 or greater. +

+ GL_CLAMP_TO_BORDER is available only if the GL version is 1.3 or greater. +

+ GL_MIRRORED_REPEAT, GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, GL_DEPTH_TEXTURE_MODE, and + GL_GENERATE_MIPMAP are available only if the GL version is 1.4 or + greater. +

+ GL_TEXTURE_COMPARE_FUNC allows the following additional comparison modes only + if the GL version is 1.5 or greater: + GL_LESS, GL_GREATER, + GL_EQUAL, GL_NOTEQUAL, + GL_ALWAYS, and GL_NEVER. +

+ Suppose that a program has enabled texturing (by calling glEnable with + argument GL_TEXTURE_1D, GL_TEXTURE_2D, or GL_TEXTURE_3D) and + has set GL_TEXTURE_MIN_FILTER to one of the functions that requires a + mipmap. If either the dimensions of the texture images currently defined + (with previous calls to glTexImage1D, glTexImage2D, + glTexImage3D, glCopyTexImage1D, or glCopyTexImage2D) do not + follow the proper sequence for mipmaps (described above), or there are + fewer texture images defined than are needed, or the set of texture images + have differing numbers of texture components, then it is as if texture + mapping were disabled. +

+ Linear filtering accesses the four nearest texture elements only in 2D + textures. In 1D textures, linear filtering accesses the two nearest + texture elements. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexParameter + specifies the texture parameters for the active texture unit, specified + by calling glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not + one of the accepted defined values. +

+ GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. +

+ GL_INVALID_OPERATION is generated if glTexParameter is executed between the + execution of glBegin and the corresponding execution of glEnd. +

Associated Gets

+ glGetTexParameter +

+ glGetTexLevelParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexSubImage1D.xml b/upstream-man-pages/man2/xhtml/glTexSubImage1D.xml new file mode 100644 index 0000000..ea74c9e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexSubImage1D.xml @@ -0,0 +1,248 @@ + + +glTexSubImage1D

Name

glTexSubImage1D — specify a one-dimensional texture subimage

C Specification

void glTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable or disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. +

+ glTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with width of 0, but + such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glTexSubImage1D is available only if the GL version is 1.1 or greater. +

+ Texturing has no effect in color index mode. +

+ glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexSubImage1D + specifies a one-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

+ When the ARB_imaging extension is supported, the RGBA components + specified in data may be processed by the imaging pipeline. See + glTexImage1D for specific details. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or if + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, and + b + is + the width of the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. +

+ GL_INVALID_VALUE is generated if width is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glTexSubImage1D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_1D +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexSubImage2D.xml b/upstream-man-pages/man2/xhtml/glTexSubImage2D.xml new file mode 100644 index 0000000..8434102 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexSubImage2D.xml @@ -0,0 +1,309 @@ + + +glTexSubImage2D

Name

glTexSubImage2D — specify a two-dimensional texture subimage

C Specification

void glTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable two-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_2D. +

+ glTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + and y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glTexSubImage2D is available only if the GL version is 1.1 or greater. +

+ Texturing has no effect in color index mode. +

+ glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexSubImage2D + specifies a two-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

+ When the ARB_imaging extension is supported, the RGBA components + specified in data may be processed by the imaging pipeline. See + glTexImage1D for specific details. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, and + b + is the border width + of the texture image being modified. + Note that + w + and + h + include twice the border width. +

+ GL_INVALID_VALUE is generated if width or height is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage2D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glTexSubImage2D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_2D +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTexSubImage3D.xml b/upstream-man-pages/man2/xhtml/glTexSubImage3D.xml new file mode 100644 index 0000000..7f100ad --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTexSubImage3D.xml @@ -0,0 +1,350 @@ + + +glTexSubImage3D

Name

glTexSubImage3D — specify a three-dimensional texture subimage

C Specification

void glTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

zoffset

+ Specifies a texel offset in the z direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

depth

+ Specifies the depth of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_COLOR_INDEX, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_ALPHA, + GL_RGB, + GL_BGR, + GL_RGBA, + GL_BGRA, + GL_LUMINANCE, and + GL_LUMINANCE_ALPHA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_BITMAP, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. +

+ glTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive, + and z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width, height, or + depth but such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glTexSubImage3D is available only if the GL version is 1.2 or greater. +

+ Texturing has no effect in color index mode. +

+ glPixelStore and glPixelTransfer modes affect texture images + in exactly the way they affect glDrawPixels. +

+ Formats GL_BGR, and GL_BGRA and types + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV are available only if the GL version + is 1.2 or greater. +

+ For OpenGL versions 1.3 and greater, or when the ARB_multitexture extension is supported, glTexSubImage3D + specifies a three-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

+ When the ARB_imaging extension is supported, the RGBA components + specified in data may be processed by the imaging pipeline. See + glTexImage3D for specific details. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_ENUM is generated if type is GL_BITMAP and + format is not GL_COLOR_INDEX. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + or + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + depth + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH + and + b + is the border width of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. +

+ GL_INVALID_VALUE is generated if width, height, or depth + is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if glTexSubImage3D is executed + between the execution of glBegin and the corresponding + execution of glEnd. +

Associated Gets

+ glGetTexImage +

+ glIsEnabled with argument GL_TEXTURE_3D +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glTranslate.xml b/upstream-man-pages/man2/xhtml/glTranslate.xml new file mode 100644 index 0000000..ec920ef --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glTranslate.xml @@ -0,0 +1,119 @@ + + +glTranslate

Name

glTranslate — multiply the current matrix by a translation matrix

C Specification

void glTranslated(GLdouble  x,
 GLdouble  y,
 GLdouble  z);
void glTranslatef(GLfloat  x,
 GLfloat  y,
 GLfloat  z);

Parameters

x, y, z

+ Specify the x, y, and z coordinates of a translation vector. +

Description

+ glTranslate produces a translation by + + + + x + y + z + + . + The current matrix + (see + glMatrixMode) + is multiplied by this translation matrix, + with the product replacing the current matrix, as if + glMultMatrix were called with the following matrix + for its argument: +

+

+ + + + + + 1 + + + 0 + + + 0 + + + x + + + + + 0 + + + 1 + + + 0 + + + y + + + + + 0 + + + 0 + + + 1 + + + z + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + +

+

+

+ If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, + all objects drawn after a call to glTranslate are translated. +

+ Use glPushMatrix and + glPopMatrix to save and restore + the untranslated coordinate system. +

Errors

+ GL_INVALID_OPERATION is generated if glTranslate + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_MATRIX_MODE +

+ glGet with argument GL_COLOR_MATRIX +

+ glGet with argument GL_MODELVIEW_MATRIX +

+ glGet with argument GL_PROJECTION_MATRIX +

+ glGet with argument GL_TEXTURE_MATRIX +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glUniform.xml b/upstream-man-pages/man2/xhtml/glUniform.xml new file mode 100644 index 0000000..0f1d61d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glUniform.xml @@ -0,0 +1,164 @@ + + +glUniform

Name

glUniform — Specify the value of a uniform variable for the current program object

C Specification

void glUniform1f(GLint  location,
 GLfloat  v0);
void glUniform2f(GLint  location,
 GLfloat  v0,
 GLfloat  v1);
void glUniform3f(GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glUniform4f(GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);
void glUniform1i(GLint  location,
 GLint  v0);
void glUniform2i(GLint  location,
 GLint  v0,
 GLint  v1);
void glUniform3i(GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2);
void glUniform4i(GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLint  v3);

Parameters

location

Specifies the location of the uniform variable + to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified uniform variable.

C Specification

void glUniform1fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform2fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform3fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform4fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform1iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform2iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform3iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform4iv(GLint  location,
 GLsizei  count,
 const GLint * value);

Parameters

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

C Specification

void glUniformMatrix2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix2x3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3x2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix2x4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4x2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3x4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4x3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);

Parameters

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices.

transpose

Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

Description

glUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glUniform operates on the program object + that was made part of current state by calling + glUseProgram.

The commands glUniform{1|2|3|4}{f|i} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i or the f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise.

All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0.

The commands glUniform{1|2|3|4}{f|i}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glUniform{1|2|3|4}{f|i}.

For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glUniform3f or + glUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count

The commands + glUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices.

Notes

glUniform is available only if the GL + version is 2.0 or greater.

glUniformMatrix{2x3|3x2|2x4|4x2|3x4|4x3}fv + is available only if the GL version is 2.1 or greater.

glUniform1i and + glUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error.

If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged.

Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged.

If location is a value other than + -1 and it does not represent a valid uniform variable location + in the current program object, an error will be generated, and + no changes will be made to the uniform variable storage of the + current program object. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed.

Errors

GL_INVALID_OPERATION is generated if there + is no current program object.

GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glUniform + command.

GL_INVALID_OPERATION is generated if one of + the integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, or + ivec4, or an array of these.

GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for the current program object and + location is not equal to -1.

GL_INVALID_VALUE is generated if + count is less than 0.

GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable.

GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glUniform1i and + glUniform1iv.

GL_INVALID_OPERATION is generated if + glUniform is executed between the execution + of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveUniform + with the handle of a program object and the index of an active uniform variable

glGetUniform + with the handle of a program object and the location of a + uniform variable

glGetUniformLocation + with the handle of a program object and the name of a uniform + variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glUnmapBuffer.xml b/upstream-man-pages/man2/xhtml/glUnmapBuffer.xml new file mode 100644 index 0000000..c046bb4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glUnmapBuffer.xml @@ -0,0 +1,4 @@ + + + +glUnmapBuffer diff --git a/upstream-man-pages/man2/xhtml/glUseProgram.xml b/upstream-man-pages/man2/xhtml/glUseProgram.xml new file mode 100644 index 0000000..082ba5c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glUseProgram.xml @@ -0,0 +1,118 @@ + + +glUseProgram

Name

glUseProgram — Installs a program object as part of current rendering state

C Specification

void glUseProgram(GLuint  program);

Parameters

program

Specifies the handle of the program object + whose executables are to be used as part of current + rendering state.

Description

glUseProgram installs the program + object specified by program as part of + current rendering state. One or more executables are created in + a program object by successfully attaching shader objects to it + with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. +

A program object will contain an executable that will run + on the vertex processor if it contains one or more shader + objects of type GL_VERTEX_SHADER that have + been successfully compiled and linked. Similarly, a program + object will contain an executable that will run on the fragment + processor if it contains one or more shader objects of type + GL_FRAGMENT_SHADER that have been + successfully compiled and linked.

Successfully installing an executable on a programmable + processor will cause the corresponding fixed functionality of + OpenGL to be disabled. Specifically, if an executable is + installed on the vertex processor, the OpenGL fixed + functionality will be disabled as follows.

  • The modelview matrix is not applied to vertex + coordinates.

  • The projection matrix is not applied to vertex + coordinates.

  • The texture matrices are not applied to texture + coordinates.

  • Normals are not transformed to eye + coordinates.

  • Normals are not rescaled or normalized.

  • Normalization of + GL_AUTO_NORMAL evaluated normals is + not performed.

  • Texture coordinates are not generated + automatically.

  • Per-vertex lighting is not performed.

  • Color material computations are not + performed.

  • Color index lighting is not performed.

  • This list also applies when setting the current + raster position.

The executable that is installed on the vertex processor + is expected to implement any or all of the desired functionality + from the preceding list. Similarly, if an executable is + installed on the fragment processor, the OpenGL fixed + functionality will be disabled as follows.

  • Texture environment and texture functions are not + applied.

  • Texture application is not applied.

  • Color sum is not applied.

  • Fog is not applied.

Again, the fragment shader that is installed is expected + to implement any or all of the desired functionality from the + preceding list.

While a program object is in use, applications are free to + modify attached shader objects, compile attached shader objects, + attach additional shader objects, and detach or delete shader + objects. None of these operations will affect the executables + that are part of the current state. However, relinking the + program object that is currently in use will install the program + object as part of the current rendering state if the link + operation was successful (see + glLinkProgram + ). If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE, but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked.

If program contains shader objects + of type GL_VERTEX_SHADER but it does not + contain shader objects of type + GL_FRAGMENT_SHADER, an executable will be + installed on the vertex processor, but fixed functionality will + be used for fragment processing. Similarly, if + program contains shader objects of type + GL_FRAGMENT_SHADER but it does not contain + shader objects of type GL_VERTEX_SHADER, an + executable will be installed on the fragment processor, but + fixed functionality will be used for vertex processing. If + program is 0, the programmable processors + will be disabled, and fixed functionality will be used for both + vertex and fragment processing.

Notes

glUseProgram is available only if the + GL version is 2.0 or greater.

While a program object is in use, the state that controls + the disabled fixed functionality may also be updated using the + normal OpenGL calls.

Like display lists and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

GL_INVALID_VALUE is generated if + program is neither 0 nor a value + generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program could not be made part of current + state.

GL_INVALID_OPERATION is generated if + glUseProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with a valid program object and the index of an active attribute + variable

glGetActiveUniform + with a valid program object and the index of an active uniform + variable

glGetAttachedShaders + with a valid program object

glGetAttribLocation + with a valid program object and the name of an attribute + variable

glGetProgram + with a valid program object and the parameter to be queried

glGetProgramInfoLog + with a valid program object

glGetUniform + with a valid program object and the location of a uniform + variable

glGetUniformLocation + with a valid program object and the name of a uniform + variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glValidateProgram.xml b/upstream-man-pages/man2/xhtml/glValidateProgram.xml new file mode 100644 index 0000000..cae587d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glValidateProgram.xml @@ -0,0 +1,68 @@ + + +glValidateProgram

Name

glValidateProgram — Validates a program object

C Specification

void glValidateProgram(GLuint  program);

Parameters

program

Specifies the handle of the program object to + be validated.

Description

glValidateProgram checks to see + whether the executables contained in + program can execute given the current + OpenGL state. The information generated by the validation + process will be stored in program's + information log. The validation information may consist of an + empty string, or it may be a string containing information about + how the current program object interacts with the rest of + current OpenGL state. This provides a way for OpenGL + implementers to convey more information about why the current + program is inefficient, suboptimal, failing to execute, and so + on.

The status of the validation operation will be stored as + part of the program object's state. This value will be set to + GL_TRUE if the validation succeeded, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_VALIDATE_STATUS. If validation is + successful, program is guaranteed to + execute given the current state. Otherwise, + program is guaranteed to not execute.

This function is typically useful only during application + development. The informational string stored in the information + log is completely implementation dependent; therefore, an + application should not expect different OpenGL implementations + to produce identical information strings.

Notes

glValidateProgram is available only + if the GL version is 2.0 or greater.

This function mimics the validation operation that OpenGL + implementations must perform when rendering commands are issued + while programmable shaders are part of current state. The error + GL_INVALID_OPERATION will be generated by + glBegin, + glRasterPos, + or any command that performs an implicit call to + glBegin + if:

  • any two active samplers in the current program + object are of different types, but refer to the same + texture image unit,

  • any active sampler in the current program object + refers to a texture image unit where fixed-function + fragment processing accesses a texture target that does + not match the sampler type, or

  • the sum of the number of active samplers in the + program and the number of texture image units enabled + for fixed-function fragment processing exceeds the + combined limit on the total number of texture image + units allowed.

It may be difficult or cause a performance degradation for + applications to catch these errors when rendering commands are + issued. Therefore, applications are advised to make calls to + glValidateProgram to detect these issues + during application development.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + glValidateProgram is executed between the + execution of + glBegin + and the corresponding execution of + glEnd.

Associated Gets

glGetProgram + with arguments program and + GL_VALIDATE_STATUS

glGetProgramInfoLog + with argument program

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glVertex.xml b/upstream-man-pages/man2/xhtml/glVertex.xml new file mode 100644 index 0000000..334f168 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertex.xml @@ -0,0 +1,67 @@ + + +glVertex

Name

glVertex — specify a vertex

C Specification

void glVertex2s(GLshort  x,
 GLshort  y);
void glVertex2i(GLint  x,
 GLint  y);
void glVertex2f(GLfloat  x,
 GLfloat  y);
void glVertex2d(GLdouble  x,
 GLdouble  y);
void glVertex3s(GLshort  x,
 GLshort  y,
 GLshort  z);
void glVertex3i(GLint  x,
 GLint  y,
 GLint  z);
void glVertex3f(GLfloat  x,
 GLfloat  y,
 GLfloat  z);
void glVertex3d(GLdouble  x,
 GLdouble  y,
 GLdouble  z);
void glVertex4s(GLshort  x,
 GLshort  y,
 GLshort  z,
 GLshort  w);
void glVertex4i(GLint  x,
 GLint  y,
 GLint  z,
 GLint  w);
void glVertex4f(GLfloat  x,
 GLfloat  y,
 GLfloat  z,
 GLfloat  w);
void glVertex4d(GLdouble  x,
 GLdouble  y,
 GLdouble  z,
 GLdouble  w);

Parameters

x, y, z, w

+ Specify x, y, z, and w coordinates of a vertex. + Not all parameters are present in all forms of the command. +

C Specification

void glVertex2sv(const GLshort *  v);
void glVertex2iv(const GLint *  v);
void glVertex2fv(const GLfloat *  v);
void glVertex2dv(const GLdouble *  v);
void glVertex3sv(const GLshort *  v);
void glVertex3iv(const GLint *  v);
void glVertex3fv(const GLfloat *  v);
void glVertex3dv(const GLdouble *  v);
void glVertex4sv(const GLshort *  v);
void glVertex4iv(const GLint *  v);
void glVertex4fv(const GLfloat *  v);
void glVertex4dv(const GLdouble *  v);

Parameters

v

+ Specifies a pointer to an array of two, three, or four elements. + The elements of a two-element array are + x + and + y; + of a three-element array, + x, + y, + and + z; + and of a four-element array, + x, + y, + z, + and + w. +

Description

+ glVertex commands are used within glBegin/glEnd pairs to specify + point, line, and polygon vertices. The current color, normal, texture + coordinates, and fog coordinate are associated with the vertex when glVertex + is called. +

+ When only + x + and + y + are specified, + z + defaults to 0 and + w + defaults to 1. When + x, + y, + and + z + are specified, + w + defaults to 1. +

Notes

+ Invoking glVertex outside of a glBegin/glEnd pair + results in undefined behavior. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glVertex2.xml b/upstream-man-pages/man2/xhtml/glVertex2.xml new file mode 100644 index 0000000..bdc053d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertex2.xml @@ -0,0 +1,4 @@ + + + +glVertex2 diff --git a/upstream-man-pages/man2/xhtml/glVertex3.xml b/upstream-man-pages/man2/xhtml/glVertex3.xml new file mode 100644 index 0000000..dffc40b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertex3.xml @@ -0,0 +1,4 @@ + + + +glVertex3 diff --git a/upstream-man-pages/man2/xhtml/glVertex4.xml b/upstream-man-pages/man2/xhtml/glVertex4.xml new file mode 100644 index 0000000..61cc2ca --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertex4.xml @@ -0,0 +1,4 @@ + + + +glVertex4 diff --git a/upstream-man-pages/man2/xhtml/glVertexAttrib.xml b/upstream-man-pages/man2/xhtml/glVertexAttrib.xml new file mode 100644 index 0000000..9c7f9f8 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertexAttrib.xml @@ -0,0 +1,125 @@ + + +glVertexAttrib

Name

glVertexAttrib — Specifies the value of a generic vertex attribute

C Specification

void glVertexAttrib1f(GLuint  index,
 GLfloat  v0);
void glVertexAttrib1s(GLuint  index,
 GLshort  v0);
void glVertexAttrib1d(GLuint  index,
 GLdouble  v0);
void glVertexAttrib2f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1);
void glVertexAttrib2s(GLuint  index,
 GLshort  v0,
 GLshort  v1);
void glVertexAttrib2d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1);
void glVertexAttrib3f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glVertexAttrib3s(GLuint  index,
 GLshort  v0,
 GLshort  v1,
 GLshort  v2);
void glVertexAttrib3d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2);
void glVertexAttrib4f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);
void glVertexAttrib4s(GLuint  index,
 GLshort  v0,
 GLshort  v1,
 GLshort  v2,
 GLshort  v3);
void glVertexAttrib4d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2,
 GLdouble  v3);
void glVertexAttrib4Nub(GLuint  index,
 GLubyte  v0,
 GLubyte  v1,
 GLubyte  v2,
 GLubyte  v3);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified vertex attribute.

C Specification

void glVertexAttrib1fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib1sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib1dv(GLuint  index,
 const GLdouble * v);
void glVertexAttrib2fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib2sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib2dv(GLuint  index,
 const GLdouble * v);
void glVertexAttrib3fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib3sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib3dv(GLuint  index,
 const GLdouble * v);
void glVertexAttrib4fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib4sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib4dv(GLuint  index,
 const GLdouble * v);
void glVertexAttrib4iv(GLuint  index,
 const GLint * v);
void glVertexAttrib4bv(GLuint  index,
 const GLbyte * v);
void glVertexAttrib4ubv(GLuint  index,
 const GLubyte * v);
void glVertexAttrib4usv(GLuint  index,
 const GLushort * v);
void glVertexAttrib4uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib4Nbv(GLuint  index,
 const GLbyte * v);
void glVertexAttrib4Nsv(GLuint  index,
 const GLshort * v);
void glVertexAttrib4Niv(GLuint  index,
 const GLint * v);
void glVertexAttrib4Nubv(GLuint  index,
 const GLubyte * v);
void glVertexAttrib4Nusv(GLuint  index,
 const GLushort * v);
void glVertexAttrib4Nuiv(GLuint  index,
 const GLuint * v);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

v

Specifies a pointer to an array of values to + be used for the generic vertex attribute.

Description

OpenGL defines a number of standard vertex attributes that + applications can modify with standard API entry points (color, + normal, texture coordinates, etc.). The + glVertexAttrib family of entry points + allows an application to pass generic vertex attributes in + numbered locations.

Generic attributes are defined as four-component values + that are organized into an array. The first entry of this array + is numbered 0, and the size of the array is specified by the + implementation-dependent constant + GL_MAX_VERTEX_ATTRIBS. Individual elements + of this array can be modified with a + glVertexAttrib call that specifies the + index of the element to be modified and a value for that + element.

These commands can be used to specify one, two, three, or + all four components of the generic vertex attribute specified by + index. A 1 in the + name of the command indicates that only one value is passed, and + it will be used to modify the first component of the generic + vertex attribute. The second and third components will be set to + 0, and the fourth component will be set to 1. Similarly, a + 2 in the name of the command indicates that + values are provided for the first two components, the third + component will be set to 0, and the fourth component will be set + to 1. A 3 in the name of the command + indicates that values are provided for the first three + components and the fourth component will be set to 1, whereas a + 4 in the name indicates that values are + provided for all four components.

The letters s, + f, i, + d, ub, + us, and ui indicate + whether the arguments are of type short, float, int, double, + unsigned byte, unsigned short, or unsigned int. When + v is appended to the name, the commands can + take a pointer to an array of such values. The commands + containing N indicate that the arguments + will be passed as fixed-point values that are scaled to a + normalized range according to the component conversion rules + defined by the OpenGL specification. Signed values are + understood to represent fixed-point values in the range [-1,1], + and unsigned values are understood to represent fixed-point + values in the range [0,1].

OpenGL Shading Language attribute variables are allowed to + be of type mat2, mat3, or mat4. Attributes of these types may be + loaded using the glVertexAttrib entry + points. Matrices must be loaded into successive generic + attribute slots in column major order, with one column of the + matrix in each generic attribute slot.

A user-defined attribute variable declared in a vertex + shader can be bound to a generic attribute index by calling + glBindAttribLocation. + This allows an application to use more descriptive variable + names in a vertex shader. A subsequent change to the specified + generic vertex attribute will be immediately reflected as a + change to the corresponding attribute variable in the vertex + shader.

The binding between a generic vertex attribute index and a + user-defined attribute variable in a vertex shader is part of + the state of a program object, but the current value of the + generic vertex attribute is not. The value of each generic + vertex attribute is part of current state, just like standard + vertex attributes, and it is maintained even if a different + program object is used.

An application may freely modify generic vertex attributes + that are not bound to a named vertex shader attribute variable. + These values are simply maintained as part of current state and + will not be accessed by the vertex shader. If a generic vertex + attribute bound to an attribute variable in a vertex shader is + not updated while the vertex shader is executing, the vertex + shader will repeatedly use the current value for the generic + vertex attribute.

The generic vertex attribute with index 0 is the same as + the vertex position attribute previously defined by OpenGL. A + glVertex2, + glVertex3, + or + glVertex4 + command is completely equivalent to the corresponding + glVertexAttrib command with an index + argument of 0. A vertex shader can access generic vertex + attribute 0 by using the built-in attribute variable + gl_Vertex. There are no current values + for generic vertex attribute 0. This is the only generic vertex + attribute with this property; calls to set other standard vertex + attributes can be freely mixed with calls to set any of the + other generic vertex attributes.

Notes

glVertexAttrib is available only if + the GL version is 2.0 or greater.

Generic vertex attributes can be updated at any time. In + particular, glVertexAttrib can be called + between a call to + glBegin + and the corresponding call to + glEnd.

It is possible for an application to bind more than one + attribute name to the same generic vertex attribute index. This + is referred to as aliasing, and it is allowed only if just one + of the aliased attribute variables is active in the vertex + shader, or if no path through the vertex shader consumes more + than one of the attributes aliased to the same location. OpenGL + implementations are not required to do error checking to detect + aliasing, they are allowed to assume that aliasing will not + occur, and they are allowed to employ optimizations that work + only in the absence of aliasing.

There is no provision for binding standard vertex + attributes; therefore, it is not possible to alias generic + attributes with standard attributes.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with argument program and the index of an active + attribute variable

glGetAttribLocation + with argument program and an attribute + variable name

glGetVertexAttrib + with arguments GL_CURRENT_VERTEX_ATTRIB and + index

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glVertexAttribPointer.xml b/upstream-man-pages/man2/xhtml/glVertexAttribPointer.xml new file mode 100644 index 0000000..5b966a5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertexAttribPointer.xml @@ -0,0 +1,124 @@ + + +glVertexAttribPointer

Name

glVertexAttribPointer — define an array of generic vertex attribute data

C Specification

void glVertexAttribPointer(GLuint  index,
 GLint  size,
 GLenum  type,
 GLboolean  normalized,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

size

Specifies the number of components per + generic vertex attribute. Must + be 1, 2, 3, or 4. The initial value is 4.

type

Specifies the data type of each component in + the array. Symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, or + GL_DOUBLE are + accepted. The initial value is GL_FLOAT.

normalized

Specifies whether fixed-point data values + should be normalized (GL_TRUE) + or converted directly as fixed-point values + (GL_FALSE) when they are + accessed.

stride

Specifies the byte offset between consecutive + generic vertex attributes. If stride + is 0, the generic vertex attributes are + understood to be tightly packed in the + array. The initial value is 0.

pointer

Specifies a pointer to the first component of + the first generic vertex attribute in the array. The initial value is 0.

Description

glVertexAttribPointer specifies the + location and data format of the array of generic vertex attributes at index index + to use when rendering. size + specifies the number of components per attribute and must be 1, + 2, 3, or 4. type specifies the data type + of each component, and stride specifies + the byte stride from one attribute to the next, allowing vertices and + attributes to be packed into a single array or + stored in separate arrays. + If set to GL_TRUE, + normalized indicates that values stored + in an integer format are to be mapped to the range [-1,1] (for + signed values) or [0,1] (for unsigned values) when they are + accessed and converted to floating point. Otherwise, values will + be converted to floats directly without normalization.

If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a generic vertex attribute array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array + client-side state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index.

When a generic vertex attribute array is specified, + size, type, + normalized, + stride, and + pointer are saved as client-side + state, in addition to the current vertex array buffer object binding.

To enable and disable a generic vertex attribute array, + call + glEnableVertexAttribArray + and + glDisableVertexAttribArray + with index. If enabled, the generic + vertex attribute array is used when + glArrayElement, + glDrawArrays, + glMultiDrawArrays, + glDrawElements, + glMultiDrawElements, or + glDrawRangeElements + is called.

Notes

glVertexAttribPointer is available + only if the GL version is 2.0 or greater.

Each generic vertex attribute array is initially disabled + and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called.

Execution of glVertexAttribPointer is + not allowed between the execution of + glBegin + and the corresponding execution of + glEnd, + but an error may or may not be generated. If no error is + generated, the operation is undefined.

glVertexAttribPointer is typically + implemented on the client side.

Generic vertex attribute array parameters are client-side + state and are therefore not saved or restored by + glPushAttrib + and + glPopAttrib. + Use + glPushClientAttrib + and + glPopClientAttrib + instead.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_VALUE is generated if + size is not 1, 2, 3, or 4.

GL_INVALID_ENUM is generated if + type is not an accepted value.

GL_INVALID_VALUE is generated if + stride is negative.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_ENABLED

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_SIZE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_TYPE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_NORMALIZED

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_STRIDE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING

glGet with argument + GL_ARRAY_BUFFER_BINDING

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man2/xhtml/glVertexPointer.xml b/upstream-man-pages/man2/xhtml/glVertexPointer.xml new file mode 100644 index 0000000..4ed243e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glVertexPointer.xml @@ -0,0 +1,113 @@ + + +glVertexPointer

Name

glVertexPointer — define an array of vertex data

C Specification

void glVertexPointer(GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

size

+ Specifies the number of coordinates per vertex. Must be 2, 3, or + 4. The initial value is 4. +

type

+ Specifies the data type of each coordinate in the array. + Symbolic constants + GL_SHORT, + GL_INT, + GL_FLOAT, + or GL_DOUBLE + are accepted. The initial value is GL_FLOAT. +

stride

+ Specifies the byte offset between consecutive + vertices. If stride is 0, the vertices are understood to be tightly packed in + the array. The initial value + is 0. +

pointer

+ Specifies a pointer to the first coordinate of the first vertex in the + array. The initial value is 0. +

Description

+ glVertexPointer specifies the location and data format of an array of vertex coordinates + to use when rendering. + size specifies the number of coordinates per vertex, and must be 2, 3, or 4. + type specifies the data type of each coordinate, and stride specifies the byte stride from one + vertex to the next, allowing vertices and attributes + to be packed into a single array or stored in separate arrays. + (Single-array storage may be more efficient on some implementations; + see glInterleavedArrays.) +

+ If a non-zero named buffer object is bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) while a vertex array is + specified, pointer is treated as a byte offset into the buffer object's data store. + Also, the buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as vertex array + client-side state (GL_VERTEX_ARRAY_BUFFER_BINDING). +

+ When a vertex array is specified, + size, type, stride, and pointer are saved as client-side + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable the vertex array, call glEnableClientState and + glDisableClientState with the argument GL_VERTEX_ARRAY. If + enabled, the vertex array is used when + glArrayElement, glDrawArrays, glMultiDrawArrays, + glDrawElements, glMultiDrawElements, or glDrawRangeElements + is called. +

Notes

+ glVertexPointer is available only if the GL version is 1.1 or greater. +

+ The vertex array is initially disabled and isn't accessed when + glArrayElement, glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ Execution of glVertexPointer is not allowed between the execution of + glBegin and the corresponding execution of glEnd, + but an error may or may not be generated. If no error is generated, + the operation is undefined. +

+ glVertexPointer is typically implemented on the client side. +

+ Vertex array parameters are client-side state and are therefore not + saved or restored by glPushAttrib and glPopAttrib. + Use glPushClientAttrib and glPopClientAttrib instead. +

Errors

+ GL_INVALID_VALUE is generated if size is not 2, 3, or 4. +

+ GL_INVALID_ENUM is generated if type is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is negative. +

Associated Gets

+ glIsEnabled with argument GL_VERTEX_ARRAY +

+ glGet with argument GL_VERTEX_ARRAY_SIZE +

+ glGet with argument GL_VERTEX_ARRAY_TYPE +

+ glGet with argument GL_VERTEX_ARRAY_STRIDE +

+ glGet with argument GL_VERTEX_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGetPointerv with argument GL_VERTEX_ARRAY_POINTER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glViewport.xml b/upstream-man-pages/man2/xhtml/glViewport.xml new file mode 100644 index 0000000..087107b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glViewport.xml @@ -0,0 +1,127 @@ + + +glViewport

Name

glViewport — set the viewport

C Specification

void glViewport(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

Parameters

x, y

+ Specify the lower left corner of the viewport rectangle, + in pixels. The initial value is (0,0). +

width, height

+ Specify the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

Description

+ glViewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: +

+

+ + + x + w + + = + + + + x + nd + + + + 1 + + + ⁢ + + + width + 2 + + + + + x + + +

+

+

+ + + y + w + + = + + + + y + nd + + + + 1 + + + ⁢ + + + height + 2 + + + + + y + + +

+

+ Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. +

Errors

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if glViewport + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_VIEWPORT +

+ glGet with argument GL_MAX_VIEWPORT_DIMS +

See Also

+ glDepthRange +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glWindowPos.xml b/upstream-man-pages/man2/xhtml/glWindowPos.xml new file mode 100644 index 0000000..1733baa --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glWindowPos.xml @@ -0,0 +1,189 @@ + + +glWindowPos

Name

glWindowPos — specify the raster position in window coordinates for pixel operations

C Specification

void glWindowPos2s(GLshort  x,
 GLshort  y);
void glWindowPos2i(GLint  x,
 GLint  y);
void glWindowPos2f(GLfloat  x,
 GLfloat  y);
void glWindowPos2d(GLdouble  x,
 GLdouble  y);
void glWindowPos3s(GLshort  x,
 GLshort  y,
 GLshort  z);
void glWindowPos3i(GLint  x,
 GLint  y,
 GLint  z);
void glWindowPos3f(GLfloat  x,
 GLfloat  y,
 GLfloat  z);
void glWindowPos3d(GLdouble  x,
 GLdouble  y,
 GLdouble  z);

Parameters

x, y, z

+ Specify the + x, + y, + z + coordinates for the raster position. +

C Specification

void glWindowPos2sv(const GLshort *  v);
void glWindowPos2iv(const GLint *  v);
void glWindowPos2fv(const GLfloat *  v);
void glWindowPos2dv(const GLdouble *  v);
void glWindowPos3sv(const GLshort *  v);
void glWindowPos3iv(const GLint *  v);
void glWindowPos3fv(const GLfloat *  v);
void glWindowPos3dv(const GLdouble *  v);

Parameters

v

+ Specifies a pointer to an array of two or three elements, + specifying + x, + y, + z + coordinates, respectively. +

Description

+ The GL maintains a 3D position in window coordinates. This position, + called the raster position, is used to position pixel and bitmap write + operations. It is maintained with subpixel accuracy. See glBitmap, + glDrawPixels, and glCopyPixels. +

+ glWindowPos2 specifies the + x + and + y + coordinates, while + z + is + implicitly set to 0. glWindowPos3 specifies all three coordinates. + The + w + coordinate of the current raster position is always set to 1.0. +

+ glWindowPos directly updates the + x + and + y + coordinates of the current raster + position with the values specified. That is, the values are neither + transformed by the current modelview and projection matrices, nor by + the viewport-to-window transform. The + z + coordinate of the current raster + position is updated in the following manner: +

+

+ + + z + = + + + + + n + + + f + + + + + n + + + + z + × + + + f + - + n + + + + + + + + ⁢ + + + + + if + ⁢ + z + + <= + 0 + + + + + + if + ⁢ + z + + >= + 1 + + + + + otherwise + + + + + + +

+

+

+ where + n + is GL_DEPTH_RANGE's near value, and + f + is + GL_DEPTH_RANGE's far value. See glDepthRange. +

+ The specified coordinates are not clip-tested, causing the raster position + to always be valid. +

+ The current raster position also includes some associated color data and + texture coordinates. If lighting is enabled, then + GL_CURRENT_RASTER_COLOR (in RGBA mode) or GL_CURRENT_RASTER_INDEX + (in color index mode) is set to the color produced by the lighting + calculation (see glLight, glLightModel, and glShadeModel). + If lighting is disabled, current color (in RGBA mode, state variable + GL_CURRENT_COLOR) or color index (in color index mode, state variable + GL_CURRENT_INDEX) is used to update the current raster color. + GL_CURRENT_RASTER_SECONDARY_COLOR (in RGBA mode) is likewise updated. +

+ Likewise, GL_CURRENT_RASTER_TEXTURE_COORDS is updated as a function of + GL_CURRENT_TEXTURE_COORDS, based on the texture matrix and the texture + generation functions (see glTexGen). The + GL_CURRENT_RASTER_DISTANCE is set to the GL_CURRENT_FOG_COORD. +

+

Notes

+ glWindowPos is available only if the GL version is 1.4 or greater. +

+ The raster position is modified by glRasterPos, glBitmap, and + glWindowPos. +

+ Calling glDrawElements, or glDrawRangeElements may leave the + current color or index indeterminate. + If glWindowPos is executed while the current color or index is indeterminate, the + current raster color or current raster index remains indeterminate. +

+ There are distinct raster texture coordinates for each texture unit. Each + texture unit's current raster texture coordinates are updated by glWindowPos. +

Errors

+ GL_INVALID_OPERATION is generated if glWindowPos + is executed between the execution of glBegin + and the corresponding execution of glEnd. +

Associated Gets

+ glGet with argument GL_CURRENT_RASTER_POSITION +

+ glGet with argument GL_CURRENT_RASTER_POSITION_VALID +

+ glGet with argument GL_CURRENT_RASTER_DISTANCE +

+ glGet with argument GL_CURRENT_RASTER_COLOR +

+ glGet with argument GL_CURRENT_RASTER_SECONDARY_COLOR +

+ glGet with argument GL_CURRENT_RASTER_INDEX +

+ glGet with argument GL_CURRENT_RASTER_TEXTURE_COORDS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXChooseFBConfig.xml b/upstream-man-pages/man2/xhtml/glXChooseFBConfig.xml new file mode 100644 index 0000000..0b147e5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXChooseFBConfig.xml @@ -0,0 +1,368 @@ + + +glXChooseFBConfig

Name

glXChooseFBConfig — return a list of GLX frame buffer configurations that match the specified attributes

C Specification

GLXFBConfig * glXChooseFBConfig(Display *  dpy,
 int  screen,
 const int *  attrib_list,
 int *  nelements);

Parameters

dpy

+ Specifies the connection to the X server. +

screen

+ Specifies the screen number. +

attrib_list

+ Specifies a list of attribute/value pairs. + The last attribute must be None. +

nelements

+ Returns the number of elements in the list returned by glXChooseFBConfig. +

Description

+ glXChooseFBConfig returns GLX frame buffer configurations that match the attributes + specified in attrib_list, or NULL if no matches are found. + If attrib_list is NULL, then glXChooseFBConfig returns an array of GLX + frame buffer configurations that are available on the specified screen. + If an error occurs, no frame buffer configurations exist on the + specified screen, or if no frame buffer configurations match the + specified attributes, then NULL is returned. + Use XFree to free the memory returned by + glXChooseFBConfig. +

+ All attributes in attrib_list, including boolean attributes, are + immediately followed by the corresponding desired value. The list is + terminated with None. If an attribute is not specified in attrib_list, + then the default value (see below) is used (and the attribute is said to be + specified implicitly). For example, if GLX_STEREO is not specified, then + it is assumed to be False. For some attributes, the default is + GLX_DONT_CARE, meaning that any value is OK for this attribute, so the + attribute will not be checked. +

+ Attributes are matched in an attribute-specific manner. + Some of the attributes, such as GLX_LEVEL, must match the specified + value exactly; others, such as, GLX_RED_SIZE must meet or exceed the + specified minimum values. If more than one GLX frame buffer configuration is found, + then a list of configurations, sorted + according to the ``best'' match criteria, is returned. The match + criteria for each attribute and the exact sorting order is + defined below. +

+ The interpretations of the various GLX visual attributes are as follows: +

GLX_FBCONFIG_ID

+

+ Must be followed by a valid XID that indicates the desired GLX frame + buffer configuration. When a GLX_FBCONFIG_ID is specified, all + attributes are ignored. The default value is GLX_DONT_CARE. +

GLX_BUFFER_SIZE

+

+ Must be followed by a nonnegative integer that indicates the desired + color index buffer size. + The smallest index buffer of at least the specified size is preferred. + This attribute is ignored if GLX_COLOR_INDEX_BIT is not set in + GLX_RENDER_TYPE. The default value is 0. +

GLX_LEVEL

+

+ Must be followed by an integer buffer-level specification. + This specification is honored exactly. + Buffer level 0 corresponds to the default frame buffer of the display. + Buffer level 1 is the first overlay frame buffer, level two the second + overlay frame buffer, and so on. + Negative buffer levels correspond to underlay frame buffers. + The default value is 0. +

GLX_DOUBLEBUFFER

+

+ Must be followed by True or False. If + True is specified, then + only double-buffered frame buffer configurations are considered; + if + False is specified, then + only single-buffered frame buffer configurations are considered. + The default value is GLX_DONT_CARE. +

GLX_STEREO

+

+ Must be followed by True or False. If + True is specified, then + only stereo frame buffer configurations are considered; + if + False is specified, then + only monoscopic frame buffer configurations are considered. + The default value is False. +

GLX_AUX_BUFFERS

+

+ Must be followed by a nonnegative integer that indicates the desired + number of auxiliary buffers. + Configurations with the + smallest number of auxiliary buffers that meet or exceed + the specified number are preferred. + The default value is 0. +

GLX_RED_SIZE, GLX_GREEN_SIZE, GLX_BLUE_SIZE, GLX_ALPHA_SIZE

+

+ Each attribute, if present, must be followed by a nonnegative minimum size + specification or GLX_DONT_CARE. + The largest available total RGBA color buffer size (sum of GLX_RED_SIZE, + GLX_GREEN_SIZE, GLX_BLUE_SIZE, and GLX_ALPHA_SIZE) + of at least the minimum size specified for each color component is preferred. + If the requested number of bits for a color component is 0 or + GLX_DONT_CARE, it is not considered. The default value for each color + component is 0. +

GLX_DEPTH_SIZE

+

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no depth buffer are preferred. + Otherwise, the largest available depth buffer of at least the minimum size + is preferred. + The default value is 0. +

GLX_STENCIL_SIZE

+

+ Must be followed by a nonnegative integer that indicates the desired + number of stencil bitplanes. + The smallest stencil buffer of at least the specified size is preferred. + If the desired value is zero, + frame buffer configurations with no stencil buffer are preferred. + The default value is 0. +

GLX_ACCUM_RED_SIZE

+

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no red accumulation buffer are preferred. + Otherwise, the largest possible red accumulation buffer + of at least the minimum size is preferred. + The default value is 0. +

GLX_ACCUM_GREEN_SIZE

+

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no green accumulation buffer are preferred. + Otherwise, the largest possible green accumulation buffer + of at least the minimum size is preferred. + The default value is 0. +

GLX_ACCUM_BLUE_SIZE

+

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no blue accumulation buffer are preferred. + Otherwise, the largest possible blue accumulation buffer + of at least the minimum size is preferred. + The default value is 0. +

GLX_ACCUM_ALPHA_SIZE

+

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + frame buffer configurations with no alpha accumulation buffer are preferred. + Otherwise, the largest possible alpha accumulation buffer + of at least the minimum size is preferred. + The default value is 0. +

GLX_RENDER_TYPE

+

+ Must be followed by a mask indicating which OpenGL rendering modes + the frame buffer configuration must support. + Valid bits are GLX_RGBA_BIT and + GLX_COLOR_INDEX_BIT. If the mask is + set to GLX_RGBA_BIT | GLX_COLOR_INDEX_BIT, + then only frame buffer configurations that can be bound to both + RGBA contexts and color index contexts will be considered. + The default value is GLX_RGBA_BIT. +

GLX_DRAWABLE_TYPE

+

+ Must be followed by a mask indicating which GLX drawable types + the frame buffer configuration must support. Valid bits are + GLX_WINDOW_BIT, + GLX_PIXMAP_BIT, and GLX_PBUFFER_BIT. + For example, if mask is set to + GLX_WINDOW_BIT | GLX_PIXMAP_BIT, + only frame buffer configurations that support both windows and GLX pixmaps + will be considered. + The default value is GLX_WINDOW_BIT. +

GLX_X_RENDERABLE

+

+ Must be followed by True or False. + If True is specified, then only frame buffer configurations that + have associated X visuals (and can be used to render to Windows and/or + GLX pixmaps) will be considered. + The default value is GLX_DONT_CARE. +

GLX_X_VISUAL_TYPE

+

+ Must be followed by one of + GLX_TRUE_COLOR, + GLX_DIRECT_COLOR, + GLX_PSEUDO_COLOR, + GLX_STATIC_COLOR, + GLX_GRAY_SCALE, or + GLX_STATIC_GRAY, indicating the desired X visual type. + Not all frame buffer configurations have an associated X visual. If + GLX_DRAWABLE_TYPE is specified in attrib_list and the + mask that follows does not have GLX_WINDOW_BIT set, + then this value is ignored. It is also ignored if + GLX_X_RENDERABLE is specified as False. + RGBA rendering may be supported for visuals of type + GLX_TRUE_COLOR, + GLX_DIRECT_COLOR, + GLX_PSEUDO_COLOR, + or GLX_STATIC_COLOR, + but color index rendering is only supported for visuals of type + GLX_PSEUDO_COLOR or GLX_STATIC_COLOR + (i.e., single-channel visuals). + The tokens GLX_GRAY_SCALE and GLX_STATIC_GRAY will + not match current OpenGL enabled visuals, but are included for future use. + The default value for GLX_X_VISUAL_TYPE is GLX_DONT_CARE. +

GLX_CONFIG_CAVEAT

+

+ Must be followed by one of + GLX_NONE, + GLX_SLOW_CONFIG, + GLX_NON_CONFORMANT_CONFIG. + If GLX_NONE is specified, then only frame buffer configurations with + no caveats will be considered; if GLX_SLOW_CONFIG + is specified, then only slow frame buffer configurations will be considered; if + GLX_NON_CONFORMANT_CONFIG is specified, then only + nonconformant frame buffer configurations will be considered. + The default value is GLX_DONT_CARE. +

GLX_TRANSPARENT_TYPE

+

+ Must be followed by one of + GLX_NONE, + GLX_TRANSPARENT_RGB, + GLX_TRANSPARENT_INDEX. + If GLX_NONE is specified, then only opaque + frame buffer configurations will be considered; if GLX_TRANSPARENT_RGB + is specified, then only transparent + frame buffer configurations that support RGBA rendering will be considered; + if GLX_TRANSPARENT_INDEX is specified, + then only transparent frame buffer configurations that support color + index rendering will be considered. + The default value is GLX_NONE. +

GLX_TRANSPARENT_INDEX_VALUE

+

+ Must be followed by an integer value indicating the transparent + index value; the value must be between 0 and the maximum + frame buffer value for indices. + Only frame buffer configurations that use the + specified transparent index value will be considered. + The default value is GLX_DONT_CARE. + This attribute is ignored unless GLX_TRANSPARENT_TYPE is + included in attrib_list and specified as GLX_TRANSPARENT_INDEX. +

GLX_TRANSPARENT_RED_VALUE

+

+ Must be followed by an integer value indicating the transparent + red value; the value must be between 0 and the maximum + frame buffer value for red. + Only frame buffer configurations that use the + specified transparent red value will be considered. + The default value is GLX_DONT_CARE. + This attribute is + ignored unless GLX_TRANSPARENT_TYPE is included in + attrib_list and specified as GLX_TRANSPARENT_RGB. +

GLX_TRANSPARENT_GREEN_VALUE

+

+ Must be followed by an integer value indicating the transparent + green value; the value must be between 0 and the maximum + frame buffer value for green. + Only frame buffer configurations that use the + specified transparent green value will be considered. + The default value is GLX_DONT_CARE. + This attribute is + ignored unless GLX_TRANSPARENT_TYPE is included in + attrib_list and specified as GLX_TRANSPARENT_RGB. +

GLX_TRANSPARENT_BLUE_VALUE

+

+ Must be followed by an integer value indicating the transparent + blue value; the value must be between 0 and the maximum + frame buffer value for blue. + Only frame buffer configurations that use the + specified transparent blue value will be considered. + The default value is GLX_DONT_CARE. + This attribute is ignored unless GLX_TRANSPARENT_TYPE is included in + attrib_list and specified as GLX_TRANSPARENT_RGB. +

GLX_TRANSPARENT_ALPHA_VALUE

+

+ Must be followed by an integer value indicating the transparent + alpha value; the value must be between 0 and the maximum + frame buffer value for alpha. + Only frame buffer configurations that use the + specified transparent alpha value will be considered. + The default value is GLX_DONT_CARE. +

+ When more than one GLX frame buffer configuration matches the specified attributes, + a list of matching configurations is returned. The list is sorted + according to the following precedence rules, which are applied in ascending + order (i.e., configurations + that are considered equal by a lower numbered rule are sorted by the higher + numbered rule): +

1.

+ By GLX_CONFIG_CAVEAT where the precedence is GLX_NONE, + GLX_SLOW_CONFIG, and GLX_NON_CONFORMANT_CONFIG. +

2.

+ Larger total number of RGBA color components + (GLX_RED_SIZE, GLX_GREEN_SIZE, GLX_BLUE_SIZE, + plus GLX_ALPHA_SIZE) + that have higher number of bits. If the requested number of bits in + attrib_list is zero or GLX_DONT_CARE for a particular color + component, then the number of bits for that component is not considered. +

3.

+ Smaller GLX_BUFFER_SIZE. +

4.

+ Single buffered configuration (GLX_DOUBLEBUFFER being + False precedes a double buffered one. +

5.

+ Smaller GLX_AUX_BUFFERS. +

6.

+ Larger GLX_DEPTH_SIZE. +

7.

+ Smaller GLX_STENCIL_SIZE. +

8.

+ Larger total number of accumulation buffer color components + (GLX_ACCUM_RED_SIZE, GLX_ACCUM_GREEN_SIZE, + GLX_ACCUM_BLUE_SIZE, plus GLX_ACCUM_ALPHA_SIZE) that have + higher number of bits. If the requested number of bits in attrib_list is + zero or GLX_DONT_CARE for a particular color component, then the + number of bits for that component is not considered. +

9.

+ By GLX_X_VISUAL_TYPE where the precedence order is + GLX_TRUE_COLOR, GLX_DIRECT_COLOR, GLX_PSEUDO_COLOR, + GLX_STATIC_COLOR, GLX_GRAY_SCALE, GLX_STATIC_GRAY. +

Examples

+

attrib_list =

+ {GLX_RENDER_TYPE, GLX_RGBA_BIT, + GLX_RED_SIZE, 4, + GLX_GREEN_SIZE, 4, + GLX_BLUE_SIZE, 4, + None}; +

+ Specifies a frame buffer configuration that supports RGBA rendering + and exists in the normal frame buffer, + not an overlay or underlay buffer. + The returned visual supports at least four bits each of red, + green, and blue, + and possibly no bits of alpha. + It does not support stereo display. + It may or may not have one or more auxiliary color buffers, + a back buffer, + a depth buffer, + a stencil buffer, + or an accumulation buffer. +

Notes

+ glXChooseFBConfig is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

+ glXGetFBConfigs and glXGetFBConfigAttrib can + be used to implement selection algorithms other than the generic + one implemented by glXChooseFBConfig. Call glXChooseFBConfig to retrieve all the frame buffer configurations + on a particular screen or, alternatively, all the frame buffer configurations with + a particular set of attributes. Next, call glXGetFBConfigAttrib + to retrieve additional attributes for the frame buffer configurations and then + select between them. +

+ GLX implementations are strongly discouraged, + but not proscribed, + from changing the selection algorithm used by glXChooseFBConfig. + Therefore, selections may change from release to release + of the client-side library. +

Errors

+ NULL is returned if an undefined GLX attribute is + encountered in attrib_list, if screen is invalid, or if dpy does + not support the GLX extension. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXChooseVisual.xml b/upstream-man-pages/man2/xhtml/glXChooseVisual.xml new file mode 100644 index 0000000..ae0e8f7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXChooseVisual.xml @@ -0,0 +1,182 @@ + + +glXChooseVisual

Name

glXChooseVisual — return a visual that matches specified attributes

C Specification

XVisualInfo* glXChooseVisual(Display *  dpy,
 int  screen,
 int *  attribList);

Parameters

dpy

+ Specifies the connection to the X server. +

screen

+ Specifies the screen number. +

attribList

+ Specifies a list of boolean attributes and integer attribute/value pairs. + The last attribute must be None. +

Description

+ glXChooseVisual returns a pointer to an XVisualInfo structure describing the visual + that best meets a minimum specification. + The boolean GLX attributes of the visual that is returned will match the + specified values, + and the integer GLX attributes will meet or exceed the specified + minimum values. + If all other attributes are equivalent, then TrueColor and PseudoColor + visuals have priority over DirectColor and StaticColor visuals, + respectively. + If no conforming visual exists, NULL is returned. + To free the data returned by this function, use XFree. +

+ All boolean GLX attributes default to False + except GLX_USE_GL, + which defaults to True. + All integer GLX attributes default to zero. + Default specifications are superseded by attributes included in attribList. + Boolean attributes included in attribList are understood to be True. + Integer attributes and enumerated type attributes are followed immediately + by the corresponding desired or + minimum value. + The list must be terminated with None. +

+ The interpretations of the various GLX visual attributes are as follows: +

GLX_USE_GL

+ Ignored. + Only visuals that can be rendered with GLX are considered. +

GLX_BUFFER_SIZE

+ Must be followed by a nonnegative integer that indicates the desired + color index buffer size. + The smallest index buffer of at least the specified size is preferred. + Ignored if GLX_RGBA is asserted. +

GLX_LEVEL

+ Must be followed by an integer buffer-level specification. + This specification is honored exactly. + Buffer level zero corresponds to the main frame buffer of the display. + Buffer level one is the first overlay frame buffer, level two the second + overlay frame buffer, and so on. + Negative buffer levels correspond to underlay frame buffers. +

GLX_RGBA

+ If present, + only TrueColor and DirectColor visuals are considered. + Otherwise, + only PseudoColor and StaticColor visuals are considered. +

GLX_DOUBLEBUFFER

+ If present, + only double-buffered visuals are considered. + Otherwise, + only single-buffered visuals are considered. +

GLX_STEREO

+ If present, + only stereo visuals are considered. + Otherwise, + only monoscopic visuals are considered. +

GLX_AUX_BUFFERS

+ Must be followed by a nonnegative integer that indicates the desired + number of auxiliary buffers. + Visuals with the + smallest number of auxiliary buffers that meets or exceeds + the specified number are preferred. +

GLX_RED_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available red buffer is preferred. + Otherwise, the largest available red buffer of at least the minimum size + is preferred. +

GLX_GREEN_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available green buffer is preferred. + Otherwise, the largest available green buffer of at least the minimum size + is preferred. +

GLX_BLUE_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available blue buffer is preferred. + Otherwise, the largest available blue buffer of at least the minimum size + is preferred. +

GLX_ALPHA_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + the smallest available alpha buffer is preferred. + Otherwise, the largest available alpha buffer of at least the minimum size + is preferred. +

GLX_DEPTH_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no depth buffer are preferred. + Otherwise, the largest available depth buffer of at least the minimum size + is preferred. +

GLX_STENCIL_SIZE

+ Must be followed by a nonnegative integer that indicates the desired + number of stencil bitplanes. + The smallest stencil buffer of at least the specified size is preferred. + If the desired value is zero, + visuals with no stencil buffer are preferred. +

GLX_ACCUM_RED_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no red accumulation buffer are preferred. + Otherwise, the largest possible red accumulation buffer + of at least the minimum size is preferred. +

GLX_ACCUM_GREEN_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no green accumulation buffer are preferred. + Otherwise, the largest possible green accumulation buffer + of at least the minimum size is preferred. +

GLX_ACCUM_BLUE_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no blue accumulation buffer are preferred. + Otherwise, the largest possible blue accumulation buffer + of at least the minimum size is preferred. +

GLX_ACCUM_ALPHA_SIZE

+ Must be followed by a nonnegative minimum size specification. + If this value is zero, + visuals with no alpha accumulation buffer are preferred. + Otherwise, the largest possible alpha accumulation buffer + of at least the minimum size is preferred. +

Examples

+

attribList =

+ {GLX_RGBA, + GLX_RED_SIZE, 4, + GLX_GREEN_SIZE, 4, + GLX_BLUE_SIZE, 4, + None}; +

+ Specifies a single-buffered RGB visual in the normal frame buffer, + not an overlay or underlay buffer. + The returned visual supports at least four bits each of red, + green, and blue, + and possibly no bits of alpha. + It does not support color index mode, + double-buffering, or stereo display. + It may or may not have one or more auxiliary color buffers, + a depth buffer, + a stencil buffer, + or an accumulation buffer. +

Notes

+ XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. +

+ glXChooseVisual is implemented as a client-side utility using only XGetVisualInfo + and glXGetConfig. + Calls to these two routines can be used to implement selection algorithms + other than the generic one implemented by glXChooseVisual. +

+ GLX implementations are strongly discouraged, + but not proscribed, + from changing the selection algorithm used by glXChooseVisual. + Therefore, selections may change from release to release + of the client-side library. +

+ There is no direct filter for picking only visuals that + support GLXPixmaps. + GLXPixmaps are supported for visuals whose + GLX_BUFFER_SIZE + is one of the pixmap depths supported by the X server. +

Errors

+ NULL is returned if an undefined GLX attribute is encountered in + attribList. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCopyContext.xml b/upstream-man-pages/man2/xhtml/glXCopyContext.xml new file mode 100644 index 0000000..8a6ea6b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCopyContext.xml @@ -0,0 +1,74 @@ + + +glXCopyContext

Name

glXCopyContext — copy state from one rendering context to another

C Specification

void glXCopyContext(Display *  dpy,
 GLXContext  src,
 GLXContext  dst,
 unsigned long  mask);

Parameters

dpy

+ Specifies the connection to the X server. +

src

+ Specifies the source context. +

dst

+ Specifies the destination context. +

mask

+ Specifies which portions of src state are to be copied to dst. +

Description

+ glXCopyContext copies selected groups of state variables from src to dst. + mask indicates which groups of state variables are to be copied. + mask contains the bitwise OR of the same symbolic names that are + passed to the GL command glPushAttrib. + The single symbolic constant GLX_ALL_ATTRIB_BITS can be used to + copy the maximum possible portion of rendering state. +

+ The copy can be done only if the renderers named by src and dst + share an address space. + Two rendering contexts share an address space if both are nondirect + using the same server, + or if both are direct and owned by a single process. + Note that in the nondirect case it is not necessary for the calling + threads to share an address space, + only for their related rendering contexts to share an address space. +

+ Not all values for GL state can be copied. + For example, + pixel pack and unpack state, + render mode state, + and select and feedback state are not copied. + The state that can be copied is exactly the state that is manipulated + by the GL command + glPushAttrib. +

+ An implicit glFlush is done by glXCopyContext if src is the current + context for the calling thread. +

Notes

+

+ A process is a single execution environment, + implemented in a single address space, + consisting of one or more threads. +

+ A thread is one of a set of subprocesses that share + a single address space, + but maintain separate program counters, + stack spaces, + and other related global data. + A thread that is the only member of its subprocess group + is equivalent to a process. +

Errors

+ BadMatch is generated if rendering contexts src and dst + do not share an address space + or were not created with respect to the same screen. +

+ BadAccess is generated if dst is current to any thread + (including the calling thread) at the time glXCopyContext is called. +

+ GLXBadCurrentWindow is generated if src is the current + context and the current drawable is a window that is no longer valid. +

+ GLXBadContext is generated if either src or dst is not + a valid GLX context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCreateContext.xml b/upstream-man-pages/man2/xhtml/glXCreateContext.xml new file mode 100644 index 0000000..740563e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCreateContext.xml @@ -0,0 +1,93 @@ + + +glXCreateContext

Name

glXCreateContext — create a new GLX rendering context

C Specification

GLXContext glXCreateContext(Display *  dpy,
 XVisualInfo *  vis,
 GLXContext  shareList,
 Bool  direct);

Parameters

dpy

+ Specifies the connection to the X server. +

vis

+ Specifies the visual that defines the frame buffer resources available to + the rendering context. + It is a pointer to an XVisualInfo structure, + not a visual ID or a pointer to a Visual. +

shareList

+ Specifies the context with which to share display lists. + NULL indicates that no sharing is to take place. +

direct

+ Specifies whether rendering is to be done with a direct connection + to the graphics system if possible (True) + or through the X server (False). +

Description

+ glXCreateContext creates a GLX rendering context and returns its handle. + This context can be used to render into both windows and GLX pixmaps. + If glXCreateContext fails to create a rendering context, + NULL is returned. +

+ If direct is True, + then a direct rendering context is created if the + implementation supports direct rendering, if the connection is to an X + server that is local, and if a direct rendering context is available. (An implementation may return an indirect context when direct is True.) + If direct is False, + then a rendering context that renders through the X server is always created. + Direct rendering provides a performance advantage in some implementations. + However, direct rendering contexts cannot be shared outside a single process, + and they may be unable to render to GLX pixmaps. +

+ If shareList is not NULL, + then all display-list indexes and definitions are shared by + context shareList and by the newly created context. + An arbitrary number of contexts can share a single display-list space. + However, + all rendering contexts that share a single display-list space must + themselves exist in the same address space. + Two rendering contexts share an address space if both are nondirect + using the same server, + or if both are direct and owned by a single process. + Note that in the nondirect case, it is not necessary for the calling + threads to share an address space, + only for their related rendering contexts to share an address space. +

+ If the GL version is 1.1 or greater, + then all texture objects except object 0 + are shared by any contexts that share display lists. +

Notes

+ XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. +

+ A process is a single execution environment, + implemented in a single address space, + consisting of one or more threads. +

+ A thread is one of a set of subprocesses that share + a single address space, + but maintain separate program counters, + stack spaces, + and other related global data. + A thread that is the only member of its subprocess group + is equivalent to a process. +

+ It may not be possible to render to a GLX pixmap with a direct rendering + context. +

Errors

+ NULL is returned if execution fails on the client side. +

+ BadMatch is generated if the context to be created would not + share the address space or the screen of the context specified by shareList. +

+ BadValue is generated if vis is not a valid visual (for + example, if a particular GLX implementation does not support it). +

+ GLXBadContext is generated if shareList is not a GLX context + and is not NULL. +

+ BadAlloc is generated if the server does not have enough + resources to allocate the new context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCreateGLXPixmap.xml b/upstream-man-pages/man2/xhtml/glXCreateGLXPixmap.xml new file mode 100644 index 0000000..01946ca --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCreateGLXPixmap.xml @@ -0,0 +1,57 @@ + + +glXCreateGLXPixmap

Name

glXCreateGLXPixmap — create an off-screen GLX rendering area

C Specification

GLXPixmap glXCreateGLXPixmap(Display *  dpy,
 XVisualInfo *  vis,
 Pixmap  pixmap);

Parameters

dpy

+ Specifies the connection to the X server. +

vis

+ Specifies the visual that defines the structure of the rendering area. + It is a pointer to an XVisualInfo structure, + not a visual ID or a pointer to a Visual. +

pixmap

+ Specifies the X pixmap that will be used as the front left color buffer + of the off-screen rendering area. +

Description

+ glXCreateGLXPixmap creates an off-screen rendering area and returns its XID. + Any GLX rendering context that was created with respect to vis + can be used to render into this off-screen area. + Use glXMakeCurrent to associate the rendering area with a GLX + rendering context. +

+ The X pixmap identified by pixmap is used as the front left buffer of the + resulting off-screen rendering area. + All other buffers specified by vis, + including color buffers other than the front left buffer, + are created without externally visible names. + GLX pixmaps with double-buffering are supported. + However, glXSwapBuffers is ignored by these pixmaps. +

+ Some implementations may not support GLX pixmaps with direct rendering + contexts. +

Notes

+ XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. +

Errors

+ BadMatch is generated if the depth of pixmap does not match + the depth value reported by core X11 for vis, + or if pixmap was not created with respect to the same screen as vis. +

+ BadValue is generated + if vis is not a valid XVisualInfo pointer (for example, if a + particular GLX implementation does not support this visual). +

+ BadPixmap is generated if pixmap is not a valid pixmap. +

+ BadAlloc is generated if the server cannot allocate the GLX + pixmap. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCreateNewContext.xml b/upstream-man-pages/man2/xhtml/glXCreateNewContext.xml new file mode 100644 index 0000000..f63fefc --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCreateNewContext.xml @@ -0,0 +1,88 @@ + + +glXCreateNewContext

Name

glXCreateNewContext — create a new GLX rendering context

C Specification

GLXContext glXCreateNewContext(Display *  dpy,
 GLXFBConfig  config,
 int  render_type,
 GLXContext  share_list,
 Bool  direct);

Parameters

dpy

+ Specifies the connection to the X server. +

config

+ Specifies the GLXFBConfig structure with the desired attributes for the + context. +

render_type

+ Specifies the type of the context to be created. Must be one of + GLX_RGBA_TYPE or GLX_COLOR_INDEX_TYPE. +

share_list

+ Specifies the context with which to share display lists. + NULL indicates that no sharing is to take place. +

share_list

+ Specifies whether rendering is to be done with a direct connection + to the graphics system if possible (True) + or through the X server (False). +

Description

+ glXCreateNewContext creates a GLX rendering context and returns its handle. + This context can be used to render into GLX windows, pixmaps, or pixel + buffers. + If glXCreateNewContext fails to create a rendering context, + NULL is returned. +

+ If render_type is GLX_RGBA_TYPE, then a context that supports RGBA + rendering is created. If config is GLX_COLOR_INDEX_TYPE, then + context supporting color-index rendering is created. +

+ If render_type is not NULL, + then all display-list indexes and definitions are shared by + context render_type and by the newly created context. + An arbitrary number of contexts can share a single display-list space. + However, + all rendering contexts that share a single display-list space must + themselves exist in the same address space. + Two rendering contexts share an address space if both are nondirect + using the same server, + or if both are direct and owned by a single process. + Note that in the nondirect case, it is not necessary for the calling + threads to share an address space, + only for their related rendering contexts to share an address space. +

+ If share_list is True, + then a direct-rendering context is created if the + implementation supports direct rendering, if the connection is to an X + server that is local, and if a direct-rendering context is available. (An implementation may return an indirect context when share_list is True.) + If share_list is False, + then a rendering context that renders through the X server is always created. + Direct rendering provides a performance advantage in some implementations. + However, direct-rendering contexts cannot be shared outside a single process, + and they may be unable to render to GLX pixmaps. +

Notes

+ glXCreateNewContext is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ NULL is returned if execution fails on the client side. +

+ GLXBadContext is generated if render_type is not a GLX context + and is not NULL. +

+ GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. +

+ BadMatch is generated if the context to be created would not + share the address space or the screen of the context specified by render_type. +

+ BadAlloc is generated if the server does not have enough + resources to allocate the new context. +

+ BadValue is generated if config is not a valid visual (for + example, if a particular GLX implementation does not support it). +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCreatePbuffer.xml b/upstream-man-pages/man2/xhtml/glXCreatePbuffer.xml new file mode 100644 index 0000000..28eb884 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCreatePbuffer.xml @@ -0,0 +1,77 @@ + + +glXCreatePbuffer

Name

glXCreatePbuffer — create an off-screen rendering area

C Specification

GLXPbuffer glXCreatePbuffer(Display *  dpy,
 GLXFBConfig  config,
 const int *  attrib_list);

Parameters

dpy

+ Specifies the connection to the X server. +

config

+ Specifies a GLXFBConfig structure with the desired attributes for the + window. +

attrib_list

+ Specifies a list of attribute value pairs, which must be terminated with + None or NULL. Accepted attributes are + GLX_PBUFFER_WIDTH, GLX_PBUFFER_HEIGHT, + GLX_PRESERVED_CONTENTS, and GLX_LARGEST_PBUFFER. +

Description

+ glXCreatePbuffer creates an off-screen rendering area and returns its XID. + Any GLX rendering context that was created with respect to config + can be used to render into this window. + Use glXMakeContextCurrent to associate the rendering area with a GLX + rendering context. +

+ The accepted attributes for a GLXPbuffer are: +

GLX_PBUFFER_WIDTH

+ Specify the pixel width of the requested GLXPbuffer. The default value + is 0. +

GLX_PBUFFER_HEIGHT

+ Specify the pixel height of the requested GLXPbuffer. The default value + is 0. +

GLX_LARGEST_PBUFFER

+ Specify to obtain the largest available pixel buffer, if the requested + allocation would have failed. The width and height of the allocated + pixel buffer will never exceed the specified GLX_PBUFFER_WIDTH or + GLX_PBUFFER_HEIGHT, respectively. Use glXQueryDrawable to + retrieve the dimensions of the allocated pixel buffer. The default value is + False. +

GLX_PRESERVED_CONTENTS

+ Specify if the contents of the pixel buffer should be preserved when a + resource conflict occurs. If set to False, the contents of the + pixel buffer may be lost at any time. If set to True, or not + specified in attrib_list, then the contents of the pixel buffer will be preserved + (most likely by copying the contents into main system memory from the + frame buffer). In either case, the client can register (using + glXSelectEvent, to receive + pixel buffer clobber events that are generated when the pbuffer contents have + been preserved or damaged. +

+ GLXPbuffers contain the color and ancillary buffers specified by + config. It is possible to create a pixel buffer with back buffers and + to swap those buffers using glXSwapBuffers. +

Notes

+ glXCreatePbuffer is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

+ GLXPbuffers are allocated from frame buffer resources; applications + should consider deallocating them when they are not in use. +

Errors

+ BadAlloc is generated if there are insufficient resources to + allocate the requested GLXPbuffer. +

+ GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. +

+ BadMatch is generated if config does not support rendering to + pixel buffers (e.g., GLX_DRAWABLE_TYPE does not contain + GLX_PBUFFER_BIT). +

See Also

+ glXChooseFBConfig, + glXCreatePbuffer, + glXMakeContextCurrent, + glXSelectEvent +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCreatePixmap.xml b/upstream-man-pages/man2/xhtml/glXCreatePixmap.xml new file mode 100644 index 0000000..fa45525 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCreatePixmap.xml @@ -0,0 +1,53 @@ + + +glXCreatePixmap

Name

glXCreatePixmap — create an off-screen rendering area

C Specification

GLXPixmap glXCreatePixmap(Display *  dpy,
 GLXFBConfig  config,
 Pixmap  pixmap,
 const int *  attrib_list);

Parameters

dpy

+ Specifies the connection to the X server. +

config

+ Specifies a GLXFBConfig structure with the desired attributes for the + window. +

pixmap

+ Specifies the X pixmap to be used as the rendering area. +

attrib_list

+ Currently unused. This must be set to NULL or be an empty list + (i.e., one in which the first element is None). +

Description

+ glXCreatePixmap creates an off-screen rendering area and returns its XID. + Any GLX rendering context that was created with respect to config + can be used to render into this window. + Use glXMakeCurrent to associate the rendering area with a GLX + rendering context. +

Notes

+ glXCreatePixmap is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ BadMatch is generated if pixmap was not created with a visual + that corresponds to config. +

+ BadMatch is generated if config does not support rendering to + windows (e.g., GLX_DRAWABLE_TYPE does not contain + GLX_WINDOW_BIT). +

+ BadWindow is generated if pixmap is not a valid window XID. + BadAlloc is generated if there is already a GLXFBConfig + associated with pixmap. +

+ BadAlloc is generated if the X server cannot allocate a new + GLX window. +

+ GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXCreateWindow.xml b/upstream-man-pages/man2/xhtml/glXCreateWindow.xml new file mode 100644 index 0000000..79424ee --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXCreateWindow.xml @@ -0,0 +1,55 @@ + + +glXCreateWindow

Name

glXCreateWindow — create an on-screen rendering area

C Specification

GLXWindow glXCreateWindow(Display *  dpy,
 GLXFBConfig  config,
 Window  win,
 const int *  attrib_list);

Parameters

dpy

+ Specifies the connection to the X server. +

config

+ Specifies a GLXFBConfig structure with the desired attributes for the + window. +

win

+ Specifies the X window to be used as the rendering area. +

attrib_list

+ Currently unused. This must be set to NULL or be an empty list + (i.e., one in which the first element is None). +

Description

+ glXCreateWindow creates an on-screen rendering area from an existing X window + that was created with a visual matching config. The XID of the + GLXWindow is returned. + Any GLX rendering context that was created with respect to config + can be used to render into this window. + Use glXMakeContextCurrent to associate the rendering area with a GLX + rendering context. +

Notes

+ glXCreateWindow is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ BadMatch is generated if win was not created with a visual + that corresponds to config. +

+ BadMatch is generated if config does not support rendering to + windows (i.e., GLX_DRAWABLE_TYPE does not contain + GLX_WINDOW_BIT). +

+ BadWindow is generated if win is not a valid pixmap XID. +

+ BadAlloc is generated if there is already a GLXFBConfig + associated with win. +

+ BadAlloc is generated if the X server cannot allocate a new + GLX window. +

+ GLXBadFBConfig is generated if config is not a valid + GLXFBConfig. +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXDestroyContext.xml b/upstream-man-pages/man2/xhtml/glXDestroyContext.xml new file mode 100644 index 0000000..df6bbbd --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXDestroyContext.xml @@ -0,0 +1,26 @@ + + +glXDestroyContext

Name

glXDestroyContext — destroy a GLX context

C Specification

void glXDestroyContext(Display *  dpy,
 GLXContext  ctx);

Parameters

dpy

+ Specifies the connection to the X server. +

ctx

+ Specifies the GLX context to be destroyed. +

Description

+ If the GLX rendering context ctx is not current to any thread, + glXDestroyContext + destroys it immediately. + Otherwise, + ctx is destroyed when it becomes not current to any thread. + In either case, the resource ID + referenced by ctx is freed immediately. +

Errors

+ GLXBadContext is generated if ctx is not a valid GLX context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXDestroyGLXPixmap.xml b/upstream-man-pages/man2/xhtml/glXDestroyGLXPixmap.xml new file mode 100644 index 0000000..190a2fa --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXDestroyGLXPixmap.xml @@ -0,0 +1,25 @@ + + +glXDestroyGLXPixmap

Name

glXDestroyGLXPixmap — destroy a GLX pixmap

C Specification

void glXDestroyGLXPixmap(Display *  dpy,
 GLXPixmap  pix);

Parameters

dpy

+ Specifies the connection to the X server. +

pix

+ Specifies the GLX pixmap to be destroyed. +

Description

+ If the GLX pixmap pix is not current to any client, + glXDestroyGLXPixmap destroys it immediately. + Otherwise, + pix is destroyed when it becomes not current to any client. + In either case, the resource ID + is freed immediately. +

Errors

+ GLXBadPixmap is generated if pix is not a valid GLX pixmap. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXDestroyPbuffer.xml b/upstream-man-pages/man2/xhtml/glXDestroyPbuffer.xml new file mode 100644 index 0000000..463161a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXDestroyPbuffer.xml @@ -0,0 +1,27 @@ + + +glXDestroyPbuffer

Name

glXDestroyPbuffer — destroy an off-screen rendering area

C Specification

void glXDestroyPbuffer(Display *  dpy,
 GLXPbuffer  pbuf);

Parameters

dpy

+ Specifies the connection to the X server. +

pbuf

+ Specifies the GLXPbuffer to be destroyed. +

Description

+ glXDestroyPbuffer destroys a GLXPbuffer created by glXCreatePbuffer. +

Notes

+ glXDestroyPbuffer is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLXBadPbuffer is generated if pbuf is not a valid + GLXPbuffer. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXDestroyPixmap.xml b/upstream-man-pages/man2/xhtml/glXDestroyPixmap.xml new file mode 100644 index 0000000..1a41998 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXDestroyPixmap.xml @@ -0,0 +1,28 @@ + + +glXDestroyPixmap

Name

glXDestroyPixmap — destroy an off-screen rendering area

C Specification

void glXDestroyPixmap(Display *  dpy,
 GLXPixmap  pixmap);

Parameters

dpy

+ Specifies the connection to the X server. +

pixmap

+ Specifies the GLXPixmap to be destroyed. +

Description

+ glXDestroyPixmap destroys a GLXPixmap created by glXCreatePixmap. +

Notes

+ glXDestroyPixmap is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLXBadPixmap is generated if pixmap is not a valid + GLXPixmap. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXDestroyWindow.xml b/upstream-man-pages/man2/xhtml/glXDestroyWindow.xml new file mode 100644 index 0000000..b27b793 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXDestroyWindow.xml @@ -0,0 +1,27 @@ + + +glXDestroyWindow

Name

glXDestroyWindow — destroy an on-screen rendering area

C Specification

void glXDestroyWindow(Display *  dpy,
 GLXWindow  win);

Parameters

dpy

+ Specifies the connection to the X server. +

win

+ Specifies the GLXWindow to be destroyed. +

Description

+ glXDestroyWindow destroys a GLXWindow created by glXCreateWindow. +

Notes

+ glXDestroyWindow is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLXBadWindow is generated if win is not a valid + GLXPixmap. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXFreeContextEXT.xml b/upstream-man-pages/man2/xhtml/glXFreeContextEXT.xml new file mode 100644 index 0000000..30b5436 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXFreeContextEXT.xml @@ -0,0 +1,31 @@ + + +glXFreeContextEXT

Name

glXFreeContextEXT — free client-side memory for imported context

C Specification

void glXFreeContextEXT(Display *  dpy,
 GLXContext  ctx);

Parameters

dpy

+ Specifies the connection to the X server. +

ctx

+ Specifies a GLX rendering context. +

Description

+ glXFreeContextEXT frees the client-side part of a GLXContext that + was created with glXImportContextEXT. glXFreeContextEXT does not + free the server-side context information or the XID + associated with the server-side context. +

+ glXFreeContextEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_vertex_array is supported. +

Errors

+ GLXBadContext is generated if ctx does not + refer to a valid context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetClientString.xml b/upstream-man-pages/man2/xhtml/glXGetClientString.xml new file mode 100644 index 0000000..5184262 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetClientString.xml @@ -0,0 +1,47 @@ + + +glXGetClientString

Name

glXGetClientString — return a string describing the client

C Specification

const char * glXGetClientString(Display *  dpy,
 int  name);

Parameters

dpy

+ Specifies the connection to the X server. +

name

+ Specifies which string is returned. + The symbolic constants GLX_VENDOR, GLX_VERSION, + and GLX_EXTENSIONS are accepted. +

Description

+ glXGetClientString returns a string + describing some aspect of the client library. The possible values for name + are GLX_VENDOR, GLX_VERSION, and + GLX_EXTENSIONS. If name + is not set to one of these values, glXGetClientString returns NULL. + The format and contents of the vendor string is implementation dependent. +

+ The extensions string is null-terminated and contains a + space-separated list of extension names. (The extension names never + contain spaces.) + If there are no extensions to GLX, then the empty string is returned. +

+ The version string is laid out as follows: +

+ <major_version.minor_version><space><vendor-specific info> +

+ Both the major and minor portions of the version number are of arbitrary + length. The vendor-specific information is optional. However, if it is + present, the format and contents are implementation specific. +

Notes

+ glXGetClientString is available only if the GLX version is 1.1 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

+ glXGetClientString only returns information about GLX extensions supported by the client. + Call glGetString to get a list of GL extensions supported by the server. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetConfig.xml b/upstream-man-pages/man2/xhtml/glXGetConfig.xml new file mode 100644 index 0000000..1ef40e4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetConfig.xml @@ -0,0 +1,135 @@ + + +glXGetConfig

Name

glXGetConfig — return information about GLX visuals

C Specification

int glXGetConfig(Display *  dpy,
 XVisualInfo *  vis,
 int  attrib,
 int *  value);

Parameters

dpy

+ Specifies the connection to the X server. +

vis

+ Specifies the visual to be queried. + It is a pointer to an XVisualInfo structure, + not a visual ID or a pointer to a Visual. +

attrib

+ Specifies the visual attribute to be returned. +

value

+ Returns the requested value. +

Description

+ glXGetConfig sets value to the attrib value of windows or GLX pixmaps + created with respect to vis. + glXGetConfig returns an error code if it fails for any reason. + Otherwise, zero is returned. +

+ attrib is one of the following: +

+

GLX_USE_GL

+ True if OpenGL rendering is supported by this visual, + False otherwise. +

GLX_BUFFER_SIZE

+ Number of bits per color buffer. + For RGBA visuals, GLX_BUFFER_SIZE is the sum of + GLX_RED_SIZE, + GLX_GREEN_SIZE, + GLX_BLUE_SIZE, and + GLX_ALPHA_SIZE. + For color index visuals, GLX_BUFFER_SIZE is the size of the + color indexes. +

GLX_LEVEL

+ Frame buffer level of the visual. + Level zero is the default frame buffer. + Positive levels correspond to frame buffers that overlay the default buffer, + and negative levels correspond to frame buffers that underlay the default + buffer. +

GLX_RGBA

+ True if color buffers store red, green, blue, and alpha values. + False if they store color indexes. +

GLX_DOUBLEBUFFER

+ True if color buffers exist in front/back pairs that can be swapped, + False otherwise. +

GLX_STEREO

+ True if color buffers exist in left/right pairs, + False otherwise. +

GLX_AUX_BUFFERS

+ Number of auxiliary color buffers that are available. + Zero indicates that no auxiliary color buffers exist. +

GLX_RED_SIZE

+ Number of bits of red stored in each color buffer. + Undefined if GLX_RGBA is False. +

GLX_GREEN_SIZE

+ Number of bits of green stored in each color buffer. + Undefined if GLX_RGBA is False. +

GLX_BLUE_SIZE

+ Number of bits of blue stored in each color buffer. + Undefined if GLX_RGBA is False. +

GLX_ALPHA_SIZE

+ Number of bits of alpha stored in each color buffer. + Undefined if GLX_RGBA is False. +

GLX_DEPTH_SIZE

+ Number of bits in the depth buffer. +

GLX_STENCIL_SIZE

+ Number of bits in the stencil buffer. +

GLX_ACCUM_RED_SIZE

+ Number of bits of red stored in the accumulation buffer. +

GLX_ACCUM_GREEN_SIZE

+ Number of bits of green stored in the accumulation buffer. +

GLX_ACCUM_BLUE_SIZE

+ Number of bits of blue stored in the accumulation buffer. +

GLX_ACCUM_ALPHA_SIZE

+ Number of bits of alpha stored in the accumulation buffer. +

+ The X protocol allows a single visual ID to be instantiated with + different numbers of bits per pixel. + Windows or GLX pixmaps that will be rendered with OpenGL, however, + must be instantiated with a color buffer depth of GLX_BUFFER_SIZE. +

+ Although a GLX implementation can export many visuals that support GL + rendering, + it must support + at least one RGBA visual. This visual must have at + least one color buffer, + a stencil buffer of at least 1 bit, + a depth buffer of at least 12 bits, + and an accumulation buffer. + Alpha bitplanes are optional in this visual. + However, + its color buffer size must be as great as that of the + deepest TrueColor, DirectColor, + PseudoColor, or StaticColor visual supported on level zero, + and it must itself be made available on level zero. +

+ In addition, if the X server exports a PseudoColor + or StaticColor visual on framebuffer level 0, a color index + visual is also required on that level. + It must have + at least one color buffer, + a stencil buffer of at least 1 bit, + and a depth buffer of at least 12 bits. + This visual must + have as many + color bitplanes as the deepest + PseudoColor or StaticColor visual supported on level 0. +

+ Applications are best written to select the visual that most closely + meets their requirements. + Creating windows or GLX pixmaps with unnecessary buffers can result in + reduced rendering performance as well as poor resource allocation. +

Notes

+ XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, screen, and + depth elements. +

Errors

+ GLX_NO_EXTENSION is returned if dpy does not support the GLX + extension. +

+ GLX_BAD_SCREEN is returned if the screen of vis does not correspond + to a screen. +

+ GLX_BAD_ATTRIBUTE is returned if attrib is not a valid GLX attribute. +

+ GLX_BAD_VISUAL is returned if vis doesn't support GLX and an + attribute other than GLX_USE_GL is requested. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetContextIDEXT.xml b/upstream-man-pages/man2/xhtml/glXGetContextIDEXT.xml new file mode 100644 index 0000000..6841657 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetContextIDEXT.xml @@ -0,0 +1,28 @@ + + +glXGetContextIDEXT

Name

glXGetContextIDEXT — get the XID for a context.

C Specification

GLXContextID glXGetContextIDEXT(const GLXContext  ctx);

Parameters

ctx

+ Specifies a GLX rendering context. +

Description

+ glXGetContextIDEXT returns the XID associated with a GLXContext. +

+ No round trip is forced to the server; unlike most X calls that + return a value, glXGetContextIDEXT does not flush any pending events. +

+ glXGetContextIDEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_import_context is supported. +

Errors

+ GLXBadContext is generated if ctx does not + refer to a valid context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetCurrentContext.xml b/upstream-man-pages/man2/xhtml/glXGetCurrentContext.xml new file mode 100644 index 0000000..6f90b13 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetCurrentContext.xml @@ -0,0 +1,23 @@ + + +glXGetCurrentContext

Name

glXGetCurrentContext — return the current context

C Specification

GLXContext glXGetCurrentContext(

+

Description

+ glXGetCurrentContext returns the current context, + as specified by glXMakeCurrent. + If there is no current context, + NULL is returned. +

+ glXGetCurrentContext returns client-side information. + It does not make a round trip to the server. +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetCurrentDisplay.xml b/upstream-man-pages/man2/xhtml/glXGetCurrentDisplay.xml new file mode 100644 index 0000000..42e401b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetCurrentDisplay.xml @@ -0,0 +1,21 @@ + + +glXGetCurrentDisplay

Name

glXGetCurrentDisplay — get display for current context

C Specification

Display * glXGetCurrentDisplay(

Description

+ glXGetCurrentDisplay returns the display for the current context. If no + context is current, NULL is returned. +

+ glXGetCurrentDisplay returns client-side information. It does not make a round-trip + to the server, and therefore does not flush any pending events. +

Notes

+ glXGetCurrentDisplay is only supported if the GLX version is 1.2 or greater. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetCurrentDrawable.xml b/upstream-man-pages/man2/xhtml/glXGetCurrentDrawable.xml new file mode 100644 index 0000000..9f604fb --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetCurrentDrawable.xml @@ -0,0 +1,22 @@ + + +glXGetCurrentDrawable

Name

glXGetCurrentDrawable — return the current drawable

C Specification

GLXDrawable glXGetCurrentDrawable(

Description

+ glXGetCurrentDrawable returns the current drawable, + as specified by glXMakeCurrent. + If there is no current drawable, + None is returned. +

+ glXGetCurrentDrawable returns client-side information. + It does not make a round trip to the server. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetCurrentReadDrawable.xml b/upstream-man-pages/man2/xhtml/glXGetCurrentReadDrawable.xml new file mode 100644 index 0000000..41393e7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetCurrentReadDrawable.xml @@ -0,0 +1,24 @@ + + +glXGetCurrentReadDrawable

Name

glXGetCurrentReadDrawable — return the current drawable

C Specification

GLXDrawable glXGetCurrentReadDrawable(

Description

+ glXGetCurrentReadDrawable returns the current read drawable, + as specified by read parameter + of glXMakeContextCurrent. + If there is no current drawable, + None is returned. +

+ glXGetCurrentReadDrawable returns client-side information. + It does not make a round-trip to the server. +

Notes

+ glXGetCurrentReadDrawable is only supported if the GLX version is 1.3 or greater. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetFBConfigAttrib.xml b/upstream-man-pages/man2/xhtml/glXGetFBConfigAttrib.xml new file mode 100644 index 0000000..d8d459e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetFBConfigAttrib.xml @@ -0,0 +1,213 @@ + + +glXGetFBConfigAttrib

Name

glXGetFBConfigAttrib — return information about a GLX frame buffer configuration

C Specification

int glXGetFBConfigAttrib(Display *  dpy,
 GLXFBConfig  config,
 int  attribute,
 int *  value);

Parameters

dpy

+ Specifies the connection to the X server. +

config

+ Specifies the GLX frame buffer configuration to be queried. +

attribute

+ Specifies the attribute to be returned. +

value

+ Returns the requested value. +

Description

+ glXGetFBConfigAttrib sets value to the attribute value of GLX drawables + created with respect to config. + glXGetFBConfigAttrib returns an error code if it fails for any reason. + Otherwise, Success is returned. +

+ attribute is one of the following: +

+

GLX_FBCONFIG_ID

+ XID of the given GLXFBConfig. +

GLX_BUFFER_SIZE

+

+ Number of bits per color buffer. + If the frame buffer configuration supports RGBA contexts, then + GLX_BUFFER_SIZE is the sum of + GLX_RED_SIZE, + GLX_GREEN_SIZE, + GLX_BLUE_SIZE, and + GLX_ALPHA_SIZE. + If the frame buffer configuration supports only color index contexts, + GLX_BUFFER_SIZE is the size of the + color indexes. +

GLX_LEVEL

+

+ Frame buffer level of the configuration. + Level zero is the default frame buffer. + Positive levels correspond to frame buffers that overlay the default buffer, + and negative levels correspond to frame buffers that underlie the default + buffer. +

GLX_DOUBLEBUFFER

+

+ True if color buffers exist in front/back pairs that can be swapped, + False otherwise. +

GLX_STEREO

+

+ True if color buffers exist in left/right pairs, + False otherwise. +

GLX_AUX_BUFFERS

+

+ Number of auxiliary color buffers that are available. + Zero indicates that no auxiliary color buffers exist. +

GLX_RED_SIZE

+

+ Number of bits of red stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. +

GLX_GREEN_SIZE

+

+ Number of bits of green stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. +

GLX_BLUE_SIZE

+

+ Number of bits of blue stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. +

GLX_ALPHA_SIZE

+

+ Number of bits of alpha stored in each color buffer. + Undefined if RGBA contexts are not supported by the frame buffer configuration. +

GLX_DEPTH_SIZE

+

+ Number of bits in the depth buffer. +

GLX_STENCIL_SIZE

+

+ Number of bits in the stencil buffer. +

GLX_ACCUM_RED_SIZE

+

+ Number of bits of red stored in the accumulation buffer. +

GLX_ACCUM_GREEN_SIZE

+

+ Number of bits of green stored in the accumulation buffer. +

GLX_ACCUM_BLUE_SIZE

+

+ Number of bits of blue stored in the accumulation buffer. +

GLX_ACCUM_ALPHA_SIZE

+

+ Number of bits of alpha stored in the accumulation buffer. +

GLX_RENDER_TYPE

+

+ Mask indicating what type of GLX contexts can be made + current to the frame buffer configuration. Valid bits are + GLX_RGBA_BIT and + GLX_COLOR_INDEX_BIT. +

GLX_DRAWABLE_TYPE

+

+ Mask indicating what drawable types the frame buffer configuration + supports. Valid bits are GLX_WINDOW_BIT, + GLX_PIXMAP_BIT, and GLX_PBUFFER_BIT. +

GLX_X_RENDERABLE

+

+ True if drawables created with the + frame buffer configuration can be rendered to by X. +

GLX_VISUAL_ID

+

+ XID of the corresponding visual, or zero + if there is no associated visual (i.e., if + GLX_X_RENDERABLE is False or + GLX_DRAWABLE_TYPE does not have the + GLX_WINDOW_BIT bit set). +

GLX_X_VISUAL_TYPE

+

+ Visual type of associated visual. The returned value will be one of: + GLX_TRUE_COLOR, GLX_DIRECT_COLOR, GLX_PSEUDO_COLOR, + GLX_STATIC_COLOR, GLX_GRAY_SCALE, GLX_STATIC_GRAY, + or GLX_NONE, if there is no associated visual (i.e., if + GLX_X_RENDERABLE is False or + GLX_DRAWABLE_TYPE does not have the + GLX_WINDOW_BIT bit set). +

GLX_CONFIG_CAVEAT

+

+ One of GLX_NONE, + GLX_SLOW_CONFIG, or + GLX_NON_CONFORMANT_CONFIG, indicating + that the frame buffer configuration has no caveats, + some aspect of the frame buffer configuration runs slower + than other frame buffer configurations, or some aspect of the + frame buffer configuration is nonconformant, respectively. +

GLX_TRANSPARENT_TYPE

+

+ One of GLX_NONE, + GLX_TRANSPARENT_RGB, + GLX_TRANSPARENT_INDEX, indicating that + the frame buffer configuration is opaque, is transparent for particular + values of red, green, and blue, or is transparent for + particular index values, respectively. +

GLX_TRANSPARENT_INDEX_VALUE

+

+ Integer value between 0 and the maximum + frame buffer value for indices, indicating the transparent + index value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_INDEX. +

GLX_TRANSPARENT_RED_VALUE

+

+ Integer value between 0 and the maximum + frame buffer value for red, indicating the transparent + red value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. +

GLX_TRANSPARENT_GREEN_VALUE

+

+ Integer value between 0 and the maximum + frame buffer value for green, indicating the transparent + green value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. +

GLX_TRANSPARENT_BLUE_VALUE

+

+ Integer value between 0 and the maximum + frame buffer value for blue, indicating the transparent + blue value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. +

GLX_TRANSPARENT_ALPHA_VALUE

+

+ Integer value between 0 and the maximum + frame buffer value for alpha, indicating the transparent + blue value for the frame buffer configuration. + Undefined if GLX_TRANSPARENT_TYPE + is not GLX_TRANSPARENT_RGB. +

GLX_MAX_PBUFFER_WIDTH

+

+ The maximum width that can be specified to + glXCreatePbuffer. +

GLX_MAX_PBUFFER_HEIGHT

+

+ The maximum height that can be specified to + glXCreatePbuffer. +

GLX_MAX_PBUFFER_PIXELS

+

+ The maximum number of pixels (width times height) for a + pixel buffer. Note that this value may be less than + GLX_MAX_PBUFFER_WIDTH times + GLX_MAX_PBUFFER_HEIGHT. Also, this + value is static and assumes that no other pixel buffers + or X resources are contending for the frame buffer memory. + As a result, it may not be possible to allocate a pixel buffer of + the size given by GLX_MAX_PBUFFER_PIXELS. +

+ Applications should choose the frame buffer configuration that most closely + meets their requirements. + Creating windows, GLX pixmaps, or GLX pixel buffers with unnecessary buffers + can result in + reduced rendering performance as well as poor resource allocation. +

Notes

+ glXGetFBConfigAttrib is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLX_NO_EXTENSION is returned if dpy does not support the GLX + extension. + GLX_BAD_ATTRIBUTE is returned if attribute is not a valid GLX attribute. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetFBConfigs.xml b/upstream-man-pages/man2/xhtml/glXGetFBConfigs.xml new file mode 100644 index 0000000..837ce1d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetFBConfigs.xml @@ -0,0 +1,28 @@ + + +glXGetFBConfigs

Name

glXGetFBConfigs — list all GLX frame buffer configurations for a given screen

C Specification

GLXFBConfig * glXGetFBConfigs(Display *  dpy,
 int  screen,
 int *  nelements);

Parameters

dpy

+ Specifies the connection to the X server. +

screen

+ Specifies the screen number. +

nelements

+ Returns the number of GLXFBConfigs returned. +

Description

+ glXGetFBConfigs returns a list of all GLXFBConfigs available on the screen + specified by screen. Use glXGetFBConfigAttrib to obtain attribute + values from a specific GLXFBConfig. +

Notes

+ glXGetFBConfigs is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetProcAddress.xml b/upstream-man-pages/man2/xhtml/glXGetProcAddress.xml new file mode 100644 index 0000000..c9d5faa --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetProcAddress.xml @@ -0,0 +1,20 @@ + + +glXGetProcAddress

Name

glXGetProcAddress — obtain a pointer to an OpenGL or GLX function

C Specification

void(*)() glXGetProcAddress(const GLubyte *  procName);

Parameters

procName

+ Specifies the name of the OpenGL or GLX function whose address is to be returned. +

Description

+ glXGetProcAddress returns the address of the function specified in procName. This is + necessary in environments where the OpenGL link library exports a different + set of functions than the runtime library. +

Notes

+ A NULL pointer is returned if function requested is not suported + in the implementation being queried. +

+ GLU functions are not queryable due to the fact that the library may not be + loaded at the time of the query. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetSelectedEvent.xml b/upstream-man-pages/man2/xhtml/glXGetSelectedEvent.xml new file mode 100644 index 0000000..2c12a22 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetSelectedEvent.xml @@ -0,0 +1,28 @@ + + +glXGetSelectedEvent

Name

glXGetSelectedEvent — returns GLX events that are selected for a window or a GLX pixel buffer

C Specification

void glXGetSelectedEvent(Display *  dpy,
 GLXDrawable  draw,
 unsigned long *  event_mask);

Parameters

dpy

+ Specifies the connection to the X server. +

draw

+ Specifies a GLX drawable. Must be a GLX pixel buffer or a window. +

event_mask

+ Returns the events that are selected for draw. +

Description

+ glXGetSelectedEvent returns in event_mask the events selected for draw. +

Notes

+ glXGetSelectedEvent is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLXBadDrawable is generated if draw is not a valid window + or a valid GLX pixel buffer. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXGetVisualFromFBConfig.xml b/upstream-man-pages/man2/xhtml/glXGetVisualFromFBConfig.xml new file mode 100644 index 0000000..e5b1b9b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXGetVisualFromFBConfig.xml @@ -0,0 +1,34 @@ + + +glXGetVisualFromFBConfig

Name

glXGetVisualFromFBConfig — return visual that is associated with the frame buffer configuration

C Specification

XVisualInfo * glXGetVisualFromFBConfig(Display *  dpy,
 GLXFBConfig  config);

Parameters

dpy

+ Specifies the connection to the X server. +

config

+ Specifies the GLX frame buffer configuration. +

Description

+ If config is a valid GLX frame buffer configuration + and it has an associated X Visual, then + information describing that visual is returned; otherwise NULL + is returned. Use XFree to free the data returned. +

Notes

+ glXGetVisualFromFBConfig is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

+ XVisualInfo is defined in Xutil.h. + It is a structure that includes visual, visualID, + screen, and depth elements. +

Errors

+ Returns NULL if config is not a valid GLXFBConfig. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXImportContextEXT.xml b/upstream-man-pages/man2/xhtml/glXImportContextEXT.xml new file mode 100644 index 0000000..e2f217b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXImportContextEXT.xml @@ -0,0 +1,48 @@ + + +glXImportContextEXT

Name

glXImportContextEXT — import another process's indirect rendering context.

C Specification

GLXContext glXImportContextEXT(Display *  dpy,
 GLXContextID  contextID);

Parameters

dpy

+ Specifies the connection to the X server. +

contextID

+ Specifies a GLX rendering context. +

Description

+ glXImportContextEXT creates a GLXContext given the XID of an existing GLXContext. + It may be used in place of glXCreateContext, + to share another process's indirect rendering context. +

+ Only the server-side context information can be shared between + X clients; client-side state, such as pixel storage modes, + cannot be shared. Thus, glXImportContextEXT must allocate memory to store + client-side information. This memory is freed by calling + glXFreeContextEXT. +

+ This call does not create a new XID. It merely makes an + existing object available to the importing client (Display *). + Like any XID, it goes away when the creating client drops its + connection or the ID is explicitly deleted. Note that this is + when the XID goes away. The object goes away when the XID + goes away AND the context is not current to any thread. +

+ If contextID refers to a + direct rendering context then no error is generated but + glXImportContextEXT returns NULL. +

+ glXImportContextEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_import_context is supported. +

Errors

+ GLXBadContext is generated if contextID does not + refer to a valid context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXIntro.xml b/upstream-man-pages/man2/xhtml/glXIntro.xml new file mode 100644 index 0000000..261ed68 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXIntro.xml @@ -0,0 +1,276 @@ + + +glXIntro

Name

glXIntro — Introduction to OpenGL in the X window system

Overview

+

+ OpenGL (called GL in other pages) is a high-performance 3D-oriented + renderer. It is available in the X window system through the GLX extension. + To determine whether the GLX extension is supported by an X server, and if + so, what version is supported, call glXQueryExtension and + glXQueryVersion. +

+ GLX extended X servers make a subset of their visuals available for OpenGL + rendering. Drawables created with these visual can also be rendered into + using the core X renderer and or any other X extension that is compatible + with all core X visuals. +

+ GLX extends a drawable's standard color buffer with additional buffers. + These buffers include back and auxiliary color buffers, a depth buffer, a + stencil buffer, and a color accumulation buffer. Some or all of the buffers + listed are included in each X visual that supports OpenGL. +

+ GLX supports rendering into three types of drawables: windows, pixmaps, and + pbuffers (pixel buffers). GLX windows and pixmaps are X resources, and + capable of accepting core X rendering as well as OpenGL rendering. + GLX-pbuffers are GLX only resources and might not accept core X rendering. +

+ To render using OpenGL into a GLX drawable, you must determine the + appropriate GLXFBConfig that supports the rendering features your + application requires. glXChooseFBConfig returns a GLXFBConfig matching + the required attributes or NULL if no match is found. A complete + list of GLXFBConfigs supported by a server can be obtained by calling + glXGetFBConfigs. Attributes of a particular GLXFBConfig can be + queried by calling glXGetFBConfigAttrib. +

+ For GLX windows and pixmaps, a suitable X drawable (using either + XCreateWindow or XCreatePixmap, respectively) with a matching + visual must be created first. Call glXGetVisualFromFBConfig to obtain + the necessary XVisualInfo structure for creating the X drawable. For + pbuffers, no underlying X drawable is required. +

+ To create a GLX window from an X window, call glXCreateWindow. + Likewise, to create a GLX pixmap, call glXCreatePixmap. Pbuffers are + created by calling glXCreatePbuffer. Use glXDestroyWindow, + glXDestroyPixmap, and glXDestroyPbuffer to release previously + allocated resources. +

+ A GLX context is required to bind OpenGL rendering to a GLX resource. A GLX + resource and rendering context must have compatible GLXFBConfigs. To create + a GLX context, call glXCreateNewContext. A context may be bound to a + GLX drawable by using glXMakeContextCurrent. This context/drawable + pair becomes the current context and current drawable, and is used by all + OpenGL rendering commands until glXMakeContextCurrent is called with + different arguments. +

+ Both core X and OpenGL commands can be used to operate on drawables; + however, the X and OpenGL command streams are not synchronized. + Synchronization can be explicitly specified using by calling glXWaitGL, + glXWaitX, XSync, and XFlush. +

+

Examples

+ Below is a minimal example of creating an RGBA-format X window that's + compatible with OpenGL using GLX 1.3 commands. The window is cleared to + yellow when the program runs. The program does minimal error checking; all + return values should be checked. +

+

+#include <stdio.h>
+#include <stdlib.h>
+#include <GL/gl.h>
+#include <GL/glx.h>
+
+int singleBufferAttributess[] = {
+    GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT,
+    GLX_RENDER_TYPE,   GLX_RGBA_BIT,
+    GLX_RED_SIZE,      1,   /* Request a single buffered color buffer */
+    GLX_GREEN_SIZE,    1,   /* with the maximum number of color bits  */
+    GLX_BLUE_SIZE,     1,   /* for each component                     */
+    None
+};
+
+int doubleBufferAttributes[] = {
+    GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT,
+    GLX_RENDER_TYPE,   GLX_RGBA_BIT,
+    GLX_DOUBLEBUFFER,  True,  /* Request a double-buffered color buffer with */
+    GLX_RED_SIZE,      1,     /* the maximum number of bits per component    */
+    GLX_GREEN_SIZE,    1, 
+    GLX_BLUE_SIZE,     1,
+    None
+};
+
+
+static Bool WaitForNotify( Display *dpy, XEvent *event, XPointer arg ) {
+    return (event->type == MapNotify) && (event->xmap.window == (Window) arg);
+}
+int main( int argc, char *argv[] )
+{
+    Display              *dpy;
+    Window                xWin;
+    XEvent                event;
+    XVisualInfo          *vInfo;
+    XSetWindowAttributes  swa;
+    GLXFBConfig          *fbConfigs;
+    GLXContext            context;
+    GLXWindow             glxWin;
+    int                   swaMask;
+    int                   numReturned;
+    int                   swapFlag = True;
+
+    /* Open a connection to the X server */
+    dpy = XOpenDisplay( NULL );
+    if ( dpy == NULL ) {
+        printf( "Unable to open a connection to the X server\n" );
+        exit( EXIT_FAILURE );
+    }
+
+    /* Request a suitable framebuffer configuration - try for a double 
+    ** buffered configuration first */
+    fbConfigs = glXChooseFBConfig( dpy, DefaultScreen(dpy),
+                                   doubleBufferAttributes, &numReturned );
+
+    if ( fbConfigs == NULL ) {  /* no double buffered configs available */
+      fbConfigs = glXChooseFBConfig( dpy, DefaultScreen(dpy),
+                                     singleBufferAttributess, &numReturned );
+      swapFlag = False;
+    }
+
+    /* Create an X colormap and window with a visual matching the first
+    ** returned framebuffer config */
+    vInfo = glXGetVisualFromFBConfig( dpy, fbConfigs[0] );
+
+    swa.border_pixel = 0;
+    swa.event_mask = StructureNotifyMask;
+    swa.colormap = XCreateColormap( dpy, RootWindow(dpy, vInfo->screen),
+                                    vInfo->visual, AllocNone );
+
+    swaMask = CWBorderPixel | CWColormap | CWEventMask;
+
+    xWin = XCreateWindow( dpy, RootWindow(dpy, vInfo->screen), 0, 0, 256, 256,
+                          0, vInfo->depth, InputOutput, vInfo->visual,
+                          swaMask, &swa );
+
+    /* Create a GLX context for OpenGL rendering */
+    context = glXCreateNewContext( dpy, fbConfigs[0], GLX_RGBA_TYPE,
+				 NULL, True );
+
+    /* Create a GLX window to associate the frame buffer configuration
+    ** with the created X window */
+    glxWin = glXCreateWindow( dpy, fbConfigs[0], xWin, NULL );
+    
+    /* Map the window to the screen, and wait for it to appear */
+    XMapWindow( dpy, xWin );
+    XIfEvent( dpy, &event, WaitForNotify, (XPointer) xWin );
+
+    /* Bind the GLX context to the Window */
+    glXMakeContextCurrent( dpy, glxWin, glxWin, context );
+
+    /* OpenGL rendering ... */
+    glClearColor( 1.0, 1.0, 0.0, 1.0 );
+    glClear( GL_COLOR_BUFFER_BIT );
+
+    glFlush();
+    
+    if ( swapFlag )
+        glXSwapBuffers( dpy, glxWin );
+
+    sleep( 10 );
+    exit( EXIT_SUCCESS );
+}
+            

+

+

Notes

+ An X color map must be created and passed to XCreateWindow. +

+ A GLX context must be created and bound to a GLX drawable before OpenGL + commands can be executed. OpenGL commands executed while no + context/drawable pair is current result in undefined behavior. +

+ Exposure events indicate that all buffers associated with the + specified window may be damaged and should be repainted. Although certain + buffers of some visuals on some systems may never require repainting (the + depth buffer, for example), it is incorrect to write a program assuming that + these buffers will not be damaged. +

+ GLX commands utilize XVisualInfo structures rather than pointers to visuals + or visualIDs directly. XVisualInfo structures contain visual, + visualID, screen, and depth elements, as well as other + X-specific information. +

+

Using GLX Extensions

+ All supported GLX extensions will have a corresponding definition in glx.h + and a token in the extension string returned by + glXQueryExtensionsString. For example, if the + EXT_visual_info extension is supported, then this token will be + defined in glx.h and EXT_visual_info will appear in the extension + string returned by glXQueryExtensionsString. The definitions in glx.h + can be used at compile time to determine if procedure calls corresponding to + an extension exist in the library. +

+ OpenGL itself is capable of being extended. +

+

GLX 1.1, GLX 1.2, and GLX 1.3

+ GLX 1.3 is now supported and is backward compatible with GLX 1.1 and GLX + 1.2. It introduces new functionality (namely GLXFBConfigs) that supersedes + the GLX 1.2 functionality. GLX 1.2 commands are supported, but their use in + new application development is not recommended. +

+ GLX 1.3 corresponds to OpenGL versions 1.2 and introduces the following new + calls: glXGetFBConfigs, glXGetFBConfigAttrib, + glXGetVisualFromFBConfig, glXCreateWindow, glXDestroyWindow, + glXCreatePixmap, glXDestroyPixmap, glXCreatePbuffer, + glXDestroyPbuffer, glXQueryDrawable, glXCreateNewContext, + glXMakeContextCurrent, glXGetCurrentReadDrawable, + glXGetCurrentDisplay, glXQueryContext, and glXSelectEvent, + glXGetSelectedEvent. +

+ GLX 1.2 corresponds to OpenGL version 1.1 and introduces the following new + call: glXGetCurrentDisplay. +

+ GLX 1.1 corresponds to OpenGL version 1.0 and introduces the following new + calls: glXQueryExtensionsString, glXQueryServerString, and + glXGetClientString. +

+ Call glXQueryVersion to determine at runtime what version of GLX is + available. glXQueryVersion returns the version that is supported on the + connection. Thus, if 1.3 is returned, both the client and server support GLX + 1.3. You can also check the GLX version at compile time: GLX_VERSION_1_1 + will be defined in glx.h if GLX 1.1 calls are supported, GLX_VERSION_1_2 + will be defined if GLX 1.2 calls are supported, and GLX_VERSION_1_3 will be + defined if GLX 1.3 calls are supported. +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXIsDirect.xml b/upstream-man-pages/man2/xhtml/glXIsDirect.xml new file mode 100644 index 0000000..729b804 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXIsDirect.xml @@ -0,0 +1,24 @@ + + +glXIsDirect

Name

glXIsDirect — indicate whether direct rendering is enabled

C Specification

Bool glXIsDirect(Display *  dpy,
 GLXContext  ctx);

Parameters

dpy

+ Specifies the connection to the X server. +

ctx

+ Specifies the GLX context that is being queried. +

Description

+ glXIsDirect returns True if ctx is a direct rendering context, + False otherwise. + Direct rendering contexts pass rendering commands directly from the calling + process's address space to the rendering system, + bypassing the X server. + Nondirect rendering contexts pass all rendering commands to the X server. +

Errors

+ GLXBadContext is generated if ctx is not a valid GLX context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXMakeContextCurrent.xml b/upstream-man-pages/man2/xhtml/glXMakeContextCurrent.xml new file mode 100644 index 0000000..e29feb5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXMakeContextCurrent.xml @@ -0,0 +1,106 @@ + + +glXMakeContextCurrent

Name

glXMakeContextCurrent — attach a GLX context to a GLX drawable

C Specification

Bool glXMakeContextCurrent(Display *  display,
 GLXDrawable  draw,
 GLXDrawable  read,
 GLXContext  ctx);

Parameters

display

+ Specifies the connection to the X server. +

draw

+ Specifies a GLX drawable to render into. + Must be an XID representing a GLXWindow, GLXPixmap, or GLXPbuffer. +

read

+ Specifies a GLX drawable to read from. + Must be an XID representing a GLXWindow, GLXPixmap, or GLXPbuffer. +

ctx

+ Specifies the GLX context to be bound to read and ctx. +

Description

+ glXMakeContextCurrent binds ctx to the current rendering thread and to the draw + and read GLX drawables. draw and read may be the same. +

+ draw is used for all OpenGL operations except: +

+ Any pixel data that are read based on the value of GLX_READ_BUFFER. + Note that accumulation operations use the value of GLX_READ_BUFFER, + but are not allowed unless draw is identical to read. +

+ Any depth values that are retrieved by glReadPixels or glCopyPixels. +

+ Any stencil values that are retrieved by glReadPixels or + glCopyPixels. +

+ Frame buffer values are taken from draw. +

+ If the current rendering thread has a current rendering context, that + context is flushed and replaced by ctx. +

+ The first time that ctx is made current, the viewport and scissor + dimensions are set to the size of the draw drawable. The viewport + and scissor are not modified when ctx is subsequently made current. +

+ To release the current context without assigning a new one, + call glXMakeContextCurrent with draw and read set to None and ctx + set to NULL. +

+ glXMakeContextCurrent returns True if it is successful, + False otherwise. + If False is returned, the previously current rendering context + and drawable (if any) remain unchanged. +

Notes

+ glXMakeContextCurrent is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

+

Errors

+ BadMatch is generated if draw and read are not compatible. +

+ BadAccess is generated if ctx is current to some other + thread. +

+ GLXContextState is generated if there is a current rendering + context and its render mode is either GLX_FEEDBACK or + GLX_SELECT. +

+ GLXBadContext is generated if ctx is not a valid GLX + rendering context. +

+ GLXBadDrawable is generated if draw or read is not a valid + GLX drawable. +

+ GLXBadWindow is generated if the underlying X window for either + draw or read is no longer valid. +

+ GLXBadCurrentDrawable is generated if the previous context of + the calling thread has unflushed commands and the previous drawable is + no longer valid. +

+ BadAlloc is generated if the X server does not have enough + resources to allocate the buffers. +

+ BadMatch is generated if: +

+ draw and read cannot fit into frame buffer memory simultaneously. +

+ draw or read is a GLXPixmap and ctx is a direct-rendering + context. +

+ draw or read is a GLXPixmap and ctx was previously bound to a + GLXWindow or GLXPbuffer. +

+ draw or read is a GLXWindow or GLXPbuffer and ctx was + previously bound to a GLXPixmap. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXMakeCurrent.xml b/upstream-man-pages/man2/xhtml/glXMakeCurrent.xml new file mode 100644 index 0000000..0befbd0 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXMakeCurrent.xml @@ -0,0 +1,91 @@ + + +glXMakeCurrent

Name

glXMakeCurrent — attach a GLX context to a window or a GLX pixmap

C Specification

Bool glXMakeCurrent(Display *  dpy,
 GLXDrawable  drawable,
 GLXContext  ctx);

Parameters

dpy

+ Specifies the connection to the X server. +

drawable

+ Specifies a GLX drawable. + Must be either an X window ID or a GLX pixmap ID. +

ctx

+ Specifies a GLX rendering context that is to be attached to drawable. +

Description

+ glXMakeCurrent does two things: + It makes ctx the current GLX rendering context of the calling thread, + replacing the previously current context if there was one, + and it attaches ctx to a GLX drawable, + either a window or a GLX pixmap. + As a result of these two actions, + subsequent GL rendering calls + use rendering context ctx to modify GLX drawable drawable (for + reading and writing). + Because glXMakeCurrent always replaces the current rendering context with ctx, + there can be only one current context per thread. +

+ Pending commands to the + previous context, if any, are flushed before it is released. +

+ The first time ctx is made current to any thread, + its viewport is set to the full size of drawable. + Subsequent calls by any thread to glXMakeCurrent with ctx + have no effect on its viewport. +

+ To release the current context without assigning a new one, + call glXMakeCurrent with drawable set to None and ctx + set to NULL. +

+ glXMakeCurrent returns True if it is successful, + False otherwise. + If False is returned, the previously current rendering context + and drawable (if any) remain unchanged. +

Notes

+ A process is a single-execution environment, + implemented in a single address space, + consisting of one or more threads. +

+ A thread is one of a set of subprocesses that share + a single address space, + but maintain separate program counters, + stack spaces, + and other related global data. + A thread that is the only member of its subprocess group + is equivalent to a process. +

Errors

+ BadMatch is generated if drawable was not + created with the same X screen and visual as ctx. + It is also generated if drawable is None and ctx is not + NULL. +

+ BadAccess is generated if ctx was current to another thread + at the time glXMakeCurrent was called. +

+ GLXBadDrawable is generated if drawable is not a valid GLX drawable. +

+ GLXBadContext is generated if ctx is not a valid GLX context. +

+ GLXBadContextState is generated if glXMakeCurrent is executed between + the execution of glBegin and the corresponding execution of glEnd. +

+ GLXBadContextState is also generated if the rendering context current + to the calling thread has GL renderer state GLX_FEEDBACK or + GLX_SELECT. +

+ GLXBadCurrentWindow is generated if there are pending GL + commands for the previous context and the current drawable is + a window that is no longer valid. +

+ BadAlloc may be generated if the server has delayed allocation + of ancillary buffers until glXMakeCurrent is called, only to find that it has + insufficient resources to complete the allocation. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryContext.xml b/upstream-man-pages/man2/xhtml/glXQueryContext.xml new file mode 100644 index 0000000..512a7fe --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryContext.xml @@ -0,0 +1,45 @@ + + +glXQueryContext

Name

glXQueryContext — query context information

C Specification

int glXQueryContext(Display *  dpy,
 GLXContext  ctx,
 int  attribute,
 int *  value);

Parameters

dpy

+ Specifies the connection to the X server. +

ctx

+ Specifies a GLX rendering context. +

attribute

+ Specifies that a context parameter should be retrieved. Must be one of + GLX_FBCONFIG_ID, GLX_RENDER_TYPE, or GLX_SCREEN. +

value

+ Contains the return value for attribute. +

Description

+ glXQueryContext sets value to the value of attribute with respect to ctx. + attribute may be one of the following: +

GLX_FBCONFIG_ID

+ Returns the XID of the GLXFBConfig associated with ctx. +

GLX_RENDER_TYPE

+ Returns the rendering type supported by ctx. +

GLX_SCREEN

+ Returns the screen number associated with ctx. +

+ Success is returned unless attribute is not a valid GLX + context attribute, in which case GLX_BAD_ATTRIBUTE is returned. +

+ This call may cause a round-trip to the server. +

Notes

+ glXQueryContext is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLXBadContext is generated if ctx does not + refer to a valid context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryContextInfoEXT.xml b/upstream-man-pages/man2/xhtml/glXQueryContextInfoEXT.xml new file mode 100644 index 0000000..9ad03d9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryContextInfoEXT.xml @@ -0,0 +1,50 @@ + + +glXQueryContextInfoEXT

Name

glXQueryContextInfoEXT — query context information

C Specification

int glXQueryContextInfoEXT(Display *  dpy,
 GLXContext  ctx,
 int  attribute,
 int *  value);

Parameters

dpy

+ Specifies the connection to the X server. +

ctx

+ Specifies a GLX rendering context. +

attribute

+ Specifies that a context parameter should be retrieved. Must be one of + GLX_SHARED_CONTEXT_EXT, GLX_VISUAL_ID_EXT, or GLX_SCREEN_EXT. +

value

+ Contains the return value for attribute. +

Description

+ glXQueryContextInfoEXT sets value to the value of attribute with respect to ctx. + glXQueryContextInfoEXT returns an error code if it fails for any reason. Otherwise, + Success is returned. +

+ attribute may be one of the following: +

GLX_SHARED_CONTEXT_EXT

+ Returns the XID of the share list context associated with ctx at its + creation. +

GLX_VISUAL_ID_EXT

+ Returns the XID of the GLX Visual associated with ctx. +

GLX_SCREEN_EXT

+ Returns the screen number associated with ctx. +

+ This call may cause a round-trip to the server. +

+ glXQueryContextInfoEXT is part of the EXT_import_context extension, + not part of the core GLX command set. If _glxextstring(EXT_import_context) + is included in the string returned by glXQueryExtensionsString, + when called with argument GLX_EXTENSIONS, + extension EXT_import_context is supported. +

Errors

+ GLXBadContext is generated if ctx does not + refer to a valid context. +

+ GLX_BAD_ATTRIBUTE is returned if attribute is not a valid GLX + context attribute. +

+ fred GLX_BAD_CONTEXT is returned if attribute is not a valid context. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryDrawable.xml b/upstream-man-pages/man2/xhtml/glXQueryDrawable.xml new file mode 100644 index 0000000..06a80e8 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryDrawable.xml @@ -0,0 +1,69 @@ + + +glXQueryDrawable

Name

glXQueryDrawable — returns an attribute assoicated with a GLX drawable

C Specification

int glXQueryDrawable(Display *  dpy,
 GLXDrawable  draw,
 int  attribute,
 unsigned int *  value);

Parameters

dpy

+ Specifies the connection to the X server. +

draw

+ Specifies the GLX drawable to be queried. +

attribute

+ Specifies the attribute to be returned. Must be one of + GLX_WIDTH, + GLX_HEIGHT, + GLX_PRESERVED_CONTENTS, + GLX_LARGEST_PBUFFER, or + GLX_FBCONFIG_ID. +

value

+ Contains the return value for + attribute. +

Description

+ glXQueryDrawable sets + value to the value of + attribute with respect to the GLXDrawable + draw. +

+ attribute may be one of the following: +

GLX_WIDTH

+ Returns the width of ctx. +

GLX_HEIGHT

+ Returns the height of ctx. +

GLX_PRESERVED_CONTENTS

+ Returns True if the contents + of a GLXPbuffer are preserved when a resource + conflict occurs; False otherwise. +

GLX_LARGEST_PBUFFER

+ Returns the value set when + glXCreatePbuffer was called to + create the GLXPbuffer. If + False is returned, then the + call to glXCreatePbuffer will + fail to create a GLXPbuffer if the requested size + is larger than the implementation maximum or + available resources. If True + is returned, a GLXPbuffer of the maximum availble + size (if less than the requested width and height) + is created. +

GLX_FBCONFIG_ID

+ Returns the XID for draw. +

+ If draw is a GLXWindow or GLXPixmap and + attribute is set to + GLX_PRESERVED_CONTENTS or + GLX_LARGETST_PBUFFER, the contents of + value are undefined. If + attribute is not one of the attributes + listed above, the contents of value are + unedfined. +

Errors

+ A GLXBadDrawable is generated if + draw is not a valid GLXDrawable. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryExtension.xml b/upstream-man-pages/man2/xhtml/glXQueryExtension.xml new file mode 100644 index 0000000..3386f4d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryExtension.xml @@ -0,0 +1,28 @@ + + +glXQueryExtension

Name

glXQueryExtension — indicate whether the GLX extension is supported

C Specification

Bool glXQueryExtension(Display *  dpy,
 int *  errorBase,
 int *  eventBase);

Parameters

dpy

+ Specifies the connection to the X server. +

errorBase

+ Returns the base error code of the GLX server extension. +

eventBase

+ Returns the base event code of the GLX server extension. +

Description

+ glXQueryExtension returns True if the X server of + connection dpy supports the GLX extension, + False otherwise. + If True is returned, + then errorBase and eventBase return the error base and event base of + the GLX extension. These values should be added to the constant + error and event values to determine the actual event or error values. + Otherwise, errorBase and eventBase are unchanged. +

+ errorBase and eventBase do not return values if they are specified + as NULL. +

See Also

+ glXQueryVersion +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryExtensionsString.xml b/upstream-man-pages/man2/xhtml/glXQueryExtensionsString.xml new file mode 100644 index 0000000..c67005a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryExtensionsString.xml @@ -0,0 +1,29 @@ + + +glXQueryExtensionsString

Name

glXQueryExtensionsString — return list of supported extensions

C Specification

const char * glXQueryExtensionsString(Display *  dpy,
 int  screen);

Parameters

dpy

+ Specifies the connection to the X server. +

screen

+ Specifies the screen number. +

Description

+ glXQueryExtensionsString returns a pointer to a string describing + which GLX extensions are supported on the connection. The string + is null-terminated and contains a space-separated list of + extension names. (The extension names themselves never contain + spaces.) If there are no extensions to GLX, then the empty string is + returned. +

Notes

+ glXQueryExtensionsString is available only if the GLX version is 1.1 or greater. +

+ glXQueryExtensionsString only returns information about GLX extensions. Call + glGetString to get a list of GL extensions. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryServerString.xml b/upstream-man-pages/man2/xhtml/glXQueryServerString.xml new file mode 100644 index 0000000..d6c1b55 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryServerString.xml @@ -0,0 +1,37 @@ + + +glXQueryServerString

Name

glXQueryServerString — return string describing the server

C Specification

const char * glXQueryServerString(Display *  dpy,
 int  screen,
 int  name);

Parameters

dpy

+ Specifies the connection to the X server. +

screen

+ Specifies the screen number. +

name

+ Specifies which string is returned: + one of GLX_VENDOR, GLX_VERSION, or GLX_EXTENSIONS. +

Description

+ glXQueryServerString + returns a pointer to a static, null-terminated string + describing some aspect of the server's GLX extension. The possible values for + name and the format of the strings is the same as for + glXGetClientString. If name is not set to a recognized value, + NULL is returned. +

Notes

+ glXQueryServerString is available only if the GLX version is 1.1 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, the GL version must be 1.1. + If the GLX version is 1.3, the GL version must be 1.2. +

+ glXQueryServerString only returns information about GLX extensions supported by the server. + Call glGetString to get a list of GL extensions. + Call glXGetClientString to get a list of GLX extensions supported by the + client. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXQueryVersion.xml b/upstream-man-pages/man2/xhtml/glXQueryVersion.xml new file mode 100644 index 0000000..810d9d2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXQueryVersion.xml @@ -0,0 +1,30 @@ + + +glXQueryVersion

Name

glXQueryVersion — return the version numbers of the GLX extension

C Specification

Bool glXQueryVersion(Display *  dpy,
 int *  major,
 int *  minor);

Parameters

dpy

+ Specifies the connection to the X server. +

major

+ Returns the major version number of the GLX server extension. +

minor

+ Returns the minor version number of the GLX server extension. +

Description

+ glXQueryVersion returns the major and minor version numbers of the GLX extension + implemented by the server associated with connection dpy. + Implementations with the same major version number are upward compatible, + meaning that the implementation with the higher minor number is a superset + of the version with the lower minor number. +

+ major and minor do not return values if they are specified as + NULL. +

Errors

+ glXQueryVersion returns False if it fails, + True otherwise. +

+ major and minor are not updated when False is returned. +

See Also

+ glXQueryExtension +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXSelectEvent.xml b/upstream-man-pages/man2/xhtml/glXSelectEvent.xml new file mode 100644 index 0000000..c74738f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXSelectEvent.xml @@ -0,0 +1,159 @@ + + +glXSelectEvent

Name

glXSelectEvent — select GLX events for a window or a GLX pixel buffer

C Specification

void glXSelectEvent(Display *  dpy,
 GLXDrawable  draw,
 unsigned long  event_mask);

Parameters

dpy

+ Specifies the connection to the X server. +

draw

+ Specifies a GLX drawable. Must be a GLX pixel buffer or a window. +

event_mask

+ Specifies the events to be returned for draw. +

Description

+ glXSelectEvent sets the GLX event mask for a GLX pixel buffer or a window. + Calling glXSelectEvent overrides any previous event mask that was + set by the client for draw. Note that it does not affect the + event masks that other clients may have specified for draw since + each client rendering to draw has a separate event mask for it. +

+ Currently, only one GLX event, GLX_PBUFFER_CLOBBER_MASK, + can be selected. The following data is returned to the client when a + GLX_PBUFFER_CLOBBER_MASK event occurs: +

+ typedef struct { +

+ int event_type; + + /* GLX_DAMAGED or GLX_SAVED */ +
+ int draw_type; + + /* GLX_WINDOW or GLX_PBUFFER */ +
+ unsigned long serial; + + /* # of last request processed by server */ +
+ Bool send_event; + + /* true if this came for SendEvent request */ +
+ Display *display; + + /* display the event was read from */ +
+ GLXDrawable drawable; + + /* i.d. of Drawable */ +
+ unsigned int buffer_mask; + + /* mask indicating affected buffers */ +
+ int x, y; + + +
+ int width, height; + + +
+ int count; + + /* if nonzero, at least this many more */ +

+ } GLXPbufferClobberEvent; + The valid bit masks used in buffer_mask are: +

+

+ Bitmask + + Corresponding Buffer +
+ GLX_FRONT_LEFT_BUFFER_BIT + + Front left color buffer +
+ GLX_FRONT_RIGHT_BUFFER_BIT + + Front right color buffer +
+ GLX_BACK_LEFT_BUFFER_BIT + + Back left color buffer +
+ GLX_BACK_RIGHT_BUFFER_BIT + + Back right color buffer +
+ GLX_AUX_BUFFERS_BIT + + Auxiliary buffer +
+ GLX_DEPTH_BUFFER_BIT + + Depth buffer +
+ GLX_STENCIL_BUFFER_BIT + + Stencil buffer +
+ GLX_ACCUM_BUFFER_BIT + + Accumulation buffer +

+ A single X server operation can cause several buffer clobber events to be + sent. (e.g., a single GLX pixel buffer may be damaged and cause multiple + buffer clobber events to be generated). Each event specifies one + region of the GLX drawable that was affected by the X Server operation. + The buffer_mask field indicates which color buffers and + ancillary buffers were affected. All the buffer clobber events + generated by a single X server action are guaranteed to be + contiguous in the event queue. The conditions under which this event is + generated and the event_type varies, depending on the type of the + GLX drawable. +

+ When the GLX_AUX_BUFFERS_BIT is set in buffer_mask, then + aux_buffer is set to indicate which buffer was affected. If more + than one aux buffer was affected, then additional events are + generated as part of the same contiguous event group. Each + additional event will have only the GLX_AUX_BUFFERS_BIT set in + buffer_mask, and the aux_buffer field will be set + appropriately. For nonstereo drawables, + GLX_FRONT_LEFT_BUFFER_BIT and GLX_BACK_LEFT_BUFFER_BIT are + used to specify the front and back color buffers. +

+ For preserved GLX pixel buffers, a buffer clobber event with + type GLX_SAVED is generated whenever the contents of the + GLX pixel buffer is moved out of offscreen memory. The event(s) describes which + portions of the GLX pixel buffer were affected. Clients who receive many + buffer clobber events, referring to different save actions, + should consider freeing the GLX pixel buffer resource in order to prevent + the system from thrashing due to insufficient resources. +

+ For an unpreserved GLXPbuffer, a buffer clobber event, with type + GLX_DAMAGED, is generated whenever a portion of the GLX pixel buffer + becomes invalid. The client may wish to regenerate the invalid portions + of the GLX pixel buffer. +

+ For Windows, buffer clobber events, with type GLX_SAVED, occur + whenever an ancillary buffer, associated with the window, gets clobbered + or moved out of off-screen memory. The event contains information + indicating which color buffers and ancillary buffers\(emand which portions + of those buffers\(emwere affected. +

Notes

+ glXSelectEvent is available only if the GLX version is 1.3 or greater. +

+ If the GLX version is 1.1 or 1.0, the GL version must be 1.0. + If the GLX version is 1.2, then the GL version must be 1.1. + If the GLX version is 1.3, then the GL version must be 1.2. +

Errors

+ GLXBadDrawable is generated if draw is not a valid window + or a valid GLX pixel buffer. +

Associated Gets

+ glXGetSelectedEvent +

See Also

+ glXCreatePbuffer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXSwapBuffers.xml b/upstream-man-pages/man2/xhtml/glXSwapBuffers.xml new file mode 100644 index 0000000..2168929 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXSwapBuffers.xml @@ -0,0 +1,49 @@ + + +glXSwapBuffers

Name

glXSwapBuffers — exchange front and back buffers

C Specification

void glXSwapBuffers(Display *  dpy,
 GLXDrawable  drawable);

Parameters

dpy

+ Specifies the connection to the X server. +

drawable

+ Specifies the drawable whose buffers are to be swapped. +

Description

+ glXSwapBuffers promotes the contents of the back buffer of drawable to become + the contents of the front buffer of drawable. + The contents of the back buffer then become undefined. + The update typically takes place during the vertical retrace of + the monitor, + rather than immediately after glXSwapBuffers is called. +

+ glXSwapBuffers performs an implicit glFlush before it returns. + Subsequent OpenGL commands may be issued immediately after calling glXSwapBuffers, + but are not executed until the buffer exchange is completed. +

+ If drawable was not created with respect to a double-buffered visual, + glXSwapBuffers has no effect, + and no error is generated. +

Notes

+ The contents of the back buffer become undefined after + a swap. Note that this applies to pixel buffers as well as windows. +

+ All GLX rendering contexts share the same notion of which are front buffers + and which are back buffers. + One consequence is that when multiple clients are rendering to the same + double-buffered window, + all of them should finish rendering before one of them issues the command + to swap buffers. + The clients are responsible for implementing this synchronization. + Typically this is accomplished by executing glFinish and then + using a semaphore in shared memory to rendezvous before swapping. +

Errors

+ GLXBadDrawable is generated if drawable is not a valid GLX drawable. +

+ GLXBadCurrentWindow is generated if dpy and drawable are + respectively the display and drawable associated with the current + context of the calling thread, and drawable identifies a window that + is no longer valid. +

See Also

+ glFlush +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXUseXFont.xml b/upstream-man-pages/man2/xhtml/glXUseXFont.xml new file mode 100644 index 0000000..49fdf89 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXUseXFont.xml @@ -0,0 +1,120 @@ + + +glXUseXFont

Name

glXUseXFont — create bitmap display lists from an X font

C Specification

void glXUseXFont(Font  font,
 int  first,
 int  count,
 int  listBase);

Parameters

font

+ Specifies the font from which character glyphs are to be taken. +

first

+ Specifies the index of the first glyph to be taken. +

count

+ Specifies the number of glyphs to be taken. +

listBase

+ Specifies the index of the first display list to be generated. +

Description

+ glXUseXFont generates count display lists, + named listBase through + + + + listBase + + + count + - + 1 + + , + each containing a single glBitmap command. + The parameters of the glBitmap command of display list + + + + listBase + + + i + + + are derived from glyph + + + + first + + + i + + . + Bitmap parameters + xorig, + yorig, + width, + and + height + are computed from font metrics as + + + + descent + - + 1 + + , + + + + - + lbearing + + , + + + + rbearing + - + lbearing + + , + and + + + + ascent + + + descent + + , + respectively. + xmove + is taken from the glyph's + width + metric, + and + ymove + is set to zero. + Finally, + the glyph's image is converted to the appropriate format for glBitmap. +

+ Using glXUseXFont may be more efficient than accessing the X font and generating + the display lists explicitly, + both because the display lists are created on the server without requiring + a round trip of the glyph data, + and because the server may choose to delay the creation of each + bitmap until it is accessed. +

+ Empty display lists are created for all glyphs that are requested and + are not defined in font. + glXUseXFont is ignored if there is no current GLX context. +

Errors

+ BadFont is generated if font is not a valid font. +

+ GLXBadContextState is generated if the current GLX context is + in display-list construction mode. +

+ GLXBadCurrentWindow is generated if the drawable associated + with the current context of the calling thread is a window, and that + window is no longer valid. +

See Also

+ glBitmap, + glXMakeCurrent +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXWaitGL.xml b/upstream-man-pages/man2/xhtml/glXWaitGL.xml new file mode 100644 index 0000000..32d5ac6 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXWaitGL.xml @@ -0,0 +1,28 @@ + + +glXWaitGL

Name

glXWaitGL — complete GL execution prior to subsequent X calls

C Specification

void glXWaitGL( void);

Description

+ GL rendering calls made prior to glXWaitGL are guaranteed to be + executed before X rendering calls made after glXWaitGL. + Although this same result can be achieved using glFinish, + glXWaitGL does not require a round trip to the server, + and it is therefore more efficient in cases where client and server + are on separate machines. +

+ glXWaitGL is ignored if there is no current GLX context. +

Notes

+ glXWaitGL may or may not flush the X stream. +

Errors

+ GLXBadCurrentWindow is generated if the drawable associated + with the current context of the calling thread is a window, and that + window is no longer valid. +

See Also

+ glFinish, + glFlush, + glXWaitX, + XSync +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/glXWaitX.xml b/upstream-man-pages/man2/xhtml/glXWaitX.xml new file mode 100644 index 0000000..79da8d6 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/glXWaitX.xml @@ -0,0 +1,28 @@ + + +glXWaitX

Name

glXWaitX — complete X execution prior to subsequent GL calls

C Specification

void glXWaitX( void);

Description

+ X rendering calls made prior to glXWaitX are guaranteed to be + executed before GL rendering calls made after glXWaitX. + Although the same result can be achieved using XSync, + glXWaitX does not require a round trip to the server, + and it is therefore more efficient in cases where client and server + are on separate machines. +

+ glXWaitX is ignored if there is no current GLX context. +

Notes

+ glXWaitX may or may not flush the GL stream. +

Errors

+ GLXBadCurrentWindow is generated if the drawable associated + with the current context of the calling thread is a window, and that + window is no longer valid. +

See Also

+ glFinish, + glFlush, + glXWaitGL, + XSync +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBeginCurve.xml b/upstream-man-pages/man2/xhtml/gluBeginCurve.xml new file mode 100644 index 0000000..d5fcf86 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBeginCurve.xml @@ -0,0 +1,44 @@ + + +gluBeginCurve

Name

gluBeginCurve — delimit a NURBS curve definition

C Specification

void gluBeginCurve(GLUnurbs*  nurb);

C Specification

void gluEndCurve(GLUnurbs*  nurb);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

Description

+ Use gluBeginCurve to mark the beginning of a NURBS + curve definition. + After + calling gluBeginCurve, make one or more calls to + gluNurbsCurve to define the attributes of the curve. + Exactly one of the calls to gluNurbsCurve must have + a curve type of GLU_MAP1_VERTEX_3 or GLU_MAP1_VERTEX_4. + To mark the end of the NURBS curve definition, call gluEndCurve. +

+ GL evaluators are used to render the NURBS curve as a series of line + segments. + Evaluator state is preserved during rendering + with glPushAttrib(GLU_EVAL_BIT) and + glPopAttrib(). + See the glPushAttrib reference page for details on exactly what state + these calls preserve. +

Example

+ The following commands render a textured NURBS curve with normals; + texture coordinates and normals are also specified as NURBS curves: +

+gluBeginCurve(nobj);
+   gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2);
+   gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL);
+   gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);
+gluEndCurve(nobj);
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBeginPolygon.xml b/upstream-man-pages/man2/xhtml/gluBeginPolygon.xml new file mode 100644 index 0000000..9a6e6f2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBeginPolygon.xml @@ -0,0 +1,54 @@ + + +gluBeginPolygon

Name

gluBeginPolygon — delimit a polygon description

C Specification

void gluBeginPolygon(GLUtesselator*  tess);

C Specification

void gluEndPolygon(GLUtesselator*  tess);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

Description

+ gluBeginPolygon and gluEndPolygon delimit the definition of a + nonconvex polygon. + To define such a polygon, first call gluBeginPolygon. + Then define the contours of the polygon + by calling + gluTessVertex for each vertex + and gluNextContour to start each new contour. + Finally, call gluEndPolygon + to signal the end of the definition. + See the gluTessVertex and + gluNextContour reference pages for more details. +

+ Once gluEndPolygon is called, the polygon is tessellated, and the + resulting triangles are described through callbacks. + See gluTessCallback for descriptions of the callback functions. +

Notes

+ This command is obsolete and is provided for backward compatibility + only. Calls to gluBeginPolygon are mapped to + gluTessBeginPolygon + followed by + gluTessBeginContour. Calls to gluEndPolygon are mapped + to gluTessEndContour followed by gluTessEndPolygon. +

Example

+ A quadrilateral with a triangular hole in it can be described like this: +

+gluBeginPolygon(tobj);
+   gluTessVertex(tobj, v1, v1);
+   gluTessVertex(tobj, v2, v2);
+   gluTessVertex(tobj, v3, v3);
+   gluTessVertex(tobj, v4, v4);
+gluNextContour(tobj, GLU_INTERIOR);
+   gluTessVertex(tobj, v5, v5);
+   gluTessVertex(tobj, v6, v6);
+   gluTessVertex(tobj, v7, v7);
+gluEndPolygon(tobj);
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBeginSurface.xml b/upstream-man-pages/man2/xhtml/gluBeginSurface.xml new file mode 100644 index 0000000..7fd4bfa --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBeginSurface.xml @@ -0,0 +1,48 @@ + + +gluBeginSurface

Name

gluBeginSurface — delimit a NURBS surface definition

C Specification

void gluBeginSurface(GLUnurbs*  nurb);

C Specification

void gluEndSurface(GLUnurbs*  nurb);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

Description

+ Use gluBeginSurface to mark the beginning of a NURBS + surface definition. After + calling gluBeginSurface, make one or more calls to + gluNurbsSurface to define the attributes of the surface. + Exactly one of these calls to gluNurbsSurface must have a + surface type of GLU_MAP2_VERTEX_3 or GLU_MAP2_VERTEX_4. + To mark the end of the NURBS surface definition, call + gluEndSurface. +

+ Trimming of NURBS surfaces is supported with gluBeginTrim, + gluPwlCurve, gluNurbsCurve, and gluEndTrim. See the + gluBeginTrim reference page for details. +

+ GL evaluators are used to render the NURBS surface as a set of polygons. + Evaluator state is preserved during rendering + with glPushAttrib(GLU_EVAL_BIT) and + glPopAttrib. + See the glPushAttrib reference page for details on exactly what state + these calls preserve. +

Example

+ The following commands render a textured NURBS surface with normals; + the texture coordinates and normals are also described as NURBS surfaces: +

+gluBeginSurface(nobj);
+   gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2);
+   gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL);
+   gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4);
+gluEndSurface(nobj);
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBeginTrim.xml b/upstream-man-pages/man2/xhtml/gluBeginTrim.xml new file mode 100644 index 0000000..43e9830 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBeginTrim.xml @@ -0,0 +1,84 @@ + + +gluBeginTrim

Name

gluBeginTrim — delimit a NURBS trimming loop definition

C Specification

void gluBeginTrim(GLUnurbs*  nurb);

C Specification

void gluEndTrim(GLUnurbs*  nurb);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

Description

+ Use gluBeginTrim to mark the beginning of a + trimming loop and gluEndTrim to mark the end + of a trimming loop. A trimming loop is + a set of oriented curve segments (forming a closed curve) that + define boundaries of a NURBS surface. You include these + trimming loops in the definition of a NURBS + surface, between calls to gluBeginSurface and gluEndSurface. +

+ The definition for a NURBS surface can contain many + trimming loops. For example, if you wrote a definition + for a NURBS surface that resembled a rectangle with + a hole punched out, the definition would contain two + trimming loops. One loop would define the outer edge + of the rectangle; the other would define + the hole punched out of the rectangle. The definitions + of each of these trimming loops would be bracketed by a + gluBeginTrim/gluEndTrim pair. +

+ The definition of a single closed trimming loop can consist + of multiple curve segments, each described as a piecewise + linear curve (see gluPwlCurve) or as a single NURBS + curve (see gluNurbsCurve), or as a combination of + both in any order. The only library calls that can + appear in a trimming loop definition (between the calls + to gluBeginTrim and gluEndTrim) are + gluPwlCurve and gluNurbsCurve. +

+ The area of the NURBS surface that is displayed is the + region in the domain to the left of the trimming curve + as the curve parameter increases. Thus, the retained + region of the NURBS surface is inside a + counterclockwise trimming loop and outside a clockwise + trimming loop. For the rectangle mentioned earlier, + the trimming loop for the outer edge of the rectangle runs + counterclockwise, while the trimming loop for the punched-out hole + runs clockwise. +

+ If you use more than one curve to define a single trimming + loop, the curve segments must form a closed loop (that is, + the endpoint of each curve must be the starting point of the + next curve, and the endpoint of the final curve must + be the starting point of the first curve). If the + endpoints of the curve are sufficiently close together + but not exactly coincident, they will be coerced to match. + If the endpoints are not sufficiently close, an error results + (see gluNurbsCallback). +

+ If a trimming loop definition contains multiple curves, + the direction of the curves must be consistent (that is, the + inside must be to the left of all of the curves). Nested + trimming loops are legal as long as the curve orientations + alternate correctly. + If trimming curves are self-intersecting, + or intersect one another, an error results. +

+ If no trimming information is given + for a NURBS surface, the entire surface is drawn. +

Example

+ This code fragment defines a trimming loop that consists of one + piecewise linear curve, and two NURBS curves: +

+gluBeginTrim(nobj);
+   gluPwlCurve(..., GLU_MAP1_TRIM_2);
+   gluNurbsCurve(..., GLU_MAP1_TRIM_2);
+   gluNurbsCurve(..., GLU_MAP1_TRIM_3);
+gluEndTrim(nobj);
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBuild1DMipmapLevels.xml b/upstream-man-pages/man2/xhtml/gluBuild1DMipmapLevels.xml new file mode 100644 index 0000000..6078b85 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBuild1DMipmapLevels.xml @@ -0,0 +1,289 @@ + + +gluBuild1DMipmapLevels

Name

gluBuild1DMipmapLevels — builds a subset of one-dimensional mipmap levels

C Specification

GLint gluBuild1DMipmapLevels(GLenum  target,
 GLint  internalFormat,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 GLint  level,
 GLint  base,
 GLint  max,
 const void *  data);

Parameters

target

+ Specifies the target texture. Must be GLU_TEXTURE_1D. +

internalFormat

+ Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. +

width

+ Specifies the width in pixels of the texture image. + This should be a power of 2. +

format

+ Specifies the format of the pixel data. + Must be one of: + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. +

type

+ Specifies the data type for data. + Must be one of: GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

level

+ Specifies the mipmap level of the image data. +

base

+ Specifies the minimum mipmap level to pass to glTexImage1D. +

max

+ Specifies the maximum mipmap level to pass to glTexImage1D. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ gluBuild1DMipmapLevels builds a subset of prefiltered one-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. +

+ A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). +

+ A series of mipmap levels from base to max is built by decimating + data in half + until size + + + + 1 + × + 1 + + + is reached. At each level, each texel in the + halved mipmap level is an average of the corresponding two texels in the larger + mipmap level. + glTexImage1D is called to load these mipmap levels from base + to max. If max is larger than the highest mipmap level for the + texture of the specified size, then a GLU error code is returned (see + gluErrorString) and nothing is loaded. +

+ For example, if level is 2 and width is 16, the + following levels are possible: + + + + 16 + × + 1 + + , + + + + 8 + × + 1 + + , + + + + 4 + × + 1 + + , + + + + 2 + × + 1 + + , + + + + 1 + × + 1 + + . + These correspond + to levels 2 through 6 respectively. + If base is 3 and max is 5, then only mipmap levels + + + + 8 + × + 1 + + , + + + + 4 + × + 1 + + + and + + + + 2 + × + 1 + + + are + loaded. However, if max is 7, then an error is returned and nothing is + loaded since max is larger than the highest mipmap level which is, in + this case, 6. +

+ The highest mipmap level can be derived from the formula + + + + log + 2 + + ⁡ + + + width + × + 2 + level + + + + + . +

+ See the glTexImage1D reference page for a description of the + acceptable values for type parameter. See the glDrawPixels + reference page for a description of the acceptable values + for level parameter. +

Notes

+ gluBuild1DMipmapLevels is only available if the GLU version is 1.3 or greater. +

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if level > base, base < 0, + max < base or max is > the highest mipmap level for data. +

+ GLU_INVALID_VALUE is returned if width is < 1. +

+ GLU_INVALID_ENUM is returned if internalFormat, format, or type are not + legal. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBuild1DMipmaps.xml b/upstream-man-pages/man2/xhtml/gluBuild1DMipmaps.xml new file mode 100644 index 0000000..dac33c2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBuild1DMipmaps.xml @@ -0,0 +1,294 @@ + + +gluBuild1DMipmaps

Name

gluBuild1DMipmaps — builds a one-dimensional mipmap

C Specification

GLint gluBuild1DMipmaps(GLenum  target,
 GLint  internalFormat,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 const void *  data);

Parameters

target

+ Specifies the target texture. Must be GLU_TEXTURE_1D. +

internalFormat

+ Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. +

width

+ Specifies the width, in pixels, of the texture image. +

format

+ Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. +

type

+ Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ gluBuild1DMipmaps builds a series of prefiltered one-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. +

+ A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). +

+ Initially, the width of data is checked to see if it is + a power of 2. If not, a copy of data is scaled up or down to the + nearest power of 2. (If width is exactly between powers of 2, then + the copy of data will scale upwards.) This copy will be used for + subsequent mipmapping operations described below. + For example, if width is 57, then a copy of data + will scale up to 64 before mipmapping + takes place. +

+ Then, proxy textures (see glTexImage1D) are used to determine if + the implementation can fit the requested texture. If not, width is + continually halved until it fits. +

+ Next, a series of mipmap levels is built by decimating a copy of + data in half + until size + + + + 1 + × + 1 + + + is reached. At each level, each texel in the + halved mipmap level is an average of the corresponding two texels in the larger + mipmap level. +

+ glTexImage1D is called to load each of these mipmap levels. + Level 0 is a copy of data. + The highest level is + + + + + log + 2 + + + ⁡ + + width + + + . + For example, if width is 64 and the implementation can store a texture of + this size, the following mipmap levels are + built: + + + + 64 + × + 1 + + , + + + + 32 + × + 1 + + , + + + + 16 + × + 1 + + , + + + + 8 + × + 1 + + , + + + + 4 + × + 1 + + , + + + + 2 + × + 1 + + , + and + + + + 1 + × + 1 + + . + These correspond to + levels 0 through 6, respectively. +

+ See the glTexImage1D reference page for a description of the + acceptable values for the type parameter. See the glDrawPixels + reference page for a description of the acceptable values + for the data parameter. +

Notes

+ Note that there is no direct way of querying the maximum level. This can + be derived indirectly via glGetTexLevelParameter. First, query + for the + width actually used at level 0. + (The width may not be equal to width since + proxy textures might have scaled it to fit the implementation.) + Then the maximum + level can be derived from the formula + + + + + log + 2 + + + ⁡ + + width + + + . +

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater, and if the GLU version is 1.3 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if width is < 1. +

+ GLU_INVALID_ENUM is returned if format or type are not legal. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBuild2DMipmapLevels.xml b/upstream-man-pages/man2/xhtml/gluBuild2DMipmapLevels.xml new file mode 100644 index 0000000..0ff9cd2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBuild2DMipmapLevels.xml @@ -0,0 +1,315 @@ + + +gluBuild2DMipmapLevels

Name

gluBuild2DMipmapLevels — builds a subset of two-dimensional mipmap levels

C Specification

GLint gluBuild2DMipmapLevels(GLenum  target,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 GLint  level,
 GLint  base,
 GLint  max,
 const void *  data);

Parameters

target

+ Specifies the target texture. Must be GLU_TEXTURE_2D. +

internalFormat

+ Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. +

width, height

+ Specifies the width and height, respectively, in pixels of the texture image. + These should be a power of 2. +

format

+ Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. +

type

+ Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

level

+ Specifies the mipmap level of the image data. +

base

+ Specifies the minimum mipmap level to pass to glTexImage2D. +

max

+ Specifies the maximum mipmap level to pass to glTexImage2D. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ gluBuild2DMipmapLevels builds a subset of prefiltered two-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. +

+ A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). +

+ A series of mipmap levels from base to max is built by decimating + data in half along + both dimensions until size + + + + 1 + × + 1 + + + is reached. At each level, each texel in the + halved mipmap level is an average of the corresponding four texels in the larger + mipmap level. (In the case of rectangular images, the decimation will ultimately + reach an + + + + N + × + 1 + + + or + + + + 1 + × + N + + + configuration. Here, two texels are + averaged instead.) + glTexImage2D is called to load these mipmap levels from base + to max. If max is larger than the highest mipmap level for the + texture of the specified size, then a GLU error code is returned (see + gluErrorString) and nothing is loaded. +

+ For example, if level is 2 and width is 16 and height is 8, the + following levels are possible: + + + + 16 + × + 8 + + , + + + + 8 + × + 4 + + , + + + + 4 + × + 2 + + , + + + + 2 + × + 1 + + , + + + + 1 + × + 1 + + . + These correspond to levels 2 through 6 + respectively. If base is 3 and max is 5, then only mipmap levels + + + + 8 + × + 4 + + , + + + + 4 + × + 2 + + , + and + + + + 2 + × + 1 + + + are loaded. However, if max + is 7, then an error is returned and nothing is loaded since max is + larger than the highest mipmap level which is, in this case, 6. +

+ The highest mipmap level can be derived from the formula + + + + log + 2 + + ⁡ + + + + max + ⁡ + + width + height + + + × + 2 + level + + + + + . +

+ See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. +

Notes

+ gluBuild2DMipmapLevels is only available if the GLU version is 1.3 or greater. +

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if level > base, base < 0, + max < base, or max is > the highest mipmap level for data. +

+ GLU_INVALID_VALUE is returned if width or height is < 1. +

+ GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBuild2DMipmaps.xml b/upstream-man-pages/man2/xhtml/gluBuild2DMipmaps.xml new file mode 100644 index 0000000..fa2cfb3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBuild2DMipmaps.xml @@ -0,0 +1,328 @@ + + +gluBuild2DMipmaps

Name

gluBuild2DMipmaps — builds a two-dimensional mipmap

C Specification

GLint gluBuild2DMipmaps(GLenum  target,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const void *  data);

Parameters

target

+ Specifies the target texture. Must be GLU_TEXTURE_2D. +

internalFormat

+ Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. +

width, height

+ Specifies in pixels the width and height, respectively, of the texture image. +

format

+ Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. +

type

+ Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ gluBuild2DMipmaps builds a series of prefiltered two-dimensional texture maps of decreasing + resolutions called a mipmap. This is used for the antialiasing of + texture-mapped primitives. +

+ A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). +

+ Initially, the width and height of data are checked to see if they + are a power of 2. If not, a copy of data (not data), is scaled up + or down to the nearest power of 2. This copy will be used for subsequent + mipmapping operations described below. (If width or height is exactly + between powers of 2, then the copy of data will scale upwards.) For + example, if width is 57 and height is 23, then a copy of data will + scale up to 64 in width and down to 16 in depth, before mipmapping takes + place. +

+ Then, proxy textures (see glTexImage2D) are used to determine if + the implementation can fit the requested texture. If not, both dimensions + are continually halved until it fits. (If the OpenGL version is \(<= 1.0, + both maximum texture dimensions are clamped to the value returned + by glGetIntegerv with the argument GLU_MAX_TEXTURE_SIZE.) +

+ Next, a series of mipmap levels is built by decimating a copy of data + in half along both dimensions until size + + + + 1 + × + 1 + + + is reached. At + each level, + each texel in the halved mipmap level is an average of the corresponding + four texels in the larger mipmap level. (In the case of rectangular + images, the decimation will ultimately reach an + + + + N + × + 1 + + + or + + + + 1 + × + N + + + configuration. Here, two texels are averaged instead.) +

+ glTexImage2D is called to load each of these mipmap levels. + Level 0 is a copy of data. The highest level is + + + + + log + 2 + + + ⁡ + + + max + ⁡ + + width + height + + + + + . + For example, + if width is 64 and height is 16 + and the implementation can store a texture of this size, the following + mipmap levels are built: + + + + 64 + × + 16 + + , + + + + 32 + × + 8 + + , + + + + 16 + × + 4 + + , + + + + 8 + × + 2 + + , + + + + 4 + × + 1 + + , + + + + 2 + × + 1 + + , + and + + + + 1 + × + 1 + + + These + correspond to levels 0 through 6, respectively. +

+ See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. +

Notes

+ Note that there is no direct way of querying the maximum level. This can + be derived indirectly via glGetTexLevelParameter. First, query + for the width and height actually used at level 0. (The width and + height may not be equal to width and height respectively since proxy + textures might have scaled them to fit the implementation.) Then the + maximum level can be derived from the formula + + + + + log + 2 + + + ⁡ + + + max + ⁡ + + width + height + + + + + . +

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater and if the GLU version is 1.3 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if width or height is < 1. +

+ GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBuild3DMipmapLevels.xml b/upstream-man-pages/man2/xhtml/gluBuild3DMipmapLevels.xml new file mode 100644 index 0000000..b9a5bc2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBuild3DMipmapLevels.xml @@ -0,0 +1,315 @@ + + +gluBuild3DMipmapLevels

Name

gluBuild3DMipmapLevels — builds a subset of three-dimensional mipmap levels

C Specification

GLint gluBuild3DMipmapLevels(GLenum  target,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLenum  type,
 GLint  level,
 GLint  base,
 GLint  max,
 const void *  data);

Parameters

target

+ Specifies the target texture. Must be GLU_TEXTURE_3D. +

internalFormat

+ Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. +

width, height, depth

+ Specifies in pixels the width, height and depth respectively, of the texture + image. These should be a power of 2. +

format

+ Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. +

type

+ Specifies the data type for data. + Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

level

+ Specifies the mipmap level of the image data. +

base

+ Specifies the minimum mipmap level to pass to glTexImage3D. +

max

+ Specifies the maximum mipmap level to pass to glTexImage3D. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ gluBuild3DMipmapLevels builds a subset of prefiltered three-dimensional texture maps of + decreasing resolutions called a mipmap. This is used for the antialiasing of + texture mapped primitives. +

+ A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). +

+ A series of mipmap levels from base to max is built by + decimating data in half along both dimensions until size + + + + 1 + × + 1 + × + 1 + + + is reached. At each level, each texel in the halved mipmap + level is an average of the corresponding eight texels in the larger + mipmap level. (If exactly one of the dimensions is 1, four texels are + averaged. If exactly two of the dimensions are 1, two texels are + averaged.) glTexImage3D is called to load these mipmap levels + from base to max. If max is larger than the highest mipmap + level for the texture of the specified size, then a GLU error code is + returned (see gluErrorString) and nothing is loaded. +

+ For example, if level is 2 and width is 16, height is 8 and depth + is 4, the following levels are possible: + + + + 16 + × + 8 + × + 4 + + , + + + + 8 + × + 4 + × + 2 + + , + + + + 4 + × + 2 + × + 1 + + , + + + + 2 + × + 1 + × + 1 + + , + + + + 1 + × + 1 + × + 1 + + . + These correspond to levels 2 through 6 respectively. If base is + 3 and max is 5, then only mipmap levels + + + + 8 + × + 4 + × + 2 + + , + + + + 4 + × + 2 + × + 1 + + , + and + + + + 2 + × + 1 + × + 1 + + + are loaded. However, if + max is 7, then an error is returned and nothing is loaded, since + max is larger than the highest mipmap level which is, in this case, + 6. +

+ The highest mipmap level can be derived from the formula + + + + log + 2 + + ⁡ + + + + max + ⁡ + + width + height + depth + + + × + 2 + level + + + + + . +

+ See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. +

Notes

+ gluBuild3DMipmapLevels is only available if the GLU version is 1.3 or greater. +

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if level > base, base < 0, + max < base, or max is > the highest mipmap level for data. +

+ GLU_INVALID_VALUE is returned if width, height, or depth is < 1. +

+ GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluBuild3DMipmaps.xml b/upstream-man-pages/man2/xhtml/gluBuild3DMipmaps.xml new file mode 100644 index 0000000..0e6b96a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluBuild3DMipmaps.xml @@ -0,0 +1,329 @@ + + +gluBuild3DMipmaps

Name

gluBuild3DMipmaps — builds a three-dimensional mipmap

C Specification

GLint gluBuild3DMipmaps(GLenum  target,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLenum  type,
 const void *  data);

Parameters

target

+ Specifies the target texture. Must be GLU_TEXTURE_3D. +

internalFormat

+ Requests the internal storage format of the texture image. The most + current version of the SGI implementation of GLU does not check this + value for validity before passing it on to the underlying OpenGL + implementation. A value that is not accepted by the OpenGL + implementation will lead to an OpenGL error. The benefit of not + checking this value at the GLU level is that OpenGL extensions can add + new internal texture formats without requiring a revision of the GLU + implementation. Older implementations of GLU check this value and + raise a GLU error if it is not 1, 2, 3, or 4 or one of the following + symbolic constants: + GLU_ALPHA, + GLU_ALPHA4, + GLU_ALPHA8, + GLU_ALPHA12, + GLU_ALPHA16, + GLU_LUMINANCE, + GLU_LUMINANCE4, + GLU_LUMINANCE8, + GLU_LUMINANCE12, + GLU_LUMINANCE16, + GLU_LUMINANCE_ALPHA, + GLU_LUMINANCE4_ALPHA4, + GLU_LUMINANCE6_ALPHA2, + GLU_LUMINANCE8_ALPHA8, + GLU_LUMINANCE12_ALPHA4, + GLU_LUMINANCE12_ALPHA12, + GLU_LUMINANCE16_ALPHA16, + GLU_INTENSITY, + GLU_INTENSITY4, + GLU_INTENSITY8, + GLU_INTENSITY12, + GLU_INTENSITY16, + GLU_RGB, + GLU_R3_G3_B2, + GLU_RGB4, + GLU_RGB5, + GLU_RGB8, + GLU_RGB10, + GLU_RGB12, + GLU_RGB16, + GLU_RGBA, + GLU_RGBA2, + GLU_RGBA4, + GLU_RGB5_A1, + GLU_RGBA8, + GLU_RGB10_A2, + GLU_RGBA12, or + GLU_RGBA16. +

width, height, depth

+ Specifies in pixels the width, height and depth respectively, in pixels + of the texture image. +

format

+ Specifies the format of the pixel data. + Must be one of + GLU_COLOR_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, or + GLU_LUMINANCE_ALPHA. +

type

+ Specifies the data type for data. + Must be one of: + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ gluBuild3DMipmaps builds a series of prefiltered three-dimensional texture maps of + decreasing resolutions called a mipmap. This is used for the antialiasing of + texture-mapped primitives. +

+ A return value of zero indicates success, otherwise a GLU error code is + returned (see gluErrorString). +

+ Initially, the width, height and depth of data are checked to + see if they are a power of 2. If not, a copy of data is made and + scaled up or down to the nearest power of 2. (If width, height, or + depth is exactly between powers of 2, then the copy of data will + scale upwards.) This copy will be used for subsequent mipmapping + operations described below. For example, if width is 57, height is + 23, and depth is 24, then a copy of data will scale up to 64 in + width, down to 16 in height, and up to 32 in depth before mipmapping + takes place. +

+ Then, proxy textures (see glTexImage3D) are used to determine if + the implementation can fit the requested texture. If not, all three dimensions + are continually halved until it fits. +

+ Next, a series of mipmap levels is built by decimating a copy of data + in half along all three dimensions until size + + + + 1 + × + 1 + × + 1 + + + is + reached. At each level, each texel in the halved mipmap level is an + average of the corresponding eight texels in the larger mipmap + level. (If exactly one of the dimensions is 1, four texels are averaged. + If exactly two of the dimensions are 1, two texels are averaged.) +

+ glTexImage3D is called to load each of these mipmap levels. + Level 0 is a copy of data. The highest level is + + + + + log + 2 + + + ⁡ + + + max + ⁡ + + width + height + depth + + + + + . + For example, if width is 64, height is + 16, and depth is 32, and the implementation can store a texture of this + size, the following mipmap levels are built: + + + + 64 + × + 16 + × + 32 + + , + + + + 32 + × + 8 + × + 16 + + , + + + + 16 + × + 4 + × + 8 + + , + + + + 8 + × + 2 + × + 4 + + , + + + + 4 + × + 1 + × + 2 + + , + + + + 2 + × + 1 + × + 1 + + , + and + + + + 1 + × + 1 + × + 1 + + . + These correspond + to levels 0 through 6, respectively. +

+ See the glTexImage1D reference page for a description of the + acceptable values for format parameter. See the glDrawPixels + reference page for a description of the acceptable values + for type parameter. +

Notes

+ Note that there is no direct way of querying the maximum level. This can + be derived indirectly via glGetTexLevelParameter. First, query + the width, height, and depth actually used at level 0. (The width, + height, and depth may not be equal to width, height, and depth + respectively since proxy textures might have scaled them to fit the + implementation.) Then the maximum level can be derived from the formula + + + + + log + 2 + + + ⁡ + + + max + ⁡ + + width + height + depth + + + + + . +

+ gluBuild3DMipmaps is only available if the GLU version is 1.3 or greater. +

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if width, height, or depth is < 1. +

+ GLU_INVALID_ENUM is returned if internalFormat, format, or type is not + legal. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if type is GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluCheckExtension.xml b/upstream-man-pages/man2/xhtml/gluCheckExtension.xml new file mode 100644 index 0000000..671d08d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluCheckExtension.xml @@ -0,0 +1,36 @@ + + +gluCheckExtension

Name

gluCheckExtension — determines if an extension name is supported

C Specification

GLboolean gluCheckExtension(const GLubyte *  extName,
 const GLubyte *  extString);

Parameters

extName

+ Specifies an extension name. +

extString

+ Specifies a space-separated list of extension names supported. +

Description

+ gluCheckExtension returns GLU_TRUE if extName is supported otherwise + GLU_FALSE is returned. +

+ This is used to check for the presence for OpenGL, GLU, or GLX extension names + by passing the extension strings returned by glGetString, + gluGetString, glXGetClientString, + glXQueryExtensionsString, or glXQueryServerString, + respectively, as extString. +

Notes

+ Cases where one extension name is a substring of another are + correctly handled. +

+ There may or may not be leading or trailing blanks in extString. +

+ Extension names should not contain embedded spaces. +

+ All strings are null-terminated. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluCylinder.xml b/upstream-man-pages/man2/xhtml/gluCylinder.xml new file mode 100644 index 0000000..bf7c33d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluCylinder.xml @@ -0,0 +1,54 @@ + + +gluCylinder

Name

gluCylinder — draw a cylinder

C Specification

void gluCylinder(GLUquadric*  quad,
 GLdouble  base,
 GLdouble  top,
 GLdouble  height,
 GLint  slices,
 GLint  stacks);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

base

+ Specifies the radius of the cylinder at z = 0. +

top

+ Specifies the radius of the cylinder at z = height. +

height

+ Specifies the height of the cylinder. +

slices

+ Specifies the number of subdivisions around the z axis. +

stacks

+ Specifies the number of subdivisions along the z axis. +

Description

+ gluCylinder draws a cylinder oriented along the z axis. The base of the cylinder + is placed at z = 0 and the top at + + + + z + = + height + + . + Like a sphere, + a cylinder is subdivided around the z axis into slices and along the + z axis into stacks. +

+ Note that if top is set to 0.0, this routine generates a cone. +

+ If the orientation is set to GLU_OUTSIDE + (with gluQuadricOrientation), then any generated normals + point away from the z axis. Otherwise, they point toward the + z axis. +

+ If texturing is turned on (with gluQuadricTexture), then texture + coordinates are generated so that t ranges linearly from 0.0 + at z = 0 to 1.0 at z = height, and s + ranges from 0.0 at the +y axis, to 0.25 at the +x axis, + to 0.5 at the -y axis, to 0.75 at the \-x axis, + and back to 1.0 at the +y axis. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluDeleteNurbsRenderer.xml b/upstream-man-pages/man2/xhtml/gluDeleteNurbsRenderer.xml new file mode 100644 index 0000000..6589b4c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluDeleteNurbsRenderer.xml @@ -0,0 +1,17 @@ + + +gluDeleteNurbsRenderer

Name

gluDeleteNurbsRenderer — destroy a NURBS object

C Specification

void gluDeleteNurbsRenderer(GLUnurbs*  nurb);

Parameters

nurb

+ Specifies the NURBS object to be destroyed. +

Description

+ gluDeleteNurbsRenderer destroys the NURBS object (which was created with + gluNewNurbsRenderer) and frees any memory it uses. + Once + gluDeleteNurbsRenderer has been called, nurb cannot be used again. +

See Also

+ gluNewNurbsRenderer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluDeleteQuadric.xml b/upstream-man-pages/man2/xhtml/gluDeleteQuadric.xml new file mode 100644 index 0000000..361520f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluDeleteQuadric.xml @@ -0,0 +1,16 @@ + + +gluDeleteQuadric

Name

gluDeleteQuadric — destroy a quadrics object

C Specification

void gluDeleteQuadric(GLUquadric*  quad);

Parameters

quad

+ Specifies the quadrics object to be destroyed. +

Description

+ gluDeleteQuadric destroys the quadrics object (created with gluNewQuadric) + and frees any memory it uses. + Once gluDeleteQuadric has been called, quad cannot be used again. +

See Also

+ gluNewQuadric +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluDeleteTess.xml b/upstream-man-pages/man2/xhtml/gluDeleteTess.xml new file mode 100644 index 0000000..18a761a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluDeleteTess.xml @@ -0,0 +1,17 @@ + + +gluDeleteTess

Name

gluDeleteTess — destroy a tessellation object

C Specification

void gluDeleteTess(GLUtesselator*  tess);

Parameters

tess

+ Specifies the tessellation object to destroy. +

Description

+ gluDeleteTess destroys the indicated tessellation object (which was created + with gluNewTess) and frees any memory that it used. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluDisk.xml b/upstream-man-pages/man2/xhtml/gluDisk.xml new file mode 100644 index 0000000..599a49e --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluDisk.xml @@ -0,0 +1,56 @@ + + +gluDisk

Name

gluDisk — draw a disk

C Specification

void gluDisk(GLUquadric*  quad,
 GLdouble  inner,
 GLdouble  outer,
 GLint  slices,
 GLint  loops);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

inner

+ Specifies the inner radius of the disk (may be 0). +

outer

+ Specifies the outer radius of the disk. +

slices

+ Specifies the number of subdivisions around the z axis. +

loops

+ Specifies the number of concentric rings about the origin into which + the disk is subdivided. +

Description

+ gluDisk renders a disk on the z = 0 plane. The disk has a radius of + outer and contains a concentric circular hole with a radius + of inner. If inner is 0, then no hole is generated. The disk is + subdivided around the z axis into slices (like pizza slices) and also + about the z axis into rings + (as specified by slices and loops, respectively). +

+ With respect to orientation, the +z side of the disk is considered to be + ``outside'' (see gluQuadricOrientation). + This means that if the + orientation is set to GLU_OUTSIDE, then any normals generated + point along the +z axis. Otherwise, they point along the \-z + axis. +

+ If texturing has been turned on (with gluQuadricTexture), + texture coordinates are generated + linearly such that where + + + + r + = + outer + + , + the value at (r, 0, 0) is + (1, 0.5), at (0, r, 0) it is (0.5, 1), at (\-r, 0, 0) + it is (0, 0.5), and + at (0, \-r, 0) it is (0.5, 0). +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluEndCurve.xml b/upstream-man-pages/man2/xhtml/gluEndCurve.xml new file mode 100644 index 0000000..711685c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluEndCurve.xml @@ -0,0 +1,4 @@ + + + +gluEndCurve diff --git a/upstream-man-pages/man2/xhtml/gluEndPolygon.xml b/upstream-man-pages/man2/xhtml/gluEndPolygon.xml new file mode 100644 index 0000000..aa3c24a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluEndPolygon.xml @@ -0,0 +1,4 @@ + + + +gluEndPolygon diff --git a/upstream-man-pages/man2/xhtml/gluEndSurface.xml b/upstream-man-pages/man2/xhtml/gluEndSurface.xml new file mode 100644 index 0000000..6ed96ef --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluEndSurface.xml @@ -0,0 +1,4 @@ + + + +gluEndSurface diff --git a/upstream-man-pages/man2/xhtml/gluEndTrim.xml b/upstream-man-pages/man2/xhtml/gluEndTrim.xml new file mode 100644 index 0000000..ae91c30 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluEndTrim.xml @@ -0,0 +1,4 @@ + + + +gluEndTrim diff --git a/upstream-man-pages/man2/xhtml/gluErrorString.xml b/upstream-man-pages/man2/xhtml/gluErrorString.xml new file mode 100644 index 0000000..c3cd956 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluErrorString.xml @@ -0,0 +1,30 @@ + + +gluErrorString

Name

gluErrorString — produce an error string from a GL or GLU error code

C Specification

const GLubyte * gluErrorString(GLenum  error);

Parameters

error

+ Specifies a GL or GLU error code. +

Description

+ gluErrorString produces an error string from a GL or GLU error code. The string + is in ISO Latin 1 format. For example, + gluErrorString(GLU_OUT_OF_MEMORY) returns the string + out of memory. +

+ The standard GLU error codes are GLU_INVALID_ENUM, + GLU_INVALID_VALUE, + and GLU_OUT_OF_MEMORY. + Certain other GLU functions can return specialized error codes + through callbacks. + See the glGetError reference page for the list of + GL error codes. +

Errors

+ NULL is returned if error is not a valid GL or GLU error code. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluGetNurbsProperty.xml b/upstream-man-pages/man2/xhtml/gluGetNurbsProperty.xml new file mode 100644 index 0000000..b19afea --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluGetNurbsProperty.xml @@ -0,0 +1,33 @@ + + +gluGetNurbsProperty

Name

gluGetNurbsProperty — get a NURBS property

C Specification

void gluGetNurbsProperty(GLUnurbs*  nurb,
 GLenum  property,
 GLfloat*  data);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

property

+ Specifies the property whose value is to be fetched. Valid values are + GLU_CULLING, + GLU_SAMPLING_TOLERANCE, + GLU_DISPLAY_MODE, + GLU_AUTO_LOAD_MATRIX, + GLU_PARAMETRIC_TOLERANCE, + GLU_SAMPLING_METHOD, + GLU_U_STEP, + GLU_V_STEP, and + GLU_NURBS_MODE. +

data

+ Specifies a pointer to the location into which the value of the + named property is written. +

Description

+ gluGetNurbsProperty retrieves properties stored in a NURBS object. These + properties affect the way that NURBS curves and surfaces + are rendered. See the + gluNurbsProperty reference page for information about what the + properties are and what they do. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluGetString.xml b/upstream-man-pages/man2/xhtml/gluGetString.xml new file mode 100644 index 0000000..94f6847 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluGetString.xml @@ -0,0 +1,49 @@ + + +gluGetString

Name

gluGetString — return a string describing the GLU version or GLU extensions

C Specification

const GLubyte * gluGetString(GLenum  name);

Parameters

name

+ Specifies a symbolic constant, one of + GLU_VERSION, or GLU_EXTENSIONS. +

Description

+ gluGetString returns a pointer to a static string describing the + GLU version or the GLU extensions that are supported. +

+ The version number is one of the following + forms: +

+ major_number.minor_number + major_number.minor_number.release_number. +

+ The version string is of the following form: +

+ version number<space>vendor-specific information +

+ Vendor-specific information is optional. + Its format and contents depend on the implementation. +

+ The standard GLU contains a basic set of features and capabilities. + If a company or group of companies wish to support other features, + these may be included as extensions to the GLU. + If name is + GLU_EXTENSIONS, then gluGetString + returns a space-separated list of names of supported GLU extensions. + (Extension names never contain spaces.) +

+ All strings are null-terminated. +

Notes

+ gluGetString only returns information about GLU extensions. Call glGetString + to get a list of GL extensions. +

+ gluGetString is an initialization routine. Calling it after + a glNewList results in undefined behavior. +

Errors

+ NULL is returned if name is not + GLU_VERSION or GLU_EXTENSIONS. +

+

See Also

+ glGetString +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluGetTessProperty.xml b/upstream-man-pages/man2/xhtml/gluGetTessProperty.xml new file mode 100644 index 0000000..d87cf79 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluGetTessProperty.xml @@ -0,0 +1,27 @@ + + +gluGetTessProperty

Name

gluGetTessProperty — get a tessellation object property

C Specification

void gluGetTessProperty(GLUtesselator*  tess,
 GLenum  which,
 GLdouble*  data);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

which

+ Specifies the property whose value is to be fetched. Valid values are + GLU_TESS_WINDING_RULE, + GLU_TESS_BOUNDARY_ONLY, and + GLU_TESS_TOLERANCE. +

data

+ Specifies a pointer to the location into which the value of the + named property is written. +

Description

+ gluGetTessProperty retrieves properties stored in a tessellation object. These + properties affect the way that tessellation objects + are interpreted and rendered. See the + gluTessProperty reference page for information about the + properties and what they do. +

See Also

+ gluNewTess, + gluTessProperty +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluLoadSamplingMatrices.xml b/upstream-man-pages/man2/xhtml/gluLoadSamplingMatrices.xml new file mode 100644 index 0000000..cc85b7b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluLoadSamplingMatrices.xml @@ -0,0 +1,36 @@ + + +gluLoadSamplingMatrices

Name

gluLoadSamplingMatrices — load NURBS sampling and culling matrices

C Specification

void gluLoadSamplingMatrices(GLUnurbs*  nurb,
 const GLfloat *  model,
 const GLfloat *  perspective,
 const GLint *  view);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

model

+ Specifies a modelview matrix (as from a glGetFloatv call). +

perspective

+ Specifies a projection matrix (as from a glGetFloatv call). +

view

+ Specifies a viewport (as from a glGetIntegerv call). +

Description

+ gluLoadSamplingMatrices uses model, perspective, and view to recompute the sampling and culling + matrices stored in nurb. + The sampling matrix determines how finely a NURBS curve or surface + must be tessellated to satisfy the sampling tolerance (as determined by the + GLU_SAMPLING_TOLERANCE property). + The culling matrix is used in deciding if a NURBS curve or surface + should be culled before + rendering (when the GLU_CULLING property is turned on). +

+ gluLoadSamplingMatrices is necessary only if the GLU_AUTO_LOAD_MATRIX property is turned + off (see gluNurbsProperty). + Although it can be convenient to leave the GLU_AUTO_LOAD_MATRIX + property turned on, there can be a performance penalty for doing so. + (A round trip to the GL server is needed to fetch the current values + of the modelview matrix, projection matrix, and viewport.) +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluLookAt.xml b/upstream-man-pages/man2/xhtml/gluLookAt.xml new file mode 100644 index 0000000..a216bae --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluLookAt.xml @@ -0,0 +1,287 @@ + + +gluLookAt

Name

gluLookAt — define a viewing transformation

C Specification

void gluLookAt(GLdouble  eyeX,
 GLdouble  eyeY,
 GLdouble  eyeZ,
 GLdouble  centerX,
 GLdouble  centerY,
 GLdouble  centerZ,
 GLdouble  upX,
 GLdouble  upY,
 GLdouble  upZ);

Parameters

eyeX, eyeY, eyeZ

+ Specifies the position of the eye point. +

centerX, centerY, centerZ

+ Specifies the position of the reference point. +

upX, upY, upZ

+ Specifies the direction of the up vector. +

Description

+ gluLookAt creates a viewing matrix derived from an eye point, a reference + point indicating the center of the scene, and an UP vector. +

+ The matrix + maps the reference point to the negative z axis and the + eye point to the origin. + When a typical projection matrix is used, + the center of the scene therefore maps to the center of the viewport. + Similarly, the direction described by the UP + vector projected onto the viewing plane is mapped to the positive y + axis so that it points upward in the viewport. + The UP vector must not be parallel to the line of sight from the + eye point to the reference point. +

+ Let +

+

+ + + F + = + + + + + + centerX + - + eyeX + + + + + + + centerY + - + eyeY + + + + + + + centerZ + - + eyeZ + + + + + + +

+

+

+ Let UP be the vector + + + + upX + upY + upZ + + . +

+ Then normalize as follows: +

+ + + f + = + + F + + + F + + + + +

+

+

+ + + UP + ″ + + = + + UP + + + UP + + + + +

+

+

+ Finally, let + + + + s + = + + f + × + UP + ″ + + + + , + and + + + + u + = + + s + × + f + + + . +

+

+ M is then constructed as follows: +

+ + + M + = + + + + + + s + ⁡ + + 0 + + + + + + s + ⁡ + + 1 + + + + + + s + ⁡ + + 2 + + + + + 0 + + + + + + u + ⁡ + + 0 + + + + + + u + ⁡ + + 1 + + + + + + u + ⁡ + + 2 + + + + + 0 + + + + + + - + + f + ⁡ + + 0 + + + + + + + - + + f + ⁡ + + 1 + + + + + + + - + + f + ⁡ + + 2 + + + + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 1 + + + + + +

+

+ and gluLookAt is equivalent to +

+glMultMatrixf(M);
+glTranslated(-eyex, -eyey, -eyez);
+            

+

See Also

+ gluPerspective, + glFrustum +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNewNurbsRenderer.xml b/upstream-man-pages/man2/xhtml/gluNewNurbsRenderer.xml new file mode 100644 index 0000000..fd92137 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNewNurbsRenderer.xml @@ -0,0 +1,21 @@ + + +gluNewNurbsRenderer

Name

gluNewNurbsRenderer — create a NURBS object

C Specification

GLUnurbs* gluNewNurbsRenderer(

Description

+ gluNewNurbsRenderer creates and returns a pointer to + a new NURBS object. + This object must be referred to when calling + NURBS rendering and control functions. A return value of + 0 means that there is not enough memory to allocate the object. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNewQuadric.xml b/upstream-man-pages/man2/xhtml/gluNewQuadric.xml new file mode 100644 index 0000000..43c0590 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNewQuadric.xml @@ -0,0 +1,24 @@ + + +gluNewQuadric

Name

gluNewQuadric — create a quadrics object

C Specification

GLUquadric* gluNewQuadric(

Description

+ gluNewQuadric creates and returns a pointer to + a new quadrics object. This object must be referred to when + calling quadrics rendering and control functions. A return value of + 0 means that there is not enough memory to allocate the object. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNewTess.xml b/upstream-man-pages/man2/xhtml/gluNewTess.xml new file mode 100644 index 0000000..741e53d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNewTess.xml @@ -0,0 +1,17 @@ + + +gluNewTess

Name

gluNewTess — create a tessellation object

C Specification

GLUtesselator* gluNewTess(

Description

+ gluNewTess creates and returns a pointer to a new tessellation object. + This object must be referred to when calling + tessellation functions. A return value of + 0 means that there is not enough memory to allocate the object. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNextContour.xml b/upstream-man-pages/man2/xhtml/gluNextContour.xml new file mode 100644 index 0000000..84d66d1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNextContour.xml @@ -0,0 +1,77 @@ + + +gluNextContour

Name

gluNextContour — mark the beginning of another contour

C Specification

void gluNextContour(GLUtesselator*  tess,
 GLenum  type);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

type

+ Specifies the type of the contour being defined. Valid values are + GLU_EXTERIOR, + GLU_INTERIOR, + GLU_UNKNOWN, + GLU_CCW, and + GLU_CW. +

Description

+ gluNextContour is used in describing polygons with multiple contours. After the first + contour has been described through a series of gluTessVertex calls, + a gluNextContour call indicates that the previous contour is complete and that the + next contour is about to begin. + Another series of gluTessVertex calls is then used to describe the new + contour. This process can be repeated until all contours have been described. +

+ type defines what type of contour follows. + The legal contour types are as follows: +

GLU_EXTERIOR

+ An exterior contour defines an exterior boundary of the polygon. +

GLU_INTERIOR

+ An interior contour defines an interior boundary of the polygon (such as + a hole). +

GLU_UNKNOWN

+ An unknown contour is analyzed by the library to determine if it is interior + or exterior. +

GLU_CCW,
GLU_CW

+ The first GLU_CCW or GLU_CW contour defined is considered to + be exterior. All other contours are considered to be exterior if they + are oriented in the same direction (clockwise or counterclockwise) as + the first contour, and interior if they are not. +

+ If one contour is of type GLU_CCW or GLU_CW, then all + contours must be of the same type (if they are not, then all GLU_CCW + and GLU_CW contours will be changed to GLU_UNKNOWN). +

+ Note that there is no real difference between the GLU_CCW and + GLU_CW contour types. +

+ Before the first contour is described, gluNextContour can be called to + define the type of the first contour. + If gluNextContour is not called before the first contour, then the first contour is + marked GLU_EXTERIOR. +

+ This command is obsolete and is provided for backward compatibility + only. Calls to gluNextContour are mapped to gluTessEndContour + followed by + gluTessBeginContour. +

Example

+ A quadrilateral with a triangular hole in it can be described as follows: +

+gluBeginPolygon(tobj);
+   gluTessVertex(tobj, v1, v1);
+   gluTessVertex(tobj, v2, v2);
+   gluTessVertex(tobj, v3, v3);
+   gluTessVertex(tobj, v4, v4);
+gluNextContour(tobj, GLU_INTERIOR);
+   gluTessVertex(tobj, v5, v5);
+   gluTessVertex(tobj, v6, v6);
+   gluTessVertex(tobj, v7, v7);
+gluEndPolygon(tobj);
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNurbsCallback.xml b/upstream-man-pages/man2/xhtml/gluNurbsCallback.xml new file mode 100644 index 0000000..1eab0c1 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNurbsCallback.xml @@ -0,0 +1,180 @@ + + +gluNurbsCallback

Name

gluNurbsCallback — define a callback for a NURBS object

C Specification

void gluNurbsCallback(GLUnurbs*  nurb,
 GLenum  which,
 _GLUfuncptr  CallBackFunc);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

which

+ Specifies the callback being defined. + Valid values are GLU_NURBS_BEGIN, GLU_NURBS_VERTEX, GLU_NURBS_NORMAL, GLU_NURBS_COLOR, GLU_NURBS_TEXTURE_COORD, GLU_NURBS_END, GLU_NURBS_BEGIN_DATA, GLU_NURBS_VERTEX_DATA, GLU_NURBS_NORMAL_DATA, GLU_NURBS_COLOR_DATA, GLU_NURBS_TEXTURE_COORD_DATA, GLU_NURBS_END_DATA, and GLU_NURBS_ERROR. +

CallBackFunc

+ Specifies the function that the callback calls. +

Description

+ gluNurbsCallback is used to define a callback to be used by a NURBS + object. + If the specified callback is already defined, then it is replaced. If + CallBackFunc is NULL, then this callback will not get + invoked and the related data, if any, will be lost. +

+ Except the error callback, these callbacks are used by NURBS tessellator (when GLU_NURBS_MODE is set to be GLU_NURBS_TESSELLATOR) to return back the OpenGL + polygon primitives resulting from the tessellation. Note that there are two + versions of each callback: one with a user data pointer and one without. If both versions for a particular callback are specified then the callback with + the user data pointer will be used. Note that ``userData'' is a copy of the pointer that was specified at the last call to gluNurbsCallbackData. +

+ The error callback function is effective no matter which value that + GLU_NURBS_MODE is set to. + All other callback functions are effective only when GLU_NURBS_MODE + is set to GLU_NURBS_TESSELLATOR. +

+ The legal callbacks are as follows: +

GLU_NURBS_BEGIN

+

+ The begin callback indicates the start of a primitive. The function + takes a single argument of type GLenum, which can be one of + GLU_LINES, GLU_LINE_STRIP, GLU_TRIANGLE_FAN, GLU_TRIANGLE_STRIP, GLU_TRIANGLES, or GLU_QUAD_STRIP. The + default begin callback function is NULL. The function prototype + for this callback looks like: +

+void begin( GLenum type );
+                        

+

GLU_NURBS_BEGIN_DATA

+

+ The same as the GLU_NURBS_BEGIN callback except that it takes an + additional pointer argument. This pointer is a copy of the pointer that + was specified at the last call to gluNurbsCallbackData. The + default callback function is NULL. The function prototype for this + callback function looks like: +

+void beginData(GLenum type, void *userData);
+                        

+

GLU_NURBS_VERTEX

+

+ The vertex callback indicates a vertex of the primitive. The + coordinates of the vertex are stored in the parameter ``vertex''. All + the generated vertices have dimension 3; that is, homogeneous + coordinates have been transformed into affine coordinates. The default + vertex callback function is NULL. The function prototype for this + callback function looks like: +

+void vertex( GLfloat *vertex );
+                        

+

GLU_NURBS_VERTEX_DATA

+

+ This is the same as the GLU_NURBS_VERTEX callback, except that + it takes an additional pointer argument. This pointer is a copy of the + pointer that was specified at the last call to + gluNurbsCallbackData. The default callback function is NULL. The + function prototype for this callback function looks like: +

+void vertexData( GLfloat *vertex, void *userData );
+                        

+

GLU_NURBS_NORMAL

+

+ The normal callback is invoked as the vertex normal is generated. + The components of the normal are stored in the parameter ``normal.'' + In the case of a NURBS curve, the callback function is effective only when + the user provides a normal map (GLU_MAP1_NORMAL). + In the case of a NURBS surface, if a normal map (GLU_MAP2_NORMAL) + is provided, then the generated normal is computed from the normal map. + If a normal map is not provided, then a surface normal is computed in + a manner similar to that described for evaluators when GLU_AUTO_NORMAL + is enabled. + The default normal callback function is NULL. The function + prototype for this callback function looks like: +

+void normal( GLfloat *normal );
+                        

+

GLU_NURBS_NORMAL_DATA

+

+ The same as the GLU_NURBS_NORMAL callback except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: +

+void normalData( GLfloat *normal, void *userData );
+                        

+

GLU_NURBS_COLOR

+

+ The color callback is invoked as the color of a vertex is generated. + The components of the color are stored in the parameter ``color.'' + This callback is effective only when the user provides a color map + (GLU_MAP1_COLOR_4 or GLU_MAP2_COLOR_4). ``color'' contains four + components: R, G, B, A. The default color callback function is NULL. + The prototype for this callback function looks like: +

+void color( GLfloat *color );
+                        

+

GLU_NURBS_COLOR_DATA

+

+ The same as the GLU_NURBS_COLOR callback except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: +

+void colorData( GLfloat *color, void *userData );
+                        

+

GLU_NURBS_TEXTURE_COORD

+

+ The texture callback is invoked as the texture coordinates + of a vertex are generated. These coordinates are stored in the parameter + ``texCoord.'' The number of texture coordinates can be 1, 2, 3, or 4 depending + on which type of texture map is specified + (GLU_MAP1_TEXTURE_COORD_1, + GLU_MAP1_TEXTURE_COORD_2, + GLU_MAP1_TEXTURE_COORD_3, + GLU_MAP1_TEXTURE_COORD_4, + GLU_MAP2_TEXTURE_COORD_1, + GLU_MAP2_TEXTURE_COORD_2, + GLU_MAP2_TEXTURE_COORD_3, + GLU_MAP2_TEXTURE_COORD_4). + If no texture map is specified, this callback function will not be called. + The default texture callback function is NULL. The function prototype + for this callback function looks like: +

+void texCoord( GLfloat *texCoord );
+                        

+

GLU_NURBS_TEXTURE_COORD_DATA

+

+ This is the same as the GLU_NURBS_TEXTURE_COORD callback, except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: +

+void texCoordData( GLfloat *texCoord, void *userData );
+                        

+

GLU_NURBS_END

+

+ The end callback is invoked at the end of a primitive. The default end callback function is NULL. The function prototype for this callback function looks like: +

+void end( void );
+                        

+

GLU_NURBS_END_DATA

+

+ This is the same as the GLU_NURBS_END callback, except that it + takes an additional pointer argument. This pointer is a copy of the pointer + that was specified at the last call to gluNurbsCallbackData. The default callback function is NULL. The function prototype for this callback function looks like: +

+void endData( void  *userData );
+                        

+

GLU_NURBS_ERROR

+

+ The error function is called when an error is encountered. + Its single argument + is of type GLenum, and it indicates the specific error that occurred. + There are 37 errors unique to NURBS, named + GLU_NURBS_ERROR1 through GLU_NURBS_ERROR37. + Character strings describing these errors can be retrieved with + gluErrorString. +

Notes

+ gluNurbsCallback is available only if the GLU version is 1.2 or greater. +

+ GLU version 1.2 supports only the GLU_ERROR parameter for + which. The GLU_ERROR value is deprecated in GLU version 1.3 in + favor of GLU_NURBS_ERROR. All other accepted values for CallBackFunc + are available only if the GLU version is 1.3 or greater. +

See Also

+ gluErrorString, + gluNewNurbsRenderer, + gluNurbsCallbackData, + gluNurbsProperty +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNurbsCallbackData.xml b/upstream-man-pages/man2/xhtml/gluNurbsCallbackData.xml new file mode 100644 index 0000000..ac60bd9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNurbsCallbackData.xml @@ -0,0 +1,21 @@ + + +gluNurbsCallbackData

Name

gluNurbsCallbackData — set a user data pointer

C Specification

void gluNurbsCallbackData(GLUnurbs*  nurb,
 GLvoid*  userData);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

userData

+ Specifies a pointer to the user's data. +

Description

+ gluNurbsCallbackData is used to pass a pointer to the application's data to NURBS + tessellator. A copy of this pointer will be passed by the tessellator + in the NURBS callback functions (set by gluNurbsCallback). +

Notes

+ gluNurbsCallbackData is available only if the GLU version is 1.3 or greater. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNurbsCallbackDataEXT.xml b/upstream-man-pages/man2/xhtml/gluNurbsCallbackDataEXT.xml new file mode 100644 index 0000000..0caad8d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNurbsCallbackDataEXT.xml @@ -0,0 +1,18 @@ + + +gluNurbsCallbackDataEXT

Name

gluNurbsCallbackDataEXT — set a user data pointer

C Specification

void gluNurbsCallbackDataEXT(GLUnurbs*  nurb,
 GLvoid*  userData);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

userData

+ Specifies a pointer to the user's data. +

Description

+ gluNurbsCallbackDataEXT is used to pass a pointer to the application's data to NURBS + tessellator. A copy of this pointer will be passed by the tessellator + in the NURBS callback functions (set by gluNurbsCallback). +

See Also

+ gluNurbsCallback +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNurbsCurve.xml b/upstream-man-pages/man2/xhtml/gluNurbsCurve.xml new file mode 100644 index 0000000..1184f2a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNurbsCurve.xml @@ -0,0 +1,69 @@ + + +gluNurbsCurve

Name

gluNurbsCurve — define the shape of a NURBS curve

C Specification

void gluNurbsCurve(GLUnurbs*  nurb,
 GLint  knotCount,
 GLfloat *  knots,
 GLint  stride,
 GLfloat *  control,
 GLint  order,
 GLenum  type);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

knotCount

+ Specifies the number of knots in knots. + knotCount equals the number of control points plus the order. +

knots

+ Specifies an array of knotCount nondecreasing knot values. +

stride

+ Specifies the offset (as a number of single-precision floating-point values) + between successive curve control points. +

control

+ Specifies a pointer to an array of control points. The coordinates must + agree with type, specified below. +

order

+ Specifies the order of the NURBS curve. order equals degree + 1, hence + a cubic curve has an order of 4. +

type

+ Specifies the type of the curve. If this curve is defined within a + gluBeginCurve/gluEndCurve pair, then + the type can be any of the valid + one-dimensional evaluator types (such as GLU_MAP1_VERTEX_3 or + GLU_MAP1_COLOR_4). Between a gluBeginTrim/gluEndTrim pair, + the only valid types are GLU_MAP1_TRIM_2 and GLU_MAP1_TRIM_3. +

Description

+ Use gluNurbsCurve to describe a NURBS curve. +

+ When gluNurbsCurve appears between a gluBeginCurve/gluEndCurve pair, it is + used to describe a curve to be rendered. + Positional, texture, and color coordinates are associated + by presenting each as a separate gluNurbsCurve between a + gluBeginCurve/gluEndCurve pair. No more than + one call to gluNurbsCurve for each of color, position, and texture + data can be made within a single gluBeginCurve/gluEndCurve + pair. Exactly one call must be made to describe the position of the + curve (a type of GLU_MAP1_VERTEX_3 or GLU_MAP1_VERTEX_4). +

+ When gluNurbsCurve appears between a gluBeginTrim/gluEndTrim pair, it is + used to describe a trimming curve on a NURBS surface. If type is + GLU_MAP1_TRIM_2, then it describes a curve in two-dimensional (u + and v) + parameter space. If it is GLU_MAP1_TRIM_3, then it describes a + curve in two-dimensional homogeneous (u, v, and w) + parameter space. + See the gluBeginTrim reference page for more discussion about trimming + curves. +

Example

+ The following commands render a textured NURBS curve with normals: +

+gluBeginCurve(nobj);
+   gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2);
+   gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL);
+   gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);
+gluEndCurve(nobj);
+            

+

Notes

+ To define trim curves that stitch well, use gluPwlCurve. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNurbsProperty.xml b/upstream-man-pages/man2/xhtml/gluNurbsProperty.xml new file mode 100644 index 0000000..1ae7548 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNurbsProperty.xml @@ -0,0 +1,171 @@ + + +gluNurbsProperty

Name

gluNurbsProperty — set a NURBS property

C Specification

void gluNurbsProperty(GLUnurbs*  nurb,
 GLenum  property,
 GLfloat  value);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

property

+ Specifies the property to be set. Valid values are + GLU_SAMPLING_TOLERANCE, + GLU_DISPLAY_MODE, + GLU_CULLING, + GLU_AUTO_LOAD_MATRIX, + GLU_PARAMETRIC_TOLERANCE, + GLU_SAMPLING_METHOD, + GLU_U_STEP, + GLU_V_STEP, or + GLU_NURBS_MODE. +

value

+ Specifies the value of the indicated property. + It may be a numeric value or one of + GLU_OUTLINE_POLYGON, + GLU_FILL, + GLU_OUTLINE_PATCH, + GLU_TRUE, + GLU_FALSE, + GLU_PATH_LENGTH, + GLU_PARAMETRIC_ERROR, + GLU_DOMAIN_DISTANCE, + GLU_NURBS_RENDERER, or + GLU_NURBS_TESSELLATOR. +

Description

+ gluNurbsProperty is used to control properties stored in a NURBS object. These + properties affect the way that a NURBS curve is rendered. The accepted + values for property are as follows: +

GLU_NURBS_MODE

+ value should be set to be either GLU_NURBS_RENDERER or + GLU_NURBS_TESSELLATOR. When set to GLU_NURBS_RENDERER, NURBS objects + are tessellated into OpenGL primitives and sent to the pipeline for + rendering. When set to GLU_NURBS_TESSELLATOR, NURBS objects are + tessellated into OpenGL primitives but the vertices, normals, colors, and/or textures are + retrieved back through a callback interface (see gluNurbsCallback). This allows the user to cache the + tessellated results for further processing. + The initial value is GLU_NURBS_RENDERER. +

GLU_SAMPLING_METHOD

+ Specifies how a NURBS surface should be + tessellated. + value may be one of GLU_PATH_LENGTH, + GLU_PARAMETRIC_ERROR, GLU_DOMAIN_DISTANCE, + GLU_OBJECT_PATH_LENGTH, or + GLU_OBJECT_PARAMETRIC_ERROR. + When set to GLU_PATH_LENGTH, the surface is rendered so that + the maximum length, in + pixels, of the edges of the tessellation polygons is no greater than + what is specified by GLU_SAMPLING_TOLERANCE. +

+ GLU_PARAMETRIC_ERROR specifies that the surface is rendered in such a + way that the value specified by GLU_PARAMETRIC_TOLERANCE describes the + maximum distance, in pixels, between the tessellation polygons and the + surfaces they approximate. +

+ GLU_DOMAIN_DISTANCE allows users to specify, in parametric coordinates, + how many sample points per unit length are taken in u, v + direction. +

+ GLU_OBJECT_PATH_LENGTH is similar to GLU_PATH_LENGTH + except that it is view independent; that is, the surface is rendered so that the maximum length, in object space, of edges of the tessellation polygons is no greater than what is specified by GLU_SAMPLING_TOLERANCE. +

+ GLU_OBJECT_PARAMETRIC_ERROR is similar to GLU_PARAMETRIC_ERROR except that it is view independent; that is, the surface is rendered in such a way that the value specified by GLU_PARAMETRIC_TOLERANCE describes the maximum distance, in object space, between the tessellation polygons and the surfaces they approximate. +

+ The initial value of GLU_SAMPLING_METHOD is GLU_PATH_LENGTH. +

GLU_SAMPLING_TOLERANCE

+ Specifies the maximum length, in pixels or in object space length unit, + to use when the sampling method is set to GLU_PATH_LENGTH or + GLU_OBJECT_PATH_LENGTH. + The NURBS code is conservative when rendering a curve + or surface, so the actual length can be somewhat shorter. The initial + value is 50.0 pixels. +

GLU_PARAMETRIC_TOLERANCE

+ Specifies the maximum distance, in pixels or in object space length unit, + to use when the sampling method is GLU_PARAMETRIC_ERROR or + GLU_OBJECT_PARAMETRIC_ERROR. + The initial value is 0.5. +

GLU_U_STEP

+ Specifies the number of sample points per unit length taken + along the u axis in parametric coordinates. It is needed when + GLU_SAMPLING_METHOD is set to GLU_DOMAIN_DISTANCE. + The initial value is 100. +

GLU_V_STEP

+ Specifies the number of sample points per unit length taken + along the v axis in parametric coordinate. It is needed when + GLU_SAMPLING_METHOD is set to GLU_DOMAIN_DISTANCE. The initial + value is 100. +

GLU_DISPLAY_MODE

+ value can be set to + GLU_OUTLINE_POLYGON, GLU_FILL, or + GLU_OUTLINE_PATCH. + When GLU_NURBS_MODE is set to be GLU_NURBS_RENDERER, + value defines how a NURBS surface should be rendered. + When value is set to GLU_FILL, the surface is rendered as a + set of polygons. When value is set to + GLU_OUTLINE_POLYGON, the NURBS library draws only the outlines + of the polygons created by tessellation. When value is set to + GLU_OUTLINE_PATCH just the outlines of patches and trim + curves defined by the user are drawn. +

+ When GLU_NURBS_MODE is set to be GLU_NURBS_TESSELLATOR, + value defines how a NURBS surface should be tessellated. + When GLU_DISPLAY_MODE is set to GLU_FILL or + GLU_OUTLINE_POLYGON, + the NURBS surface is tessellated into OpenGL triangle primitives that can be + retrieved back through callback functions. If GLU_DISPLAY_MODE is set to + GLU_OUTLINE_PATCH, only the outlines of the patches and trim curves are generated as a sequence of line strips that can be retrieved back through callback functions. +

+ The initial value is GLU_FILL. +

GLU_CULLING

+ value is a boolean value that, when set to GLU_TRUE, indicates that + a NURBS curve should be discarded prior to tessellation if its control points + lie outside the current viewport. The initial value is GLU_FALSE. +

GLU_AUTO_LOAD_MATRIX

+ value is a boolean value. When set to GLU_TRUE, the NURBS code + downloads the projection matrix, the modelview matrix, and the + viewport from the GL server to compute sampling and + culling + matrices for each NURBS curve that is rendered. Sampling and culling matrices + are required to determine the tessellation of a NURBS surface into line segments + or polygons and to cull a NURBS surface if it lies outside the viewport. +

+ If this mode is set to GLU_FALSE, then the program needs + to provide a projection matrix, a modelview matrix, and a viewport + for the NURBS renderer to use to construct sampling and culling matrices. + This can be done with the gluLoadSamplingMatrices function. + This mode is initially set to GLU_TRUE. + Changing it from GLU_TRUE to GLU_FALSE does not affect + the sampling and culling matrices until + gluLoadSamplingMatrices + is called. +

Notes

+ If GLU_AUTO_LOAD_MATRIX is true, sampling and culling may be + executed incorrectly if NURBS routines are compiled into a display list. +

+ A property of + GLU_PARAMETRIC_TOLERANCE, + GLU_SAMPLING_METHOD, + GLU_U_STEP, or + GLU_V_STEP, + or a value of + GLU_PATH_LENGTH, + GLU_PARAMETRIC_ERROR, + GLU_DOMAIN_DISTANCE + are only available if the GLU version is 1.1 or greater. They are not + valid parameters in GLU 1.0. +

+ gluGetString can + be used to determine the GLU version. +

+ GLU_NURBS_MODE is only available if the GLU version is 1.3 or + greater. +

+ The GLU_OBJECT_PATH_LENGTH and GLU_OBJECT_PARAMETRIC_ERROR + values for the GLU_SAMPLING_METHOD property are only available if + the GLU version is 1.3 or greater. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluNurbsSurface.xml b/upstream-man-pages/man2/xhtml/gluNurbsSurface.xml new file mode 100644 index 0000000..4b906b7 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluNurbsSurface.xml @@ -0,0 +1,87 @@ + + +gluNurbsSurface

Name

gluNurbsSurface — define the shape of a NURBS surface

C Specification

void gluNurbsSurface(GLUnurbs*  nurb,
 GLint  sKnotCount,
 GLfloat*  sKnots,
 GLint  tKnotCount,
 GLfloat*  tKnots,
 GLint  sStride,
 GLint  tStride,
 GLfloat*  control,
 GLint  sOrder,
 GLint  tOrder,
 GLenum  type);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

sKnotCount

+ Specifies the number of knots in the parametric u direction. +

sKnots

+ Specifies an array of sKnotCount nondecreasing knot values in the parametric + u direction. +

tKnotCount

+ Specifies the number of knots in the parametric v direction. +

tKnots

+ Specifies an array of tKnotCount nondecreasing knot values in the parametric + v direction. +

sStride

+ Specifies the offset (as a number of single-precision floating-point values) + between successive control points in the parametric u direction + in control. +

tStride

+ Specifies the offset (in single-precision floating-point values) + between successive control points in the parametric v direction + in control. +

control

+ Specifies an array containing control points for the NURBS surface. + The offsets between successive control points in the parametric u + and v directions are given by sStride and tStride. +

sOrder

+ Specifies the order of the NURBS surface in the parametric u + direction. The order is one more than the degree, hence + a surface that is cubic in u has a u order of 4. +

tOrder

+ Specifies the order of the NURBS surface in the parametric v + direction. The order is one more than the degree, hence + a surface that is cubic in v has a v order of 4. +

type

+ Specifies type of the surface. type can be any of the valid + two-dimensional evaluator types (such as GLU_MAP2_VERTEX_3 or + GLU_MAP2_COLOR_4). +

Description

+ Use gluNurbsSurface within a NURBS (Non-Uniform Rational B-Spline) surface + definition to describe the shape of a NURBS surface (before + any trimming). To mark the beginning of + a NURBS surface definition, use the gluBeginSurface command. + To mark the end of a NURBS surface definition, use the + gluEndSurface command. Call gluNurbsSurface within a NURBS + surface definition only. +

+ Positional, texture, and color coordinates are associated + with a surface by presenting each as a separate gluNurbsSurface between a + gluBeginSurface/gluEndSurface pair. No more than + one call to gluNurbsSurface for each of color, position, and texture + data can be made within a single gluBeginSurface/gluEndSurface + pair. Exactly one call must be made to describe the position of the + surface (a type of GLU_MAP2_VERTEX_3 or GLU_MAP2_VERTEX_4). +

+ A NURBS surface can be trimmed by using the commands + gluNurbsCurve and gluPwlCurve between calls to + gluBeginTrim and gluEndTrim. +

+ Note that a gluNurbsSurface with sKnotCount knots in the u direction + and tKnotCount knots in the v direction with orders + sOrder and tOrder must have + (sKnotCount - sOrder) + times + (tKnotCount - tOrder) control points. +

Example

+ The following commands render a textured NURBS surface with normals; + the texture coordinates and normals are also NURBS surfaces: +

+gluBeginSurface(nobj);
+   gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2);
+   gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL);
+   gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4);
+gluEndSurface(nobj);
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluOrtho2D.xml b/upstream-man-pages/man2/xhtml/gluOrtho2D.xml new file mode 100644 index 0000000..9279de9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluOrtho2D.xml @@ -0,0 +1,35 @@ + + +gluOrtho2D

Name

gluOrtho2D — define a 2D orthographic projection matrix

C Specification

void gluOrtho2D(GLdouble  left,
 GLdouble  right,
 GLdouble  bottom,
 GLdouble  top);

Parameters

left, right

+ Specify the coordinates for the left and right vertical clipping planes. +

bottom, top

+ Specify the coordinates for the bottom and top horizontal clipping planes. +

Description

+ gluOrtho2D sets up a two-dimensional orthographic viewing region. + This is equivalent to calling glOrtho with + + + + near + = + -1 + + + and + + + + far + = + 1 + + . +

See Also

+ glOrtho, + gluPerspective +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluPartialDisk.xml b/upstream-man-pages/man2/xhtml/gluPartialDisk.xml new file mode 100644 index 0000000..79cc65d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluPartialDisk.xml @@ -0,0 +1,77 @@ + + +gluPartialDisk

Name

gluPartialDisk — draw an arc of a disk

C Specification

void gluPartialDisk(GLUquadric*  quad,
 GLdouble  inner,
 GLdouble  outer,
 GLint  slices,
 GLint  loops,
 GLdouble  start,
 GLdouble  sweep);

Parameters

quad

+ Specifies a quadrics object (created with gluNewQuadric). +

inner

+ Specifies the inner radius of the partial disk (can be 0). +

outer

+ Specifies the outer radius of the partial disk. +

slices

+ Specifies the number of subdivisions around the z axis. +

loops

+ Specifies the number of concentric rings about the origin into which + the partial disk is subdivided. +

start

+ Specifies the starting angle, in degrees, of the disk portion. +

sweep

+ Specifies the sweep angle, in degrees, of the disk portion. +

Description

+ gluPartialDisk renders a partial disk on the + + + + z + = + 0 + + + plane. A partial disk is + similar to a full disk, except that only the subset of the disk from + start through start + sweep is included (where 0 degrees is along the + +\f2y\f axis, + 90 degrees along the +x axis, 180 degrees along the \-y axis, and + 270 degrees along the \-x axis). +

+ The partial disk has a radius of + outer and contains a concentric circular hole with a radius + of inner. If inner is 0, then no hole is generated. The partial disk is + subdivided around the z axis into slices (like pizza slices) and also + about the z axis into rings + (as specified by slices and loops, respectively). +

+ With respect to orientation, the +z + side of the partial disk is considered to + be outside (see gluQuadricOrientation). + This means that if the + orientation is set to GLU_OUTSIDE, then any normals generated + point along the +z axis. Otherwise, they point along the \-z + axis. +

+ If texturing is turned on (with gluQuadricTexture), texture + coordinates are generated + linearly such that where + + + + r + = + outer + + , + the value at (r, 0, 0) is + (1.0, 0.5), at (0, r, 0) it is (0.5, 1.0), at (\-r, 0, 0) + it is (0.0, 0.5), and + at (0, \-r, 0) it is (0.5, 0.0). +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluPerspective.xml b/upstream-man-pages/man2/xhtml/gluPerspective.xml new file mode 100644 index 0000000..9a19d5d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluPerspective.xml @@ -0,0 +1,206 @@ + + +gluPerspective

Name

gluPerspective — set up a perspective projection matrix

C Specification

void gluPerspective(GLdouble  fovy,
 GLdouble  aspect,
 GLdouble  zNear,
 GLdouble  zFar);

Parameters

fovy

+ Specifies the field of view angle, in degrees, in the y direction. +

aspect

+ Specifies the aspect ratio that determines + the field of view in the x direction. + The aspect ratio is the ratio of x (width) to y (height). +

zNear

+ Specifies the distance from the viewer to the near clipping plane + (always positive). +

zFar

+ Specifies the distance from the viewer to the far clipping plane + (always positive). +

Description

+ gluPerspective specifies a viewing frustum into the world coordinate system. + In general, the aspect ratio in gluPerspective should match the aspect ratio + of the associated viewport. For example, + + + + aspect + = + 2.0 + + + means + the viewer's + angle of view is twice as wide in x as it is in y. + If the viewport is + twice as wide as it is tall, it displays the image without distortion. +

+ The matrix generated by gluPerspective is multipled by the current matrix, + just as if glMultMatrix were called with the generated matrix. + To load the perspective matrix onto the current matrix stack instead, + precede the call to gluPerspective with a call to glLoadIdentity. +

+ Given f defined as follows: +

+

+ + + f + = + + cotangent + ⁡ + + + fovy + 2 + + + + +

+ The generated matrix is +

+

+ + + + + + + f + aspect + + + + 0 + + + 0 + + + 0 + + + + + 0 + + + f + + + 0 + + + 0 + + + + + 0 + + + 0 + + + + + + zFar + + + zNear + + + + + zNear + - + zFar + + + + + + + + + 2 + × + zFar + × + zNear + + + + + zNear + - + zFar + + + + + + + + 0 + + + 0 + + + -1 + + + 0 + + + + +

+

Notes

+ Depth buffer precision is affected by the values specified for + zNear and zFar. + The greater the ratio of zFar to zNear is, + the less effective the depth buffer will be at distinguishing between + surfaces that are near each other. + If +

+ + + + r + = + + zFar + zNear + + + +

+

+ roughly + + + + log + 2 + + ⁡ + + r + + + + bits of depth buffer precision are lost. + Because + r + approaches infinity as zNear approaches 0, + zNear must never be set to 0. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluPickMatrix.xml b/upstream-man-pages/man2/xhtml/gluPickMatrix.xml new file mode 100644 index 0000000..6562ead --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluPickMatrix.xml @@ -0,0 +1,65 @@ + + +gluPickMatrix

Name

gluPickMatrix — define a picking region

C Specification

void gluPickMatrix(GLdouble  x,
 GLdouble  y,
 GLdouble  delX,
 GLdouble  delY,
 GLint *  viewport);

Parameters

x, y

+ Specify the center of a picking region in window coordinates. +

delX, delY

+ Specify the width and height, respectively, of the picking region in window + coordinates. +

viewport

+ Specifies the current viewport (as from a glGetIntegerv call). +

Description

+ gluPickMatrix creates a projection matrix that can be used to restrict drawing + to a small region of the viewport. + This is typically useful to + determine what objects are being drawn near the cursor. + Use gluPickMatrix to + restrict drawing to a small region around the cursor. + Then, + enter selection mode (with glRenderMode) and rerender the scene. + All primitives that would have been drawn near + the cursor are identified and stored in the selection buffer. +

+ The matrix created by gluPickMatrix is multiplied by the current matrix just + as if glMultMatrix is called with the generated matrix. + To effectively use the generated pick matrix for picking, + first call glLoadIdentity to load an identity matrix onto the + perspective matrix stack. + Then call gluPickMatrix, + and, finally, call a command (such as gluPerspective) + to multiply the perspective matrix by the pick matrix. +

+ When using gluPickMatrix to pick NURBS, be careful to turn off the NURBS + property + GLU_AUTO_LOAD_MATRIX. If GLU_AUTO_LOAD_MATRIX is not + turned off, then any NURBS surface rendered is subdivided differently with + the pick matrix than the way it was subdivided without the pick matrix. +

Example

+ When rendering a scene as follows: +

+glMatrixMode(GL_PROJECTION);
+glLoadIdentity();
+gluPerspective(...);
+glMatrixMode(GL_MODELVIEW);
+/* Draw the scene */
+            

+ a portion of the viewport can be selected as a pick region like this: +

+glMatrixMode(GL_PROJECTION);
+glLoadIdentity();
+gluPickMatrix(x, y, width, height, viewport);
+gluPerspective(...);
+glMatrixMode(GL_MODELVIEW);
+/* Draw the scene */
+            

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluProject.xml b/upstream-man-pages/man2/xhtml/gluProject.xml new file mode 100644 index 0000000..9aa4009 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluProject.xml @@ -0,0 +1,208 @@ + + +gluProject

Name

gluProject — map object coordinates to window coordinates

C Specification

GLint gluProject(GLdouble  objX,
 GLdouble  objY,
 GLdouble  objZ,
 const GLdouble *  model,
 const GLdouble *  proj,
 const GLint *  view,
 GLdouble*  winX,
 GLdouble*  winY,
 GLdouble*  winZ);

Parameters

objX, objY, objZ

+ Specify the object coordinates. +

model

+ Specifies the current modelview matrix (as from a glGetDoublev call). +

proj

+ Specifies the current projection matrix (as from a glGetDoublev call). +

view

+ Specifies the current viewport (as from a glGetIntegerv call). +

winX, winY, winZ

+ Return the computed window coordinates. +

Description

+ gluProject transforms the specified object coordinates into window coordinates + using model, proj, and view. The result is stored + in winX, winY, and winZ. A return value of + GLU_TRUE indicates success, a return value of GLU_FALSE + indicates failure. +

+ To compute the coordinates, + let + + + + v + = + + objX + objY + objZ + 1.0 + + + + represented as a matrix with 4 rows and 1 column. + Then gluProject computes + + + v + ″ + + + as follows: +

+

+ + + v + ″ + + = + + P + × + M + × + v + + +

+

+ where + P + is the current projection matrix proj and + M + is the current + modelview matrix model (both represented as + + + + 4 + × + 4 + + + matrices in column-major order). +

+ The window coordinates are then computed as follows: +

+

+ + + winX + = + + + view + ⁡ + + 0 + + + + + + + + view + ⁡ + + 2 + + + × + + + + v + ″ + + ⁡ + + 0 + + + + + 1 + + + + 2 + + + +

+

+

+ + + winY + = + + + view + ⁡ + + 1 + + + + + + + + view + ⁡ + + 3 + + + × + + + + v + ″ + + ⁡ + + 1 + + + + + 1 + + + + 2 + + + +

+

+

+

+ + + winZ + = + + + + + v + ″ + + ⁡ + + 2 + + + + + 1 + + + 2 + + +

+

+

+

See Also

+ gluUnProject, + glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluPwlCurve.xml b/upstream-man-pages/man2/xhtml/gluPwlCurve.xml new file mode 100644 index 0000000..1710084 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluPwlCurve.xml @@ -0,0 +1,45 @@ + + +gluPwlCurve

Name

gluPwlCurve — describe a piecewise linear NURBS trimming curve

C Specification

void gluPwlCurve(GLUnurbs*  nurb,
 GLint  count,
 GLfloat*  data,
 GLint  stride,
 GLenum  type);

Parameters

nurb

+ Specifies the NURBS object (created with gluNewNurbsRenderer). +

count

+ Specifies the number of points on the curve. +

data

+ Specifies an array containing the curve points. +

stride

+ Specifies the offset (a number of single-precision floating-point values) + between points on the curve. +

type

+ Specifies the type of curve. + Must be either GLU_MAP1_TRIM_2 or GLU_MAP1_TRIM_3. +

Description

+ gluPwlCurve describes a piecewise linear trimming curve for a NURBS surface. + A piecewise linear curve consists of a list of + coordinates of points in the parameter space for the + NURBS surface to be trimmed. These points are connected + with line segments to form a curve. If the curve is + an approximation to a curve that is not piecewise linear, + the points should be close enough in parameter space that the + resulting path appears curved at the resolution used in the application. +

+ If type is + GLU_MAP1_TRIM_2, then it describes a curve in two-dimensional (u + and v) parameter space. If it is GLU_MAP1_TRIM_3, then it + describes a curve in two-dimensional homogeneous (u, v, + and w) parameter space. + See the gluBeginTrim reference page for more information + about trimming curves. +

Notes

+ To describe a trim curve that closely follows the contours of a NURBS + surface, call gluNurbsCurve. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluQuadricCallback.xml b/upstream-man-pages/man2/xhtml/gluQuadricCallback.xml new file mode 100644 index 0000000..0607ea4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluQuadricCallback.xml @@ -0,0 +1,29 @@ + + +gluQuadricCallback

Name

gluQuadricCallback — define a callback for a quadrics object

C Specification

void gluQuadricCallback(GLUquadric*  quad,
 GLenum  which,
 _GLUfuncptr  CallBackFunc);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

which

+ Specifies the callback being defined. + The only valid value is GLU_ERROR. +

CallBackFunc

+ Specifies the function to be called. +

Description

+ gluQuadricCallback is used to define a new callback to be used by a quadrics object. + If the specified callback is already defined, then it is replaced. If + CallBackFunc is NULL, then any existing callback is erased. +

+ The one legal callback is GLU_ERROR: +

GLU_ERROR

+ The function is called when an error is encountered. Its single argument + is of type GLenum, and it indicates the specific error that occurred. + Character strings describing these errors can be retrieved with the + gluErrorString call. +

See Also

+ gluErrorString, + gluNewQuadric +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluQuadricDrawStyle.xml b/upstream-man-pages/man2/xhtml/gluQuadricDrawStyle.xml new file mode 100644 index 0000000..c4cc0a4 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluQuadricDrawStyle.xml @@ -0,0 +1,35 @@ + + +gluQuadricDrawStyle

Name

gluQuadricDrawStyle — specify the draw style desired for quadrics

C Specification

void gluQuadricDrawStyle(GLUquadric*  quad,
 GLenum  draw);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

draw

+ Specifies the desired draw style. Valid values are + GLU_FILL, + GLU_LINE, + GLU_SILHOUETTE, and + GLU_POINT. +

Description

+ gluQuadricDrawStyle specifies the draw style for quadrics rendered with + quad. The legal values are as follows: +

GLU_FILL

+ Quadrics are rendered with polygon primitives. The polygons + are drawn in a counterclockwise fashion with respect to their + normals (as defined with gluQuadricOrientation). +

GLU_LINE

+ Quadrics are rendered as a set of lines. +

GLU_SILHOUETTE

+ Quadrics are rendered as a set of lines, except that edges separating + coplanar faces will not be drawn. +

GLU_POINT

+ Quadrics are rendered as a set of points. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluQuadricNormals.xml b/upstream-man-pages/man2/xhtml/gluQuadricNormals.xml new file mode 100644 index 0000000..10bf33a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluQuadricNormals.xml @@ -0,0 +1,30 @@ + + +gluQuadricNormals

Name

gluQuadricNormals — specify what kind of normals are desired for quadrics

C Specification

void gluQuadricNormals(GLUquadric*  quad,
 GLenum  normal);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

normal

+ Specifies the desired type of normals. Valid values are + GLU_NONE, + GLU_FLAT, and + GLU_SMOOTH. +

Description

+ gluQuadricNormals specifies what kind of normals are desired for quadrics rendered with + quad. The legal values are as follows: +

GLU_NONE

+ No normals are generated. +

GLU_FLAT

+ One normal is generated for every facet of a quadric. +

GLU_SMOOTH

+ One normal is generated for every vertex of a quadric. This is the + initial value. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluQuadricOrientation.xml b/upstream-man-pages/man2/xhtml/gluQuadricOrientation.xml new file mode 100644 index 0000000..e0df0fc --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluQuadricOrientation.xml @@ -0,0 +1,29 @@ + + +gluQuadricOrientation

Name

gluQuadricOrientation — specify inside/outside orientation for quadrics

C Specification

void gluQuadricOrientation(GLUquadric*  quad,
 GLenum  orientation);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

orientation

+ Specifies the desired orientation. Valid values are + GLU_OUTSIDE and + GLU_INSIDE. +

Description

+ gluQuadricOrientation specifies what kind of orientation is desired for quadrics rendered + with quad. The orientation values are as follows: +

GLU_OUTSIDE

+ Quadrics are drawn with normals pointing outward (the initial value). +

GLU_INSIDE

+ Quadrics are drawn with normals pointing inward. +

+ Note that the interpretation of outward and inward depends on the + quadric being drawn. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluQuadricTexture.xml b/upstream-man-pages/man2/xhtml/gluQuadricTexture.xml new file mode 100644 index 0000000..77b3cd5 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluQuadricTexture.xml @@ -0,0 +1,26 @@ + + +gluQuadricTexture

Name

gluQuadricTexture — specify if texturing is desired for quadrics

C Specification

void gluQuadricTexture(GLUquadric*  quad,
 GLboolean  texture);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

texture

+ Specifies a flag indicating if texture coordinates should be generated. +

Description

+ gluQuadricTexture specifies if texture coordinates should be generated + for quadrics rendered with quad. + If the value of texture is GLU_TRUE, then texture coordinates + are generated, and if texture is GLU_FALSE, they are not. The + initial value is GLU_FALSE. +

+ The manner in which texture coordinates are generated depends + upon the specific quadric rendered. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluScaleImage.xml b/upstream-man-pages/man2/xhtml/gluScaleImage.xml new file mode 100644 index 0000000..598de10 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluScaleImage.xml @@ -0,0 +1,141 @@ + + +gluScaleImage

Name

gluScaleImage — scale an image to an arbitrary size

C Specification

GLint gluScaleImage(GLenum  format,
 GLsizei  wIn,
 GLsizei  hIn,
 GLenum  typeIn,
 const void *  dataIn,
 GLsizei  wOut,
 GLsizei  hOut,
 GLenum  typeOut,
 GLvoid*  dataOut);

Parameters

format

+ Specifies the format of the pixel data. + The following symbolic values are valid: + GLU_COLOR_INDEX, + GLU_STENCIL_INDEX, + GLU_DEPTH_COMPONENT, + GLU_RED, + GLU_GREEN, + GLU_BLUE, + GLU_ALPHA, + GLU_RGB, + GLU_RGBA, + GLU_BGR, + GLU_BGRA, + GLU_LUMINANCE, and + GLU_LUMINANCE_ALPHA. +

wIn, hIn

+ Specify in pixels the width and height, respectively, of the source image. +

typeIn

+ Specifies the data type for dataIn. Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

dataIn

+ Specifies a pointer to the source image. +

wOut, hOut

+ Specify the width and height, respectively, in pixels of the destination image. +

typeOut

+ Specifies the data type for dataOut. Must be one of + GLU_UNSIGNED_BYTE, + GLU_BYTE, + GLU_BITMAP, + GLU_UNSIGNED_SHORT, + GLU_SHORT, + GLU_UNSIGNED_INT, + GLU_INT, + GLU_FLOAT, + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, or + GLU_UNSIGNED_INT_2_10_10_10_REV. +

dataOut

+ Specifies a pointer to the destination image. +

Description

+ gluScaleImage scales a pixel image using the appropriate pixel store modes to + unpack data from the source image and pack data into the destination image. +

+ When shrinking an image, gluScaleImage uses a box filter to sample the source image + and create pixels for the destination image. When magnifying an image, + the pixels from the source image are linearly interpolated to create the + destination image. +

+ A return value of zero indicates success, otherwise a GLU error code is returned (see gluErrorString). +

+ See the glReadPixels reference page for a description of + the acceptable values for the format, typeIn, and typeOut parameters. +

Notes

+ Formats GLU_BGR, and GLU_BGRA, and types + GLU_UNSIGNED_BYTE_3_3_2, + GLU_UNSIGNED_BYTE_2_3_3_REV, + GLU_UNSIGNED_SHORT_5_6_5, + GLU_UNSIGNED_SHORT_5_6_5_REV, + GLU_UNSIGNED_SHORT_4_4_4_4, + GLU_UNSIGNED_SHORT_4_4_4_4_REV, + GLU_UNSIGNED_SHORT_5_5_5_1, + GLU_UNSIGNED_SHORT_1_5_5_5_REV, + GLU_UNSIGNED_INT_8_8_8_8, + GLU_UNSIGNED_INT_8_8_8_8_REV, + GLU_UNSIGNED_INT_10_10_10_2, and + GLU_UNSIGNED_INT_2_10_10_10_REV are only available if the GL version + is 1.2 or greater. +

Errors

+ GLU_INVALID_VALUE is returned if wIn, hIn, wOut, or hOut + is negative. +

+ GLU_INVALID_ENUM is returned if format, typeIn, or typeOut is not + legal. +

+ GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_BYTE_3_3_2 or GLU_UNSIGNED_BYTE_2_3_3_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_SHORT_5_6_5 or GLU_UNSIGNED_SHORT_5_6_5_REV + and format is not GLU_RGB. +

+ GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_SHORT_4_4_4_4 or GLU_UNSIGNED_SHORT_4_4_4_4_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_SHORT_5_5_5_1 or GLU_UNSIGNED_SHORT_1_5_5_5_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_INT_8_8_8_8 or GLU_UNSIGNED_INT_8_8_8_8_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

+ GLU_INVALID_OPERATION is returned if typeIn or typeOut is + GLU_UNSIGNED_INT_10_10_10_2 or GLU_UNSIGNED_INT_2_10_10_10_REV + and format is neither GLU_RGBA nor GLU_BGRA. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluSphere.xml b/upstream-man-pages/man2/xhtml/gluSphere.xml new file mode 100644 index 0000000..94f948d --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluSphere.xml @@ -0,0 +1,66 @@ + + +gluSphere

Name

gluSphere — draw a sphere

C Specification

void gluSphere(GLUquadric*  quad,
 GLdouble  radius,
 GLint  slices,
 GLint  stacks);

Parameters

quad

+ Specifies the quadrics object (created with gluNewQuadric). +

radius

+ Specifies the radius of the sphere. +

slices

+ Specifies the number of subdivisions around the z axis + (similar to lines of longitude). +

stacks

+ Specifies the number of subdivisions along the z axis + (similar to lines of + latitude). +

Description

+ gluSphere draws a sphere of the given radius centered around the origin. The + sphere is subdivided around the z axis into slices and along the + z axis + into stacks (similar to lines of longitude and latitude). +

+ If the orientation is set to GLU_OUTSIDE + (with gluQuadricOrientation), then any normals generated + point away from the center of the sphere. + Otherwise, they point toward the center of the sphere. +

+ If texturing is turned on (with gluQuadricTexture), then texture + coordinates are + generated so that t ranges from 0.0 at + + + + z + = + + - + radius + + + + to 1.0 at + + + + z + = + radius + + + (t increases linearly along longitudinal + lines), + and s ranges from 0.0 at the +y axis, to 0.25 at the + +x axis, + to 0.5 at the \-y axis, to 0.75 at the \-x axis, and back to 1.0 + at the +y axis. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessBeginContour.xml b/upstream-man-pages/man2/xhtml/gluTessBeginContour.xml new file mode 100644 index 0000000..c1eec4b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessBeginContour.xml @@ -0,0 +1,25 @@ + + +gluTessBeginContour

Name

gluTessBeginContour — delimit a contour description

C Specification

void gluTessBeginContour(GLUtesselator*  tess);

C Specification

void gluTessEndContour(GLUtesselator*  tess);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

Description

+ gluTessBeginContour and gluTessEndContour delimit the definition of a + polygon contour. Within each gluTessBeginContour/gluTessEndContour + pair, there can be zero or more calls to gluTessVertex. The vertices + specify a closed contour (the last vertex of each contour is automatically linked + to the first). See the gluTessVertex reference page for more details. + gluTessBeginContour can only be called between gluTessBeginPolygon and gluTessEndPolygon. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessBeginPolygon.xml b/upstream-man-pages/man2/xhtml/gluTessBeginPolygon.xml new file mode 100644 index 0000000..780a37b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessBeginPolygon.xml @@ -0,0 +1,54 @@ + + +gluTessBeginPolygon

Name

gluTessBeginPolygon — delimit a polygon description

C Specification

void gluTessBeginPolygon(GLUtesselator*  tess,
 GLvoid*  data);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

data

+ Specifies a pointer to user polygon data. +

Description

+ gluTessBeginPolygon and gluTessEndPolygon delimit the definition of a + convex, concave or self-intersecting polygon. Within each gluTessBeginPolygon/gluTessEndPolygon + pair, there must be one or more calls to gluTessBeginContour/gluTessEndContour. + Within each contour, there are zero or more calls to gluTessVertex. The vertices + specify a closed contour (the last vertex of each contour is automatically linked + to the first). See the gluTessVertex, gluTessBeginContour, and + gluTessEndContour reference pages for more details. +

+ data is a pointer to a user-defined data structure. If the appropriate callback(s) + are specified (see gluTessCallback), then this pointer is returned to the + callback function(s). Thus, it is a convenient way to store per-polygon information. +

+ Once gluTessEndPolygon is called, the polygon is tessellated, and the + resulting triangles are described through callbacks. + See gluTessCallback for descriptions of the callback functions. +

Example

+ A quadrilateral with a triangular hole in it can be described as follows: +

+gluTessBeginPolygon(tobj, NULL);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v1, v1);
+      gluTessVertex(tobj, v2, v2);
+      gluTessVertex(tobj, v3, v3);
+      gluTessVertex(tobj, v4, v4);
+   gluTessEndContour(tobj);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v5, v5);
+      gluTessVertex(tobj, v6, v6);
+      gluTessVertex(tobj, v7, v7);
+   gluTessEndContour(tobj);
+gluTessEndPolygon(tobj);
+            

+

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessCallback.xml b/upstream-man-pages/man2/xhtml/gluTessCallback.xml new file mode 100644 index 0000000..ff94ba8 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessCallback.xml @@ -0,0 +1,237 @@ + + +gluTessCallback

Name

gluTessCallback — define a callback for a tessellation object

C Specification

void gluTessCallback(GLUtesselator*  tess,
 GLenum  which,
 _GLUfuncptr  CallBackFunc);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

which

+ Specifies the callback being defined. The following values are valid: + GLU_TESS_BEGIN, + GLU_TESS_BEGIN_DATA, + GLU_TESS_EDGE_FLAG, + GLU_TESS_EDGE_FLAG_DATA, + GLU_TESS_VERTEX, + GLU_TESS_VERTEX_DATA, + GLU_TESS_END, + GLU_TESS_END_DATA, + GLU_TESS_COMBINE, + GLU_TESS_COMBINE_DATA, + GLU_TESS_ERROR, and + GLU_TESS_ERROR_DATA. +

CallBackFunc

+ Specifies the function to be called. +

Description

+ gluTessCallback is used to indicate a callback to be used by a tessellation object. + If the specified callback is already defined, then it is replaced. If + CallBackFunc is NULL, then the existing callback becomes undefined. +

+ These callbacks are used by the tessellation object to describe how a + polygon specified by the user is broken into triangles. Note that there + are two versions of each callback: one with user-specified polygon data + and one without. If both versions of a particular callback are specified, + then the callback with user-specified polygon data will be used. Note + that the polygon_data parameter used by some of the functions is + a copy of the pointer that was specified when + gluTessBeginPolygon was called. The legal callbacks are as follows: +

GLU_TESS_BEGIN

+ The begin callback is invoked like glBegin to indicate the start of + a (triangle) primitive. The function takes a single argument of type + GLenum. If the GLU_TESS_BOUNDARY_ONLY property is set to + GLU_FALSE, then the argument is set to either + GLU_TRIANGLE_FAN, GLU_TRIANGLE_STRIP, or GLU_TRIANGLES. + If the GLU_TESS_BOUNDARY_ONLY property is set to GLU_TRUE, + then the argument will be set to GLU_LINE_LOOP. The function + prototype for this callback is: +

+void begin( GLenum type );
+                        

+

GLU_TESS_BEGIN_DATA

+ The same as the GLU_TESS_BEGIN callback except that it + takes an additional pointer argument. This pointer is identical to the + opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: +

+void beginData( GLenum type, void *polygon_data );
+                        

+

GLU_TESS_EDGE_FLAG

+ The edge flag callback is similar to glEdgeFlag. The function + takes a single boolean flag that indicates which edges lie on the + polygon boundary. If the flag is GLU_TRUE, then each vertex + that follows begins an edge that lies on the polygon boundary, that is, + an edge that separates an interior region from an exterior one. + If the flag is GLU_FALSE, then each vertex that follows begins an edge + that lies in the polygon interior. The edge flag callback (if defined) is + invoked before the first vertex callback. +

+ Since triangle fans and triangle strips do not support edge flags, the begin + callback is not called with GLU_TRIANGLE_FAN or GLU_TRIANGLE_STRIP + if a non-NULL edge flag callback is provided. (If the callback is + initialized to NULL, there is no impact on performance). Instead, the fans and + strips are converted to independent triangles. The function prototype + for this callback is: +

+void edgeFlag( GLboolean flag );
+                        

+

GLU_TESS_EDGE_FLAG_DATA

+ The same as the GLU_TESS_EDGE_FLAG callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: +

+void edgeFlagData( GLboolean flag, void *polygon_data );
+                        

+

GLU_TESS_VERTEX

+ The vertex callback is invoked between the begin and end callbacks. + It is similar to glVertex, and it defines the vertices of the triangles + created by the tessellation process. The function + takes a pointer as its only argument. This pointer is identical to + the opaque pointer provided by the user when the vertex was described + (see gluTessVertex). The function prototype for this callback is: +

+void vertex( void *vertex_data );
+                        

+

GLU_TESS_VERTEX_DATA

+ The same as the GLU_TESS_VERTEX callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: +

+void vertexData( void *vertex_data, void *polygon_data );
+                        

+

GLU_TESS_END

+ The end callback serves the same purpose as glEnd. It indicates the + end of a primitive and it takes no arguments. The function prototype for this + callback is: +

+void end( void );
+                        

+

GLU_TESS_END_DATA

+ The same as the GLU_TESS_END callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: +

+void endData( void *polygon_data );
+                        

+

GLU_TESS_COMBINE

+ The combine callback is called to create a new vertex when the tessellation + detects an intersection or wishes to merge features. The function takes + four arguments: an array of three elements each of type GLdouble, an array + of four pointers, an array of four elements each of type GLfloat, and a + pointer to a pointer. The prototype is: +

+void combine( GLdouble coords[3], void *vertex_data[4], 
+              GLfloat weight[4], void **outData );
+                        

+

+ The vertex is defined as a linear combination of up to four existing vertices, + stored in vertex_data. The coefficients of the linear + combination are given by weight; these weights always add up to 1. + All vertex pointers are valid even when some of the weights are 0. + coords gives the location of the new vertex. +

+ The user must allocate another vertex, interpolate parameters using + vertex_data and weight, and return the new vertex pointer in + outData. This handle is supplied during rendering callbacks. + The user is responsible for freeing the memory some time after + gluTessEndPolygon is called. +

+ For example, if the polygon lies in an arbitrary plane in 3-space, + and a color is associated with each vertex, the + GLU_TESS_COMBINE callback might look like this: +

+void myCombine( GLdouble coords[3], VERTEX *d[4],
+                GLfloat w[4], VERTEX **dataOut )
+{
+   VERTEX *new = new_vertex();
+
+   new->x = coords[0];
+   new->y = coords[1];
+   new->z = coords[2];
+   new->r = w[0]*d[0]->r + w[1]*d[1]->r + w[2]*d[2]->r + w[3]*d[3]->r;
+   new->g = w[0]*d[0]->g + w[1]*d[1]->g + w[2]*d[2]->g + w[3]*d[3]->g;
+   new->b = w[0]*d[0]->b + w[1]*d[1]->b + w[2]*d[2]->b + w[3]*d[3]->b;
+   new->a = w[0]*d[0]->a + w[1]*d[1]->a + w[2]*d[2]->a + w[3]*d[3]->a;
+   *dataOut = new;
+}
+                        

+

+ If the tessellation detects an intersection, then the GLU_TESS_COMBINE or + GLU_TESS_COMBINE_DATA callback (see below) must be defined, and it must + write a non-NULL pointer into dataOut. Otherwise the + GLU_TESS_NEED_COMBINE_CALLBACK error occurs, and no + output is generated. +

GLU_TESS_COMBINE_DATA

+ The same as the GLU_TESS_COMBINE callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: +

+void combineData( GLdouble coords[3], void *vertex_data[4], 
+                  GLfloat weight[4], void **outData, 
+                  void *polygon_data );
+                        

+

GLU_TESS_ERROR

+ The error callback is called when an error is encountered. The one argument + is of type GLenum; it indicates the specific error that occurred and will be + set to one of GLU_TESS_MISSING_BEGIN_POLYGON, GLU_TESS_MISSING_END_POLYGON, + GLU_TESS_MISSING_BEGIN_CONTOUR, GLU_TESS_MISSING_END_CONTOUR, + GLU_TESS_COORD_TOO_LARGE, GLU_TESS_NEED_COMBINE_CALLBACK, or + GLU_OUT_OF_MEMORY. Character + strings describing these errors can be retrieved with the + gluErrorString call. The function prototype for this callback is: +

+void error( GLenum errno );
+                        

+

+ The GLU library will recover from the first four + errors by inserting the missing call(s). + GLU_TESS_COORD_TOO_LARGE indicates that some vertex coordinate exceeded + the predefined constant GLU_TESS_MAX_COORD in absolute value, and + that the value has been clamped. (Coordinate values must be small + enough so that two can be multiplied together without overflow.) + GLU_TESS_NEED_COMBINE_CALLBACK indicates that the tessellation + detected an intersection between two edges in the input data, and the + GLU_TESS_COMBINE or GLU_TESS_COMBINE_DATA callback was + not provided. No output is generated. GLU_OUT_OF_MEMORY indicates + that there is not enough memory so no output is generated. +

GLU_TESS_ERROR_DATA

+ The same as the GLU_TESS_ERROR callback except that it takes an additional pointer + argument. This pointer is identical to the opaque pointer provided when + gluTessBeginPolygon was called. The function prototype for this callback + is: +

+void errorData( GLenum errno, void *polygon_data );
+                        

+

Example

+ Polygons tessellated can be rendered directly like this: +

+gluTessCallback(tobj, GLU_TESS_BEGIN, glBegin);
+gluTessCallback(tobj, GLU_TESS_VERTEX, glVertex3dv);
+gluTessCallback(tobj, GLU_TESS_END, glEnd);
+gluTessCallback(tobj, GLU_TESS_COMBINE, myCombine);
+gluTessBeginPolygon(tobj, NULL);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v, v);
+      ...
+   gluTessEndContour(tobj);
+gluTessEndPolygon(tobj);
+            

+ Typically, the tessellated polygon should be stored in a display list so that + it does not need to be retessellated every time it is rendered. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessEndContour.xml b/upstream-man-pages/man2/xhtml/gluTessEndContour.xml new file mode 100644 index 0000000..df32b0f --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessEndContour.xml @@ -0,0 +1,4 @@ + + + +gluTessEndContour diff --git a/upstream-man-pages/man2/xhtml/gluTessEndPolygon.xml b/upstream-man-pages/man2/xhtml/gluTessEndPolygon.xml new file mode 100644 index 0000000..297a499 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessEndPolygon.xml @@ -0,0 +1,57 @@ + + +gluTessEndPolygon

Name

gluTessEndPolygon — delimit a polygon description

C Specification

void gluTessEndPolygon(GLUtesselator*  tess);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

Description

+ gluTessBeginPolygon and gluTessEndPolygon delimit the + definition of a convex, concave, or self-intersecting polygon. Within + each gluTessBeginPolygon/gluTessEndPolygon pair, there must be + one or more calls to gluTessBeginContour/gluTessEndContour. + Within each contour, there are zero or more calls to gluTessVertex. + The vertices specify a closed contour (the last vertex of each contour + is automatically linked to the first). See the gluTessVertex, + gluTessBeginContour, and gluTessEndContour reference pages for + more details. +

+ Once gluTessEndPolygon is called, the polygon is tessellated, and the + resulting triangles are described through callbacks. + See gluTessCallback for descriptions of the callback functions. +

Example

+ A quadrilateral with a triangular hole in it can be described like this: +

+gluTessBeginPolygon(tobj, NULL);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v1, v1);
+      gluTessVertex(tobj, v2, v2);
+      gluTessVertex(tobj, v3, v3);
+      gluTessVertex(tobj, v4, v4);
+   gluTessEndContour(tobj);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v5, v5);
+      gluTessVertex(tobj, v6, v6);
+      gluTessVertex(tobj, v7, v7);
+   gluTessEndContour(tobj);
+gluTessEndPolygon(tobj);
+            

+ In the above example the pointers, + v1 + through + v7, + should point to different + addresses, + since the values stored at these addresses will not be read by + the tesselator until gluTessEndPolygon is called. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessNormal.xml b/upstream-man-pages/man2/xhtml/gluTessNormal.xml new file mode 100644 index 0000000..295bd33 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessNormal.xml @@ -0,0 +1,40 @@ + + +gluTessNormal

Name

gluTessNormal — specify a normal for a polygon

C Specification

void gluTessNormal(GLUtesselator*  tess,
 GLdouble  valueX,
 GLdouble  valueY,
 GLdouble  valueZ);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

valueX

+ Specifies the first component of the normal. +

valueY

+ Specifies the second component of the normal. +

valueZ

+ Specifies the third component of the normal. +

Description

+ gluTessNormal describes a normal for a polygon that the program is defining. + All input data will be projected onto a plane perpendicular to one of + the three coordinate axes before tessellation and all output triangles + will be oriented CCW with + respect to the normal (CW orientation can be obtained by reversing the + sign of the supplied normal). For example, if you know that all polygons + lie in the x-y plane, call gluTessNormal(tess, 0.0, 0.0, 1.0) + before rendering any polygons. +

+ If the supplied normal is (0.0, 0.0, 0.0) (the initial value), the normal is + determined as follows. The direction of the normal, up to its sign, is + found by fitting a plane to the vertices, without regard to how the + vertices are connected. It is expected that the input data lies approximately + in the plane; otherwise, projection perpendicular to one of the three + coordinate axes may substantially change the geometry. The sign of the + normal is chosen so that the sum of the signed areas of all input + contours is nonnegative (where a CCW contour has positive area). +

+ The supplied normal persists until it is changed by another call to + gluTessNormal. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessProperty.xml b/upstream-man-pages/man2/xhtml/gluTessProperty.xml new file mode 100644 index 0000000..378a1db --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessProperty.xml @@ -0,0 +1,73 @@ + + +gluTessProperty

Name

gluTessProperty — set a tessellation object property

C Specification

void gluTessProperty(GLUtesselator*  tess,
 GLenum  which,
 GLdouble  data);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

which

+ Specifies the property to be set. Valid values are + GLU_TESS_WINDING_RULE, + GLU_TESS_BOUNDARY_ONLY, and + GLU_TESS_TOLERANCE. +

data

+ Specifies the value of the indicated property. +

Description

+ gluTessProperty is used to control properties stored in a tessellation object. These + properties affect the way that the polygons are interpreted and rendered. + The legal values for which are as follows: +

GLU_TESS_WINDING_RULE

+ Determines which parts of the polygon are on the ``interior''. + data may be set to one of GLU_TESS_WINDING_ODD, + GLU_TESS_WINDING_NONZERO, GLU_TESS_WINDING_POSITIVE, + GLU_TESS_WINDING_NEGATIVE, or GLU_TESS_WINDING_ABS_GEQ_TWO. +

+ To understand how the winding rule works, consider that the input + contours partition the plane into regions. The winding rule determines which + of these regions are inside the polygon. +

+ For a single contour C, the winding number of a point x is simply the signed + number of revolutions we make around x as we travel once around C + (where CCW is positive). When there are several contours, the individual + winding numbers are summed. This procedure associates a signed integer + value with each point x in the plane. Note that the winding number is the + same for all points in a single region. +

+ The winding rule classifies a region as ``inside'' if its winding number + belongs to the chosen category (odd, nonzero, positive, negative, or + absolute value of at least two). The previous GLU tessellator (prior to + GLU 1.2) used the ``odd'' rule. The ``nonzero'' rule is another common way to + define the interior. The other three rules are useful for polygon CSG + operations. +

GLU_TESS_BOUNDARY_ONLY

+ Is a boolean value (``value'' should be set + to GL_TRUE or GL_FALSE). When set to GL_TRUE, a set of closed contours + separating the polygon interior and exterior are returned instead of a + tessellation. Exterior contours are oriented CCW with respect to the + normal; interior contours are oriented CW. The GLU_TESS_BEGIN + and GLU_TESS_BEGIN_DATA callbacks use the type GL_LINE_LOOP for + each contour. +

GLU_TESS_TOLERANCE

+ Specifies a tolerance for merging features to reduce the size of the output. + For example, two vertices that are very close to each other might be + replaced by a single vertex. The tolerance is multiplied by the largest + coordinate magnitude of any input vertex; this specifies the maximum + distance that any feature can move as the result of a single merge + operation. If a single feature takes part in several merge operations, the + total distance moved could be larger. +

+ Feature merging is completely optional; the tolerance is only a hint. + The implementation is free to merge in some cases and not in others, or to + never merge features at all. The initial tolerance is 0. +

+ The current implementation merges vertices only if they are exactly + coincident, regardless of the current tolerance. A vertex is spliced into + an edge only if the implementation is unable to distinguish which side of + the edge the vertex lies on. Two edges are merged only when both endpoints + are identical. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluTessVertex.xml b/upstream-man-pages/man2/xhtml/gluTessVertex.xml new file mode 100644 index 0000000..b9bae2a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluTessVertex.xml @@ -0,0 +1,76 @@ + + +gluTessVertex

Name

gluTessVertex — specify a vertex on a polygon

C Specification

void gluTessVertex(GLUtesselator*  tess,
 GLdouble *  location,
 GLvoid*  data);

Parameters

tess

+ Specifies the tessellation object (created with gluNewTess). +

location

+ Specifies the location of the vertex. +

data

+ Specifies an opaque pointer passed back to the program with the vertex callback + (as specified by gluTessCallback). +

Description

+ gluTessVertex describes a vertex on a polygon that the program defines. Successive + gluTessVertex calls describe a closed contour. For example, + to describe a quadrilateral, gluTessVertex should be called four times. + gluTessVertex can only be called between gluTessBeginContour and + gluTessEndContour. +

+ data normally points to a structure containing the vertex + location, as well as other per-vertex attributes such as color and normal. + This pointer is passed back to the user through the GLU_TESS_VERTEX + or GLU_TESS_VERTEX_DATA callback after tessellation + (see the gluTessCallback reference page). +

Example

+ A quadrilateral with a triangular hole in it can be described as follows: +

+gluTessBeginPolygon(tobj, NULL);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v1, v1);
+      gluTessVertex(tobj, v2, v2);
+      gluTessVertex(tobj, v3, v3);
+      gluTessVertex(tobj, v4, v4);
+   gluTessEndContour(tobj);
+   gluTessBeginContour(tobj);
+      gluTessVertex(tobj, v5, v5);
+      gluTessVertex(tobj, v6, v6);
+      gluTessVertex(tobj, v7, v7);
+   gluTessEndContour(tobj);
+gluTessEndPolygon(tobj);
+            

+

Notes

+ It is a common error to use a local variable for location or data and store + values into it as part of a loop. + For example: +

+for (i = 0; i < NVERTICES; ++i) {
+   GLdouble data[3];
+   data[0] = vertex[i][0];
+   data[1] = vertex[i][1];
+   data[2] = vertex[i][2];
+   gluTessVertex(tobj, data, data);
+}
+            

+

+ This doesn't work. + Because the pointers specified by location and data might not be + dereferenced until gluTessEndPolygon is executed, + all the vertex coordinates but the very last set could be overwritten + before tessellation begins. +

+ Two common symptoms of this problem are when the data consists of a single + point (when a local variable is used for data) and a + GLU_TESS_NEED_COMBINE_CALLBACK error (when a local variable is + used for location). +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluUnProject.xml b/upstream-man-pages/man2/xhtml/gluUnProject.xml new file mode 100644 index 0000000..1b13541 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluUnProject.xml @@ -0,0 +1,171 @@ + + +gluUnProject

Name

gluUnProject — map window coordinates to object coordinates

C Specification

GLint gluUnProject(GLdouble  winX,
 GLdouble  winY,
 GLdouble  winZ,
 const GLdouble *  model,
 const GLdouble *  proj,
 const GLint *  view,
 GLdouble*  objX,
 GLdouble*  objY,
 GLdouble*  objZ);

Parameters

winX, winY, winZ

+ Specify the window coordinates to be mapped. +

model

+ Specifies the modelview matrix (as from a glGetDoublev call). +

proj

+ Specifies the projection matrix (as from a glGetDoublev call). +

view

+ Specifies the viewport (as from a glGetIntegerv call). +

objX, objY, objZ

+ Returns the computed object coordinates. +

Description

+ gluUnProject maps the specified window coordinates into object + coordinates using model, proj, and view. + The result is stored in objX, objY, and objZ. A return value of + GLU_TRUE indicates success; a return value of GLU_FALSE + indicates failure. +

+ To compute the coordinates + + + + objX + objY + objZ + + , + gluUnProject multiplies the normalized device coordinates by the inverse of + model * proj as follows: +

+

+ + + + + + objX + + + objY + + + objZ + + + W + + + + = + + + INV + ⁡ + + + P + ⁢ + M + + + + ⁢ + + + + + + + + 2 + ⁡ + + + winX + - + + view + ⁡ + + 0 + + + + + + + + + view + ⁡ + + 2 + + + + + - + 1 + + + + + + + + 2 + ⁡ + + + winY + - + + view + ⁡ + + 1 + + + + + + + + + view + ⁡ + + 3 + + + + + - + 1 + + + + + + 2 + ⁡ + + winZ + + + - + 1 + + + + 1 + + + + + +

+ INV + denotes matrix inversion. + W is an unused variable, included for consistent matrix notation. +

See Also

+ gluProject, + glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/gluUnProject4.xml b/upstream-man-pages/man2/xhtml/gluUnProject4.xml new file mode 100644 index 0000000..1efb5eb --- /dev/null +++ b/upstream-man-pages/man2/xhtml/gluUnProject4.xml @@ -0,0 +1,217 @@ + + +gluUnProject4

Name

gluUnProject4 — map window and clip coordinates to object coordinates

C Specification

GLint gluUnProject4(GLdouble  winX,
 GLdouble  winY,
 GLdouble  winZ,
 GLdouble  clipW,
 const GLdouble *  model,
 const GLdouble *  proj,
 const GLint *  view,
 GLdouble  nearVal,
 GLdouble  farVal,
 GLdouble*  objX,
 GLdouble*  objY,
 GLdouble*  objZ,
 GLdouble*  objW);

Parameters

winX, winY, winZ

+ Specify the window coordinates to be mapped. +

clipW

+ Specify the clip w coordinate to be mapped. +

model

+ Specifies the modelview matrix (as from a glGetDoublev call). +

proj

+ Specifies the projection matrix (as from a glGetDoublev call). +

view

+ Specifies the viewport (as from a glGetIntegerv call). +

nearVal, farVal

+ Specifies the near and far planes (as from a glGetDoublev call). +

objX, objY, objZ, objW

+ Returns the computed object coordinates. +

Description

+ gluUnProject4 maps the specified window coordinatesi: winX, winY, and winZ + and its clip w coordinate clipW + into object + coordinates + + + + objX + objY + objZ + objW + + + using model, proj, and view. clipW can be other than + 1 as for vertices in glFeedbackBuffer when data type + GLU_4D_COLOR_TEXTURE is returned. + This also handles the case + where the nearVal and farVal planes are different from the default, + 0 and 1, respectively. + A return + value of GLU_TRUE indicates success; a return value of GLU_FALSE + indicates failure. +

+ To compute the coordinates + + + + objX + objY + objZ + objW + + , + gluUnProject4 multiplies the normalized device coordinates by the inverse of + model * proj as follows: +

+

+ + + + + + objX + + + objY + + + objZ + + + objW + + + + = + + + INV + ⁡ + + + P + ⁢ + M + + + + ⁢ + + + + + + + + 2 + ⁡ + + + winX + - + + view + ⁡ + + 0 + + + + + + + + + view + ⁡ + + 2 + + + + + - + 1 + + + + + + + + 2 + ⁡ + + + winY + - + + view + ⁡ + + 1 + + + + + + + + + view + ⁡ + + 3 + + + + + - + 1 + + + + + + + + 2 + ⁡ + + + winZ + - + nearVal + + + + + + + + farVal + - + nearVal + + + + + - + 1 + + + + clipW + + + + + +

+

+ INV + denotes matrix inversion. +

+ gluUnProject4 is equivalent to gluUnProject when clipW is 1, nearVal is 0, and + farVal is 1. +

Notes

+ gluUnProject4 is available only if the GLU version is 1.3 or greater. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/index.html b/upstream-man-pages/man2/xhtml/index.html new file mode 100644 index 0000000..2ce21d9 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/index.html @@ -0,0 +1,515 @@ + + +OpenGL Documentation + + + + + +

OpenGL 2.1 Reference Pages

+

+ + + + +

+ + + + + + + + +
A
glAccum
glActiveTexture
glAlphaFunc
glAreTexturesResident
glArrayElement
glAttachShader
Top
+ +

+ + + + + + + + + + + + + + + +
B
glBegin
glBeginQuery
glBindAttribLocation
glBindBuffer
glBindTexture
glBitmap
glBlendColor
glBlendEquation
glBlendEquationSeparate
glBlendFunc
glBlendFuncSeparate
glBufferData
glBufferSubData
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
C
glCallList
glCallLists
glClear
glClearAccum
glClearColor
glClearDepth
glClearIndex
glClearStencil
glClientActiveTexture
glClipPlane
glColor
glColorMask
glColorMaterial
glColorPointer
glColorSubTable
glColorTable
glColorTableParameter
glCompileShader
glCompressedTexImage1D
glCompressedTexImage2D
glCompressedTexImage3D
glCompressedTexSubImage1D
glCompressedTexSubImage2D
glCompressedTexSubImage3D
glConvolutionFilter1D
glConvolutionFilter2D
glConvolutionParameter
glCopyColorSubTable
glCopyColorTable
glCopyConvolutionFilter1D
glCopyConvolutionFilter2D
glCopyPixels
glCopyTexImage1D
glCopyTexImage2D
glCopyTexSubImage1D
glCopyTexSubImage2D
glCopyTexSubImage3D
glCreateProgram
glCreateShader
glCullFace
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + +
D
glDeleteBuffers
glDeleteLists
glDeleteProgram
glDeleteQueries
glDeleteShader
glDeleteTextures
glDepthFunc
glDepthMask
glDepthRange
glDetachShader
glDisable
glDisableClientState
glDisableVertexAttribArray
glDrawArrays
glDrawBuffer
glDrawBuffers
glDrawElements
glDrawPixels
glDrawRangeElements
Top
+ +

+ + + + + + + + + + + + + +
E
glEdgeFlag
glEdgeFlagPointer
glEnable
glEnableClientState
glEnableVertexAttribArray
glEnd
glEndList
glEndQuery
glEvalCoord
glEvalMesh
glEvalPoint
Top
+ +

+ + + + + + + + + + +
F
glFeedbackBuffer
glFinish
glFlush
glFog
glFogCoord
glFogCoordPointer
glFrontFace
glFrustum
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
G
glGenBuffers
glGenLists
glGenQueries
glGenTextures
glGet
glGetActiveAttrib
glGetActiveUniform
glGetAttachedShaders
glGetAttribLocation
glGetBufferParameteriv
glGetBufferPointerv
glGetBufferSubData
glGetClipPlane
glGetColorTable
glGetColorTableParameter
glGetCompressedTexImage
glGetConvolutionFilter
glGetConvolutionParameter
glGetError
glGetHistogram
glGetHistogramParameter
glGetLight
glGetMap
glGetMaterial
glGetMinmax
glGetMinmaxParameter
glGetPixelMap
glGetPointerv
glGetPolygonStipple
glGetProgram
glGetProgramInfoLog
glGetQueryObject
glGetQueryiv
glGetSeparableFilter
glGetShader
glGetShaderInfoLog
glGetShaderSource
glGetString
glGetTexEnv
glGetTexGen
glGetTexImage
glGetTexLevelParameter
glGetTexParameter
glGetUniform
glGetUniformLocation
glGetVertexAttrib
glGetVertexAttribPointerv
Top
+ +

+ + + + +
H
glHint
glHistogram
Top
+ +

+ + + + + + + + + + + + + + +
I
glIndex
glIndexMask
glIndexPointer
glInitNames
glInterleavedArrays
glIsBuffer
glIsEnabled
glIsList
glIsProgram
glIsQuery
glIsShader
glIsTexture
Top
+ +

+ + + + + + + + + + + + + +
L
glLight
glLightModel
glLineStipple
glLineWidth
glLinkProgram
glListBase
glLoadIdentity
glLoadMatrix
glLoadName
glLoadTransposeMatrix
glLogicOp
Top
+ +

+ + + + + + + + + + + + + + +
M
glMap1
glMap2
glMapBuffer
glMapGrid
glMaterial
glMatrixMode
glMinmax
glMultMatrix
glMultTransposeMatrix
glMultiDrawArrays
glMultiDrawElements
glMultiTexCoord
Top
+ +

+ + + + + +
N
glNewList
glNormal
glNormalPointer
Top
+ +

+ + + +
O
glOrtho
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + +
P
glPassThrough
glPixelMap
glPixelStore
glPixelTransfer
glPixelZoom
glPointParameter
glPointSize
glPolygonMode
glPolygonOffset
glPolygonStipple
glPopAttrib
glPopClientAttrib
glPopMatrix
glPopName
glPrioritizeTextures
glPushAttrib
glPushClientAttrib
glPushMatrix
glPushName
Top
+ +

+ + + + + + + + + + +
R
glRasterPos
glReadBuffer
glReadPixels
glRect
glRenderMode
glResetHistogram
glResetMinmax
glRotate
Top
+ +

+ + + + + + + + + + + + + + + + + +
S
glSampleCoverage
glScale
glScissor
glSecondaryColor
glSecondaryColorPointer
glSelectBuffer
glSeparableFilter2D
glShadeModel
glShaderSource
glStencilFunc
glStencilFuncSeparate
glStencilMask
glStencilMaskSeparate
glStencilOp
glStencilOpSeparate
Top
+ +

+ + + + + + + + + + + + + + +
T
glTexCoord
glTexCoordPointer
glTexEnv
glTexGen
glTexImage1D
glTexImage2D
glTexImage3D
glTexParameter
glTexSubImage1D
glTexSubImage2D
glTexSubImage3D
glTranslate
Top
+ +

+ + + + + +
U
glUniform
glUnmapBuffer
glUseProgram
Top
+ +

+ + + + + + + + +
V
glValidateProgram
glVertex
glVertexAttrib
glVertexAttribPointer
glVertexPointer
glViewport
Top
+ +

+ + + +
W
glWindowPos
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
glu
gluBeginCurve
gluBeginPolygon
gluBeginSurface
gluBeginTrim
gluBuild1DMipmapLevels
gluBuild1DMipmaps
gluBuild2DMipmapLevels
gluBuild2DMipmaps
gluBuild3DMipmapLevels
gluBuild3DMipmaps
gluCheckExtension
gluCylinder
gluDeleteNurbsRenderer
gluDeleteQuadric
gluDeleteTess
gluDisk
gluEndCurve
gluEndPolygon
gluEndSurface
gluEndTrim
gluErrorString
gluGetNurbsProperty
gluGetString
gluGetTessProperty
gluLoadSamplingMatrices
gluLookAt
gluNewNurbsRenderer
gluNewQuadric
gluNewTess
gluNextContour
gluNurbsCallback
gluNurbsCallbackData
gluNurbsCallbackDataEXT
gluNurbsCurve
gluNurbsProperty
gluNurbsSurface
gluOrtho2D
gluPartialDisk
gluPerspective
gluPickMatrix
gluProject
gluPwlCurve
gluQuadricCallback
gluQuadricDrawStyle
gluQuadricNormals
gluQuadricOrientation
gluQuadricTexture
gluScaleImage
gluSphere
gluTessBeginContour
gluTessBeginPolygon
gluTessCallback
gluTessEndContour
gluTessEndPolygon
gluTessNormal
gluTessProperty
gluTessVertex
gluUnProject
gluUnProject4
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
glX
glXChooseFBConfig
glXChooseVisual
glXCopyContext
glXCreateContext
glXCreateGLXPixmap
glXCreateNewContext
glXCreatePbuffer
glXCreatePixmap
glXCreateWindow
glXDestroyContext
glXDestroyGLXPixmap
glXDestroyPbuffer
glXDestroyPixmap
glXDestroyWindow
glXFreeContextEXT
glXGetClientString
glXGetConfig
glXGetContextIDEXT
glXGetCurrentContext
glXGetCurrentDisplay
glXGetCurrentDrawable
glXGetCurrentReadDrawable
glXGetFBConfigAttrib
glXGetFBConfigs
glXGetProcAddress
glXGetSelectedEvent
glXGetVisualFromFBConfig
glXImportContextEXT
glXIntro
glXIsDirect
glXMakeContextCurrent
glXMakeCurrent
glXQueryContext
glXQueryContextInfoEXT
glXQueryDrawable
glXQueryExtension
glXQueryExtensionsString
glXQueryServerString
glXQueryVersion
glXSelectEvent
glXSwapBuffers
glXUseXFont
glXWaitGL
glXWaitX
Top
+ + + + diff --git a/upstream-man-pages/man2/xhtml/makeindex.pl b/upstream-man-pages/man2/xhtml/makeindex.pl new file mode 100755 index 0000000..1c29eab --- /dev/null +++ b/upstream-man-pages/man2/xhtml/makeindex.pl @@ -0,0 +1,335 @@ +#!/usr/bin/perl + +sub Usage { +print +"Usage: makeindex xhtmldir xmldir + where xhtmldir contains a directory full of OpenGL .xml XHTML man pages -AND- + where xmldir contains a directory full of OpenGL .xml source XML man pages + + probably want to redirect output into a file like + ./makeindex.pl . .. > ./index.html +" +} + +sub PrintHeader { +print ' + +OpenGL Documentation + + + + + +

OpenGL 2.1 Reference Pages

+

+ +'; +} + +sub PrintFooter { +print ' + + +'; +} + +sub TableElementForFilename { + my $name = shift; + + my $strippedname = $name; + $strippedname =~ s/\.xml//; + print "\t"; + print ''; + print "$strippedname"; + print "\n"; +} + +sub BeginTable { + my $letter = shift; + print "

\n"; + print ''; + print "\t\n"; +} + +sub EndTable { + print "\t"; + print ''; + print "\n
"; + print "$letter
Top
\n\n"; +} + + + +############## +# main +############## + +if (@ARGV != 2) +{ + Usage(); + die; +} + +# grab list of generated XHTML files +opendir(DIR,$ARGV[0]) or die "couldn't open directory"; + +@files = readdir(DIR); +close(DIR); +@files = sort @files; + +PrintHeader(); + +my @glX; +my @glut; +my @glu; +my @gl; + +my @realEntrypoints; +my @pageNames; + +#pre-create list of all true entrypoint names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + @funcs = ; + @funcs = grep(//, @funcs); + foreach (@funcs) + { + $func = $_; + $func =~ s/.*//; + $func =~ s/<\/function>.*\n//; + + push (@realEntrypoints, $func); + } + close(PARENT); + } + } +} + +#pre-create list of page names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + push (@pageNames, $entrypoint); + + close(PARENT); + } + } +} + +#sort the files into gl, glut, glu, and glX + +foreach (@files) +{ + if (/xml/) + { + # filter out entrypoint variations that don't have their own man pages + my $needIndexEntry = 0; + + # continue only if parent page exists (e.g. glColor) OR + # different parent page exists with matching entrypoint (e.g. glEnd) + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + foreach (@pageNames) + { + if ($_ eq $entrypoint) + { + # it has its own man page + $needIndexEntry = 1; + } + } + + if ($needIndexEntry == 0) + { + foreach (@realEntrypoints) + { + if ($_ eq $entrypoint) + { + # it's a real entrypoint, but make sure not a variation + $needIndexEntry = 1; + + foreach (@pageNames) + { + my $alteredEntrypoint = $entrypoint; + $alteredEntrypoint =~ s/$_//; + + if (!($alteredEntrypoint eq $entrypoint)) + { + $needIndexEntry = 0; + } + } + } + } + } + + if ($needIndexEntry) + { + if (/^glX/) + { + push (@glX, $_); + } + elsif (/^glut/) + { + push (@glut, $_); + } + elsif (/^glu/) + { + push (@glu, $_); + } + elsif (/^gl/) + { + push (@gl, $_); + } + } + } +} + + +#output the table of contents + +my @toc; + +if ($#gl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@gl) + { + $name = $_; + $name =~ s/^gl//; + $firstletter = substr($name, 0, 1); + if ($firstletter ne $currentletter) + { + push (@toc, $firstletter); + $currentletter = $firstletter; + } + } + if ($#glu > 0) { push (@toc, "glu"); } + if ($#glut > 0) { push (@toc, "glut"); } + if ($#glX > 0) { push (@toc, "glX"); } +} + + +print '
'; +foreach (@toc) +{ + print ' '; + print $_; + print "   "; +} +print "
\n\n\n"; + +# output the tables + +if ($#gl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@gl) + { + $name = $_; + $name =~ s/^gl//; + $firstletter = substr($name, 0, 1); + if ($firstletter ne $currentletter) + { + if ($opentable == 1) + { + EndTable(); + } + BeginTable($firstletter); + $opentable =1; + $currentletter = $firstletter; + } + TableElementForFilename($_); + } + if ($opentable) + { + EndTable(); + } +} + +if ($#glu > 0) +{ + BeginTable("glu"); + foreach (@glu) + { + TableElementForFilename($_); + } + EndTable(); +} + +if ($#glut > 0) +{ + BeginTable("glut"); + foreach (@glut) + { + TableElementForFilename($_); + } + EndTable(); +} + +if ($#glX > 0) +{ + BeginTable("glX"); + foreach (@glX) + { + TableElementForFilename($_); + } + EndTable(); +} + +PrintFooter(); diff --git a/upstream-man-pages/man2/xhtml/mathml.xsl b/upstream-man-pages/man2/xhtml/mathml.xsl new file mode 100644 index 0000000..e630f11 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/mathml.xsl @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man2/xhtml/opengl-man.xsl b/upstream-man-pages/man2/xhtml/opengl-man.xsl new file mode 100644 index 0000000..b9de9f3 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/opengl-man.xsl @@ -0,0 +1,49 @@ + + + + + +ansi + +.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + type="text/xsl" href="mathml.xsl" + + + + + diff --git a/upstream-man-pages/man2/xhtml/pmathml.xsl b/upstream-man-pages/man2/xhtml/pmathml.xsl new file mode 100644 index 0000000..56e9ec0 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/pmathml.xsl @@ -0,0 +1,615 @@ + + + + + + + + + + + '<!--' + + + + + + + + + + + + + + + + + + + + + + + + +in mpdialog mode, we just write out some JavaScript to display +dialog to the reader asking whether they want to install MathPlayer +Depending on the response we get, we then instantiate an XSL processor +and reprocess the doc, passing $secondpass according to the +reader response. + +Using d-o-e is fairly horrible, but this code is only for IE +anyway, and we need to force HTML semantics in this case. + + +var cookieName = "MathPlayerInstall="; +function MPInstall(){ + + if (typeof document.body.style.maxHeight != "undefined") return null; + var showDialog=true; + var c = document.cookie; + var i = c.indexOf(cookieName); + if (i >= 0) { + if ( c.substr(i + cookieName.length, 1) >= 2) { showDialog=false; } + } + if (showDialog) { + MPDialog(); + c = document.cookie; + i = c.indexOf(cookieName); + } + if (i >= 0) return c.substr(i + cookieName.length, 1); + else return null; +} + +function MPDialog() { + var vArgs=""; + var sFeatures="dialogWidth:410px;dialogHeight:190px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'function fnClose(v) { ' + text += 'var exp = new Date();' + text += 'var thirtyDays = exp.getTime() + (30 * 24 * 60 * 60 * 1000);' + text += 'exp.setTime(thirtyDays);' + text += 'var cookieProps = ";expires=" + exp.toGMTString();' + text += 'if (document.forms[0].dontask.checked) v+=2;' + text += 'document.cookie="' + cookieName + '"+v+cookieProps;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Install MathPlayer?</title></head>' + text += '<body bgcolor="#D4D0C8"><form>' + text += '<table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>This page requires Design Science\\\'s MathPlayer&trade;.<br>' + text += 'Do you want to download and install MathPlayer?</td></tr>'; + text += '<tr><td align=center><input type="checkbox" name="dontask">' + text += 'Don\\\'t ask me again</td></tr>' + text += '<tr><td align=center><input id=yes type="button" value=" Yes "' + text += ' onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value=" No " onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + window.showModalDialog( text , vArgs, sFeatures ); +} + +function WaitDialog() { + var vArgs=""; + var sFeatures="dialogWidth:510px;dialogHeight:150px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'window.onload=fnLoad;' + text += 'function fnLoad() {document.forms[0].yes.focus();}' + text += 'function fnClose(v) { ' + text += 'window.returnValue=v;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Wait for Installation?</title></head>' + text += '<body bgcolor="#D4D0C8" onload="fnLoad()"><form><' + text += 'table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>Click OK once MathPlayer is installed ' + text += 'to refresh the page.<br>' + text += 'Click Cancel to view the page immediately without MathPlayer.</td></tr>'; + text += '<tr><td align=center><input id=yes type="button" ' + text += 'value=" OK " onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value="Cancel" onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + return window.showModalDialog( text , vArgs, sFeatures ); +} + +var result = MPInstall(); + +var action = "fallthrough"; +if (result == 1 || result == 3) { + window.open("http://www.dessci.com/webmath/mathplayer"); + var wait = WaitDialog(); + if ( wait == 1) { + action = "install"; + document.location.reload(); + + } +} +if (action == "fallthrough") { +var xsl = new ActiveXObject("Microsoft.FreeThreadedXMLDOM"); +xsl.async = false; +xsl.validateOnParse = false; +xsl.load("pmathmlcss.xsl"); +var xslTemplate = new ActiveXObject("MSXML2.XSLTemplate.3.0"); +xslTemplate.stylesheet=xsl.documentElement; +var xslProc = xslTemplate.createProcessor(); +xslProc.input = document.XMLDocument; + +xslProc.transform(); +var str = xslProc.output; + +var repl = "replace"; +if (window.navigator.appVersion.match(/Windows NT 5.1/)) { repl = ""; } +var newDoc = document.open("text/html", repl); +newDoc.write(str); +document.close(); +} + + +mathplayer-dl + +techexplorer-plugin + + + + + + + + techexplorer-plugin + + + + + mathplayer-dl + + + + + + + + + + + + +IE5 hacks +This code will be ignored by an XSLT engine as a top level +element in a foreign namespace. It will be executed by an IE5XSL +engine and insert <!-- into the output stream, ie the start of a +comment. This will comment out all the XSLT code which will be copied +to the output. A similar clause below will close this comment, it is +then followed by the IE5XSL templates to be executed. +This trick is due to Jonathan Marsh of Microsoft, and used in +the stylesheet for +the XPath 2 data model draft. + + +XSLT stylesheet +MSXSL script block + +The following script block implements an extension function that +tests whether a specified ActiveX component is known to the client. +This is used below to test for the existence of MathML rendering +components. + + function isinstalled(ax) + { + try { + var ActiveX = new ActiveXObject(ax); + return "true"; + } catch (e) { + return "false"; + } +} + + +The main bulk of this stylesheet is an identity transformation so... + + + + + + + + + +XHTML elements are copied sans prefix (XHTML is default namespace +here, so these elements will still be in XHTML namespace + + + + + + + +IE's treatment of XHTML as HTML needs a little help here... + + + + + + > + + + + + + + + + + +This just ensures the mathml prefix declaration isn't copied from +the source at this stage, so that the system will use the mml prefix +coming from this stylesheet + + + + + + + +We modify the head element to add code to specify a Microsoft +"Behaviour" if the behaviour component is known to the system. +Test for MathPlayer (Design Science) +Test for Techexplorer (IBM) +Test for Microsoft. In this case we just +output a small HTML file that executes a script that will re-process +the source docuument with a different stylesheet. Doing things this +way avoids the need to xsl:import the second stylesheet, which would +very much increase the processing overhead of running this +stylesheet. +Further tests (eg for netscape/mozilla) could +be added here if necessary + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Somewhat bizarrely in an otherwise namespace aware system, +Microsoft behaviours are defined to trigger off the +prefix not the Namespace. In the code above +we associated a MathML rendering behaviour (if one was found) with the +prefix mml: so here we ensure that this is the prefix +that actually gets used in the output. + + + + + + + +Copy semantics element through in IE (so mathplayer gets to see +mathplayer annotations, otherwise use first child or a presentation annotation. + + + + + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + /> + + + + + + " + + + + + + " + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +IE5XSL stylesheet +In a rare fit of sympathy for users of +the-language-known-as-XSL-in-IE5 this file incorporates a +version of the above code designed to work in the Microsoft dialect. +This is needed otherwise users of a MathML rendering behaviour would +have to make a choice whether they wanted to use this stylesheet +(keeping their source documents conforming XHTML+MathML) or to use +the explicit Microsoft Object code, which is less portable, but would +work in at least IE5.5. + +This entire section of code, down to the end of the stylesheet is +contained within this ie5:if. Thus XSLT sees it as a top level element +from a foreign namespace and silently ignores it. IE5XSL sees it as +"if true" and so executes the code. + + +First close the comment started at the beginning. This ensures +that the bulk of the XSLT code, while being copied to the result tree +by the IE5XSL engine, will not be rendered in the browser. + +Lacking attribute value templates in +xsl:element, and the local-name() function, we resort to constructing +the start and end tags in strings in javascript, then using +no-entities attribute which is the IE5XSL equivalent of disable-output-encoding + + +'-->' + + + + + + function mpisinstalled() + { + try { + var ActiveX = new ActiveXObject("MathPlayer.Factory.1"); + return "true"; + } catch (e) { + return "false"; + } +} + + + + + + + + + + + + + + + + + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + +'<math>' + +'</math>' + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man2/xhtml/pmathmlcss.xsl b/upstream-man-pages/man2/xhtml/pmathmlcss.xsl new file mode 100644 index 0000000..a1f96da --- /dev/null +++ b/upstream-man-pages/man2/xhtml/pmathmlcss.xsl @@ -0,0 +1,873 @@ + + + + + + + + +Dictionary + + The following elements in the x: namespace form an +implementation of an "Operator Dictionary" for this MathML +Implementation. In the case of stretch operators, the element +specifies the symbol parts via the latin-1 equivalent character based +on the encoding in the symbol font. It is a clear "failure to comply +to the spec" that using latin 1 characters (or numeric character +references) in the latin 1 range access glyphs in teh symbol font via +font position, however most of these character parts are not in +Unicode (until 3.2), so there is no standard way to access these characters. + +{ +{ + +( +) + +[ +] + +[[ +]] + +| +|| + + + + +~ +_v_ + + +Remove these for now, as XML parser in IE6 is broken and doesn't +accept plane 1 characters. + + +Grab all of the above into a variable. + + +HTML elements + + +XHTML elements get passed straight through, sans namespace prefix. + + + + + + + + + + + + +Template for the head element copies the original content, aand in +addition adds a script element and CSS style element that implement +the core of the MathML renderer. + + + +The malign function first finds the left most item in the aligngroup, and +then modifies the left margin of each item to make them +align. (Currently only left alignment is supported.) + + + +The mrowStretch function implements stretchy brackets. It is called +repeatedly, once for each mo child,after a span corresponding to an +mrow. The arguments are the id of teh span and the characters to use +for the parts of the stretch operator. +constructed fence. The + + + +Inline CSS style block handles all font and size specification for the +various MathML operators. + + + + + + + + + + + + + + + + +Unimplemented MathML elements get copied literally, in red, mainly as +a debugging aid. + + +<> + +</> + + + +mi: set default font based on string length, otherwise behaviour based +on entries in the operator dictionary if one exists, or content is +copied through to the output unchanged. + + + + +mi1 + + + + + + + + + + + + + + + + +Handling of mathvariant attribute. +The choice of font families here (currently) avoids math-specific +fonts but does use several fionts coming with windows 9.x and/or +office 2000. + + +font-weight: bold; font-style: upright + + +font-style: upright; font-weight: bold; font-style: italic; + + +font-style: italic; + + +font-family: monospace; + + + +font-family: sans-serif; + + +font-family: sans-serif; font-weight: bold; + + + +font-family: old english text mt + + + + +doublestruck + + + + +font-family: brush script mt italic + + + + +mo: Generate a unique ID so that a script at the end of any +surrounding mrow may replace the conent by a suitably stretched +operator if need be. + + + + + + +mn: a simple span + + + + + + +munder: currently only supports underline, with a bottom border + + + + border-width: 0pt 0pt .1em 0pt; border-style: solid;" + + + + + +mover: currently only supports overline, with a top border + + + + border-width: .1em 0pt 0pt 0pt; border-style: solid;" + + + + + +munderover: + + + + + +
+
+ +mtext: a simple span + + + + + + +mstyle: not many attributes currently supported + + + + color: ; + background-color: ; + + + + + + +mglyph: Uses disable output escaping to construct a numeric +character reference. Uses IE's non conforming behaviour of using this +number to access the font encoding rather than unicode. + + +; + + + +ms: a simple span with left and right character added to the content. + + + " + + " + + + + + + + + + + + + + + + ( + + + + + + ) + + + + + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\ + + + + + +\ + + + + + + + + + + + + + + + + + +\ + + + + + + + + + + font-size: 75% ; + + + font-size: 100% ; + + + +
+ +
+ +
+
+ + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +left + + + + + + +
diff --git a/upstream-man-pages/man2/xhtml/start.html b/upstream-man-pages/man2/xhtml/start.html new file mode 100644 index 0000000..3dcab8c --- /dev/null +++ b/upstream-man-pages/man2/xhtml/start.html @@ -0,0 +1,102 @@ + + +Start Page + + + + +

OpenGL 2.1 Reference Pages

+ +

Use the index at the left to choose any GL, GLU, or GLX reference page for viewing. The reference pages +(also known as "man pages") include all of the important usage information for each command. This +information includes a description of all parameters, return values, error conditions, and related +commands.

+ +

Browser Compatibility

+ +

Many of the reference pages depend on relatively complex math equations. We've chosen the industry +standard, MathML, for rendering our equations. This standard is gaining widespread support, but there +are still some growing pains. Here's what you can expect from different browsers:

+
+ +

Downloading Man Page Sources

+ +

The Docbook XML source for the man pages is available for anonymous + checkout in Khronos' Subversion server, and you can build a man page + distribution of your own using open source tools. See the OpenGL.org + technical Wiki pages describing the + XML Toolchain and Man Pages for more information.

+ +

Feedback

+ +

If you find any inaccuracies or typos in the reference pages, don't + hesitate to inform us via the feedback + form or using the + Khronos Bugzilla (you must first create a Bugzilla account, + however).

+ +.

+ + + diff --git a/upstream-man-pages/man2/xhtml/test.xml b/upstream-man-pages/man2/xhtml/test.xml new file mode 100644 index 0000000..4fa031b --- /dev/null +++ b/upstream-man-pages/man2/xhtml/test.xml @@ -0,0 +1,444 @@ + + +glMap1

Name

glMap1 — define a one-dimensional evaluator

C Specification

void glMap1f(GLenum  target,
 GLfloat  u1,
 GLfloat  u2,
 GLint  stride,
 GLint  order,
 const GLfloat *  points);
void glMap1d(GLenum  target,
 GLdouble  u1,
 GLdouble  u2,
 GLint  stride,
 GLint  order,
 const GLdouble *  points);

Parameters

target

+ Specifies the kind of values that are generated by the evaluator. + Symbolic constants + GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4, + GL_MAP1_INDEX, + GL_MAP1_COLOR_4, + GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3, and + GL_MAP1_TEXTURE_COORD_4 are accepted. +

u1, u2

+ Specify a linear mapping of + u, + as presented to glEvalCoord1, + to + + + û + , + the variable that is evaluated by the equations specified by this command. +

stride

+ Specifies the number of floats or doubles between + the beginning of one control point and the beginning of the next one + in the data structure referenced in points. + This allows control points to be embedded in arbitrary data structures. + The only constraint is that the values for a particular control point + must occupy contiguous memory locations. +

order

+ Specifies the number of control points. + Must be positive. +

points

+ Specifies a pointer to the array of control points. +

Description

+ Evaluators provide a way to use polynomial or rational polynomial mapping + to produce vertices, + normals, + texture coordinates, + and colors. + The values produced by an evaluator are sent to further stages + of GL processing just as if they had been presented using + glVertex, + glNormal, + glTexCoord, and + glColor commands, + except that the generated values do not update the current normal, + texture coordinates, + or color. +

+ All polynomial or rational polynomial splines of any degree + (up to the maximum degree supported by the GL implementation) + can be described using evaluators. + These include almost all splines used in computer graphics: B-splines, + Bezier curves, Hermite splines, and so on. +

+ Evaluators define curves based on Bernstein polynomials. + Define + + + + p + ⁡ + + û + + + + as +

+

+ + + + p + ⁡ + + û + + + = + + + Σ + + i + = + 0 + + n + + + + + B + i + + + n + + ⁡ + + û + + + ⁢ + R + i + + + + +

+

+

+ where + + + R + i + + + is a control point and + + + + + B + i + + + n + + ⁡ + + û + + + + is the + ith + Bernstein polynomial of degree + n + (order = + + + + n + + + 1 + + ): +

+ + + + + + B + i + + + n + + ⁡ + + û + + + = + + + + + + n + + + i + + + + + ⁢ + + û + + i + + ⁢ + + + + 1 + - + û + + + + + n + - + i + + + + + + + +

+ Recall that +

+ + + + 0 + 0 + + == + 1 + + + and + + + + + + + + n + + + 0 + + + + + == + 1 + + +

+ glMap1 is used to define the basis and to specify what kind of values + are produced. + Once defined, + a map can be enabled and disabled by calling glEnable and glDisable + with the map name, one of the nine predefined values for target + described below. + glEvalCoord1 evaluates the one-dimensional maps that are enabled. + When + glEvalCoord1 presents a value + u, + the Bernstein functions are evaluated using + + + û + , + where + + + + û + = + + + + u + - + u1 + + + + + u2 + - + u1 + + + + + +

+ target is a symbolic constant that indicates what kind of control points + are provided in points, + and what output is generated when the map is evaluated. + It can assume one of nine predefined values: +

GL_MAP1_VERTEX_3

+ Each control point is three floating-point values representing + x, + y, + and + z. + Internal glVertex3 commands are generated when the map is evaluated. +

GL_MAP1_VERTEX_4

+ Each control point is four floating-point values representing + x, + y, + z, + and + w. + Internal glVertex4 commands are generated when the map is evaluated. +

GL_MAP1_INDEX

+ Each control point is a single floating-point value representing a color index. + Internal glIndex commands are generated when the map is evaluated + but the current index is not updated with the value of these glIndex + commands. +

GL_MAP1_COLOR_4

+ Each control point is four floating-point values representing + red, green, blue, and alpha. + Internal glColor4 commands are generated when the map is + evaluated but the current color is not updated with the value of these + glColor4 commands. +

GL_MAP1_NORMAL

+ Each control point is three floating-point values representing + the + x, + y, + and + z + components of a normal vector. + Internal glNormal commands are generated when the map is + evaluated but the current normal is not updated with the value of + these glNormal commands. +

GL_MAP1_TEXTURE_COORD_1

+ Each control point is a single floating-point value representing + the + s + texture coordinate. + Internal + glTexCoord1 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_2

+ Each control point is two floating-point values representing + the + s + and + t + texture coordinates. + Internal + glTexCoord2 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_3

+ Each control point is three floating-point values representing + the + s, + t, + and + r + texture coordinates. + Internal glTexCoord3 commands are generated when the map is + evaluated but the current texture coordinates are not updated with the value + of these glTexCoord commands. +

GL_MAP1_TEXTURE_COORD_4

+ Each control point is four floating-point values representing + the + s, + t, + r, + and + q + texture coordinates. + Internal + glTexCoord4 commands are generated when the map is evaluated but + the current texture coordinates are not updated with the value + of these glTexCoord commands. +

+ stride, + order, and + points define the array addressing for accessing the control points. + points is the location of the first control point, + which occupies one, two, three, or four contiguous memory locations, + depending on which map is being defined. + order is the number of control points in the array. + stride specifies how many float or double locations to advance the internal + memory pointer to reach the next control point. +

Notes

+ As is the case with all GL commands that accept pointers to data, + it is as if the contents of points were copied by glMap1 before glMap1 + returns. + Changes to the contents of points have no effect after glMap1 is called. +

Errors

+ GL_INVALID_ENUM is generated if target is not an accepted value. +

+ GL_INVALID_VALUE is generated if u1 is equal to u2. +

+ GL_INVALID_VALUE is generated if stride is less than the number + of values in a control point. +

+ GL_INVALID_VALUE is generated if order is less than 1 or + greater than the return value of GL_MAX_EVAL_ORDER. +

+ GL_INVALID_OPERATION is generated if glMap1 + is executed between the execution of + glBegin + and the corresponding execution of glEnd. +

+ GL_INVALID_OPERATION is generated if glMap1 is called and the value + of GL_ACTIVE_TEXTURE is not GL_TEXTURE0. +

Associated Gets

+ glGetMap +

+ glGet with argument GL_MAX_EVAL_ORDER +

+ glIsEnabled with argument GL_MAP1_VERTEX_3 +

+ glIsEnabled with argument GL_MAP1_VERTEX_4 +

+ glIsEnabled with argument GL_MAP1_INDEX +

+ glIsEnabled with argument GL_MAP1_COLOR_4 +

+ glIsEnabled with argument GL_MAP1_NORMAL +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_1 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_2 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_3 +

+ glIsEnabled with argument GL_MAP1_TEXTURE_COORD_4 +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man2/xhtml/xhtml-lat1.ent b/upstream-man-pages/man2/xhtml/xhtml-lat1.ent new file mode 100644 index 0000000..ffee223 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/xhtml-lat1.ent @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man2/xhtml/xhtml-special.ent b/upstream-man-pages/man2/xhtml/xhtml-special.ent new file mode 100644 index 0000000..ca358b2 --- /dev/null +++ b/upstream-man-pages/man2/xhtml/xhtml-special.ent @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man2/xhtml/xhtml-symbol.ent b/upstream-man-pages/man2/xhtml/xhtml-symbol.ent new file mode 100644 index 0000000..63c2abf --- /dev/null +++ b/upstream-man-pages/man2/xhtml/xhtml-symbol.ent @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man2/xhtml/xhtml1-transitional.dtd b/upstream-man-pages/man2/xhtml/xhtml1-transitional.dtd new file mode 100644 index 0000000..628f27a --- /dev/null +++ b/upstream-man-pages/man2/xhtml/xhtml1-transitional.dtd @@ -0,0 +1,1201 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/Makefile b/upstream-man-pages/man3/Makefile new file mode 100644 index 0000000..06c2ca2 --- /dev/null +++ b/upstream-man-pages/man3/Makefile @@ -0,0 +1,49 @@ +#!gmake +# +# License Applicability. Except to the extent portions of this file are +# made subject to an alternative license as permitted in the SGI Free +# Software License B, Version 1.1 (the "License"), the contents of this +# file are subject only to the provisions of the License. You may not use +# this file except in compliance with the License. You may obtain a copy +# of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +# Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +# +# http://oss.sgi.com/projects/FreeB +# +# Note that, as provided in the License, the Software is distributed on an +# "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +# DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +# CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +# PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +# +# Original Code. The Original Code is: OpenGL Sample Implementation, +# Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +# Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: The application programming interfaces +# established by SGI in conjunction with the Original Code are The +# OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +# April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +# 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +# Window System(R) (Version 1.3), released October 19, 1998. This software +# was created using the OpenGL(R) version 1.2.1 Sample Implementation +# published by SGI, but has not been independently verified as being +# compliant with the OpenGL(R) version 1.2.1 Specification. + +COMMONPREF = standard +include $(ROOT)/usr/include/make/commondefs + +SUBDIRS = \ + xhtml \ + $(NULL) + +default $(ALLTARGS): $(_FORCE) + $(SUBDIRS_MAKERULE) + +distoss: + $(MAKE) $(COMMONPREF)$@ + $(SUBDIRS_MAKERULE) + +include $(COMMONRULES) diff --git a/upstream-man-pages/man3/README.txt b/upstream-man-pages/man3/README.txt new file mode 100644 index 0000000..87d88e2 --- /dev/null +++ b/upstream-man-pages/man3/README.txt @@ -0,0 +1,56 @@ +Khronos has released the OpenGL man page XML sources. This was done +mostly at the request of people wishing to adapt the man pages to other +output formats or language bindings. + +You will need to have a reasonable understanding of Subversion, Docbook, +XML, XSLT, Linux package management (if using Linux), and other +components of the toolchain used to generate the man pages, before +you're likely to have much success with them. A great deal of Docbook, +XML, and XSL infrastructure may need to be installed on your system +first. + +The directory tree containing the man pages is available for anonymous, +read-only checkout in Khronos' Subversion server, at + + https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/docs/man/ + +If you have the Subversion command-line client installed, you should be +able to check out the man pages into the directory 'man' by executing +the command + + svn co --username anonymous --password anonymous https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/docs/man/ man + +Under 'man' you'll find the OpenGL 2.1 man pages, both the Docbook XML +source in this directory and generated XHTML+MathML in xhtml/ , and some +supporting build and XSL infrastructure. There are two files in the +OpenGL.org Wiki containing additional documentation: + +http://www.opengl.org/wiki/index.php/Getting_started/XML_Toolchain_and_Man_Pages#Toolchain + - Description of the tools used to build the man pages; how to install + and make use of them if you want to build them yourself; and how to + report problems. + +http://www.opengl.org/wiki/index.php/Getting_started/Viewing_XHTML_and_MathML + - Some notes on viewing XHTML+MathML documents in different browsers. + +------------------------------------------------------------------ + +Special note on DTDs: the normal Docbook build process generates a +DOCTYPE header with references to the DTD + + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" + +While in principle this is only a namespace identifier, Internet +Explorer nonetheless downloads the DTD, and the entity files referenced +from within it, on every page loaded. This contributes to creating +unacceptable load on www.w3.org, and the IE user agent has been blocked +for these URLs. Ideally Microsoft would fix IE, but in the meantime, the +only workaround within our control is to cache copies of the DTD and +entity files locally in the generated xhtml/ directory and postprocess +the generated XHTML to refer to them. This explains the presence of the +files + + xhtml/xhtml1-transitional.dtd + xhtml/xhtml-lat1.ent + xhtml/xhtml-special.ent + xhtml/xhtml-symbol.ent diff --git a/upstream-man-pages/man3/bottom.php b/upstream-man-pages/man3/bottom.php new file mode 100644 index 0000000..e89e14e --- /dev/null +++ b/upstream-man-pages/man3/bottom.php @@ -0,0 +1,9 @@ + + +OpenGL 3.3 Reference Pages + + + + + + diff --git a/upstream-man-pages/man3/docs/Viewing_XHTML_and_MathML.html b/upstream-man-pages/man3/docs/Viewing_XHTML_and_MathML.html new file mode 100644 index 0000000..61d86ae --- /dev/null +++ b/upstream-man-pages/man3/docs/Viewing_XHTML_and_MathML.html @@ -0,0 +1,3 @@ +This document has been moved to the public OpenGL.org Wiki at + +http://www.opengl.org/wiki/index.php/Getting_started/Viewing_XHTML_and_MathML diff --git a/upstream-man-pages/man3/docs/XML_Toolchain_and_Man_Pages.html b/upstream-man-pages/man3/docs/XML_Toolchain_and_Man_Pages.html new file mode 100644 index 0000000..e498cd9 --- /dev/null +++ b/upstream-man-pages/man3/docs/XML_Toolchain_and_Man_Pages.html @@ -0,0 +1,3 @@ +This document has been moved to the public OpenGL.org Wiki at + +http://www.opengl.org/wiki/index.php/Getting_started/XML_Toolchain_and_Man_Pages#Toolchain diff --git a/upstream-man-pages/man3/fo/Makefile b/upstream-man-pages/man3/fo/Makefile new file mode 100644 index 0000000..78369d8 --- /dev/null +++ b/upstream-man-pages/man3/fo/Makefile @@ -0,0 +1,395 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and the specific +# stylesheet to convert Docbook+MathML => XSL-FO. + +# At present, the XSL-FO stylesheets do *not* handle MathML. +# Getting math output is a significant toolchain issue. + +DB2XHTML = /usr/share/sgml/docbook/xsl-stylesheets/fo/docbook.xsl + +# Path to the APache FOP processor +# Download the current version 0.92beta from +# http://xmlgraphics.apache.org/fop/ +FOP = /path/to/fop-0.92beta/fop + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +%.fo: ../%.xml + $(XSLT) --xinclude -o $@ $(DB2XHTML) $< + +%.pdf: %.fo + $(FOP) -fo $< -pdf $@ + +# ARB Ecosystem man pages +ARBFO = \ + glBlendEquationSeparate.fo \ + glStencilFuncSeparate.fo \ + glStencilMaskSeparate.fo \ + glStencilOpSeparate.fo + +# SuperBible GL 1.5 man pages +SUPERBIBLEFO = \ + glBeginQuery.fo \ + glBindBuffer.fo \ + glBufferData.fo \ + glBufferSubData.fo \ + glDeleteBuffers.fo \ + glDeleteQueries.fo \ + glGenBuffers.fo \ + glGenQueries.fo \ + glGetBufferParameteriv.fo \ + glGetBufferPointerv.fo \ + glGetBufferSubData.fo \ + glGetQueryiv.fo \ + glGetQueryObject.fo \ + glIsBuffer.fo \ + glIsQuery.fo \ + glMapBuffer.fo + +# 3Dlabs GL 2.0 man pages +3DLABSFO = \ + glAttachShader.fo \ + glBindAttribLocation.fo \ + glCompileShader.fo \ + glCreateProgram.fo \ + glCreateShader.fo \ + glDeleteProgram.fo \ + glDeleteShader.fo \ + glDetachShader.fo \ + glDrawBuffers.fo \ + glEnableVertexAttribArray.fo \ + glGetActiveAttrib.fo \ + glGetActiveUniform.fo \ + glGetAttachedShaders.fo \ + glGetAttribLocation.fo \ + glGetProgramInfoLog.fo \ + glGetProgram.fo \ + glGetShaderInfoLog.fo \ + glGetShaderSource.fo \ + glGetShader.fo \ + glGetUniformLocation.fo \ + glGetUniform.fo \ + glGetVertexAttribPointerv.fo \ + glGetVertexAttrib.fo \ + glIsProgram.fo \ + glIsShader.fo \ + glLinkProgram.fo \ + glShaderSource.fo \ + glUniform.fo \ + glUseProgram.fo \ + glValidateProgram.fo \ + glVertexAttribPointer.fo \ + glVertexAttrib.fo + +# SGI OpenGL 1.4 man pages +SGIGLFO = \ + glAccum.fo \ + glActiveTexture.fo \ + glAlphaFunc.fo \ + glAreTexturesResident.fo \ + glArrayElement.fo \ + glBegin.fo \ + glBindTexture.fo \ + glBitmap.fo \ + glBlendColor.fo \ + glBlendEquation.fo \ + glBlendFuncSeparate.fo \ + glBlendFunc.fo \ + glCallLists.fo \ + glCallList.fo \ + glClearAccum.fo \ + glClearColor.fo \ + glClearDepth.fo \ + glClearIndex.fo \ + glClearStencil.fo \ + glClear.fo \ + glClientActiveTexture.fo \ + glClipPlane.fo \ + glColorMask.fo \ + glColorMaterial.fo \ + glColorPointer.fo \ + glColorSubTable.fo \ + glColorTableParameter.fo \ + glColorTable.fo \ + glColor.fo \ + glCompressedTexImage1D.fo \ + glCompressedTexImage2D.fo \ + glCompressedTexImage3D.fo \ + glCompressedTexSubImage1D.fo \ + glCompressedTexSubImage2D.fo \ + glCompressedTexSubImage3D.fo \ + glConvolutionFilter1D.fo \ + glConvolutionFilter2D.fo \ + glConvolutionParameter.fo \ + glCopyColorSubTable.fo \ + glCopyColorTable.fo \ + glCopyConvolutionFilter1D.fo \ + glCopyConvolutionFilter2D.fo \ + glCopyPixels.fo \ + glCopyTexImage1D.fo \ + glCopyTexImage2D.fo \ + glCopyTexSubImage1D.fo \ + glCopyTexSubImage2D.fo \ + glCopyTexSubImage3D.fo \ + glCullFace.fo \ + glDeleteLists.fo \ + glDeleteTextures.fo \ + glDepthFunc.fo \ + glDepthMask.fo \ + glDepthRange.fo \ + glDrawArrays.fo \ + glDrawBuffer.fo \ + glDrawElements.fo \ + glDrawPixels.fo \ + glDrawRangeElements.fo \ + glEdgeFlagPointer.fo \ + glEdgeFlag.fo \ + glEnableClientState.fo \ + glEnable.fo \ + glEvalCoord.fo \ + glEvalMesh.fo \ + glEvalPoint.fo \ + glFeedbackBuffer.fo \ + glFinish.fo \ + glFlush.fo \ + glFogCoordPointer.fo \ + glFogCoord.fo \ + glFog.fo \ + glFrontFace.fo \ + glFrustum.fo \ + glGenLists.fo \ + glGenTextures.fo \ + glGetClipPlane.fo \ + glGetColorTableParameter.fo \ + glGetColorTable.fo \ + glGetCompressedTexImage.fo \ + glGetConvolutionFilter.fo \ + glGetConvolutionParameter.fo \ + glGetError.fo \ + glGetHistogramParameter.fo \ + glGetHistogram.fo \ + glGetLight.fo \ + glGetMap.fo \ + glGetMaterial.fo \ + glGetMinmaxParameter.fo \ + glGetMinmax.fo \ + glGetPixelMap.fo \ + glGetPointerv.fo \ + glGetPolygonStipple.fo \ + glGetSeparableFilter.fo \ + glGetString.fo \ + glGetTexEnv.fo \ + glGetTexGen.fo \ + glGetTexImage.fo \ + glGetTexLevelParameter.fo \ + glGetTexParameter.fo \ + glGet.fo \ + glHint.fo \ + glHistogram.fo \ + glIndexMask.fo \ + glIndexPointer.fo \ + glIndex.fo \ + glInitNames.fo \ + glInterleavedArrays.fo \ + glIsEnabled.fo \ + glIsList.fo \ + glIsTexture.fo \ + glLightModel.fo \ + glLight.fo \ + glLineStipple.fo \ + glLineWidth.fo \ + glListBase.fo \ + glLoadIdentity.fo \ + glLoadMatrix.fo \ + glLoadName.fo \ + glLoadTransposeMatrix.fo \ + glLogicOp.fo \ + glMap1.fo \ + glMap2.fo \ + glMapGrid.fo \ + glMaterial.fo \ + glMatrixMode.fo \ + glMinmax.fo \ + glMultiDrawArrays.fo \ + glMultiDrawElements.fo \ + glMultiTexCoord.fo \ + glMultMatrix.fo \ + glMultTransposeMatrix.fo \ + glNewList.fo \ + glNormalPointer.fo \ + glNormal.fo \ + glOrtho.fo \ + glPassThrough.fo \ + glPixelMap.fo \ + glPixelStore.fo \ + glPixelTransfer.fo \ + glPixelZoom.fo \ + glPointParameter.fo \ + glPointSize.fo \ + glPolygonMode.fo \ + glPolygonOffset.fo \ + glPolygonStipple.fo \ + glPrioritizeTextures.fo \ + glPushAttrib.fo \ + glPushClientAttrib.fo \ + glPushMatrix.fo \ + glPushName.fo \ + glRasterPos.fo \ + glReadBuffer.fo \ + glReadPixels.fo \ + glRect.fo \ + glRenderMode.fo \ + glResetHistogram.fo \ + glResetMinmax.fo \ + glRotate.fo \ + glSampleCoverage.fo \ + glScale.fo \ + glScissor.fo \ + glSecondaryColorPointer.fo \ + glSecondaryColor.fo \ + glSelectBuffer.fo \ + glSeparableFilter2D.fo \ + glShadeModel.fo \ + glStencilFunc.fo \ + glStencilMask.fo \ + glStencilOp.fo \ + glTexCoordPointer.fo \ + glTexCoord.fo \ + glTexEnv.fo \ + glTexGen.fo \ + glTexImage1D.fo \ + glTexImage2D.fo \ + glTexImage3D.fo \ + glTexParameter.fo \ + glTexSubImage1D.fo \ + glTexSubImage2D.fo \ + glTexSubImage3D.fo \ + glTranslate.fo \ + glVertexPointer.fo \ + glVertex.fo \ + glViewport.fo \ + glWindowPos.fo + +# SGI GLU 1.3 man pages +SGIGLUFO = \ + gluBeginCurve.fo \ + gluBeginPolygon.fo \ + gluBeginSurface.fo \ + gluBeginTrim.fo \ + gluBuild1DMipmapLevels.fo \ + gluBuild1DMipmaps.fo \ + gluBuild2DMipmapLevels.fo \ + gluBuild2DMipmaps.fo \ + gluBuild3DMipmapLevels.fo \ + gluBuild3DMipmaps.fo \ + gluCheckExtension.fo \ + gluCylinder.fo \ + gluDeleteNurbsRenderer.fo \ + gluDeleteQuadric.fo \ + gluDeleteTess.fo \ + gluDisk.fo \ + gluErrorString.fo \ + gluGetNurbsProperty.fo \ + gluGetString.fo \ + gluGetTessProperty.fo \ + gluLoadSamplingMatrices.fo \ + gluLookAt.fo \ + gluNewNurbsRenderer.fo \ + gluNewQuadric.fo \ + gluNewTess.fo \ + gluNextContour.fo \ + gluNurbsCallbackDataEXT.fo \ + gluNurbsCallbackData.fo \ + gluNurbsCallback.fo \ + gluNurbsCurve.fo \ + gluNurbsProperty.fo \ + gluNurbsSurface.fo \ + gluOrtho2D.fo \ + gluPartialDisk.fo \ + gluPerspective.fo \ + gluPickMatrix.fo \ + gluProject.fo \ + gluPwlCurve.fo \ + gluQuadricCallback.fo \ + gluQuadricDrawStyle.fo \ + gluQuadricNormals.fo \ + gluQuadricOrientation.fo \ + gluQuadricTexture.fo \ + gluScaleImage.fo \ + gluSphere.fo \ + gluTessBeginContour.fo \ + gluTessBeginPolygon.fo \ + gluTessCallback.fo \ + gluTessEndPolygon.fo \ + gluTessNormal.fo \ + gluTessProperty.fo \ + gluTessVertex.fo \ + gluUnProject4.fo \ + gluUnProject.fo + +# SGI GLX 1.4 man pages +SGIGLXFO = \ + glXChooseFBConfig.fo \ + glXChooseVisual.fo \ + glXCopyContext.fo \ + glXCreateContext.fo \ + glXCreateGLXPixmap.fo \ + glXCreateNewContext.fo \ + glXCreatePbuffer.fo \ + glXCreatePixmap.fo \ + glXCreateWindow.fo \ + glXDestroyContext.fo \ + glXDestroyGLXPixmap.fo \ + glXDestroyPbuffer.fo \ + glXDestroyPixmap.fo \ + glXDestroyWindow.fo \ + glXFreeContextEXT.fo \ + glXGetClientString.fo \ + glXGetConfig.fo \ + glXGetContextIDEXT.fo \ + glXGetCurrentContext.fo \ + glXGetCurrentDisplay.fo \ + glXGetCurrentDrawable.fo \ + glXGetCurrentReadDrawable.fo \ + glXGetFBConfigAttrib.fo \ + glXGetFBConfigs.fo \ + glXGetProcAddress.fo \ + glXGetSelectedEvent.fo \ + glXGetVisualFromFBConfig.fo \ + glXImportContextEXT.fo \ + glXIntro.fo \ + glXIsDirect.fo \ + glXMakeContextCurrent.fo \ + glXMakeCurrent.fo \ + glXQueryContextInfoEXT.fo \ + glXQueryContext.fo \ + glXQueryExtensionsString.fo \ + glXQueryExtension.fo \ + glXQueryServerString.fo \ + glXQueryVersion.fo \ + glXSelectEvent.fo \ + glXSwapBuffers.fo \ + glXUseXFont.fo \ + glXWaitGL.fo \ + glXWaitX.fo + +# XML man page source and XSL-FO / PDF targets +GLFO = $(SGIGLFO) $(3DLABSFO) $(SUPERBIBLEFO) $(ARBFO) +GLUFO = $(SGIGLUFO) +GLXFO = $(SGIGLXFO) +FO = $(GLFO) $(GLUFO) $(GLXFO) +PDF = $(FO:.fo=.pdf) + +default: $(PDF) + +clean: + $(RM) $(TEX_FILES) *.log *.aux *.toc *.dvi *.out + +clobber: clean + $(RM) $(FO) $(PDF) $(PDF_FILES) diff --git a/upstream-man-pages/man3/fo/glTexGen.fo b/upstream-man-pages/man3/fo/glTexGen.fo new file mode 100644 index 0000000..7de53dd --- /dev/null +++ b/upstream-man-pages/man3/fo/glTexGen.fo @@ -0,0 +1,648 @@ + +glTexGenglTexGenNameNameglTexGen -- control the generation of texture coordinatesC SpecificationC Specification void glTexGeni(coord, pname, param); GLenum coord; GLenum pname; GLint param; void glTexGenf(coord, pname, param); GLenum coord; GLenum pname; GLfloat param; void glTexGend(coord, pname, param); GLenum coord; GLenum pname; GLdouble param;PARAMETERSPARAMETERScoordcoord + Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. + pnamepname + Specifies the symbolic name of the texture-coordinate generation function. + Must be GL_TEXTURE_GEN_MODE. + paramparam + Specifies a single-valued texture generation parameter, + one of GL_OBJECT_LINEAR, GL_EYE_LINEAR, GL_SPHERE_MAP, + GL_NORMAL_MAP, or GL_REFLECTION_MAP. + C SpecificationC Specification void glTexGeniv(coord, pname, params); GLenum coord; GLenum pname; const GLint * params; void glTexGenfv(coord, pname, params); GLenum coord; GLenum pname; const GLfloat * params; void glTexGendv(coord, pname, params); GLenum coord; GLenum pname; const GLdouble * params;PARAMETERSPARAMETERScoordcoord + Specifies a texture coordinate. + Must be one of GL_S, GL_T, GL_R, or GL_Q. + pnamepname + Specifies the symbolic name of the texture-coordinate generation function + or function parameters. + Must be + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + paramsparams + Specifies a pointer to an array of texture generation parameters. + If pname is GL_TEXTURE_GEN_MODE, + then the array must contain a single symbolic constant, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + Otherwise, + params holds the coefficients for the texture-coordinate generation function + specified by pname. + DESCRIPTIONDESCRIPTION + glTexGen selects a texture-coordinate generation function + or supplies coefficients for one of the functions. + coord names one of the (s, t, r, q) texture + coordinates; it must be one of the symbols + GL_S, + GL_T, + GL_R, or + GL_Q. + pname must be one of three symbolic constants: + GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE, or + GL_EYE_PLANE. + If pname is GL_TEXTURE_GEN_MODE, + then params chooses a mode, + one of + GL_OBJECT_LINEAR, + GL_EYE_LINEAR, + GL_SPHERE_MAP, + GL_NORMAL_MAP, or + GL_REFLECTION_MAP. + If pname is either GL_OBJECT_PLANE or GL_EYE_PLANE, + params contains coefficients for the corresponding + texture generation function. + + If the texture generation function is GL_OBJECT_LINEAR, + the function + + + + + g + = + + + p + 1 + + × + x + o + + + + + + p + 2 + + × + y + o + + + + + + p + 3 + + × + z + o + + + + + + p + 4 + + × + w + o + + + + + + + is used, where + g + is the value computed for the coordinate named in coord, + + + p + 1 + + + , + + + p + 2 + + + , + + + p + 3 + + + , + and + + + p + 4 + + + are the four values supplied in params, and + + + x + o + + + , + + + y + o + + + , + + + z + o + + + , and + + + w + o + + + are the object coordinates of the vertex. + This function can be used, for example, to texture-map terrain using sea level + as a reference plane + (defined by + + + p + 1 + + + , + + + p + 2 + + + , + + + p + 3 + + + , and + + + p + 4 + + + ). + The altitude of a terrain vertex is computed by the GL_OBJECT_LINEAR + coordinate generation function as its distance from sea level; + that altitude can then be used to index the texture image to map white snow + onto peaks and green grass onto foothills. + + If the texture generation function is GL_EYE_LINEAR, the function + + + + + g + = + + + + p + 1 + + + ″ + + × + x + e + + + + + + + p + 2 + + + ″ + + × + y + e + + + + + + + p + 3 + + + ″ + + × + z + e + + + + + + + p + 4 + + + ″ + + × + w + e + + + + + + + is used, where + + + + + + + + p + 1 + + + ″ + + ⁢ + + p + 2 + + + ″ + + ⁢ + + p + 3 + + + ″ + + ⁢ + + p + 4 + + + ″ + + + + = + + + + p + 1 + + ⁢ + p + 2 + + ⁢ + p + 3 + + ⁢ + p + 4 + + + + ⁢ + M + -1 + + + + + + and + + + x + e + + + , + + + y + e + + + , + + + z + e + + + , and + + + w + e + + + are the eye coordinates of the vertex, + + + p + 1 + + + , + + + p + 2 + + + , + + + p + 3 + + + , + and + + + p + 4 + + + are the values supplied in params, and + M + is the modelview matrix when glTexGen is invoked. + If + M + is poorly conditioned or singular, + texture coordinates generated by the resulting function may be inaccurate + or undefined. + + Note that the values in params define a reference plane in eye coordinates. + The modelview matrix that is applied to them may not be the same one + in effect when the polygon vertices are transformed. + This function establishes a field of texture coordinates + that can produce dynamic contour lines on moving objects. + + If pname is GL_SPHERE_MAP and coord is either + GL_S or + GL_T, + s + and + t + texture coordinates are generated as follows. + Let u be the unit vector pointing from the origin to the polygon vertex + (in eye coordinates). + Let n sup prime be the current normal, + after transformation to eye coordinates. + Let + + + + + f + = + + + f + x + + ⁢ + f + y + + ⁢ + f + z + + + + T + + + + be the reflection vector such that + + + + + f + = + + u + - + 2 + ⁢ + n + ″ + + ⁢ + + n + ″ + + + T + + ⁢ + u + + + + + Finally, let + + + + m + = + + 2 + ⁢ + + + + + f + x + + + 2 + + + + + f + y + + + 2 + + + + + + f + z + + + + 1 + + + 2 + + + + + + + + . + Then the values assigned to the + s + and + t + texture coordinates are + + + + + s + = + + + f + x + + m + + + + + 1 + 2 + + + + + + + + + t + = + + + f + y + + m + + + + + 1 + 2 + + + + + + To enable or disable a texture-coordinate generation function, call + glEnable or glDisable + with one of the symbolic texture-coordinate names + (GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R, or + GL_TEXTURE_GEN_Q) as the argument. + When enabled, + the specified texture coordinate is computed + according to the generating function associated with that coordinate. + When disabled, + subsequent vertices take the specified texture coordinate + from the current set of texture coordinates. Initially, all texture + generation functions are set to GL_EYE_LINEAR and are disabled. + Both + s + plane equations are (1, 0, 0, 0), + both + t + plane equations are (0, 1, 0, 0), + and all + r + and + q + plane equations are (0, 0, 0, 0). + + When the ARB_multitexture extension is supported, glTexGen set the + texture generation parameters for the currently active texture unit, + selected with glActiveTexture. + ERRORSERRORS + GL_INVALID_ENUM is generated when coord or pname is not an + accepted defined value, + or when pname is GL_TEXTURE_GEN_MODE and params is not an + accepted defined value. + + GL_INVALID_ENUM is generated when pname is GL_TEXTURE_GEN_MODE, + params is GL_SPHERE_MAP, + and coord is either GL_R or GL_Q. + + GL_INVALID_OPERATION is generated if glTexGen + is executed between the execution of glBegin + and the corresponding execution of glEnd. + ASSOCIATED GETSASSOCIATED GETS + glGetTexGen + + glIsEnabled with argument GL_TEXTURE_GEN_S + + glIsEnabled with argument GL_TEXTURE_GEN_T + + glIsEnabled with argument GL_TEXTURE_GEN_R + + glIsEnabled with argument GL_TEXTURE_GEN_Q + SEE ALSOSEE ALSO + glActiveTexture, + glCopyPixels, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexEnv, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + COPYRIGHTCOPYRIGHT + Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + diff --git a/upstream-man-pages/man3/fo/glTexGen.pdf b/upstream-man-pages/man3/fo/glTexGen.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6c32350ef514f71ee1442f0f840df339bb96ed0a GIT binary patch literal 10067 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 + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glActiveTexture + 3G + + + glActiveTexture + select active texture unit + + C Specification + + + void glActiveTexture + GLenum texture + + + + + Parameters + + + texture + + + Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + 48. texture must be one of + GL_TEXTUREi, + where + i ranges from 0 (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + The initial value is GL_TEXTURE0. + + + + + + Description + + glActiveTexture selects which texture unit subsequent texture state calls will + affect. The number of texture units an implementation supports is + implementation dependent, but must be at least 48. + + + Errors + + GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where i ranges from 0 to (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + + + Associated Gets + + glGet with argument GL_ACTIVE_TEXTURE, or GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. + + + See Also + + glGenTextures, + glBindTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDeleteTextures + glIsTexture, + glTexImage1D, + glTexImage2D, + glTexImage2DMultisample, + glTexImage3D, + glTexImage3DMultisample, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glAttachShader.xml b/upstream-man-pages/man3/glAttachShader.xml new file mode 100644 index 0000000..13e4c93 --- /dev/null +++ b/upstream-man-pages/man3/glAttachShader.xml @@ -0,0 +1,119 @@ + + + + + glAttachShader + 3G + + + glAttachShader + Attaches a shader object to a program object + + C Specification + + + void glAttachShader + GLuint program + GLuint shader + + + + Parameters + + + program + + Specifies the program object to which a shader + object will be attached. + + + + + shader + + Specifies the shader object that is to be attached. + + + + + Description + In order to create a complete shader program, there must be a way to + specify the list of things that will be linked together. Program + objects provide this mechanism. Shaders that are to be linked + together in a program object must first be attached to that + program object. glAttachShader attaches the + shader object specified by shader to the + program object specified by program. This + indicates that shader will be included in + link operations that will be performed on + program. + + All operations that can be performed on a shader object + are valid whether or not the shader object is attached to a + program object. It is permissible to attach a shader object to a + program object before source code has been loaded into the + shader object or before the shader object has been compiled. It + is permissible to attach multiple shader objects of the same + type because each may contain a portion of the complete shader. + It is also permissible to attach a shader object to more than + one program object. If a shader object is deleted while it is + attached to a program object, it will be flagged for deletion, + and deletion will not occur until + glDetachShader + is called to detach it from all program objects to which it is + attached. + + Errors + GL_INVALID_VALUE is generated if either + program or shader + is not a value generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + shader is already attached to + program. + + + Associated Gets + + glGetAttachedShaders + with the handle of a valid program object + + + glGetShaderInfoLog + + + glGetShaderSource + + + glIsProgram + + + glIsShader + + + See Also + + glCompileShader, + glCreateShader, + glDeleteShader, + glDetachShader, + glLinkProgram, + glShaderSource + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBeginConditionalRender.xml b/upstream-man-pages/man3/glBeginConditionalRender.xml new file mode 100644 index 0000000..0527c0d --- /dev/null +++ b/upstream-man-pages/man3/glBeginConditionalRender.xml @@ -0,0 +1,123 @@ + + + + + + + 2010 + Khronos Group + + + glBeginConditionalRender + 3G + + + glBeginConditionalRender + start conditional rendering + + C Specification + + + void glBeginConditionalRender + GLuint id + GLenum mode + + + + Parameters + + + id + + + Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded. + + + + + mode + + + Specifies how glBeginConditionalRender interprets the results of the occlusion query. + + + + + + C Specification + + + void glEndConditionalRender + void + + + + Description + + Conditional rendering is started using glBeginConditionalRender and ended using glEndConditionalRender. + During conditional rendering, all vertex array commands, as well as glClear and + glClearBuffer have no effect if the (GL_SAMPLES_PASSED) result + of the query object id is zero, or if the (GL_ANY_SAMPLES_PASSED) result is GL_FALSE. + The results of commands setting the current vertex state, such as glVertexAttrib are + undefined. If the (GL_SAMPLES_PASSED) result is non-zero or if the (GL_ANY_SAMPLES_PASSED) result is + GL_TRUE, such commands are not discarded. The id parameter to glBeginConditionalRender + must be the name of a query object previously returned from a call to glGenQueries. + mode specifies how the results of the query object are to be interpreted. If mode is + GL_QUERY_WAIT, the GL waits for the results of the query to be available and then uses the results to determine if subsequent + rendering commands are discarded. If mode is GL_QUERY_NO_WAIT, the GL may choose to unconditionally + execute the subsequent rendering commands without waiting for the query to complete. + + + If mode is GL_QUERY_BY_REGION_WAIT, the GL will also wait for occlusion query results and discard + rendering commands if the result of the occlusion query is zero. If the query result is non-zero, subsequent rendering commands are executed, + but the GL may discard the results of the commands for any region of the framebuffer that did not contribute to the sample count in the specified + occlusion query. Any such discarding is done in an implementation-dependent manner, but the rendering command results may not be discarded for + any samples that contributed to the occlusion query sample count. If mode is GL_QUERY_BY_REGION_NO_WAIT, + the GL operates as in GL_QUERY_BY_REGION_WAIT, but may choose to unconditionally execute the subsequent rendering commands + without waiting for the query to complete. + + + Notes + + glBeginConditionalRender and glEndConditionalRender are available only if the GL version is 3.0 or greater. + + + The GL_ANY_SAMPLES_PASSED query result is available only if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_VALUE is generated if id is not the name of an existing query object. + + + GL_INVALID_ENUM is generated if mode is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if glBeginConditionalRender is called while conditional rendering is active, + or if glEndConditionalRender is called while conditional rendering is inactive. + + + GL_INVALID_OPERATION is generated if id is the name of a query object with a target other than + GL_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED. + + + GL_INVALID_OPERATION is generated if id is the name of a query currently in progress. + + + See Also + + glGenQueries, + glDeleteQueries, + glBeginQuery + + + Copyright + + Copyright 2009 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBeginQuery.xml b/upstream-man-pages/man3/glBeginQuery.xml new file mode 100644 index 0000000..a6ed3b9 --- /dev/null +++ b/upstream-man-pages/man3/glBeginQuery.xml @@ -0,0 +1,204 @@ + + + + + + + 2005 + Sams Publishing + + + glBeginQuery + 3G + + + glBeginQuery + delimit the boundaries of a query object + + C Specification + + + void glBeginQuery + GLenum target + GLuint id + + + + + Parameters + + + target + + + Specifies the target type of query object established between + glBeginQuery and the subsequent glEndQuery. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. + + + + + id + + + Specifies the name of a query object. + + + + + + C Specification + + + void glEndQuery + GLenum target + + + + + Parameters + + + target + + + Specifies the target type of query object to be concluded. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. + + + + + + Description + + glBeginQuery and glEndQuery delimit the + boundaries of a query object. query must be a name previously returned from a call to + glGenQueries. If a query object with name id + does not yet exist it is created with the type determined by target. target must + be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query + object depends on its type and is as follows. + + + If target is GL_SAMPLES_PASSED, id must be an unused name, + or the name of an existing occlusion query object. + When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS + is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS + is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their + discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment + is covered. When glEndQuery + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_ANY_SAMPLES_PASSED, id must be an unused name, + or the name of an existing boolean occlusion query object. + When glBeginQuery is executed, the query object's samples-passed flag is reset to GL_FALSE. + Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test. When + glEndQuery is executed, the samples-passed flag is assigned to the query object's result value. This value can + be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_PRIMITIVES_GENERATED, id must be an unused + name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. + When glBeginQuery is executed, the query object's primitives-generated counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if + no geometry shader is present. When glEndQuery is executed, the primitives-generated counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be + an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN + query binding. When glBeginQuery is executed, the query object's primitives-written counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback + mode is not activated between the call to glBeginQuery and glEndQuery, the counter will not be + incremented. When glEndQuery is executed, the primitives-written counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_TIME_ELAPSED, id must be + an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED + query binding. When glBeginQuery is executed, the query object's time counter is reset to 0. When glEndQuery + is executed, the elapsed server time that has passed since the call to glBeginQuery is written into the query object's + time counter. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. + + + Notes + + If the query target's count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with target set to the + appropriate query target and pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. + + + An implementation may support 0 bits in its counter, in which case query results are always undefined + and essentially useless. + + + When GL_SAMPLE_BUFFERS is 0, the samples-passed counter of an occlusion query will increment once for each + fragment that passes the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment + the samples-passed counter individually for each sample of a fragment that passes the depth test, or it may choose to increment + the counter for all samples of a fragment if any one of them passes the depth test. + + + The query targets GL_ANY_SAMPLES_PASSED, and GL_TIME_ELAPSED are availale only if + the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if glBeginQuery is executed while + a query object of the same target is already active. + + + GL_INVALID_OPERATION is generated if glEndQuery + is executed when a query object of the same target is not active. + + + GL_INVALID_OPERATION is generated if id is 0. + + + GL_INVALID_OPERATION is generated if id is the name of an already active query object. + + + GL_INVALID_OPERATION is generated if id refers to an existing query object whose type + does not does not match target. + + + See Also + + glDeleteQueries, + glGenQueries, + glGetQueryiv, + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBeginTransformFeedback.xml b/upstream-man-pages/man3/glBeginTransformFeedback.xml new file mode 100644 index 0000000..c892168 --- /dev/null +++ b/upstream-man-pages/man3/glBeginTransformFeedback.xml @@ -0,0 +1,194 @@ + + + + + + + 2010 + Khronos Group + + + glBeginTransformFeedback + 3G + + + glBeginTransformFeedback + start transform feedback operation + + C Specification + + + void glBeginTransformFeedback + GLenum primitiveMode + + + + Parameters + + + primitiveMode + + + Specify the output type of the primitives that will be recorded into the + buffer objects that are bound for transform feedback. + + + + + + C Specification + + + void glEndTransformFeedback + void + + + + Description + + Transform feedback mode captures the values of varying variables written by the vertex shader (or, if active, the geometry shader). + Transform feedback is said to be active after a call to glBeginTransformFeedback + until a subsequent call to glEndTransformFeedback. + Transform feedback commands must be paired. + + + If no geometry shader is present, while transform feedback is active the mode parameter to + glDrawArrays must match those specified + in the following table: + + + + + + + + + Transform Feedback primitiveMode + + + Allowed Render Primitive modes + + + + + + + GL_POINTS + + + GL_POINTS + + + + + GL_LINES + + + GL_LINES, GL_LINE_LOOP, GL_LINE_STRIP, + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY + + + + + GL_TRIANGLES + + + GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY + + + + + + + If a geometry shader is present, the output primitive type from the geometry shader must match those + provided in the following table: + + + + + + + + Transform Feedback primitiveMode + + + Allowed Geometry Shader Output Primitive Type + + + + + + + GL_POINTS + + + points + + + + + GL_LINES + + + line_strip + + + + + GL_TRIANGLES + + + triangle_strip + + + + + + + + Notes + + Geometry shaders, and the GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY and GL_LINE_STRIP_ADJACENCY primtive modes are available + only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glBeginTransformFeedback is executed + while transform feedback is active. + + + GL_INVALID_OPERATION is generated if glEndTransformFeedback is executed + while transform feedback is not active. + + + GL_INVALID_OPERATION is generated by glDrawArrays + if no geometry shader is present, transform feedback is active and mode is not one of the allowed modes. + + + GL_INVALID_OPERATION is generated by glDrawArrays + if a geometry shader is present, transform feedback is active and the output primitive type of the geometry shader does not + match the transform feedback primitiveMode. + + + GL_INVALID_OPERATION is generated by glEndTransformFeedback if any binding + point used in transform feedback mode does not have a buffer object bound. + + + GL_INVALID_OPERATION is generated by glEndTransformFeedback if no binding + points would be used, either because no program object is active of because the active program object has specified + no varying variables to record. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindAttribLocation.xml b/upstream-man-pages/man3/glBindAttribLocation.xml new file mode 100644 index 0000000..21e5000 --- /dev/null +++ b/upstream-man-pages/man3/glBindAttribLocation.xml @@ -0,0 +1,186 @@ + + + + + glBindAttribLocation + 3G + + + glBindAttribLocation + Associates a generic vertex attribute index with a named attribute variable + + C Specification + + + void glBindAttribLocation + GLuint program + GLuint index + const GLchar *name + + + + Parameters + + + program + + Specifies the handle of the program object in + which the association is to be made. + + + + index + + Specifies the index of the generic vertex + attribute to be bound. + + + + name + + Specifies a null terminated string containing + the name of the vertex shader attribute variable to + which index is to be + bound. + + + + + Description + glBindAttribLocation is used to + associate a user-defined attribute variable in the program + object specified by program with a + generic vertex attribute index. The name of the user-defined + attribute variable is passed as a null terminated string in + name. The generic vertex attribute index + to be bound to this variable is specified by + index. When + program is made part of current state, + values provided via the generic vertex attribute + index will modify the value of the + user-defined attribute variable specified by + name. + + If name refers to a matrix + attribute variable, index refers to the + first column of the matrix. Other matrix columns are then + automatically bound to locations index+1 + for a matrix of type mat2; index+1 and + index+2 for a matrix of type mat3; and + index+1, index+2, + and index+3 for a matrix of type + mat4. + + This command makes it possible for vertex shaders to use + descriptive names for attribute variables rather than generic + variables that are numbered from 0 to + GL_MAX_VERTEX_ATTRIBS -1. The values sent + to each generic attribute index are part of current state. + If a different program object is made current by calling + glUseProgram, + the generic vertex attributes are tracked in such a way that the + same values will be observed by attributes in the new program + object that are also bound to + index. Attribute variable + name-to-generic attribute index bindings for a program object + can be explicitly assigned at any time by calling + glBindAttribLocation. Attribute bindings do + not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for generic attributes remain fixed (and their + values can be queried) until the next link command + occurs. + + Any attribute binding that occurs after the program object has been linked will not take effect + until the next time the program object is linked. + + Notes + glBindAttribLocation can be called + before any vertex shader objects are bound to the specified + program object. It is also permissible to bind a generic + attribute index to an attribute variable name that is never used + in a vertex shader. + + If name was bound previously, that + information is lost. Thus you cannot bind one user-defined + attribute variable to multiple indices, but you can bind + multiple user-defined attribute variables to the same + index. + + Applications are allowed to bind more than one + user-defined attribute variable to the same generic vertex + attribute index. This is called aliasing, + and it is allowed only if just one of the aliased attributes is + active in the executable program, or if no path through the + shader consumes more than one attribute of a set of attributes + aliased to the same location. The compiler and linker are + allowed to assume that no aliasing is done and are free to + employ optimizations that work only in the absence of aliasing. + OpenGL implementations are not required to do error checking to + detect aliasing. + + Active attributes that are not explicitly bound will be + bound by the linker when + glLinkProgram + is called. The locations assigned can be queried by calling + glGetAttribLocation. + + OpenGL copies the name string when + glBindAttribLocation is called, so an + application may free its copy of the name + string immediately after the function returns. + + Generic attribute locations may be specified in the shader source + text using a location layout qualifier. In this case, + the location of the attribute specified in the shader's source takes precedence + and may be queried by calling glGetAttribLocation. + + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_OPERATION is generated if + name starts with the reserved prefix + "gl_". + + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetActiveAttrib + with argument program + + glGetAttribLocation + with arguments program and + name + + glIsProgram + + See Also + glDisableVertexAttribArray, + glEnableVertexAttribArray, + glUseProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindBuffer.xml b/upstream-man-pages/man3/glBindBuffer.xml new file mode 100644 index 0000000..c5e6015 --- /dev/null +++ b/upstream-man-pages/man3/glBindBuffer.xml @@ -0,0 +1,222 @@ + + + + + + + 2005 + Sams Publishing + + + glBindBuffer + 3G + + + glBindBuffer + bind a named buffer object + + C Specification + + + void glBindBuffer + GLenum target + GLuint buffer + + + + Parameters + + + target + + + Specifies the target to which the buffer object is bound. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + buffer + + + Specifies the name of a buffer object. + + + + + + Description + + glBindBuffer binds a buffer object to the specified buffer binding point. Calling glBindBuffer with + target set to one of the accepted symbolic constants and buffer set to the name + of a buffer object binds that buffer object name to the target. If no buffer object with name buffer + exists, one is created with that name. When a buffer object is bound to a target, the previous binding for that + target is automatically broken. + + + Buffer object names are unsigned integers. The value zero is reserved, but + there is no default buffer object for each buffer object target. Instead, buffer set to zero + effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target (if supported for that target). + Buffer object names and the corresponding buffer object contents are local to + the shared object space of the current + GL rendering context; + two rendering contexts share buffer object names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. + + + glGenBuffers must be used to generate a set of unused buffer object names. + + + The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with + GL_READ_WRITE access and GL_STATIC_DRAW usage. + + + While a non-zero buffer object name is bound, GL operations on the target to which it is + bound affect the bound buffer object, and queries of the target to which it is bound return state + from the bound buffer object. While buffer object name zero is bound, as in the initial state, + attempts to modify or query state on the target to which it is bound generates an + GL_INVALID_OPERATION error. + + + When a non-zero buffer object is bound to the GL_ARRAY_BUFFER target, + the vertex array pointer parameter is interpreted as an offset within the + buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, + the indices parameter of glDrawElements, + glDrawElementsInstanced, + glDrawElementsBaseVertex, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glMultiDrawElements, or + glMultiDrawElementsBaseVertex is interpreted as an + offset within the buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, + the following commands are affected: glGetCompressedTexImage, + glGetTexImage, and + glReadPixels. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, + the following commands are affected: + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. + + + The buffer targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER + are provided to allow glCopyBufferSubData + to be used without disturbing the state of other bindings. However, glCopyBufferSubData + may be used with any pair of buffer binding points. + + + The GL_TRANSFORM_FEEDBACK_BUFFER buffer binding point may be passed to glBindBuffer, + but will not directly affect transform feedback state. Instead, the indexed GL_TRANSFORM_FEEDBACK_BUFFER + bindings must be used through a call to glBindBufferBase + or glBindBufferRange. This will affect the generic + GL_TRANSFORM_FEEDABCK_BUFFER binding. + + + Likewise, the GL_UNIFORM_BUFFER buffer binding point may be used, but does not directly affect + uniform buffer state. glBindBufferBase + or glBindBufferRange must be used to bind a buffer to + an indexed uniform buffer binding point. + + + A buffer object binding created with glBindBuffer remains active until a different + buffer object name is bound to the same target, or until the bound buffer object is + deleted with glDeleteBuffers. + + + Once created, a named buffer object may be re-bound to any target as often as needed. However, + the GL implementation may make choices about how to optimize the storage of a buffer object based + on its initial binding target. + + + Notes + + The GL_COPY_READ_BUFFER, GL_UNIFORM_BUFFER and + GL_TEXTURE_BUFFER targets are available only if the GL version is 3.1 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if buffer is not a name previously returned + from a call to glGenBuffers. + + + Associated Gets + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGet with argument GL_COPY_READ_BUFFER_BINDING + + + glGet with argument GL_COPY_WRITE_BUFFER_BINDING + + + glGet with argument GL_ELEMENT_ARRAY_BUFFER_BINDING + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGet with argument GL_TRANSFORM_FEEDBACK_BUFFER_BINDING + + + glGet with argument GL_UNIFORM_BUFFER_BINDING + + + See Also + + glGenBuffers, + glBindBufferBase, + glBindBufferRange, + glMapBuffer, + glUnmapBuffer, + glDeleteBuffers, + glGet, + glIsBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindBufferBase.xml b/upstream-man-pages/man3/glBindBufferBase.xml new file mode 100644 index 0000000..709f203 --- /dev/null +++ b/upstream-man-pages/man3/glBindBufferBase.xml @@ -0,0 +1,108 @@ + + + + + + + 2010 + Khronos Group + + + glBindBufferBase + 3G + + + glBindBufferBase + bind a buffer object to an indexed buffer target + + C Specification + + + void glBindBufferBase + GLenum target + GLuint index + GLuint buffer + + + + Parameters + + + target + + + Specify the target of the bind operation. target must be + either GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. + + + + + index + + + Specify the index of the binding point within the array specified by target. + + + + + buffer + + + The name of a buffer object to bind to the specified binding point. + + + + + + Description + + glBindBufferBase binds the buffer object buffer + to the binding point at index index of the array of targets specified + by target. Each target represents an indexed + array of buffer binding points, as well as a single general binding point that can be used by + other buffer manipulation functions such as glBindBuffer + or glMapBuffer. In addition to binding + buffer to the indexed buffer binding target, glBindBufferBase + also binds buffer to the generic buffer binding point specified by target. + + + Notes + + Calling glBindBufferBase is equivalent to calling + glBindBufferRange with offset + zero and size equal to the size of the buffer. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. + + + GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. + + + GL_INVALID_VALUE is generated if buffer does + not have an associated data store, or if the size of that store is zero. + + + See Also + + glGenBuffers, + glDeleteBuffers, + glBindBuffer, + glBindBufferRange, + glMapBuffer, + glUnmapBuffer, + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindBufferRange.xml b/upstream-man-pages/man3/glBindBufferRange.xml new file mode 100644 index 0000000..7fa420b --- /dev/null +++ b/upstream-man-pages/man3/glBindBufferRange.xml @@ -0,0 +1,131 @@ + + + + + + + 2010 + Khronos Group + + + glBindBufferRange + 3G + + + glBindBufferRange + bind a range within a buffer object to an indexed buffer target + + C Specification + + + void glBindBufferRange + GLenumtarget + GLuintindex + GLuintbuffer + GLintptroffset + GLsizeiptrsize + + + + Parameters + + + target + + + Specify the target of the bind operation. target must be + either GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. + + + + + index + + + Specify the index of the binding point within the array specified by target. + + + + + buffer + + + The name of a buffer object to bind to the specified binding point. + + + + + offset + + + The starting offset in basic machine units into the buffer object buffer. + + + + + size + + + The amount of data in machine units that can be read from the buffet object while used as an indexed target. + + + + + + Description + + glBindBufferRange binds a range the buffer object buffer + represented by offset and size to the + binding point at index index of the array of targets specified by target. + Each target represents an indexed array of buffer binding points, as well + as a single general binding point that can be used by other buffer manipulation functions such as + glBindBuffer or + glMapBuffer. In addition to binding + a range of buffer to the indexed buffer binding target, glBindBufferRange + also binds the range to the generic buffer binding point specified by target. + + + offset specifies the offset in basic machine units into the buffer object + buffer and size specifies the amount of data that + can be read from the buffer object while used as an indexed target. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. + + + GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. + + + GL_INVALID_VALUE is generated if size is less than + or equal to zero, or if offset + size is greater + than the value of GL_BUFFER_SIZE. + + + Additional errors may be generated if offset violates any + target-specific alignmemt restrictions. + + + See Also + + glGenBuffers, + glDeleteBuffers, + glBindBuffer, + glBindBufferBase, + glMapBuffer, + glUnmapBuffer, + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindFragDataLocation.xml b/upstream-man-pages/man3/glBindFragDataLocation.xml new file mode 100644 index 0000000..6c98392 --- /dev/null +++ b/upstream-man-pages/man3/glBindFragDataLocation.xml @@ -0,0 +1,127 @@ + + + + + + + 2010 + Khronos Group + + + glBindFragDataLocation + 3G + + + glBindFragDataLocation + bind a user-defined varying out variable to a fragment shader color number + + C Specification + + + void glBindFragDataLocation + GLuint program + GLuint colorNumber + const char * name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to modify + + + + + colorNumber + + + The color number to bind the user-defined varying out variable to + + + + + name + + + The name of the user-defined varying out variable whose binding to modify + + + + + + Description + + glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable + name to fragment shader color number colorNumber for program + program. If name was bound previously, its assigned binding is replaced + with colorNumber. name must be a null-terminated string. colorNumber + must be less than GL_MAX_DRAW_BUFFERS. + + + The bindings specified by glBindFragDataLocation have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. + + + In addition to the errors generated by glBindFragDataLocation, the + program program will fail to link if: + + + + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. + + + + + More than one varying out variable is bound to the same color number. + + + + + + Notes + + Varying out varyings may have indexed locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. + + + Errors + + GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. + + + GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. + + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + Associated Gets + + glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable + + + See Also + + glCreateProgram, + glGetFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindFragDataLocationIndexed.xml b/upstream-man-pages/man3/glBindFragDataLocationIndexed.xml new file mode 100644 index 0000000..4fcec2c --- /dev/null +++ b/upstream-man-pages/man3/glBindFragDataLocationIndexed.xml @@ -0,0 +1,155 @@ + + + + + + + 2010 + Khronos Group + + + glBindFragDataLocationIndexed + 3G + + + glBindFragDataLocationIndexed + bind a user-defined varying out variable to a fragment shader color number and index + + C Specification + + + void glBindFragDataLocationIndexed + GLuint program + GLuint colorNumber + GLuint index + const char *name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to modify + + + + + colorNumber + + + The color number to bind the user-defined varying out variable to + + + + + index + + + The index of the color input to bind the user-defined varying out variable to + + + + + name + + + The name of the user-defined varying out variable whose binding to modify + + + + + + Description + + glBindFragDataLocationIndexed specifies that the varying out variable name in + program should be bound to fragment color colorNumber when the program is next + linked. index may be zero or one to specify that the color be used as either the first or second color + input to the blend equation, respectively. + + + The bindings specified by glBindFragDataLocationIndexed have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. + + + If name was bound previously, its assigned binding is replaced with colorNumber and + index. name must be a null-terminated string. index must be less than or equal to one, + and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index + is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. + + + In addition to the errors generated by glBindFragDataLocationIndexed, the + program program will fail to link if: + + + + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. + + + + + More than one varying out variable is bound to the same color number. + + + + + + Notes + + Varying out varyings may have locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. + + + Errors + + GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. + + + GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DUAL_SOURCE_DRAW_BUFERS + and index is greater than or equal to one. + + + GL_INVALID_VALUE is generated if index is greater than one. + + + GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. + + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + Associated Gets + + glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable + + + glGetFragDataIndex with a valid program object + and the the name of a user-defined varying out variable + + + See Also + + glCreateProgram, + glLinkProgram + glGetFragDataLocation, + glGetFragDataIndex + glBindFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindFramebuffer.xml b/upstream-man-pages/man3/glBindFramebuffer.xml new file mode 100644 index 0000000..d9c5768 --- /dev/null +++ b/upstream-man-pages/man3/glBindFramebuffer.xml @@ -0,0 +1,93 @@ + + + + + + + 2010 + Khronos Group + + + glBindFramebuffer + 3G + + + glBindFramebuffer + bind a framebuffer to a framebuffer target + + C Specification + + + void glBindFramebuffer + GLenum target + GLuint framebuffer + + + + Parameters + + + target + + + Specifies the framebuffer target of the binding operation. + + + + + framebuffer + + + Specifies the name of the framebuffer object to bind. + + + + + + Description + + glBindFramebuffer binds the framebuffer object with name framebuffer to the framebuffer target specified + by target. target must be either GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. If a framebuffer object is bound to + GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER, it becomes the target for + rendering or readback operations, respectively, until it is deleted or another framebuffer is bound to the corresponding bind point. + Calling glBindFramebuffer with target set to GL_FRAMEBUFFER binds + framebuffer to both the read and draw framebuffer targets. framebuffer is the name of a framebuffer + object previously returned from a call to glGenFramebuffers, or zero to break the existing + binding of a framebuffer object to target. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + + + GL_INVALID_OPERATION is generated if framebuffer is not zero or the name of a framebuffer + previously returned from a call to glGenFramebuffers. + + + See Also + + glGenFramebuffers, + glDeleteFramebuffers, + glFramebufferRenderbuffer, + glFramebufferTexture, + glFramebufferTexture1D, + glFramebufferTexture2D, + glFramebufferTexture3D, + glFramebufferTextureFace, + glFramebufferTextureLayer, + glIsFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindRenderbuffer.xml b/upstream-man-pages/man3/glBindRenderbuffer.xml new file mode 100644 index 0000000..2d1bc92 --- /dev/null +++ b/upstream-man-pages/man3/glBindRenderbuffer.xml @@ -0,0 +1,82 @@ + + + + + + + 2010 + Khronos Group + + + glBindRenderbuffer + 3G + + + glBindRenderbuffer + bind a renderbuffer to a renderbuffer target + + C Specification + + + void glBindRenderbuffer + GLenum target + GLuint renderbuffer + + + + Parameters + + + target + + + Specifies the renderbuffer target of the binding operation. target must be GL_RENDERBUFFER. + + + + + renderbuffer + + + Specifies the name of the renderbuffer object to bind. + + + + + + Description + + glBindRenderbuffer binds the renderbuffer object with name renderbuffer to the renderbuffer target specified + by target. target must be GL_RENDERBUFFER. renderbuffer + is the name of a renderbuffer object previously returned from a call to glGenRenderbuffers, + or zero to break the existing binding of a renderbuffer object to target. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. + + + GL_INVALID_OPERATION is generated if renderbuffer is not zero or the name of a renderbuffer + previously returned from a call to glGenRenderbuffers. + + + See Also + + glGenRenderbuffers, + glDeleteRenderbuffers, + glRenderbufferStorage, + glRenderbufferStorageMultisample, + glIsRenderbuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindSampler.xml b/upstream-man-pages/man3/glBindSampler.xml new file mode 100644 index 0000000..40e50cf --- /dev/null +++ b/upstream-man-pages/man3/glBindSampler.xml @@ -0,0 +1,103 @@ + + + + + + + 2010 + Khronos Group + + + glBindSampler + 3G + + + glBindSampler + bind a named sampler to a texturing target + + C Specification + + + void glBindSampler + GLuint unit + GLuint sampler + + + + Parameters + + + unit + + + Specifies the index of the texture unit to which the sampler is bound. + + + + + sampler + + + Specifies the name of a sampler. + + + + + + Description + + glBindSampler binds sampler to the texture unit at index unit. + sampler must be zero or the name of a sampler object previously returned from a call to + glGenSamplers. unit must be less than the value + of GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. + + + When a sampler object is bound to a texture unit, its state supersedes that of + the texture object bound to that texture unit. If the sampler name zero is bound to + a texture unit, the currently bound texture's sampler state becomes active. A single + sampler object may be bound to multiple texture units simultaneously. + + + Notes + + glBindSampler is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if unit is greater than or equal to the value of + GL_MAX_COMBIED_TEXTURE_IMAGE_UNITS. + + + GL_INVALID_OPERATION is generated if sampler is not zero or a name previously + returned from a call to glGenSamplers, or if such a name has + been deleted by a call to glDeleteSamplers. + + + Associated Gets + + glGet with argument GL_SAMPLER_BINDING + + + See Also + + glGenSamplers, + glDeleteSamplers, + glGet, + glSamplerParameter, + glGetSamplerParameter, + glGenTextures, + glBindTexture, + glDeleteTextures + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBindTexture.xml b/upstream-man-pages/man3/glBindTexture.xml new file mode 100644 index 0000000..9a4b2bb --- /dev/null +++ b/upstream-man-pages/man3/glBindTexture.xml @@ -0,0 +1,175 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBindTexture + 3G + + + glBindTexture + bind a named texture to a texturing target + + C Specification + + + void glBindTexture + GLenum target + GLuint texture + + + + Parameters + + + target + + + Specifies the target to which the texture is bound. + Must be either + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, or + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + + + + + texture + + + Specifies the name of a texture. + + + + + + Description + + glBindTexture lets you create or use a named texture. Calling glBindTexture with + target set to + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, or + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY + and texture set to the name of the new texture binds the texture name to the target. + When a texture is bound to a target, the previous binding for that target is automatically broken. + + + Texture names are unsigned integers. The value zero is reserved to + represent the default texture for each texture target. + Texture names and the corresponding texture contents are local to + the shared object space of the current GL rendering context; + two rendering contexts share texture names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. + + + You must use glGenTextures to generate a set of new texture names. + + + When a texture is first bound, it assumes the specified target: + A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a + texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a + texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, a + texture first bound to GL_TEXTURE_1D_ARRAY becomes one-dimensional array texture, a + texture first bound to GL_TEXTURE_2D_ARRAY becomes two-dimensional arary texture, a + texture first bound to GL_TEXTURE_RECTANGLE becomes rectangle texture, a, + texture first bound to GL_TEXTURE_CUBE_MAP becomes a cube-mapped texture, a + texture first bound to GL_TEXTURE_BUFFER becomes a buffer texture, a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE becomes a two-dimensional multisampled texture, and a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE_ARRAY becomes a two-dimensional multisampled array texture. + The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the + default GL_TEXTURE_1D at GL initialization, and similarly for the other texture types. + + + While a texture is bound, GL operations on the target to which it is + bound affect the bound texture, and queries of the target to which it + is bound return state from the bound texture. + In effect, the texture targets become aliases for the textures currently + bound to them, and the texture name zero refers to the default textures + that were bound to them at initialization. + + + A texture binding created with glBindTexture remains active until a different + texture is bound to the same target, or until the bound texture is + deleted with glDeleteTextures. + + + Once created, a named texture may be re-bound to its same original target as often as needed. + It is usually much faster to use glBindTexture to bind an existing named + texture to one of the texture targets than it is to reload the texture image + using glTexImage1D, glTexImage2D, + glTexImage3D or another similar function. + + + Notes + + The GL_TEXTURE_2D_MULTISAMPLE and GL_TEXTURE_2D_MULTISAMPLE_ARRAY targets are available + only if the GL version is 3.2 or higher. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if target is not a name returned from + a previous call to glGenTextures. + + + GL_INVALID_OPERATION is generated if texture was previously created with a target + that doesn't match that of target. + + + Associated Gets + + glGet with argument GL_TEXTURE_BINDING_1D, + GL_TEXTURE_BINDING_2D, GL_TEXTURE_BINDING_3D, GL_TEXTURE_BINDING_1D_ARRAY, + GL_TEXTURE_BINDING_2D_ARRAY, GL_TEXTURE_BINDING_RECTANGLE, GL_TEXTURE_BINDING_2D_MULTISAMPLE, + or GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY. + + + See Also + + glDeleteTextures, + glGenTextures, + glGet, + glGetTexParameter, + glIsTexture, + glTexImage1D, + glTexImage2D, + glTexImage2DMultisample, + glTexImage3D, + glTexImage3DMultisample, + glTexBuffer, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glBindVertexArray.xml b/upstream-man-pages/man3/glBindVertexArray.xml new file mode 100644 index 0000000..37f279d --- /dev/null +++ b/upstream-man-pages/man3/glBindVertexArray.xml @@ -0,0 +1,72 @@ + + + + + + + 2010 + Khronos Group + + + glBindVertexArray + 3G + + + glBindVertexArray + bind a vertex array object + + C Specification + + + void glBindVertexArray + GLuint array + + + + Parameters + + + array + + + Specifies the name of the vertex array to bind. + + + + + + Description + + glBindVertexArray binds the vertex array object with name array. array + is the name of a vertex array object previously returned from a call to glGenVertexArrays, + or zero to break the existing vertex array object binding. + + + If no vertex array object with name array exists, one is created when array is first bound. If the bind + is successful no change is made to the state of the vertex array object, and any previous vertex array object binding is broken. + + + Errors + + GL_INVALID_OPERATION is generated if array is not zero or the name of a vertex array object + previously returned from a call to glGenVertexArrays. + + + See Also + + glGenVertexArrays, + glDeleteVertexArrays + glVertexAttribPointer + glEnableVertexAttribArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBlendColor.xml b/upstream-man-pages/man3/glBlendColor.xml new file mode 100644 index 0000000..dd96f3b --- /dev/null +++ b/upstream-man-pages/man3/glBlendColor.xml @@ -0,0 +1,82 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendColor + 3G + + + glBlendColor + set the blend color + + C Specification + + + void glBlendColor + GLclampf red + GLclampf green + GLclampf blue + GLclampf alpha + + + + + Parameters + + + red + green + blue + alpha + + + specify the components of GL_BLEND_COLOR + + + + + + Description + + The GL_BLEND_COLOR may be used to calculate the source and destination + blending factors. The color components are clamped to the range + + + + 0 + 1 + + + before being stored. See glBlendFunc for a complete description of the + blending operations. + Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). + + + Associated Gets + + glGet with an argument of GL_BLEND_COLOR + + + See Also + + glBlendEquation, + glBlendFunc, + glGetString + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glBlendEquation.xml b/upstream-man-pages/man3/glBlendEquation.xml new file mode 100644 index 0000000..ffff5b6 --- /dev/null +++ b/upstream-man-pages/man3/glBlendEquation.xml @@ -0,0 +1,759 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendEquation + 3G + + + glBlendEquation + specify the equation used for both the RGB blend equation and the Alpha blend equation + + C Specification + + + void glBlendEquation + GLenum mode + + + + + Parameters + + + mode + + + specifies how source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + + Description + + The blend equations determine how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function sets both the RGB blend equation and the alpha + blend equation to a single equation. + + + These equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. + + + In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + + + + + + + + + + Mode + + + RGB Components + + + Alpha Component + + + + + + + GL_FUNC_ADD + + + + + + Rr + = + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + GL_FUNC_SUBTRACT + + + + + + Rr + = + + R + s + + + s + R + + - + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + - + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + - + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + - + A + d + + + d + A + + + + + + + + + GL_FUNC_REVERSE_SUBTRACT + + + + + + Rr + = + + R + d + + + d + R + + - + R + s + + + s + R + + + + + + + + Gr + = + + G + d + + + d + G + + - + G + s + + + s + G + + + + + + + + Br + = + + B + d + + + d + B + + - + B + s + + + s + B + + + + + + + + + + Ar + = + + A + d + + + d + A + + - + A + s + + + s + A + + + + + + + + + GL_MIN + + + + + + Rr + = + + min + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + min + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + min + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + min + + + + A + s + + + + A + d + + + + + + + + + + + GL_MAX + + + + + + Rr + = + + max + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + max + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + max + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + max + + + + A + s + + + + A + d + + + + + + + + + + + + + + The results of these equations are clamped to the range + + + + 0 + 1 + + . + + + The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. + + + Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + + + + + Notes + + The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. + + + Associated Gets + + glGet with an argument of GL_BLEND_EQUATION_RGB + + + glGet with an argument of GL_BLEND_EQUATION_ALPHA + + + See Also + + glBlendColor, + glBlendFunc + glBlendFuncSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glBlendEquationSeparate.xml b/upstream-man-pages/man3/glBlendEquationSeparate.xml new file mode 100644 index 0000000..6ae5497 --- /dev/null +++ b/upstream-man-pages/man3/glBlendEquationSeparate.xml @@ -0,0 +1,771 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendEquationSeparate + 3G + + + glBlendEquationSeparate + set the RGB blend equation and the alpha blend equation separately + + C Specification + + + void glBlendEquationSeparate + GLenum modeRGB + GLenum modeAlpha + + + + + Parameters + + + modeRGB + + + specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + modeAlpha + + + specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + + Description + + The blend equations determines how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function specifies one blend equation for the RGB-color + components and one blend equation for the alpha component. + + + The blend equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. + + + In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + + + + + + + + + + Mode + + + RGB Components + + + Alpha Component + + + + + + + GL_FUNC_ADD + + + + + + Rr + = + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + GL_FUNC_SUBTRACT + + + + + + Rr + = + + R + s + + + s + R + + - + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + - + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + - + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + - + A + d + + + d + A + + + + + + + + + GL_FUNC_REVERSE_SUBTRACT + + + + + + Rr + = + + R + d + + + d + R + + - + R + s + + + s + R + + + + + + + + Gr + = + + G + d + + + d + G + + - + G + s + + + s + G + + + + + + + + Br + = + + B + d + + + d + B + + - + B + s + + + s + B + + + + + + + + + + Ar + = + + A + d + + + d + A + + - + A + s + + + s + A + + + + + + + + + GL_MIN + + + + + + Rr + = + + min + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + min + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + min + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + min + + + + A + s + + + + A + d + + + + + + + + + + + GL_MAX + + + + + + Rr + = + + max + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + max + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + max + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + max + + + + A + s + + + + A + d + + + + + + + + + + + + + + The results of these equations are clamped to the range + + + + 0 + 1 + + . + + + The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. + + + Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + + + + + Notes + + The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. + + + Errors + + GL_INVALID_ENUM is generated if either modeRGB or modeAlpha is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. + + + Associated Gets + + glGet with an argument of GL_BLEND_EQUATION_RGB + + + glGet with an argument of GL_BLEND_EQUATION_ALPHA + + + See Also + + glGetString, + glBlendColor, + glBlendFunc, + glBlendFuncSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBlendFunc.xml b/upstream-man-pages/man3/glBlendFunc.xml new file mode 100644 index 0000000..ebf9284 --- /dev/null +++ b/upstream-man-pages/man3/glBlendFunc.xml @@ -0,0 +1,1452 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendFunc + 3G + + + glBlendFunc + specify pixel arithmetic + + C Specification + + + void glBlendFunc + GLenum sfactor + GLenum dfactor + + + + + Parameters + + + sfactor + + + Specifies how the red, green, blue, + and alpha source blending factors are computed. + The initial value is GL_ONE. + + + + + dfactor + + + Specifies how the red, green, blue, + and alpha destination blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. + + + + + + Description + + Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. + + + glBlendFunc defines the operation of blending when it is enabled. + sfactor specifies which method is used to scale the + source color components. + dfactor specifies which method is used to scale the + destination color components. + Both parameters must be one of the following symbolic constants: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, + GL_SRC_ALPHA_SATURATE, + GL_SRC1_COLOR, + GL_ONE_MINUS_SRC1_COLOR, + GL_SRC1_ALPHA, and + GL_ONE_MINUS_SRC1_ALPHA. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + In the table and in subsequent equations, first source, second source + and destination color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where + + + + + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + + + + + and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. + + + Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + The scale factors described in the table, + denoted + + + + f + R + + f + G + + f + B + + f + A + + + , + represent either source or destination factors. + All scale factors have range + + + + 0 + 1 + + . + + + + + + + + + + + Parameter + + + + + + f + R + + f + G + + f + B + + f + A + + + + + + + + + + GL_ZERO + + + + + + 0 + 0 + 0 + 0 + + + + + + + GL_ONE + + + + + + 1 + 1 + 1 + 1 + + + + + + + GL_SRC_COLOR + + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + + + + + + + GL_DST_COLOR + + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + + + + + GL_ONE_MINUS_DST_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + + + + + + GL_SRC_ALPHA + + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + GL_DST_ALPHA + + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + GL_ONE_MINUS_DST_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + GL_CONSTANT_COLOR + + + + + + R + c + + G + c + + B + c + + A + c + + + + + + + + GL_ONE_MINUS_CONSTANT_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + A + c + + + + + + + + + GL_CONSTANT_ALPHA + + + + + + A + c + + A + c + + A + c + + A + c + + + + + + + + GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + A + c + + + + + + + + + GL_SRC_ALPHA_SATURATE + + + + + + i + i + i + 1 + + + + + + + GL_SRC1_COLOR + + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC1_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + + + + + + + GL_SRC1_ALPHA + + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC1_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + + + In the table, + + + + + + + i + = + + + min + + + A + s + + + k + A + + - + A + d + + + + + k + A + + + + + + + + To determine the blended RGBA values of a pixel, + the system uses the following equations: + + + + + + + R + d + + = + + min + + + k + R + + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + + + G + d + + = + + min + + + k + G + + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + + + B + d + + = + + min + + + k + B + + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + A + d + + = + + min + + + k + A + + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + + Despite the apparent precision of the above equations, + blending arithmetic is not exactly specified, + because blending operates with imprecise integer color values. + However, + a blend factor that should be equal to 1 + is guaranteed not to modify its multiplicand, + and a blend factor equal to 0 reduces its multiplicand to 0. + For example, + when sfactor is GL_SRC_ALPHA, + dfactor is GL_ONE_MINUS_SRC_ALPHA, + and + + + A + s + + + is equal to + + + k + A + + , + the equations reduce to simple replacement: + + + + + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + + + + + + + Examples + + + + Transparency is best implemented using blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + with primitives sorted from farthest to nearest. + Note that this transparency calculation does not require + the presence of alpha bitplanes in the frame buffer. + + + Blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + is also useful for rendering antialiased points and lines + in arbitrary order. + + + Polygon antialiasing is optimized using blend function + (GL_SRC_ALPHA_SATURATE, GL_ONE) + with polygons sorted from nearest to farthest. + (See the glEnable, glDisable reference page and the + GL_POLYGON_SMOOTH argument for information on polygon antialiasing.) + Destination alpha bitplanes, + which must be present for this blend function to operate correctly, + store the accumulated coverage. + + + Notes + + Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. + + + When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) + + + When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. + + + Errors + + GL_INVALID_ENUM is generated if either sfactor + or dfactor is not an accepted value. + + + Associated Gets + + glGet with argument GL_BLEND_SRC + + + glGet with argument GL_BLEND_DST + + + glIsEnabled with argument GL_BLEND + + + + + See Also + + glBlendColor, + glBlendEquation, + glBlendFuncSeparate, + glClear, + glDrawBuffer, + glEnable, + glLogicOp, + glStencilFunc + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glBlendFuncSeparate.xml b/upstream-man-pages/man3/glBlendFuncSeparate.xml new file mode 100644 index 0000000..61e9fd0 --- /dev/null +++ b/upstream-man-pages/man3/glBlendFuncSeparate.xml @@ -0,0 +1,1500 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendFuncSeparate + 3G + + + glBlendFuncSeparate + specify pixel arithmetic for RGB and alpha components separately + + C Specification + + + void glBlendFuncSeparate + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + + Parameters + + + srcRGB + + + Specifies how the red, green, and blue blending factors are computed. + The initial value is GL_ONE. + + + + + dstRGB + + + Specifies how the red, green, and blue destination blending factors are + computed. + The initial value is GL_ZERO. + + + + + srcAlpha + + + Specified how the alpha source blending factor is computed. + The initial value is GL_ONE. + + + + + dstAlpha + + + Specified how the alpha destination blending factor is computed. + The initial value is GL_ZERO. + + + + + + Description + + Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. + + + glBlendFuncSeparate defines the operation of blending when it is enabled. + srcRGB specifies which method is used to scale the + source RGB-color components. + dstRGB specifies which method is used to scale the + destination RGB-color components. + Likewise, srcAlpha specifies which method is used to scale the source alpha + color component, and dstAlpha specifies which method is used to scale the + destination alpha component. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + + + In the table and in subsequent equations, first source, second source and destination + color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + , + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where + + + + + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + + + + + and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. + + + Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + All scale factors have range + + + + 0 + 1 + + . + + + + + + + + + + + + Parameter + + + RGB Factor + + + Alpha Factor + + + + + + + GL_ZERO + + + + + + 0 + 0 + 0 + + + + + + + 0 + + + + + + GL_ONE + + + + + + 1 + 1 + 1 + + + + + + + 1 + + + + + + GL_SRC_COLOR + + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + + A + s0 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + + + + + + GL_DST_COLOR + + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + A + d + + k + A + + + + + + + + GL_ONE_MINUS_DST_COLOR + + + + + + + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + + 1 + - + + A + d + + k + A + + + + + + + + + GL_SRC_ALPHA + + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + A + s0 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + + + + + + GL_DST_ALPHA + + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + A + d + + k + A + + + + + + + + GL_ONE_MINUS_DST_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + + 1 + - + + A + d + + k + A + + + + + + + + + GL_CONSTANT_COLOR + + + + + + R + c + + G + c + + B + c + + + + + + + + A + c + + + + + + + GL_ONE_MINUS_CONSTANT_COLOR + + + + + + + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + + + + + + + + + 1 + - + A + c + + + + + + + + GL_CONSTANT_ALPHA + + + + + + A + c + + A + c + + A + c + + + + + + + + A + c + + + + + + + GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + + + + + + + + + 1 + - + A + c + + + + + + + + GL_SRC_ALPHA_SATURATE + + + + + + i + i + i + + + + + + + 1 + + + + + + GL_SRC1_COLOR + + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + + A + s1 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + + + + + + GL_SRC1_ALPHA + + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + A + s1 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + + + + + + + + In the table, + + + + + + + i + = + + min + + + A + s + + + 1 + - + + A + d + + + + + + + + + + + To determine the blended RGBA values of a pixel, + the system uses the following equations: + + + + + + + R + d + + = + + min + + + k + R + + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + + + G + d + + = + + min + + + k + G + + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + + + B + d + + = + + min + + + k + B + + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + A + d + + = + + min + + + k + A + + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + + Despite the apparent precision of the above equations, blending arithmetic + is not exactly specified, because blending operates with imprecise integer + color values. However, a blend factor that should be equal to 1 is + guaranteed not to modify its multiplicand, and a blend factor equal to 0 + reduces its multiplicand to 0. For example, when srcRGB is + GL_SRC_ALPHA, dstRGB is GL_ONE_MINUS_SRC_ALPHA, and + + + A + s + + + is + equal to + + + k + A + + , + the equations reduce to simple replacement: + + + + + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + + + + + + + Notes + + Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. + + + When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) + + + When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. + + + Errors + + GL_INVALID_ENUM is generated if either srcRGB or dstRGB is not an + accepted value. + + + Associated Gets + + glGet with argument GL_BLEND_SRC_RGB + + + glGet with argument GL_BLEND_SRC_ALPHA + + + glGet with argument GL_BLEND_DST_RGB + + + glGet with argument GL_BLEND_DST_ALPHA + + + glIsEnabled with argument GL_BLEND + + + + + See Also + + glBlendColor, + glBlendFunc, + glBlendEquation, + glClear, + glDrawBuffer, + glEnable, + glLogicOp, + glStencilFunc + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glBlitFramebuffer.xml b/upstream-man-pages/man3/glBlitFramebuffer.xml new file mode 100644 index 0000000..9840f86 --- /dev/null +++ b/upstream-man-pages/man3/glBlitFramebuffer.xml @@ -0,0 +1,177 @@ + + + + + + + 2010 + Khronos Group + + + glBlitFramebuffer + 3G + + + glBlitFramebuffer + copy a block of pixels from the read framebuffer to the draw framebuffer + + C Specification + + + void glBlitFramebuffer + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + + Parameters + + + srcX0 + srcY0 + srcX1 + srcY1 + + + Specify the bounds of the source rectangle within the read buffer of the read framebuffer. + + + + + dstX0 + dstY0 + dstX1 + dstY1 + + + Specify the bounds of the destination rectangle within the write buffer of the write framebuffer. + + + + + mask + + + The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are + GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT and GL_STENCIL_BUFFER_BIT. + + + + + filter + + + Specifies the interpolation to be applied if the image is stretched. Must be GL_NEAREST or GL_LINEAR. + + + + + + Description + + glBlitFramebuffer transfers a rectangle of pixel values from one region of the read framebuffer to another region in + the draw framebuffer. mask is the bitwise OR of a number of values indicating which buffers are + to be copied. The values are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. The pixels corresponding to these buffers are copied from the source rectangle bounded by the + locations (srcX0; srcY0) and (srcX1; srcY1) + to the destination rectangle bounded by the locations (dstX0; dstY0) and + (dstX1; dstY1). The lower bounds of the rectangle are inclusive, while the upper + bounds are exclusive. + + + The actual region taken from the read framebuffer is limited to the intersection of the source buffers being transferred, which may + include the color buffer selected by the read buffer, the depth buffer, and/or the stencil buffer depending on mask. The actual region + written to the draw framebuffer is limited to the intersection of the destination buffers being written, which may include multiple draw + buffers, the depth buffer, and/or the stencil buffer depending on mask. Whether or not the source or destination regions are altered due + to these limits, the scaling and offset applied to pixels being transferred is performed as though no such limits were present. + + + If the sizes of the source and destination rectangles are not equal, filter specifies the interpolation method that + will be applied to resize the source image , and must be GL_NEAREST or GL_LINEAR. + GL_LINEAR is only a valid interpolation method for the color buffer. If filter is not + GL_NEAREST and mask includes GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT, no data is transferred and a GL_INVALID_OPERATION error is generated. + + + If filter is GL_LINEAR and the source rectangle would require sampling outside the bounds of + the source framebuffer, values are read as if the GL_CLAMP_TO_EDGE texture wrapping mode were applied. + + + When the color buffer is transferred, values are taken from the read buffer of the read framebuffer and written to each of the draw + buffers of the draw framebuffer. + + + If the source and destination rectangles overlap or are the same, and the read and draw buffers are the same, the result of the operation + is undefined. + + + Errors + + GL_INVALID_OPERATION is generated if mask contains any of the GL_DEPTH_BUFFER_BIT + or GL_STENCIL_BUFFER_BIT and filter is not GL_NEAREST. + + + GL_INVALID_OPERATION is generated if mask contains GL_COLOR_BUFFER_BIT + and any of the following conditions hold: + + + The read buffer contains fixed-point or floating-point values and any draw buffer contains + neither fixed-point nor floating-point values. + + + The read buffer contains unsigned integer values and any draw buffer does not contain unsigned + integer values. + + + The read buffer contains signed integer values and any draw buffer does not contain signed integer values. + + + + + GL_INVALID_OPERATION is generated if mask contains GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT and the source and destination depth and stencil formats do not match. + + + GL_INVALID_OPERATION is generated if filter is GL_LINEAR and the read buffer + contains integer data. + + + GL_INVALID_OPERATION is generated if the value of GL_SAMPLES for the read and draw buffers is + not identical. + + + GL_INVALID_OPERATION is generated if GL_SAMPLE_BUFFERS for both read and draw buffers greater than + zero and the dimensions of the source and destination rectangles is not identical. + + + GL_INVALID_FRAMEBUFFER_OPERATION is generated if the objects bound to GL_DRAW_FRAMEBUFFER_BINDING + or GL_READ_FRAMEBUFFER_BINDING are not framebuffer complete. + + + See Also + + glReadPixels + glCheckFramebufferStatus, + glGenFramebuffers + glBindFramebuffer + glDeleteFramebuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBufferData.xml b/upstream-man-pages/man3/glBufferData.xml new file mode 100644 index 0000000..2607fd4 --- /dev/null +++ b/upstream-man-pages/man3/glBufferData.xml @@ -0,0 +1,212 @@ + + + + + + + 2005 + Sams Publishing + + + glBufferData + 3G + + + glBufferData + creates and initializes a buffer object's data store + + C Specification + + + void glBufferData + GLenum target + GLsizeiptr size + const GLvoid * data + GLenum usage + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + size + + + Specifies the size in bytes of the buffer object's new data store. + + + + + data + + + Specifies a pointer to data that will be copied into the data store for initialization, + or NULL if no data is to be copied. + + + + + usage + + + Specifies the expected usage pattern of the data store. The symbolic constant must be + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + + + + + + Description + + glBufferData creates a new data store for the buffer object currently bound to + target. Any pre-existing data store is deleted. The new data store is created with the + specified size in bytes and usage. If data + is not NULL, the data store is initialized with data from this pointer. In its initial + state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access + is GL_READ_WRITE. + + + usage is a hint to the GL implementation as to how a buffer object's data store will be + accessed. This enables the GL implementation to make more intelligent decisions that may significantly + impact buffer object performance. It does not, however, constrain the actual usage of the data store. + usage can be broken down into two parts: first, the frequency of access (modification + and usage), and second, the nature of that access. The frequency of access may be one of these: + + + + STREAM + + + The data store contents will be modified once and used at most a few times. + + + + + STATIC + + + The data store contents will be modified once and used many times. + + + + + DYNAMIC + + + The data store contents will be modified repeatedly and used many times. + + + + + + The nature of access may be one of these: + + + + DRAW + + + The data store contents are modified by the application, and used as the source for GL drawing and + image specification commands. + + + + + READ + + + The data store contents are modified by reading data from the GL, and used to return that data + when queried by the application. + + + + + COPY + + + The data store contents are modified by reading data from the GL, and used as the source for GL + drawing and image specification commands. + + + + + + Notes + + If data is NULL, a data store of the specified size is still created, + but its contents remain uninitialized and thus undefined. + + + Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. + + + GL_INVALID_ENUM is generated if usage is not + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + + + GL_INVALID_VALUE is generated if size is negative. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store with the specified size. + + + Associated Gets + + glGetBufferSubData + + + glGetBufferParameter with argument GL_BUFFER_SIZE or GL_BUFFER_USAGE + + + See Also + + glBindBuffer, + glBufferSubData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glBufferSubData.xml b/upstream-man-pages/man3/glBufferSubData.xml new file mode 100644 index 0000000..97ea9dc --- /dev/null +++ b/upstream-man-pages/man3/glBufferSubData.xml @@ -0,0 +1,143 @@ + + + + + + + 2005 + Sams Publishing + + + glBufferSubData + 3G + + + glBufferSubData + updates a subset of a buffer object's data store + + C Specification + + + void glBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + offset + + + Specifies the offset into the buffer object's data store where data replacement will begin, + measured in bytes. + + + + + size + + + Specifies the size in bytes of the data store region being replaced. + + + + + data + + + Specifies a pointer to the new data that will be copied into the data store. + + + + + + Description + + glBufferSubData redefines some or all of the data store for the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied to the data store from the memory pointed to by + data. An error is thrown if offset and size + together define a range beyond the bounds of the buffer object's data store. + + + Notes + + When replacing the entire data store, consider using glBufferSubData rather + than completely recreating the data store with glBufferData. This avoids the cost of + reallocating the data store. + + + Consider using multiple buffer objects to avoid stalling the rendering pipeline during data store updates. + If any rendering in the pipeline makes reference to data in the buffer object being updated by + glBufferSubData, especially from the specific region being updated, that rendering must + drain from the pipeline before the data store can be updated. + + + Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. + + + GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer object being updated is mapped. + + + Associated Gets + + glGetBufferSubData + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glCheckFramebufferStatus.xml b/upstream-man-pages/man3/glCheckFramebufferStatus.xml new file mode 100644 index 0000000..922e8f9 --- /dev/null +++ b/upstream-man-pages/man3/glCheckFramebufferStatus.xml @@ -0,0 +1,131 @@ + + + + + + + 2010 + Khronos Group + + + glCheckFramebufferStatus + 3G + + + glCheckFramebufferStatus + check the completeness status of a framebuffer + + C Specification + + + GLenum glCheckFramebufferStatus + GLenum target + + + + Parameters + + + target + + + Specify the target of the framebuffer completeness check. + + + + + + Description + + glCheckFramebufferStatus queries the completeness status of the framebuffer object currently bound to target. + target must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + + + The return value is GL_FRAMEBUFFER_COMPLETE if the framebuffer bound to target is complete. Otherwise, + the return value is determined as follows: + + + + GL_FRAMEBUFFER_UNDEFINED is returned if target is the default framebuffer, but the default framebuffer does not exist. + + + + + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT is returned if any of the framebuffer attachment points are framebuffer incomplete. + + + + + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT is returned if the framebuffer does not have at least one image attached to it. + + + + + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER is returned if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE + is GL_NONE for any color attachment point(s) named by GL_DRAWBUFFERi. + + + + + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER is returned if GL_READ_BUFFER is not GL_NONE + and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE for the color attachment point named + by GL_READ_BUFFER. + + + + + GL_FRAMEBUFFER_UNSUPPORTED is returned if the combination of internal formats of the attached images violates + an implementation-dependent set of restrictions. + + + + + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is returned if the value of GL_RENDERBUFFER_SAMPLES is not the same + for all attached renderbuffers; if the value of GL_TEXTURE_SAMPLES is the not same for all attached textures; or, if the attached + images are a mix of renderbuffers and textures, the value of GL_RENDERBUFFER_SAMPLES does not match the value of + GL_TEXTURE_SAMPLES. + + + + + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is also returned if the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS is + not the same for all attached textures; or, if the attached images are a mix of renderbuffers and textures, the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS + is not GL_TRUE for all attached textures. + + + + + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS is returned if any framebuffer attachment is layered, and any populated attachment is not layered, + or if all populated color attachments are not from textures of the same target. + + + + + + Additionally, if an error occurs, zero is returned. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + + + See Also + + glGenFramebuffers, + glDeleteFramebuffers + glBindFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glClampColor.xml b/upstream-man-pages/man3/glClampColor.xml new file mode 100644 index 0000000..962c3ea --- /dev/null +++ b/upstream-man-pages/man3/glClampColor.xml @@ -0,0 +1,79 @@ + + + + + + + 2010 + Khronos Group + + + glClampColor + 3G + + + glClampColor + specify whether data read via glReadPixels should be clamped + + C Specification + + + void glClampColor + GLenum target + GLenum clamp + + + + Parameters + + + target + + + Target for color clamping. target must be GL_CLAMP_READ_COLOR. + + + + + clamp + + + Specifies whether to apply color clamping. clamp must be GL_TRUE or GL_FALSE. + + + + + + Description + + glClampColor controls color clamping that is performed during glReadPixels. + target must be GL_CLAMP_READ_COLOR. If clamp is GL_TRUE, + read color clamping is enabled; if clamp is GL_FALSE, read color clamping is disabled. If + clamp is GL_FIXED_ONLY, read color clamping is enabled only if the selected read buffer has + fixed point components and disabled otherwise. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_CLAMP_READ_COLOR. + + + GL_INVALID_ENUM is generated if clamp is not GL_TRUE or GL_FALSE. + + + Associated Gets + + glGet with argument GL_CLAMP_READ_COLOR. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glClear.xml b/upstream-man-pages/man3/glClear.xml new file mode 100644 index 0000000..9183a4e --- /dev/null +++ b/upstream-man-pages/man3/glClear.xml @@ -0,0 +1,145 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClear + 3G + + + glClear + clear buffers to preset values + + C Specification + + + void glClear + GLbitfield mask + + + + Parameters + + + mask + + + Bitwise OR of masks that indicate the buffers to be cleared. + The three masks are + GL_COLOR_BUFFER_BIT, + GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. + + + + + + Description + + glClear sets the bitplane area of the window to values previously selected + by glClearColor, glClearDepth, and + glClearStencil. + Multiple color buffers can be cleared simultaneously by selecting + more than one buffer at a time using glDrawBuffer. + + + The pixel ownership test, + the scissor test, + dithering, and the buffer writemasks affect the operation of glClear. + The scissor box bounds the cleared region. + Alpha function, + blend function, + logical operation, + stenciling, + texture mapping, + and depth-buffering are ignored by glClear. + + + glClear takes a single argument that is the bitwise OR of several + values indicating which buffer is to be cleared. + + + The values are as follows: + + + + GL_COLOR_BUFFER_BIT + + + Indicates the buffers currently enabled for color + writing. + + + + + GL_DEPTH_BUFFER_BIT + + + Indicates the depth buffer. + + + + + GL_STENCIL_BUFFER_BIT + + + Indicates the stencil buffer. + + + + + + The value to which each buffer is cleared depends on the setting of the + clear value for that buffer. + + + Notes + + If a buffer is not present, + then a glClear directed at that buffer has no effect. + + + Errors + + GL_INVALID_VALUE is generated if any bit other than the three defined + bits is set in mask. + + + Associated Gets + + glGet with argument GL_DEPTH_CLEAR_VALUE + + + glGet with argument GL_COLOR_CLEAR_VALUE + + + glGet with argument GL_STENCIL_CLEAR_VALUE + + + See Also + + glClearColor, + glClearDepth, + glClearStencil, + glColorMask, + glDepthMask, + glDrawBuffer, + glScissor, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glClearBuffer.xml b/upstream-man-pages/man3/glClearBuffer.xml new file mode 100644 index 0000000..dc06beb --- /dev/null +++ b/upstream-man-pages/man3/glClearBuffer.xml @@ -0,0 +1,170 @@ + + + + + + + 2010 + Khronos Group + + + glClearBuffer + 3G + + + glClearBuffer + clear individual buffers of the currently bound draw framebuffer + + C Specification + + + void glClearBufferiv + GLenum buffer + GLint drawBuffer + const GLint * value + + + + + void glClearBufferuiv + GLenum buffer + GLint drawBuffer + const GLuint * value + + + + + void glClearBufferfv + GLenum buffer + GLint drawBuffer + const GLfloat * value + + + + + void glClearBufferfi + GLenum buffer + GLint drawBuffer + GLfloat depth + GLint stencil + + + + Parameters + + + buffer + + + Specify the buffer to clear. + + + + + drawBuffer + + + Specify a particular draw buffer to clear. + + + + + value + + + For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. + For depth buffers, a pointer to a single depth value to clear the buffer to. + For stencil buffers, a pointer to a single stencil value to clear the buffer to. + + + + + depth + + + The value to clear a depth render buffer to. + + + + + stencil + + + The value to clear a stencil render buffer to. + + + + + + Description + + glClearBuffer* clears the specified buffer to the specified value(s). If buffer is + GL_COLOR, a particular draw buffer GL_DRAWBUFFERi is specified + by passing i as drawBuffer. In this case, value points to + a four-element vector specifying the R, G, B and A color to clear that draw buffer to. If buffer is + one of GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK, identifying multiple buffers, each selected buffer is cleared to the same value. + Clamping and conversion for fixed-point color buffers are performed in the same fashion as + glClearColor. + + + If buffer is GL_DEPTH, drawBuffer must be zero, and value + points to a single value to clear the depth buffer to. Only glClearBufferfv should be used to clear + depth buffers. Clamping and conversion for fixed-point depth buffers are performed in the same fashion as + glClearDepth. + + + If buffer is GL_STENCIL, drawBuffer must be zero, and value + points to a single value to clear the stencil buffer to. Only glClearBufferiv should be used to clear + stencil buffers. Masking and type conversion are performed in the same fashion as + glClearStencil. + + + glClearBufferfi may be used to clear the depth and stencil buffers. buffer must be + GL_DEPTH_STENCIL and drawBuffer must be zero. depth and + stencil are the depth and stencil values, respectively. + + + The result of glClearBuffer is undefined if no conversion between the type of value + and the buffer being cleared is defined. However, this is not an error. + + + Errors + + GL_INVALID_ENUM is generated by glClearBufferif, glClearBufferfv + and glClearBufferuiv if buffer is not GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + GL_FRONT_AND_BACK, GL_DEPTH or GL_STENCIL. + + + GL_INVALID_ENUM is generated by glClearBufferfi if buffer + is not GL_DEPTH_STENCIL. + + + GL_INVALID_VALUE is generated if buffer is GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK and drawBuffer is greater than or equal to GL_MAX_DRAW_BUFFERS. + + + GL_INVALID_VALUE is generated if buffer is GL_DEPTH, + GL_STENCIL or GL_DEPTH_STENCIL and drawBuffer is not zero. + + + See Also + + glClearColor, + glClearDepth, + glClearStencil, + glClear + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glClearColor.xml b/upstream-man-pages/man3/glClearColor.xml new file mode 100644 index 0000000..cb9025a --- /dev/null +++ b/upstream-man-pages/man3/glClearColor.xml @@ -0,0 +1,81 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearColor + 3G + + + glClearColor + specify clear values for the color buffers + + C Specification + + + void glClearColor + GLclampf red + GLclampf green + GLclampf blue + GLclampf alpha + + + + Parameters + + + red + green + blue + alpha + + + Specify the red, green, blue, and alpha values used when the + color buffers are cleared. + The initial values are all 0. + + + + + + Description + + glClearColor specifies the red, + green, + blue, + and alpha values used by glClear to clear the color buffers. + Values specified by glClearColor are clamped to the range + + + + 0 + 1 + + . + + + Associated Gets + + glGet with argument GL_COLOR_CLEAR_VALUE + + + See Also + + glClear + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glClearDepth.xml b/upstream-man-pages/man3/glClearDepth.xml new file mode 100644 index 0000000..9e5db8a --- /dev/null +++ b/upstream-man-pages/man3/glClearDepth.xml @@ -0,0 +1,71 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearDepth + 3G + + + glClearDepth + specify the clear value for the depth buffer + + C Specification + + + void glClearDepth + GLclampd depth + + + + Parameters + + + depth + + + Specifies the depth value used when the depth buffer is cleared. The + initial value is 1. + + + + + + Description + + glClearDepth specifies the depth value used by glClear to clear the depth buffer. + Values specified by glClearDepth are clamped to the range + + + + 0 + 1 + + . + + + Associated Gets + + glGet with argument GL_DEPTH_CLEAR_VALUE + + + See Also + + glClear + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glClearStencil.xml b/upstream-man-pages/man3/glClearStencil.xml new file mode 100644 index 0000000..1e319cd --- /dev/null +++ b/upstream-man-pages/man3/glClearStencil.xml @@ -0,0 +1,87 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearStencil + 3G + + + glClearStencil + specify the clear value for the stencil buffer + + C Specification + + + void glClearStencil + GLint s + + + + + Parameters + + + s + + + Specifies the index used when the stencil buffer is cleared. + The initial value is 0. + + + + + + Description + + glClearStencil specifies the index used by glClear to clear the stencil buffer. + s is masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in the stencil buffer. + + + Associated Gets + + glGet with argument GL_STENCIL_CLEAR_VALUE + + + glGet with argument GL_STENCIL_BITS + + + See Also + + glClear, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glClientWaitSync.xml b/upstream-man-pages/man3/glClientWaitSync.xml new file mode 100644 index 0000000..bbe292b --- /dev/null +++ b/upstream-man-pages/man3/glClientWaitSync.xml @@ -0,0 +1,119 @@ + + + + + + + 2010 + Khronos Group + + + glClientWaitSync + 3G + + + glClientWaitSync + block and wait for a sync object to become signaled + + C Specification + + + GLenum glClientWaitSync + GLsync sync + GLbitfield flags + GLuint64 timeout + + + + Parameters + + + sync + + + The sync object whose status to wait on. + + + + + flags + + + A bitfield controlling the command flushing behavior. flags may be GL_SYNC_FLUSH_COMMANDS_BIT. + + + + + + timeout + + + The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled. + + + + + Description + + glClientWaitSync causes the client to block and wait for the sync object specified by sync to become signaled. If + sync is signaled when glClientWaitSync is called, glClientWaitSync returns immediately, otherwise + it will block and wait for up to timeout nanoseconds for sync to become signaled. + + + The return value is one of four status values: + + + + GL_ALREADY_SIGNALED indicates that sync was signaled at the time that glClientWaitSync + was called. + + + + + GL_TIMEOUT_EXPIRED indicates that at least timeout nanoseconds passed and sync did not + become signaled. + + + + + GL_CONDITION_SATISFIED indicates that sync was signaled before the timeout expired. + + + + + GL_WAIT_FAILED indicates that an error occurred. Additionally, an OpenGL error will be generated. + + + + + + Notes + + glClientWaitSync is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_VALUE is generated if sync is not the name of an existing sync object. + + + GL_INVALID_VALUE is generated if flags contains any unsupported flag. + + + See Also + + glFenceSync, + glIsSync + glWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glColorMask.xml b/upstream-man-pages/man3/glColorMask.xml new file mode 100644 index 0000000..16fb9eb --- /dev/null +++ b/upstream-man-pages/man3/glColorMask.xml @@ -0,0 +1,106 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorMask + 3G + + + glColorMask, glColorMaski + enable and disable writing of frame buffer color components + + C Specification + + + void glColorMask + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + + void glColorMaski + GLuint buf + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + Parameters + + + buf + + + For glColorMaski, specifies the index of the + draw buffer whose color mask to set. + + + + + red + green + blue + alpha + + + Specify whether red, green, blue, and alpha are to be written + into the frame buffer. + The initial values are all GL_TRUE, + indicating that the color components are written. + + + + + + Description + + glColorMask and glColorMaski specify whether the individual color components in the frame buffer + can or cannot be written. glColorMaski sets the mask for a specific draw buffer, whereas + glColorMask sets the mask for all draw buffers. + If red is GL_FALSE, + for example, + no change is made to the red component of any pixel in any of the + color buffers, + regardless of the drawing operation attempted. + + + Changes to individual bits of components cannot be controlled. + Rather, + changes are either enabled or disabled for entire color components. + + + Associated Gets + + glGet with argument GL_COLOR_WRITEMASK + + + See Also + + glClear, + glDepthMask, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. + Copyright 2010-2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCompileShader.xml b/upstream-man-pages/man3/glCompileShader.xml new file mode 100644 index 0000000..714831d --- /dev/null +++ b/upstream-man-pages/man3/glCompileShader.xml @@ -0,0 +1,84 @@ + + + + + glCompileShader + 3G + + + glCompileShader + Compiles a shader object + + C Specification + + + void glCompileShader + GLuint shader + + + + Parameters + + + shader + + Specifies the shader object to be + compiled. + + + + + Description + glCompileShader compiles the source + code strings that have been stored in the shader object + specified by shader. + + The compilation status will be stored as part of the + shader object's state. This value will be set to + GL_TRUE if the shader was compiled without + errors and is ready for use, and GL_FALSE + otherwise. It can be queried by calling + glGetShader + with arguments shader and + GL_COMPILE_STATUS. + + Compilation of a shader can fail for a number of reasons + as specified by the OpenGL Shading Language Specification. + Whether or not the compilation was successful, information about + the compilation can be obtained from the shader object's + information log by calling + glGetShaderInfoLog. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + + Associated Gets + glGetShaderInfoLog + with argument shader + + glGetShader + with arguments shader and + GL_COMPILE_STATUS + glIsShader + + See Also + glCreateShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glCompressedTexImage1D.xml b/upstream-man-pages/man3/glCompressedTexImage1D.xml new file mode 100644 index 0000000..4e28d64 --- /dev/null +++ b/upstream-man-pages/man3/glCompressedTexImage1D.xml @@ -0,0 +1,216 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage1D + 3G + + + glCompressedTexImage1D + specify a one-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage1D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image. + All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. + + + + + border + + + This value must be 0. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexImage1D loads a previously defined, and retrieved, compressed + one-dimensional texture image if target is GL_TEXTURE_1D + (see glTexImage1D). + + + If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + + + internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with + glTexImage1D using a generic compressed texture format + (e.g., GL_COMPRESSED_RGB) the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and + format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not + a supported specific compressed internal formats, or is one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_NUM_COMPRESSED_TEXTURE_FORMATS + + + glGet with argument GL_COMPRESSED_TEXTURE_FORMATS + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCompressedTexImage2D.xml b/upstream-man-pages/man3/glCompressedTexImage2D.xml new file mode 100644 index 0000000..cf05ff0 --- /dev/null +++ b/upstream-man-pages/man3/glCompressedTexImage2D.xml @@ -0,0 +1,241 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage2D + 3G + + + glCompressedTexImage2D + specify a two-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage2D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image. + All implementations support 2D texture images that are at least 64 texels + wide and cube-mapped texture images that are at least 16 texels wide. + + + + + height + + + Specifies the height of the texture image. + All implementations support 2D texture images that are at least 64 texels + high and cube-mapped texture images that are at least 16 texels high. + + + + + border + + + This value must be 0. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional + texture image if target is GL_TEXTURE_2D, or one of the + cube map faces such as GL_TEXTURE_CUBE_MAP_POSITIVE_X. + (see glTexImage2D). + + + If target is GL_TEXTURE_1D_ARRAY, data + is treated as an array of compressed 1D textures. + + + If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY + or GL_PROXY_CUBE_MAP, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, + use an image array level greater than or equal to 1. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage2D, query the compressed texture image's + size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCompressedTexImage3D.xml b/upstream-man-pages/man3/glCompressedTexImage3D.xml new file mode 100644 index 0000000..968a2c5 --- /dev/null +++ b/upstream-man-pages/man3/glCompressedTexImage3D.xml @@ -0,0 +1,239 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage3D + 3G + + + glCompressedTexImage3D + specify a three-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage3D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels wide. + + + + + height + + + Specifies the height of the texture image. + All implementations support 3D texture images that are at least 16 texels + high. + + + + + depth + + + Specifies the depth of the texture image. + All implementations support 3D texture images that are at least 16 texels + deep. + + + + + border + + + This value must be 0. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional + texture image if target is GL_TEXTURE_3D (see glTexImage3D). + + + If target is GL_TEXTURE_2D_ARRAY, data is + treated as an array of compressed 2D textures. + + + If target is GL_PROXY_TEXTURE_3D or GL_PROXY_TEXTURE_2D_ARRAY, + no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage3D, query the compressed texture image's + size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if data is not encoded in a manner consistent with the extension specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCompressedTexSubImage1D.xml b/upstream-man-pages/man3/glCompressedTexSubImage1D.xml new file mode 100644 index 0000000..8e11ad1 --- /dev/null +++ b/upstream-man-pages/man3/glCompressedTexSubImage1D.xml @@ -0,0 +1,216 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage1D + 3G + + + glCompressedTexSubImage1D + specify a one-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage1D), and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCompressedTexSubImage2D.xml b/upstream-man-pages/man3/glCompressedTexSubImage2D.xml new file mode 100644 index 0000000..f7ea502 --- /dev/null +++ b/upstream-man-pages/man3/glCompressedTexSubImage2D.xml @@ -0,0 +1,251 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage2D + 3G + + + glCompressedTexSubImage2D + specify a two-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage2D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCompressedTexSubImage3D.xml b/upstream-man-pages/man3/glCompressedTexSubImage3D.xml new file mode 100644 index 0000000..5b5dcec --- /dev/null +++ b/upstream-man-pages/man3/glCompressedTexSubImage3D.xml @@ -0,0 +1,265 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage3D + 3G + + + glCompressedTexSubImage3D + specify a three-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + depth + + + Specifies the depth of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + and the z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. This region may not include + any texels outside the range of the texture array as it was originally + specified. It is not an error to specify a subtexture with width of 0, + but such a specification has no effect. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage3D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCopyBufferSubData.xml b/upstream-man-pages/man3/glCopyBufferSubData.xml new file mode 100644 index 0000000..2b5bee7 --- /dev/null +++ b/upstream-man-pages/man3/glCopyBufferSubData.xml @@ -0,0 +1,143 @@ + + + + + + + 2010 + Khronos Group + + + glCopyBufferSubData + 3G + + + glCopyBufferSubData + copy part of the data store of a buffer object to the data store of another buffer object + + C Specification + + + void glCopyBufferSubData + GLenum readtarget + GLenum writetarget + GLintptr readoffset + GLintptr writeoffset + GLsizeiptr size + + + + + Parameters + + + readtarget + + + Specifies the target from whose data store data should be read. + + + + + writetarget + + + Specifies the target to whose data store data should be written. + + + + + readoffset + + + Specifies the offset, in basic machine units, within the data store of readtarget from which data should be read. + + + + + writeoffset + + + Specifies the offset, in basic machine units, within the data store of writetarget to which data should be written. + + + + + size + + + Specifies the size, in basic machine units, of the data to be copied from readtarget to writetarget. + + + + + + Description + + glCopyBufferSubData copies part of the data store attached to readtarget to the + data store attached to writetarget. The number of basic machine units indicated by size + is copied from the source, at offset readoffset to the destination at writeoffset, + also in basic machine units. + + + readtarget and writetarget must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. Any of these targets may be used, + although the targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER are provided + specifically to allow copies between buffers without disturbing other GL state. + + + readoffset, writeoffset and size must all be greater than or equal to + zero. Furthermore, readoffset + size must not exceeed the size of the buffer + object bound to readtarget, and readoffset + size must not exceeed the + size of the buffer bound to writetarget. If the same buffer object is bound to both readtarget + and writetarget, then the ranges specified by readoffset, writeoffset + and size must not overlap. + + + Notes + + glCopyBufferSubData is available only if the GL version is 3.1 or greater. + + + Errors + + GL_INVALID_VALUE is generated if any of readoffset, writeoffset + or size is negative, if readoffset + size exceeds the + size of the buffer object bound to readtarget or if writeoffset + size + exceeds the size of the buffer object bound to writetarget. + + + GL_INVALID_VALUE is generated if the same buffer object is bound to both readtarget + and writetarget and the ranges [readoffset, readoffset + + size) and [writeoffset, writeoffset + size) + overlap. + + + GL_INVALID_OPERATION is generated if zero is bound to readtarget or writetarget. + + + GL_INVALID_OPERATION is generated if the buffer object bound to either readtarget or writetarget + is mapped. + + + See Also + + glGenBuffers, + glBindBuffer, + glBufferData, + glBufferSubData, + glGetBufferSubData + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glCopyTexImage1D.xml b/upstream-man-pages/man3/glCopyTexImage1D.xml new file mode 100644 index 0000000..462fafc --- /dev/null +++ b/upstream-man-pages/man3/glCopyTexImage1D.xml @@ -0,0 +1,307 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexImage1D + 3G + + + glCopyTexImage1D + copy pixels into a 1D texture image + + C Specification + + + void glCopyTexImage1D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + x + y + + + Specify the window coordinates of the left corner + of the row of pixels to be copied. + + + + + width + + + Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + The height of the texture image is 1. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + + Description + + glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. + + + The screen-aligned pixel row with left corner at + + + + x + y + + + and with a length of + + + + width + + + + 2 + + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. + + + The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + Pixel ordering is such that lower + x + screen coordinates correspond to + lower texture coordinates. + + + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. + + + When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. + + + Notes + + 1, 2, 3, and 4 are not accepted values for internalformat. + + + An image with 0 width indicates a NULL texture. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable values. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalformat is not an allowable value. + + + GL_INVALID_VALUE is generated if width is less than 0 or greater than + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer value of n. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCopyTexImage2D.xml b/upstream-man-pages/man3/glCopyTexImage2D.xml new file mode 100644 index 0000000..17b5e00 --- /dev/null +++ b/upstream-man-pages/man3/glCopyTexImage2D.xml @@ -0,0 +1,360 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexImage2D + 3G + + + glCopyTexImage2D + copy pixels into a 2D texture image + + C Specification + + + void glCopyTexImage2D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + + + + + height + + + Specifies the height of the texture image. + Must be 0 or + + + + 2 + m + + + + + 2 + + + border + + + + + for some integer + m. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + + Description + + glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image + with pixels from the current + GL_READ_BUFFER. + + + The screen-aligned pixel rectangle with lower left corner at (x, + y) and with a width of + + + + width + + + + 2 + + + border + + + + + and a height of + + + + height + + + + 2 + + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. + + + The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + Pixel ordering is such that lower + x + and + y + screen coordinates correspond to + lower + s + and + t + texture coordinates. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. + + + Notes + + 1, 2, 3, and 4 are not accepted values for internalformat. + + + An image with height or width of 0 indicates a NULL texture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or depth cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some integer + k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_VALUE is generated if internalformat is not an + accepted format. + + + GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCopyTexSubImage1D.xml b/upstream-man-pages/man3/glCopyTexSubImage1D.xml new file mode 100644 index 0000000..18671d6 --- /dev/null +++ b/upstream-man-pages/man3/glCopyTexSubImage1D.xml @@ -0,0 +1,249 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage1D + 3G + + + glCopyTexSubImage1D + copy a one-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies the texel offset within the texture array. + + + + + x + y + + + Specify the window coordinates of the left corner + of the row of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + + Description + + glCopyTexSubImage1D replaces a portion of a one-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage1D). + + + The screen-aligned pixel row with left corner at (x,\ y), and with + length width replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive. The destination in the texture array may not + include any texels outside the texture array as it was + originally specified. + + + The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + It is not an error to specify a subtexture with zero width, but + such a specification has no effect. + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + The glPixelStore mode affects texture images. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_1D. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D or glCopyTexImage1D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. + + + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glReadBuffer, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCopyTexSubImage2D.xml b/upstream-man-pages/man3/glCopyTexSubImage2D.xml new file mode 100644 index 0000000..332b0e2 --- /dev/null +++ b/upstream-man-pages/man3/glCopyTexSubImage2D.xml @@ -0,0 +1,336 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage2D + 3G + + + glCopyTexSubImage2D + copy a two-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + + Description + + glCopyTexSubImage2D replaces a rectangular portion of a two-dimensional texture image or + cube-map texture image with pixels from the current GL_READ_BUFFER + (rather than from main memory, as is the case for glTexSubImage2D). + + + The screen-aligned pixel rectangle with lower left corner at + + + + x + y + + + and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at the mipmap level specified by level. + + + The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + height, or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glPixelStore modes affect texture images. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_OPERATION is generated if the texture array has not been + defined by a previous glTexImage2D or glCopyTexImage2D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + and + h + include twice the border width. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage3D, + glPixelStore, + glReadBuffer, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCopyTexSubImage3D.xml b/upstream-man-pages/man3/glCopyTexSubImage3D.xml new file mode 100644 index 0000000..08a7a04 --- /dev/null +++ b/upstream-man-pages/man3/glCopyTexSubImage3D.xml @@ -0,0 +1,361 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage3D + 3G + + + glCopyTexSubImage3D + copy a three-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + zoffset + + + Specifies a texel offset in the z direction within the texture array. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + + Description + + glCopyTexSubImage3D replaces a rectangular portion of a three-dimensional + or two-dimensional array texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage3D). + + + The screen-aligned pixel rectangle with lower left corner at + (x, y) and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at z index zoffset and at the mipmap level specified by level. + + + The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + height, depth, or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glPixelStore modes affect texture images. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where + is the returned value of GL_MAX_3D_TEXTURE_SIZE if target + is GL_TEXTURE_3D or the returned value of GL_MAX_ARRAY_TEXTURE_LAYERS + if target is GL_TEXTURE_2D_ARRAY. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + 1 + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glReadBuffer, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glCreateProgram.xml b/upstream-man-pages/man3/glCreateProgram.xml new file mode 100644 index 0000000..43477a4 --- /dev/null +++ b/upstream-man-pages/man3/glCreateProgram.xml @@ -0,0 +1,118 @@ + + + + + glCreateProgram + 3G + + + glCreateProgram + Creates a program object + + C Specification + + + GLuint glCreateProgram + void + + + + Description + glCreateProgram creates an empty + program object and returns a non-zero value by which it can be + referenced. A program object is an object to which shader + objects can be attached. This provides a mechanism to specify + the shader objects that will be linked to create a program. It + also provides a means for checking the compatibility of the + shaders that will be used to create a program (for instance, + checking the compatibility between a vertex shader and a + fragment shader). When no longer needed as part of a program + object, shader objects can be detached. + + One or more executables are created in a program object by + successfully attaching shader objects to it with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + These executables are made part of current state when + glUseProgram + is called. Program objects can be deleted by calling + glDeleteProgram. + The memory associated with the program object will be deleted + when it is no longer part of current rendering state for any + context. + + Notes + Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + Errors + This function returns 0 if an error occurs creating the program object. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with a valid program object and the index of an active attribute + variable + + glGetActiveUniform + with a valid program object and the index of an active uniform + variable + + glGetAttachedShaders + with a valid program object + + glGetAttribLocation + with a valid program object and the name of an attribute + variable + + glGetProgram + with a valid program object and the parameter to be queried + + glGetProgramInfoLog + with a valid program object + + glGetUniform + with a valid program object and the location of a uniform + variable + + glGetUniformLocation + with a valid program object and the name of a uniform + variable + + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCreateShader, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glCreateShader.xml b/upstream-man-pages/man3/glCreateShader.xml new file mode 100644 index 0000000..c5d1ecc --- /dev/null +++ b/upstream-man-pages/man3/glCreateShader.xml @@ -0,0 +1,102 @@ + + + + + glCreateShader + 3G + + + glCreateShader + Creates a shader object + + C Specification + + + GLuint glCreateShader + GLenum shaderType + + + + Parameters + + + shaderType + + Specifies the type of shader to be created. + Must be one of GL_VERTEX_SHADER, + GL_GEOMETRY_SHADER + or GL_FRAGMENT_SHADER. + + + + + Description + glCreateShader creates an empty + shader object and returns a non-zero value by which it can be + referenced. A shader object is used to maintain the source code + strings that define a shader. shaderType + indicates the type of shader to be created. Three types of shaders + are supported. A shader of type + GL_VERTEX_SHADER is a shader that is + intended to run on the programmable vertex processor. A shader of type + GL_GEOMETRY_SHADER is a shader that is intended to + run on the programmable geometry processor. A shader of + type GL_FRAGMENT_SHADER is a shader that is + intended to run on the programmable fragment processor. + + When created, a shader object's + GL_SHADER_TYPE parameter is set to either + GL_VERTEX_SHADER, GL_GEOMETRY_SHADER + or GL_FRAGMENT_SHADER, depending on the value + of shaderType. + + Notes + Like buffer and texture objects, the name space for + shader objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + Errors + This function returns 0 if an error occurs creating the + shader object. + + GL_INVALID_ENUM is generated if + shaderType is not an accepted value. + + + Associated Gets + glGetShader + with a valid shader object and the parameter to be queried + + glGetShaderInfoLog + with a valid shader object + + glGetShaderSource + with a valid shader object + + glIsShader + + See Also + glAttachShader, + glCompileShader, + glDeleteShader, + glDetachShader, + glShaderSource + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glCullFace.xml b/upstream-man-pages/man3/glCullFace.xml new file mode 100644 index 0000000..40b71f5 --- /dev/null +++ b/upstream-man-pages/man3/glCullFace.xml @@ -0,0 +1,94 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCullFace + 3G + + + glCullFace + specify whether front- or back-facing facets can be culled + + C Specification + + + void glCullFace + GLenum mode + + + + Parameters + + + mode + + + Specifies whether front- or back-facing facets are candidates for culling. + Symbolic constants + GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. + The initial value is GL_BACK. + + + + + + Description + + glCullFace specifies whether front- or back-facing facets are culled + (as specified by mode) when facet culling is enabled. Facet + culling is initially disabled. + To enable and disable facet culling, call the + glEnable and glDisable commands + with the argument GL_CULL_FACE. + Facets include triangles, + quadrilaterals, + polygons, and + rectangles. + + + glFrontFace specifies which of the clockwise and counterclockwise facets + are front-facing and back-facing. + See glFrontFace. + + + Notes + + If mode is GL_FRONT_AND_BACK, no facets are drawn, but other + primitives such as points and lines are drawn. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + Associated Gets + + glIsEnabled with argument GL_CULL_FACE + + + glGet with argument GL_CULL_FACE_MODE + + + See Also + + glEnable, + glFrontFace + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDeleteBuffers.xml b/upstream-man-pages/man3/glDeleteBuffers.xml new file mode 100644 index 0000000..1a5a12b --- /dev/null +++ b/upstream-man-pages/man3/glDeleteBuffers.xml @@ -0,0 +1,86 @@ + + + + + + + 2005 + Sams Publishing + + + glDeleteBuffers + 3G + + + glDeleteBuffers + delete named buffer objects + + C Specification + + + void glDeleteBuffers + GLsizei n + const GLuint * buffers + + + + Parameters + + + n + + + Specifies the number of buffer objects to be deleted. + + + + + buffers + + + Specifies an array of buffer objects to be deleted. + + + + + + Description + + glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. + After a buffer object is deleted, it has no contents, + and its name is free for reuse (for example by glGenBuffers). + If a buffer object that is currently bound is deleted, the binding reverts + to 0 (the absence of any buffer object). + + + glDeleteBuffers silently ignores 0's and names that do not correspond to + existing buffer objects. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsBuffer + + + See Also + + glBindBuffer, + glGenBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteFramebuffers.xml b/upstream-man-pages/man3/glDeleteFramebuffers.xml new file mode 100644 index 0000000..3da367d --- /dev/null +++ b/upstream-man-pages/man3/glDeleteFramebuffers.xml @@ -0,0 +1,79 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteFramebuffers + 3G + + + glDeleteFramebuffers + delete framebuffer objects + + C Specification + + + void glDeleteFramebuffers + GLsizei n + GLuint *framebuffers + + + + + Parameters + + + n + + + Specifies the number of framebuffer objects to be deleted. + + + + + framebuffers + + + A pointer to an array containing n framebuffer objects to be deleted. + + + + + + Description + + glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in + the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again + unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER + or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer + had been executed with the corresponding target and framebuffer zero. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glCheckFramebufferStatus + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteProgram.xml b/upstream-man-pages/man3/glDeleteProgram.xml new file mode 100644 index 0000000..b67cbe1 --- /dev/null +++ b/upstream-man-pages/man3/glDeleteProgram.xml @@ -0,0 +1,86 @@ + + + + + glDeleteProgram + 3G + + + glDeleteProgram + Deletes a program object + + C Specification + + + void glDeleteProgram + GLuint program + + + + Parameters + + + program + + Specifies the program object to be + deleted. + + + + + Description + glDeleteProgram frees the memory and + invalidates the name associated with the program object + specified by program. This command + effectively undoes the effects of a call to + glCreateProgram. + + If a program object is in use as part of current rendering + state, it will be flagged for deletion, but it will not be + deleted until it is no longer part of current state for any + rendering context. If a program object to be deleted has shader + objects attached to it, those shader objects will be + automatically detached but not deleted unless they have already + been flagged for deletion by a previous call to + glDeleteShader. + A value of 0 for program will be silently + ignored. + + To determine whether a program object has been flagged for + deletion, call + glGetProgram + with arguments program and + GL_DELETE_STATUS. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + + Associated Gets + glGet + with argument GL_CURRENT_PROGRAM + + glGetProgram + with arguments program and + GL_DELETE_STATUS + + glIsProgram + + See Also + glCreateShader, + glDetachShader, + glUseProgram + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteQueries.xml b/upstream-man-pages/man3/glDeleteQueries.xml new file mode 100644 index 0000000..c3f3519 --- /dev/null +++ b/upstream-man-pages/man3/glDeleteQueries.xml @@ -0,0 +1,86 @@ + + + + + + + 2005 + Sams Publishing + + + glDeleteQueries + 3G + + + glDeleteQueries + delete named query objects + + C Specification + + + void glDeleteQueries + GLsizei n + const GLuint * ids + + + + Parameters + + + n + + + Specifies the number of query objects to be deleted. + + + + + ids + + + Specifies an array of query objects to be deleted. + + + + + + Description + + glDeleteQueries deletes n query objects named by the elements of the array ids. + After a query object is deleted, it has no contents, + and its name is free for reuse (for example by glGenQueries). + + + glDeleteQueries silently ignores 0's and names that do not correspond to + existing query objects. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsQuery + + + See Also + + glBeginQuery, + glEndQuery, + glGenQueries, + glGetQueryiv, + glGetQueryObject + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteRenderbuffers.xml b/upstream-man-pages/man3/glDeleteRenderbuffers.xml new file mode 100644 index 0000000..1faf4f9 --- /dev/null +++ b/upstream-man-pages/man3/glDeleteRenderbuffers.xml @@ -0,0 +1,87 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteRenderbuffers + 3G + + + glDeleteRenderbuffers + delete renderbuffer objects + + C Specification + + + void glDeleteRenderbuffers + GLsizei n + GLuint *renderbuffers + + + + + Parameters + + + n + + + Specifies the number of renderbuffer objects to be deleted. + + + + + renderbuffers + + + A pointer to an array containing n renderbuffer objects to be deleted. + + + + + + Description + + glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in + the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again + unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER + is deleted, it is as though glBindRenderbuffer + had been executed with a target of GL_RENDERBUFFER and a name of zero. + + + If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if + glFramebufferRenderbuffer had been called, with a renderbuffer + of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, + this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer + image is specifically not detached from any non-bound framebuffers. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glGenRenderbuffers, + glFramebufferRenderbuffer, + glRenderbufferStorage, + glRenderbufferStorageMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteSamplers.xml b/upstream-man-pages/man3/glDeleteSamplers.xml new file mode 100644 index 0000000..c901bbe --- /dev/null +++ b/upstream-man-pages/man3/glDeleteSamplers.xml @@ -0,0 +1,87 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteSamplers + 3G + + + glDeleteSamplers + delete named sampler objects + + C Specification + + + void glDeleteSamplers + GLsizei n + const GLuint * samplers + + + + Parameters + + + n + + + Specifies the number of sampler objects to be deleted. + + + + + samplers + + + Specifies an array of sampler objects to be deleted. + + + + + + Description + + glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. + After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as + though glBindSampler is called with unit set to the unit the sampler is bound to and + sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. + + + Notes + + glDeleteSamplers is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsSampler + + + See Also + + glGenSamplers, + glBindSampler, + glDeleteSamplers, + glIsSampler + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteShader.xml b/upstream-man-pages/man3/glDeleteShader.xml new file mode 100644 index 0000000..dae7c42 --- /dev/null +++ b/upstream-man-pages/man3/glDeleteShader.xml @@ -0,0 +1,82 @@ + + + + + glDeleteShader + 3G + + + glDeleteShader + Deletes a shader object + + C Specification + + + void glDeleteShader + GLuint shader + + + + Parameters + + + shader + + Specifies the shader object to be deleted. + + + + + Description + glDeleteShader frees the memory and + invalidates the name associated with the shader object specified + by shader. This command effectively + undoes the effects of a call to + glCreateShader. + + If a shader object to be deleted is attached to a program + object, it will be flagged for deletion, but it will not be + deleted until it is no longer attached to any program object, + for any rendering context (i.e., it must be detached from + wherever it was attached before it will be deleted). A value of + 0 for shader will be silently + ignored. + + To determine whether an object has been flagged for + deletion, call + glGetShader + with arguments shader and + GL_DELETE_STATUS. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + + Associated Gets + glGetAttachedShaders + with the program object to be queried + + glGetShader + with arguments shader and + GL_DELETE_STATUS + + glIsShader + + See Also + glCreateProgram, + glCreateShader, + glDetachShader, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteSync.xml b/upstream-man-pages/man3/glDeleteSync.xml new file mode 100644 index 0000000..509f9e2 --- /dev/null +++ b/upstream-man-pages/man3/glDeleteSync.xml @@ -0,0 +1,81 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteSync + 3G + + + glDeleteSync + delete a sync object + + C Specification + + + void glDeleteSync + GLsync sync + + + + + Parameters + + + sync + + + The sync object to be deleted. + + + + + + Description + + glDeleteSync deletes the sync object specified by sync. If the fence command + corresponding to the specified sync object has completed, or if no glWaitSync + or glClientWaitSync commands are blocking on sync, + the object is deleted immediately. Otherwise, sync is flagged for deletion and will be deleted when + it is no longer associated with any fence command and is no longer blocking any glWaitSync + or glClientWaitSync command. In either case, after + glDeleteSync returns, the name sync is invalid and can no longer be used to + refer to the sync object. + + + glDeleteSync will silently ignore a sync value of zero. + + + Notes + + glSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. + + + Errors + + GL_INVALID_VALUE is generated if sync is neither zero or the name of a sync object. + + + See Also + + glFenceSync, + glWaitSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDeleteTextures.xml b/upstream-man-pages/man3/glDeleteTextures.xml new file mode 100644 index 0000000..3448f2d --- /dev/null +++ b/upstream-man-pages/man3/glDeleteTextures.xml @@ -0,0 +1,92 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDeleteTextures + 3G + + + glDeleteTextures + delete named textures + + C Specification + + + void glDeleteTextures + GLsizei n + const GLuint * textures + + + + Parameters + + + n + + + Specifies the number of textures to be deleted. + + + + + textures + + + Specifies an array of textures to be deleted. + + + + + + Description + + glDeleteTextures deletes n textures named by the elements of the array textures. + After a texture is deleted, it has no contents or dimensionality, + and its name is free for reuse (for example by glGenTextures). + If a texture that is currently bound is deleted, the binding reverts + to 0 (the default texture). + + + glDeleteTextures silently ignores 0's and names that do not correspond to + existing textures. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsTexture + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glGenTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDeleteVertexArrays.xml b/upstream-man-pages/man3/glDeleteVertexArrays.xml new file mode 100644 index 0000000..f7bbdd6 --- /dev/null +++ b/upstream-man-pages/man3/glDeleteVertexArrays.xml @@ -0,0 +1,77 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteVertexArrays + 3G + + + glDeleteVertexArrays + delete vertex array objects + + C Specification + + + void glDeleteVertexArrays + GLsizei n + const GLuint *arrays + + + + + Parameters + + + n + + + Specifies the number of vertex array objects to be deleted. + + + + + arrays + + + Specifies the address of an array containing the n names of the objects to be deleted. + + + + + + Description + + glDeleteVertexArrays deletes n vertex array objects whose names are stored in the + array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is + again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero + and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glGenVertexArrays, + glIsVertexArray, + glBindVertexArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDepthFunc.xml b/upstream-man-pages/man3/glDepthFunc.xml new file mode 100644 index 0000000..51900ad --- /dev/null +++ b/upstream-man-pages/man3/glDepthFunc.xml @@ -0,0 +1,170 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthFunc + 3G + + + glDepthFunc + specify the value used for depth buffer comparisons + + C Specification + + + void glDepthFunc + GLenum func + + + + Parameters + + + func + + + Specifies the depth comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. + The initial value is GL_LESS. + + + + + + Description + + glDepthFunc specifies the function used to compare each incoming pixel depth value + with the depth value present in the depth buffer. + The comparison is performed only if depth testing is enabled. + (See glEnable and glDisable of GL_DEPTH_TEST.) + + + func specifies the conditions under which the pixel will be drawn. + The comparison functions are as follows: + + + + GL_NEVER + + + Never passes. + + + + + GL_LESS + + + Passes if the incoming depth value is less than the stored depth value. + + + + + GL_EQUAL + + + Passes if the incoming depth value is equal to the stored depth value. + + + + + GL_LEQUAL + + + Passes if the incoming depth value is less than or equal to + the stored depth value. + + + + + GL_GREATER + + + Passes if the incoming depth value is greater than the stored depth value. + + + + + GL_NOTEQUAL + + + Passes if the incoming depth value is not equal to the stored depth value. + + + + + GL_GEQUAL + + + Passes if the incoming depth value is greater than or equal to + the stored depth value. + + + + + GL_ALWAYS + + + Always passes. + + + + + + The initial value of func is GL_LESS. + Initially, depth testing is disabled. If depth testing is disabled or if no + depth buffer exists, it is as if the depth test always passes. + + + Notes + + Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS. + + + Errors + + GL_INVALID_ENUM is generated if func is not an accepted value. + + + Associated Gets + + glGet with argument GL_DEPTH_FUNC + + + glIsEnabled with argument GL_DEPTH_TEST + + + See Also + + glDepthRange, + glEnable, + glPolygonOffset + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDepthMask.xml b/upstream-man-pages/man3/glDepthMask.xml new file mode 100644 index 0000000..3cccaf1 --- /dev/null +++ b/upstream-man-pages/man3/glDepthMask.xml @@ -0,0 +1,84 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthMask + 3G + + + glDepthMask + enable or disable writing into the depth buffer + + C Specification + + + void glDepthMask + GLboolean flag + + + + Parameters + + + flag + + + Specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. + + + + + + Description + + glDepthMask specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. + + + Associated Gets + + glGet with argument GL_DEPTH_WRITEMASK + + + Notes + + Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS (see glDepthFunc). + + + See Also + + glColorMask, + glDepthFunc, + glDepthRange, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. + Copyright 2012 + Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDepthRange.xml b/upstream-man-pages/man3/glDepthRange.xml new file mode 100644 index 0000000..51b82ce --- /dev/null +++ b/upstream-man-pages/man3/glDepthRange.xml @@ -0,0 +1,121 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthRange + 3G + + + glDepthRange + specify mapping of depth values from normalized device coordinates to window coordinates + + C Specification + + + void glDepthRange + GLclampd nearVal + GLclampd farVal + + + + + Parameters + + + nearVal + + + Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. + + + + + farVal + + + Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. + + + + + + Description + + After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + glDepthRange specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + Thus, + the values accepted by glDepthRange are both clamped to this range + before they are accepted. + + + The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. + + + Notes + + It is not necessary that nearVal be less than farVal. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. + + + Associated Gets + + glGet with argument GL_DEPTH_RANGE + + + See Also + + glDepthFunc, + glPolygonOffset, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDetachShader.xml b/upstream-man-pages/man3/glDetachShader.xml new file mode 100644 index 0000000..7fe22f7 --- /dev/null +++ b/upstream-man-pages/man3/glDetachShader.xml @@ -0,0 +1,92 @@ + + + + + glDetachShader + 3G + + + glDetachShader + Detaches a shader object from a program object to which it is attached + + C Specification + + + void glDetachShader + GLuint program + GLuint shader + + + + Parameters + + + program + + Specifies the program object from which to + detach the shader object. + + + + shader + + Specifies the shader object to be + detached. + + + + + Description + glDetachShader detaches the shader + object specified by shader from the + program object specified by program. This + command can be used to undo the effect of the command + glAttachShader. + + If shader has already been flagged + for deletion by a call to + glDeleteShader + and it is not attached to any other program object, it will be + deleted after it has been detached. + + Errors + GL_INVALID_VALUE is generated if either + program or shader + is a value that was not generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + shader is not attached to + program. + + + Associated Gets + glGetAttachedShaders + with the handle of a valid program object + + glGetShader + with arguments shader and + GL_DELETE_STATUS + + glIsProgram + + glIsShader + + See Also + glAttachShader + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDrawArrays.xml b/upstream-man-pages/man3/glDrawArrays.xml new file mode 100644 index 0000000..e469b37 --- /dev/null +++ b/upstream-man-pages/man3/glDrawArrays.xml @@ -0,0 +1,134 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawArrays + 3G + + + glDrawArrays + render primitives from array data + + C Specification + + + void glDrawArrays + GLenum mode + GLint first + GLsizei count + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + first + + + Specifies the starting index in the enabled arrays. + + + + + count + + + Specifies the number of indices to be rendered. + + + + + + Description + + glDrawArrays specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glDrawArrays. + + + When glDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed and how the array elements + construct those primitives. + + + Vertex attributes that are modified by glDrawArrays have an + unspecified value after glDrawArrays returns. Attributes that aren't + modified remain well defined. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + See Also + + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDrawArraysInstanced.xml b/upstream-man-pages/man3/glDrawArraysInstanced.xml new file mode 100644 index 0000000..e76aa11 --- /dev/null +++ b/upstream-man-pages/man3/glDrawArraysInstanced.xml @@ -0,0 +1,134 @@ + + + + + + + 2010 + Khronos Group + + + glDrawArraysInstanced + 3G + + + glDrawArraysInstanced + draw multiple instances of a range of elements + + C Specification + + + void glDrawArraysInstanced + GLenum mode + GLint first + GLsizei count + GLsizei primcount + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. Symbolic constants GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY andGL_TRIANGLE_STRIP_ADJACENCY + are accepted. + + + + + first + + + Specifies the starting index in the enabled arrays. + + + + + count + + + Specifies the number of indices to be rendered. + + + + + primcount + + + Specifies the number of instances of the specified range of indices to be rendered. + + + + + + Description + + glDrawArraysInstanced behaves identically to glDrawArrays + except that primcount instances of the range of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. + + + glDrawArraysInstanced has the same effect as: + + + + Notes + + glDrawArraysInstanced is available only if the GL version is 3.1 or greater. + + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of + the accepted values. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_VALUE is generated if count or primcount are negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawElementsInstanced + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDrawBuffer.xml b/upstream-man-pages/man3/glDrawBuffer.xml new file mode 100644 index 0000000..035c90d --- /dev/null +++ b/upstream-man-pages/man3/glDrawBuffer.xml @@ -0,0 +1,212 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawBuffer + 3G + + + glDrawBuffer + specify which color buffers are to be drawn into + + C Specification + + + void glDrawBuffer + GLenum mode + + + + + Parameters + + + mode + + + Specifies up to four color buffers to be drawn into. + Symbolic constants + GL_NONE, + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK + are accepted. + The initial value is GL_FRONT for single-buffered contexts, + and GL_BACK for double-buffered contexts. + + + + + + Description + + When colors are written to the frame buffer, + they are written into the color buffers specified by glDrawBuffer. + The specifications are as follows: + + + + GL_NONE + + + No color buffers are written. + + + + + GL_FRONT_LEFT + + + Only the front left color buffer is written. + + + + + GL_FRONT_RIGHT + + + Only the front right color buffer is written. + + + + + GL_BACK_LEFT + + + Only the back left color buffer is written. + + + + + GL_BACK_RIGHT + + + Only the back right color buffer is written. + + + + + GL_FRONT + + + Only the front left and front right color buffers are written. + If there is no front right color buffer, + only the front left color buffer is written. + + + + + GL_BACK + + + Only the back left and back right color buffers are written. + If there is no back right color buffer, + only the back left color buffer is written. + + + + + GL_LEFT + + + Only the front left and back left color buffers are written. + If there is no back left color buffer, + only the front left color buffer is written. + + + + + GL_RIGHT + + + Only the front right and back right color buffers are written. + If there is no back right color buffer, + only the front right color buffer is written. + + + + + GL_FRONT_AND_BACK + + + All the front and back color buffers + (front left, front right, back left, back right) + are written. + If there are no back color buffers, + only the front left and front right color buffers are written. + If there are no right color buffers, + only the front left and back left color buffers are written. + If there are no right or back color buffers, + only the front left color buffer is written. + + + + + + If more than one color buffer is selected for drawing, + then blending or logical operations are computed and applied independently + for each color buffer and can produce different results in each buffer. + + + Monoscopic contexts include only + left + buffers, and stereoscopic contexts include both + left + and + right + buffers. + Likewise, single-buffered contexts include only + front + buffers, and double-buffered contexts include both + front + and + back + buffers. + The context is selected at GL initialization. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if none of the buffers indicated + by mode exists. + + + Associated Gets + + glGet with argument GL_DRAW_BUFFER + + + See Also + + glBlendFunc, + glColorMask, + glDrawBuffers, + glLogicOp, + glReadBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDrawBuffers.xml b/upstream-man-pages/man3/glDrawBuffers.xml new file mode 100644 index 0000000..f54a5d1 --- /dev/null +++ b/upstream-man-pages/man3/glDrawBuffers.xml @@ -0,0 +1,184 @@ + + + + + glDrawBuffers + 3G + + + glDrawBuffers + Specifies a list of color buffers to be drawn into + + C Specification + + + void glDrawBuffers + GLsizei n + const GLenum *bufs + + + + Parameters + + + n + + Specifies the number of buffers in + bufs. + + + + bufs + + Points to an array of symbolic constants + specifying the buffers into which fragment colors or + data values will be written. + + + + + Description + glDrawBuffers defines an array of + buffers into which outputs from the fragment shader data will + be written. If a fragment shader writes a value + to one or more user defined output + variables, then the value of each variable will be written into the + buffer specified at a location within bufs + corresponding to the location assigned to that user defined output. + The draw buffer used for user defined outputs assigned to locations + greater than or equal to n is implicitly set + to GL_NONE and any data written to such an output + is discarded. + + The symbolic constants contained in + bufs may be any of the following: + + + + GL_NONE + + The fragment shader output value is not written into + any color buffer. + + + + GL_FRONT_LEFT + + The fragment shader output value is written into the + front left color buffer. + + + + GL_FRONT_RIGHT + + The fragment shader output value is written into the + front right color buffer. + + + + GL_BACK_LEFT + + The fragment shader output value is written into the + back left color buffer. + + + + GL_BACK_RIGHT + + The fragment shader output value is written into the + back right color buffer. + + + + GL_COLOR_ATTACHMENTn + + The fragment shader output value is written into the + nth color attachment of the current framebuffer. + n may range from 0 to the value of + GL_MAX_COLOR_ATTACHMENTS. + + + + + Except for GL_NONE, the preceding + symbolic constants may not appear more than once in + bufs. The maximum number of draw buffers + supported is implementation dependent and can be queried by + calling + glGet + with the argument GL_MAX_DRAW_BUFFERS. + + Notes + + The symbolic constants GL_FRONT, + GL_BACK, GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK are not allowed in the + bufs array since they may refer to + multiple buffers. + + If a fragment shader does not write to a user defined output variable, + the values of the fragment + colors following shader execution are undefined. For each + fragment generated in this situation, a different value may be + written into each of the buffers specified by + bufs. + + Errors + GL_INVALID_ENUM is generated if one of the + values in bufs is not an accepted + value. + + GL_INVALID_ENUM is generated if the GL is bound + to the default framebuffer and one or more of the values in + bufs is one of the GL_COLOR_ATTACHMENTn + tokens. + + GL_INVALID_ENUM is generated if the GL is bound + to a framebuffer object and one or more of the values in bufs + is anything other than GL_NONE or one of the + GL_COLOR_ATTACHMENTSn tokens. + + GL_INVALID_ENUM is generated if + n is less than 0. + + GL_INVALID_OPERATION is generated if a + symbolic constant other than GL_NONE + appears more than once in bufs. + + GL_INVALID_OPERATION is generated if any of + the entries in bufs (other than + GL_NONE ) indicates a color buffer that + does not exist in the current GL context. + + GL_INVALID_VALUE is generated if + n is greater than + GL_MAX_DRAW_BUFFERS. + + + Associated Gets + glGet + with argument GL_MAX_DRAW_BUFFERS + + glGet + with argument GL_DRAW_BUFFERi where + i indicates the number of the draw buffer + whose value is to be queried + + See Also + glBlendFunc, + glColorMask, + glDrawBuffers, + glLogicOp, + glReadBuffer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDrawElements.xml b/upstream-man-pages/man3/glDrawElements.xml new file mode 100644 index 0000000..6faa4d8 --- /dev/null +++ b/upstream-man-pages/man3/glDrawElements.xml @@ -0,0 +1,146 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawElements + 3G + + + glDrawElements + render primitives from array data + + C Specification + + + void glDrawElements + GLenum mode + GLsizei count + GLenum type + const GLvoid * indices + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + + Description + + glDrawElements specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL function + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to + construct a sequence of primitives with a single + call to glDrawElements. + + + When glDrawElements is called, it uses count sequential elements from an + enabled array, starting at indices to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed and how the array elements construct these primitives. If + more than one array is enabled, each is used. + + + Vertex attributes that are modified by glDrawElements have an + unspecified value after glDrawElements returns. Attributes that aren't + modified maintain their previous values. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawElementsInstanced, + glDrawElementsBaseVertex, + glDrawRangeElements + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDrawElementsBaseVertex.xml b/upstream-man-pages/man3/glDrawElementsBaseVertex.xml new file mode 100644 index 0000000..f0a6d79 --- /dev/null +++ b/upstream-man-pages/man3/glDrawElementsBaseVertex.xml @@ -0,0 +1,129 @@ + + + + + + + 2010 + Khronos Group + + + glDrawElementsBaseVertex + 3G + + + glDrawElementsBaseVertex + render primitives from array data with a per-element offset + + C Specification + + + void glDrawElementsBaseVertex + GLenum mode + GLsizei count + GLenum type + GLvoid *indices + GLint basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + and GL_TRIANGLES are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + + Description + + glDrawElementsBaseVertex behaves identically to + glDrawElements except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. + + + Notes + glDrawElementsBaseVertex is only supported if the GL version is 3.2 or greater, or if + the ARB_draw_elements_base_vertex extension is supported. + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDrawElementsInstanced.xml b/upstream-man-pages/man3/glDrawElementsInstanced.xml new file mode 100644 index 0000000..1908d4b --- /dev/null +++ b/upstream-man-pages/man3/glDrawElementsInstanced.xml @@ -0,0 +1,153 @@ + + + + + + + 2010 + Khronos Group + + + glDrawElementsInstanced + 3G + + + glDrawElementsInstanced + draw multiple instances of a set of elements + + C Specification + + + void glDrawElementsInstanced + GLenum mode + GLsizei count + GLenum type + const void * indices + GLsizei primcount + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the number of instances of the specified range of indices to be rendered. + + + + + + Description + + glDrawElementsInstanced behaves identically to glDrawElements + except that primcount instances of the set of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. + + + glDrawElementsInstanced has the same effect as: + + + + Notes + + glDrawElementsInstanced is available only if the GL version is 3.1 or greater. + + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES. + + + GL_INVALID_VALUE is generated if count or primcount are negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawArraysInstanced + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDrawElementsInstancedBaseVertex.xml b/upstream-man-pages/man3/glDrawElementsInstancedBaseVertex.xml new file mode 100644 index 0000000..3abc4a2 --- /dev/null +++ b/upstream-man-pages/man3/glDrawElementsInstancedBaseVertex.xml @@ -0,0 +1,137 @@ + + + + + + + 2010 + Khronos Group + + + glDrawElementsInstancedBaseVertex + 3G + + + glDrawElementsInstancedBaseVertex + render multiple instances of a set of primitives from array data with a per-element offset + + C Specification + + + void glDrawElementsInstancedBaseVertex + GLenum mode + GLsizei count + GLenum type + GLvoid *indices + GLsizei primcount + GLint basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + and GL_TRIANGLES are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the number of instances of the indexed geometry that should be drawn. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + + Description + + glDrawElementsInstancedBaseVertex behaves identically to + glDrawElementsInstanced except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. + + + Notes + glDrawElementsInstancedBaseVertex is only supported if the GL version is 3.2 or greater. + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count or primcount is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glDrawRangeElements.xml b/upstream-man-pages/man3/glDrawRangeElements.xml new file mode 100644 index 0000000..a4bb870 --- /dev/null +++ b/upstream-man-pages/man3/glDrawRangeElements.xml @@ -0,0 +1,222 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawRangeElements + 3G + + + glDrawRangeElements + render primitives from array data + + C Specification + + + void glDrawRangeElements + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const GLvoid * indices + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + start + + + Specifies the minimum array index contained in indices. + + + + + end + + + Specifies the maximum array index contained in indices. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + + Description + + glDrawRangeElements is a restricted form of glDrawElements. mode, start, end, + and count match the corresponding arguments to glDrawElements, with + the additional constraint that all values in the arrays count must lie + between start and end, inclusive. + + + Implementations denote recommended maximum amounts of vertex and + index data, + which may be queried by calling glGet with argument + GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. + If + + + + end + - + start + + + 1 + + + is greater than the value of + GL_MAX_ELEMENTS_VERTICES, or if count is greater than the value of + GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced + performance. There is no requirement that all vertices in the range + + + + start + end + + + be referenced. However, the implementation may + partially process unused vertices, reducing performance from what could + be achieved with an optimal index set. + + + When glDrawRangeElements is called, it uses count sequential elements from an + enabled array, starting at start to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed, and how the array elements construct these primitives. If + more than one array is enabled, each is used. + + + Vertex attributes that are modified by glDrawRangeElements have an + unspecified value after glDrawRangeElements returns. Attributes that aren't + modified maintain their previous values. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + It is an error for indices to lie outside the range + + + + start + end + + , + but implementations may not check for this situation. Such indices + cause implementation-dependent behavior. + + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_VALUE is generated if + + + + end + < + start + + . + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + Associated Gets + + glGet with argument GL_MAX_ELEMENTS_VERTICES + + + glGet with argument GL_MAX_ELEMENTS_INDICES + + + See Also + + glDrawArrays, + glDrawElements, + glDrawElementsBaseVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glDrawRangeElementsBaseVertex.xml b/upstream-man-pages/man3/glDrawRangeElementsBaseVertex.xml new file mode 100644 index 0000000..d7715f3 --- /dev/null +++ b/upstream-man-pages/man3/glDrawRangeElementsBaseVertex.xml @@ -0,0 +1,154 @@ + + + + + + + 2010 + Khronos Group + + + glDrawRangeElementsBaseVertex + 3G + + + glDrawRangeElementsBaseVertex + render primitives from array data with a per-element offset + + C Specification + + + void glDrawRangeElementsBaseVertex + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + GLvoid *indices + GLint basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + and GL_TRIANGLES are accepted. + + + + + start + + + Specifies the minimum array index contained in indices. + + + + + end + + + Specifies the maximum array index contained in indices. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + + Description + + glDrawRangeElementsBaseVertex is a restricted form of + glDrawElementsBaseVertex. mode, + start, end, count and basevertex match + the corresponding arguments to glDrawElementsBaseVertex, with the additional + constraint that all values in the array indices must lie between start and end, + inclusive, prior to adding basevertex. Index values lying outside the range [start, end] + are treated in the same way as glDrawElementsBaseVertex. The ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled + array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to + 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. + + + Notes + glDrawRangeElementsBaseVertex is only supported if the GL version is 3.2 or greater, or if + the ARB_draw_elements_base_vertex extension is supported. + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_VALUE is generated if end < start. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawElementsBaseVertex, + glDrawRangeElements, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glEnable.xml b/upstream-man-pages/man3/glEnable.xml new file mode 100644 index 0000000..8273127 --- /dev/null +++ b/upstream-man-pages/man3/glEnable.xml @@ -0,0 +1,484 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEnable + 3G + + + glEnable + enable or disable server-side GL capabilities + + C Specification + + + void glEnable + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + C Specification + + + void glDisable + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + C Specification + + + void glEnablei + GLenum cap + GLuint index + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + index + + + Specifies the index of the swtich to enable. + + + + + + C Specification + + + void glDisablei + GLenum cap + GLuint index + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + index + + + Specifies the index of the swtich to disable. + + + + + + Description + + glEnable and glDisable enable and disable various capabilities. + Use glIsEnabled or glGet to determine the current setting + of any capability. The initial value for each capability with the + exception of GL_DITHER and GL_MULTISAMPLE is + GL_FALSE. The initial value for + GL_DITHER and GL_MULTISAMPLE is GL_TRUE. + + + Both glEnable and glDisable take a single argument, cap, + which can assume one of the following values: + + + Some of the GL's capabilities are indicated. glEnablei and glDisablei enable and disable + indexed capabilities. + + + + GL_BLEND + + + + + If enabled, + blend the computed fragment color values with the values in the color + buffers. See glBlendFunc. + + + + + GL_CLIP_DISTANCEi + + + + + If enabled, clip geometry against user-defined half space i. + + + + + GL_COLOR_LOGIC_OP + + + + + If enabled, + apply the currently selected logical operation to the computed fragment + color and color buffer values. See glLogicOp. + + + + + GL_CULL_FACE + + + + + If enabled, + cull polygons based on their winding in window coordinates. + See glCullFace. + + + + + GL_DEPTH_CLAMP + + + + + If enabled, + the + + + -wczcwc + + plane equation is ignored by view volume clipping (effectively, there is no near or + far plane clipping). + See glDepthRange. + + + + + GL_DEPTH_TEST + + + + + If enabled, + do depth comparisons and update the depth buffer. Note that even if + the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. See + glDepthFunc and + glDepthRange. + + + + + GL_DITHER + + + + + If enabled, + dither color components or indices before they are written to the + color buffer. + + + + + GL_FRAMEBUFFER_SRGB + + + + + If enabled + and the value of GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING for the + framebuffer attachment corresponding to the destination buffer is GL_SRGB, + the R, G, and B destination color values (after conversion from fixed-point to floating-point) + are considered to be encoded for the sRGB color space and hence are linearized prior to + their use in blending. + + + + + GL_LINE_SMOOTH + + + + + If enabled, + draw lines with correct filtering. + Otherwise, + draw aliased lines. + See glLineWidth. + + + + + GL_MULTISAMPLE + + + + + If enabled, + use multiple fragment samples in computing the final color of a pixel. + See glSampleCoverage. + + + + + GL_POLYGON_OFFSET_FILL + + + + + If enabled, and if the polygon is rendered in + GL_FILL mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_LINE + + + + + If enabled, and if the polygon is rendered in + GL_LINE mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_POINT + + + + + If enabled, an offset is added to depth values of a polygon's fragments + before the depth comparison is performed, if the polygon is rendered in + GL_POINT mode. See glPolygonOffset. + + + + + GL_POLYGON_SMOOTH + + + + + If enabled, draw polygons with proper filtering. + Otherwise, draw aliased polygons. For correct antialiased polygons, + an alpha buffer is needed and the polygons must be sorted front to + back. + + + + + GL_PRIMITIVE_RESTART + + + + + Enables primitive restarting. If enabled, any one of the draw commands + which transfers a set of generic attribute array elements to the GL will restart + the primitive when the index of the vertex is equal to the primitive restart index. + See glPrimitiveRestartIndex. + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE + + + + + If enabled, + compute a temporary coverage value where each bit is determined by the + alpha value at the corresponding sample location. The temporary coverage + value is then ANDed with the fragment coverage value. + + + + + GL_SAMPLE_ALPHA_TO_ONE + + + + + If enabled, + each sample alpha value is replaced by the maximum representable alpha value. + + + + + GL_SAMPLE_COVERAGE + + + + + If enabled, + the fragment's coverage is ANDed with the temporary coverage value. If + GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage + value. + See glSampleCoverage. + + + + + GL_SCISSOR_TEST + + + + + If enabled, + discard fragments that are outside the scissor rectangle. + See glScissor. + + + + + GL_STENCIL_TEST + + + + + If enabled, + do stencil testing and update the stencil buffer. + See glStencilFunc and glStencilOp. + + + + + GL_TEXTURE_CUBE_MAP_SEAMLESS + + + + + If enabled, modifies the way sampling is performed on cube map textures. See the spec for more information. + + + + + GL_PROGRAM_POINT_SIZE + + + + + If enabled + and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin + gl_PointSize and clamped to the implementation-dependent point size range. + + + + + + Errors + + GL_INVALID_ENUM is generated if cap is not one of the values + listed previously. + + + GL_INVALID_VALUE is generated by glEnablei and glDisablei + if index is greater than or equal to the number of indexed capabilities for cap. + + + Notes + + GL_PRIMITIVE_RESTART is available only if the GL version is 3.1 or greater. + + + GL_TEXTURE_CUBE_MAP_SEAMLESS is available only if the GL version is 3.2 or greater. + + + Any token accepted by glEnable or glDisable is also accepted by + glEnablei and glDisablei, but if the capability is not indexed, + the maximum value that index may take is zero. + + + In general, passing an indexed capability to glEnable or glDisable + will enable or disable that capability for all indices, resepectively. + + + Associated Gets + + glIsEnabled + + + glGet + + + See Also + + glActiveTexture, + glBlendFunc, + glCullFace, + glDepthFunc, + glDepthRange, + glGet, + glIsEnabled, + glLineWidth, + glLogicOp, + glPointSize, + glPolygonMode, + glPolygonOffset, + glSampleCoverage, + glScissor, + glStencilFunc, + glStencilOp, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glEnableVertexAttribArray.xml b/upstream-man-pages/man3/glEnableVertexAttribArray.xml new file mode 100644 index 0000000..be9dd57 --- /dev/null +++ b/upstream-man-pages/man3/glEnableVertexAttribArray.xml @@ -0,0 +1,94 @@ + + + + + glEnableVertexAttribArray + 3G + + + glEnableVertexAttribArray + glEnableVertexAttribArray + glDisableVertexAttribArray + Enable or disable a generic vertex attribute array + + C Specification + + + void glEnableVertexAttribArray + GLuint index + + + void glDisableVertexAttribArray + GLuint index + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be enabled or disabled. + + + + + Description + glEnableVertexAttribArray enables the + generic vertex attribute array specified by + index. + glDisableVertexAttribArray disables the + generic vertex attribute array specified by + index. By default, all client-side + capabilities are disabled, including all generic vertex + attribute arrays. If enabled, the values in the generic vertex + attribute array will be accessed and used for rendering when + calls are made to vertex array commands such as + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + or + glMultiDrawArrays. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttrib + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_ENABLED + + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + + glBindAttribLocation, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + glVertexAttrib, + glVertexAttribPointer + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glFenceSync.xml b/upstream-man-pages/man3/glFenceSync.xml new file mode 100644 index 0000000..098ea3b --- /dev/null +++ b/upstream-man-pages/man3/glFenceSync.xml @@ -0,0 +1,106 @@ + + + + + + + 2010 + Khronos Group + + + glFenceSync + 3G + + + glFenceSync + create a new sync object and insert it into the GL command stream + + C Specification + + + GLsync glFenceSync + GLenum condition + GLbitfield flags + + + + + Parameters + + + condition + + + Specifies the condition that must be met to set the sync object's state to signaled. condition + must be GL_SYNC_GPU_COMMANDS_COMPLETE. + + + + + flags + + + Specifies a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined + for this operation and flags must be zero. + flags is a placeholder for anticipated future extensions of fence sync object capabilities. + + + + + + + + Description + + glFenceSync creates a new fence sync object, inserts a fence command into the GL command stream and + associates it with that sync object, and returns a non-zero name corresponding to the sync object. + + + When the specified condition of the sync object is satisfied by the fence command, the sync object + is signaled by the GL, causing any glWaitSync, + glClientWaitSync commands blocking in sync + to unblock. No other state is affected by glFenceSync or by the execution + of the associated fence command. + + + condition must be GL_SYNC_GPU_COMMANDS_COMPLETE. This condition is satisfied by + completion of the fence command corresponding to the sync object and all preceding commands in the same command stream. + The sync object will not be signaled until all effects from these commands on GL client and server state and the + framebuffer are fully realized. Note that completion of the fence command occurs once the state of the corresponding sync + object has been changed, but commands waiting on that sync object may not be unblocked until after the fence command completes. + + + Notes + glFenceSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. + + Errors + + GL_INVALID_ENUM is generated if condition is not + GL_SYNC_GPU_COMMANDS_COMPLETE. + + + GL_INVALID_VALUE is generated if flags is not zero. + + + Additionally, if glFenceSync fails, it will return zero. + + + See Also + + glDeleteSync, + glGetSync, + glWaitSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glFinish.xml b/upstream-man-pages/man3/glFinish.xml new file mode 100644 index 0000000..57d86d8 --- /dev/null +++ b/upstream-man-pages/man3/glFinish.xml @@ -0,0 +1,54 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFinish + 3G + + + glFinish + block until all GL execution is complete + + C Specification + + + void glFinish + void + + + + Description + + glFinish does not return until the effects of all previously + called GL commands are complete. + Such effects include all changes to GL state, + all changes to connection state, + and all changes to the frame buffer contents. + + + Notes + + glFinish requires a round trip to the server. + + + See Also + + glFlush + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glFlush.xml b/upstream-man-pages/man3/glFlush.xml new file mode 100644 index 0000000..c7fad46 --- /dev/null +++ b/upstream-man-pages/man3/glFlush.xml @@ -0,0 +1,68 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFlush + 3G + + + glFlush + force execution of GL commands in finite time + + C Specification + + + void glFlush + void + + + + Description + + Different GL implementations buffer commands in several different locations, + including network buffers and the graphics accelerator itself. + glFlush empties all of these buffers, + causing all issued commands to be executed as quickly as + they are accepted by the actual rendering engine. + Though this execution may not be completed in any particular + time period, + it does complete in finite time. + + + Because any GL program might be executed over a network, + or on an accelerator that buffers commands, + all programs should call glFlush whenever they count on having + all of their previously issued commands completed. + For example, + call glFlush before waiting for user input that depends on + the generated image. + + + Notes + + glFlush can return at any time. + It does not wait until the execution of all previously + issued GL commands is complete. + + + See Also + + glFinish + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glFlushMappedBufferRange.xml b/upstream-man-pages/man3/glFlushMappedBufferRange.xml new file mode 100644 index 0000000..75258d6 --- /dev/null +++ b/upstream-man-pages/man3/glFlushMappedBufferRange.xml @@ -0,0 +1,98 @@ + + + + + + + 2010 + Khronos Group + + + glFlushMappedBufferRange + 3G + + + glFlushMappedBufferRange + indicate modifications to a range of a mapped buffer + + C Specification + + + void glFlushMappedBufferRange + GLenum target + GLintptr offset + GLsizeiptr length + + + + + Parameters + + + target + + + Specifies the target of the flush operation. target must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER. + + + + + offset + + + Specifies the start of the buffer subrange, in basic machine units. + + + + + length + + + Specifies the length of the buffer subrange, in basic machine units. + + + + + + Description + + glFlushMappedBufferRange indicates that modifications have been made to a range of a mapped buffer. + The buffer must previously have been mapped with the GL_MAP_FLUSH_EXPLICIT flag. offset + and length indicate the modified subrange of the mapping, in basic units. The specified subrange to flush + is relative to the start of the currently mapped range of the buffer. glFlushMappedBufferRange may be called + multiple times to indicate distinct subranges of the mapping which require flushing. + + + Errors + + GL_INVALID_VALUE is generated if offset or length + is negative, or if offset + length exceeds the size of the mapping. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer bound to target is not + mapped, or is mapped without the GL_MAP_FLUSH_EXPLICIT flag. + + + See Also + + glMapBufferRange, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glFramebufferRenderbuffer.xml b/upstream-man-pages/man3/glFramebufferRenderbuffer.xml new file mode 100644 index 0000000..44a20eb --- /dev/null +++ b/upstream-man-pages/man3/glFramebufferRenderbuffer.xml @@ -0,0 +1,127 @@ + + + + + + + 2010 + Khronos Group + + + glFramebufferRenderbuffer + 3G + + + glFramebufferRenderbuffer + attach a renderbuffer as a logical buffer to the currently bound framebuffer object + + C Specification + + + void glFramebufferRenderbuffer + GLenum target + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + + + Parameters + + + target + + + Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. + + + + + attachment + + + Specifies the attachment point of the framebuffer. + + + + + renderbuffertarget + + + Specifies the renderbuffer target and must be GL_RENDERBUFFER. + + + + + renderbuffer + + + Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach. + + + + + + Description + + glFramebufferRenderbuffer attaches a renderbuffer as one of the logical buffers of the + currently bound framebuffer object. renderbuffer is the name of the renderbuffer object + to attach and must be either zero, or the name of an existing renderbuffer object of type renderbuffertarget. + If renderbuffer is not zero and if glFramebufferRenderbuffer is + successful, then the renderbuffer name renderbuffer will be used as the logical buffer + identified by attachment of the framebuffer currently bound to target. + + + The value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE for the specified attachment point is + set to GL_RENDERBUFFER and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + is set to renderbuffer. All other state values of the attachment point specified by + attachment are set to their default values. No change is made to the state of the renderbuuffer + object and any previous attachment to the attachment logical buffer of the framebuffer + target is broken. + + + Calling glFramebufferRenderbuffer with the renderbuffer name zero will detach the image, if any, + identified by attachment, in the framebuffer currently bound to target. + All state values of the attachment point specified by attachment in the object bound to target are set to their default values. + + + Setting attachment to the value GL_DEPTH_STENCIL_ATTACHMENT is a special + case causing both the depth and stencil attachments of the framebuffer object to be set to renderbuffer, + which should have the base internal format GL_DEPTH_STENCIL. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glGenRenderbuffers, + glFramebufferTexture, + glFramebufferTexture1D, + glFramebufferTexture2D, + glFramebufferTexture3D + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glFramebufferTexture.xml b/upstream-man-pages/man3/glFramebufferTexture.xml new file mode 100644 index 0000000..9505fee --- /dev/null +++ b/upstream-man-pages/man3/glFramebufferTexture.xml @@ -0,0 +1,207 @@ + + + + + + + 2010 + Khronos Group + + + glFramebufferTexture + 3G + + + glFramebufferTexture + attach a level of a texture object as a logical buffer to the currently bound framebuffer object + + C Specification + + + void glFramebufferTexture + GLenum target + GLenum attachment + GLuint texture + GLint level + + + void glFramebufferTexture1D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glFramebufferTexture2D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glFramebufferTexture3D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint layer + + + + + Parameters + + + target + + + Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. + + + + + attachment + + + Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + + + + + textarget + + + For glFramebufferTexture1D, glFramebufferTexture2D and + glFramebufferTexture3D, specifies what type of texture is expected + in the texture parameter, or for cube map textures, which face is to be attached. + + + + + texture + + + Specifies the texture object to attach to the framebuffer attachment point named by attachment. + + + + + level + + + Specifies the mipmap level of texture to attach. + + + + + + Description + + glFramebufferTexture, glFramebufferTexture1D, glFramebufferTexture2D, + and glFramebufferTexture attach a selected mipmap level or image of a texture object as one of the + logical buffers of the framebuffer object currently bound to target. target must + be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + + + attachment specifies the logical attachment of the framebuffer and must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + i in GL_COLOR_ATTACHMENTi may range from zero to + the value of GL_MAX_COLOR_ATTACHMENTS - 1. Attaching a level of a texture to + GL_DEPTH_STENCIL_ATTACHMENT is equivalent to attaching that level to both the + GL_DEPTH_ATTACHMENT and the GL_STENCIL_ATTACHMENT + attachment points simultaneously. + + + textarget specifies what type of texture is named by texture, and for + cube map textures, specifies the face that is to be attached. If texture is not zero, it + must be the name of an existing texture with type textarget, unless it is a cube map + texture, in which case textarget must be GL_TEXTURE_CUBE_MAP_POSITIVE_X + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + If texture is non-zero, the specified level of the texture object named + texture is attached to the framebfufer attachment point named by attachment. + For glFramebufferTexture1D, glFramebufferTexture2D, and + glFramebufferTexture3D, texture must be zero or the name of an existing + texture with a target of textarget, or texture must be the name + of an existing cube-map texture and textarget must be one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + If textarget is GL_TEXTURE_RECTANGLE, GL_TEXTURE_2D_MULTISAMPLE, + or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, then level must be zero. If textarget + is GL_TEXTURE_3D, then level must be greater than or equal to zero and less than or equal to log2 + of the value of GL_MAX_3D_TEXTURE_SIZE. If textarget is one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, then level must be greater + than or equal to zero and less than or equal to log2 of the value of GL_MAX_CUBE_MAP_TEXTURE_SIZE. For all other + values of textarget, level must be greater than or equal to zero and no larger than log2 + of the value of GL_MAX_TEXTURE_SIZE. + + + layer specifies the layer of a 2-dimensional image within a 3-dimensional texture. + + + For glFramebufferTexture1D, if texture is not zero, then textarget must + be GL_TEXTURE_1D. For glFramebufferTexture2D, if texture is not zero, + textarget must be one of GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_2D_MULTISAMPLE. For glFramebufferTexture3D, if texture is + not zero, then textarget must be GL_TEXTURE_3D. + + + Notes + + glFramebufferTexture is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + GL_INVALID_OPERATION is generated if textarget and texture + are not compatible. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glGenRenderbuffers, + glFramebufferTexture, + glFramebufferTexture1D, + glFramebufferTexture2D, + glFramebufferTexture3D + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glFramebufferTextureLayer.xml b/upstream-man-pages/man3/glFramebufferTextureLayer.xml new file mode 100644 index 0000000..18805ae --- /dev/null +++ b/upstream-man-pages/man3/glFramebufferTextureLayer.xml @@ -0,0 +1,133 @@ + + + + + + + 2010 + Khronos Group + + + glFramebufferTextureLayer + 3G + + + glFramebufferTextureLayer + attach a single layer of a texture to a framebuffer + + C Specification + + + void glFramebufferTextureLayer + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint layer + + + + + Parameters + + + target + + + Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. + + + + + attachment + + + Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + + + + + texture + + + Specifies the texture object to attach to the framebuffer attachment point named by attachment. + + + + + level + + + Specifies the mipmap level of texture to attach. + + + + + layer + + + Specifies the layer of texture to attach. + + + + + + Description + + glFramebufferTextureLayer operates like glFramebufferTexture, + except that only a single layer of the texture level, given by layer, is attached to the attachment point. + If texture is not zero, layer must be greater than or equal to zero. + texture must either be zero or the name of an existing three-dimensional texture, one- or two-dimensional array texture, + or multisample array texture. + + + Notes + + glFramebufferTextureLayer is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if attachment is not one of the accepted tokens. + + + GL_INVALID_VALUE is generated if texture is not zero or the name of an existing + texture object. + + + GL_INVALID_VALUE is generated if texture is not zero and layer + is negative. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + GL_INVALID_OPERATION is generated if texture is not zero or the name of an existing cube map texture. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glGenRenderbuffers, + glFramebufferTexture, + glFramebufferTextureFace + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glFrontFace.xml b/upstream-man-pages/man3/glFrontFace.xml new file mode 100644 index 0000000..7114da1 --- /dev/null +++ b/upstream-man-pages/man3/glFrontFace.xml @@ -0,0 +1,95 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFrontFace + 3G + + + glFrontFace + define front- and back-facing polygons + + C Specification + + + void glFrontFace + GLenum mode + + + + + Parameters + + + mode + + + Specifies the orientation of front-facing polygons. + GL_CW and GL_CCW are accepted. + The initial value is GL_CCW. + + + + + + Description + + In a scene composed entirely of opaque closed surfaces, + back-facing polygons are never visible. + Eliminating these invisible polygons has the obvious benefit + of speeding up the rendering of the image. + To enable and disable elimination of back-facing polygons, call glEnable + and glDisable with argument GL_CULL_FACE. + + + The projection of a polygon to window coordinates is said to have + clockwise winding if an imaginary object following the path + from its first vertex, + its second vertex, + and so on, + to its last vertex, + and finally back to its first vertex, + moves in a clockwise direction about the interior of the polygon. + The polygon's winding is said to be counterclockwise if the imaginary + object following the same path moves in a counterclockwise direction + about the interior of the polygon. + glFrontFace specifies whether polygons with clockwise winding in window coordinates, + or counterclockwise winding in window coordinates, + are taken to be front-facing. + Passing GL_CCW to mode selects counterclockwise polygons as + front-facing; + GL_CW selects clockwise polygons as front-facing. + By default, counterclockwise polygons are taken to be front-facing. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + Associated Gets + + glGet with argument GL_FRONT_FACE + + + See Also + + glCullFace, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGenBuffers.xml b/upstream-man-pages/man3/glGenBuffers.xml new file mode 100644 index 0000000..95c8a64 --- /dev/null +++ b/upstream-man-pages/man3/glGenBuffers.xml @@ -0,0 +1,90 @@ + + + + + + + 2005 + Sams Publishing + + + glGenBuffers + 3G + + + glGenBuffers + generate buffer object names + + C Specification + + + void glGenBuffers + GLsizei n + GLuint * buffers + + + + Parameters + + + n + + + Specifies the number of buffer object names to be generated. + + + + + buffers + + + Specifies an array in which the generated buffer object names are stored. + + + + + + Description + + glGenBuffers returns n buffer object names in buffers. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenBuffers. + + + Buffer object names returned by a call to glGenBuffers are not returned by + subsequent calls, unless they are first deleted with + glDeleteBuffers. + + + No buffer objects are associated with the returned buffer object names until they are first bound by calling + glBindBuffer. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsBuffer + + + See Also + + glBindBuffer, + glDeleteBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGenFramebuffers.xml b/upstream-man-pages/man3/glGenFramebuffers.xml new file mode 100644 index 0000000..73db24e --- /dev/null +++ b/upstream-man-pages/man3/glGenFramebuffers.xml @@ -0,0 +1,83 @@ + + + + + + + 2010 + Khronos Group + + + glGenFramebuffers + 3G + + + glGenFramebuffers + generate framebuffer object names + + C Specification + + + void glGenFramebuffers + GLsizei n + GLuint *ids + + + + + Parameters + + + n + + + Specifies the number of framebuffer object names to generate. + + + + + ids + + + Specifies an array in which the generated framebuffer object names are stored. + + + + + + Description + + glGenFramebuffers returns n framebuffer object names in ids. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenFramebuffers. + + + Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteFramebuffers. + + + The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, + but they acquire state and type only when they are first bound. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glBindFramebuffer, + glDeleteFramebuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGenQueries.xml b/upstream-man-pages/man3/glGenQueries.xml new file mode 100644 index 0000000..0661939 --- /dev/null +++ b/upstream-man-pages/man3/glGenQueries.xml @@ -0,0 +1,90 @@ + + + + + + + 2005 + Sams Publishing + + + glGenQueries + 3G + + + glGenQueries + generate query object names + + C Specification + + + void glGenQueries + GLsizei n + GLuint * ids + + + + Parameters + + + n + + + Specifies the number of query object names to be generated. + + + + + ids + + + Specifies an array in which the generated query object names are stored. + + + + + + Description + + glGenQueries returns n query object names in ids. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenQueries. + + + Query object names returned by a call to glGenQueries are not returned by + subsequent calls, unless they are first deleted with + glDeleteQueries. + + + No query objects are associated with the returned query object names until they are first used by calling + glBeginQuery. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsQuery + + + See Also + + glBeginQuery, + glDeleteQueries, + glEndQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGenRenderbuffers.xml b/upstream-man-pages/man3/glGenRenderbuffers.xml new file mode 100644 index 0000000..b38ffdf --- /dev/null +++ b/upstream-man-pages/man3/glGenRenderbuffers.xml @@ -0,0 +1,83 @@ + + + + + + + 2010 + Khronos Group + + + glGenRenderbuffers + 3G + + + glGenRenderbuffers + generate renderbuffer object names + + C Specification + + + void glGenRenderbuffers + GLsizei n + GLuint *renderbuffers + + + + + Parameters + + + n + + + Specifies the number of renderbuffer object names to generate. + + + + + renderbuffers + + + Specifies an array in which the generated renderbuffer object names are stored. + + + + + + Description + + glGenRenderbuffers returns n renderbuffer object names in renderbuffers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenRenderbuffers. + + + Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteRenderbuffers. + + + The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, + but they acquire state and type only when they are first bound. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGenSamplers.xml b/upstream-man-pages/man3/glGenSamplers.xml new file mode 100644 index 0000000..f028345 --- /dev/null +++ b/upstream-man-pages/man3/glGenSamplers.xml @@ -0,0 +1,89 @@ + + + + + + + 2010 + Khronos Group + + + glGenSamplers + 3G + + + glGenSamplers + generate sampler object names + + C Specification + + + void glGenSamplers + GLsizei n + GLuint *samplers + + + + + Parameters + + + n + + + Specifies the number of sampler object names to generate. + + + + + samplers + + + Specifies an array in which the generated sampler object names are stored. + + + + + + Description + + glGenSamplers returns n sampler object names in samplers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenSamplers. + + + Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless + they are first deleted with glDeleteSamplers. + + + The names returned in samplers are marked as used, for the purposes of glGenSamplers only, + but they acquire state and type only when they are first bound. + + + Notes + + glGenSamplers is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glBindSampler, + glIsSampler, + glDeleteSamplers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGenTextures.xml b/upstream-man-pages/man3/glGenTextures.xml new file mode 100644 index 0000000..1f84256 --- /dev/null +++ b/upstream-man-pages/man3/glGenTextures.xml @@ -0,0 +1,98 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGenTextures + 3G + + + glGenTextures + generate texture names + + C Specification + + + void glGenTextures + GLsizei n + GLuint * textures + + + + Parameters + + + n + + + Specifies the number of texture names to be generated. + + + + + textures + + + Specifies an array in which the generated texture names are stored. + + + + + + Description + + glGenTextures returns n texture names in textures. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenTextures. + + + The generated textures have no dimensionality; they assume the dimensionality + of the texture target to which they are first bound + (see glBindTexture). + + + Texture names returned by a call to glGenTextures are not returned by + subsequent calls, unless they are first deleted with + glDeleteTextures. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsTexture + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glDeleteTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGenVertexArrays.xml b/upstream-man-pages/man3/glGenVertexArrays.xml new file mode 100644 index 0000000..a960c96 --- /dev/null +++ b/upstream-man-pages/man3/glGenVertexArrays.xml @@ -0,0 +1,83 @@ + + + + + + + 2010 + Khronos Group + + + glGenVertexArrays + 3G + + + glGenVertexArrays + generate vertex array object names + + C Specification + + + void glGenVertexArrays + GLsizei n + GLuint *arrays + + + + + Parameters + + + n + + + Specifies the number of vertex array object names to generate. + + + + + arrays + + + Specifies an array in which the generated vertex array object names are stored. + + + + + + Description + + glGenVertexArrays returns n vertex array object names in arrays. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenVertexArrays. + + + Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless + they are first deleted with glDeleteVertexArrays. + + + The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, + but they acquire state and type only when they are first bound. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glBindVertexArray, + glDeleteVertexArrays + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGenerateMipmap.xml b/upstream-man-pages/man3/glGenerateMipmap.xml new file mode 100644 index 0000000..686cd47 --- /dev/null +++ b/upstream-man-pages/man3/glGenerateMipmap.xml @@ -0,0 +1,144 @@ + + + + + + + 2010 + Khronos Group + + + glGenerateMipmap + 3G + + + glGenerateMipmap + generate mipmaps for a specified texture target + + C Specification + + + void glGenerateMipmap + GLenum target + + + + + Parameters + + + target + + + Specifies the target to which the texture whose mimaps to generate is bound. target must + be GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY or + GL_TEXTURE_CUBE_MAP. + + + + + + Description + + glGenerateMipmap generates mipmaps for the texture attached + to target of the active texture unit. For cube map textures, + a GL_INVALID_OPERATION error is generated if the texture + attached to target is not cube complete. + + + Mipmap generation replaces texel array levels + + + + + level + base + + + + 1 + + + through + + + q + + + with arrays derived from the + + + + + level + base + + + + array, regardless of their previous contents. All other mimap arrays, + including the + + + + + level + base + + + + array, are left unchanged by this computation. + + + The internal formats of the derived mipmap arrays all match those of the + + + + + level + base + + + + array. The contents of the derived arrays are computed by repeated, filtered + reduction of the + + + + + level + base + + + + array. For one- and two-dimensional texture arrays, each layer is filtered + independently. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted texture targets. + + + GL_INVALID_OPERATION is generated if target is + GL_TEXTURE_CUBE_MAP and the texture bound to the GL_TEXTURE_CUBE_MAP + target of the active texture unit is not cube complete. + + + See Also + + glTexImage2D, + glBindTexture, + glGenTextures + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGet.xml b/upstream-man-pages/man3/glGet.xml new file mode 100644 index 0000000..ed98aa8 --- /dev/null +++ b/upstream-man-pages/man3/glGet.xml @@ -0,0 +1,2473 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGet + 3G + + + glGet + return the value or values of a selected parameter + + C Specification + + + void glGetBooleanv + GLenum pname + GLboolean * params + + + + C Specification + + + void glGetDoublev + GLenum pname + GLdouble * params + + + + C Specification + + + void glGetFloatv + GLenum pname + GLfloat * params + + + + C Specification + + + void glGetIntegerv + GLenum pname + GLint * params + + + + C Specification + + + void glGetInteger64v + GLenum pname + GLint64 * params + + + + + Parameters + + + pname + + + Specifies the parameter value to be returned. + The symbolic constants in the list below are accepted. + + + + + params + + + Returns the value or values of the specified parameter. + + + + + + C Specification + + + void glGetBooleani_v + GLenum pname + GLuint index + GLboolean * data + + + + C Specification + + + void glGetIntegeri_v + GLenum pname + GLuint index + GLint * data + + + + C Specification + + + void glGetInteger64i_v + GLenum pname + GLuint index + GLint64 * data + + + + + Parameters + + + pname + + + Specifies the parameter value to be returned. + The symbolic constants in the list below are accepted. + + + + + index + + + Specifies the index of the particular element being queried. + + + + + data + + + Returns the value or values of the specified parameter. + + + + + + Description + + These four commands return values for simple state variables in GL. + pname is a symbolic constant indicating the state variable to be returned, + and params is a pointer to an array of the indicated type in + which to place the returned data. + + + Type conversion is performed if params has a different type than + the state variable value being requested. + If glGetBooleanv is called, + a floating-point (or integer) value is converted to GL_FALSE if + and only if it is 0.0 (or 0). + Otherwise, + it is converted to GL_TRUE. + If glGetIntegerv is called, boolean values are returned as + GL_TRUE or GL_FALSE, and most floating-point values are + rounded to the nearest integer value. Floating-point colors and + normals, however, are returned with a linear mapping that maps 1.0 to + the most positive representable integer value + and + + + -1.0 + + to the most negative representable integer value. + If glGetFloatv or glGetDoublev is called, + boolean values are returned as GL_TRUE or GL_FALSE, + and integer values are converted to floating-point values. + + + The following symbolic constants are accepted by pname: + + + + GL_ACTIVE_TEXTURE + + + + + params returns a single value indicating the active multitexture unit. + The initial value is GL_TEXTURE0. + See glActiveTexture. + + + + + GL_ALIASED_LINE_WIDTH_RANGE + + + + + params returns a pair of values indicating the range of + widths supported for aliased lines. See glLineWidth. + + + + + GL_SMOOTH_LINE_WIDTH_RANGE + + + + + params returns a pair of values indicating the range of + widths supported for smooth (antialiased) lines. See glLineWidth. + + + + + GL_SMOOTH_LINE_WIDTH_GRANULARITY + + + + + params returns a single value indicating the level of + quantization applied to smooth line width parameters. + + + + + GL_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_ARRAY_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_BLEND + + + + + params returns a single boolean value indicating whether blending is + enabled. The initial value is GL_FALSE. + See glBlendFunc. + + + + + GL_BLEND_COLOR + + + + + params returns four values, + the red, green, blue, and alpha values which are the components of + the blend color. + See glBlendColor. + + + + + GL_BLEND_DST_ALPHA + + + + + params returns one value, + the symbolic constant identifying the alpha destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_DST_RGB + + + + + params returns one value, + the symbolic constant identifying the RGB destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_EQUATION_RGB + + + + + params returns one value, a symbolic constant indicating whether + the RGB blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. + + + + + GL_BLEND_EQUATION_ALPHA + + + + + params returns one value, a symbolic constant indicating whether + the Alpha blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. + + + + + GL_BLEND_SRC_ALPHA + + + + + params returns one value, + the symbolic constant identifying the alpha source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_SRC_RGB + + + + + params returns one value, + the symbolic constant identifying the RGB source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_COLOR_CLEAR_VALUE + + + + + params returns four values: + the red, green, blue, and alpha values used to clear the color buffers. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 0, 0, 0). + See glClearColor. + + + + + GL_COLOR_LOGIC_OP + + + + + params returns a single boolean value indicating whether a fragment's + RGBA color values are merged into the framebuffer using a logical + operation. The initial value is GL_FALSE. + See glLogicOp. + + + + + GL_COLOR_WRITEMASK + + + + + params returns four boolean values: + the red, green, blue, and alpha write enables for the color + buffers. The initial value is (GL_TRUE, GL_TRUE, + GL_TRUE, GL_TRUE). + See glColorMask. + + + + + GL_COMPRESSED_TEXTURE_FORMATS + + + + + params returns a list of symbolic + constants of length GL_NUM_COMPRESSED_TEXTURE_FORMATS + indicating which compressed texture formats are available. + See glCompressedTexImage2D. + + + + + GL_CULL_FACE + + + + + params returns a single boolean value indicating whether polygon culling + is enabled. The initial value is GL_FALSE. + See glCullFace. + + + + + GL_CURRENT_PROGRAM + + + + + params returns one value, + the name of the program object that is currently active, or 0 if no program object is active. + See glUseProgram. + + + + + GL_DEPTH_CLEAR_VALUE + + + + + params returns one value, + the value that is used to clear the depth buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is 1. + See glClearDepth. + + + + + GL_DEPTH_FUNC + + + + + params returns one value, + the symbolic constant that indicates the depth comparison + function. The initial value is GL_LESS. + See glDepthFunc. + + + + + GL_DEPTH_RANGE + + + + + params returns two values: + the near and far mapping limits for the depth buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 1). + See glDepthRange. + + + + + GL_DEPTH_TEST + + + + + params returns a single boolean value indicating whether depth testing + of fragments is enabled. The initial value is GL_FALSE. + See glDepthFunc and glDepthRange. + + + + + GL_DEPTH_WRITEMASK + + + + + params returns a single boolean value indicating if the depth buffer + is enabled for writing. The initial value is GL_TRUE. + See glDepthMask. + + + + + GL_DITHER + + + + + params returns a single boolean value indicating whether dithering of + fragment colors and indices is enabled. The initial value is GL_TRUE. + + + + + GL_DOUBLEBUFFER + + + + + params returns a single boolean value indicating whether double buffering + is supported. + + + + + GL_DRAW_BUFFER + + + + + params returns one value, + a symbolic constant indicating which buffers are being drawn to. + See glDrawBuffer. The initial value is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. + + + + + GL_DRAW_BUFFERi + + + + + params returns one value, + a symbolic constant indicating which buffers are being drawn to by the corresponding output color. + See glDrawBuffers. + The initial value of GL_DRAW_BUFFER0 is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. The + initial values of draw buffers for all other output colors is GL_NONE. + + + + + GL_DRAW_FRAMEBUFFER_BINDING + + + + + params returns one value, + the name of the framebuffer object currently bound to the GL_DRAW_FRAMEBUFFER target. + If the default framebuffer is bound, this value will be zero. The initial value is zero. + See glBindFramebuffer. + + + + + GL_READ_FRAMEBUFFER_BINDING + + + + + params returns one value, + the name of the framebuffer object currently bound to the GL_READ_FRAMEBUFFER target. + If the default framebuffer is bound, this value will be zero. The initial value is zero. + See glBindFramebuffer. + + + + + GL_ELEMENT_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_ELEMENT_ARRAY_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_RENDERBUFFER_BINDING + + + + + params returns a single value, the name of the renderbuffer object + currently bound to the target GL_RENDERBUFFER. If no renderbuffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindRenderbuffer. + + + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the derivative accuracy hint + for fragment shaders. The initial value + is GL_DONT_CARE. + See glHint. + + + + + GL_LINE_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + lines is enabled. The initial value is GL_FALSE. + See glLineWidth. + + + + + GL_LINE_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the line antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_LINE_WIDTH + + + + + params returns one value, + the line width as specified with glLineWidth. The initial value is + 1. + + + + + GL_LINE_WIDTH_GRANULARITY + + + + + params returns one value, + the width difference between adjacent supported widths for antialiased lines. + See glLineWidth. + + + + + GL_LINE_WIDTH_RANGE + + + + + params returns two values: + the smallest and largest supported widths for antialiased + lines. + See glLineWidth. + + + + + GL_LOGIC_OP_MODE + + + + + params returns one value, + a symbolic constant indicating the selected logic operation + mode. The initial value is GL_COPY. + See glLogicOp. + + + + + GL_MAX_3D_TEXTURE_SIZE + + + + + params returns one value, + a rough estimate of the largest 3D texture that the GL can handle. + The value must be at least 64. + Use GL_PROXY_TEXTURE_3D to determine if a texture is too large. + See glTexImage3D. + + + + + GL_MAX_CLIP_DISTANCES + + + + + params returns one value, + the maximum number of application-defined clipping distances. The value must be at least 8. + + + + + GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS + + + + + params returns one value, + the number of words for fragment shader uniform variables in all uniform + blocks (including default). The value must be at least 1. + See glUniform. + + + + + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader and the fragment processor combined. + If both the vertex shader and the fragment processing stage access the same texture image + unit, then that counts as using two texture image units against this limit. + The value must be at least 48. + See glActiveTexture. + + + + + GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS + + + + + params returns one value, + the number of words for vertex shader uniform variables in all uniform + blocks (including default). The value must be at least 1. + See glUniform. + + + + + GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS + + + + + params returns one value, + the number of words for geometry shader uniform variables in all uniform + blocks (including default). The value must be at least 1. + See glUniform. + + + + + GL_MAX_VARYING_COMPONENTS + + + + + params returns one value, + the number components for varying variables, which must be at least 60. + + + + + GL_MAX_COMBINED_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per program. The value must be at least 36. + See glUniformBlockBinding. + + + + + GL_MAX_CUBE_MAP_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest cube-map texture that + the GL can handle. The value must be at least 1024. + Use GL_PROXY_TEXTURE_CUBE_MAP + to determine if a texture is too large. + See glTexImage2D. + + + + + GL_MAX_DRAW_BUFFERS + + + + + params returns one value, the maximum number + of simultaneous outputs that may be written in a fragment shader. + The value must be at least 8. + See glDrawBuffers. + + + + + GL_MAX_DUALSOURCE_DRAW_BUFFERS + + + + + params returns one value, the maximum number + of active draw buffers when using dual-source blending. The value must be at least 1. + See glBlendFunc and + glBlendFuncSeparate. + + + + + GL_MAX_ELEMENTS_INDICES + + + + + params returns one value, + the recommended maximum number of vertex array indices. + See glDrawRangeElements. + + + + + GL_MAX_ELEMENTS_VERTICES + + + + + params returns one value, + the recommended maximum number of vertex array vertices. + See glDrawRangeElements. + + + + + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a fragment shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_FRAGMENT_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per fragment shader. The value must be at least 12. + See glUniformBlockBinding. + + + + + GL_MAX_FRAGMENT_INPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of the inputs read by the fragment shader, which must be at least 128. + + + + + GL_MIN_PROGRAM_TEXEL_OFFSET + + + + + params returns one value, + the minimum texel offset allowed in a texture lookup, which must be at most -8. + + + + + GL_MAX_PROGRAM_TEXEL_OFFSET + + + + + params returns one value, + the maximum texel offset allowed in a texture lookup, which must be at least 7. + + + + + GL_MAX_RECTANGLE_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest rectangular texture that + the GL can handle. The value must be at least 1024. + Use GL_PROXY_RECTANGLE_TEXTURE + to determine if a texture is too large. + See glTexImage2D. + + + + + GL_MAX_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the fragment shader. + The value must be at least 16. + See glActiveTexture. + + + + + GL_MAX_TEXTURE_LOD_BIAS + + + + + params returns one value, + the maximum, absolute value of the texture level-of-detail bias. The + value must be at least 2.0. + + + + + GL_MAX_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest texture that + the GL can handle. The value must be at least 1024. + Use a proxy texture target such as GL_PROXY_TEXTURE_1D or GL_PROXY_TEXTURE_2D + to determine if a texture is too large. + See glTexImage1D and glTexImage2D. + + + + + GL_MAX_RENDERBUFFER_SIZE + + + + + params returns one value. + The value indicates the maximum supported size for renderbuffers. + See glFramebufferRenderbuffer. + + + + + GL_MAX_ARRAY_TEXTURE_LAYERS + + + + + params returns one value. + The value indicates the maximum number of layers allowed in an array texture, and must be at least 256. + See glTexImage2D. + + + + + GL_MAX_TEXTURE_BUFFER_SIZE + + + + + params returns one value. + The value gives the maximum number of texels allowed in the texel array of a texture buffer object. + Value must be at least 65536. + + + + + GL_MAX_UNIFORM_BLOCK_SIZE + + + + + params returns one value, + the maximum size in basic machine units of a uniform block. + The value must be at least 16384. + See glUniformBlockBinding. + + + + + GL_MAX_VARYING_FLOATS + + + + + params returns one value, + the maximum number of interpolators available for processing varying variables used by + vertex and fragment shaders. This value represents the number of individual floating-point + values that can be interpolated; varying variables declared as vectors, matrices, and arrays + will all consume multiple interpolators. The value must be at least 32. + + + + + GL_MAX_VERTEX_ATTRIBS + + + + + params returns one value, + the maximum number of 4-component generic vertex attributes accessible to a vertex shader. + The value must be at least 16. + See glVertexAttrib. + + + + + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader. The value may be at least 16. + See glActiveTexture. + + + + + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the geometry shader. The value must be at least 16. + See glActiveTexture. + + + + + GL_MAX_VERTEX_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a vertex shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_VERTEX_OUTPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of output written by a vertex shader, which must be at least 64. + + + + + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a geometry shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_SAMPLE_MASK_WORDS + + + + + params returns one value, + the maximum number of sample mask words. + + + + + GL_MAX_COLOR_TEXTURE_SAMPLES + + + + + params returns one value, + the maximum number of samples in a color multisample texture. + + + + + GL_MAX_DEPTH_TEXTURE_SAMPLES + + + + + params returns one value, + the maximum number of samples in a multisample depth or depth-stencil texture. + + + + + GL_MAX_DEPTH_TEXTURE_SAMPLES + + + + + params returns one value, + the maximum number of samples in a multisample depth or depth-stencil texture. + + + + + GL_MAX_INTEGER_SAMPLES + + + + + params returns one value, + the maximum number of samples supported in integer format multisample buffers. + + + + + GL_MAX_SERVER_WAIT_TIMEOUT + + + + + params returns one value, + the maximum glWaitSync timeout interval. + + + + + GL_MAX_UNIFORM_BUFFER_BINDINGS + + + + + params returns one value, + the maximum number of uniform buffer binding points on the context, which must be at least 36. + + + + + GL_MAX_UNIFORM_BLOCK_SIZE + + + + + params returns one value, + the maximum size in basic machine units of a uniform block, which must be at least 16384. + + + + + GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT + + + + + params returns one value, + the minimum required alignment for uniform buffer sizes and offsets. + + + + + GL_MAX_VERTEX_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per vertex shader. The value must be at least 12. + See glUniformBlockBinding. + + + + + GL_MAX_GEOMETRY_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per geometry shader. The value must be at least 12. + See glUniformBlockBinding. + + + + + GL_MAX_GEOMETRY_INPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of inputs read by a geometry shader, which must be at least 64. + + + + + GL_MAX_GEOMETRY_OUTPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of outputs written by a geometry shader, which must be at least 128. + + + + + GL_MAX_VIEWPORT_DIMS + + + + + params returns two values: + the maximum supported width and height of the viewport. + These must be at least as large as the visible dimensions of the display + being rendered to. + See glViewport. + + + + + GL_NUM_COMPRESSED_TEXTURE_FORMATS + + + + + params returns a single integer value indicating the number of available + compressed texture formats. The minimum value is 4. + See glCompressedTexImage2D. + + + + + GL_PACK_ALIGNMENT + + + + + params returns one value, + the byte alignment used for writing pixel data to memory. The initial + value is 4. + See glPixelStore. + + + + + GL_PACK_IMAGE_HEIGHT + + + + + params returns one value, + the image height used for writing pixel data to memory. The initial + value is 0. + See glPixelStore. + + + + + GL_PACK_LSB_FIRST + + + + + params returns a single boolean value indicating whether single-bit + pixels being written to memory are written first to the least significant + bit of each unsigned byte. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_PACK_ROW_LENGTH + + + + + params returns one value, + the row length used for writing pixel data to memory. The initial value is + 0. + See glPixelStore. + + + + + GL_PACK_SKIP_IMAGES + + + + + params returns one value, + the number of pixel images skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SKIP_PIXELS + + + + + params returns one value, + the number of pixel locations skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SKIP_ROWS + + + + + params returns one value, + the number of rows of pixel locations skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SWAP_BYTES + + + + + params returns a single boolean value indicating whether the bytes of + two-byte and four-byte pixel indices and components are swapped before being + written to memory. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_PIXEL_PACK_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_PIXEL_PACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_PIXEL_UNPACK_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_PIXEL_UNPACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_POINT_FADE_THRESHOLD_SIZE + + + + + params returns one value, + the point size threshold for determining the point size. + See glPointParameter. + + + + + GL_PRIMITIVE_RESTART_INDEX + + + + + params returns one value, + the current primitive restart index. The initial value is 0. + See glPrimitiveRestartIndex. + + + + + GL_PROVOKING_VERTEX + + + + + params returns one value, + the currently selected provoking vertex convention. The initial value is GL_LAST_VERTEX_CONVENTION. + See glProvokingVertex. + + + + + GL_POINT_SIZE + + + + + params returns one value, + the point size as specified by glPointSize. + The initial value is 1. + + + + + GL_POINT_SIZE_GRANULARITY + + + + + params returns one value, + the size difference between adjacent supported sizes for antialiased points. + See glPointSize. + + + + + GL_POINT_SIZE_RANGE + + + + + params returns two values: + the smallest and largest supported sizes for antialiased + points. The smallest size must be at most 1, and the largest size must + be at least 1. + See glPointSize. + + + + + GL_POLYGON_OFFSET_FACTOR + + + + + params returns one value, + the scaling factor used to determine the variable offset that is added + to the depth value of each fragment generated when a polygon is + rasterized. The initial value is 0. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_UNITS + + + + + params returns one value. + This value is multiplied by an implementation-specific value and then + added to the depth value of each fragment + generated when a polygon is rasterized. The initial value is 0. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_FILL + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in fill mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_LINE + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in line mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_POINT + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in point mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + polygons is enabled. The initial value is GL_FALSE. + See glPolygonMode. + + + + + GL_POLYGON_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the polygon antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_READ_BUFFER + + + + + params returns one value, + a symbolic constant indicating which color buffer is selected for + reading. The initial value is GL_BACK if there is a back buffer, + otherwise it is GL_FRONT. + See + glReadPixels. + + + + + GL_SAMPLE_BUFFERS + + + + + params returns a single integer value indicating the number of sample buffers + associated with the framebuffer. + See glSampleCoverage. + + + + + GL_SAMPLE_COVERAGE_VALUE + + + + + params returns a single positive floating-point value indicating the + current sample coverage value. + See glSampleCoverage. + + + + + GL_SAMPLE_COVERAGE_INVERT + + + + + params returns a single boolean value indicating if the temporary + coverage value should be inverted. + See glSampleCoverage. + + + + + GL_SAMPLER_BINDING + + + + + params returns a single value, the name of the sampler object + currently bound to the active texture unit. The initial value is 0. + See glBindSampler. + + + + + GL_SAMPLES + + + + + params returns a single integer value indicating the coverage mask size. + See glSampleCoverage. + + + + + GL_SCISSOR_BOX + + + + + params returns four values: + the + x + and + y + window coordinates of the scissor box, + followed by its width and height. + Initially the + x + and + y + window coordinates are both 0 and the + width and height are set to the size of the window. + See glScissor. + + + + + GL_SCISSOR_TEST + + + + + params returns a single boolean value indicating whether scissoring is + enabled. The initial value is GL_FALSE. + See glScissor. + + + + + GL_STENCIL_BACK_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_FUNC + + + + + params returns one value, + a symbolic constant indicating what function is used for back-facing polygons to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_PASS_DEPTH_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_PASS_DEPTH_PASS + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_REF + + + + + params returns one value, + the reference value that is compared with the contents of the stencil + buffer for back-facing polygons. The initial value is 0. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_VALUE_MASK + + + + + params returns one value, + the mask that is used for back-facing polygons to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_WRITEMASK + + + + + params returns one value, + the mask that controls writing of the stencil bitplanes for back-facing polygons. The initial value + is all 1's. + See glStencilMaskSeparate. + + + + + GL_STENCIL_CLEAR_VALUE + + + + + params returns one value, + the index to which the stencil bitplanes are cleared. The initial value is + 0. + See glClearStencil. + + + + + GL_STENCIL_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOp. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_FUNC + + + + + params returns one value, + a symbolic constant indicating what function is used to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFunc. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_PASS_DEPTH_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOp. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_PASS_DEPTH_PASS + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOp. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_REF + + + + + params returns one value, + the reference value that is compared with the contents of the stencil + buffer. The initial value is 0. + See glStencilFunc. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_TEST + + + + + params returns a single boolean value indicating whether stencil testing + of fragments is enabled. The initial value is GL_FALSE. + See glStencilFunc and glStencilOp. + + + + + GL_STENCIL_VALUE_MASK + + + + + params returns one value, + the mask that is used to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFunc. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_WRITEMASK + + + + + params returns one value, + the mask that controls writing of the stencil bitplanes. The initial value + is all 1's. + See glStencilMask. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilMaskSeparate. + + + + + GL_STEREO + + + + + params returns a single boolean value indicating whether stereo buffers + (left and right) are supported. + + + + + GL_SUBPIXEL_BITS + + + + + params returns one value, + an estimate of the number of bits of subpixel resolution that are used to + position rasterized geometry in window coordinates. The value must be at least 4. + + + + + GL_TEXTURE_BINDING_1D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_1D_ARRAY + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D_ARRAY. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D_ARRAY + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_ARRAY. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D_MULTISAMPLE + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE_ARRAY. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_3D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_3D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_BUFFER + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_BUFFER. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_CUBE_MAP + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_CUBE_MAP. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_RECTANGLE + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_RECTANGLE. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_COMPRESSION_HINT + + + + + params returns a single value indicating the mode of the texture + compression hint. The initial value is GL_DONT_CARE. + + + + + GL_TEXTURE_BUFFER_BINDING + + + + + params returns a single value, the name of the texture buffer object + currently bound. The initial value is 0. + See glBindBuffer. + + + + + GL_TIMESTAMP + + + + + params returns a single value, the 64-bit value of the current + GL time. + See glQueryCounter. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING + + + + + When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_TRANSFORM_FEEDBACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed transform feedback attribute stream. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_START + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the start offset of the binding range for each + transform feedback attribute stream. The initial value is 0 for all streams. + See glBindBufferRange. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the size of the binding range for each + transform feedback attribute stream. The initial value is 0 for all streams. + See glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_BINDING + + + + + When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_UNIFORM_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed uniform buffer binding point. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_START + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the start offset of the binding range for each + indexed uniform buffer binding. The initial value is 0 for all bindings. + See glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_SIZE + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the size of the binding range for each + indexed uniform buffer binding. The initial value is 0 for all bindings. + See glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT + + + + + params returns a single value, the minimum required alignment + for uniform buffer sizes and offset. The initial value is 1. + See glUniformBlockBinding. + + + + + GL_UNPACK_ALIGNMENT + + + + + params returns one value, + the byte alignment used for reading pixel data from memory. The initial + value is 4. + See glPixelStore. + + + + + GL_UNPACK_IMAGE_HEIGHT + + + + + params returns one value, + the image height used for reading pixel data from memory. The initial + is 0. + See glPixelStore. + + + + + GL_UNPACK_LSB_FIRST + + + + + params returns a single boolean value indicating whether single-bit + pixels being read from memory are read first from the least significant + bit of each unsigned byte. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_UNPACK_ROW_LENGTH + + + + + params returns one value, + the row length used for reading pixel data from memory. The initial value + is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_IMAGES + + + + + params returns one value, + the number of pixel images skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_PIXELS + + + + + params returns one value, + the number of pixel locations skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_ROWS + + + + + params returns one value, + the number of rows of pixel locations skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SWAP_BYTES + + + + + params returns a single boolean value indicating whether the bytes of + two-byte and four-byte pixel indices and components are swapped after being + read from memory. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_NUM_EXTENSIONS + + + + + params returns one value, + the number of extensions supported by the GL implementation for the current context. + See glGetString. + + + + + GL_MAJOR_VERSION + + + + + params returns one value, + the major version number of the OpenGL API supported by the current context. + + + + + GL_MINOR_VERSION + + + + + params returns one value, + the minor version number of the OpenGL API supported by the current context. + + + + + GL_CONTEXT_FLAGS + + + + + params returns one value, + the flags with which the context was created (such as debugging functionality). + + + + + GL_VERTEX_PROGRAM_POINT_SIZE + + + + + params returns a single boolean value indicating whether vertex + program point size mode is enabled. If enabled, and a vertex shader is active, then the + point size is taken from the shader built-in gl_PointSize. If disabled, + and a vertex shader is active, then the point size is taken from the point state as specified + by glPointSize. + The initial value is GL_FALSE. + + + + + GL_VIEWPORT + + + + + params returns four values: + the + x + and + y + window coordinates of the viewport, + followed by its width and height. + Initially the + x + and + y + window coordinates are both set to 0, + and the width and height are set to the width and height of the window into + which the GL will do its rendering. + See glViewport. + + + + + + Many of the boolean parameters can also be queried more easily using + glIsEnabled. + + + Notes + + The following parameters return the associated value for the active texture unit: + GL_TEXTURE_1D, GL_TEXTURE_BINDING_1D, + GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D and GL_TEXTURE_BINDING_3D. + + + GL_MAX_RECTANGLE_TEXTURE_SIZE, GL_MAX_TEXTURE_BUFFER_SIZE, + GL_UNIFORM_BUFFER_BINDING, GL_TEXTURE_BUFFER_BINDING, + GL_MAX_VERTEX_UNIFORM_BLOCKS, GL_MAX_FRAGMENT_UNIFORM_BLOCKS, + GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS, GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS + GL_MAX_COMBINED_UNIFORM_BLOCKS, GL_MAX_UNIFORM_BLOCK_SIZE, + and GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT + are available only if the GL version is 3.1 or greater. + + + GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS, GL_MAX_GEOMETRY_UNIFORM_BLOCKS, + GL_MAX_GEOMETRY_INPUT_COMPONENTS, GL_MAX_GEOMETRY_OUTPUT_COMPONENTS, + GL_MAX_GEOMETRY_OUTPUT_VERTICES, GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS and + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS are available only if the GL version is 3.2 or greater. + + + glGetInteger64v and glGetInteger64i_v are available only if + the GL version is 3.2 or greater. + + + GL_MAX_DUALSOURCE_DRAW_BUFFERS, GL_SAMPLER_BINDING, and + GL_TIMESTAMP are available only if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_VALUE is generated on any of glGetBooleani_v, + glGetIntegeri_v, or glGetInteger64i_v if + index is outside of the valid range for the indexed state target. + + + See Also + + glGetActiveUniform, + glGetAttachedShaders, + glGetAttribLocation, + glGetBufferParameter, + glGetBufferPointerv, + glGetBufferSubData, + glGetCompressedTexImage, + glGetError, + glGetProgram, + glGetProgramInfoLog, + glGetQueryiv, + glGetQueryObject, + glGetShader, + glGetShaderInfoLog, + glGetShaderSource, + glGetString, + glGetTexImage, + glGetTexLevelParameter, + glGetTexParameter, + glGetUniform, + glGetUniformLocation, + glGetVertexAttrib, + glGetVertexAttribPointerv, + glIsEnabled + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetActiveAttrib.xml b/upstream-man-pages/man3/glGetActiveAttrib.xml new file mode 100644 index 0000000..070225b --- /dev/null +++ b/upstream-man-pages/man3/glGetActiveAttrib.xml @@ -0,0 +1,220 @@ + + + + + glGetActiveAttrib + 3G + + + glGetActiveAttrib + Returns information about an active attribute variable for the specified program object + + C Specification + + + void glGetActiveAttrib + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + index + + Specifies the index of the attribute variable + to be queried. + + + + bufSize + + Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name. + + + + length + + Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed. + + + + size + + Returns the size of the attribute + variable. + + + + type + + Returns the data type of the attribute + variable. + + + + name + + Returns a null terminated string containing + the name of the attribute variable. + + + + + Description + glGetActiveAttrib returns information + about an active attribute variable in the program object + specified by program. The number of + active attributes can be obtained by calling + glGetProgram + with the value GL_ACTIVE_ATTRIBUTES. A + value of 0 for index selects the first + active attribute variable. Permissible values for + index range from 0 to the number of + active attribute variables minus 1. + + A vertex shader may use either built-in attribute + variables, user-defined attribute variables, or both. Built-in + attribute variables have a prefix of "gl_" and + reference conventional OpenGL vertex attribtes (e.g., + gl_Vertex, + gl_Normal, etc., see the OpenGL Shading + Language specification for a complete list.) User-defined + attribute variables have arbitrary names and obtain their values + through numbered generic vertex attributes. An attribute + variable (either built-in or user-defined) is considered active + if it is determined during the link operation that it may be + accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully. + + The size of the character buffer required to store the + longest attribute variable name in + program can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned attribute name. The size of this character buffer + is passed in bufSize, and a pointer to + this character buffer is passed in + name. + + glGetActiveAttrib returns the name of + the attribute variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument. + + The type argument will return a + pointer to the attribute variable's data type. The symbolic + constants GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3, + GL_INT, + GL_INT_VEC2, + GL_INT_VEC3, + GL_INT_VEC4, + GL_UNSIGNED_INT_VEC, + GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3, or + GL_UNSIGNED_INT_VEC4 may be returned. The + size argument will return the size of the + attribute, in units of the type returned in + type. + + The list of active attribute variables may include both + built-in attribute variables (which begin with the prefix + "gl_") as well as user-defined attribute variable + names. + + This function will return as much information as it can + about the specified active attribute variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active attribute variables in + program. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS. + + glGetProgram + with argument GL_ACTIVE_ATTRIBUTES or + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. + + glIsProgram + + See Also + glBindAttribLocation, + glLinkProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetActiveUniform.xml b/upstream-man-pages/man3/glGetActiveUniform.xml new file mode 100644 index 0000000..6df305e --- /dev/null +++ b/upstream-man-pages/man3/glGetActiveUniform.xml @@ -0,0 +1,738 @@ + + + + + glGetActiveUniform + 3G + + + glGetActiveUniform + Returns information about an active uniform variable for the specified program object + + C Specification + + + void glGetActiveUniform + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + index + + Specifies the index of the uniform variable to + be queried. + + + + bufSize + + Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name. + + + + length + + Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed. + + + + size + + Returns the size of the uniform + variable. + + + + type + + Returns the data type of the uniform + variable. + + + + name + + Returns a null terminated string containing + the name of the uniform variable. + + + + + Description + glGetActiveUniform returns + information about an active uniform variable in the program + object specified by program. The number + of active uniform variables can be obtained by calling + glGetProgram + with the value GL_ACTIVE_UNIFORMS. A value + of 0 for index selects the first active + uniform variable. Permissible values for + index range from 0 to the number of + active uniform variables minus 1. + + Shaders may use either built-in uniform variables, + user-defined uniform variables, or both. Built-in uniform + variables have a prefix of "gl_" and reference + existing OpenGL state or values derived from such state (e.g., + gl_DepthRangeParameters, see the OpenGL + Shading Language specification for a complete list.) + User-defined uniform variables have arbitrary names and obtain + their values from the application through calls to + glUniform. + A uniform variable (either built-in or user-defined) is + considered active if it is determined during the link operation + that it may be accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully. + + The size of the character buffer required to store the + longest uniform variable name in program + can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_UNIFORM_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned uniform variable name. The size of this character + buffer is passed in bufSize, and a + pointer to this character buffer is passed in + name. + + glGetActiveUniform returns the name + of the uniform variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument. + + The type + argument will return a pointer to the uniform variable's data + type. The symbolic constants returned for uniform types are shown in the + table below. + + + + + + + + Returned Symbolic Contant + + + Shader Uniform Type + + + + + + + GL_FLOAT + + + float + + + + + GL_FLOAT_VEC2 + + + vec2 + + + + + GL_FLOAT_VEC3 + + + vec3 + + + + + GL_FLOAT_VEC4 + + + vec4 + + + + + GL_INT + + + int + + + + + GL_INT_VEC2 + + + ivec2 + + + + + GL_INT_VEC3 + + + ivec3 + + + + + GL_INT_VEC4 + + + ivec4 + + + + + GL_UNSIGNED_INT + + + unsigned int + + + + + GL_UNSIGNED_INT_VEC2 + + + uvec2 + + + + + GL_UNSIGNED_INT_VEC3 + + + uvec3 + + + + + GL_UNSIGNED_INT_VEC4 + + + uvec4 + + + + + GL_BOOL + + + bool + + + + + GL_BOOL_VEC2 + + + bvec2 + + + + + GL_BOOL_VEC3 + + + bvec3 + + + + + GL_BOOL_VEC4 + + + bvec4 + + + + + GL_FLOAT_MAT2 + + + mat2 + + + + + GL_FLOAT_MAT3 + + + mat3 + + + + + GL_FLOAT_MAT4 + + + mat4 + + + + + GL_FLOAT_MAT2x3 + + + mat2x3 + + + + + GL_FLOAT_MAT2x4 + + + mat2x4 + + + + + GL_FLOAT_MAT3x2 + + + mat3x2 + + + + + GL_FLOAT_MAT3x4 + + + mat3x4 + + + + + GL_FLOAT_MAT4x2 + + + mat4x2 + + + + + GL_FLOAT_MAT4x3 + + + mat4x3 + + + + + GL_SAMPLER_1D + + + sampler1D + + + + + GL_SAMPLER_2D + + + sampler2D + + + + + GL_SAMPLER_3D + + + sampler3D + + + + + GL_SAMPLER_CUBE + + + samplerCube + + + + + GL_SAMPLER_1D_SHADOW + + + sampler1DShadow + + + + + GL_SAMPLER_2D_SHADOW + + + sampler2DShadow + + + + + GL_SAMPLER_1D_ARRAY + + + sampler1DArray + + + + + GL_SAMPLER_2D_ARRAY + + + sampler2DArray + + + + + GL_SAMPLER_1D_ARRAY_SHADOW + + + sampler1DArrayShadow + + + + + GL_SAMPLER_2D_ARRAY_SHADOW + + + sampler2DArrayShadow + + + + + GL_SAMPLER_2D_MULTISAMPLE + + + sampler2DMS + + + + + GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + + sampler2DMSArray + + + + + GL_SAMPLER_CUBE_SHADOW + + + samplerCubeShadow + + + + + GL_SAMPLER_BUFFER + + + samplerBuffer + + + + + GL_SAMPLER_2D_RECT + + + sampler2DRect + + + + + GL_SAMPLER_2D_RECT_SHADOW + + + sampler2DRectShadow + + + + + GL_INT_SAMPLER_1D + + + isampler1D + + + + + GL_INT_SAMPLER_2D + + + isampler2D + + + + + GL_INT_SAMPLER_3D + + + isampler3D + + + + + GL_INT_SAMPLER_CUBE + + + isamplerCube + + + + + GL_INT_SAMPLER_1D_ARRAY + + + isampler1DArray + + + + + GL_INT_SAMPLER_2D_ARRAY + + + isampler2DArray + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE + + + isampler2DMS + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + isampler2DMSArray + + + + + GL_INT_SAMPLER_BUFFER + + + isamplerBuffer + + + + + GL_INT_SAMPLER_2D_RECT + + + isampler2DRect + + + + + GL_UNSIGNED_INT_SAMPLER_1D + + + usampler1D + + + + + GL_UNSIGNED_INT_SAMPLER_2D + + + usampler2D + + + + + GL_UNSIGNED_INT_SAMPLER_3D + + + usampler3D + + + + + GL_UNSIGNED_INT_SAMPLER_CUBE + + + usamplerCube + + + + + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + + usampler2DMS + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + usampler2DMSArray + + + + + GL_UNSIGNED_INT_SAMPLER_BUFFER + + + usamplerBuffer + + + + + GL_UNSIGNED_INT_SAMPLER_2D_RECT + + + usampler2DRect + + + + + + + + If one or more elements of an array are active, the name + of the array is returned in name, the + type is returned in type, and the + size parameter returns the highest array + element index used, plus one, as determined by the compiler + and/or linker. Only one active uniform variable will be reported + for a uniform array. + + Uniform variables that are declared as structures or + arrays of structures will not be returned directly by this + function. Instead, each of these uniform variables will be + reduced to its fundamental components containing the + "." and "[]" operators such that each of the + names is valid as an argument to + glGetUniformLocation. + Each of these reduced uniform variables is counted as one active + uniform variable and is assigned an index. A valid name cannot + be a structure, an array of structures, or a subcomponent of a + vector or matrix. + + The size of the uniform variable will be returned in + size. Uniform variables other than arrays + will have a size of 1. Structures and arrays of structures will + be reduced as described earlier, such that each of the names + returned will be a data type in the earlier list. If this + reduction results in an array, the size returned will be as + described for uniform arrays; otherwise, the size returned will + be 1. + + The list of active uniform variables may include both + built-in uniform variables (which begin with the prefix + "gl_") as well as user-defined uniform variable + names. + + This function will return as much information as it can + about the specified active uniform variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active uniform variables in + program. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS. + + glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH. + + glIsProgram + + See Also + glGetUniform, + glGetUniformLocation, + glLinkProgram, + glUniform, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetActiveUniformBlock.xml b/upstream-man-pages/man3/glGetActiveUniformBlock.xml new file mode 100755 index 0000000..54740c8 --- /dev/null +++ b/upstream-man-pages/man3/glGetActiveUniformBlock.xml @@ -0,0 +1,149 @@ + + + + + + + 2010 + Khronos Group + + + glGetActiveUniformBlock + 3G + + + glGetActiveUniformBlock + query information about an active uniform block + + C Specification + + + void glGetActiveUniformBlockiv + GLuint program + GLuint uniformBlockIndex + GLenum pname + GLint params + + + + Parameters + + + program + + + Specifies the name of a program containing the uniform block. + + + + + uniformBlockIndex + + + Specifies the index of the uniform block within program. + + + + + pname + + + Specifies the name of the parameter to query. + + + + + params + + + Specifies the address of a variable to receive the result of the query. + + + + + + Description + + glGetActiveUniformBlockiv retrieves information about an active uniform block within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. + + + Upon success, the uniform block parameter(s) specified by pname are returned in params. If an error + occurs, nothing will be written to params. + + + If pname is GL_UNIFORM_BLOCK_BINDING, then the index of the uniform buffer binding point + last selected by the uniform block specified by uniformBlockIndex for program is returned. If + no uniform block has been previously specified, zero is returned. + + + If pname is GL_UNIFORM_BLOCK_DATA_SIZE, then the implementation-dependent minimum total buffer + object size, in basic machine units, required to hold all active uniforms in the uniform block identified by uniformBlockIndex + is returned. It is neither guaranteed nor expected that a given implementation will arrange uniform values as tightly packed in a buffer + object. The exception to this is the std140 uniform block layout, which guarantees specific packing behavior and does not + require the application to query for offsets and strides. In this case the minimum size may still be queried, even though it is determined in + advance based only on the uniform block declaration. + + + If pname is GL_UNIFORM_BLOCK_NAME_LENGTH, then the total length (including the nul terminator) of + the name of the uniform block identified by uniformBlockIndex is returned. + + + If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS, then the number of active uniforms in the uniform + block identified by uniformBlockIndex is returned. + + + If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES, then a list of the active uniform indices + for the uniform block identified by uniformBlockIndex is returned. The number of elements that will be written to + params is the value of GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS for uniformBlockIndex. + + + If pname is GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER, GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER, + or GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER, then a boolean value indicating whether the uniform block identified by + uniformBlockIndex is referenced by the vertex, geometry, or fragment programming stages of program, respectively, is returned. + + + Errors + + GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. + + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + Notes + + glGetActiveUniformBlockiv is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniformBlockName, + glGetUniformBlockIndex, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetActiveUniformBlockName.xml b/upstream-man-pages/man3/glGetActiveUniformBlockName.xml new file mode 100644 index 0000000..a215c47 --- /dev/null +++ b/upstream-man-pages/man3/glGetActiveUniformBlockName.xml @@ -0,0 +1,132 @@ + + + + + + + 2010 + Khronos Group + + + glGetActiveUniformBlockName + 3G + + + glGetActiveUniformBlockName + retrieve the name of an active uniform block + + C Specification + + + void glGetActiveUniformBlockName + GLuint program + GLuint uniformBlockIndex + GLsizei bufSize + GLsizei *length + GLchar *uniformBlockName + + + + Parameters + + + program + + + Specifies the name of a program containing the uniform block. + + + + + uniformBlockIndex + + + Specifies the index of the uniform block within program. + + + + + bufSize + + + Specifies the size of the buffer addressed by uniformBlockName. + + + + + length + + + Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. + + + + + uniformBlockName + + + Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. + + + + + + Description + + glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex + within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. + + + Upon success, the name of the uniform block identified by unifomBlockIndex is returned into + uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, + excluding the nul terminator, is returned in length. If length is NULL, no length is returned. + + + bufSize contains the maximum number of characters (including the nul terminator) that will be written into + uniformBlockName. + + + If an error occurs, nothing will be written to uniformBlockName or length. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. + + + Notes + + glGetActiveUniformBlockName is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniformBlock, + glGetUniformBlockIndex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetActiveUniformName.xml b/upstream-man-pages/man3/glGetActiveUniformName.xml new file mode 100644 index 0000000..a6ed0e7 --- /dev/null +++ b/upstream-man-pages/man3/glGetActiveUniformName.xml @@ -0,0 +1,129 @@ + + + + + + + 2010 + Khronos Group + + + glGetActiveUniformName + 3G + + + glGetActiveUniformName + query the name of an active uniform + + C Specification + + + void glGetActiveUniformName + GLuint program + GLuint uniformIndex + GLsizei bufSize + GLsizei *length + GLchar *uniformName + + + + + Parameters + + + program + + + Specifies the program containing the active uniform index uniformIndex. + + + + + uniformIndex + + + Specifies the index of the active uniform whose name to query. + + + + + bufSize + + + Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. + + + + + length + + + Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. + + + + + uniformName + + + Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. + + + + + + Description + + glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. + If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into + the array whose address is specified by uniformName. If length is not NULL, the number of characters + that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address + is specified in length. If length is NULL, no length is returned. The length of the longest uniform + name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with + glGetProgram. + + + If glGetActiveUniformName is not successful, nothing is written to length or uniformName. + + + program must be the name of a program for which the command glLinkProgram + has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because + the number of active uniforms exceeded the limit. + + + uniformIndex must be an active uniform index of the program program, in the range zero to + GL_ACTIVE_UNIFORMS - 1. The value of GL_ACTIVE_UNIFORMS can be queried with + glGetProgram. + + + Errors + + GL_INVALID_VALUE is generated if uniformIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORMS. + + + GL_INVALID_VALUE is generated if bufSize is negative. + + + GL_INVALID_VALUE is generated if program is not the name of a program object for which + glLinkProgram has been issued. + + + See Also + + glGetActiveUniform, + glGetUniformIndices, + glGetProgram, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetActiveUniformsiv.xml b/upstream-man-pages/man3/glGetActiveUniformsiv.xml new file mode 100644 index 0000000..3b5e551 --- /dev/null +++ b/upstream-man-pages/man3/glGetActiveUniformsiv.xml @@ -0,0 +1,673 @@ + + + + + glGetActiveUniformsiv + 3G + + + glGetActiveUniformsiv + Returns information about several active uniform variables for the specified program object + + C Specification + + + void glGetActiveUniformsiv + GLuint program + GLsizei uniformCount + const GLuint *uniformIndices + GLenum pname + GLint *params + + + + Parameters + + + program + + Specifies the program object to be queried. + + + + uniformCount + + Specifies both the number of elements in the array of indices uniformIndices and the + number of parameters written to params upon successful return. + + + + uniformIndices + + Specifies the address of an array of uniformCount integers containing the indices of + uniforms within program whose parameter pname pname. + + + + pname + + Specifies the property of the each uniform in uniformIndices that should be + written into the corresponding element of params. + + + + params + + Specifies the address of an array of uniformCount integers which are to + receive the value of pname for each uniform in uniformIndices. + + + + + Description + + glGetActiveUniformsiv queries the value of the parameter named pname + for each of the uniforms within program whose indices are specified in the array of + uniformCount unsigned integers uniformIndices. Upon success, + the value of the parameter for each uniform is written into the corresponding entry in the array whose + address is given in params. If an error is generated, nothing is written into + params. + + + If pname is GL_UNIFORM_TYPE, then an array identifying the types + of uniforms specified by the corresponding array of uniformIndices is returned. The + returned types can be any of the values from the following table: + + + + + + + + Returned Symbolic Contant + + + Shader Uniform Type + + + + + + + GL_FLOAT + + + float + + + + + GL_FLOAT_VEC2 + + + vec2 + + + + + GL_FLOAT_VEC3 + + + vec3 + + + + + GL_FLOAT_VEC4 + + + vec4 + + + + + GL_INT + + + int + + + + + GL_INT_VEC2 + + + ivec2 + + + + + GL_INT_VEC3 + + + ivec3 + + + + + GL_INT_VEC4 + + + ivec4 + + + + + GL_UNSIGNED_INT + + + unsigned int + + + + + GL_UNSIGNED_INT_VEC2 + + + uvec2 + + + + + GL_UNSIGNED_INT_VEC3 + + + uvec3 + + + + + GL_UNSIGNED_INT_VEC4 + + + uvec4 + + + + + GL_BOOL + + + bool + + + + + GL_BOOL_VEC2 + + + bvec2 + + + + + GL_BOOL_VEC3 + + + bvec3 + + + + + GL_BOOL_VEC4 + + + bvec4 + + + + + GL_FLOAT_MAT2 + + + mat2 + + + + + GL_FLOAT_MAT3 + + + mat3 + + + + + GL_FLOAT_MAT4 + + + mat4 + + + + + GL_FLOAT_MAT2x3 + + + mat2x3 + + + + + GL_FLOAT_MAT2x4 + + + mat2x4 + + + + + GL_FLOAT_MAT3x2 + + + mat3x2 + + + + + GL_FLOAT_MAT3x4 + + + mat3x4 + + + + + GL_FLOAT_MAT4x2 + + + mat4x2 + + + + + GL_FLOAT_MAT4x3 + + + mat4x3 + + + + + GL_SAMPLER_1D + + + sampler1D + + + + + GL_SAMPLER_2D + + + sampler2D + + + + + GL_SAMPLER_3D + + + sampler3D + + + + + GL_SAMPLER_CUBE + + + samplerCube + + + + + GL_SAMPLER_1D_SHADOW + + + sampler1DShadow + + + + + GL_SAMPLER_2D_SHADOW + + + sampler2DShadow + + + + + GL_SAMPLER_1D_ARRAY + + + sampler1DArray + + + + + GL_SAMPLER_2D_ARRAY + + + sampler2DArray + + + + + GL_SAMPLER_1D_ARRAY_SHADOW + + + sampler1DArrayShadow + + + + + GL_SAMPLER_2D_ARRAY_SHADOW + + + sampler2DArrayShadow + + + + + GL_SAMPLER_2D_MULTISAMPLE + + + sampler2DMS + + + + + GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + + sampler2DMSArray + + + + + GL_SAMPLER_CUBE_SHADOW + + + samplerCubeShadow + + + + + GL_SAMPLER_BUFFER + + + samplerBuffer + + + + + GL_SAMPLER_2D_RECT + + + sampler2DRect + + + + + GL_SAMPLER_2D_RECT_SHADOW + + + sampler2DRectShadow + + + + + GL_INT_SAMPLER_1D + + + isampler1D + + + + + GL_INT_SAMPLER_2D + + + isampler2D + + + + + GL_INT_SAMPLER_3D + + + isampler3D + + + + + GL_INT_SAMPLER_CUBE + + + isamplerCube + + + + + GL_INT_SAMPLER_1D_ARRAY + + + isampler1DArray + + + + + GL_INT_SAMPLER_2D_ARRAY + + + isampler2DArray + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE + + + isampler2DMS + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + isampler2DMSArray + + + + + GL_INT_SAMPLER_BUFFER + + + isamplerBuffer + + + + + GL_INT_SAMPLER_2D_RECT + + + isampler2DRect + + + + + GL_UNSIGNED_INT_SAMPLER_1D + + + usampler1D + + + + + GL_UNSIGNED_INT_SAMPLER_2D + + + usampler2D + + + + + GL_UNSIGNED_INT_SAMPLER_3D + + + usampler3D + + + + + GL_UNSIGNED_INT_SAMPLER_CUBE + + + usamplerCube + + + + + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + + usampler2DMS + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + usampler2DMSArray + + + + + GL_UNSIGNED_INT_SAMPLER_BUFFER + + + usamplerBuffer + + + + + GL_UNSIGNED_INT_SAMPLER_2D_RECT + + + usampler2DRect + + + + + + + + If pname is GL_UNIFORM_SIZE, then an array identifying the + size of the uniforms specified by the corresponding array of uniformIndices is + returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. + For active uniforms that are arrays, the size is the number of active elements in the array; + for all other uniforms, the size is one. + + + If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the + length, including the terminating null character, of the uniform name strings specified by the corresponding + array of uniformIndices is returned. + + + If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the + the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices + is returned. The uniform block index of a uniform associated with the default uniform block is -1. + + + If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer + offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic + machine units, relative to the beginning of the uniform block in the buffer object data store. For uniforms + in the default uniform block, -1 will be returned. + + + If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the + stride between elements, in basic machine units, of each of the uniforms specified by the corresponding array of + uniformIndices is returned. The stride of a uniform associated with the default uniform + block is -1. Note that this information only makes sense for uniforms that are arrays. For uniforms that are + not arrays, but are declared in a named uniform block, an array stride of zero is returned. + + + If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride + between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms + specified by the corresponding array of uniformIndices is returned. The matrix stride of a + uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms + that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of + zero is returned. + + + If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each + of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A + value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default + uniform block, or a non-matrix. + + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + uniformCount is greater than or equal to the + value of GL_ACTIVE_UNIFORMS for + program. + + GL_INVALID_ENUM is generated if pname + is not an accepted token. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS. + + glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH. + + glIsProgram + + See Also + glGetUniform, + glGetActiveUniform, + glGetUniformLocation, + glLinkProgram, + glUniform, + glUseProgram + + Copyright + + Copyright 2011 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetAttachedShaders.xml b/upstream-man-pages/man3/glGetAttachedShaders.xml new file mode 100644 index 0000000..a052d6e --- /dev/null +++ b/upstream-man-pages/man3/glGetAttachedShaders.xml @@ -0,0 +1,110 @@ + + + + + glGetAttachedShaders + 3G + + + glGetAttachedShaders + Returns the handles of the shader objects attached to a program object + + C Specification + + + void glGetAttachedShaders + GLuint program + GLsizei maxCount + GLsizei *count + GLuint *shaders + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + maxCount + + Specifies the size of the array for storing + the returned object names. + + + + count + + Returns the number of names actually returned + in objects. + + + + shaders + + Specifies an array that is used to return the + names of attached shader objects. + + + + + Description + glGetAttachedShaders returns the + names of the shader objects attached to + program. The names of shader objects that + are attached to program will be returned + in shaders. The actual number of shader + names written into shaders is returned in + count. If no shader objects are attached + to program, count + is set to 0. The maximum number of shader names that may be + returned in shaders is specified by + maxCount. + + If the number of names actually returned is not required + (for instance, if it has just been obtained by calling + glGetProgram), + a value of NULL may be passed for count. If + no shader objects are attached to + program, a value of 0 will be returned in + count. The actual number of attached + shaders can be obtained by calling + glGetProgram + with the value GL_ATTACHED_SHADERS. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + maxCount is less than 0. + + + Associated Gets + glGetProgram + with argument GL_ATTACHED_SHADERS + + glIsProgram + + See Also + glAttachShader, + glDetachShader. + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetAttribLocation.xml b/upstream-man-pages/man3/glGetAttribLocation.xml new file mode 100644 index 0000000..39bc04a --- /dev/null +++ b/upstream-man-pages/man3/glGetAttribLocation.xml @@ -0,0 +1,104 @@ + + + + + glGetAttribLocation + 3G + + + glGetAttribLocation + Returns the location of an attribute variable + + C Specification + + + GLint glGetAttribLocation + GLuint program + const GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + name + + Points to a null terminated string containing + the name of the attribute variable whose location is + to be queried. + + + + + Description + glGetAttribLocation queries the + previously linked program object specified by + program for the attribute variable + specified by name and returns the index + of the generic vertex attribute that is bound to that attribute + variable. If name is a matrix attribute + variable, the index of the first column of the matrix is + returned. If the named attribute variable is not an active + attribute in the specified program object or if + name starts with the reserved prefix + "gl_", a value of -1 is returned. + + The association between an attribute variable name and a + generic attribute index can be specified at any time by calling + glBindAttribLocation. + Attribute bindings do not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for attribute variables remain fixed until the + next link command occurs. The attribute values can only be + queried after a link if the link was successful. + glGetAttribLocation returns the binding + that actually went into effect the last time + glLinkProgram + was called for the specified program object. Attribute bindings + that have been specified since the last link operation are not + returned by glGetAttribLocation. + + Errors + GL_INVALID_OPERATION is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + + Associated Gets + glGetActiveAttrib + with argument program and the index of an + active attribute + + glIsProgram + + See Also + glBindAttribLocation, + glLinkProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetBufferParameter.xml b/upstream-man-pages/man3/glGetBufferParameter.xml new file mode 100644 index 0000000..cb3df4e --- /dev/null +++ b/upstream-man-pages/man3/glGetBufferParameter.xml @@ -0,0 +1,146 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferParameteriv + 3G + + + glGetBufferParameteriv + return parameters of a buffer object + + C Specification + + + void glGetBufferParameteriv + GLenum target + GLenum value + GLint * data + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + value + + + Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. + + + + + data + + + Returns the requested parameter. + + + + + + Description + + glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. + + + value names a specific buffer object parameter, as follows: + + + + GL_BUFFER_ACCESS + + + params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. + + + + + GL_BUFFER_MAPPED + + + params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. + + + + + GL_BUFFER_SIZE + + + params returns the size of the buffer object, measured in bytes. + The initial value is 0. + + + + + GL_BUFFER_USAGE + + + params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. + + + + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if target or value is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetBufferParameteriv.xml b/upstream-man-pages/man3/glGetBufferParameteriv.xml new file mode 100644 index 0000000..07538db --- /dev/null +++ b/upstream-man-pages/man3/glGetBufferParameteriv.xml @@ -0,0 +1,149 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferParameteriv + 3G + + + glGetBufferParameteriv + return parameters of a buffer object + + C Specification + + + void glGetBufferParameteriv + GLenum target + GLenum value + GLint * data + + + + + void glGetBufferParameteri64v + GLenum target + GLenum value + GLint64 * data + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or + GL_PIXEL_UNPACK_BUFFER. + + + + + value + + + Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. + + + + + data + + + Returns the requested parameter. + + + + + + Description + + glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. + + + value names a specific buffer object parameter, as follows: + + + + GL_BUFFER_ACCESS + + + params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. + + + + + GL_BUFFER_MAPPED + + + params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. + + + + + GL_BUFFER_SIZE + + + params returns the size of the buffer object, measured in bytes. + The initial value is 0. + + + + + GL_BUFFER_USAGE + + + params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. + + + + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if target or value is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetBufferPointerv.xml b/upstream-man-pages/man3/glGetBufferPointerv.xml new file mode 100644 index 0000000..2e1e12e --- /dev/null +++ b/upstream-man-pages/man3/glGetBufferPointerv.xml @@ -0,0 +1,106 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferPointerv + 3G + + + glGetBufferPointerv + return the pointer to a mapped buffer object's data store + + C Specification + + + void glGetBufferPointerv + GLenum target + GLenum pname + GLvoid ** params + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + pname + + + Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER. + + + + + params + + + Returns the pointer value specified by pname. + + + + + + Description + + glGetBufferPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer + to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. + params is a pointer to a location in which to place the returned pointer value. + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + The initial value for the pointer is NULL. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + See Also + + glBindBuffer, + glMapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetBufferSubData.xml b/upstream-man-pages/man3/glGetBufferSubData.xml new file mode 100644 index 0000000..185c0b4 --- /dev/null +++ b/upstream-man-pages/man3/glGetBufferSubData.xml @@ -0,0 +1,128 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferSubData + 3G + + + glGetBufferSubData + returns a subset of a buffer object's data store + + C Specification + + + void glGetBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + GLvoid * data + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + offset + + + Specifies the offset into the buffer object's data store from which data will be returned, + measured in bytes. + + + + + size + + + Specifies the size in bytes of the data store region being returned. + + + + + data + + + Specifies a pointer to the location where buffer object data is returned. + + + + + + Description + + glGetBufferSubData returns some or all of the data from the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied from the data store to the memory pointed to by + data. An error is thrown if the buffer object is currently mapped, or if + offset and size together define a range beyond the bounds + of the buffer object's data store. + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. + + + GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer object being queried is mapped. + + + See Also + + glBindBuffer, + glBufferData, + glBufferSubData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetCompressedTexImage.xml b/upstream-man-pages/man3/glGetCompressedTexImage.xml new file mode 100644 index 0000000..b3278a4 --- /dev/null +++ b/upstream-man-pages/man3/glGetCompressedTexImage.xml @@ -0,0 +1,161 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetCompressedTexImage + 3G + + + glGetCompressedTexImage + return a compressed texture image + + C Specification + + + void glGetCompressedTexImage + GLenum target + GLint lod + GLvoid * img + + + + + Parameters + + + target + + + Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. + + + + + lod + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + img + + + Returns the compressed texture image. + + + + + + Description + + glGetCompressedTexImage returns the compressed texture image associated with target and lod + into img. img should be an array of + GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes. + target specifies whether the desired texture image was one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of GL_TEXTURE_CUBE_MAP_*), or + glTexImage3D (GL_TEXTURE_3D). + lod specifies the level-of-detail number of the desired image. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. + + + To minimize errors, first verify that the texture is compressed by calling + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If + the texture is compressed, then determine the amount of memory required to + store the compressed texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the + internal format of the texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_INTERNAL_FORMAT. + To store the texture for later use, associate the internal format and size + with the retrieved texture image. These data can be used by the respective + texture or subtexture loading routine used for loading target textures. + + + Errors + + GL_INVALID_VALUE is generated if lod is less than zero or greater + than the maximum number of LODs permitted by the implementation. + + + GL_INVALID_OPERATION is generated if glGetCompressedTexImage is used to retrieve a + texture that is in an uncompressed internal format. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + Associated Gets + + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED + + + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetError.xml b/upstream-man-pages/man3/glGetError.xml new file mode 100644 index 0000000..fccd61a --- /dev/null +++ b/upstream-man-pages/man3/glGetError.xml @@ -0,0 +1,139 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetError + 3G + + + glGetError + return error information + + C Specification + + + GLenum glGetError + void + + + + Description + + glGetError returns the value of the error flag. + Each detectable error is assigned a numeric code and symbolic name. + When an error occurs, + the error flag is set to the appropriate error code value. + No other errors are recorded until glGetError is called, + the error code is returned, + and the flag is reset to GL_NO_ERROR. + If a call to glGetError returns GL_NO_ERROR, + there has been no detectable error since the last call to glGetError, + or since the GL was initialized. + + + To allow for distributed implementations, + there may be several error flags. + If any single error flag has recorded an error, + the value of that flag is returned + and that flag is reset to GL_NO_ERROR + when glGetError is called. + If more than one flag has recorded an error, + glGetError returns and clears an arbitrary error flag value. + Thus, glGetError should always be called in a loop, + until it returns GL_NO_ERROR, + if all error flags are to be reset. + + + Initially, all error flags are set to GL_NO_ERROR. + + + The following errors are currently defined: + + + + GL_NO_ERROR + + + No error has been recorded. + The value of this symbolic constant is guaranteed to be 0. + + + + + GL_INVALID_ENUM + + + An unacceptable value is specified for an enumerated argument. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_VALUE + + + A numeric argument is out of range. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_OPERATION + + + The specified operation is not allowed in the current state. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_FRAMEBUFFER_OPERATION + + + The framebuffer object is not complete. The offending command + is ignored and has no other side effect than to set the error flag. + + + + + GL_OUT_OF_MEMORY + + + There is not enough memory left to execute the command. + The state of the GL is undefined, + except for the state of the error flags, + after this error is recorded. + + + + + + When an error flag is set, + results of a GL operation are undefined only if GL_OUT_OF_MEMORY + has occurred. + In all other cases, + the command generating the error is ignored and has no effect on the GL state + or frame buffer contents. + If the generating command returns a value, it returns 0. + If glGetError itself generates an error, it returns 0. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetFragDataIndex.xml b/upstream-man-pages/man3/glGetFragDataIndex.xml new file mode 100644 index 0000000..7b7949e --- /dev/null +++ b/upstream-man-pages/man3/glGetFragDataIndex.xml @@ -0,0 +1,81 @@ + + + + + + + 2010 + Khronos Group + + + glGetFragDataIndex + 3G + + + glGetFragDataIndex + query the bindings of color indices to user-defined varying out variables + + C Specification + + + GLint glGetFragDataIndex + GLuint program + const char * name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to query + + + + + name + + + The name of the user-defined varying out variable whose index to query + + + + + + Description + + glGetFragDataIndex returns the index of the fragment color to which the variable name + was bound when the program object program was last linked. If name is not a varying out + variable of program, or if an error occurs, -1 will be returned. + + + Notes + + glGetFragDataIndex is available only if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + See Also + + glCreateProgram, + glBindFragDataLocation, + glBindFragDataLocationIndexed, + glGetFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetFragDataLocation.xml b/upstream-man-pages/man3/glGetFragDataLocation.xml new file mode 100644 index 0000000..435d95f --- /dev/null +++ b/upstream-man-pages/man3/glGetFragDataLocation.xml @@ -0,0 +1,76 @@ + + + + + + + 2010 + Khronos Group + + + glGetFragDataLocation + 3G + + + glGetFragDataLocation + query the bindings of color numbers to user-defined varying out variables + + C Specification + + + GLint glGetFragDataLocation + GLuint program + const char * name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to query + + + + + name + + + The name of the user-defined varying out variable whose binding to query + + + + + + Description + + glGetFragDataLocation retrieves the assigned color number binding for the user-defined + varying out variable name for program program. program + must have previously been linked. name must be a null-terminated string. If name + is not the name of an active user-defined varying out fragment shader variable within program, -1 will + be returned. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + See Also + + glCreateProgram, + glBindFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetFramebufferAttachmentParameter.xml b/upstream-man-pages/man3/glGetFramebufferAttachmentParameter.xml new file mode 100644 index 0000000..9d72d4a --- /dev/null +++ b/upstream-man-pages/man3/glGetFramebufferAttachmentParameter.xml @@ -0,0 +1,227 @@ + + + + + + + 2010 + Khronos Group + + + glGetFramebufferAttachmentParameteriv + 3G + + + glGetFramebufferAttachmentParameteriv + retrieve information about attachments of a bound framebuffer object + + C Specification + + + void glGetFramebufferAttachmentParameter + GLenum target + GLenum attachment + GLenum pname + GLint *params + + + + + Parameters + + + target + + + Specifies the target of the query operation. + + + + + attachment + + + Specifies the attachment within target + + + + + pname + + + Specifies the parameter of attachment to query. + + + + + params + + + Specifies the address of a variable receive the value of pname for attachment. + + + + + + Description + + glGetFramebufferAttachmentParameter returns information about attachments of a bound framebuffer + object. target specifies the framebuffer binding point and must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent + to GL_DRAW_FRAMEBUFFER. + + + If the default framebuffer is bound to target then attachment must be one of + GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, or + GL_BACK_RIGHT, identifying a color buffer, GL_DEPTH, identifying the depth buffer, + or GL_STENCIL, identifying the stencil buffer. + + + If a framebuffer object is bound, then attachment must be one of GL_COLOR_ATTACHMENTi, + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT, or GL_DEPTH_STENCIL_ATTACHMENT. + i in GL_COLOR_ATTACHMENTi must be in the range zero to the value of + GL_MAX_COLOR_ATTACHMENTS - 1. + + + If attachment is GL_DEPTH_STENCIL_ATTACHMENT and different objects are bound + to the depth and stencil attachment points of target the query will fail. If the same object + is bound to both attachment points, information about that object will be returned. + + + Upon successful return from glGetFramebufferAttachmentParameteriv, if pname is + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, then params will contain one of GL_NONE, + GL_FRAMEBUFFER_DEFAULT, GL_TEXTURE, or GL_RENDERBUFFER, identifying the type of + object which contains the attached image. Other values accepted for pname depend on the type of object, as described below. + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE, no framebuffer is bound to + target. In this case querying pname GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + will return zero, and all other queries will generate an error. + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is not GL_NONE, these queries apply to all other + framebuffer types: + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE, GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE, GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE, + or GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE, then params will contain the number + of bits in the corresponding red, green, blue, alpha, depth, or stencil component of the specified attachment. Zero is returned + if the requested component is not present in attachment. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, params will + contain the format of components of the specified attachment, one of GL_FLOAT, GL_INT, + GL_UNSIGNED_INT, GL_SIGNED_NORMALIZED, or GL_UNSIGNED_NORMALIZED + for floating-point, signed integer, unsigned integer, signed normalized fixed-point, or unsigned normalized fixed-point components + respectively. Only color buffers may have integer components. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING, param will + contain the encoding of components of the specified attachment, one of GL_LINEAR or GL_SRGB + for linear or sRGB-encoded components, respectively. Only color buffer components may be sRGB-encoded; such components + are treated as described in sections 4.1.7 and 4.1.8. For the default framebuffer, color encoding is determined by the implementation. + For framebuffer objects, components are sRGB-encoded if the internal format of a color attachment is one of the color-renderable SRGB + formats. + + + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_RENDERBUFFER, then: + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, params will contain + the name of the renderbuffer object which contains the attached image. + + + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_TEXTURE, then: + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, then params will + contain the name of the texture object which contains the attached image. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL, then params + will contain the mipmap level of the texture object which contains the attached image. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a cube map texture, then params will contain the cube map + face of the cubemap texture object which contains the attached image. Otherwise params will contain the value + zero. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a layer of a three-dimensional texture or a one-or two-dimensional + array texture, then params will contain the number of the texture layer which contains the attached image. + Otherwise params will contain the value zero. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_LAYERED, then params will + contain GL_TRUE if an entire level of a three-dimesional texture, cube map texture, or one-or two-dimensional + array texture is attached. Otherwise, params will contain GL_FALSE. + + + + + Any combinations of framebuffer type and pname not described above will generate an error. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if pname is not valid for the value of + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE. + + + GL_INVALID_OPERATION is generated if attachment is not the accepted values + for target. + + + GL_INVALID_OPERATION is generated if attachment is GL_DEPTH_STENCIL_ATTACHMENT + and different objects are bound to the depth and stencil attachment points of target. + + + GL_INVALID_OPERATION is generated if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is + GL_NONE and pname is not GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME. + + + See Also + + glGenFramebuffers, + glBindFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetMultisample.xml b/upstream-man-pages/man3/glGetMultisample.xml new file mode 100644 index 0000000..2b021cc --- /dev/null +++ b/upstream-man-pages/man3/glGetMultisample.xml @@ -0,0 +1,95 @@ + + + + + + + 2010 + Khronos Group + + + glGetMultisamplefv + 3G + + + glGetMultisamplefv + retrieve the location of a sample + + C Specification + + + void glGetMultisamplefv + GLenum pname + GLuint index + GLfloat *val + + + + + Parameters + + + pname + + + Specifies the sample parameter name. pname must be GL_SAMPLE_POSITION. + + + + + index + + + Specifies the index of the sample whose position to query. + + + + + val + + + Specifies the address of an array to receive the position of the sample. + + + + + + Description + + glGetMultisamplefv queries the location of a given sample. pname + specifies the sample parameter to retrieve and must be GL_SAMPLE_POSITION. index + corresponds to the sample for which the location should be returned. The sample location is returned as two floating-point + values in val[0] and val[1], each between 0 and 1, corresponding to the x + and y locations respectively in the GL pixel space of that sample. (0.5, 0.5) this corresponds to the + pixel center. index must be between zero and the value of GL_SAMPLES - 1. + + + If the multisample mode does not have fixed sample locations, the returned values may only reflect the locations of samples + within some pixels. + + + Errors + + GL_INVALID_ENUM is generated if pname is not one GL_SAMPLE_POSITION. + + + GL_INVALID_VALUE is generated if index is greater than or equal to the value of + GL_SAMPLES. + + + See Also + + glGenFramebuffers, + glBindFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetProgram.xml b/upstream-man-pages/man3/glGetProgram.xml new file mode 100644 index 0000000..2f73c4e --- /dev/null +++ b/upstream-man-pages/man3/glGetProgram.xml @@ -0,0 +1,321 @@ + + + + + glGetProgram + 3G + + + glGetProgramiv + Returns a parameter from a program object + + C Specification + + + void glGetProgramiv + GLuint program + GLenum pname + GLint *params + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + pname + + Specifies the object parameter. Accepted + symbolic names are + GL_DELETE_STATUS, + GL_LINK_STATUS, + GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS, + GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_BLOCKS, + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH, + GL_ACTIVE_UNIFORM_MAX_LENGTH, + GL_TRANSFORM_FEEDBACK_BUFFER_MODE, + GL_TRANSFORM_FEEDBACK_VARYINGS, + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, and + GL_GEOMETRY_OUTPUT_TYPE. + + + + params + + Returns the requested object parameter. + + + + + Description + glGetProgram + returns in params + the value of a parameter for a specific program object. The following parameters are defined: + + + + GL_DELETE_STATUS + + + + params returns + GL_TRUE if + program is currently flagged + for deletion, and GL_FALSE + otherwise. + + + + + GL_LINK_STATUS + + + + params returns + GL_TRUE if the last link + operation on program was + successful, and GL_FALSE + otherwise. + + + + + GL_VALIDATE_STATUS + + + + params returns + GL_TRUE or if the last + validation operation on + program was successful, and + GL_FALSE + otherwise. + + + + + GL_INFO_LOG_LENGTH + + + + params returns the + number of characters in the information log for + program including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If program has no + information log, a value of 0 is + returned. + + + + + GL_ATTACHED_SHADERS + + + + params returns the + number of shader objects attached to + program. + + + + + GL_ACTIVE_ATTRIBUTES + + + + params returns the + number of active attribute variables for + program. + + + + + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH + + + + params returns the + length of the longest active attribute name for + program, including the null + termination character (i.e., the size of the + character buffer required to store the longest + attribute name). If no active attributes exist, 0 is + returned. + + + + + GL_ACTIVE_UNIFORMS + + + + params returns the + number of active uniform variables for + program. + + + + + GL_ACTIVE_UNIFORM_MAX_LENGTH + + + + params returns the + length of the longest active uniform variable name + for program, including the + null termination character (i.e., the size of the + character buffer required to store the longest + uniform variable name). If no active uniform + variables exist, 0 is returned. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_MODE + + + + params returns a symbolic constant + indicating the buffer mode used when transform feedback is active. + This may be GL_SEPARATE_ATTRIBS or + GL_INTERLEAVED_ATTRIBS. + + + + + GL_TRANSFORM_FEEDBACK_VARYINGS + + + + params returns the number of varying + variables to capture in transform feedback mode for the program. + + + + + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH + + + + params returns the length of the longest + variable name to be used for transform feedback, including the null-terminator. + + + + + GL_GEOMETRY_VERTICES_OUT + + + + params returns the maximum number of vertices + that the geometry shader in program will output. + + + + + GL_GEOMETRY_INPUT_TYPE + + + + params returns a symbolic constant indicating + the primitive type accepted as input to the geometry shader contained in + program. + + + + + GL_GEOMETRY_OUTPUT_TYPE + + + + params returns a symbolic constant indicating + the primitive type that will be output by the geometry shader contained + in program. + + + + + Notes + + GL_ACTIVE_UNIFORM_BLOCKS and + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH + are available only if the GL version 3.1 or greater. + + + GL_GEOMETRY_VERTICES_OUT, GL_GEOMETRY_INPUT_TYPE + and GL_GEOMETRY_OUTPUT_TYPE are accepted only if the GL + version is 3.2 or greater. + + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL. + + GL_INVALID_OPERATION + is generated if program + does not refer to a program object. + + GL_INVALID_OPERATION is generated if + pname is GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, or GL_GEOMETRY_OUTPUT_TYPE, + and program does not contain a geometry shader. + + GL_INVALID_ENUM + is generated if pname + is not an accepted value. + + + Associated Gets + glGetActiveAttrib + with argument program + + glGetActiveUniform + with argument program + + glGetAttachedShaders + with argument program + + glGetProgramInfoLog + with argument program + + glIsProgram + + + See Also + glAttachShader, + glCreateProgram, + glDeleteProgram, + glGetShader, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetProgramInfoLog.xml b/upstream-man-pages/man3/glGetProgramInfoLog.xml new file mode 100644 index 0000000..e276597 --- /dev/null +++ b/upstream-man-pages/man3/glGetProgramInfoLog.xml @@ -0,0 +1,126 @@ + + + + + glGetProgramInfoLog + 3G + + + glGetProgramInfoLog + Returns the information log for a program object + + C Specification + + + void glGetProgramInfoLog + GLuint program + GLsizei maxLength + GLsizei *length + GLchar *infoLog + + + + Parameters + + + program + + Specifies the program object whose information + log is to be queried. + + + + maxLength + + Specifies the size of the character buffer for + storing the returned information log. + + + + length + + Returns the length of the string returned in + infoLog (excluding the null + terminator). + + + + infoLog + + Specifies an array of characters that is used + to return the information log. + + + + + Description + glGetProgramInfoLog returns the + information log for the specified program object. The + information log for a program object is modified when the + program object is linked or validated. The string that is + returned will be null terminated. + + glGetProgramInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetProgram + with the value GL_INFO_LOG_LENGTH. + + The information log for a program object is either an + empty string, or a string containing information about the last + link operation, or a string containing information about the + last validation operation. It may contain diagnostic messages, + warning messages, and other information. When a program object + is created, its information log will be a string of length + 0. + + Notes + The information log for a program object is the OpenGL + implementer's primary mechanism for conveying information about + linking and validating. Therefore, the information log can be + helpful to application developers during the development + process, even when these operations are successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + maxLength is less than 0. + + + Associated Gets + glGetProgram + with argument GL_INFO_LOG_LENGTH + + glIsProgram + + See Also + glCompileShader, + glGetShaderInfoLog, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetQueryObject.xml b/upstream-man-pages/man3/glGetQueryObject.xml new file mode 100644 index 0000000..6d728d1 --- /dev/null +++ b/upstream-man-pages/man3/glGetQueryObject.xml @@ -0,0 +1,161 @@ + + + + + + + 2005 + Sams Publishing + + + glGetQueryObject + 3G + + + glGetQueryObject + return parameters of a query object + + C Specification + + + void glGetQueryObjectiv + GLuint id + GLenum pname + GLint * params + + + + + void glGetQueryObjectuiv + GLuint id + GLenum pname + GLuint * params + + + + + void glGetQueryObjecti64v + GLuint id + GLenum pname + GLint64 * params + + + + + void glGetQueryObjectui64v + GLuint id + GLenum pname + GLuint64 * params + + + + Parameters + + + id + + + Specifies the name of a query object. + + + + + pname + + + Specifies the symbolic name of a query object parameter. + Accepted values are GL_QUERY_RESULT or GL_QUERY_RESULT_AVAILABLE. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryObject returns in params a selected parameter of the query object + specified by id. + + + pname names a specific query object parameter. pname can be as follows: + + + + GL_QUERY_RESULT + + + params returns the value of the query object's passed samples counter. + The initial value is 0. + + + + + GL_QUERY_RESULT_AVAILABLE + + + params returns whether the passed samples counter is immediately available. + If a delay would occur waiting for the query result, GL_FALSE is returned. + Otherwise, GL_TRUE is returned, which also indicates that the results of all + previous queries are available as well. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetQueryObject implicitly flushes the GL pipeline so that any incomplete rendering + delimited by the occlusion query completes in finite time. + + + If multiple queries are issued using the same query object id before calling + glGetQueryObject, the results of the most recent query will be returned. In this case, + when issuing a new query, the results of the previous query are discarded. + + + glGetQueryObjecti64v and glGetQueryObjectui64v are available only + if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_OPERATION is generated if id is not the name of a query object. + + + GL_INVALID_OPERATION is generated if id is the name of a currently active + query object. + + + See Also + + glBeginQuery, + glEndQuery, + glGetQueryiv, + glIsQuery, + glQueryCounter + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetQueryiv.xml b/upstream-man-pages/man3/glGetQueryiv.xml new file mode 100644 index 0000000..32e7b09 --- /dev/null +++ b/upstream-man-pages/man3/glGetQueryiv.xml @@ -0,0 +1,100 @@ + + + + + + + 2005 + Sams Publishing + + + glGetQueryiv + 3G + + + glGetQueryiv + return parameters of a query object target + + C Specification + + + void glGetQueryiv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + Specifies a query object target. + Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_TIME_ELAPSED, or GL_TIMESTAMP. + + + + + pname + + + Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryiv returns in params a selected parameter of the query object target + specified by target. + + + pname names a specific query object target parameter. When pname is + GL_CURRENT_QUERY, the name of the currently active query for target, + or zero if no query is active, will be placed in params. + If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number + of bits used to hold the result of queries for target is returned in params. + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + See Also + + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetRenderbufferParameter.xml b/upstream-man-pages/man3/glGetRenderbufferParameter.xml new file mode 100644 index 0000000..05a3bde --- /dev/null +++ b/upstream-man-pages/man3/glGetRenderbufferParameter.xml @@ -0,0 +1,103 @@ + + + + + + + 2010 + Khronos Group + + + glGetRenderbufferParameteriv + 3G + + + glGetRenderbufferParameteriv + retrieve information about a bound renderbuffer object + + C Specification + + + void glGetRenderbufferParameteriv + GLenum target + GLenum pname + GLint *params + + + + + Parameters + + + target + + + Specifies the target of the query operation. target must be GL_RENDERBUFFER. + + + + + pname + + + Specifies the parameter whose value to retrieve from the renderbuffer bound to target. + + + + + params + + + Specifies the address of an array to receive the value of the queried parameter. + + + + + + Description + + glGetRenderbufferParameteriv retrieves information about a bound renderbuffer object. target + specifies the target of the query operation and must be GL_RENDERBUFFER. pname specifies + the parameter whose value to query and must be one of GL_RENDERBUFFER_WIDTH, GL_RENDERBUFFER_HEIGHT, + GL_RENDERBUFFER_INTERNAL_FORMAT, GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + GL_RENDERBUFFER_DEPTH_SIZE, GL_RENDERBUFFER_STENCIL_SIZE, or GL_RENDERBUFFER_SAMPLES. + + + Upon a successful return from glGetRenderbufferParameteriv, if pname is GL_RENDERBUFFER_WIDTH, + GL_RENDERBUFFER_HEIGHT, GL_RENDERBUFFER_INTERNAL_FORMAT, or GL_RENDERBUFFER_SAMPLES, + then params will contain the width in pixels, the height in pixels, the internal format, or the number of samples, respectively, + of the image of the renderbuffer currently bound to target. + + + If pname is GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + or GL_RENDERBUFFER_STENCIL_SIZE, then params will contain the actual resolutions (not the resolutions + specified when the image array was defined) for the red, green, blue, alpha depth, or stencil components, respectively, of the image of the + renderbuffer currently bound to target. + + + Errors + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + See Also + + glGenRenderbuffers, + glFramebufferRenderbuffer, + glBindRenderbuffer, + glRenderbufferStorage, + glRenderbufferStorageMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetSamplerParameter.xml b/upstream-man-pages/man3/glGetSamplerParameter.xml new file mode 100644 index 0000000..92e776a --- /dev/null +++ b/upstream-man-pages/man3/glGetSamplerParameter.xml @@ -0,0 +1,254 @@ + + + + + + + 2010 + Khronos Group + + + glGetSamplerParameter + 3G + + + glGetSamplerParameter + return sampler parameter values + + C Specification + + + void glGetSamplerParameterfv + GLuint sampler + GLenum pname + GLfloat * params + + + + + void glGetSamplerParameteriv + GLuint sampler + GLenum pname + GLint * params + + + + + void glGetSamplerParameterIiv + GLuint sampler + GLenum pname + GLint * params + + + + + void glGetSamplerParameterIuiv + GLuint sampler + GLenum pname + GLuint * params + + + + + Parameters + + + sampler + + + Specifies name of the sampler object from which to retrieve parameters. + + + + + pname + + + Specifies the symbolic name of a sampler parameter. + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, and + GL_TEXTURE_COMPARE_FUNC + are accepted. + + + + + params + + + Returns the sampler parameters. + + + + + + Description + + glGetSamplerParameter returns in params the value or values of the sampler parameter + specified as pname. + sampler defines the target sampler, and must be the name of an existing sampler object, returned from a previous call + to glGenSamplers. + pname accepts the same symbols as glSamplerParameter, + with the same interpretations: + + + + GL_TEXTURE_MAG_FILTER + + + Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. + + + + + GL_TEXTURE_MIN_FILTER + + + Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MIN_LOD + + + Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . + + + + + GL_TEXTURE_MAX_LOD + + + Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. + + + + + GL_TEXTURE_WRAP_S + + + Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_T + + + Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). + + + + + GL_TEXTURE_COMPARE_MODE + + + Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glSamplerParameter. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glSamplerParameter. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetSamplerParameter is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if sampler is not the name of a sampler object returned from + a previous call to glGenSamplers. + + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + See Also + + glSamplerParameter, + glGenSamplers, + glDeleteSamplers, + glSamplerParameter + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetShader.xml b/upstream-man-pages/man3/glGetShader.xml new file mode 100644 index 0000000..daedbe2 --- /dev/null +++ b/upstream-man-pages/man3/glGetShader.xml @@ -0,0 +1,165 @@ + + + + + glGetShader + 3G + + + glGetShaderiv + Returns a parameter from a shader object + + C Specification + + + void glGetShaderiv + GLuint shader + GLenum pname + GLint *params + + + + Parameters + + + shader + + Specifies the shader object to be + queried. + + + + pname + + Specifies the object parameter. Accepted + symbolic names are + GL_SHADER_TYPE, + GL_DELETE_STATUS, + GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH. + + + + params + + Returns the requested object parameter. + + + + + Description + + glGetShader + returns in params + the value of a parameter for a specific shader object. The + following parameters are defined: + + + + GL_SHADER_TYPE + + params returns + GL_VERTEX_SHADER if + shader is a vertex shader + object, GL_GEOMETRY_SHADER if shader + is a geometry shader object, and GL_FRAGMENT_SHADER + if shader is a fragment + shader object. + + + + + GL_DELETE_STATUS + + params returns + GL_TRUE if + shader is currently flagged + for deletion, and GL_FALSE + otherwise. + + + + + GL_COMPILE_STATUS + + params returns + GL_TRUE if the last compile + operation on shader was + successful, and GL_FALSE + otherwise. + + + + + GL_INFO_LOG_LENGTH + + params returns the + number of characters in the information log for + shader including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If shader has no + information log, a value of 0 is returned. + + + + + GL_SHADER_SOURCE_LENGTH + + params returns the + length of the concatenation of the source strings + that make up the shader source for the + shader, including the null + termination character. (i.e., the size of the + character buffer required to store the shader + source). If no source code exists, 0 is + returned. + + + + + Notes + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader does not refer to a shader + object. + + GL_INVALID_ENUM is generated if + pname is not an accepted value. + + + Associated Gets + glGetShaderInfoLog + with argument shader + + glGetShaderSource + with argument shader + + glIsShader + + See Also + glCompileShader, + glCreateShader, + glDeleteShader, + glGetProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetShaderInfoLog.xml b/upstream-man-pages/man3/glGetShaderInfoLog.xml new file mode 100644 index 0000000..d492099 --- /dev/null +++ b/upstream-man-pages/man3/glGetShaderInfoLog.xml @@ -0,0 +1,123 @@ + + + + + glGetShaderInfoLog + 3G + + + glGetShaderInfoLog + Returns the information log for a shader object + + C Specification + + + void glGetShaderInfoLog + GLuint shader + GLsizei maxLength + GLsizei *length + GLchar *infoLog + + + + Parameters + + + shader + + Specifies the shader object whose information + log is to be queried. + + + + maxLength + + Specifies the size of the character buffer for + storing the returned information log. + + + + length + + Returns the length of the string returned in + infoLog (excluding the null + terminator). + + + + infoLog + + Specifies an array of characters that is used + to return the information log. + + + + + Description + glGetShaderInfoLog returns the + information log for the specified shader object. The information + log for a shader object is modified when the shader is compiled. + The string that is returned will be null terminated. + + glGetShaderInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetShader + with the value GL_INFO_LOG_LENGTH. + + The information log for a shader object is a string that + may contain diagnostic messages, warning messages, and other + information about the last compile operation. When a shader + object is created, its information log will be a string of + length 0. + + Notes + The information log for a shader object is the OpenGL + implementer's primary mechanism for conveying information about + the compilation process. Therefore, the information log can be + helpful to application developers during the development + process, even when compilation is successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + maxLength is less than 0. + + + Associated Gets + glGetShader + with argument GL_INFO_LOG_LENGTH + + glIsShader + + See Also + glCompileShader, + glGetProgramInfoLog, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetShaderSource.xml b/upstream-man-pages/man3/glGetShaderSource.xml new file mode 100644 index 0000000..6d7cb10 --- /dev/null +++ b/upstream-man-pages/man3/glGetShaderSource.xml @@ -0,0 +1,111 @@ + + + + + glGetShaderSource + 3G + + + glGetShaderSource + Returns the source code string from a shader object + + C Specification + + + void glGetShaderSource + GLuint shader + GLsizei bufSize + GLsizei *length + GLchar *source + + + + Parameters + + + shader + + Specifies the shader object to be + queried. + + + + bufSize + + Specifies the size of the character buffer for + storing the returned source code string. + + + + length + + Returns the length of the string returned in + source (excluding the null + terminator). + + + + source + + Specifies an array of characters that is used + to return the source code string. + + + + + Description + glGetShaderSource returns the + concatenation of the source code strings from the shader object + specified by shader. The source code + strings for a shader object are the result of a previous call to + glShaderSource. + The string returned by the function will be null + terminated. + + glGetShaderSource returns in + source as much of the source code string + as it can, up to a maximum of bufSize + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned source code + string can be obtained by calling + glGetShader + with the value + GL_SHADER_SOURCE_LENGTH. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + + Associated Gets + glGetShader + with argument + GL_SHADER_SOURCE_LENGTH + + glIsShader + + See Also + glCreateShader, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetString.xml b/upstream-man-pages/man3/glGetString.xml new file mode 100644 index 0000000..7f541af --- /dev/null +++ b/upstream-man-pages/man3/glGetString.xml @@ -0,0 +1,181 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetString + 3G + + + glGetString + return a string describing the current GL connection + + C Specification + + + const GLubyte* glGetString + GLenum name + + + + C Specification + + + const GLubyte* glGetStringi + GLenum name + GLuint index + + + + Parameters + + + name + + + Specifies a symbolic constant, one of + GL_VENDOR, GL_RENDERER, + GL_VERSION, or GL_SHADING_LANGUAGE_VERSION. + Additionally, glGetStringi accepts the GL_EXTENSIONS token. + + + + + index + + + For glGetStringi, specifies the index of the string to return. + + + + + + Description + + glGetString returns a pointer to a static string + describing some aspect of the current GL connection. + name can be one of the following: + + + + GL_VENDOR + + + + + Returns the company responsible for this GL implementation. + This name does not change from release to release. + + + + + GL_RENDERER + + + + + Returns the name of the renderer. + This name is typically specific to a particular configuration of a hardware + platform. + It does not change from release to release. + + + + + GL_VERSION + + + + + Returns a version or release number. + + + + + GL_SHADING_LANGUAGE_VERSION + + + + + Returns a version or release number for the shading language. + + + + + + glGetStringi returns a pointer to a static string + indexed by index. + name can be one of the following: + + + + GL_EXTENSIONS + + + + + For glGetStringi only, returns the extension string + supported by the implementation at index. + + + + + + Strings GL_VENDOR and GL_RENDERER together uniquely specify + a platform. They do not change from release to release and should be used + by platform-recognition algorithms. + + + The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. + The version number uses one + of these forms: + + + major_number.minor_number + major_number.minor_number.release_number + + + Vendor-specific information may follow the version + number. Its format depends on the implementation, but + a space always separates the version number and + the vendor-specific information. + + + All strings are null-terminated. + + + Notes + + If an error is generated, glGetString returns 0. + + + The client and server may support different versions. + glGetString always returns a compatible version number. + The release number always describes the server. + + + Errors + + GL_INVALID_ENUM is generated if name is not an accepted value. + + + GL_INVALID_VALUE is generated by glGetStringi if + index is outside the valid range for indexed state name. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetSync.xml b/upstream-man-pages/man3/glGetSync.xml new file mode 100644 index 0000000..5548eed --- /dev/null +++ b/upstream-man-pages/man3/glGetSync.xml @@ -0,0 +1,130 @@ + + + + + + + 2010 + Khronos Group + + + glGetSynciv + 3G + + + glGetSynciv + query the properties of a sync object + + C Specification + + + void glGetSynciv + GLsync sync + GLenum pname + GLsizei bufSize + GLsizei *length + GLint *values + + + + + Parameters + + + sync + + + Specifies the sync object whose properties to query. + + + + + pname + + + Specifies the parameter whose value to retrieve from the sync object specified in sync. + + + + + bufSize + + + Specifies the size of the buffer whose address is given in values. + + + + + length + + + Specifies the address of an variable to receive the number of integers placed in values. + + + + + values + + + Specifies the address of an array to receive the values of the queried parameter. + + + + + + Description + + glGetSynciv retrieves properties of a sync object. sync specifies the name of the sync + object whose properties to retrieve. + + + On success, glGetSynciv replaces up to bufSize integers in values with the + corresponding property values of the object being queried. The actual number of integers replaced is returned in the variable whose address is + specified in length. If length is NULL, no length is returned. + + + If pname is GL_OBJECT_TYPE, a single value representing the specific type of the sync object is + placed in values. The only type supported is GL_SYNC_FENCE. + + + If pname is GL_SYNC_STATUS, a single value representing the status of the sync object + (GL_SIGNALED or GL_UNSIGNALED) is placed in values. + + + If pname is GL_SYNC_CONDITION, a single value representing the condition of the sync object + is placed in values. The only condition supported is GL_SYNC_GPU_COMMANDS_COMPLETE. + + + If pname is GL_SYNC_FLAGS, a single value representing the flags with which the sync object + was created is placed in values. No flags are currently supportedflags is + expected to be used in future extensions to the sync objects.. + + + If an error occurs, nothing will be written to values or length. + + + Errors + + GL_INVALID_VALUE is generated if sync is not the name of a sync object. + + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + See Also + + glFenceSync, + glWaitSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetTexImage.xml b/upstream-man-pages/man3/glGetTexImage.xml new file mode 100644 index 0000000..37f5b9a --- /dev/null +++ b/upstream-man-pages/man3/glGetTexImage.xml @@ -0,0 +1,314 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexImage + 3G + + + glGetTexImage + return a texture image + + C Specification + + + void glGetTexImage + GLenum target + GLint level + GLenum format + GLenum type + GLvoid * img + + + + + Parameters + + + target + + + Specifies which texture is to be obtained. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. + + + + + level + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + format + + + Specifies a pixel format for the returned data. + The supported formats are + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RG, + GL_RGB, + GL_RGBA, + GL_BGR, + GL_BGRA, + GL_RED_INTEGER, + GL_GREEN_INTEGER, + GL_BLUE_INTEGER, + GL_RG_INTEGER, + GL_RGB_INTEGER, + GL_RGBA_INTEGER, + GL_BGR_INTEGER, + GL_BGRA_INTEGER. + + + + + type + + + Specifies a pixel type for the returned data. + The supported types are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, and + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + + + img + + + Returns the texture image. + Should be a pointer to an array of the type specified by type. + + + + + + Description + + glGetTexImage returns a texture image into img. + target specifies whether the desired texture image is one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_1D_ARRAY, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D or any of + GL_TEXTURE_CUBE_MAP_*), + or + glTexImage3D (GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D). + level specifies the level-of-detail number of the desired image. + format and type specify the format and type of the desired image array. + See the reference page for glTexImage1D + for a description of the acceptable values for the format and type + parameters, respectively. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. + + + To understand the operation of glGetTexImage, consider the selected internal + four-component texture image to be an RGBA color buffer the size of the image. + The semantics of glGetTexImage are then identical to those of glReadPixels, + with the exception that no pixel transfer operations are performed, + when called with the same format and type, + with x and y set to 0, + width set to the width of the texture image + and height set to 1 for 1D images, + or to the height of the texture image + for 2D images. + + + If the selected texture image does not contain four components, + the following mappings are applied. + Single-component textures are treated as RGBA buffers with red set + to the single-component value, + green set to 0, blue set to 0, and alpha set to 1. + Two-component textures are treated as RGBA buffers with red set to + the value of component zero, + alpha set to the value of component one, + and green and blue set to 0. + Finally, + three-component textures are treated as RGBA buffers with red set to + component zero, + green set to component one, + blue set to component two, + and alpha set to 1. + + + To determine the required size of img, + use glGetTexLevelParameter to determine the dimensions of the + internal texture image, + then scale the required number of pixels by the storage required for + each pixel, + based on format and type. + Be sure to take the pixel storage parameters into account, + especially GL_PACK_ALIGNMENT. + + + Notes + + If an error is generated, + no change is made to the contents of img. + + + glGetTexImage returns the texture image for the active texture unit. + + + Errors + + GL_INVALID_ENUM is generated if target, format, or type is not + an accepted value. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + + max + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV and format is not GL_RGB. + + + GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV and format is neither GL_RGBA + or GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and img is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexLevelParameter with argument GL_TEXTURE_WIDTH + + + glGetTexLevelParameter with argument GL_TEXTURE_HEIGHT + + + glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT + + + glGet with arguments GL_PACK_ALIGNMENT and others + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetTexLevelParameter.xml b/upstream-man-pages/man3/glGetTexLevelParameter.xml new file mode 100644 index 0000000..7b054dc --- /dev/null +++ b/upstream-man-pages/man3/glGetTexLevelParameter.xml @@ -0,0 +1,370 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexLevelParameter + 3G + + + glGetTexLevelParameter + return texture parameter values for a specific level of detail + + C Specification + + + void glGetTexLevelParameterfv + GLenum target + GLint level + GLenum pname + GLfloat * params + + + + + void glGetTexLevelParameteriv + GLenum target + GLint level + GLenum pname + GLint * params + + + + + Parameters + + + target + + + Specifies the symbolic name of the target texture, + one of + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or + GL_TEXTURE_BUFFER. + + + + + level + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT, + GL_TEXTURE_DEPTH, + GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_BORDER, + GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_DEPTH_SIZE, + GL_TEXTURE_COMPRESSED, and + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + are accepted. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetTexLevelParameter returns in params texture parameter values for a specific + level-of-detail value, + specified as level. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + GL_MAX_TEXTURE_SIZE, and GL_MAX_3D_TEXTURE_SIZE are not really + descriptive enough. + It has to report the largest square texture image that can be + accommodated with mipmaps and borders, + but a long skinny texture, or a texture without mipmaps and borders, may + easily fit in texture memory. + The proxy targets allow the user to more accurately query + whether the GL can accommodate a texture of a given configuration. + If the texture cannot be accommodated, the texture state variables, which + may be queried with glGetTexLevelParameter, are set to 0. If the texture can be accommodated, + the texture state values will be set as they would be set for a + non-proxy target. + + + pname specifies the texture parameter whose value or values + will be returned. + + + The accepted parameter names are as follows: + + + + GL_TEXTURE_WIDTH + + + + + params returns a single value, + the width of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_HEIGHT + + + + + params returns a single value, + the height of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_DEPTH + + + + + params returns a single value, + the depth of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_INTERNAL_FORMAT + + + + + params returns a single value, + the internal format of the texture image. + + + + + GL_TEXTURE_RED_TYPE, + + + + + GL_TEXTURE_GREEN_TYPE, + + + + + GL_TEXTURE_BLUE_TYPE, + + + + + GL_TEXTURE_ALPHA_TYPE, + + + + + GL_TEXTURE_DEPTH_TYPE + + + + + The data type used to store the component. + The types GL_NONE, GL_SIGNED_NORMALIZED, + GL_UNSIGNED_NORMALIZED, GL_FLOAT, + GL_INT, and GL_UNSIGNED_INT may be returned + to indicate signed normalized fixed-point, unsigned normalized fixed-point, floating-point, integer unnormalized, and + unsigned integer unnormalized components, respectively. + + + + + GL_TEXTURE_RED_SIZE, + + + + + GL_TEXTURE_GREEN_SIZE, + + + + + GL_TEXTURE_BLUE_SIZE, + + + + + GL_TEXTURE_ALPHA_SIZE, + + + + + GL_TEXTURE_DEPTH_SIZE + + + + + The internal storage resolution of an individual component. + The resolution chosen by the GL will be a close match for the resolution + requested by the user with the component argument of glTexImage1D, + glTexImage2D, glTexImage3D, glCopyTexImage1D, and + glCopyTexImage2D. The initial value is 0. + + + + + GL_TEXTURE_COMPRESSED + + + + + params returns a single boolean value indicating if the texture image is + stored in a compressed internal format. The initiali value is GL_FALSE. + + + + + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + + + params returns a single integer value, the number of unsigned bytes of the + compressed texture image that would be returned from + glGetCompressedTexImage. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetTexLevelParameter returns the texture level parameters for the active texture unit. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_BUFFER + and level is not zero. + + + GL_INVALID_OPERATION is generated if + GL_TEXTURE_COMPRESSED_IMAGE_SIZE is queried on texture images with an + uncompressed internal format or on proxy targets. + + + See Also + + glActiveTexture, + glGetTexParameter, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetTexParameter.xml b/upstream-man-pages/man3/glGetTexParameter.xml new file mode 100644 index 0000000..10f9dec --- /dev/null +++ b/upstream-man-pages/man3/glGetTexParameter.xml @@ -0,0 +1,325 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexParameter + 3G + + + glGetTexParameter + return texture parameter values + + C Specification + + + void glGetTexParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetTexParameteriv + GLenum target + GLenum pname + GLint * params + + + + + void glGetTexParameterIiv + GLenum target + GLenum pname + GLint * params + + + + + void glGetTexParameterIuiv + GLenum target + GLenum pname + GLuint * params + + + + + Parameters + + + target + + + Specifies the symbolic name of the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D, + GL_TEXTURE_RECTANGLE, and + GL_TEXTURE_CUBE_MAP + are accepted. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, and + GL_TEXTURE_WRAP_R + are accepted. + + + + + params + + + Returns the texture parameters. + + + + + + Description + + glGetTexParameter returns in params the value or values of the texture parameter + specified as pname. + target defines the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, and + GL_TEXTURE_CUBE_MAP + specify one-, two-, or three-dimensional, one-dimensional array, two-dimensional array, rectangle or cube-mapped texturing, respectively. + pname accepts the same symbols as glTexParameter, + with the same interpretations: + + + + GL_TEXTURE_MAG_FILTER + + + Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. + + + + + GL_TEXTURE_MIN_FILTER + + + Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MIN_LOD + + + Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . + + + + + GL_TEXTURE_MAX_LOD + + + Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. + + + + + GL_TEXTURE_BASE_LEVEL + + + Returns the single-valued base texture mipmap level. The initial value is 0. + + + + + GL_TEXTURE_MAX_LEVEL + + + Returns the single-valued maximum texture mipmap array level. The initial + value is 1000. + + + + + GL_TEXTURE_SWIZZLE_R + + + Returns the red component swizzle. The initial value is GL_RED. + + + + + GL_TEXTURE_SWIZZLE_G + + + Returns the green component swizzle. The initial value is GL_GREEN. + + + + + GL_TEXTURE_SWIZZLE_B + + + Returns the blue component swizzle. The initial value is GL_BLUE. + + + + + GL_TEXTURE_SWIZZLE_A + + + Returns the alpha component swizzle. The initial value is GL_ALPHA. + + + + + GL_TEXTURE_SWIZZLE_RGBA + + + Returns the component swizzle for all channels in a single query. + + + + + GL_TEXTURE_WRAP_S + + + Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_T + + + Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). + + + + + GL_TEXTURE_COMPARE_MODE + + + Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glTexParameter. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glTexParameter. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + See Also + + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glGetTransformFeedbackVarying.xml b/upstream-man-pages/man3/glGetTransformFeedbackVarying.xml new file mode 100644 index 0000000..c5e63c2 --- /dev/null +++ b/upstream-man-pages/man3/glGetTransformFeedbackVarying.xml @@ -0,0 +1,161 @@ + + + + + + + 2010 + Khronos Group + + + glGetTransformFeedbackVarying + 3G + + + glGetTransformFeedbackVarying + retrieve information about varying variables selected for transform feedback + + C Specification + + + void glGetTransformFeedbackVarying + GLuintprogram + GLuintindex + GLsizeibufSize + GLsizei *length + GLsizeisize + GLenum *type + char *name + + + + Parameters + + + program + + + The name of the target program object. + + + + + index + + + The index of the varying variable whose information to retrieve. + + + + + bufSize + + + The maximum number of characters, including the null terminator, that may be written into name. + + + + + length + + + The address of a variable which will receive the number of characters written into name, + excluding the null-terminator. If length is NULL no length is returned. + + + + + size + + + The address of a variable that will receive the size of the varying. + + + + + type + + + The address of a variable that will recieve the type of the varying. + + + + + name + + + The address of a buffer into which will be written the name of the varying. + + + + + + Description + + Information about the set of varying variables in a linked program that will be captured + during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. + glGetTransformFeedbackVarying provides information about the varying + variable selected by index. An index of 0 selects + the first varying variable specified in the varyings array passed + to glTransformFeedbackVaryings, and + an index of GL_TRANSFORM_FEEDBACK_VARYINGS-1 selects + the last such variable. + + + The name of the selected varying is returned as a null-terminated string in + name. The actual number of characters written into name, + excluding the null terminator, is returned in length. If length + is NULL, no length is returned. The maximum number of characters that may be written into name, + including the null terminator, is specified by bufSize. + + + The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + which can be queried with glGetProgram. + + + For the selected varying variable, its type is returned into type. The size of + the varying is returned into size. The value in size is + in units of the type returned in type. The type returned can be any of the + scalar, vector, or matrix attribute types returned by glGetActiveAttrib. + If an error occurred, the return parameters length, size, + type and name will be unmodified. This command will return as much + information about the varying variables as possible. If no information is available, length + will be set to zero and name will be an empty string. This situation could + arise if glGetTransformFeedbackVarying is called after a failed link. + + + Errors + + GL_INVALID_VALUE is generated if program is not + the name of a program object. + + + GL_INVALID_VALUE is generated if index is greater or equal to + the value of GL_TRANSFORM_FEEDBACK_VARYINGS. + + + GL_INVALID_OPERATION is generated program has not been linked. + + + Associated Gets + + glGetProgram with argument GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH. + + + See Also + + glBeginTransformFeedback, + glEndTransformFeedback, + glTransformFeedbackVaryings, + glGetProgram + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetUniform.xml b/upstream-man-pages/man3/glGetUniform.xml new file mode 100644 index 0000000..908b3a1 --- /dev/null +++ b/upstream-man-pages/man3/glGetUniform.xml @@ -0,0 +1,142 @@ + + + + + glGetUniform + 3G + + + glGetUniform + glGetUniformfv + glGetUniformiv + Returns the value of a uniform variable + + C Specification + + + void glGetUniformfv + GLuint program + GLint location + GLfloat *params + + + void glGetUniformiv + GLuint program + GLint location + GLint *params + + + void glGetUniformuiv + GLuint program + GLint location + GLuint *params + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + location + + Specifies the location of the uniform variable + to be queried. + + + + params + + Returns the value of the specified uniform + variable. + + + + + Description + glGetUniform returns in + params the value(s) of the specified + uniform variable. The type of the uniform variable specified by + location determines the number of values + returned. If the uniform variable is defined in the shader as a + boolean, int, or float, a single value will be returned. If it + is defined as a vec2, ivec2, or bvec2, two values will be + returned. If it is defined as a vec3, ivec3, or bvec3, three + values will be returned, and so on. To query values stored in + uniform variables declared as arrays, call + glGetUniform for each element of the array. + To query values stored in uniform variables declared as + structures, call glGetUniform for each + field in the structure. The values for uniform variables + declared as a matrix will be returned in column major + order. + + The locations assigned to uniform variables are not known + until the program object is linked. After linking has occurred, + the command + glGetUniformLocation + can be used to obtain the location of a uniform variable. This + location value can then be passed to + glGetUniform in order to query the current + value of the uniform variable. After a program object has been + linked successfully, the index values for uniform variables + remain fixed until the next link command occurs. The uniform + variable values can only be queried after a link if the link was + successful. + + Notes + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + GL_INVALID_OPERATION is generated if + location does not correspond to a valid + uniform variable location for the specified program object. + + + Associated Gets + glGetActiveUniform + with arguments program and the index of an active + uniform variable + + glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH + + glGetUniformLocation + with arguments program and the name of a + uniform variable + glIsProgram + + See Also + glCreateProgram, + glLinkProgram, + glUniform + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetUniformBlockIndex.xml b/upstream-man-pages/man3/glGetUniformBlockIndex.xml new file mode 100644 index 0000000..98a7148 --- /dev/null +++ b/upstream-man-pages/man3/glGetUniformBlockIndex.xml @@ -0,0 +1,94 @@ + + + + + + + 2010 + Khronos Group + + + glGetUniformBlockIndex + 3G + + + glGetUniformBlockIndex + retrieve the index of a named uniform block + + C Specification + + + GLuint glGetUniformBlockIndex + GLuint program + const GLchar *uniformBlockName + + + + Parameters + + + program + + + Specifies the name of a program containing the uniform block. + + + + + uniformBlockName + + + Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. + + + + + + Description + + glGetUniformBlockIndex retrieves the index of a uniform block within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. + + + glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName + of program. If uniformBlockName does not identify an active uniform block of program, + glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform + blocks of a program are assigned in consecutive order, beginning with zero. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + Notes + + glGetUniformBlockIndex is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniformBlockName, + glGetActiveUniformBlock, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetUniformIndices.xml b/upstream-man-pages/man3/glGetUniformIndices.xml new file mode 100644 index 0000000..d04caf3 --- /dev/null +++ b/upstream-man-pages/man3/glGetUniformIndices.xml @@ -0,0 +1,117 @@ + + + + + + + 2010 + Khronos Group + + + glGetUniformIndices + 3G + + + glGetUniformIndices + retrieve the index of a named uniform block + + C Specification + + + GLuint glGetUniformIndices + GLuint program + GLsizei uniformCount + const GLchar **uniformNames + GLuint *uniformIndices + + + + Parameters + + + program + + + Specifies the name of a program containing uniforms whose indices to query. + + + + + uniformCount + + + Specifies the number of uniforms whose indices to query. + + + + + uniformNames + + + Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. + + + + + uniformIndices + + + Specifies the address of an array that will receive the indices of the uniforms. + + + + + + Description + + glGetUniformIndices retrieves the indices of a number of uniforms within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformCount indicates both the number of elements in the array of names uniformNames and the + number of indices that may be written to uniformIndices. + + + uniformNames contains a list of uniformCount name strings identifying the uniform names to be + queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will + be written to the corresponding element of uniformIndices. If a string in uniformNames is not + the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of + uniformIndices. + + + If an error occurs, nothing is written to uniformIndices. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + Notes + + glGetUniformIndices is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniform, + glGetActiveUniformName, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetUniformLocation.xml b/upstream-man-pages/man3/glGetUniformLocation.xml new file mode 100644 index 0000000..ee8e928 --- /dev/null +++ b/upstream-man-pages/man3/glGetUniformLocation.xml @@ -0,0 +1,123 @@ + + + + + glGetUniformLocation + 3G + + + glGetUniformLocation + Returns the location of a uniform variable + + C Specification + + + GLint glGetUniformLocation + GLuint program + const GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + name + + Points to a null terminated string containing + the name of the uniform variable whose location is + to be queried. + + + + + Description + glGetUniformLocation returns an + integer that represents the location of a specific uniform + variable within a program object. name + must be a null terminated string that contains no white space. + name must be an active uniform variable + name in program that is not a structure, + an array of structures, or a subcomponent of a vector or a + matrix. This function returns -1 if name + does not correspond to an active uniform variable in + program or if name + starts with the reserved prefix "gl_". + + Uniform variables that are structures or arrays of + structures may be queried by calling + glGetUniformLocation for each field within + the structure. The array element operator "[]" and the + structure field operator "." may be used in + name in order to select elements within + an array or fields within a structure. The result of using these + operators is not allowed to be another structure, an array of + structures, or a subcomponent of a vector or a matrix. Except if + the last part of name indicates a uniform + variable array, the location of the first element of an array + can be retrieved by using the name of the array, or by using the + name appended by "[0]". + + The actual locations assigned to uniform variables are not + known until the program object is linked successfully. After + linking has occurred, the command + glGetUniformLocation can be used to obtain + the location of a uniform variable. This location value can then + be passed to + glUniform + to set the value of the uniform variable or to + glGetUniform + in order to query the current value of the uniform variable. + After a program object has been linked successfully, the index + values for uniform variables remain fixed until the next link + command occurs. Uniform variable locations and values can only + be queried after a link if the link was successful. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + + Associated Gets + glGetActiveUniform + with arguments program and the index of + an active uniform variable + + glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH + + glGetUniform + with arguments program and the name of a + uniform variable + glIsProgram + + See Also + glLinkProgram, + glUniform + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetVertexAttrib.xml b/upstream-man-pages/man3/glGetVertexAttrib.xml new file mode 100644 index 0000000..bec9192 --- /dev/null +++ b/upstream-man-pages/man3/glGetVertexAttrib.xml @@ -0,0 +1,277 @@ + + + + + glGetVertexAttrib + 3G + + + glGetVertexAttrib + glGetVertexAttribdv + glGetVertexAttribfv + glGetVertexAttribiv + Return a generic vertex attribute parameter + + C Specification + + + void glGetVertexAttribdv + GLuint index + GLenum pname + GLdouble *params + + + void glGetVertexAttribfv + GLuint index + GLenum pname + GLfloat *params + + + void glGetVertexAttribiv + GLuint index + GLenum pname + GLint *params + + + void glGetVertexAttribIiv + GLuint index + GLenum pname + GLint *params + + + void glGetVertexAttribIuiv + GLuint index + GLenum pname + GLuint *params + + + + Parameters + + + index + + Specifies the generic vertex attribute + parameter to be queried. + + + + pname + + Specifies the symbolic name of the vertex + attribute parameter to be queried. Accepted values are + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR, or + GL_CURRENT_VERTEX_ATTRIB. + + + + params + + Returns the requested data. + + + + + Description + glGetVertexAttrib returns in + params the value of a generic vertex + attribute parameter. The generic vertex attribute to be queried + is specified by index, and the parameter + to be queried is specified by pname. + + The accepted parameter names are as follows: + + + + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING + + + + params returns a + single value, the name of the buffer object currently bound to + the binding point corresponding to generic vertex attribute array + index. If no buffer object is bound, + 0 is returned. The initial value is 0. + + + + + GL_VERTEX_ATTRIB_ARRAY_ENABLED + + + + params returns a + single value that is non-zero (true) if the vertex + attribute array for index is + enabled and 0 (false) if it is disabled. The initial + value is GL_FALSE. + + + + + GL_VERTEX_ATTRIB_ARRAY_SIZE + + + + params returns a + single value, the size of the vertex attribute array + for index. The size is the + number of values for each element of the vertex + attribute array, and it will be 1, 2, 3, or 4. The + initial value is 4. + + + + + GL_VERTEX_ATTRIB_ARRAY_STRIDE + + + + params returns a + single value, the array stride for (number of bytes + between successive elements in) the vertex attribute + array for index. A value of 0 + indicates that the array elements are stored + sequentially in memory. The initial value is 0. + + + + + GL_VERTEX_ATTRIB_ARRAY_TYPE + + + + params returns a + single value, a symbolic constant indicating the + array type for the vertex attribute array for + index. Possible values are + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, and + GL_DOUBLE. The initial value is + GL_FLOAT. + + + + + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED + + + + params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index are normalized when + they are converted to floating point, and 0 (false) + otherwise. The initial value is + GL_FALSE. + + + + + GL_VERTEX_ATTRIB_ARRAY_INTEGER + + + + params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index have integer data types, and 0 (false) + otherwise. The initial value is + 0 (GL_FALSE). + + + + + GL_VERTEX_ATTRIB_ARRAY_DIVISOR + + + + params returns a + single value that is the frequency divisor used for instanced + rendering. See glVertexAttribDivisor. + The initial value is 0. + + + + + GL_CURRENT_VERTEX_ATTRIB + + + + params returns four + values that represent the current value for the + generic vertex attribute specified by index. Generic + vertex attribute 0 is unique in that it has no + current state, so an error will be generated if + index is 0. The initial value + for all other generic vertex attributes is + (0,0,0,1). + + + + + All of the parameters except GL_CURRENT_VERTEX_ATTRIB + represent state stored in the currently bound vertex array object. + + + Notes + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_OPERATION is generated if pname + is not GL_CURRENT_VERTEX_ATTRIB and there is no + currently bound vertex array object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM is generated if + pname is not an accepted value. + + GL_INVALID_OPERATION is generated if + index is 0 and + pname is + GL_CURRENT_VERTEX_ATTRIB. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + glBindAttribLocation, + glBindBuffer, + glDisableVertexAttribArray, + glEnableVertexAttribArray, + glVertexAttrib, + glVertexAttribDivisor, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glGetVertexAttribPointerv.xml b/upstream-man-pages/man3/glGetVertexAttribPointerv.xml new file mode 100644 index 0000000..1ffb1af --- /dev/null +++ b/upstream-man-pages/man3/glGetVertexAttribPointerv.xml @@ -0,0 +1,93 @@ + + + + + glGetVertexAttribPointerv + 3G + + + glGetVertexAttribPointerv + return the address of the specified generic vertex attribute pointer + + C Specification + + + void glGetVertexAttribPointerv + GLuint index + GLenum pname + GLvoid **pointer + + + + Parameters + + + index + + Specifies the generic vertex attribute + parameter to be returned. + + + + pname + + Specifies the symbolic name of the generic + vertex attribute parameter to be returned. Must be + GL_VERTEX_ATTRIB_ARRAY_POINTER. + + + + pointer + + Returns the pointer value. + + + + + Description + glGetVertexAttribPointerv returns + pointer information. index is the generic + vertex attribute to be queried, pname is + a symbolic constant indicating the pointer to be returned, and + params is a pointer to a location in + which to place the returned data. + + The pointer returned is a byte offset into the data store of the buffer object + that was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously specified. + + + Notes + The state returned is retrieved from the currently bound vertex array object. + The initial value for each pointer is 0. + + Errors + GL_INVALID_OPERATION is generated if no vertex array object is currently bound. + + GL_INVALID_VALUE + is generated if index + is greater than or equal to GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM + is generated if pname + is not an accepted value. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + See Also + glGetVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glHint.xml b/upstream-man-pages/man3/glHint.xml new file mode 100644 index 0000000..1e50960 --- /dev/null +++ b/upstream-man-pages/man3/glHint.xml @@ -0,0 +1,183 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glHint + 3G + + + glHint + specify implementation-specific hints + + C Specification + + + void glHint + GLenum target + GLenum mode + + + + Parameters + + + target + + + Specifies a symbolic constant indicating the behavior to be controlled. + GL_LINE_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT, + GL_TEXTURE_COMPRESSION_HINT, and + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + are accepted. + + + + + mode + + + Specifies a symbolic constant indicating the desired behavior. + GL_FASTEST, + GL_NICEST, and + GL_DONT_CARE are accepted. + + + + + + Description + + Certain aspects of GL behavior, + when there is room for interpretation, + can be controlled with hints. + A hint is specified with two arguments. + target is a symbolic + constant indicating the behavior to be controlled, + and mode is another symbolic constant indicating the desired + behavior. The initial value for each target is GL_DONT_CARE. + mode can be one of the following: + + + + GL_FASTEST + + + + + The most efficient option should be chosen. + + + + + GL_NICEST + + + + + The most correct, + or highest quality, + option should be chosen. + + + + + GL_DONT_CARE + + + + + No preference. + + + + + + Though the implementation aspects that can be hinted are well defined, + the interpretation of the hints depends on the implementation. + The hint aspects that can be specified with target, + along with suggested semantics, + are as follows: + + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + + + + + Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: + dFdx, dFdy, and fwidth. + + + + + GL_LINE_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased lines. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. + + + + + GL_POLYGON_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased polygons. + Hinting GL_NICEST can result in more pixel fragments being generated + during rasterization, + if a larger filter function is applied. + + + + + GL_TEXTURE_COMPRESSION_HINT + + + + + Indicates the quality and performance of the compressing texture images. + Hinting GL_FASTEST indicates that texture images should be compressed + as quickly as possible, while GL_NICEST indicates that texture images + should be compressed with as little image quality loss as possible. + GL_NICEST should be selected if the texture is to be retrieved by + glGetCompressedTexImage for reuse. + + + + + + Notes + + The interpretation of hints depends on the implementation. + Some implementations ignore glHint settings. + + + Errors + + GL_INVALID_ENUM is generated if either target or mode is not + an accepted value. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glIsBuffer.xml b/upstream-man-pages/man3/glIsBuffer.xml new file mode 100644 index 0000000..29feffd --- /dev/null +++ b/upstream-man-pages/man3/glIsBuffer.xml @@ -0,0 +1,66 @@ + + + + + + + 2005 + Sams Publishing + + + glIsBuffer + 3G + + + glIsBuffer + determine if a name corresponds to a buffer object + + C Specification + + + GLboolean glIsBuffer + GLuint buffer + + + + Parameters + + + buffer + + + Specifies a value that may be the name of a buffer object. + + + + + + Description + + glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. + If buffer is zero, or is a non-zero value that is not currently the + name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. + + + A name returned by glGenBuffers, but not yet associated with a buffer object + by calling glBindBuffer, is not the name of a buffer object. + + + See Also + + glBindBuffer, + glDeleteBuffers, + glGenBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsEnabled.xml b/upstream-man-pages/man3/glIsEnabled.xml new file mode 100644 index 0000000..015e197 --- /dev/null +++ b/upstream-man-pages/man3/glIsEnabled.xml @@ -0,0 +1,304 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsEnabled + 3G + + + glIsEnabled, glIsEnabledi + test whether a capability is enabled + + C Specification + + + GLboolean glIsEnabled + GLenum cap + + + + + GLboolean glIsEnabledi + GLenum cap + GLuint index + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + index + + + Specifies the index of the capability. + + + + + + Description + + glIsEnabled returns GL_TRUE if cap is an enabled capability + and returns GL_FALSE otherwise. Boolean states that are indexed may be tested with glIsEnabledi. + For glIsEnabledi, index specifies the index of the capability to test. index + must be between zero and the count of indexed capabilities for cap. + Initially all capabilities except GL_DITHER are disabled; + GL_DITHER is initially enabled. + + + The following capabilities are accepted for cap: + + + + + + + + + + + Constant + + + See + + + + + + + GL_BLEND + + + glBlendFunc, glLogicOp + + + + + GL_CLIP_DISTANCEi + + + glEnable + + + + + GL_COLOR_LOGIC_OP + + + glLogicOp + + + + + GL_CULL_FACE + + + glCullFace + + + + + GL_DEPTH_CLAMP + + + glEnable + + + + + GL_DEPTH_TEST + + + glDepthFunc, glDepthRange + + + + + GL_DITHER + + + glEnable + + + + + GL_FRAMEBUFFER_SRGB + + + glEnable + + + + + GL_LINE_SMOOTH + + + glLineWidth + + + + + GL_MULTISAMPLE + + + glSampleCoverage + + + + + GL_POLYGON_SMOOTH + + + glPolygonMode + + + + + GL_POLYGON_OFFSET_FILL + + + glPolygonOffset + + + + + GL_POLYGON_OFFSET_LINE + + + glPolygonOffset + + + + + GL_POLYGON_OFFSET_POINT + + + glPolygonOffset + + + + + GL_PROGRAM_POINT_SIZE + + + glEnable + + + + + GL_PRIMITIVE_RESTART + + + glEnable, glPrimitiveRestartIndex + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE + + + glSampleCoverage + + + + + GL_SAMPLE_ALPHA_TO_ONE + + + glSampleCoverage + + + + + GL_SAMPLE_COVERAGE + + + glSampleCoverage + + + + + GL_SAMPLE_MASK + + + glEnable + + + + + GL_SCISSOR_TEST + + + glScissor + + + + + GL_STENCIL_TEST + + + glStencilFunc, glStencilOp + + + + + GL_TEXTURE_CUBEMAP_SEAMLESS + + + glEnable + + + + + + + + + Notes + + If an error is generated, + glIsEnabled and glIsEnabledi return GL_FALSE. + + + Errors + + GL_INVALID_ENUM is generated if cap is not an accepted value. + + + GL_INVALID_VALUE is generated by glIsEnabledi if index is outside the + valid range for the indexed state cap. + + + See Also + + glEnable, + glDisable, + glGet + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010-2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glIsFramebuffer.xml b/upstream-man-pages/man3/glIsFramebuffer.xml new file mode 100644 index 0000000..73e5bed --- /dev/null +++ b/upstream-man-pages/man3/glIsFramebuffer.xml @@ -0,0 +1,64 @@ + + + + + + + 2010 + Khronos Group + + + glIsFramebuffer + 3G + + + glIsFramebuffer + determine if a name corresponds to a framebuffer object + + C Specification + + + GLboolean glIsFramebuffer + GLuint framebuffer + + + + Parameters + + + framebuffer + + + Specifies a value that may be the name of a framebuffer object. + + + + + + Description + + glIsFramebuffer returns GL_TRUE if framebuffer is currently the name of a framebuffer + object. If framebuffer is zero, or if framebuffer is not the name of a framebuffer object, or if an error + occurs, glIsFramebuffer returns GL_FALSE. If framebuffer is a name returned by + glGenFramebuffers, by that has not yet been bound through a call to + glBindFramebuffer, then the name is not a framebuffer object and glIsFramebuffer + returns GL_FALSE. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glDeleteFramebuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsProgram.xml b/upstream-man-pages/man3/glIsProgram.xml new file mode 100644 index 0000000..cc0aca2 --- /dev/null +++ b/upstream-man-pages/man3/glIsProgram.xml @@ -0,0 +1,102 @@ + + + + + glIsProgram + 3G + + + glIsProgram + Determines if a name corresponds to a program object + + C Specification + + + GLboolean glIsProgram + GLuint program + + + + Parameters + + + program + + Specifies a potential program object. + + + + + Description + glIsProgram returns + GL_TRUE if program + is the name of a program object previously created with + glCreateProgram + and not yet deleted with glDeleteProgram. + If program is zero or a non-zero value that + is not the name of a program object, or if an error occurs, + glIsProgram returns GL_FALSE. + + Notes + No error is generated if program is + not a valid program object name. + + A program object marked for deletion with glDeleteProgram + but still in use as part of current rendering state is still considered + a program object and glIsProgram will return GL_TRUE. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with arguments program and the index of + an active attribute variable + + glGetActiveUniform + with arguments program and the index of + an active uniform variable + + glGetAttachedShaders + with argument program + + glGetAttribLocation + with arguments program and the name of an + attribute variable + + glGetProgram + with arguments program and the parameter + to be queried + + glGetProgramInfoLog + with argument program + + glGetUniform + with arguments program and the location + of a uniform variable + + glGetUniformLocation + with arguments program and the name of a + uniform variable + + See Also + glAttachShader, + glBindAttribLocation, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsQuery.xml b/upstream-man-pages/man3/glIsQuery.xml new file mode 100644 index 0000000..35ce221 --- /dev/null +++ b/upstream-man-pages/man3/glIsQuery.xml @@ -0,0 +1,66 @@ + + + + + + + 2005 + Sams Publishing + + + glIsQuery + 3G + + + glIsQuery + determine if a name corresponds to a query object + + C Specification + + + GLboolean glIsQuery + GLuint id + + + + Parameters + + + id + + + Specifies a value that may be the name of a query object. + + + + + + Description + + glIsQuery returns GL_TRUE if id is currently the name of a query object. + If id is zero, or is a non-zero value that is not currently the + name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. + + + A name returned by glGenQueries, but not yet associated with a query object + by calling glBeginQuery, is not the name of a query object. + + + See Also + + glBeginQuery, + glDeleteQueries, + glEndQuery, + glGenQueries + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsRenderbuffer.xml b/upstream-man-pages/man3/glIsRenderbuffer.xml new file mode 100644 index 0000000..166c906 --- /dev/null +++ b/upstream-man-pages/man3/glIsRenderbuffer.xml @@ -0,0 +1,65 @@ + + + + + + + 2010 + Khronos Group + + + glIsRenderbuffer + 3G + + + glIsRenderbuffer + determine if a name corresponds to a renderbuffer object + + C Specification + + + GLboolean glIsRenderbuffer + GLuint renderbuffer + + + + Parameters + + + renderbuffer + + + Specifies a value that may be the name of a renderbuffer object. + + + + + + Description + + glIsRenderbuffer returns GL_TRUE if renderbuffer is currently the name of a renderbuffer + object. If renderbuffer is zero, or if renderbuffer is not the name of a renderbuffer object, or if an error + occurs, glIsRenderbuffer returns GL_FALSE. If renderbuffer is a name returned by + glGenRenderbuffers, by that has not yet been bound through a call to + glBindRenderbuffer or glFramebufferRenderbuffer, + then the name is not a renderbuffer object and glIsRenderbuffer returns GL_FALSE. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsSampler.xml b/upstream-man-pages/man3/glIsSampler.xml new file mode 100644 index 0000000..fe2b059 --- /dev/null +++ b/upstream-man-pages/man3/glIsSampler.xml @@ -0,0 +1,69 @@ + + + + + + + 2010 + Khronos Group + + + glIsSampler + 3G + + + glIsSampler + determine if a name corresponds to a sampler object + + C Specification + + + GLboolean glIsSampler + GLuint id + + + + Parameters + + + id + + + Specifies a value that may be the name of a sampler object. + + + + + + Description + + glIsSampler returns GL_TRUE if id is currently the name of a sampler object. + If id is zero, or is a non-zero value that is not currently the + name of a sampler object, or if an error occurs, glIsSampler returns GL_FALSE. + + + A name returned by glGenSamplers, is the name of a sampler object. + + + Notes + + glIsSampler is available only if the GL version is 3.3 or higher. + + + See Also + + glGenSamplers, + glBindSampler, + glDeleteSamplers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsShader.xml b/upstream-man-pages/man3/glIsShader.xml new file mode 100644 index 0000000..1210149 --- /dev/null +++ b/upstream-man-pages/man3/glIsShader.xml @@ -0,0 +1,81 @@ + + + + + glIsShader + 3G + + + glIsShader + Determines if a name corresponds to a shader object + + C Specification + + + GLboolean glIsShader + GLuint shader + + + + Parameters + + + shader + + Specifies a potential shader object. + + + + + Description + glIsShader returns + GL_TRUE if shader is + the name of a shader object previously created with + glCreateShader + and not yet deleted with glDeleteShader. + If shader is + zero or a non-zero value that is not the name of a shader + object, or if an error occurs, glIsShader returns + GL_FALSE. + + Notes + No error is generated if shader is + not a valid shader object name. + + A shader object marked for deletion with glDeleteShader + but still attached to a program object is still considered + a shader object and glIsShader will return GL_TRUE. + + Associated Gets + glGetAttachedShaders + with a valid program object + + glGetShader + with arguments shader and a parameter to + be queried + + glGetShaderInfoLog + with argument object + + glGetShaderSource + with argument object + + See Also + glAttachShader, + glCompileShader, + glCreateShader, + glDeleteShader, + glDetachShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsSync.xml b/upstream-man-pages/man3/glIsSync.xml new file mode 100644 index 0000000..d9e402f --- /dev/null +++ b/upstream-man-pages/man3/glIsSync.xml @@ -0,0 +1,67 @@ + + + + + + + 2010 + Khronos Group + + + glIsSync + 3G + + + glIsSync + determine if a name corresponds to a sync object + + C Specification + + + GLboolean glIsSync + GLsync sync + + + + Parameters + + + sync + + + Specifies a value that may be the name of a sync object. + + + + + + Description + + glIsSync returns GL_TRUE if sync is currently the name of a sync object. + If sync is not the name of a sync object, or if an error occurs, glIsSync returns + GL_FALSE. Note that zero is not the name of a sync object. + + + Notes + + glIsSync is available only if the GL version is 3.2 or greater. + + + See Also + + glFenceSync, + glWaitSync, + glClientWaitSync, + glDeleteSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glIsTexture.xml b/upstream-man-pages/man3/glIsTexture.xml new file mode 100644 index 0000000..1e31dd5 --- /dev/null +++ b/upstream-man-pages/man3/glIsTexture.xml @@ -0,0 +1,73 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsTexture + 3G + + + glIsTexture + determine if a name corresponds to a texture + + C Specification + + + GLboolean glIsTexture + GLuint texture + + + + Parameters + + + texture + + + Specifies a value that may be the name of a texture. + + + + + + Description + + glIsTexture returns GL_TRUE if texture is currently the name of a texture. + If texture is zero, or is a non-zero value that is not currently the + name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. + + + A name returned by glGenTextures, but not yet associated with a texture + by calling glBindTexture, is not the name of a texture. + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glDeleteTextures, + glGenTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glIsVertexArray.xml b/upstream-man-pages/man3/glIsVertexArray.xml new file mode 100644 index 0000000..f58a63b --- /dev/null +++ b/upstream-man-pages/man3/glIsVertexArray.xml @@ -0,0 +1,64 @@ + + + + + + + 2010 + Khronos Group + + + glIsVertexArray + 3G + + + glIsVertexArray + determine if a name corresponds to a vertex array object + + C Specification + + + GLboolean glIsVertexArray + GLuint array + + + + Parameters + + + array + + + Specifies a value that may be the name of a vertex array object. + + + + + + Description + + glIsVertexArray returns GL_TRUE if array is currently the name of a renderbuffer + object. If renderbuffer is zero, or if array is not the name of a renderbuffer object, or if an error + occurs, glIsVertexArray returns GL_FALSE. If array is a name returned by + glGenVertexArrays, by that has not yet been bound through a call to + glBindVertexArray, then the name is not a vertex array object and + glIsVertexArray returns GL_FALSE. + + + See Also + + glGenVertexArrays, + glBindVertexArray, + glDeleteVertexArrays + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glLineWidth.xml b/upstream-man-pages/man3/glLineWidth.xml new file mode 100644 index 0000000..e9dbd2e --- /dev/null +++ b/upstream-man-pages/man3/glLineWidth.xml @@ -0,0 +1,154 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLineWidth + 3G + + + glLineWidth + specify the width of rasterized lines + + C Specification + + + void glLineWidth + GLfloat width + + + + + Parameters + + + width + + + Specifies the width of rasterized lines. + The initial value is 1. + + + + + + Description + + glLineWidth specifies the rasterized width of both aliased and antialiased + lines. + Using a line width other than 1 has different effects, + depending on whether line antialiasing is enabled. + To enable and disable line antialiasing, call + glEnable and glDisable + with argument GL_LINE_SMOOTH. Line antialiasing is initially + disabled. + + + If line antialiasing is disabled, + the actual width is determined by rounding the supplied width + to the nearest integer. + (If the rounding results in the value 0, + it is as if the line width were 1.) + If + + + + + + Δ + x + + + >= + + + Δ + y + + + + , + i pixels are filled in each column that is rasterized, + where i is the rounded value of width. + Otherwise, + i pixels are filled in each row that is rasterized. + + + If antialiasing is enabled, + line rasterization produces a fragment for each pixel square + that intersects the region lying within the rectangle having width + equal to the current line width, + length equal to the actual length of the line, + and centered on the mathematical line segment. + The coverage value for each fragment is the window coordinate area + of the intersection of the rectangular region with the corresponding + pixel square. + This value is saved and used in the final rasterization step. + + + Not all widths can be supported when line antialiasing is enabled. If an + unsupported width is requested, the nearest supported width is used. + Only width 1 is guaranteed to be supported; others depend on the + implementation. Likewise, there is a range for aliased line widths as well. + To query the range of supported widths and the size + difference between supported widths within the range, call glGet + with arguments GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. + + + Notes + + The line width specified by glLineWidth is always returned when GL_LINE_WIDTH + is queried. + Clamping and rounding for aliased and antialiased lines have no effect on the specified value. + + + Nonantialiased line width may be clamped to an implementation-dependent maximum. Call glGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the maximum width. + + + In OpenGL 1.2, the tokens GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY were replaced by GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. The old names are retained for backward compatibility, but should not be used in new code. + + + Errors + + GL_INVALID_VALUE is generated if width is less than or equal to 0. + + + Associated Gets + + glGet with argument GL_LINE_WIDTH + + + glGet with argument GL_ALIASED_LINE_WIDTH_RANGE + + + glGet with argument GL_SMOOTH_LINE_WIDTH_RANGE + + + glGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY + + + glIsEnabled with argument GL_LINE_SMOOTH + + + See Also + + glEnable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glLinkProgram.xml b/upstream-man-pages/man3/glLinkProgram.xml new file mode 100644 index 0000000..67330ca --- /dev/null +++ b/upstream-man-pages/man3/glLinkProgram.xml @@ -0,0 +1,276 @@ + + + + + glLinkProgram + 3G + + + glLinkProgram + Links a program object + + C Specification + + + void glLinkProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object to be linked. + + + + + + Description + glLinkProgram links the program + object specified by program. If any + shader objects of type GL_VERTEX_SHADER are + attached to program, they will be used to + create an executable that will run on the programmable vertex + processor. If any shader objects of type GL_GEOMETRY_SHADER + are attached to program, they will be used to create + an executable that will run on the programmable geometry processor. + If any shader objects of type + GL_FRAGMENT_SHADER are attached to + program, they will be used to create an + executable that will run on the programmable fragment + processor. + + The status of the link operation will be stored as part of + the program object's state. This value will be set to + GL_TRUE if the program object was linked + without errors and is ready for use, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_LINK_STATUS. + + As a result of a successful link operation, all active + user-defined uniform variables belonging to + program will be initialized to 0, and + each of the program object's active uniform variables will be + assigned a location that can be queried by calling + glGetUniformLocation. + Also, any active user-defined attribute variables that have not + been bound to a generic vertex attribute index will be bound to + one at this time. + + Linking of a program object can fail for a number of + reasons as specified in the OpenGL Shading Language + Specification. The following lists some of the + conditions that will cause a link error. + + + + The number of active attribute variables supported + by the implementation has been exceeded. + + + The storage limit for uniform variables has been + exceeded. + + + The number of active uniform variables supported + by the implementation has been exceeded. + + + The main function is missing + for the vertex, geometry or fragment shader. + + + A varying variable actually used in the fragment + shader is not declared in the same way (or is not + declared at all) in the vertex shader, or geometry shader shader if present. + + + A reference to a function or variable name is + unresolved. + + + A shared global is declared with two different + types or two different initial values. + + + One or more of the attached shader objects has not + been successfully compiled. + + + Binding a generic attribute matrix caused some + rows of the matrix to fall outside the allowed maximum + of GL_MAX_VERTEX_ATTRIBS. + + + Not enough contiguous vertex attribute slots could + be found to bind attribute matrices. + + + The program object contains objects to form a fragment shader but + does not contain objects to form a vertex shader. + + + The program object contains objects to form a geometry shader + but does not contain objects to form a vertex shader. + + + The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is not specified in any compiled geometry shader + object. + + + The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is specified differently in multiple geometry shader + objects. + + + The number of active outputs in the fragment shader is greater + than the value of GL_MAX_DRAW_BUFFERS. + + + The program has an active output assigned to a location greater + than or equal to the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS + and has an active output assigned an index greater than or equal to one. + + + More than one varying out variable is bound to the same number and index. + + + The explicit binding assigments do not leave enough space for the linker + to automatically assign a location for a varying out array, which requires + multiple contiguous locations. + + + The count specified by glTransformFeedbackVaryings + is non-zero, but the program object has no vertex or geometry shader. + + + Any variable name specified to glTransformFeedbackVaryings + in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active). + + + Any two entries in the varyings array given + glTransformFeedbackVaryings + specify the same varying variable. + + + The total number of components to capture in any transform feedback varying variable + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is SEPARATE_ATTRIBS. + + + + When a program object has been successfully linked, the + program object can be made part of current state by calling + glUseProgram. + Whether or not the link operation was successful, the program + object's information log will be overwritten. The information + log can be retrieved by calling + glGetProgramInfoLog. + + glLinkProgram will also install the + generated executables as part of the current rendering state if + the link operation was successful and the specified program + object is already currently in use as a result of a previous + call to + glUseProgram. + If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE , but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked. + + If program contains shader objects + of type GL_VERTEX_SHADER, and optionally of type GL_GEOMETRY_SHADER, + but does not contain shader objects of type + GL_FRAGMENT_SHADER, the vertex shader executable will + be installed on the programmable vertex processor, the geometry shader executable, if present, + will be installed on the programmable geometry processor, but no executable will + be installed on the fragment processor. The results of + rasterizing primitives with such a program will be undefined. + + The program object's information log is updated and the + program is generated at the time of the link operation. After + the link operation, applications are free to modify attached + shader objects, compile attached shader objects, detach shader + objects, delete shader objects, and attach additional shader + objects. None of these operations affects the information log or + the program that is part of the program object. + + Notes + If the link operation is unsuccessful, any information about a previous link operation on program + is lost (i.e., a failed link does not restore the old state of program + ). Certain information can still be retrieved from program + even after an unsuccessful link operation. See for instance glGetActiveAttrib + and glGetActiveUniform. + + Errors + GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL. + GL_INVALID_OPERATION + is generated if program + is not a program object. + GL_INVALID_OPERATION + is generated if program is the currently active program + object and transform feedback mode is active. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + glGetActiveAttrib + with argument program + and the index of an active attribute variable + glGetActiveUniform + with argument program + and the index of an active uniform variable + glGetAttachedShaders + with argument program + glGetAttribLocation + with argument program + and an attribute variable name + glGetProgram + with arguments program + and GL_LINK_STATUS + glGetProgramInfoLog + with argument program + glGetUniform + with argument program + and a uniform variable location + glGetUniformLocation + with argument program + and a uniform variable name + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glLogicOp.xml b/upstream-man-pages/man3/glLogicOp.xml new file mode 100644 index 0000000..1052754 --- /dev/null +++ b/upstream-man-pages/man3/glLogicOp.xml @@ -0,0 +1,269 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLogicOp + 3G + + + glLogicOp + specify a logical pixel operation for rendering + + C Specification + + + void glLogicOp + GLenum opcode + + + + Parameters + + + opcode + + + Specifies a symbolic constant that selects a logical operation. + The following symbols are accepted: + GL_CLEAR, + GL_SET, + GL_COPY, + GL_COPY_INVERTED, + GL_NOOP, + GL_INVERT, + GL_AND, + GL_NAND, + GL_OR, + GL_NOR, + GL_XOR, + GL_EQUIV, + GL_AND_REVERSE, + GL_AND_INVERTED, + GL_OR_REVERSE, and + GL_OR_INVERTED. The initial value is GL_COPY. + + + + + + Description + + glLogicOp specifies a logical operation that, + when enabled, + is applied between the incoming RGBA color + and the RGBA color at the corresponding location in the + frame buffer. + To enable or disable the logical operation, call + glEnable and glDisable + using the symbolic constant GL_COLOR_LOGIC_OP. The initial value is + disabled. + + + + + + + + + + + Opcode + + + Resulting Operation + + + + + + + GL_CLEAR + + + 0 + + + + + GL_SET + + + 1 + + + + + GL_COPY + + + s + + + + + GL_COPY_INVERTED + + + ~s + + + + + GL_NOOP + + + d + + + + + GL_INVERT + + + ~d + + + + + GL_AND + + + s & d + + + + + GL_NAND + + + ~(s & d) + + + + + GL_OR + + + s | d + + + + + GL_NOR + + + ~(s | d) + + + + + GL_XOR + + + s ^ d + + + + + GL_EQUIV + + + ~(s ^ d) + + + + + GL_AND_REVERSE + + + s & ~d + + + + + GL_AND_INVERTED + + + ~s & d + + + + + GL_OR_REVERSE + + + s | ~d + + + + + GL_OR_INVERTED + + + ~s | d + + + + + + + opcode is a symbolic constant chosen from the list above. + In the explanation of the logical operations, + s represents the incoming color and + d represents the color in the frame buffer. + Standard C-language operators are used. + As these bitwise operators suggest, + the logical operation is applied independently to each bit pair of the + source and destination colors. + + + Notes + + When more than one RGBA color buffer is enabled for drawing, + logical operations are performed separately for each enabled buffer, + using for the destination value the contents of that buffer + (see glDrawBuffer). + + + Logic operations have no effect on floating point draw buffers. However, if + GL_COLOR_LOGIC_OP is enabled, blending is still disabled + in this case. + + + Errors + + GL_INVALID_ENUM is generated if opcode is not an accepted value. + + + Associated Gets + + glGet with argument GL_LOGIC_OP_MODE. + + + glIsEnabled with argument GL_COLOR_LOGIC_OP. + + + See Also + + glBlendFunc, + glDrawBuffer, + glEnable, + glStencilOp + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glMapBuffer.xml b/upstream-man-pages/man3/glMapBuffer.xml new file mode 100644 index 0000000..f7951f6 --- /dev/null +++ b/upstream-man-pages/man3/glMapBuffer.xml @@ -0,0 +1,192 @@ + + + + + + + 2005 + Sams Publishing + + + glMapBuffer + 3G + + + glMapBuffer + map a buffer object's data store + + C Specification + + + void * glMapBuffer + GLenum target + GLenum access + + + + Parameters + + + target + + + Specifies the target buffer object being mapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. + + + + + access + + + Specifies the access policy, indicating whether it will be possible to read from, write to, + or both read from and write to the buffer object's mapped data store. The symbolic constant must be + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + + + + + + C Specification + + + GLboolean glUnmapBuffer + GLenum target + + + + + Parameters + + + target + + + Specifies the target buffer object being unmapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. + + + + + + Description + + glMapBuffer maps to the client's address space the entire data store of the buffer object + currently bound to target. The data can then be directly read and/or written relative to + the returned pointer, depending on the specified access policy. If the GL is unable to + map the buffer object's data store, glMapBuffer generates an error and returns + NULL. This may occur for system-specific reasons, such as low virtual memory availability. + + + If a mapped data store is accessed in a way inconsistent with the specified access policy, + no error is generated, but performance may be negatively impacted and system errors, including program + termination, may result. Unlike the usage parameter of glBufferData, + access is not a hint, and does in fact constrain the usage of the mapped data store on + some GL implementations. In order to achieve the highest performance available, a buffer object's data store + should be used in ways consistent with both its specified usage and + access parameters. + + + A mapped data store must be unmapped with glUnmapBuffer before its buffer object is used. + Otherwise an error will be generated by any GL command that attempts to dereference the buffer object's data store. + When a data store is unmapped, the pointer to its data store becomes invalid. glUnmapBuffer + returns GL_TRUE unless the data store contents have become corrupt during the time + the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics + memory, such as screen mode changes. In such situations, GL_FALSE is returned and the + data store contents are undefined. An application must detect this rare condition and reinitialize the data store. + + + A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store + is recreated with glBufferData. + + + Notes + + If an error is generated, glMapBuffer returns NULL, and + glUnmapBuffer returns GL_FALSE. + + + Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, + but results will be undefined and will likely vary across GL implementations. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. + + + GL_INVALID_ENUM is generated if access is not + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + + + GL_OUT_OF_MEMORY is generated when glMapBuffer is executed + if the GL is unable to map the buffer object's data store. This may occur for a variety of system-specific + reasons, such as the absence of sufficient remaining virtual memory. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if glMapBuffer is executed for + a buffer object whose data store is already mapped. + + + GL_INVALID_OPERATION is generated if glUnmapBuffer is executed for + a buffer object whose data store is not currently mapped. + + + Associated Gets + + glGetBufferPointerv with argument GL_BUFFER_MAP_POINTER + + + glGetBufferParameter with argument GL_BUFFER_MAPPED, GL_BUFFER_ACCESS, or GL_BUFFER_USAGE + + + See Also + + glBindBuffer, + glBindBufferBase, + glBindBufferRange, + glBufferData, + glBufferSubData, + glDeleteBuffers + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glMapBufferRange.xml b/upstream-man-pages/man3/glMapBufferRange.xml new file mode 100644 index 0000000..64ac1e3 --- /dev/null +++ b/upstream-man-pages/man3/glMapBufferRange.xml @@ -0,0 +1,204 @@ + + + + + + + 2010 + Khronos Group + + + glMapBufferRange + 3G + + + glMapBufferRange + map a section of a buffer object's data store + + C Specification + + + void *glMapBufferRange + GLenum target + GLintptr offset + GLsizeiptr length + GLbitfield access + + + + Parameters + + + target + + + Specifies a binding to which the target buffer is bound. + + + + + offset + + + Specifies a the starting offset within the buffer of the range to be mapped. + + + + + length + + + Specifies a length of the range to be mapped. + + + + + access + + + Specifies a combination of access flags indicating the desired access to the range. + + + + + + Description + + glMapBufferRange maps all or part of the data store of a buffer object into the client's address + space. target specifies the target to which the buffer is bound and must be one of GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER. offset and + length indicate the range of data in the buffer object htat is to be mapped, in terms of basic machine units. + access is a bitfield containing flags which describe the requested mapping. These flags are described below. + + + If no error occurs, a pointer to the beginning of the mapped range is returned once all pending operations on that buffer have + completed, and may be used to modify and/or query the corresponding range of the buffer, according to the following flag bits set + in access: + + + + GL_MAP_READ_BIT indicates that the returned pointer may be used to read + buffer object data. No GL error is generated if the pointer is used to query + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. + + + + + GL_MAP_WRITE_BIT indicates that the returned pointer may be used to modify + buffer object data. No GL error is generated if the pointer is used to modify + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. + + + + + + Furthermore, the following optional flag bits in access may be used to modify the mapping: + + + + GL_MAP_INVALIDATE_RANGE_BIT indicates that the previous contents of the + specified range may be discarded. Data within this range are undefined with + the exception of subsequently written data. No GL error is generated if sub- + sequent GL operations access unwritten data, but the result is undefined and + system errors (possibly including program termination) may occur. This flag + may not be used in combination with GL_MAP_READ_BIT. + + + + + GL_MAP_INVALIDATE_BUFFER_BIT indicates that the previous contents of the + entire buffer may be discarded. Data within the entire buffer are undefined + with the exception of subsequently written data. No GL error is generated if + subsequent GL operations access unwritten data, but the result is undefined + and system errors (possibly including program termination) may occur. This + flag may not be used in combination with GL_MAP_READ_BIT. + + + + + GL_MAP_FLUSH_EXPLICIT_BIT indicates that one or more discrete subranges + of the mapping may be modified. When this flag is set, modifications to + each subrange must be explicitly flushed by calling glFlushMappedBufferRange. + No GL error is set if a subrange of the mapping is modified and + not flushed, but data within the corresponding subrange of the buffer are undefined. + This flag may only be used in conjunction with GL_MAP_WRITE_BIT. + When this option is selected, flushing is strictly limited to regions that are + explicitly indicated with calls to glFlushMappedBufferRange + prior to unmap; if this option is not selected glUnmapBuffer + will automatically flush the entire mapped range when called. + + + + + GL_MAP_UNSYNCHRONIZED_BIT indicates that the GL should not attempt to + synchronize pending operations on the buffer prior to returning from glMapBufferRange. + No GL error is generated if pending operations which source or modify the buffer overlap the mapped region, + but the result of such previous and any subsequent operations is undefined. + + + + + + If an error occurs, glMapBufferRange returns a NULL pointer. + + + Errors + + GL_INVALID_VALUE is generated if either of offset or length is negative, + or if offset + length is greater than the value of GL_BUFFER_SIZE. + + + GL_INVALID_VALUE is generated if access has any bits set other than those defined above. + + + GL_INVALID_OPERATION is generated for any of the following conditions: + + + + The buffer is already in a mapped state. + + + + + Neither GL_MAP_READ_BIT or GL_MAP_WRITE_BIT is set. + + + + + GL_MAP_READ_BIT is set and any of GL_MAP_INVALIDATE_RANGE_BIT, + GL_MAP_INVALIDATE_BUFFER_BIT, or GL_MAP_UNSYNCHRONIZED_BIT is set. + + + + + GL_MAP_FLUSH_EXPLICIT_BIT is set and GL_MAP_WRITE_BIT is not set. + + + + + + GL_OUT_OF_MEMORY is generated if glMapBufferRange fails because memory for the + mapping could not be obtained. + + + See Also + + glMapBuffer, + glFlushMappedBufferRange, + glBindBuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glMultiDrawArrays.xml b/upstream-man-pages/man3/glMultiDrawArrays.xml new file mode 100644 index 0000000..7d74aba --- /dev/null +++ b/upstream-man-pages/man3/glMultiDrawArrays.xml @@ -0,0 +1,142 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiDrawArrays + 3G + + + glMultiDrawArrays + render multiple sets of primitives from array data + + C Specification + + + void glMultiDrawArrays + GLenum mode + const GLint * first + const GLsizei * count + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + first + + + Points to an array of starting indices in the enabled arrays. + + + + + count + + + Points to an array of the number of indices to be rendered. + + + + + primcount + + + Specifies the size of the first and count + + + + + + Description + + glMultiDrawArrays specifies multiple sets of geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glMultiDrawArrays. + + + glMultiDrawArrays behaves identically to glDrawArrays except that primcount + separate ranges of elements are specified instead. + + + When glMultiDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed, and how the array elements + construct those primitives. + + + Vertex attributes that are modified by glMultiDrawArrays have an + unspecified value after glMultiDrawArrays returns. Attributes that aren't + modified remain well defined. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glMultiDrawElements.xml b/upstream-man-pages/man3/glMultiDrawElements.xml new file mode 100644 index 0000000..0ba2d6e --- /dev/null +++ b/upstream-man-pages/man3/glMultiDrawElements.xml @@ -0,0 +1,144 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiDrawElements + 3G + + + glMultiDrawElements + render multiple sets of primitives by specifying indices of array data elements + + C Specification + + + void glMultiDrawElements + GLenum mode + const GLsizei * count + GLenum type + const GLvoid ** indices + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + count + + + Points to an array of the elements counts. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the size of the count array. + + + + + + Description + + glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine + calls. Instead of calling a GL function to pass each individual vertex, + normal, texture coordinate, edge flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to construct a + sequence of primitives with a single call to glMultiDrawElements. + + + glMultiDrawElements is identical in operation to glDrawElements except that + primcount separate lists of elements are specified. + + + Vertex attributes that are modified by glMultiDrawElements have an + unspecified value after glMultiDrawElements returns. Attributes that aren't + modified maintain their previous values. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawRangeElements + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glMultiDrawElementsBaseVertex.xml b/upstream-man-pages/man3/glMultiDrawElementsBaseVertex.xml new file mode 100644 index 0000000..7852739 --- /dev/null +++ b/upstream-man-pages/man3/glMultiDrawElementsBaseVertex.xml @@ -0,0 +1,156 @@ + + + + + + + 2010 + Khronos Group + + + glMultiDrawElementsBaseVertex + 3G + + + glMultiDrawElementsBaseVertex + render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index + + C Specification + + + void glMultiDrawElementsBaseVertex + GLenum mode + const GLsizei *count + GLenum type + const GLvoid **indices + GLsizei primcount + GLint *basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. + + + + + count + + + Points to an array of the elements counts. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the size of the count array. + + + + + basevertex + + + Specifies a pointer to the location where the base vertices are stored. + + + + + + Description + + glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, + except that primcount separate lists of elements are specifried instead. + + + It has the same effect as: + for (int i = 0; i < primcount; i++) + if (count[i] > 0) + glDrawElementsBaseVertex(mode, + count[i], + type, + indices[i], + basevertex[i]); + + + Notes + + glMultiDrawElementsBaseVertex is available only if the GL version is 3.1 or greater. + + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glMultiDrawElements, + glDrawElementsBaseVertex, + glDrawArrays, + glVertexAttribPointer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glMultiTexCoord.xml b/upstream-man-pages/man3/glMultiTexCoord.xml new file mode 100644 index 0000000..d3bbc05 --- /dev/null +++ b/upstream-man-pages/man3/glMultiTexCoord.xml @@ -0,0 +1,446 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiTexCoord + 3G + + + glMultiTexCoord + set the current texture coordinates + + C Specification + + + void glMultiTexCoord1s + GLenum target + GLshort s + + + + + void glMultiTexCoord1i + GLenum target + GLint s + + + + + void glMultiTexCoord1f + GLenum target + GLfloat s + + + + + void glMultiTexCoord1d + GLenum target + GLdouble s + + + + + void glMultiTexCoord2s + GLenum target + GLshort s + GLshort t + + + + + void glMultiTexCoord2i + GLenum target + GLint s + GLint t + + + + + void glMultiTexCoord2f + GLenum target + GLfloat s + GLfloat t + + + + + void glMultiTexCoord2d + GLenum target + GLdouble s + GLdouble t + + + + + void glMultiTexCoord3s + GLenum target + GLshort s + GLshort t + GLshort r + + + + + void glMultiTexCoord3i + GLenum target + GLint s + GLint t + GLint r + + + + + void glMultiTexCoord3f + GLenum target + GLfloat s + GLfloat t + GLfloat r + + + + + void glMultiTexCoord3d + GLenum target + GLdouble s + GLdouble t + GLdouble r + + + + + void glMultiTexCoord4s + GLenum target + GLshort s + GLshort t + GLshort r + GLshort q + + + + + void glMultiTexCoord4i + GLenum target + GLint s + GLint t + GLint r + GLint q + + + + + void glMultiTexCoord4f + GLenum target + GLfloat s + GLfloat t + GLfloat r + GLfloat q + + + + + void glMultiTexCoord4d + GLenum target + GLdouble s + GLdouble t + GLdouble r + GLdouble q + + + + + Parameters + + + target + + + Specifies the texture unit whose coordinates should be modified. The number + of texture units is implementation dependent, but must be at least + two. Symbolic constant must be one of + GL_TEXTUREi, + where i ranges from 0 to GL_MAX_TEXTURE_COORDS - 1, + which is an implementation-dependent value. + + + + + s + t + r + q + + + Specify s, t, r, and q texture coordinates for + target texture unit. Not all parameters are present in all forms + of the command. + + + + + + C Specification + + + void glMultiTexCoord1sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord1iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord1fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord1dv + GLenum target + const GLdouble * v + + + + + void glMultiTexCoord2sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord2iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord2fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord2dv + GLenum target + const GLdouble * v + + + + + void glMultiTexCoord3sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord3iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord3fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord3dv + GLenum target + const GLdouble * v + + + + + void glMultiTexCoord4sv + GLenum target + const GLshort * v + + + + + void glMultiTexCoord4iv + GLenum target + const GLint * v + + + + + void glMultiTexCoord4fv + GLenum target + const GLfloat * v + + + + + void glMultiTexCoord4dv + GLenum target + const GLdouble * v + + + + Parameters + + + target + + + Specifies the texture unit whose coordinates should be modified. The number + of texture units is implementation dependent, but must be at least + two. Symbolic constant must be one of + GL_TEXTUREi, + where i ranges from 0 to GL_MAX_TEXTURE_COORDS - 1, + which is an implementation-dependent value. + + + + + v + + + Specifies a pointer to an array of one, two, three, or four elements, + which in turn specify the + s, + t, + r, + and + q + texture coordinates. + + + + + + Description + + glMultiTexCoord specifies texture coordinates in one, two, three, or four + dimensions. + glMultiTexCoord1 sets the current texture + coordinates to + + + + s + 0 + 0 + 1 + + ; + a call to glMultiTexCoord2 + sets them to + + + + s + t + 0 + 1 + + . + Similarly, glMultiTexCoord3 specifies the texture coordinates as + + + + s + t + r + 1 + + , + and + glMultiTexCoord4 + defines all four components explicitly as + + + + s + t + r + q + + . + + + The current texture coordinates are part of the data + that is associated with each vertex and with the current + raster position. + Initially, the values for + + + + s + t + r + q + + + are + + + + 0 + 0 + 0 + 1 + + . + + + + + Notes + + The current texture coordinates can be updated at any time. + + + It is always the case that GL_TEXTURE + i + = GL_TEXTURE0 + + i. + + + Associated Gets + + glGet with argument GL_CURRENT_TEXTURE_COORDS with appropriate + texture unit selected. + + + glGet with argument GL_MAX_TEXTURE_COORDS + + + See Also + + glActiveTexture, + glTexCoord, + glVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glPixelStore.xml b/upstream-man-pages/man3/glPixelStore.xml new file mode 100644 index 0000000..de38ab0 --- /dev/null +++ b/upstream-man-pages/man3/glPixelStore.xml @@ -0,0 +1,1418 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPixelStore + 3G + + + glPixelStore + set pixel storage modes + + C Specification + + + void glPixelStoref + GLenum pname + GLfloat param + + + + + void glPixelStorei + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies the symbolic name of the parameter to be set. + Six values affect the packing of pixel data into memory: + GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_PIXELS, + GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_IMAGES, and + GL_PACK_ALIGNMENT. + Six more affect the unpacking of pixel data from memory: + GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH, + GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_IMAGES, and + GL_UNPACK_ALIGNMENT. + + + + + param + + + Specifies the value that pname is set to. + + + + + + Description + + glPixelStore sets pixel storage modes that affect the operation of subsequent + glReadPixels as well as the unpacking of + texture patterns (see glTexImage1D, + glTexImage2D, glTexImage3D, glTexSubImage1D, + glTexSubImage2D, glTexSubImage3D). + + + pname is a symbolic constant indicating the parameter to be set, and + param is the new value. Six of the twelve storage parameters affect + how pixel data is returned to client memory. + They are as follows: + + + + GL_PACK_SWAP_BYTES + + + If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is stored in memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_PACK_SWAP_BYTES is true. + GL_PACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_PACK_SWAP_BYTES. + + + + + GL_PACK_LSB_FIRST + + + If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + + + + + GL_PACK_ROW_LENGTH + + + If greater than 0, + GL_PACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + + + + + + a + s + + + + + + + + s + + n + + l + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping + + + + + + k + = + + 8 + + a + + + + + + n + + l + + + + + 8 + + a + + + + + + + + + + components or indices. + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_PACK_IMAGE_HEIGHT + + + If greater than 0, + GL_PACK_IMAGE_HEIGHT defines the number of pixels in an image + three-dimensional texture volume, where ``image'' is defined by all pixels + sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + h + + + + + + + a + s + + + + + + + + s + + n + + l + + h + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, where + n + is the number of components or indices + in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, the + width + argument to glTexImage3D otherwise), + h + is the number of + rows in a pixel image (GL_PACK_IMAGE_HEIGHT if it is greater than + 0, the + height + argument to the glTexImage3D routine otherwise), + a + is the value of + GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single + component (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, and GL_PACK_SKIP_IMAGES + + + These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated simply by + incrementing the pointer passed to glReadPixels. + Setting GL_PACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_PACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + + m + + + components or indices, + where + m + is the number of components or indices per row, + as just computed in the GL_PACK_ROW_LENGTH section. + Setting GL_PACK_SKIP_IMAGES to + k + is equivalent to incrementing + the pointer by + + + + k + + p + + , + where + p + is the number of components or indices + per image, as computed in the GL_PACK_IMAGE_HEIGHT section. + + + + + GL_PACK_ALIGNMENT + + + Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). + + + + + + The other six of the twelve storage parameters affect how pixel data is + read from client memory. + These values are significant for + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D + + + They are as follows: + + + + GL_UNPACK_SWAP_BYTES + + + If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is taken from memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_UNPACK_SWAP_BYTES is true. + GL_UNPACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_UNPACK_SWAP_BYTES. + + + + + GL_UNPACK_LSB_FIRST + + + If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + + + + + GL_UNPACK_ROW_LENGTH + + + If greater than 0, + GL_UNPACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + + + + + + a + s + + + + + + + + s + + n + + l + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping + + + + + + k + = + + 8 + + a + + + + + + n + + l + + + + + 8 + + a + + + + + + + + + + components or indices. + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_UNPACK_IMAGE_HEIGHT + + + If greater than 0, + GL_UNPACK_IMAGE_HEIGHT defines the number of pixels in an image of + a three-dimensional texture volume. Where ``image'' is defined by all + pixel sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + h + + + + + + + a + s + + + + + + + + s + + n + + l + + h + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to glTexImage3D otherwise), + h + is the number of rows in an image (GL_UNPACK_IMAGE_HEIGHT if + it is greater than 0, the + height + argument to glTexImage3D otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_UNPACK_SKIP_PIXELS and GL_UNPACK_SKIP_ROWS + + + These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated by + incrementing the pointer passed to + glTexImage1D, + glTexImage2D, + glTexSubImage1D or + glTexSubImage2D. + Setting GL_UNPACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_UNPACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + + k + + + components or indices, + where + k + is the number of components or indices per row, + as just computed in the GL_UNPACK_ROW_LENGTH section. + + + + + GL_UNPACK_ALIGNMENT + + + Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). + + + + + + The following table gives the type, + initial value, + and range of valid values for each storage parameter + that can be set with glPixelStore. + + + + + + + + + + + + + pname + + + Type + + + Initial Value + + + Valid Range + + + + + + + GL_PACK_SWAP_BYTES + + + boolean + + + false + + + true or false + + + + + GL_PACK_LSB_FIRST + + + boolean + + + false + + + true or false + + + + + GL_PACK_ROW_LENGTH + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_IMAGE_HEIGHT + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_ROWS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_PIXELS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_IMAGES + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_ALIGNMENT + + + integer + + + 4 + + + 1, 2, 4, or 8 + + + + + GL_UNPACK_SWAP_BYTES + + + boolean + + + false + + + true or false + + + + + GL_UNPACK_LSB_FIRST + + + boolean + + + false + + + true or false + + + + + GL_UNPACK_ROW_LENGTH + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_IMAGE_HEIGHT + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_ROWS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_PIXELS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_IMAGES + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_ALIGNMENT + + + integer + + + 4 + + + 1, 2, 4, or 8 + + + + + + + glPixelStoref can be used to set any pixel store parameter. + If the parameter type is boolean, + then if param is 0, + the parameter is false; + otherwise it is set to true. + If pname is a integer type parameter, + param is rounded to the nearest integer. + + + Likewise, glPixelStorei can also be used to set any of the + pixel store parameters. + Boolean parameters are set to false if param is 0 and true otherwise. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_VALUE is generated if a negative row length, + pixel skip, + or row skip value is specified, + or if alignment is specified as other than 1, 2, 4, or 8. + + + Associated Gets + + glGet with argument GL_PACK_SWAP_BYTES + + + glGet with argument GL_PACK_LSB_FIRST + + + glGet with argument GL_PACK_ROW_LENGTH + + + glGet with argument GL_PACK_IMAGE_HEIGHT + + + glGet with argument GL_PACK_SKIP_ROWS + + + glGet with argument GL_PACK_SKIP_PIXELS + + + glGet with argument GL_PACK_SKIP_IMAGES + + + glGet with argument GL_PACK_ALIGNMENT + + + glGet with argument GL_UNPACK_SWAP_BYTES + + + glGet with argument GL_UNPACK_LSB_FIRST + + + glGet with argument GL_UNPACK_ROW_LENGTH + + + glGet with argument GL_UNPACK_IMAGE_HEIGHT + + + glGet with argument GL_UNPACK_SKIP_ROWS + + + glGet with argument GL_UNPACK_SKIP_PIXELS + + + glGet with argument GL_UNPACK_SKIP_IMAGES + + + glGet with argument GL_UNPACK_ALIGNMENT + + + See Also + + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glPointParameter.xml b/upstream-man-pages/man3/glPointParameter.xml new file mode 100644 index 0000000..d18d494 --- /dev/null +++ b/upstream-man-pages/man3/glPointParameter.xml @@ -0,0 +1,162 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPointParameter + 3G + + + glPointParameter + specify point parameters + + C Specification + + + void glPointParameterf + GLenum pname + GLfloat param + + + + + + void glPointParameteri + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies a single-valued point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. + + + + + param + + + Specifies the value that pname will be set to. + + + + + + C Specification + + + void glPointParameterfv + GLenum pname + const GLfloat * params + + + + + + void glPointParameteriv + GLenum pname + const GLint * params + + + + Parameters + + + pname + + + Specifies a point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. + + + + + params + + + Specifies the value to be assigned to pname.. + + + + + + Description + + The following values are accepted for pname: + + + + GL_POINT_FADE_THRESHOLD_SIZE + + + + + params is a single floating-point value that specifies the threshold value + to which point sizes are clamped if they exceed the specified value. The + default value is 1.0. + + + + + GL_POINT_SPRITE_COORD_ORIGIN + + + + + params is a single enum specifying the point sprite texture coordinate origin, either GL_LOWER_LEFT or GL_UPPER_LEFT. + The default value is GL_UPPER_LEFT. + + + + + + Errors + + GL_INVALID_VALUE is generated if the value specified for + GL_POINT_FADE_THRESHOLD_SIZE is less than zero. + + + GL_INVALID_ENUM is generated If the value specified for + GL_POINT_SPRITE_COORD_ORIGIN is not GL_LOWER_LEFT or GL_UPPER_LEFT. + + + Associated Gets + + glGet with argument GL_POINT_FADE_THRESHOLD_SIZE + + + glGet with argument GL_POINT_SPRITE_COORD_ORIGIN + + + See Also + + glPointSize + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glPointSize.xml b/upstream-man-pages/man3/glPointSize.xml new file mode 100644 index 0000000..77dcecb --- /dev/null +++ b/upstream-man-pages/man3/glPointSize.xml @@ -0,0 +1,97 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPointSize + 3G + + + glPointSize + specify the diameter of rasterized points + + C Specification + + + void glPointSize + GLfloat size + + + + + Parameters + + + size + + + Specifies the diameter of rasterized points. + The initial value is 1. + + + + + + Description + + glPointSize specifies the rasterized diameter of points. If point size mode + is disabled (see glEnable with parameter + GL_PROGRAM_POINT_SIZE), this value will be used to rasterize points. Otherwise, + the value written to the shading language built-in variable gl_PointSize will be used. + + + Notes + + The point size specified by glPointSize is always returned when + GL_POINT_SIZE is queried. Clamping and rounding for points have no effect on the specified value. + + + Errors + + GL_INVALID_VALUE is generated if size is less than or equal to 0. + + + Associated Gets + + glGet with argument GL_POINT_SIZE_RANGE + + + glGet with argument GL_POINT_SIZE_GRANULARITY + + + glGet with argument GL_POINT_SIZE + + + glGet with argument GL_POINT_SIZE_MIN + + + glGet with argument GL_POINT_SIZE_MAX + + + glGet with argument GL_POINT_FADE_THRESHOLD_SIZE + + + glIsEnabled with argument GL_PROGRAM_POINT_SIZE + + + See Also + + glEnable, + glPointParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glPolygonMode.xml b/upstream-man-pages/man3/glPolygonMode.xml new file mode 100644 index 0000000..0705c41 --- /dev/null +++ b/upstream-man-pages/man3/glPolygonMode.xml @@ -0,0 +1,147 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonMode + 3G + + + glPolygonMode + select a polygon rasterization mode + + C Specification + + + void glPolygonMode + GLenum face + GLenum mode + + + + Parameters + + + face + + + Specifies the polygons that mode applies to. + Must be GL_FRONT_AND_BACK for front- and back-facing polygons. + + + + + mode + + + Specifies how polygons will be rasterized. + Accepted values are + GL_POINT, + GL_LINE, and + GL_FILL. + The initial value is GL_FILL for both front- and back-facing polygons. + + + + + + Description + + glPolygonMode controls the interpretation of polygons for rasterization. + face describes which polygons mode applies to: + both front and back-facing polygons (GL_FRONT_AND_BACK). + The polygon mode affects only the final rasterization of polygons. + In particular, + a polygon's vertices are lit and + the polygon is clipped and possibly culled before these modes are applied. + + + Three modes are defined and can be specified in mode: + + + + GL_POINT + + + Polygon vertices that are marked as the start of a boundary edge + are drawn as points. + Point attributes such as + GL_POINT_SIZE and + GL_POINT_SMOOTH control + the rasterization of the points. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. + + + + + GL_LINE + + + Boundary edges of the polygon are drawn as line segments. + Line attributes such as + GL_LINE_WIDTH and + GL_LINE_SMOOTH control + the rasterization of the lines. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. + + + + + GL_FILL + + + The interior of the polygon is filled. + Polygon attributes such as GL_POLYGON_SMOOTH control the rasterization of the polygon. + + + + + + Examples + + To draw a surface with outlined polygons, + call + +glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); + + + + Notes + + Vertices are marked as boundary or nonboundary with an edge flag. + Edge flags are generated internally by the GL when it decomposes + triangle stips and fans. + + + Errors + + GL_INVALID_ENUM is generated if either face or mode is not + an accepted value. + + + Associated Gets + + glGet with argument GL_POLYGON_MODE + + + See Also + + glLineWidth, + glPointSize + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glPolygonOffset.xml b/upstream-man-pages/man3/glPolygonOffset.xml new file mode 100644 index 0000000..c93623c --- /dev/null +++ b/upstream-man-pages/man3/glPolygonOffset.xml @@ -0,0 +1,120 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonOffset + 3G + + + glPolygonOffset + set the scale and units used to calculate depth values + + C Specification + + + void glPolygonOffset + GLfloat factor + GLfloat units + + + + + Parameters + + + factor + + + Specifies a scale factor that is used to create a variable + depth offset for each polygon. The initial value is 0. + + + + + units + + + Is multiplied by an implementation-specific value to + create a constant depth offset. The initial value is 0. + + + + + + Description + + When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or + GL_POLYGON_OFFSET_POINT is enabled, each + fragment's depth value will be offset after it is interpolated + from the depth values of the appropriate vertices. + The value of the offset is + + + + + factor + × + DZ + + + + + r + × + units + + + , + where + + + DZ + + is a measurement of the change in depth relative to the screen + area of the polygon, and + r + is the smallest value that is guaranteed to + produce a resolvable offset for a given implementation. + The offset is added before the depth test is performed and before + the value is written into the depth buffer. + + + glPolygonOffset is useful for rendering hidden-line images, for applying decals + to surfaces, and for rendering solids with highlighted edges. + + + Associated Gets + + glIsEnabled with argument + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + or GL_POLYGON_OFFSET_POINT. + + + glGet with argument GL_POLYGON_OFFSET_FACTOR or + GL_POLYGON_OFFSET_UNITS. + + + See Also + + glDepthFunc, + glEnable, + glGet, + glIsEnabled + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glPrimitiveRestartIndex.xml b/upstream-man-pages/man3/glPrimitiveRestartIndex.xml new file mode 100644 index 0000000..1dd820f --- /dev/null +++ b/upstream-man-pages/man3/glPrimitiveRestartIndex.xml @@ -0,0 +1,80 @@ + + + + + + + 2010 + Khronos Group + + + glPrimitiveRestartIndex + 3G + + + glPrimitiveRestartIndex + specify the primitive restart index + + C Specification + + + void glPrimitiveRestartIndex + GLuint index + + + + Parameters + + + index + + + Specifies the value to be interpreted as the primitive restart index. + + + + + + Description + + glPrimitiveRestartIndex specifies a vertex array element that is treated specially when + primitive restarting is enabled. This is known as the primitive restart index. + + + When one of the Draw* commands transfers a set of generic attribute array elements to + the GL, if the index within the vertex arrays corresponding to that set is equal to the primitive restart + index, then the GL does not process those elements as a vertex. Instead, it is as if the drawing command + ended with the immediately preceding transfer, and another drawing command is immediately started with + the same parameters, but only transferring the immediately following element through the end of the + originally specified elements. + + + When either glDrawElementsBaseVertex, + glDrawElementsInstancedBaseVertex or + glMultiDrawElementsBaseVertex is used, the primitive restart + comparison occurs before the basevertex offset is added to the array index. + + + Notes + + glPrimitiveRestartIndex is available only if the GL version is 3.1 or greater. + + + See Also + + glDrawArrays, + glDrawElements, + glDrawElementsBaseVertex, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glProvokingVertex.xml b/upstream-man-pages/man3/glProvokingVertex.xml new file mode 100644 index 0000000..c93c6af --- /dev/null +++ b/upstream-man-pages/man3/glProvokingVertex.xml @@ -0,0 +1,220 @@ + + + + + + + 2010 + Khronos Group + + + glProvokingVertex + 3G + + + glProvokingVertex + specifiy the vertex to be used as the source of data for flat shaded varyings + + C Specification + + + void glProvokingVertex + GLenum provokeMode + + + + + Parameters + + + provokeMode + + + Specifies the vertex to be used as the source of data for flat shaded varyings. + + + + + + Description + + Flatshading a vertex shader varying output means to assign all vetices of the primitive the same value + for that output. The vertex from which these values is derived is known as the provoking vertex and + glProvokingVertex specifies which vertex is to be used as the source of data for flat shaded varyings. + + + provokeMode must be either GL_FIRST_VERTEX_CONVENTION or + GL_LAST_VERTEX_CONVENTION, and controls the selection of the vertex whose values are assigned to flatshaded + varying outputs. The interpretation of these values for the supported primitive types is: + + + + + + + + + Primitive Type of Polygon i + + + First Vertex Convention + + + Last Vertex Convention + + + + + point + + + i + + + i + + + + + independent line + + + 2i - 1 + + + 2i + + + + + line loop + + + i + + + + i + 1, if i < n + + + 1, if i = n + + + + + + line strip + + + i + + + i + 1 + + + + + independent triangle + + + 3i - 2 + + + 3i + + + + + triangle strip + + + i + + + i + 2 + + + + + triangle fan + + + i + 1 + + + i + 2 + + + + + line adjacency + + + 4i - 2 + + + 4i - 1 + + + + + line strip adjacency + + + i + 1 + + + i + 2 + + + + + triangle adjacency + + + 6i - 5 + + + 6i - 1 + + + + + triangle strip adjacency + + + 2i - 1 + + + 2i + 3 + + + + + + + + If a vertex or geometry shader is active, user-defined varying outputs may be flatshaded by using the + flat qualifier when declaring the output. + + + Notes + + glProvokingVertex is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if provokeMode is not an accepted value. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glQueryCounter.xml b/upstream-man-pages/man3/glQueryCounter.xml new file mode 100644 index 0000000..a834139 --- /dev/null +++ b/upstream-man-pages/man3/glQueryCounter.xml @@ -0,0 +1,96 @@ + + + + + + + 2010 + Khronos Group + + + glQueryCounter + 3G + + + glQueryCounter + record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed. + + C Specification + + + void glQueryCounter + GLuint id + GLenum target + + + + Parameters + + + id + + + Specify the name of a query object into which to record the GL time. + + + + + target + + + Specify the counter to query. target must be GL_TIMESTAMP. + + + + + + Description + + glQueryCounter causes the GL to record the current time into the query object named id. + target must be GL_TIMESTAMP. The time is recorded after all previous commands on the + GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object + is marked available. glQueryCounter timer queries can be used within a glBeginQuery / + glEndQuery block where the target is GL_TIME_ELAPSED and it does + not affect the result of that query object. + + + Notes + + glQueryCounter is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_OPERATION is generated if id is the name + of a query object that is already in use within a glBeginQuery / + glEndQuery block. + + + GL_INVALID_VALUE is generated if id is not the name of a query object returned + from a previous call to glGenQueries. + + + GL_INVALID_ENUM is generated if target is not GL_TIMESTAMP. + + + See Also + + glGenQueries, + glBeginQuery, + glEndQuery, + glDeleteQueries, + glGetQueryObject, + glGetQueryiv, + glGet + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glReadBuffer.xml b/upstream-man-pages/man3/glReadBuffer.xml new file mode 100644 index 0000000..febd4a7 --- /dev/null +++ b/upstream-man-pages/man3/glReadBuffer.xml @@ -0,0 +1,113 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glReadBuffer + 3G + + + glReadBuffer + select a color buffer source for pixels + + C Specification + + + void glReadBuffer + GLenum mode + + + + Parameters + + + mode + + + Specifies a color buffer. + Accepted values are + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, and the constants + GL_COLOR_ATTACHMENTi. + + + + + + Description + + glReadBuffer specifies a color buffer as the source for subsequent + glReadPixels, glCopyTexImage1D, glCopyTexImage2D, + glCopyTexSubImage1D, glCopyTexSubImage2D, and + glCopyTexSubImage3D commands. + mode accepts one of twelve or more predefined values. + In a fully configured system, + GL_FRONT, + GL_LEFT, and + GL_FRONT_LEFT all name the front left buffer, + GL_FRONT_RIGHT and + GL_RIGHT name the front right buffer, and + GL_BACK_LEFT and + GL_BACK name the back left buffer. + Furthermore, the constants GL_COLOR_ATTACHMENTi may be used to indicate the + ith color attachment where i ranges from zero to the + value of GL_MAX_COLOR_ATTACHMENTS minus one. + + + Nonstereo double-buffered configurations have only a front left and a + back left buffer. + Single-buffered configurations have a front left and a front right + buffer if stereo, and only a front left buffer if nonstereo. + It is an error to specify a nonexistent buffer to glReadBuffer. + + + mode is initially GL_FRONT in single-buffered configurations + and GL_BACK in double-buffered configurations. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of the twelve + (or more) accepted values. + + + GL_INVALID_OPERATION is generated if mode specifies a buffer + that does not exist. + + + Associated Gets + + glGet with argument GL_READ_BUFFER + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawBuffer, + glReadPixels + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glReadPixels.xml b/upstream-man-pages/man3/glReadPixels.xml new file mode 100644 index 0000000..798a87e --- /dev/null +++ b/upstream-man-pages/man3/glReadPixels.xml @@ -0,0 +1,1188 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glReadPixels + 3G + + + glReadPixels + read a block of pixels from the frame buffer + + C Specification + + + void glReadPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLvoid * data + + + + + Parameters + + + x + y + + + Specify the window coordinates of the first pixel + that is read from the frame buffer. + This location is the lower left corner of a rectangular block of pixels. + + + + + width + height + + + Specify the dimensions of the pixel rectangle. + width and height of one correspond to a single pixel. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + Must be one of + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, or + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + + + data + + + Returns the pixel data. + + + + + + Description + + glReadPixels returns pixel data from the frame buffer, + starting with the pixel whose lower left corner + is at location (x, y), + into client memory starting at location data. + Several parameters control the processing of the pixel data before + it is placed into client memory. + These parameters are set with glPixelStore. + This reference page describes the effects on glReadPixels of most, + but not all of the parameters specified by these three commands. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a block of pixels is + requested, data is treated as a byte offset into the buffer object's data store + rather than a pointer to client memory. + + + glReadPixels returns values from each pixel with lower left corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are returned in row order from the lowest to the highest row, + left to right in each row. + + + format specifies the format for the returned pixel values; + accepted values are: + + + + GL_STENCIL_INDEX + + + Stencil values are read from the stencil buffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_S_TO_S. + + + + + GL_DEPTH_COMPONENT + + + Depth values are read from the depth buffer. + Each component is converted to floating point such that the minimum depth + value maps to 0 and the maximum value maps to 1. + Each component is then multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + and finally clamped to the range + + + + 0 + 1 + + . + + + + + GL_DEPTH_STENCIL + + + Values are taken from both the depth and stencil buffers. The type parameter + must be GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + + + GL_RED + + + + + GL_GREEN + + + + + GL_BLUE + + + + + GL_RGB + + + + + GL_BGR + + + + + GL_RGBA + + + + + GL_BGRA + + + + + + Finally, the indices or components + are converted to the proper format, + as specified by type. + If format is GL_STENCIL_INDEX + and type is not GL_FLOAT, + each index is masked with the mask value given in the following table. + If type is GL_FLOAT, then each integer index is converted to + single-precision floating-point format. + + + If format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, or + GL_BGRA and type is not GL_FLOAT, + each component is multiplied by the multiplier shown in the following table. + If type is GL_FLOAT, then each component is passed as is + (or converted to the client's single-precision floating-point format if + it is different from the one used by the GL). + + + + + + + + + + + + type + + + Index Mask + + + Component Conversion + + + + + + + GL_UNSIGNED_BYTE + + + + + + 2 + 8 + + - + 1 + + + + + + + + + + 2 + 8 + + - + 1 + + + + c + + + + + + + GL_BYTE + + + + + + 2 + 7 + + - + 1 + + + + + + + + + + + + 2 + 8 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_UNSIGNED_SHORT + + + + + + 2 + 16 + + - + 1 + + + + + + + + + + 2 + 16 + + - + 1 + + + + c + + + + + + + GL_SHORT + + + + + + 2 + 15 + + - + 1 + + + + + + + + + + + + 2 + 16 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_UNSIGNED_INT + + + + + + 2 + 32 + + - + 1 + + + + + + + + + + 2 + 32 + + - + 1 + + + + c + + + + + + + GL_INT + + + + + + 2 + 31 + + - + 1 + + + + + + + + + + + + 2 + 32 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_HALF_FLOAT + + + none + + + c + + + + + GL_FLOAT + + + none + + + c + + + + + GL_UNSIGNED_BYTE_3_3_2 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_BYTE_2_3_3_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_5_6_5 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_5_6_5_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_4_4_4_4 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_4_4_4_4_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_5_5_5_1 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_1_5_5_5_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_8_8_8_8 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_8_8_8_8_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_10_10_10_2 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_2_10_10_10_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_24_8 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_10F_11F_11F_REV + + + -- + + + Special + + + + + GL_UNSIGNED_INT_5_9_9_9_REV + + + -- + + + Special + + + + + GL_FLOAT_32_UNSIGNED_INT_24_8_REV + + + none + + + c (Depth Only) + + + + + + + Return values are placed in memory as follows. + If format is + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, or + GL_BLUE, + a single value is returned and the data for the + ith + pixel in the + jth + row + is placed in location + + + + + j + + + width + + + i + + . + GL_RGB and GL_BGR return three values, + GL_RGBA and GL_BGRA return four values for each pixel, + with all values corresponding to a single pixel occupying contiguous space + in data. + Storage parameters set by glPixelStore, + such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, + affect the way that data is written into memory. + See glPixelStore for a description. + + + Notes + + Values for pixels that lie outside the window + connected to the current GL context are undefined. + + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if format or type is not an + accepted value. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. + + + GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT + and there is no depth buffer. + + + GL_INVALID_OPERATION is generated if format is GL_DEPTH_STENCIL + and there is no depth buffer or if there is no stencil buffer. + + + GL_INVALID_ENUM is generated if format is GL_DEPTH_STENCIL + and type is not GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if GL_READ_FRAMEBUFFER_BINDING + is non-zero, the read framebuffer is complete, and the value of GL_SAMPLE_BUFFERS + for the read framebuffer is greater than zero. + + + Associated Gets + + glGet with argument GL_INDEX_MODE + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glPixelStore, + glReadBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glRenderbufferStorage.xml b/upstream-man-pages/man3/glRenderbufferStorage.xml new file mode 100644 index 0000000..392b1c1 --- /dev/null +++ b/upstream-man-pages/man3/glRenderbufferStorage.xml @@ -0,0 +1,118 @@ + + + + + + + 2010 + Khronos Group + + + glRenderbufferStorage + 3G + + + glRenderbufferStorage + establish data storage, format and dimensions of a renderbuffer object's image + + C Specification + + + void glRenderbufferStorage + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + + + + Parameters + + + target + + + Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. + + + + + internalformat + + + Specifies the internal format to use for the renderbuffer object's image. + + + + + width + + + Specifies the width of the renderbuffer, in pixels. + + + + + height + + + Specifies the height of the renderbuffer, in pixels. + + + + + + Description + + glRenderbufferStorage is equivalent to calling + glRenderbufferStorageMultisample with the + samples set to zero. + + + The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. + + + Upon success, glRenderbufferStorage deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorage are undefined. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. + + + GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. + + + GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glRenderbufferStorageMultisample, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glRenderbufferStorageMultisample.xml b/upstream-man-pages/man3/glRenderbufferStorageMultisample.xml new file mode 100644 index 0000000..4a01c0b --- /dev/null +++ b/upstream-man-pages/man3/glRenderbufferStorageMultisample.xml @@ -0,0 +1,136 @@ + + + + + + + 2010 + Khronos Group + + + glRenderbufferStorageMultisample + 3G + + + glRenderbufferStorageMultisample + establish data storage, format, dimensions and sample count of a renderbuffer object's image + + C Specification + + + void glRenderbufferStorageMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + + Parameters + + + target + + + Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. + + + + + samples + + + Specifies the number of samples to be used for the renderbuffer object's storage. + + + + + internalformat + + + Specifies the internal format to use for the renderbuffer object's image. + + + + + width + + + Specifies the width of the renderbuffer, in pixels. + + + + + height + + + Specifies the height of the renderbuffer, in pixels. + + + + + + Description + + glRenderbufferStorageMultisample establishes the data storage, format, dimensions and number of + samples of a renderbuffer object's image. + + + The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. samples specifies the number of samples to be used + for the renderbuffer object's image, and must be less than or equal to the value of GL_MAX_SAMPLES. + If internalformat is a signed or unsigned integer format then samples must be + less than or equal to the value of GL_MAX_INTEGER_SAMPLES. + + + Upon success, glRenderbufferStorageMultisample deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorageMultisample are undefined. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. + + + GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. + + + GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. + + + GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format + and samples is greater than the value of GL_MAX_INTEGER_SAMPLES + + + GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glRenderbufferStorage, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glSampleCoverage.xml b/upstream-man-pages/man3/glSampleCoverage.xml new file mode 100644 index 0000000..2e17cf1 --- /dev/null +++ b/upstream-man-pages/man3/glSampleCoverage.xml @@ -0,0 +1,119 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSampleCoverage + 3G + + + glSampleCoverage + specify multisample coverage parameters + + C Specification + + + void glSampleCoverage + GLclampf value + GLboolean invert + + + + + Parameters + + + value + + + Specify a single floating-point sample coverage value. The value is + clamped to the range + + + + 0 + 1 + + . + The initial value is 1.0. + + + + + invert + + + Specify a single boolean value representing if the coverage masks should be + inverted. GL_TRUE and GL_FALSE are accepted. The initial value + is GL_FALSE. + + + + + + Description + + Multisampling samples a pixel multiple times at various + implementation-dependent subpixel locations to generate antialiasing + effects. Multisampling transparently antialiases points, lines, polygons, + and images if it is enabled. + + + value is used in constructing a temporary mask used in determining which + samples will be used in resolving the final fragment color. This mask is + bitwise-anded with the coverage mask generated from the multisampling + computation. If the invert flag is set, the temporary mask is inverted + (all bits flipped) and then the bitwise-and is computed. + + + If an implementation does not have any multisample buffers available, or + multisampling is disabled, rasterization occurs with only a single sample + computing a pixel's final RGB color. + + + Provided an implementation supports multisample buffers, and multisampling + is enabled, then a pixel's final color is generated by combining several + samples per pixel. Each sample contains color, depth, and stencil + information, allowing those operations to be performed on each sample. + + + Associated Gets + + glGet with argument GL_SAMPLE_COVERAGE_VALUE + + + glGet with argument GL_SAMPLE_COVERAGE_INVERT + + + glIsEnabled with argument GL_MULTISAMPLE + + + glIsEnabled with argument GL_SAMPLE_ALPHA_TO_COVERAGE + + + glIsEnabled with argument GL_SAMPLE_ALPHA_TO_ONE + + + glIsEnabled with argument GL_SAMPLE_COVERAGE + + + See Also + + glEnable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glSampleMaski.xml b/upstream-man-pages/man3/glSampleMaski.xml new file mode 100644 index 0000000..f1f3f70 --- /dev/null +++ b/upstream-man-pages/man3/glSampleMaski.xml @@ -0,0 +1,88 @@ + + + + + + + 2010 + Khronos Group + + + glSampleMaski + 3G + + + glSampleMaski + set the value of a sub-word of the sample mask + + C Specification + + + void glSampleMaski + GLuint maskNumber + GLbitfield mask + + + + Parameters + + + maskNumber + + + Specifies which 32-bit sub-word of the sample mask to update. + + + + + mask + + + Specifies the new value of the mask sub-word. + + + + + + Description + + glSampleMaski sets one 32-bit sub-word of the multi-word sample mask, GL_SAMPLE_MASK_VALUE. + + + maskIndex specifies which 32-bit sub-word of the sample mask to update, and mask specifies + the new value to use for that sub-word. maskIndex must be less than the value of + GL_MAX_SAMPLE_MASK_WORDS. Bit B of mask word M corresponds to sample + 32 x M + B. + + + Notes + + glSampleMaski is available only if the GL version is 3.2 or greater, or if the ARB_texture_multisample + extension is supported. + + + Errors + + GL_INVALID_VALUE is generated if maskIndex is greater than or equal to the value + of GL_MAX_SAMPLE_MASK_WORDS. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glRenderbufferStorageMultisample, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glSamplerParameter.xml b/upstream-man-pages/man3/glSamplerParameter.xml new file mode 100644 index 0000000..8907d7f --- /dev/null +++ b/upstream-man-pages/man3/glSamplerParameter.xml @@ -0,0 +1,1144 @@ + + + + + + + 2010 + KhronosGroup + + + glSamplerParameter + 3G + + + glSamplerParameter + set sampler parameters + + C Specification + + + void glSamplerParameterf + GLuint sampler + GLenum pname + GLfloat param + + + + + void glSamplerParameteri + GLuint sampler + GLenum pname + GLint param + + + + + Parameters + + + sampler + + + Specifies the sampler object whose parameter to modify. + + + + + pname + + + Specifies the symbolic name of a single-valued sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. + + + + + param + + + Specifies the value of pname. + + + + + + C Specification + + + void glSamplerParameterfv + GLuint sampler + GLenum pname + const GLfloat * params + + + + + void glSamplerParameteriv + GLuint sampler + GLenum pname + const GLint * params + + + + + void glSamplerParameterIiv + GLuint sampler + GLenum pname + const GLint * params + + + + + void glSamplerParameterIuiv + GLuint sampler + GLenum pname + const GLuint * params + + + + Parameters + + + sampler + + + Specifies the sampler object whose parameter to modify. + + + + + pname + + + Specifies the symbolic name of a sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. + + + + + params + + + Specifies a pointer to an array where the value or values of pname + are stored. + + + + + + Description + + glSamplerParameter assigns the value or values in params to the sampler parameter + specified as pname. + sampler specifies the sampler object to be modified, and must be the name of a sampler object previously + returned from a call to glGenSamplers. + The following symbols are accepted in pname: + + + + GL_TEXTURE_MIN_FILTER + + + The texture minifying function is used whenever the pixel being textured + maps to an area greater than one texture element. + There are six defined minifying functions. + Two of them use the nearest one or nearest four texture elements + to compute the texture value. + The other four use mipmaps. + + + A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. + + + params supplies a function for minifying the texture as one of the + following: + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + GL_NEAREST_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value. + + + + + GL_LINEAR_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value. + + + + + GL_NEAREST_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + GL_LINEAR_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + + + As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or four texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MAG_FILTER + + + The texture magnification function is used when the pixel being textured + maps to an area less than or equal to one texture element. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + + + + + + + + + + + GL_TEXTURE_MIN_LOD + + + Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. + + + + + + + + + GL_TEXTURE_MAX_LOD + + + Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. + + + + + + + + + GL_TEXTURE_WRAP_S + + + Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_BORDER causes the + s + coordinate to be clamped to the range + + + + + + + -1 + 2N + + + + + 1 + + + + + + 1 + 2N + + + + + + , + where + N + is the size of the texture in the direction of + clamping.GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + + + s + + + + , + where + + + + frac + + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_T + + + Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . + + + + + GL_TEXTURE_COMPARE_MODE + + + Specifies the texture comparison mode for currently bound textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: + + + GL_COMPARE_REF_TO_TEXTURE + + + Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. + + + + + GL_NONE + + + Specifies that the red channel should be assigned the + appropriate value from the currently bound texture. + + + + + + + + + GL_TEXTURE_COMPARE_FUNC + + + Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: + + + + + + + + Texture Comparison Function + + + Computed result + + + + + + + GL_LEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + + + + + + + GL_GEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + + + + + + + GL_LESS + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + + + + + + + GL_GREATER + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + + + + + + + GL_EQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + + + D + t + + + + + + + + + + + + + + GL_NOTEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + + + D + t + + + + + + + r + = + + D + t + + + + + + + + + + + + + + GL_ALWAYS + + + + + + result + = + 1.0 + + + + + + + + GL_NEVER + + + + + + result + = + 0.0 + + + + + + + + + where r + is the current interpolated texture coordinate, and + + + D + t + + + is the texture value sampled from the currently bound texture. + result + is assigned to + + + R + t + + . + + + + + + Notes + + glSamplerParameter is available only if the GL version is 3.3 or higher. + + + If a sampler object is bound to a texture unit and that unit is used to sample from a texture, the parameters in the sampler + are used to sample from the texture, rather than the equivalent parameters in the texture object bound to that unit. This + introduces the possibility of sampling from the same texture object with different sets of sampler state, which may lead to + a condition where a texture is incomplete with respect to one sampler object and not with respect to + another. Thus, completeness can be considered a function of a sampler object and a texture object bound to a single + texture unit, rather than a property of the texture object itself. + + + Errors + + GL_INVALID_VALUE is generated if sampler is not the name of a sampler object previously + returned from a call to glGenSamplers. + + + GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. + + + Associated Gets + + glGetSamplerParameter + + + See Also + + glGenSamplers, + glBindSampler, + glDeleteSamplers, + glIsSampler, + glBindTexture, + glTexParameter + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glScissor.xml b/upstream-man-pages/man3/glScissor.xml new file mode 100644 index 0000000..eb88163 --- /dev/null +++ b/upstream-man-pages/man3/glScissor.xml @@ -0,0 +1,109 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glScissor + 3G + + + glScissor + define the scissor box + + C Specification + + + void glScissor + GLint x + GLint y + GLsizei width + GLsizei height + + + + Parameters + + + x + y + + + Specify the lower left corner of the scissor box. + Initially (0, 0). + + + + + width + height + + + Specify the width and height of the scissor box. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + + Description + + glScissor defines a rectangle, called the scissor box, + in window coordinates. + The first two arguments, + x and y, + specify the lower left corner of the box. + width and height specify the width and height of the box. + + + To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. + + + When the scissor test is disabled, + it is as though the scissor box includes the entire window. + + + Errors + + GL_INVALID_VALUE is generated if either width or height is negative. + + + Associated Gets + + glGet with argument GL_SCISSOR_BOX + + + glIsEnabled with argument GL_SCISSOR_TEST + + + See Also + + glEnable, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glShaderSource.xml b/upstream-man-pages/man3/glShaderSource.xml new file mode 100644 index 0000000..2d64a1e --- /dev/null +++ b/upstream-man-pages/man3/glShaderSource.xml @@ -0,0 +1,118 @@ + + + + + glShaderSource + 3G + + + glShaderSource + Replaces the source code in a shader object + + C Specification + + + void glShaderSource + GLuint shader + GLsizei count + const GLchar **string + const GLint *length + + + + Parameters + + + shader + + Specifies the handle of the shader object + whose source code is to be replaced. + + + + count + + Specifies the number of elements in the + string and + length + arrays. + + + + string + + Specifies an array of pointers to strings + containing the source code to be loaded into the + shader. + + + + length + + Specifies an array of string lengths. + + + + + Description + glShaderSource sets the source code + in shader to the source code in the array + of strings specified by string. Any + source code previously stored in the shader object is completely + replaced. The number of strings in the array is specified by + count. If length + is NULL, each string is assumed to be null + terminated. If length is a value other + than NULL, it points to an array containing + a string length for each of the corresponding elements of + string. Each element in the + length array may contain the length of + the corresponding string (the null character is not counted as + part of the string length) or a value less than 0 to indicate + that the string is null terminated. The source code strings are + not scanned or parsed at this time; they are simply copied into + the specified shader object. + + Notes + OpenGL copies the shader source code strings when + glShaderSource is called, so an application + may free its copy of the source code strings immediately after + the function returns. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + count is less than 0. + + + Associated Gets + glGetShader + with arguments shader and + GL_SHADER_SOURCE_LENGTH + + glGetShaderSource + with argument shader + + glIsShader + + See Also + glCompileShader, + glCreateShader, + glDeleteShader + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glStencilFunc.xml b/upstream-man-pages/man3/glStencilFunc.xml new file mode 100644 index 0000000..3da7c33 --- /dev/null +++ b/upstream-man-pages/man3/glStencilFunc.xml @@ -0,0 +1,293 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilFunc + 3G + + + glStencilFunc + set front and back function and reference value for stencil testing + + + C Specification + + + void glStencilFunc + GLenum func + GLint ref + GLuint mask + + + + Parameters + + + func + + + Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. + + + + + mask + + + Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + Stencil planes are first drawn into using GL drawing primitives, then + geometry and images are rendered using the stencil planes to mask out + portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. + + + There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values. Use glStencilFuncSeparate + to set front and back stencil state to different values. + + + func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. + + + If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + + + The following values are accepted by func: + + + + GL_NEVER + + + Always fails. + + + + + GL_LESS + + + Passes if ( ref & mask ) < ( stencil & mask ). + + + + + GL_LEQUAL + + + Passes if ( ref & mask ) <= ( stencil & mask ). + + + + + GL_GREATER + + + Passes if ( ref & mask ) > ( stencil & mask ). + + + + + GL_GEQUAL + + + Passes if ( ref & mask ) >= ( stencil & mask ). + + + + + GL_EQUAL + + + Passes if ( ref & mask ) = ( stencil & mask ). + + + + + GL_NOTEQUAL + + + Passes if ( ref & mask ) != ( stencil & mask ). + + + + + GL_ALWAYS + + + Always passes. + + + + + + Notes + + Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. + + + glStencilFunc is the same as + calling glStencilFuncSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glStencilFuncSeparate.xml b/upstream-man-pages/man3/glStencilFuncSeparate.xml new file mode 100644 index 0000000..4a689ca --- /dev/null +++ b/upstream-man-pages/man3/glStencilFuncSeparate.xml @@ -0,0 +1,302 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilFuncSeparate + 3G + + + glStencilFuncSeparate + set front and/or back function and reference value for stencil testing + + + C Specification + + + void glStencilFuncSeparate + GLenum face + GLenum func + GLint ref + GLuint mask + + + + Parameters + + + face + + + Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + func + + + Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. + + + + + mask + + + Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. + + + There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values, as if + glStencilFuncSeparate were called + with face set to GL_FRONT_AND_BACK. + + + func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. + + + If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + + + The following values are accepted by func: + + + + GL_NEVER + + + Always fails. + + + + + GL_LESS + + + Passes if ( ref & mask ) < ( stencil & mask ). + + + + + GL_LEQUAL + + + Passes if ( ref & mask ) <= ( stencil & mask ). + + + + + GL_GREATER + + + Passes if ( ref & mask ) > ( stencil & mask ). + + + + + GL_GEQUAL + + + Passes if ( ref & mask ) >= ( stencil & mask ). + + + + + GL_EQUAL + + + Passes if ( ref & mask ) = ( stencil & mask ). + + + + + GL_NOTEQUAL + + + Passes if ( ref & mask ) != ( stencil & mask ). + + + + + GL_ALWAYS + + + Always passes. + + + + + + Notes + + Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. + + + Errors + + GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glStencilMask.xml b/upstream-man-pages/man3/glStencilMask.xml new file mode 100644 index 0000000..65b13db --- /dev/null +++ b/upstream-man-pages/man3/glStencilMask.xml @@ -0,0 +1,99 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilMask + 3G + + + glStencilMask + control the front and back writing of individual bits in the stencil planes + + C Specification + + + void glStencilMask + GLuint mask + + + + + Parameters + + + mask + + + Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. + + + + + + Description + + glStencilMask controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. + + + There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values. Use glStencilMaskSeparate + to set front and back stencil writemasks to different values. + + + Notes + + glStencilMask is the same as + calling glStencilMaskSeparate + with face set to GL_FRONT_AND_BACK. + + + Associated Gets + + glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS + + + See Also + + glColorMask, + glDepthMask, + glStencilFunc, + glStencilFuncSeparate, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glStencilMaskSeparate.xml b/upstream-man-pages/man3/glStencilMaskSeparate.xml new file mode 100644 index 0000000..f54f87e --- /dev/null +++ b/upstream-man-pages/man3/glStencilMaskSeparate.xml @@ -0,0 +1,111 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilMaskSeparate + 3G + + + glStencilMaskSeparate + control the front and/or back writing of individual bits in the stencil planes + + C Specification + + + void glStencilMaskSeparate + GLenum face + GLuint mask + + + + + Parameters + + + face + + + Specifies whether the front and/or back stencil writemask is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + mask + + + Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. + + + + + + Description + + glStencilMaskSeparate controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. + + + There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values, as if + glStencilMaskSeparate were called + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if face is not one of the accepted tokens. + + + Associated Gets + + glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS + + + See Also + + glColorMask, + glDepthMask, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glStencilOp.xml b/upstream-man-pages/man3/glStencilOp.xml new file mode 100644 index 0000000..1b6752e --- /dev/null +++ b/upstream-man-pages/man3/glStencilOp.xml @@ -0,0 +1,270 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilOp + 3G + + + glStencilOp + set front and back stencil test actions + + + C Specification + + + void glStencilOp + GLenum sfail + GLenum dpfail + GLenum dppass + + + + Parameters + + + sfail + + + Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. + + + + + dpfail + + + Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + dppass + + + Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. + + + There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values. Use glStencilOpSeparate + to set front and back stencil state to different values. + + + glStencilOp takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. + + + + GL_KEEP + + + Keeps the current value. + + + + + GL_ZERO + + + Sets the stencil buffer value to 0. + + + + + GL_REPLACE + + + Sets the stencil buffer value to ref, + as specified by glStencilFunc. + + + + + GL_INCR + + + Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. + + + + + GL_INCR_WRAP + + + Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. + + + + + GL_DECR + + + Decrements the current stencil buffer value. + Clamps to 0. + + + + + GL_DECR_WRAP + + + Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. + + + + + GL_INVERT + + + Bitwise inverts the current stencil buffer value. + + + + + + Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. + + + The other two arguments to glStencilOp specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. + + + Notes + + Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil tests always pass, + regardless of any call to glStencilOp. + + + glStencilOp is the same as + calling glStencilOpSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the defined constant values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glStencilOpSeparate.xml b/upstream-man-pages/man3/glStencilOpSeparate.xml new file mode 100644 index 0000000..409cee1 --- /dev/null +++ b/upstream-man-pages/man3/glStencilOpSeparate.xml @@ -0,0 +1,282 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilOpSeparate + 3G + + + glStencilOpSeparate + set front and/or back stencil test actions + + + C Specification + + + void glStencilOpSeparate + GLenum face + GLenum sfail + GLenum dpfail + GLenum dppass + + + + Parameters + + + face + + + Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + sfail + + + Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. + + + + + dpfail + + + Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + dppass + + + Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. + + + There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values, as if + glStencilOpSeparate were called + with face set to GL_FRONT_AND_BACK. + + + glStencilOpSeparate takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. + + + + GL_KEEP + + + Keeps the current value. + + + + + GL_ZERO + + + Sets the stencil buffer value to 0. + + + + + GL_REPLACE + + + Sets the stencil buffer value to ref, + as specified by glStencilFunc. + + + + + GL_INCR + + + Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. + + + + + GL_INCR_WRAP + + + Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. + + + + + GL_DECR + + + Decrements the current stencil buffer value. + Clamps to 0. + + + + + GL_DECR_WRAP + + + Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. + + + + + GL_INVERT + + + Bitwise inverts the current stencil buffer value. + + + + + + Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. + + + The other two arguments to glStencilOpSeparate specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. + + + Notes + + Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil test always passes. + + + Errors + + GL_INVALID_ENUM is generated if face is any value + other than GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK. + + + GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glTexBuffer.xml b/upstream-man-pages/man3/glTexBuffer.xml new file mode 100644 index 0000000..c9f7420 --- /dev/null +++ b/upstream-man-pages/man3/glTexBuffer.xml @@ -0,0 +1,468 @@ + + + + + + + 2010 + Khronos Group + + + glTexBuffer + 3G + + + glTexBuffer + attach the storage for a buffer object to the active buffer texture + + C Specification + + + void glTexBuffer + GLenum target + GLenum internalFormat + Gluintbuffer + + + + Parameters + + + target + + + Specifies the target of the operation and must be GL_TEXTURE_BUFFER. + + + + + internalFormat + + + Specifies the internal format of the data in the store belonging to buffer. + + + + + buffer + + + Specifies the name of the buffer object whose storage to attach to the active buffer texture. + + + + + + Description + + glTexBuffer attaches the storage for the buffer object named buffer to the active + buffer texture, and specifies the internal format for the texel array found in the attached buffer object. If buffer + is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer + is non-zero, it must be the name of an existing buffer object. target must be GL_TEXTURE_BUFFER. + internalformat specifies the storage format, and must be one of the following sized internal formats: + + + + + + + + + + + + + + + + + + + Component + + + + + + Sized Internal Format + Base Type + Components + Norm + 0 + 1 + 2 + 3 + + + GL_R8 + ubyte + 1 + YES + R + 0 + 0 + 1 + + + GL_R16 + ushort + 1 + YES + R + 0 + 0 + 1 + + + GL_R16F + half + 1 + NO + R + 0 + 0 + 1 + + + GL_R32F + float + 1 + NO + R + 0 + 0 + 1 + + + GL_R8I + byte + 1 + NO + R + 0 + 0 + 1 + + + GL_R16I + short + 1 + NO + R + 0 + 0 + 1 + + + GL_R32I + int + 1 + NO + R + 0 + 0 + 1 + + + GL_R8UI + ubyte + 1 + NO + R + 0 + 0 + 1 + + + GL_R16UI + ushort + 1 + NO + R + 0 + 0 + 1 + + + GL_R32UI + uint + 1 + NO + R + 0 + 0 + 1 + + + GL_RG8 + ubyte + 2 + YES + R + G + 0 + 1 + + + GL_RG16 + ushort + 2 + YES + R + G + 0 + 1 + + + GL_RG16F + half + 2 + NO + R + G + 0 + 1 + + + GL_RG32F + float + 2 + NO + R + G + 0 + 1 + + + GL_RG8I + byte + 2 + NO + R + G + 0 + 1 + + + GL_RG16I + short + 2 + NO + R + G + 0 + 1 + + + GL_RG32I + int + 2 + NO + R + G + 0 + 1 + + + GL_RG8UI + ubyte + 2 + NO + R + G + 0 + 1 + + + GL_RG16UI + ushort + 2 + NO + R + G + 0 + 1 + + + GL_RG32UI + uint + 2 + NO + R + G + 0 + 1 + + + GL_RGBA8 + uint + 4 + YES + R + G + B + A + + + GL_RGBA16 + short + 4 + YES + R + G + B + A + + + GL_RGBA16F + half + 4 + NO + R + G + B + A + + + GL_RGBA32F + float + 4 + NO + R + G + B + A + + + GL_RGBA8I + byte + 4 + NO + R + G + B + A + + + GL_RGBA16I + short + 4 + NO + R + G + B + A + + + GL_RGBA32I + int + 4 + NO + R + G + B + A + + + GL_RGBA8UI + ubyte + 4 + NO + R + G + B + A + + + GL_RGBA16UI + ushort + 4 + NO + R + G + B + A + + + GL_RGBA32UI + uint + 4 + NO + R + G + B + A + + + + + + When a buffer object is attached to a buffer texture, the buffer object's data store + is taken as the texture's texel array. The number of texels in the buffer texture's + texel array is given by + + + + + + buffer_size + + + components × sizeof(base_type) + + + + + + where buffer_size is the size of the buffer object, in basic machine units and + components and base type are the element count and base data type for elements, as specified in the table above. + The number of texels in the texel array is then clamped to the implementation-dependent limit GL_MAX_TEXTURE_BUFFER_SIZE. + When a buffer texture is accessed in a shader, the results of a texel fetch are undefined if the specified texel coordinate is negative, or + greater than or equal to the clamped number of texels in the texel array. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_BUFFER. + + + GL_INVALID_ENUM is generated if internalFormat is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if buffer is not zero or the name of an existing buffer object. + + + Notes + + glTexBuffer is available only if the GL version is 3.1 or greater. + + + Associated Gets + glGet + with argument GL_MAX_TEXTURE_BUFFER_SIZE + glGet + with argument GL_TEXTURE_BINDING_BUFFER + glGetTexLevelParameter + with argument GL_TEXTURE_BUFFER_DATA_STORE_BINDING + + See Also + + glGenBuffers, + glBindBuffer, + glBufferData, + glDeleteBuffers, + glGenTextures, + glBindTexture, + glDeleteTextures + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glTexImage1D.xml b/upstream-man-pages/man3/glTexImage1D.xml new file mode 100644 index 0000000..b83ec76 --- /dev/null +++ b/upstream-man-pages/man3/glTexImage1D.xml @@ -0,0 +1,600 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage1D + 3G + + + glTexImage1D + specify a one-dimensional texture image + + C Specification + + + void glTexImage1D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_R3_G3_B2, + GL_RED, + GL_RG, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + width + + + Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. The height of the 1D texture image is 1. + + + + + border + + + This value must be 0. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. + + + Texture images are defined with glTexImage1D. + The arguments describe the parameters of the texture image, + such as width, + width of the border, + level-of-detail number + (see glTexParameter), + and the internal resolution and format used to store the image. + The last three arguments describe how the image is represented in + memory. + + + If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked against the implementation's capabilities. + If the implementation cannot handle a texture of the + requested texture size, it sets all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_1D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the left end of the texture array. + Subsequent elements progress left-to-right through the remaining texels + in the texture array. + The final element corresponds to the right end of the texture array. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RG + + + Each element is a single red/green double + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_DEPTH_COMPONENT + + + Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. + + + + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, + GL_RGB and GL_RGBA must match exactly.) + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHAor + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_1D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. + + + Notes + + glPixelStore modes affect texture images. + + + data may be a null pointer. In this case texture memory is + allocated to accommodate a texture of width width. + You can then download subtextures to initialize the + texture memory. The image is undefined if the program tries to apply + an uninitialized portion of the texture image to a primitive. + + + glTexImage1D specifies the one-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_1D + or GL_PROXY_TEXTURE_1D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX + are accepted. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not + one of the accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer value of n. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexSubImage1D, + glCopyTexImage1D, + glCopyTexSubImage1D, + glGetCompressedTexImage, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTexImage2D.xml b/upstream-man-pages/man3/glTexImage2D.xml new file mode 100644 index 0000000..f6c589b --- /dev/null +++ b/upstream-man-pages/man3/glTexImage2D.xml @@ -0,0 +1,643 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage2D + 3G + + + glTexImage2D + specify a two-dimensional texture image + + C Specification + + + void glTexImage2D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLsizei height + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + If target is GL_TEXTURE_RECTANGLE or + GL_PROXY_TEXTURE_RECTANGLE, level must be 0. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. + + + + + width + + + Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. + + + + + height + + + Specifies the height of the texture image, or the number of layers in a texture + array, in the case of the GL_TEXTURE_1D_ARRAY and + GL_PROXY_TEXTURE_1D_ARRAY targets. + All implementations support 2D texture images that are at least 1024 texels + high, and texture arrays that are at least 256 layers deep. + + + + + border + + + This value must be 0. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + To define texture images, call glTexImage2D. + The arguments describe the parameters of the texture image, + such as height, width, width of the border, level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. + + + If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or GL_PROXY_TEXTURE_RECTANGLE, + no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to 1. + + + If target is GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE + or one of the GL_TEXTURE_CUBE_MAP + targets, data is read from data as a sequence of signed or unsigned + bytes, shorts, or longs, or single-precision floating-point values, + depending on type. These values are grouped into sets of one, two, + three, or four values, depending on format, to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If target is GL_TEXTURE_1D_ARRAY, data is interpreted + as an array of one-dimensional images. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the lower left corner of the texture image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RG + + + Each element is a red/green double. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_DEPTH_COMPONENT + + + Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. + + + + + GL_DEPTH_STENCIL + + + Each element is a pair of depth and stencil values. The depth component of + the pair is interpreted as in GL_DEPTH_COMPONENT. The stencil + component is interpreted based on specified the depth + stencil internal format. + + + + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, + GL_RG, GL_RGB, + and GL_RGBA must match exactly.) + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_CUBE_MAP target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and G values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Image-based shadowing can be enabled by comparing texture r coordinates to + depth texture values to generate a boolean result. + See glTexParameter for details on texture comparison. + + + Notes + + The glPixelStore mode affects texture images. + + + data may be a null pointer. + In this case, texture memory is + allocated to accommodate a texture of width width and height height. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. + + + glTexImage2D specifies the two-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if target is not GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_ARRAY_TEXTURE_LAYERS. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or height cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some + integer value of k. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV, + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV, + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if target is not + GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_RECTANGLE, + and internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. + + + GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. + + + GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F, and format is + not GL_DEPTH_COMPONENT. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_RECTANGLE + or GL_PROXY_TEXTURE_RECTANGLE and level is not 0. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTexImage2DMultisample.xml b/upstream-man-pages/man3/glTexImage2DMultisample.xml new file mode 100644 index 0000000..3f6b7a2 --- /dev/null +++ b/upstream-man-pages/man3/glTexImage2DMultisample.xml @@ -0,0 +1,147 @@ + + + + + + + 2010 + Khronos Group + + + glTexImage2DMultisample + 3G + + + glTexImage2DMultisample + establish the data storage, format, dimensions, and number of samples of a multisample texture's image + + C Specification + + + void glTexImage2DMultisample + GLenum target + GLsizei samples + GLint internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + + Parameters + + + target + + + Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + + + + + samples + + + The number of samples in the multisample texture's image. + + + + + internalformat + + + The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. + + + + + width + + + The width of the multisample texture's image, in texels. + + + + + height + + + The height of the multisample texture's image, in texels. + + + + + fixedsamplelocations + + + Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. + + + + + + Description + + glTexImage2DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. + + + target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + width and height are the dimensions in texels of the texture, and must be in the range zero + to GL_MAX_TEXTURE_SIZE - 1. samples specifies the number of samples in the image and must be + in the range zero to GL_MAX_SAMPLES - 1. + + + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + + + If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + + + When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. + + + Notes + + glTexImage2DMultisample is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. + + + GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. + + + See Also + + glTexImage3D, + glTexImage2DMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glTexImage3D.xml b/upstream-man-pages/man3/glTexImage3D.xml new file mode 100644 index 0000000..7a9ac09 --- /dev/null +++ b/upstream-man-pages/man3/glTexImage3D.xml @@ -0,0 +1,654 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage3D + 3G + + + glTexImage3D + specify a three-dimensional texture image + + C Specification + + + void glTexImage3D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be one of GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level + n + is the + + + n + th + + + mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be one of the following symbolic constants: + GL_RGBA32F, + GL_RGBA32I, + GL_RGBA32UI, + GL_RGBA16, + GL_RGBA16F, + GL_RGBA16I, + GL_RGBA16UI, + GL_RGBA8, + GL_RGBA8UI, + GL_SRGB8_ALPHA8, + GL_RGB10_A2, + GL_RGBA10_A2UI, + GL_R11_G11_B10F, + GL_RG32F, + GL_RG32I, + GL_RG32UI, + GL_RG16, + GL_RG16F, + GL_RGB16I, + GL_RGB16UI, + GL_RG8, + GL_RG8I, + GL_RG8UI, + GL_R23F, + GL_R32I, + GL_R32UI, + GL_R16F, + GL_R16I, + GL_R16UI, + GL_R8, + GL_R8I, + GL_R8UI, + GL_RGBA16_UNORM, + GL_RGBA8_SNORM, + GL_RGB32F, + GL_RGB32I, + GL_RGB32UI, + GL_RGB16_SNORM, + GL_RGB16F, + GL_RGB16I, + GL_RGB16UI, + GL_RGB16, + GL_RGB8_SNORM, + GL_RGB8, + GL_RGB8I, + GL_RGB8UI, + GL_SRGB8, + GL_RGB9_E5, + GL_RG16_SNORM, + GL_RG8_SNORM, + GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2, + GL_R16_SNORM, + GL_R8_SNORM, + GL_COMPRESSED_RED_RGTC1, + GL_COMPRESSED_SIGNED_RED_RGTC1, + GL_DEPTH_COMPONENT32F, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT16, + GL_DEPTH32F_STENCIL8, + GL_DEPTH24_STENCIL8. + + + + + width + + + Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels + wide. + + + + + height + + + Specifies the height of the texture image. + All implementations support 3D texture images that are at least 256 texels + high. + + + + + depth + + + Specifies the depth of the texture image, or the number of layers in a texture array. + All implementations support 3D texture images that are at least 256 texels + deep, and texture arrays that are at least 256 layers deep. + + + + + border + + + This value must be 0. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. + + + To define texture images, call glTexImage3D. + The arguments describe the parameters of the texture image, + such as height, + width, depth, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. + + + If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_3D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RG + + + Each element is a red and green pair. + The GL converts each to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, GL_RGB, + and GL_RGBA must match exactly.) + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_3D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Notes + + The glPixelStore mode affects texture images. + + + data may be a null pointer. + In this case texture memory is + allocated to accommodate a texture of width width, height height, + and depth depth. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. + + + glTexImage3D specifies the three-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + are accepted. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width, height, or depth is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width, height, or depth cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some + integer value of k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if format or internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glGetCompressedTexImage, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTexImage3DMultisample.xml b/upstream-man-pages/man3/glTexImage3DMultisample.xml new file mode 100644 index 0000000..9028bfc --- /dev/null +++ b/upstream-man-pages/man3/glTexImage3DMultisample.xml @@ -0,0 +1,151 @@ + + + + + + + 2010 + Khronos Group + + + glTexImage3DMultisample + 3G + + + glTexImage3DMultisample + establish the data storage, format, dimensions, and number of samples of a multisample texture's image + + C Specification + + + void glTexImage3DMultisample + GLenum target + GLsizei samples + GLint internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + + Parameters + + + target + + + Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + + + + + samples + + + The number of samples in the multisample texture's image. + + + + + internalformat + + + The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. + + + + + width + + + The width of the multisample texture's image, in texels. + + + + + height + + + The height of the multisample texture's image, in texels. + + + + + fixedsamplelocations + + + Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. + + + + + + Description + + glTexImage3DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. + + + target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + width and heightare the dimensions in texels of the texture, and must + be in the range zero to GL_MAX_TEXTURE_SIZE - 1. depth is the number of array slices in the array texture's image. + samples specifies the number of samples in the image and must be in the range zero to GL_MAX_SAMPLES - 1. + + + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + + + If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + + + When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. + + + Notes + + glTexImage2DMultisample is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. + + + GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if depth is negative or is greater than GL_MAX_ARRAY_TEXTURE_LAYERS. + + + GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. + + + See Also + + glTexImage3D, + glTexImage2DMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glTexParameter.xml b/upstream-man-pages/man3/glTexParameter.xml new file mode 100644 index 0000000..5340d3d --- /dev/null +++ b/upstream-man-pages/man3/glTexParameter.xml @@ -0,0 +1,1360 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexParameter + 3G + + + glTexParameter + set texture parameters + + C Specification + + + void glTexParameterf + GLenum target + GLenum pname + GLfloat param + + + + + void glTexParameteri + GLenum target + GLenum pname + GLint param + + + + + Parameters + + + target + + + Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. + + + + + pname + + + Specifies the symbolic name of a single-valued texture parameter. + pname can be one of the following: + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. + + + + + param + + + Specifies the value of pname. + + + + + + C Specification + + + void glTexParameterfv + GLenum target + GLenum pname + const GLfloat * params + + + + + void glTexParameteriv + GLenum target + GLenum pname + const GLint * params + + + + + void glTexParameterIiv + GLenum target + GLenum pname + const GLint * params + + + + + void glTexParameterIuiv + GLenum target + GLenum pname + const GLuint * params + + + + Parameters + + + target + + + Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + pname can be one of the following: + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. + + + + + params + + + Specifies a pointer to an array where the value or values of pname + are stored. + + + + + + Description + + glTexParameter assigns the value or values in params to the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, or GL_TEXTURE_3D. + The following symbols are accepted in pname: + + + + GL_TEXTURE_BASE_LEVEL + + + Specifies the index of the lowest defined mipmap level. This is an + integer value. The initial value is 0. + + + + + + + + + GL_TEXTURE_BORDER_COLOR + + + The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . + + + If the values for GL_TEXTURE_BORDER_COLOR are specified with glTexParameterIiv + or glTexParameterIuiv, the values are stored unmodified with an internal data type of + integer. If specified with glTexParameteriv, they are converted to floating point with the following + equation: + + + f + = + + + 2 + c + + + + 1 + + + 2 + b + + - + 1 + + + + . + If specified with glTexParameterfv, they are stored unmodified as floating-point values. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: + + + + + + + + Texture Comparison Function + + + Computed result + + + + + + + GL_LEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + + + + + + + GL_GEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + + + + + + + GL_LESS + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + + + + + + + GL_GREATER + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + + + + + + + GL_EQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + + + D + t + + + + + + + + + + + + + + GL_NOTEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + + + D + t + + + + + + + r + = + + D + t + + + + + + + + + + + + + + GL_ALWAYS + + + + + + result + = + 1.0 + + + + + + + + GL_NEVER + + + + + + result + = + 0.0 + + + + + + + + + where r + is the current interpolated texture coordinate, and + + + D + t + + + is the depth texture value sampled from the currently bound depth texture. + result + is assigned to the the red channel. + + + + + GL_TEXTURE_COMPARE_MODE + + + Specifies the texture comparison mode for currently bound depth textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: + + + GL_COMPARE_REF_TO_TEXTURE + + + Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound depth texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. + + + + + GL_NONE + + + Specifies that the red channel should be assigned the + appropriate value from the currently bound depth texture. + + + + + + + + + GL_TEXTURE_LOD_BIAS + + + params specifies a fixed bias value that is to be added to the level-of-detail + parameter for the texture before texture sampling. The specified value is added to the shader-supplied + bias value (if any) and subsequently clamped into the implementation-defined range + + + + + - + bias + max + + + + + + + bias + max + + + + + + , + where + + + bias + max + + + + is the value of the implementation defined constant GL_MAX_TEXTURE_LOD_BIAS. The initial value is 0.0. + + + + + GL_TEXTURE_MIN_FILTER + + + The texture minifying function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be minified. + There are six defined minifying functions. + Two of them use either the nearest texture elements or a weighted average of multiple texture elements + to compute the texture value. + The other four use mipmaps. + + + A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. + + + params supplies a function for minifying the texture as one of the + following: + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + GL_NEAREST_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates) + to produce a texture value. + + + + + GL_LINEAR_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest to the specified texture coordinates) + to produce a texture value. + + + + + GL_NEAREST_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates ) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + GL_LINEAR_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the texture elements that are closest to the specified texture coordinates) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + + + As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or multiple texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. + + + + + + + + + GL_TEXTURE_MAG_FILTER + + + The texture magnification function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be magified. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. + + + + + GL_LINEAR + + + Returns the weighted average of the texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + + + + + + + + + + + GL_TEXTURE_MIN_LOD + + + Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. + + + + + + + + + GL_TEXTURE_MAX_LOD + + + Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. + + + + + + + + + GL_TEXTURE_MAX_LEVEL + + + Sets the index of the highest defined mipmap level. This is an integer + value. The initial value is 1000. + + + + + + + + + GL_TEXTURE_SWIZZLE_R + + + Sets the swizzle that will be applied to the r + component of a texel before it is returned to the shader. Valid values for param are GL_RED, + GL_GREEN, GL_BLUE, GL_ALPHA, GL_ZERO and + GL_ONE. + If GL_TEXTURE_SWIZZLE_R is GL_RED, the value for + r will be taken from the first + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_GREEN, the value for + r will be taken from the second + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_BLUE, the value for + r will be taken from the third + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ALPHA, the value for + r will be taken from the fourth + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ZERO, the value for + r will be subtituted with + 0.0. + If GL_TEXTURE_SWIZZLE_R is GL_ONE, the value for + r will be subtituted with + 1.0. + The initial value is GL_RED. + + + + + + + + + GL_TEXTURE_SWIZZLE_G + + + Sets the swizzle that will be applied to the g + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_GREEN. + + + + + + + + + GL_TEXTURE_SWIZZLE_B + + + Sets the swizzle that will be applied to the b + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_BLUE. + + + + + + + + + GL_TEXTURE_SWIZZLE_A + + + Sets the swizzle that will be applied to the a + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_ALPHA. + + + + + + + + + GL_TEXTURE_SWIZZLE_RGBA + + + Sets the swizzles that will be applied to the + r, + g, + b, and + a + components of a texel before they are returned to the shader. Valid values for params and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R, except that all channels are specified simultaneously. + Setting the value of GL_TEXTURE_SWIZZLE_RGBA is equivalent (assuming no errors are generated) to + setting the parameters of each of GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, and + GL_TEXTURE_SWIZZLE_A successively. + + + + + + + + + GL_TEXTURE_WRAP_S + + + Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. + GL_CLAMP_TO_BORDER evaluates s coordinates in a similar manner to GL_CLAMP_TO_EDGE. + However, in cases where clamping would have occurred in GL_CLAMP_TO_EDGE mode, the fetched texel data + is substituted with the values specified by GL_TEXTURE_BORDER_COLOR. + GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + + + s + + + + , + where + + + + frac + + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_T + + + Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_R + + + Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. + + + + + + Notes + + Suppose that a program attempts to sample from a texture and + has set GL_TEXTURE_MIN_FILTER to one of the functions that requires a + mipmap. If either the dimensions of the texture images currently defined + (with previous calls to glTexImage1D, glTexImage2D, + glTexImage3D, glCopyTexImage1D, or glCopyTexImage2D) do not + follow the proper sequence for mipmaps (described above), or there are + fewer texture images defined than are needed, or the set of texture images + have differing numbers of texture components, then the texture is considered incomplete. + + + Linear filtering accesses the four nearest texture elements only in 2D + textures. In 1D textures, linear filtering accesses the two nearest + texture elements. In 3D textures, linear filtering accesses the eight nearest + texture elements. + + + glTexParameter specifies the texture parameters for the active texture unit, specified + by calling glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not + one of the accepted defined values. + + + GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. + + + Associated Gets + + glGetTexParameter + + + glGetTexLevelParameter + + + See Also + + glActiveTexture, + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glSamplerParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTexSubImage1D.xml b/upstream-man-pages/man3/glTexSubImage1D.xml new file mode 100644 index 0000000..3d8e082 --- /dev/null +++ b/upstream-man-pages/man3/glTexSubImage1D.xml @@ -0,0 +1,316 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage1D + 3G + + + glTexSubImage1D + specify a one-dimensional texture subimage + + C Specification + + + void glTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable or disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. + + + glTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with width of 0, but + such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glPixelStore modes affect texture images. + + + glTexSubImage1D specifies a one-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or if + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, and + b + is + the width of the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. + + + GL_INVALID_VALUE is generated if width is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTexSubImage2D.xml b/upstream-man-pages/man3/glTexSubImage2D.xml new file mode 100644 index 0000000..717c660 --- /dev/null +++ b/upstream-man-pages/man3/glTexSubImage2D.xml @@ -0,0 +1,390 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage2D + 3G + + + glTexSubImage2D + specify a two-dimensional texture subimage + + C Specification + + + void glTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + or GL_TEXTURE_1D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + + + glTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + or one-dimensional array texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + and y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glPixelStore modes affect texture images. + + + glTexSubImage2D specifies a two-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, and + b + is the border width + of the texture image being modified. + Note that + w + and + h + include twice the border width. + + + GL_INVALID_VALUE is generated if width or height is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage2D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTexSubImage3D.xml b/upstream-man-pages/man3/glTexSubImage3D.xml new file mode 100644 index 0000000..1be8dd8 --- /dev/null +++ b/upstream-man-pages/man3/glTexSubImage3D.xml @@ -0,0 +1,447 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage3D + 3G + + + glTexSubImage3D + specify a three-dimensional texture subimage + + C Specification + + + void glTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + zoffset + + + Specifies a texel offset in the z direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + depth + + + Specifies the depth of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + + + glTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + or two-dimensioanl array texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive, + and z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. + For three-dimensional textures, the z index refers to the third + dimension. For two-dimensional array textures, the z index refers to + the slice index. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width, height, or + depth but such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + The glPixelStore modes affect texture images. + + + glTexSubImage3D specifies a three-dimensional or two-dimenaional array subtexture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + or + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + depth + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH + and + b + is the border width of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. + + + GL_INVALID_VALUE is generated if width, height, or depth + is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glTransformFeedbackVaryings.xml b/upstream-man-pages/man3/glTransformFeedbackVaryings.xml new file mode 100644 index 0000000..362fa5a --- /dev/null +++ b/upstream-man-pages/man3/glTransformFeedbackVaryings.xml @@ -0,0 +1,157 @@ + + + + + + + 2010 + Khronos Group + + + glTransformFeedbackVaryings + 3G + + + glTransformFeedbackVaryings + specify values to record in transform feedback buffers + + C Specification + + + void glTransformFeedbackVaryings + GLuintprogram + GLsizeicount + const char **varyings + GLenumbufferMode + + + + Parameters + + + program + + + The name of the target program object. + + + + + count + + + The number of varying variables used for transform feedback. + + + + + varyings + + + An array of count zero-terminated strings specifying the + names of the varying variables to use for transform feedback. + + + + + bufferMode + + + Identifies the mode used to capture the varying variables when transform feedback is active. + bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. + + + + + + Description + + The names of the vertex or geometry shader outputs to be recorded in transform feedback mode + are specified using glTransformFeedbackVaryings. When a geometry shader + is active, transform feedback records the values of selected geometry shader output variables + from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are + recorded. + + + The state set by glTranformFeedbackVaryings is stored and takes effect + next time glLinkProgram is called + on program. When glLinkProgram + is called, program is linked so that the values of the specified varying variables + for the vertices of each primitive generated by the GL are written to a single buffer + object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple + buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. + + + In addition to the errors generated by glTransformFeedbackVaryings, the + program program will fail to link if: + + + + The count specified by glTransformFeedbackVaryings is non-zero, but the + program object has no vertex or geometry shader. + + + + + Any variable name specified in the varyings array is not declared as an output + in the vertex shader (or the geometry shader, if active). + + + + + Any two entries in the varyings array specify the same varying variable. + + + + + The total number of components to capture in any varying variable in varyings + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is GL_SEPARATE_ATTRIBS. + + + + + The total number of components to capture is greater than the constant + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer + mode is GL_INTERLEAVED_ATTRIBS. + + + + + + Notes + + glGetTransformFeedbackVarying is available only if the GL version is 3.0 or greater. + + + Errors + + GL_INVALID_VALUE is generated if program is not + the name of a program object. + + + GL_INVALID_VALUE is generated if bufferMode is GL_SEPARATE_ATTRIBS + and count is greater than the implementation-dependent limit GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS. + + + Associated Gets + + glGetTransformFeedbackVarying + + + See Also + + glBeginTransformFeedback, + glEndTransformFeedback, + glGetTransformFeedbackVarying + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glUniform.xml b/upstream-man-pages/man3/glUniform.xml new file mode 100644 index 0000000..9dfc334 --- /dev/null +++ b/upstream-man-pages/man3/glUniform.xml @@ -0,0 +1,560 @@ + + + + + glUniform + 3G + + + glUniform + glUniform1f + glUniform2f + glUniform3f + glUniform4f + glUniform1i + glUniform2i + glUniform3i + glUniform4i + glUniform1ui + glUniform2ui + glUniform3ui + glUniform4ui + glUniform1fv + glUniform2fv + glUniform3fv + glUniform4fv + glUniform1iv + glUniform2iv + glUniform3iv + glUniform4iv + glUniform1uiv + glUniform2uiv + glUniform3uiv + glUniform4uiv + glUniformMatrix2fv + glUniformMatrix3fv + glUniformMatrix4fv + glUniformMatrix2x3fv + glUniformMatrix3x2fv + glUniformMatrix2x4fv + glUniformMatrix4x2fv + glUniformMatrix3x4fv + glUniformMatrix4x3fv + Specify the value of a uniform variable for the current program object + + C Specification + + + void glUniform1f + GLint location + GLfloat v0 + + + void glUniform2f + GLint location + GLfloat v0 + GLfloat v1 + + + void glUniform3f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glUniform4f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glUniform1i + GLint location + GLint v0 + + + void glUniform2i + GLint location + GLint v0 + GLint v1 + + + void glUniform3i + GLint location + GLint v0 + GLint v1 + GLint v2 + + + void glUniform4i + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glUniform1ui + GLint location + GLuint v0 + + + void glUniform2ui + GLint location + GLuint v0 + GLuint v1 + + + void glUniform3ui + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + + + void glUniform4ui + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + + Parameters + + + location + + Specifies the location of the uniform variable + to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified uniform variable. + + + + + C Specification + + + void glUniform1fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform2fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform3fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform4fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform1iv + GLint location + GLsizei count + const GLint *value + + + void glUniform2iv + GLint location + GLsizei count + const GLint *value + + + void glUniform3iv + GLint location + GLsizei count + const GLint *value + + + void glUniform4iv + GLint location + GLsizei count + const GLint *value + + + void glUniform1uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform2uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform3uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform4uiv + GLint location + GLsizei count + const GLuint *value + + + + Parameters + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + C Specification + + + void glUniformMatrix2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + Parameters + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices. + + + + transpose + + Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + Description + glUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glUniform operates on the program object + that was made part of current state by calling + glUseProgram. + + The commands glUniform{1|2|3|4}{f|i|ui} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, unsigned int, bool; + 2 for vec2, ivec2, uvec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed; the suffix ui indicates that + unsigned integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The + ui variants of this function should be used + to provide values for uniform variables defined as unsigned int, uvec2, + uvec3, uvec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i, ui or f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise. + + All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0. + + The commands glUniform{1|2|3|4}{f|i|ui}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glUniform{1|2|3|4}{f|i|ui}. + + For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glUniform3f or + glUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count + + The commands + glUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices. + + Notes + glUniform1i and + glUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error. + + If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged. + + Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged. + + If location is a value other than + -1 and it does not represent a valid uniform variable location + in the current program object, an error will be generated, and + no changes will be made to the uniform variable storage of the + current program object. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed. + + Errors + GL_INVALID_OPERATION is generated if there + is no current program object. + + GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glUniform + command. + + GL_INVALID_OPERATION is generated if one of + the signed or unsigned integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, + ivec4, unsigned int, uvec2, uvec3, + uvec4, or an array of these. + + GL_INVALID_OPERATION is generated if one of + the signed integer variants of this function is used to load a uniform + variable of type unsigned int, uvec2, uvec3, + uvec4, or an array of these. + + GL_INVALID_OPERATION is generated if one of + the unsigned integer variants of this function is used to load a uniform + variable of type int, ivec2, ivec3, + ivec4, or an array of these. + + GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for the current program object and + location is not equal to -1. + + GL_INVALID_VALUE is generated if + count is less than 0. + + GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable. + + GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glUniform1i and + glUniform1iv. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveUniform + with the handle of a program object and the index of an active uniform variable + + glGetUniform + with the handle of a program object and the location of a + uniform variable + + glGetUniformLocation + with the handle of a program object and the name of a uniform + variable + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glUniformBlockBinding.xml b/upstream-man-pages/man3/glUniformBlockBinding.xml new file mode 100644 index 0000000..2971516 --- /dev/null +++ b/upstream-man-pages/man3/glUniformBlockBinding.xml @@ -0,0 +1,110 @@ + + + + + + + 2010 + Khronos Group + + + glUniformBlockBinding + 3G + + + glUniformBlockBinding + assign a binding point to an active uniform block + + C Specification + + + void glUniformBlockBinding + GLuint program + GLuint uniformBlockIndex + GLuint uniformBlockBinding + + + + Parameters + + + program + + + The name of a program object containing the active uniform block whose binding to assign. + + + + + uniformBlockIndex + + + The index of the active uniform block within program whose binding to assign. + + + + + uniformBlockBinding + + + Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program. + + + + + + Description + + Binding points for active uniform blocks are assigned using glUniformBlockBinding. Each of a program's active uniform + blocks has a corresponding uniform buffer binding point. program is the name of a program object for which the command + glLinkProgram has been issued in the past. + + + If successful, glUniformBlockBinding specifies that program will use the data store of the + buffer object bound to the binding point uniformBlockBinding to extract the values of the uniforms in the + uniform block identified by uniformBlockIndex. + + + When a program object is linked or re-linked, the uniform buffer object binding point assigned to each of its active uniform blocks is reset to zero. + + + Errors + + GL_INVALID_VALUE is generated if uniformBlockIndex is not an active uniform block index of program. + + + GL_INVALID_VALUE is generated if uniformBlockBinding is greater than or equal to the value of GL_MAX_UNIFORM_BUFFER_BINDINGS. + + + GL_INVALID_VALUE is generated program is not the name of a program object generated by the GL. + + + Notes + + glUniformBlockBinding is available only if the GL version is 3.1 or greater. + + + Associated Gets + + glGetActiveUniformBlock with argument GL_UNIFORM_BLOCK_BINDING + + + See Also + + glLinkProgram, + glBindBufferBase, + glBindBufferRange, + glGetActiveUniformBlock + + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glUseProgram.xml b/upstream-man-pages/man3/glUseProgram.xml new file mode 100644 index 0000000..698e079 --- /dev/null +++ b/upstream-man-pages/man3/glUseProgram.xml @@ -0,0 +1,168 @@ + + + + + glUseProgram + 3G + + + glUseProgram + Installs a program object as part of current rendering state + + C Specification + + + void glUseProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object + whose executables are to be used as part of current + rendering state. + + + + + Description + glUseProgram installs the program + object specified by program as part of + current rendering state. One or more executables are created in + a program object by successfully attaching shader objects to it + with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + + + A program object will contain an executable that will run + on the vertex processor if it contains one or more shader + objects of type GL_VERTEX_SHADER that have + been successfully compiled and linked. A program object will contain an + executable that will run on the geometry processor if it contains one or + more shader objects of type GL_GEOMETRY_SHADER that + have been successfully compiled and linked. + Similarly, a program object will contain an executable that will run on the + fragment processor if it contains one or more shader objects of type + GL_FRAGMENT_SHADER that have been + successfully compiled and linked. + + While a program object is in use, applications are free to + modify attached shader objects, compile attached shader objects, + attach additional shader objects, and detach or delete shader + objects. None of these operations will affect the executables + that are part of the current state. However, relinking the + program object that is currently in use will install the program + object as part of the current rendering state if the link + operation was successful (see + glLinkProgram + ). If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE, but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked. + + If program is zero, then the current rendering + state refers to an invalid program object and the + results of shader execution are undefined. However, this is not an error. + + If program does not + contain shader objects of type GL_FRAGMENT_SHADER, an + executable will be installed on the vertex, and possibly geometry processors, + but the results of fragment shader execution will be undefined. + + Notes + Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + + Errors + GL_INVALID_VALUE is generated if + program is neither 0 nor a value + generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program could not be made part of current + state. + + GL_INVALID_OPERATION is generated if + transform feedback mode is active. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with a valid program object and the index of an active attribute + variable + + glGetActiveUniform + with a valid program object and the index of an active uniform + variable + + glGetAttachedShaders + with a valid program object + + glGetAttribLocation + with a valid program object and the name of an attribute + variable + + glGetProgram + with a valid program object and the parameter to be queried + + glGetProgramInfoLog + with a valid program object + + glGetUniform + with a valid program object and the location of a uniform + variable + + glGetUniformLocation + with a valid program object and the name of a uniform + variable + + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glValidateProgram, + glVertexAttrib + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glValidateProgram.xml b/upstream-man-pages/man3/glValidateProgram.xml new file mode 100644 index 0000000..6e02901 --- /dev/null +++ b/upstream-man-pages/man3/glValidateProgram.xml @@ -0,0 +1,119 @@ + + + + + glValidateProgram + 3G + + + glValidateProgram + Validates a program object + + C Specification + + + void glValidateProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object to + be validated. + + + + + Description + glValidateProgram checks to see + whether the executables contained in + program can execute given the current + OpenGL state. The information generated by the validation + process will be stored in program's + information log. The validation information may consist of an + empty string, or it may be a string containing information about + how the current program object interacts with the rest of + current OpenGL state. This provides a way for OpenGL + implementers to convey more information about why the current + program is inefficient, suboptimal, failing to execute, and so + on. + + The status of the validation operation will be stored as + part of the program object's state. This value will be set to + GL_TRUE if the validation succeeded, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_VALIDATE_STATUS. If validation is + successful, program is guaranteed to + execute given the current state. Otherwise, + program is guaranteed to not execute. + + This function is typically useful only during application + development. The informational string stored in the information + log is completely implementation dependent; therefore, an + application should not expect different OpenGL implementations + to produce identical information strings. + + Notes + This function mimics the validation operation that OpenGL + implementations must perform when rendering commands are issued + while programmable shaders are part of current state. The error + GL_INVALID_OPERATION will be generated by + any command that triggers the rendering of geometry if: + + + + any two active samplers in the current program + object are of different types, but refer to the same + texture image unit, + + + the number of active samplers in the program exceeds the maximum + number of texture image units allowed. + + + + It may be difficult or cause a performance degradation for + applications to catch these errors when rendering commands are + issued. Therefore, applications are advised to make calls to + glValidateProgram to detect these issues + during application development. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + Associated Gets + glGetProgram + with arguments program and + GL_VALIDATE_STATUS + + glGetProgramInfoLog + with argument program + + glIsProgram + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glVertexAttrib.xml b/upstream-man-pages/man3/glVertexAttrib.xml new file mode 100644 index 0000000..f4a00a1 --- /dev/null +++ b/upstream-man-pages/man3/glVertexAttrib.xml @@ -0,0 +1,611 @@ + + + + + glVertexAttrib + 3G + + + glVertexAttrib + Specifies the value of a generic vertex attribute + + C Specification + + + void glVertexAttrib1f + GLuint index + GLfloat v0 + + + void glVertexAttrib1s + GLuint index + GLshort v0 + + + void glVertexAttrib1d + GLuint index + GLdouble v0 + + + void glVertexAttribI1i + GLuint index + GLint v0 + + + void glVertexAttribI1ui + GLuint index + GLuint v0 + + + void glVertexAttrib2f + GLuint index + GLfloat v0 + GLfloat v1 + + + void glVertexAttrib2s + GLuint index + GLshort v0 + GLshort v1 + + + void glVertexAttrib2d + GLuint index + GLdouble v0 + GLdouble v1 + + + void glVertexAttribI2i + GLuint index + GLint v0 + GLint v1 + + + void glVertexAttribI2ui + GLuint index + GLuint v0 + GLuint v1 + + + void glVertexAttrib3f + GLuint index + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glVertexAttrib3s + GLuint index + GLshort v0 + GLshort v1 + GLshort v2 + + + void glVertexAttrib3d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + + + void glVertexAttribI3i + GLuint index + GLint v0 + GLint v1 + GLint v2 + + + void glVertexAttribI3ui + GLuint index + GLoint v0 + GLoint v1 + GLoint v2 + + + void glVertexAttrib4f + GLuint index + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glVertexAttrib4s + GLuint index + GLshort v0 + GLshort v1 + GLshort v2 + GLshort v3 + + + void glVertexAttrib4d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + GLdouble v3 + + + void glVertexAttrib4Nub + GLuint index + GLubyte v0 + GLubyte v1 + GLubyte v2 + GLubyte v3 + + + void glVertexAttribI4i + GLuint index + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glVertexAttribI4ui + GLuint index + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified vertex attribute. + + + + + C Specification + + + void glVertexAttrib1fv + GLuint index + const GLfloat *v + + + void glVertexAttrib1sv + GLuint index + const GLshort *v + + + void glVertexAttrib1dv + GLuint index + const GLdouble *v + + + void glVertexAttribI1iv + GLuint index + const GLint *v + + + void glVertexAttribI1uiv + GLuint index + const GLuint *v + + + void glVertexAttrib2fv + GLuint index + const GLfloat *v + + + void glVertexAttrib2sv + GLuint index + const GLshort *v + + + void glVertexAttrib2dv + GLuint index + const GLdouble *v + + + void glVertexAttribI2iv + GLuint index + const GLint *v + + + void glVertexAttribI2uiv + GLuint index + const GLuint *v + + + void glVertexAttrib3fv + GLuint index + const GLfloat *v + + + void glVertexAttrib3sv + GLuint index + const GLshort *v + + + void glVertexAttrib3dv + GLuint index + const GLdouble *v + + + void glVertexAttribI3iv + GLuint index + const GLint *v + + + void glVertexAttribI3uiv + GLuint index + const GLuint *v + + + void glVertexAttrib4fv + GLuint index + const GLfloat *v + + + void glVertexAttrib4sv + GLuint index + const GLshort *v + + + void glVertexAttrib4dv + GLuint index + const GLdouble *v + + + void glVertexAttrib4iv + GLuint index + const GLint *v + + + void glVertexAttrib4bv + GLuint index + const GLbyte *v + + + void glVertexAttrib4ubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4usv + GLuint index + const GLushort *v + + + void glVertexAttrib4uiv + GLuint index + const GLuint *v + + + void glVertexAttrib4Nbv + GLuint index + const GLbyte *v + + + void glVertexAttrib4Nsv + GLuint index + const GLshort *v + + + void glVertexAttrib4Niv + GLuint index + const GLint *v + + + void glVertexAttrib4Nubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4Nusv + GLuint index + const GLushort *v + + + void glVertexAttrib4Nuiv + GLuint index + const GLuint *v + + + void glVertexAttribI4bv + GLuint index + const GLbyte *v + + + void glVertexAttribI4ubv + GLuint index + const GLubyte *v + + + void glVertexAttribI4sv + GLuint index + const GLshort *v + + + void glVertexAttribI4usv + GLuint index + const GLushort *v + + + void glVertexAttribI4iv + GLuint index + const GLint *v + + + void glVertexAttribI4uiv + GLuint index + const GLuint *v + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + v + + Specifies a pointer to an array of values to + be used for the generic vertex attribute. + + + + + C Specification + + + void glVertexAttribP1ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP2ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP3ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP4ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + type + + Type of packing used on the data. This parameter must be + GL_INT_10_10_10_2 or GL_UNSIGNED_INT_10_10_10_2 + to specify signed or unsigned data, respectively. + + + + normalized + + If GL_TRUE, then the values are to be + converted to floating point values by normalizing. Otherwise, + they are converted directly to floating point values. + + + + + value + + + Specifies the new packed value to be used for the + specified vertex attribute. + + + + + Description + OpenGL defines a number of standard vertex attributes that + applications can modify with standard API entry points (color, + normal, texture coordinates, etc.). The + glVertexAttrib family of entry points + allows an application to pass generic vertex attributes in + numbered locations. + + Generic attributes are defined as four-component values + that are organized into an array. The first entry of this array + is numbered 0, and the size of the array is specified by the + implementation-dependent constant + GL_MAX_VERTEX_ATTRIBS. Individual elements + of this array can be modified with a + glVertexAttrib call that specifies the + index of the element to be modified and a value for that + element. + + These commands can be used to specify one, two, three, or + all four components of the generic vertex attribute specified by + index. A 1 in the + name of the command indicates that only one value is passed, and + it will be used to modify the first component of the generic + vertex attribute. The second and third components will be set to + 0, and the fourth component will be set to 1. Similarly, a + 2 in the name of the command indicates that + values are provided for the first two components, the third + component will be set to 0, and the fourth component will be set + to 1. A 3 in the name of the command + indicates that values are provided for the first three + components and the fourth component will be set to 1, whereas a + 4 in the name indicates that values are + provided for all four components. + + The letters s, + f, i, + d, ub, + us, and ui indicate + whether the arguments are of type short, float, int, double, + unsigned byte, unsigned short, or unsigned int. When + v is appended to the name, the commands can + take a pointer to an array of such values. + + Additional capitalized letters can indicate further alterations + to the default behavior of the glVertexAttrib function: + + + The commands containing N indicate that + the arguments will be passed as fixed-point values that are + scaled to a normalized range according to the component + conversion rules defined by the OpenGL specification. Signed + values are understood to represent fixed-point values in the + range [-1,1], and unsigned values are understood to represent + fixed-point values in the range [0,1]. + + + + The commands containing I indicate that + the arguments are extended to full signed or unsigned integers. + + + + The commands containing P indicate that + the arguments are stored as packed components within a larger + natural type. + + + OpenGL Shading Language attribute variables are allowed to + be of type mat2, mat3, or mat4. Attributes of these types may be + loaded using the glVertexAttrib entry + points. Matrices must be loaded into successive generic + attribute slots in column major order, with one column of the + matrix in each generic attribute slot. + + A user-defined attribute variable declared in a vertex + shader can be bound to a generic attribute index by calling + glBindAttribLocation. + This allows an application to use more descriptive variable + names in a vertex shader. A subsequent change to the specified + generic vertex attribute will be immediately reflected as a + change to the corresponding attribute variable in the vertex + shader. + + The binding between a generic vertex attribute index and a + user-defined attribute variable in a vertex shader is part of + the state of a program object, but the current value of the + generic vertex attribute is not. The value of each generic + vertex attribute is part of current state, just like standard + vertex attributes, and it is maintained even if a different + program object is used. + + An application may freely modify generic vertex attributes + that are not bound to a named vertex shader attribute variable. + These values are simply maintained as part of current state and + will not be accessed by the vertex shader. If a generic vertex + attribute bound to an attribute variable in a vertex shader is + not updated while the vertex shader is executing, the vertex + shader will repeatedly use the current value for the generic + vertex attribute. + + Notes + Generic vertex attributes can be updated at any time. + + It is possible for an application to bind more than one + attribute name to the same generic vertex attribute index. This + is referred to as aliasing, and it is allowed only if just one + of the aliased attribute variables is active in the vertex + shader, or if no path through the vertex shader consumes more + than one of the attributes aliased to the same location. OpenGL + implementations are not required to do error checking to detect + aliasing, they are allowed to assume that aliasing will not + occur, and they are allowed to employ optimizations that work + only in the absence of aliasing. + + There is no provision for binding standard vertex + attributes; therefore, it is not possible to alias generic + attributes with standard attributes. + + + glVertexAttrib4bv, glVertexAttrib4sv, + glVertexAttrib4iv, glVertexAttrib4ubv, + glVertexAttrib4usv, glVertexAttrib4uiv, and + glVertexAttrib4N versions are available only if the GL version is 3.1 or higher. + + + + glVertexAttribP versions are available only if the GL version is 3.3 or higher. + + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM is generated if + glVertexAttribP is used with a + type other than + GL_INT_10_10_10_2 or + GL_UNSIGNED_INT_10_10_10_2. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with argument program and the index of an active + attribute variable + + glGetAttribLocation + with argument program and an attribute + variable name + + glGetVertexAttrib + with arguments GL_CURRENT_VERTEX_ATTRIB and + index + + See Also + glBindAttribLocation, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glVertexAttribDivisor.xml b/upstream-man-pages/man3/glVertexAttribDivisor.xml new file mode 100644 index 0000000..6a4f8a6 --- /dev/null +++ b/upstream-man-pages/man3/glVertexAttribDivisor.xml @@ -0,0 +1,86 @@ + + + + + + + 2010 + Khronos Group + + + glVertexAttribDivisor + 3G + + + glVertexAttribDivisor + modify the rate at which generic vertex attributes advance during instanced rendering + + C Specification + + + void glVertexAttribDivisor + GLuint index + GLuint divisor + + + + Parameters + + + index + + + Specify the index of the generic vertex attribute. + + + + + divisor + + + Specify the number of instances that will pass between updates of the generic attribute at slot index. + + + + + + Description + + glVertexAttribDivisor modifies the rate at which generic vertex attributes advance when rendering + multiple instances of primitives in a single draw call. If divisor is zero, the attribute at slot + index advances once per vertex. If divisor is non-zero, the attribute advances + once per divisor instances of the set(s) of vertices being rendered. An attribute + is referred to as instanced if its GL_VERTEX_ATTRIB_ARRAY_DIVISOR value is non-zero. + + + index must be less than the value of GL_MAX_VERTEX_ATTRIBUTES. + + + Notes + + glVertexAttribDivisor is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if index is greater + than or equal to the value of GL_MAX_VERTEX_ATTRIBUTES. + + + See Also + + glVertexAttribPointer, + glEnableVertexAttribArray, + glDisableVertexAttribArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glVertexAttribPointer.xml b/upstream-man-pages/man3/glVertexAttribPointer.xml new file mode 100644 index 0000000..f460c76 --- /dev/null +++ b/upstream-man-pages/man3/glVertexAttribPointer.xml @@ -0,0 +1,240 @@ + + + + + glVertexAttribPointer + 3G + + + glVertexAttribPointer + define an array of generic vertex attribute data + + C Specification + + + void glVertexAttribPointer + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + const GLvoid * pointer + + + void glVertexAttribIPointer + GLuint index + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + size + + Specifies the number of components per + generic vertex attribute. Must + be 1, 2, 3, 4. Additionally, the symbolic constant GL_BGRA + is accepted by glVertexAttribPointer. The initial value is 4. + + + + type + + Specifies the data type of each component in + the array. The symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, and + GL_UNSIGNED_INT are accepted by both functions. Additionally + GL_HALF_FLOAT, + GL_FLOAT, + GL_DOUBLE, + GL_INT_2_10_10_10_REV, and + GL_UNSIGNED_INT_2_10_10_10_REV are accepted by glVertexAttribPointer. + The initial value is GL_FLOAT. + + + + normalized + + For glVertexAttribPointer, specifies whether fixed-point data values + should be normalized (GL_TRUE) + or converted directly as fixed-point values + (GL_FALSE) when they are + accessed. + + + + stride + + Specifies the byte offset between consecutive + generic vertex attributes. If stride + is 0, the generic vertex attributes are + understood to be tightly packed in the + array. The initial value is 0. + + + + pointer + + Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the + buffer currently bound to the GL_ARRAY_BUFFER target. The initial value is 0. + + + + + Description + + glVertexAttribPointer and glVertexAttribIPointer specify the + location and data format of the array of generic vertex attributes at index index + to use when rendering. size specifies the number of components per attribute and + must be 1, 2, 3, 4, or GL_BGRA. type specifies the data type + of each component, and stride specifies the byte stride from one attribute to the next, + allowing vertices and attributes to be packed into a single array or stored in separate arrays. + + + For glVertexAttribPointer, if normalized is set to GL_TRUE, + it indicates that values stored in an integer format are to be mapped to the range [-1,1] (for signed values) or [0,1] (for + unsigned values) when they are accessed and converted to floating point. Otherwise, values will + be converted to floats directly without normalization. + + + For glVertexAttribIPointer, only the integer types GL_BYTE, + GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, + GL_INT, GL_UNSIGNED_INT are accepted. Values are always left as integer values. + + + If pointer is not NULL, a non-zero named buffer object must be bound to the + GL_ARRAY_BUFFER target (see glBindBuffer), + otherwise an error is generated. pointer is treated as a byte offset into the buffer object's data store. + The buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array + state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index. + + + When a generic vertex attribute array is specified, + size, type, + normalized, + stride, and + pointer are saved as vertex array + state, in addition to the current vertex array buffer object binding. + + + + To enable and disable a generic vertex attribute array, call + glEnableVertexAttribArray and + glDisableVertexAttribArray with index. + If enabled, the generic vertex attribute array is used when glDrawArrays, + glMultiDrawArrays, glDrawElements, + glMultiDrawElements, or glDrawRangeElements + is called. + + + Notes + + Each generic vertex attribute array is initially disabled and isn't accessed when + glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + glVertexAttribIPointer is available only if the GL version is 3.0 or higher. + + + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_VALUE is generated if + size is not 1, 2, 3, 4 or (for glVertexAttribPointer), + GL_BGRA. + + GL_INVALID_ENUM is generated if + type is not an accepted value. + + GL_INVALID_VALUE is generated if + stride is negative. + + GL_INVALID_OPERATION is generated if size + is GL_BGRA and type is not GL_UNSIGNED_BYTE, + GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV. + + GL_INVALID_OPERATION is generated if type + is GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV + and size is not 4 or GL_BGRA. + + GL_INVALID_OPERATION is generated by glVertexAttribPointer + if size is GL_BGRA and noramlized + is GL_FALSE. + + GL_INVALID_OPERATION is generated if zero is bound to the + GL_ARRAY_BUFFER buffer object binding point and the + pointer argument is not NULL. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_ENABLED + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_SIZE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_TYPE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_NORMALIZED + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_STRIDE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING + + glGet with argument + GL_ARRAY_BUFFER_BINDING + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + + glBindAttribLocation, + glBindBuffer, + glDisableVertexAttribArray, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEnableVertexAttribArray, + glMultiDrawArrays, + glMultiDrawElements, + glVertexAttrib + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/glViewport.xml b/upstream-man-pages/man3/glViewport.xml new file mode 100644 index 0000000..935b9f1 --- /dev/null +++ b/upstream-man-pages/man3/glViewport.xml @@ -0,0 +1,188 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glViewport + 3G + + + glViewport + set the viewport + + C Specification + + + void glViewport + GLint x + GLint y + GLsizei width + GLsizei height + + + + + Parameters + + + x + y + + + Specify the lower left corner of the viewport rectangle, + in pixels. The initial value is (0,0). + + + + + width + height + + + Specify the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + + Description + + glViewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: + + + + + + x + w + + = + + + + x + nd + + + + 1 + + + + + + width + 2 + + + + + x + + + + + + + + + y + w + + = + + + + y + nd + + + + 1 + + + + + + height + 2 + + + + + y + + + + + + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. + + + Errors + + GL_INVALID_VALUE is generated if either width or height is negative. + + + Associated Gets + + glGet with argument GL_VIEWPORT + + + glGet with argument GL_MAX_VIEWPORT_DIMS + + + See Also + + glDepthRange + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man3/glWaitSync.xml b/upstream-man-pages/man3/glWaitSync.xml new file mode 100644 index 0000000..6f54eda --- /dev/null +++ b/upstream-man-pages/man3/glWaitSync.xml @@ -0,0 +1,102 @@ + + + + + + + 2010 + Khronos Group + + + glWaitSync + 3G + + + glWaitSync + instruct the GL server to block until the specified sync object becomes signaled + + C Specification + + + void glWaitSync + GLsync sync + GLbitfield flags + GLuint64 timeout + + + + Parameters + + + sync + + + Specifies the sync object whose status to wait on. + + + + + flags + + + A bitfield controlling the command flushing behavior. flags may be zero. + + + + + timeout + + + Specifies the timeout that the server should wait before continuing. timeout must be GL_TIMEOUT_IGNORED. + + + + + + Description + + glWaitSync causes the GL server to block and wait until sync becomes signaled. sync + is the name of an existing sync object upon which to wait. flags and timeout are currently not used and + must be set to zero and the special value GL_TIMEOUT_IGNORED, respectivelyflags and + timeout are placeholders for anticipated future extensions of sync object capabilities. They must have these reserved values in + order that existing code calling glWaitSync operate properly in the presence of such extensions.. glWaitSync will always wait no longer than an implementation-dependent timeout. The + duration of this timeout in nanoseconds may be queried by calling glGet with the + parameter GL_MAX_SERVER_WAIT_TIMEOUT. There is currently no way to determine whether glWaitSync unblocked + because the timeout expired or because the sync object being waited on was signaled. + + + If an error occurs, glWaitSync does not cause the GL server to block. + + + Notes + + glWaitSync is available only if the GL version is 3.2 or higher. + + + Errors + + GL_INVALID_OPERATION is generated if sync is not the name of a sync object. + + + GL_INVALID_VALUE is generated if flags is not zero. + + + GL_INVALID_VALUE is generated if timeout is not GL_TIMEOUT_IGNORED. + + + See Also + + glFenceSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man3/index.php b/upstream-man-pages/man3/index.php new file mode 100644 index 0000000..b58ab1c --- /dev/null +++ b/upstream-man-pages/man3/index.php @@ -0,0 +1,9 @@ + + +OpenGL 3.3 Reference Pages + + + + + + diff --git a/upstream-man-pages/man3/pdf/DejaVuSans.ttf b/upstream-man-pages/man3/pdf/DejaVuSans.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a467fe54e1df2eca898e8ed234551ebd2aee6de3 GIT binary patch literal 581372 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 a4Z07Q#!Q9PuUeF#*Rqsm{TfHxt((;AA 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

4SAGu&EVhZQ#=Y{_@o2#i@ zCY3(8`Mxb9@8jHc2%1ccJ#IYXS^L6}xCG$YD3(Qs1J6(;xT#R-HJAp*0Mjtv%82ri zfH;9_eYn!J;BMHu@~++;T`;^(d}o0dZn_d#qk>p;1keprLgH%Br7Rw8UQiD3m##mCd&Z4;JV7#JO^G>namiuU8Skj62=&WqGv47&L@ z!m!;yf)F;YY(n$gE26W2cINj49KVd+E_4;J7=ZXSo~d6E(-uBUe{uS<5;E7bXeg56 zrTg*Emkf%CvDpfN`JMp9*i z@+JY5u|nYPz>U=ZU9i)K$c^rXUj={P3qiO3_N}2^tS5>wZWM_}{%#Bd>Y?48_<7K- z4(vQ==ZTwZhledjeqr)!#%j?l7K;Cx(J$Oodu+M}_*fCecGA_ghBQY)8y%)!KM00^*R&^O>#DElqIhCN3%mcY}` z7K@=TR;2-oz+yl@;)CJ5To!T-JgqT2BHl8q2&RBY{a@HqHRDqf`o8eC%Wvb`_hT-8 z=^OsUx(a1g)$$5!crwRe_xOY|s_COQO6dpJ@h57^nWK|6zjlvL?s8tGE*X`X!xQi` ze7jdM<49$eZ&&PJ%O%4t5+|DqCvQYuPTnqEXZISYAClyfu5%xFU~aELUcO$w+Ap@% zb8inC+A`MfmkNDpKup$iZ$Ag8@6Q!-(>Y_?v>EH|^Sz3V+0Dhw564@=!~DlsnC{rS zqfzn8pF_hO-)TKw&;oj~UOYnTa0=gng{N=0J{XI^mx= zf}ui1MlPZ45YuC3hYA

P{<}Abuqy^A|M@ruuCzWr2r?Jih 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%0Ad@KF=`z>U3BDg}}b8W`8~tf_2bj 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 XWjpWx=9hi;{}2B@?*HkX{FMI#`$(sz literal 0 HcmV?d00001 diff --git a/upstream-man-pages/man3/pdf/Makefile b/upstream-man-pages/man3/pdf/Makefile new file mode 100644 index 0000000..90e44db --- /dev/null +++ b/upstream-man-pages/man3/pdf/Makefile @@ -0,0 +1,414 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc +SED = sed +CAT = cat +FOPDIR = /cygdrive/c/man_pages/fop-0.94 + +FOP = $(FOPDIR)/fop.bat +CONFIG = $(FOPDIR)/user.cfg + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and the specifically +# stylesheet to convert Docbook+MathML => XHTML+MathML +DB2XHTML = ./ogl_prep_xml.xsl +#DB2PDF = ../../../../../../../../docbook-xsl-1.73.2/fo/docbook.xsl +DB2PDF = ./opengl-pdf.xsl +#CONFIG = ../../../../../../../../fop-0.94/user.cfg + +OUTFILE = glReference + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +# ARB Ecosystem man pages +ARBXML = \ + glBlendEquationSeparate.xml \ + glStencilFuncSeparate.xml \ + glStencilMaskSeparate.xml \ + glStencilOpSeparate.xml + +# SuperBible GL 1.5 man pages +SUPERBIBLEXML = \ + glBeginQuery.xml \ + glBindBuffer.xml \ + glBufferData.xml \ + glBufferSubData.xml \ + glDeleteBuffers.xml \ + glDeleteQueries.xml \ + glGenBuffers.xml \ + glGenQueries.xml \ + glGetBufferParameteriv.xml \ + glGetBufferPointerv.xml \ + glGetBufferSubData.xml \ + glGetQueryiv.xml \ + glGetQueryObject.xml \ + glIsBuffer.xml \ + glIsQuery.xml \ + glMapBuffer.xml + +# 3Dlabs GL 2.0 man pages +3DLABSXML = \ + glAttachShader.xml \ + glBindAttribLocation.xml \ + glCompileShader.xml \ + glCreateProgram.xml \ + glCreateShader.xml \ + glDeleteProgram.xml \ + glDeleteShader.xml \ + glDetachShader.xml \ + glDrawBuffers.xml \ + glEnableVertexAttribArray.xml \ + glGetActiveAttrib.xml \ + glGetActiveUniform.xml \ + glGetAttachedShaders.xml \ + glGetAttribLocation.xml \ + glGetProgram.xml \ + glGetProgramInfoLog.xml \ + glGetShader.xml \ + glGetShaderInfoLog.xml \ + glGetShaderSource.xml \ + glGetUniform.xml \ + glGetUniformLocation.xml \ + glGetVertexAttrib.xml \ + glGetVertexAttribPointerv.xml \ + glIsProgram.xml \ + glIsShader.xml \ + glLinkProgram.xml \ + glShaderSource.xml \ + glUniform.xml \ + glUseProgram.xml \ + glValidateProgram.xml \ + glVertexAttrib.xml \ + glVertexAttribPointer.xml + +# SGI OpenGL 1.4 man pages +SGIGLXML = \ + glAccum.xml \ + glActiveTexture.xml \ + glAlphaFunc.xml \ + glAreTexturesResident.xml \ + glArrayElement.xml \ + glBegin.xml \ + glBindTexture.xml \ + glBitmap.xml \ + glBlendColor.xml \ + glBlendEquation.xml \ + glBlendFuncSeparate.xml \ + glBlendFunc.xml \ + glCallLists.xml \ + glCallList.xml \ + glClearAccum.xml \ + glClearColor.xml \ + glClearDepth.xml \ + glClearIndex.xml \ + glClearStencil.xml \ + glClear.xml \ + glClientActiveTexture.xml \ + glClipPlane.xml \ + glColorMask.xml \ + glColorMaterial.xml \ + glColorPointer.xml \ + glColorSubTable.xml \ + glColorTableParameter.xml \ + glColorTable.xml \ + glColor.xml \ + glCompressedTexImage1D.xml \ + glCompressedTexImage2D.xml \ + glCompressedTexImage3D.xml \ + glCompressedTexSubImage1D.xml \ + glCompressedTexSubImage2D.xml \ + glCompressedTexSubImage3D.xml \ + glConvolutionFilter1D.xml \ + glConvolutionFilter2D.xml \ + glConvolutionParameter.xml \ + glCopyColorSubTable.xml \ + glCopyColorTable.xml \ + glCopyConvolutionFilter1D.xml \ + glCopyConvolutionFilter2D.xml \ + glCopyPixels.xml \ + glCopyTexImage1D.xml \ + glCopyTexImage2D.xml \ + glCopyTexSubImage1D.xml \ + glCopyTexSubImage2D.xml \ + glCopyTexSubImage3D.xml \ + glCullFace.xml \ + glDeleteLists.xml \ + glDeleteTextures.xml \ + glDepthFunc.xml \ + glDepthMask.xml \ + glDepthRange.xml \ + glDrawArrays.xml \ + glDrawBuffer.xml \ + glDrawElements.xml \ + glDrawPixels.xml \ + glDrawRangeElements.xml \ + glEdgeFlagPointer.xml \ + glEdgeFlag.xml \ + glEnableClientState.xml \ + glEnable.xml \ + glEvalCoord.xml \ + glEvalMesh.xml \ + glEvalPoint.xml \ + glFeedbackBuffer.xml \ + glFinish.xml \ + glFlush.xml \ + glFogCoordPointer.xml \ + glFogCoord.xml \ + glFog.xml \ + glFrontFace.xml \ + glFrustum.xml \ + glGenLists.xml \ + glGenTextures.xml \ + glGetClipPlane.xml \ + glGetColorTableParameter.xml \ + glGetColorTable.xml \ + glGetCompressedTexImage.xml \ + glGetConvolutionFilter.xml \ + glGetConvolutionParameter.xml \ + glGetError.xml \ + glGetHistogramParameter.xml \ + glGetHistogram.xml \ + glGetLight.xml \ + glGetMap.xml \ + glGetMaterial.xml \ + glGetMinmaxParameter.xml \ + glGetMinmax.xml \ + glGetPixelMap.xml \ + glGetPointerv.xml \ + glGetPolygonStipple.xml \ + glGetSeparableFilter.xml \ + glGetString.xml \ + glGetTexEnv.xml \ + glGetTexGen.xml \ + glGetTexImage.xml \ + glGetTexLevelParameter.xml \ + glGetTexParameter.xml \ + glGet.xml \ + glHint.xml \ + glHistogram.xml \ + glIndexMask.xml \ + glIndexPointer.xml \ + glIndex.xml \ + glInitNames.xml \ + glInterleavedArrays.xml \ + glIsEnabled.xml \ + glIsList.xml \ + glIsTexture.xml \ + glLightModel.xml \ + glLight.xml \ + glLineStipple.xml \ + glLineWidth.xml \ + glListBase.xml \ + glLoadIdentity.xml \ + glLoadMatrix.xml \ + glLoadName.xml \ + glLoadTransposeMatrix.xml \ + glLogicOp.xml \ + glMap1.xml \ + glMap2.xml \ + glMapGrid.xml \ + glMaterial.xml \ + glMatrixMode.xml \ + glMinmax.xml \ + glMultiDrawArrays.xml \ + glMultiDrawElements.xml \ + glMultiTexCoord.xml \ + glMultMatrix.xml \ + glMultTransposeMatrix.xml \ + glNewList.xml \ + glNormalPointer.xml \ + glNormal.xml \ + glOrtho.xml \ + glPassThrough.xml \ + glPixelMap.xml \ + glPixelStore.xml \ + glPixelTransfer.xml \ + glPixelZoom.xml \ + glPointParameter.xml \ + glPointSize.xml \ + glPolygonMode.xml \ + glPolygonOffset.xml \ + glPolygonStipple.xml \ + glPrioritizeTextures.xml \ + glPushAttrib.xml \ + glPushClientAttrib.xml \ + glPushMatrix.xml \ + glPushName.xml \ + glRasterPos.xml \ + glReadBuffer.xml \ + glReadPixels.xml \ + glRect.xml \ + glRenderMode.xml \ + glResetHistogram.xml \ + glResetMinmax.xml \ + glRotate.xml \ + glSampleCoverage.xml \ + glScale.xml \ + glScissor.xml \ + glSecondaryColorPointer.xml \ + glSecondaryColor.xml \ + glSelectBuffer.xml \ + glSeparableFilter2D.xml \ + glShadeModel.xml \ + glStencilFunc.xml \ + glStencilMask.xml \ + glStencilOp.xml \ + glTexCoordPointer.xml \ + glTexCoord.xml \ + glTexEnv.xml \ + glTexGen.xml \ + glTexImage1D.xml \ + glTexImage2D.xml \ + glTexImage3D.xml \ + glTexParameter.xml \ + glTexSubImage1D.xml \ + glTexSubImage2D.xml \ + glTexSubImage3D.xml \ + glTranslate.xml \ + glVertexPointer.xml \ + glVertex.xml \ + glViewport.xml \ + glWindowPos.xml + +# SGI GLU 1.3 man pages +SGIGLUXML = \ + gluBeginCurve.xml \ + gluBeginPolygon.xml \ + gluBeginSurface.xml \ + gluBeginTrim.xml \ + gluBuild1DMipmapLevels.xml \ + gluBuild1DMipmaps.xml \ + gluBuild2DMipmapLevels.xml \ + gluBuild2DMipmaps.xml \ + gluBuild3DMipmapLevels.xml \ + gluBuild3DMipmaps.xml \ + gluCheckExtension.xml \ + gluCylinder.xml \ + gluDeleteNurbsRenderer.xml \ + gluDeleteQuadric.xml \ + gluDeleteTess.xml \ + gluDisk.xml \ + gluErrorString.xml \ + gluGetNurbsProperty.xml \ + gluGetString.xml \ + gluGetTessProperty.xml \ + gluLoadSamplingMatrices.xml \ + gluLookAt.xml \ + gluNewNurbsRenderer.xml \ + gluNewQuadric.xml \ + gluNewTess.xml \ + gluNextContour.xml \ + gluNurbsCallbackDataEXT.xml \ + gluNurbsCallbackData.xml \ + gluNurbsCallback.xml \ + gluNurbsCurve.xml \ + gluNurbsProperty.xml \ + gluNurbsSurface.xml \ + gluOrtho2D.xml \ + gluPartialDisk.xml \ + gluPerspective.xml \ + gluPickMatrix.xml \ + gluProject.xml \ + gluPwlCurve.xml \ + gluQuadricCallback.xml \ + gluQuadricDrawStyle.xml \ + gluQuadricNormals.xml \ + gluQuadricOrientation.xml \ + gluQuadricTexture.xml \ + gluScaleImage.xml \ + gluSphere.xml \ + gluTessBeginContour.xml \ + gluTessBeginPolygon.xml \ + gluTessCallback.xml \ + gluTessEndPolygon.xml \ + gluTessNormal.xml \ + gluTessProperty.xml \ + gluTessVertex.xml \ + gluUnProject4.xml \ + gluUnProject.xml + +# SGI GLX 1.4 man pages +SGIGLXXML = \ + glXChooseFBConfig.xml \ + glXChooseVisual.xml \ + glXCopyContext.xml \ + glXCreateContext.xml \ + glXCreateGLXPixmap.xml \ + glXCreateNewContext.xml \ + glXCreatePbuffer.xml \ + glXCreatePixmap.xml \ + glXCreateWindow.xml \ + glXDestroyContext.xml \ + glXDestroyGLXPixmap.xml \ + glXDestroyPbuffer.xml \ + glXDestroyPixmap.xml \ + glXDestroyWindow.xml \ + glXFreeContextEXT.xml \ + glXGetClientString.xml \ + glXGetConfig.xml \ + glXGetContextIDEXT.xml \ + glXGetCurrentContext.xml \ + glXGetCurrentDisplay.xml \ + glXGetCurrentDrawable.xml \ + glXGetCurrentReadDrawable.xml \ + glXGetFBConfigAttrib.xml \ + glXGetFBConfigs.xml \ + glXGetProcAddress.xml \ + glXGetSelectedEvent.xml \ + glXGetVisualFromFBConfig.xml \ + glXImportContextEXT.xml \ + glXIntro.xml \ + glXIsDirect.xml \ + glXMakeContextCurrent.xml \ + glXMakeCurrent.xml \ + glXQueryContextInfoEXT.xml \ + glXQueryContext.xml \ + glXQueryExtensionsString.xml \ + glXQueryExtension.xml \ + glXQueryServerString.xml \ + glXQueryVersion.xml \ + glXSelectEvent.xml \ + glXSwapBuffers.xml \ + glXUseXFont.xml \ + glXWaitGL.xml \ + glXWaitX.xml + +# XML man page source and XHTML targets +GLXML = $(SGIGLXML) $(3DLABSXML) $(SUPERBIBLEXML) $(ARBXML) +GLUXML = $(SGIGLUXML) +GLXXML = $(SGIGLXXML) +XML = $(GLXML) $(GLUXML) $(GLXXML) + + +default: pdf + +%.xml: ../%.xml ogl_prep_xml.xsl + $(XSLT) --xinclude -o $@ $(DB2XHTML) $< + +$(OUTFILE).xml.tmp: $(ARBXML) + $(RM) glReference.xml.tmp + $(CAT) header >> $(OUTFILE).xml.tmp + $(CAT) gl*.xml >> $(OUTFILE).xml.tmp + $(CAT) footer >> $(OUTFILE).xml.tmp + +%.pdf: $(OUTFILE).xml.tmp +# $(FOP) -c $(CONFIG) -xml $(OUTFILE).xml.tmp -xsl $(DB2PDF) -pdf $(OUTFILE).pdf + $(FOP) -xml $(OUTFILE).xml.tmp -xsl $(DB2PDF) -pdf $(OUTFILE).pdf + + + +#default: pdf + +#default: remove_temp $(XML) xml pdf + +xml: glReference.xml + +pdf: glReference.pdf + +remove_temp: + $(RM) *.tmp + +clean: + $(RM) $(XML) $(OUTFILE).pdf *.tmp diff --git a/upstream-man-pages/man3/pdf/footer b/upstream-man-pages/man3/pdf/footer new file mode 100644 index 0000000..429a735 --- /dev/null +++ b/upstream-man-pages/man3/pdf/footer @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/upstream-man-pages/man3/pdf/header b/upstream-man-pages/man3/pdf/header new file mode 100644 index 0000000..7c487d9 --- /dev/null +++ b/upstream-man-pages/man3/pdf/header @@ -0,0 +1,346 @@ + + + + + + + + + + + + + +<graphic fileref="opengl_logo.gif" scale="25"/>Reference Pages + + +OpenGL® Reference Pages + + + + OpenGL® Architectural Review Board TSG, Khronos Group Inc. + BrentInskoE + 2.1 11/14/2007 - DRAFT + 2007 + Khronos Group, Inc. + + + Contents + + This document contains reference information for the OpenGL® Application +Programming Interface. These reference pages (also known as "man pages") include +all of the important usage information for each command. This information includes +a description of all parameters, return values, error conditions, and related +commands. In addition, this document also provides usage information for the OpenGL® +Utility Library (GLU) and the OpenGL® extension to the X Window System (GLX). + + + These pages also exist online in the +OpenGL® SDK. + + +If you find any inaccuracies or typos in the reference pages, don't hesitate to inform us via +the online specification feedback form. + + + + + + + + + +Copyrights + + + +The following OpenGL reference pages are Copyright © 2007 The Khronos Group Inc. and licensed under the Khronos Free Use License. For details, see http://www.khronos.org/help/legal/KFUL/. + + +

+ + glBlendEquationSeparate, + glStencilFuncSeparate, + glStencilMaskSeparate, + glStencilOpSeparate + +
+ + +The following OpenGL reference pages are Copyright © 2005 Addison-Wesley and may be distributed subject to the terms and conditions set forth in the Open Publication Licesnse, v 1.0, 8, June 1999. For details, see http://openlcontent.org/openpub/. + + +
+ + glBeginQuery, + glBindBuffer, + glBufferData, + glBufferSubData, + glDeleteBuffers, + glDeleteQueries, + glGenBuffers, + glGenQueries, + glGetBufferParameteriv, + glGetBufferPointerv, + glGetBufferSubData, + glGetQueryiv, + glGetQueryObject, + glIsBuffer, + glIsQuery, + glMapBuffer + +
+ + +The following OpenGL reference pages are Copyright © 2003-2005 3Dlabs, Inc. Ltd. And may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8, June 1999. For details, see http://openlcontent.org/openpub/. + + +
+ + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glCreateShader, + glDeleteProgram, + glDeleteShader, + glDetachShader, + glDrawBuffers, + glEnableVertexAttribArray, + glGetActiveAttrib, + glGetActiveUniform, + glGetAttachedShaders, + glGetAttribLocation, + glGetProgram, + glGetProgramInfoLog, + glGetShader, + glGetShaderInfoLog, + glGetShaderSource, + glGetUniform, + glGetUniformLocation, + glGetVertexAttrib, + glGetVertexAttribPointerv, + glIsProgram, + glIsShader, + glLinkProgram, + glShaderSource, + glUniform, + glUseProgram, + glValidateProgram, + glVertexAttrib, + glVertexAttribPointer + +
+ + + + All reference pages referring to the OpenGL Utility Library and the OpenGL +extension to the X Window System, and the following core OpenGL reference pages +are Copyright © 1991-2006 Silicon Graphics, Inc. and may be distributed +subject to the terms and conditions set forth in the Free Software B License. +For details, see +http://oss.sgi.com/projects/FreeB/. + +
+ + glAccum, + glActiveTexture, + glAlphaFunc, + glAreTexturesResident, + glArrayElement, + glBegin, + glBindTexture, + glBitmap, + glBlendColor, + glBlendEquation, + glBlendFunc, + glBlendFuncSeparate, + glCallList, + glCallLists, + glClear, + glClearAccum, + glClearColor, + glClearDepth, + glClearIndex, + gllearStencil, + glCLientActiveTexture, + glClipPlane, + glColor, + glColorMask, + glColorMaterial, + glColorPointer, + glColorSubTable, + glColorTable, + glColorTableParameter, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glConvolutionFilter1D, + glConvolutionFilter2D, + glConvolutionParameter, + glCopyColorSubTable, + glCopyColorTable, + glCopyConvolutionFilter1D, + glCopyConvolutionFilter2D, + glCopyPixels, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glCullFace, + glDeleteLists, + glDeleteTextures, + glDepthFunc, + glDepthMask, + glDepthRange, + glDrawArrays, + glDrawBuffer, + glDrawElements, + glDrawPixels, + glDrawRangeElements, + glEdgeFlag, + glEdgeFlagPointer, + glEnable, + glEnableClientState, + glEvalCoord, + glEvalMesh, + glEvalPoint, + glFeedbackBuffer, + glFinish, + glFlush, + glFog, + glFogCoord, + glFogCoordPointer, + glFrontFace, + glFrustum, + glGenLists, + glGenTextures, + glGet, + glGetClipPlane, + glGetColorTable, + glGetColorTableParameter, + glGetCompressedTexImage, + glGetConvolutionFilter, + glGetConvolutionParameter, + glGetError, + glGetHistogram, + glGetHistogramParameter, + glGetLight, + glGetMap, + glGetMaterial, + glGetMinmax, + glGetMinmaxParameter, + glGetPixelMap, + glGetPointerv, + glGetPolygonStipple, + glGetSeparableFilter, + glGetString, + glGetTexEnv, + glGetTexGen, + glGetTexImage, + glGetTexLevelParameter, + glGetTexParameter, + glHint, + glHistogram, + glIndex, + glIndexMask, + glIndexPointer, + glInitNames, + glInterleavedArrays, + glIsEnabled, + glIsList, + glIsTexture, + glLight, + glLightModel, + glLineStipple, + glLineWidth, + glListBase, + glLoadIdentity, + glLoadMatrix, + glLoadName, + glLoadTransposeMatrix, + glLogicOp, + glMap1, + glMap2, + glMapGrid, + glMaterial, + glMatrixMode, + glMinmax, + glMultiDrawArrays, + glMultiDrawElements, + glMultiTexCoord, + glMultMatrix, + glMultTransposeMatrix, + glNewList, + glNormal, + glNormalPointer, + glOrtho, + glPassThrough, + glPixelMap, + glPixelStore, + glPixelTransfer, + glPixelZoom, + glPointParameter, + glPointSize, + glPolygonMode, + glPolygonOffset, + glPolygonStipple, + glPrioritizeTextures, + glPushAttrib, + glPushClientAttrib, + glPushMatrix, + glPushName, + glRasterPos, + glReadBuffer, + glReadPixels, + glRect, + glRenderMode, + glResetHistogram, + glResetMinmax, + glRotate, + glSampleCoverage, + glScale, + glScissor, + glSecondaryColor, + glSecondaryColorPointer, + glSelectBuffer, + glSeparableFilter2D, + glShadeModel, + glStencilFunc, + glStencilMask, + glStencilOp, + glTexCoord, + glTexCoordPointer, + glTexEnv, + glTexGen, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTranslate, + glVertex, + glVertexPointer, + glViewport, + glWindowPos + +
+ + + + + + + + + +OpenGL<superscript>®</superscript> Commands diff --git a/upstream-man-pages/man3/pdf/ogl_prep_xml.xsl b/upstream-man-pages/man3/pdf/ogl_prep_xml.xsl new file mode 100644 index 0000000..ec5d5df --- /dev/null +++ b/upstream-man-pages/man3/pdf/ogl_prep_xml.xsl @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/pdf/opengl-pdf.xsl b/upstream-man-pages/man3/pdf/opengl-pdf.xsl new file mode 100644 index 0000000..d5bac43 --- /dev/null +++ b/upstream-man-pages/man3/pdf/opengl-pdf.xsl @@ -0,0 +1,349 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Symbol,ZapfDingbats,Lucida Sans Unicode +ansi + + + + + + + + + + + + + + + + + + + + + encountered + + in + + + , but no template matches. + + + < + + > + + </ + + > + + + + + + + + + + + + + + + + + + + + + Note + + + namesp. cut + + + stripped namespace before processing + + + + + + + Note + + + namesp. cut + + + processing stripped document + + + + + + + + Unable to strip the namespace from DB5 document, + cannot proceed. + + + + + + + + + + ID ' + + ' not found in document. + + + + + ERROR: Document root element ($rootid= + + ) for FO output + must be one of the following elements: + + + + + + + + + + + + + + + + + + + + + ERROR: Document root element for FO output + must be one of the following elements: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [could not find document title] + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Making + + pages on + + paper ( + + x + + ) + + + + + + diff --git a/upstream-man-pages/man3/top.php b/upstream-man-pages/man3/top.php new file mode 100644 index 0000000..b861d9c --- /dev/null +++ b/upstream-man-pages/man3/top.php @@ -0,0 +1,10 @@ + + +OpenGL SDK + + + + + + + diff --git a/upstream-man-pages/man3/usr/include/make/commondefs b/upstream-man-pages/man3/usr/include/make/commondefs new file mode 100644 index 0000000..6fd9717 --- /dev/null +++ b/upstream-man-pages/man3/usr/include/make/commondefs @@ -0,0 +1,407 @@ +# Copyright (c) 1991-2000 Silicon Graphics, Inc. +# This document is licensed under the SGI Free Software B license. +# For details, see +# +# http://oss.sgi.com/projects/FreeB +# +# $Date$ $Revision$ +# $Header: //depot/main/tools/include/commondefs#43 $ + +COMMONRULES=$(ROOT)/usr/include/make/commonrules + +# what OS are we running on +OS=$(shell uname) +ifeq ($(subst 64,,$(OS)), IRIX) +OS=IRIX +endif +ifeq (CYGWIN,$(findstring CYGWIN,$(OS))) +OS=Linux +endif + +# various source-level directories +TOOLSSRC = $(TOPDIR)/tools +GFXINCLUDESRC = $(TOPDIR)/gfx/include +OGLLIBSRC = $(TOPDIR)/gfx/lib/opengl +GLXLIBSRC = $(TOPDIR)/glx + +# SGI Free Software B license +OSSCOPYRIGHT = $(TOPDIR)/doc/release/OSSCOPYRIGHT + +# shell-related defs +SHELL = /bin/sh +AWK = awk +ifeq ($(OS),IRIX) +ECHO = /bin/echo +endif +ifeq ($(OS),Linux) +ECHO = /bin/echo -e +endif +RM = rm -f +MV = mv +PERL = perl +SED = sed +UNIQ = uniq + +# M4 options - run GNU M4 in compatibility mode +# rdist options - Red Hat 5.2 must have daemon location specified +ifeq ($(OS),IRIX) +M4OPTS = +endif +ifeq ($(OS),Linux) +M4OPTS = -G +RDIST_OPTS = -p /usr/sbin/rdistd +endif + +# override default gmake CXX with what we have +ifeq ($(OS),IRIX) +CXX = CC +endif + +# what language are we using? Default to ansi with extended defines +ifeq ($(OS),IRIX) +CVERSION = -xansi +endif +ifeq ($(OS),Linux) +CVERSION= -ansi -include $(ROOT)/usr/include/make/linuxdefs +endif + +# WARN is the warning option +ifeq ($(OS),IRIX) +# +# Turn of explicitly some warnings on IRIX. Specifically: +# 1155: unrecognized #pragma +# 1174: parameter/variable "???" was declared but never referenced +# 1201: trailing comma is nonstandard (last element in struct assnment) +# 1209: controlling expression is constant +# 1506: implicit conversion from "???" to "???": rounding, sign +# extension, or loss of accuracy may result +# 3170: "???" not marked as intrinsic because it is not declared +# as a function +# +WARN = -fullwarn \ + -woff 1155,1174,1506,1201,1209,3170 +endif +ifeq ($(OS),Linux) +WARN = -Wimplicit \ + -Wreturn-type \ + -Wswitch \ + -Wcomment \ + -Wformat \ + -Wchar-subscripts \ + -Wparentheses \ + -Wpointer-arith \ + -Wcast-qual \ + -Wmissing-prototypes \ + -Wmissing-declarations \ + $(NULL) +endif + +# default optimization +ifeq ($(subst y,1,$(GLDEBUG)),1) +OPTIMIZER=-g +else +OPTIMIZER=-O2 +ifeq ($(OS),Linux) +WARN += -Wuninitialized +endif +endif + +# how to make dependencies +ifeq ($(OS),IRIX) +MKDEPOPT = -MDupdate Makedepend +endif +ifeq ($(OS),Linux) +MKDEPOPT = -MD +endif + +override GCOPTS = $(OPTIMIZER) $(MKDEPOPT) $(WARN) +override GCXXOPTS = $(OPTIMIZER) $(MKDEPOPT) $(WARN) + +# where is the default include directory? +# (we don't grab it off $ROOT, to avoid populating $ROOT with system +# includes. Yes, I know... You don't like the idea. +INCLDIR = /usr/include + +# where to install include files? +INCLUDE_LOCATION = $(ROOT)/usr/include + +# we would like to use nostdinc on Linux, but unfortunately, it also +# removes include directories with no well-known fixed path (ie. the +# gcc install directory). +ifeq ($(OS),IRIX) +override GCINCS = -nostdinc -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +override GCXXINCS = -nostdinc -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +endif +ifeq ($(OS),Linux) +override GCINCS = -I$(ROOT)$(INCLDIR) +override GCXXINCS = -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +endif + +ifeq ($(GLDEBUG),1) +override GCDEFS = -DDEBUG -UNDEBUG +override GCXXDEFS = -DDEBUG -UNDEBUG +else +override GCDEFS = -UDEBUG -DNDEBUG +override GCXXDEFS = -UDEBUG -DNDEBUG +endif + +# +# Cc flags, composed of: +# variable (V*) (set on the command line) +# local (L*) (set in the makefile) +# global (G*) (defined in this file, not overrideable) +# in that order. This is done so that the locally defined includes +# are searched before the globally defined ones. +# +CFLAGS = $(CVERSION) $(VCFLAGS) $(LCFLAGS) $(GCFLAGS) + +# +# Each of these three components is divided into defines (-D's and -U's), +# includes (-I's), and other options. By segregating the different +# classes of flag to cc, the defines (CDEFS) and includes (CINCS) can be +# easily given to other programs, e.g., lint. +# +# Notes: +# - The local assignments should be to LCOPTS, LCDEFS, and LCINCS, not to +# LCFLAGS, although CFLAGS will be correctly set if this is done. +# - If a program cannot be optimized, it should override the setting of +# OPTIMIZER with a line such as "OPTIMIZER=" in its make file. +# - If a program cannot be compiled with ANSI C, its makefile +# should set CVERSION=-cckr +# +VCFLAGS = $(VCDEFS) $(VCINCS) $(VCOPTS) +LCFLAGS = $(LCDEFS) $(LCINCS) $(LCOPTS) +GCFLAGS = $(GCDEFS) $(GCINCS) $(GCOPTS) + +COPTS = $(VCOPTS) $(LCOPTS) $(GCOPTS) +CDEFS = $(VCDEFS) $(LCDEFS) $(GCDEFS) +CINCS = $(VCINCS) $(LCINCS) $(GCINCS) + +# +# CXX flags are decomposed using the same hierarchy as C flags. +# +CXXFLAGS = $(CVERSION) $(VCXXFLAGS) $(LCXXFLAGS) $(GCXXFLAGS) + +VCXXFLAGS = $(VCXXDEFS) $(VCXXINCS) $(VCXXOPTS) +LCXXFLAGS = $(LCXXDEFS) $(LCXXINCS) $(LCXXOPTS) +GCXXFLAGS = $(GCXXDEFS) $(GCXXINCS) $(GCXXOPTS) + +CXXOPTS = $(VCXXOPTS) $(LCXXOPTS) $(GCXXOPTS) +CXXDEFS = $(VCXXDEFS) $(LCXXDEFS) $(GCXXDEFS) +CXXINCS = $(VCXXINCS) $(LCXXINCS) $(GCXXINCS) + +# +# Do something for the linker +# +# +# Library paths (-L's) are part of LDOPTS. +# Libraries (-l's) are part of LDLIBS. +# This is done so that there is a guarantee that all library paths are +# included before the libraries. +# +override GLDOPTS= +override GLDDSOOPTS= +ifeq ($(OS),IRIX) +override GLDOPTS += -L$(ROOT)/usr/lib32 +override GLDDSOOPTS += -L$(ROOT)/usr/lib32 +endif +ifeq ($(OS),Linux) +override GLDOPTS += -L$(ROOT)/usr/lib -L$(XTOPDIR)/xc/exports/lib +override GLDDSOOPTS += -L$(ROOT)/usr/lib -L$(XTOPDIR)/xc/exports/lib +endif + +# options used for DSO's. +ifeq ($(OS),IRIX) +DSONAMEOPT = -soname $(DSONAME) +ifneq ($(DSOEXPORTS),) +DSOEXPORTSOPT = -exports_file $(DSOEXPORTS) +endif +override GLDDSOOPTS += -elf -shared -all $(DSOEXPORTSOPT) $(DSONAMEOPT) +endif + +ifeq ($(OS),Linux) +DSONAMEOPT = -soname=$(DSONAME) +ifneq ($(DSOEXPORTS),) +DSOEXPORTSOPT = $(addprefix -u ,$(shell cat $(DSOEXPORTS))) +else +DSOEXPORTSOPT = --whole-archive +endif +override GLDDSOOPTS += -shared $(DSOEXPORTSOPT) $(DSONAMEOPT) +endif + +LDDSOOPTS = $(VLDDSOOPTS) $(LLDDSOOPTS) $(GLDDSOOPTS) +LDDSOLIBS = $(VLDDSOLIBS) $(LLDDSOLIBS) $(GLDDSOLIBS) +LDDSOFLAGS = $(LDDSOOPTS) $(LDDSOLIBS) $(ENDIAN) + +LDOPTS = $(VLDOPTS) $(LLDOPTS) $(GLDOPTS) +LDLIBS = $(VLDLIBS) $(LLDLIBS) $(GLDLIBS) +LDFLAGS = $(LDOPTS) $(LDLIBS) $(ENDIAN) + +# where to install libraries +ifeq ($(OS),IRIX) +OBJECT_STYLE = N32 +LIB_LOCATION = $(ROOT)/usr/lib32 +endif +ifeq ($(OS),Linux) +LIB_LOCATION = $(ROOT)/usr/lib +endif + +# +# as flags are just like cc flags. +# By default, ASTYLE is the same as CSTYLE, but some may need to make +# the asm more aggressive than 'C' and can set ASTYLE. Users of 'make' +# always get ASTYLE == CSTYLE +# +ASFLAGS = $(VASFLAGS) $(LASFLAGS) $(GASFLAGS) + +VASFLAGS = $(VASDEFS) $(VASINCS) $(VASOPTS) +LASFLAGS = $(LASDEFS) $(LASINCS) $(LASOPTS) +GASFLAGS = $(GASDEFS) $(GASINCS) $(GASOPTS) + +ASOPTS = $(VASOPTS) $(LASOPTS) $(GASOPTS) +ASDEFS = $(VASDEFS) $(LASDEFS) $(GASDEFS) +ASINCS = $(VASINCS) $(LASINCS) $(GASINCS) + +override GASOPTS = $(OPTIMIZER) $(MKDEPOPT) +override GASDEFS = $(GCDEFS) +override GASINCS = $(GCINCS) + +# +# the install command to use +# +INSTALL = $(ROOT)/usr/bin/gfxinstall +INSTALLFLAGS = -v -m 0444 + +# +# Convenient command macros that include the flags macros. +# +# You should always invoke make in makefiles via $(MAKE), as make passes +# all command-line variables through the environment to sub-makes. +# +# Never use just $(CCF), etc. in rules that link executables; LDFLAGS +# needs to be included after your objects in the command line. +# +ASF = $(AS) $(ASFLAGS) +CXXF = $(CXX) $(CXXFLAGS) +C++F = $(CXXF) +CCF = $(CC) $(CFLAGS) +LDF = $(LD) $(LDFLAGS) +LEXF = $(LEX) $(LFLAGS) +YACCF = $(YACC) $(YFLAGS) + +# Targets + +COMMONTARGS = clobber clean rmtargets + +ALLTARGS = headers headers_install libs libs_install install apps distsi \ + $(COMMONTARGS) + +# +# Rule macros for nonterminal makefiles that iterate over subdirectories, +# making the current target. Set *SUBDIRS to the relevant list of kids. +# +# Set NOSUBMESG to any value to suppress a warning that subdirectories +# are not present. This is useful with mandefs/rules +# +SUBDIR_MAKERULE= \ + if test ! -d $$d; then \ + if test "$(NOSUBMESG)" = "" ; then \ + echo "SKIPPING $$d: No such directory."; \ + fi \ + else \ + $(ECHO) "\t$(MAKE) -C $$d $${RULE:=$@}"; \ + $(MAKE) -C $$d $${RULE:=$@}; \ + fi + +SUBDIRS_MAKERULE= \ + +@for d in $(SUBDIRS); do $(SUBDIR_MAKERULE); done + +# +# One problem with the above rules is that if a make fails, and -k is +# set, the entire for loop might stop. This is because make still can +# (and XPG requires it) exit with an error status if the -k option is set. +# This is an alternate rule for SUBDIRS when it is desired that -k keep +# working on the next SUBDIR if the previous one failed. Its not quite +# as compact a rule as the previous ones. +# A standard usage would be: +# default install $(COMMONTARGS): $(_FORCE) +# $(MAKE) __DORULE=$@ $(SUBDIRS) +# $(SUBDIRS): $(_FORCE) +# @$(NSUBDIR_MAKERULE) + +NSUBDIR_MAKERULE= \ + if test ! -d $@; then \ + if test "$(NOSUBMESG)" = "" ; then \ + echo "SKIPPING $@: No such directory."; \ + fi \ + else \ + echo "\t(cd $@; $(MAKE) $(__DORULE))"; \ + (cd $@; ${MAKE} $(__DORULE)); \ + fi + +# +# Convenience file list macros: +# - Commondefs defines the following lists: SOURCES, enumerating all +# source files; OBJECTS, the .o files derived from compilable source; +# and DIRT, which lists intermediates and temporary files to be +# removed by clean. +# - The including (parent) makefile may define source file lists for +# the standard suffixes: CFILES for .c, ASFILES for .s, YFILES for +# .y, etc. We combine all such lists into SOURCES. The including +# makefile need not define CFILES &c before including commondefs. +# +SOURCES=$(HFILES) $(ASFILES) $(CCFILES) $(C++FILES) $(CXXFILES) $(CFILES) \ + $(EFILES) $(FFILES) $(LFILES) $(PFILES) $(RFILES) $(SHFILES) $(YFILES) + +CXXO1=$(CXXFILES:.c++=.o) $(C++FILES:.c++=.o) $(CCFILES:.c++=.o) +CXXO2=$(CXXO1:.cxx=.o) +CXXO3=$(CXXO2:.C=.o) +CXXO4=$(CXXO3:.cc=.o) +CXXOALL=$(CXXO4) +YO1=$(YFILES:.y=.o) +YO2=$(YO1:.yxx=.o) +YO3=$(YO2:.Y=.o) +YOALL=$(YO3) +LO1=$(LFILES:.l=.o) +LO2=$(LO1:.lxx=.o) +LO3=$(LO2:.L=.o) +LOALL=$(LO3) +OBJECTS=$(ASFILES:.s=.o) $(CXXOALL) $(CFILES:.c=.o) $(EFILES:.e=.o) \ + $(FFILES:.f=.o) $(LOALL) $(PFILES:.p=.o) $(RFILES:.r=.o) \ + $(YOALL) + +# +# dependency file(s) +# +ifeq ($(OS),IRIX) +MKDEPFILE = Makedepend +endif +ifeq ($(OS),Linux) +MKDEPFILE = $(OBJECTS:.o=.d) +endif + +# +# distribution file +# +DISTFILE_EXT = Distfile +DISTFILE_INT = Distfile.int +ifeq ($(OS),IRIX) +DISTFILE = $(DISTFILE_EXT) +else +ifeq ($(OS),Linux) +DISTFILE = $(DISTFILE_EXT) +else +DISTFILE = $(DISTFILE_EXT) $(DISTFILE_INT) +endif +endif + +# +# dirt stuff +# +DIRT=$(GDIRT) $(VDIRT) $(LDIRT) +override GDIRT=*.o a.out core lex.yy.[co] y.tab.[cho] ar.tmp.* so_locations + +LOCALDEFS = ./localdefs +LOCALRULES = ./localrules + +-include $(LOCALDEFS) diff --git a/upstream-man-pages/man3/usr/include/make/commonrules b/upstream-man-pages/man3/usr/include/make/commonrules new file mode 100644 index 0000000..95f42d6 --- /dev/null +++ b/upstream-man-pages/man3/usr/include/make/commonrules @@ -0,0 +1,96 @@ +# Copyright (c) 1991-2000 Silicon Graphics, Inc. +# This document is licensed under the SGI Free Software B license. +# For details, see +# +# http://oss.sgi.com/projects/FreeB +# +# $Date$ $Revision$ +# $Header: //depot/main/tools/include/commonrules#21 $ + +# +# Notes: +# - After including $(ROOT)/usr/include/make/commondefs, a makefile may +# say ``include $(COMMONRULES)'' to get this file. +# - It is up to the including makefile to define a default rule before +# including $(COMMONRULES). +# - The parent makefile must define TARGETS in order for clobber to work. +# - If the parent makefile must overload the common targets with special +# rules (e.g. to perform recursive or subdirectory makes), then set +# COMMONPREF to some unique prefix before including $(COMMONRULES), +# and make sure that each common target depends on its prefixed name. +# For example, a makefile which passes common targets and install on +# to makes in subdirectories listed in DIRS might say +# +# COMMONPREF=xxx +# include $(COMMONRULES) +# +# $(COMMONTARGS) install: $(COMMONPREF)$$@ +# @for d in $(DIRS); do \ +# $(ECHO) "\tcd $$d; $(MAKE) $@"; \ +# cd $$d; $(MAKE) $@; cd ..; \ +# done +# +# Thus, all of the common rules plus install are passed to sub-makes +# *and* executed in the current makefile (as xxxclean, xxxclobber, +# xxxinstall, etc). SUBDIRS_MAKERULE in commondefs is a convenience +# macro that expands to the above loop. +# + + +# +# cleaning targets +# +$(COMMONPREF)clobber: $(COMMONPREF)clean $(COMMONPREF)rmtargets +ifdef MKDEPFILE + $(RM) -r $(MKDEPFILE) +endif + +$(COMMONPREF)clean: +ifdef DIRT + $(RM) -r $(DIRT) +endif + +$(COMMONPREF)rmtargets: +ifdef TARGETS + $(RM) -r $(TARGETS) +endif + +# +# targets to build distributions +# +-include $(DISTFILE) + +# build SI distribution +$(COMMONPREF)distsi: + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)/$(DISTDIR_SI) $(DISTFILES_SI) + @$(ECHO) "" + +# build OSS distribution +$(COMMONPREF)distoss: + @$(INSTALL) $(INSTALLFLAGS_OSS) -F $(DIST)/$(DISTDIR_OSS) $(DISTFILES_OSS) + @$(ECHO) "" + +# +# additional target for .cxx files. (gmake only likes .C and .cc) +# +%.o : %.cxx + $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@ + +# +# preprocessor only target +# +%.i : %.c + $(CC) -E $(CPPFLAGS) $(CFLAGS) $< | $(SED) -e 's/^ $$//' | $(UNIQ) > $@ + +%.i : %.cc %.C %.cxx + $(CXX) -E $(CPPFLAGS) $(CXXFLAGS) $< | $(SED) -e 's/^ $$//' | $(UNIQ) > $@ + +# +# include the make dependency file(s), if they exist +# +-include $(MKDEPFILE) + +# +# Local make rules +# +-include $(LOCALRULES) diff --git a/upstream-man-pages/man3/usr/include/make/commonrules.win32 b/upstream-man-pages/man3/usr/include/make/commonrules.win32 new file mode 100644 index 0000000..118b10c --- /dev/null +++ b/upstream-man-pages/man3/usr/include/make/commonrules.win32 @@ -0,0 +1,109 @@ + + +.SUFFIXES: .l .y .o + +# +# targets for lex and yacc +# +.l.c: + $(RM) $@ + $(LEX) $(LFLAGS) $< + $(MV) lex.yy.c $@ + +.y.c: + $(RM) $@ + $(YACC) $(YFLAGS) $< + $(MV) y.tab.c $@ + +.o.obj: + ; + +# +# target to create preprocessor output file from .c file (for debugging) +# +.c.i: + $(RM) $@ + $(CC) $(USER_C_FLAGS) -E $< > $*.i + +# +# main target (first) resolves to makefile.def's main target +# +default: all + +# +# This has to be here, for dependencies +# +INCLUDES = $(VCINCS); $(LCINCS); $(GCINCS) + + +# +# cleaning targets +# +$(COMMONPREF)clobber: $(COMMONPREF)clobber_subdirs + $(RM) $(DIRT) $(TARGETS) obj$(BUILD_ALT_DIR) + +$(COMMONPREF)clean: $(COMMONPREF)clean_subdirs + $(RM) $(DIRT) + +$(COMMONPREF)rmtargets: $(COMMONPREF)rmtargets_subdirs + $(RM) $(TARGETS) + +# +# targets to build distributions +# +!IF EXIST($(DISTFILE)) +!INCLUDE $(DISTFILE) +!ENDIF + +$(COMMONPREF)distddk: $(COMMONPREF)distddk_subdirs + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)$(DISTDIR_DDK) $(DISTFILES_DDK) + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)$(DISTDIR_DDK) $(DISTFILES_DDK2) + @$(ECHO) "" + +$(COMMONPREF)clobber_subdirs: + +!IFDEF DIRS +# +# DIRS defined. We have to do subdirectories +# +CLOBBER_SUBDIRS=$(DIRS:.dir=.clobber) +CLEAN_SUBDIRS=$(DIRS:.dir=.clean) +RMTARGETS_SUBDIRS=$(DIRS:.dir=.rmtargets) +DISTDDK_SUBDIRS=$(DIRS:.dir=.distddk) + +$(COMMONPREF)clobber_subdirs: $(CLOBBER_SUBDIRS) + +$(COMMONPREF)clean_subdirs: $(CLEAN_SUBDIRS) + +$(COMMONPREF)rmtargets_subdirs: $(RMTARGETS_SUBDIRS) + +$(COMMONPREF)distddk_subdirs: $(DISTDDK_SUBDIRS) + +$(CLOBBER_SUBDIRS): + @cd $* + @echo === clobbering $* === + @$(MAKE) -nologo -f Makefile.win32 clobber + @cd .. + +$(CLEAN_SUBDIRS): + @cd $* + @echo === cleaning $* === + @$(MAKE) -nologo -f Makefile.win32 clean + @cd .. + +$(RMTARGETS_SUBDIRS): + @cd $* + @echo === removing targets in $* === + @$(MAKE) -nologo -f Makefile.win32 rmtargets + @cd .. + +$(DISTDDK_SUBDIRS): + @cd $* + @echo === making DDK distribution in $* === + @$(MAKE) -nologo -f Makefile.win32 distddk + @cd .. +!ELSE + +$(COMMONPREF)clobber_subdirs $(COMMONPREF)clean_subdirs $(COMMONPREF)rmtargets_subdirs $(COMMONPREF)distddk_subdirs: + +!ENDIF diff --git a/upstream-man-pages/man3/usr/include/make/linuxdefs b/upstream-man-pages/man3/usr/include/make/linuxdefs new file mode 100644 index 0000000..a0670dc --- /dev/null +++ b/upstream-man-pages/man3/usr/include/make/linuxdefs @@ -0,0 +1,31 @@ + +/* + * ident "$Header$" + * + * Copyright (c) 1991-2000 Silicon Graphics, Inc. + * This document is licensed under the SGI Free Software B license. + * For details, see + * + * http://oss.sgi.com/projects/FreeB + * + */ + +/* + * defines to make gcc's -ansi more-or-less equivalent to SGI's -xansi + */ + +#if defined(__i386__) +#define i386 1 +#endif + +#if defined(__linux__) +#define linux 1 +#endif + +#if defined(__unix__) +#define unix 1 +#endif + +#if !defined(_BSD_SOURCE) +#define _BSD_SOURCE 1 +#endif diff --git a/upstream-man-pages/man3/xhtml/Makefile b/upstream-man-pages/man3/xhtml/Makefile new file mode 100644 index 0000000..2e860da --- /dev/null +++ b/upstream-man-pages/man3/xhtml/Makefile @@ -0,0 +1,232 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc --nonet +SED = sed + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and specifically the +# stylesheet to convert Docbook+MathML => XHTML+MathML +DB2XHTML = opengl-man.xsl + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +%.xml: ../%.xml opengl-man.xsl + $(XSLT) --xinclude -o $@.tmp $(DB2XHTML) $< + $(SED) 's/\n# - OpenGL 3.3 Reference Pages#g' > $@ + $(RM) $@.tmp + +ALLXML = \ + glActiveTexture.xml \ + glAttachShader.xml \ + glBeginConditionalRender.xml \ + glBeginQuery.xml \ + glBeginTransformFeedback.xml \ + glBindAttribLocation.xml \ + glBindBuffer.xml \ + glBindBufferBase.xml \ + glBindBufferRange.xml \ + glBindFragDataLocation.xml \ + glBindFragDataLocationIndexed.xml \ + glBindFramebuffer.xml \ + glBindRenderbuffer.xml \ + glBindSampler.xml \ + glBindTexture.xml \ + glBindVertexArray.xml \ + glBlendColor.xml \ + glBlendEquation.xml \ + glBlendEquationSeparate.xml \ + glBlendFunc.xml \ + glBlendFuncSeparate.xml \ + glBlitFramebuffer.xml \ + glBufferData.xml \ + glBufferSubData.xml \ + glCheckFramebufferStatus.xml \ + glClampColor.xml \ + glClear.xml \ + glClearColor.xml \ + glClearBuffer.xml \ + glClearDepth.xml \ + glClearStencil.xml \ + glClientWaitSync.xml \ + glColorMask.xml \ + glCompileShader.xml \ + glCompressedTexImage1D.xml \ + glCompressedTexImage2D.xml \ + glCompressedTexImage3D.xml \ + glCompressedTexSubImage1D.xml \ + glCompressedTexSubImage2D.xml \ + glCompressedTexSubImage3D.xml \ + glCopyBufferSubData.xml \ + glCopyTexImage1D.xml \ + glCopyTexImage2D.xml \ + glCopyTexSubImage1D.xml \ + glCopyTexSubImage2D.xml \ + glCopyTexSubImage3D.xml \ + glCreateProgram.xml \ + glCreateShader.xml \ + glCullFace.xml \ + glDeleteBuffers.xml \ + glDeleteFramebuffers.xml \ + glDeleteProgram.xml \ + glDeleteQueries.xml \ + glDeleteRenderbuffers.xml \ + glDeleteSamplers.xml \ + glDeleteShader.xml \ + glDeleteSync.xml \ + glDeleteTextures.xml \ + glDeleteVertexArrays.xml \ + glDepthFunc.xml \ + glDepthMask.xml \ + glDepthRange.xml \ + glDetachShader.xml \ + glDisableVertexAttribArray.xml \ + glDrawArrays.xml \ + glDrawArraysInstanced.xml \ + glDrawBuffer.xml \ + glDrawBuffers.xml \ + glDrawElements.xml \ + glDrawElementsBaseVertex.xml \ + glDrawElementsInstanced.xml \ + glDrawElementsInstancedBaseVertex.xml \ + glDrawRangeElements.xml \ + glDrawRangeElementsBaseVertex.xml \ + glEnable.xml \ + glEnablei.xml \ + glEnableVertexAttribArray.xml \ + glEndQuery.xml \ + glFenceSync.xml \ + glFinish.xml \ + glFlush.xml \ + glFlushMappedBufferRange.xml \ + glFramebufferRenderbuffer.xml \ + glFramebufferTexture.xml \ + glFramebufferTexture1D.xml \ + glFramebufferTexture2D.xml \ + glFramebufferTexture3D.xml \ + glFramebufferTextureLayer.xml \ + glFrontFace.xml \ + glGenBuffers.xml \ + glGenerateMipmap.xml \ + glGenFramebuffers.xml \ + glGenQueries.xml \ + glGenRenderbuffers.xml \ + glGenSamplers.xml \ + glGenTextures.xml \ + glGenVertexArrays.xml \ + glGet.xml \ + glGetActiveAttrib.xml \ + glGetActiveUniform.xml \ + glGetActiveUniformBlock.xml \ + glGetActiveUniformBlockName.xml \ + glGetActiveUniformName.xml \ + glGetActiveUniformsiv.xml \ + glGetAttachedShaders.xml \ + glGetAttribLocation.xml \ + glGetBufferParameter.xml \ + glGetBufferPointerv.xml \ + glGetBufferSubData.xml \ + glGetCompressedTexImage.xml \ + glGetError.xml \ + glGetFragDataIndex.xml \ + glGetFragDataLocation.xml \ + glGetFramebufferAttachmentParameter.xml \ + glGetMultisample.xml \ + glGetProgram.xml \ + glGetProgramInfoLog.xml \ + glGetQueryObject.xml \ + glGetQueryiv.xml \ + glGetRenderbufferParameter.xml \ + glGetSamplerParameter.xml \ + glGetShader.xml \ + glGetShaderInfoLog.xml \ + glGetShaderSource.xml \ + glGetString.xml \ + glGetSync.xml \ + glGetTexImage.xml \ + glGetTexLevelParameter.xml \ + glGetTexParameter.xml \ + glGetTransformFeedbackVarying.xml \ + glGetUniform.xml \ + glGetUniformBlockIndex.xml \ + glGetUniformIndices.xml \ + glGetUniformLocation.xml \ + glGetVertexAttrib.xml \ + glGetVertexAttribPointerv.xml \ + glHint.xml \ + glIsBuffer.xml \ + glIsEnabled.xml \ + glIsFramebuffer.xml \ + glIsProgram.xml \ + glIsRenderbuffer.xml \ + glIsQuery.xml \ + glIsSampler.xml \ + glIsShader.xml \ + glIsSync.xml \ + glIsTexture.xml \ + glIsVertexArray.xml \ + glLineWidth.xml \ + glLinkProgram.xml \ + glLogicOp.xml \ + glMapBuffer.xml \ + glMapBufferRange.xml \ + glMultiDrawArrays.xml \ + glMultiDrawElements.xml \ + glMultiDrawElementsBaseVertex.xml \ + glPixelStore.xml \ + glPointParameter.xml \ + glPointSize.xml \ + glPolygonMode.xml \ + glPolygonOffset.xml \ + glPrimitiveRestartIndex.xml \ + glProvokingVertex.xml \ + glQueryCounter.xml \ + glReadBuffer.xml \ + glReadPixels.xml \ + glRenderbufferStorage.xml \ + glRenderbufferStorageMultisample.xml \ + glSampleCoverage.xml \ + glSampleMaski.xml \ + glSamplerParameter.xml \ + glScissor.xml \ + glShaderSource.xml \ + glStencilFunc.xml \ + glStencilFuncSeparate.xml \ + glStencilMask.xml \ + glStencilMaskSeparate.xml \ + glStencilOp.xml \ + glStencilOpSeparate.xml \ + glTexBuffer.xml \ + glTexImage1D.xml \ + glTexImage2D.xml \ + glTexImage2DMultisample.xml \ + glTexImage3D.xml \ + glTexImage3DMultisample.xml \ + glTexParameter.xml \ + glTexSubImage1D.xml \ + glTexSubImage2D.xml \ + glTexSubImage3D.xml \ + glTransformFeedbackVaryings.xml \ + glUniform.xml \ + glUniformBlockBinding.xml \ + glUnmapBuffer.xml \ + glUseProgram.xml \ + glValidateProgram.xml \ + glVertexAttrib.xml \ + glVertexAttribDivisor.xml \ + glVertexAttribPointer.xml \ + glViewport.xml \ + glWaitSync.xml + +XML = $(ALLXML) + +default: $(XML) + +clean: + $(RM) $(TEX_FILES) *.log *.aux *.toc *.dvi *.out + +clobber: clean + $(RM) $(XML) $(PDF_FILES) diff --git a/upstream-man-pages/man3/xhtml/ctop.xsl b/upstream-man-pages/man3/xhtml/ctop.xsl new file mode 100644 index 0000000..6f4b7c1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/ctop.xsl @@ -0,0 +1,1319 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + e + + i + + + + + + + + + E + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (-1) + + + + + + + + + + + + + + + + + λ + + . + + + + + + + + + + + + + + + + + + + + +id + + + + +domain + + + + +codomain + + + + +image + + + + + + + + + + +{ + + + + +   if   + + + + + + + + + + + + + +/ + + + + + + + + + + + + + +! + + + + + + + + + / + + + + + + + + + + max + + + + + + + max + + + + + + + + + + + + + + + + + + + + + + + + + + + + ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + + mod + + + + + + + + + + + ( + + + + + × + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + +gcd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + xor + + + + + + + +¬ + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + . + + + + + + + + + + +| + +| + + + + + + + + + +¯ + + + + + + arg + + + + + + + + + + + + + + + + lcm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + = + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + + < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | + + + + + + + + + + + + + + + d + + + + + + + + + + + + + + + + d + + d + + + + d + d + + + + + + + + + + D + + +, + + + + + + + + + + + + + + + + + ++ + + ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + + + + + +div + + + + +grad + + + + +curl + + + + + +2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +| + +| + + + + + + + + + + × + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + limit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +e + + + + + + + + + + + + +log + + + +log + + + + + + + + + + + + + + + + + + , + + + + + + + + +σ + + + + + + +σ +( + +) + +2 + + + + + + +median + + + + + +mode + + + + + + + + + + + + + + + + + + + + +( + + + + + +) + + + + + + +( + + + +) + + + + + + + + + + + + + + + +det + + + + + + + + +| + + + +| + + + + + + + + + +T + + + + + + + + + + + + + , + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + +Z + + + + +R + + + + +Q + + + + +N + + + + +C + + + + +P + + + + + e + + + + + i + + + + + NaN + + + + + true + + + + + false + + + + + + + + + + + π + + + + + γ + + + + + + + + + + + + + + + ( + + + + + + + + + ) + + + + + + + + + ( + + + + + + + + ) + + + + + + + + + + + + | + + + + + + , + + + + + + + + + diff --git a/upstream-man-pages/man3/xhtml/glActiveTexture.xml b/upstream-man-pages/man3/xhtml/glActiveTexture.xml new file mode 100644 index 0000000..a82afa1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glActiveTexture.xml @@ -0,0 +1,52 @@ + + + +glActiveTexture

Name

glActiveTexture — select active texture unit

C Specification

void glActiveTexture(GLenum texture);

Parameters

texture

+ Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + 48. texture must be one of + GL_TEXTUREi, + where + i ranges from 0 (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + The initial value is GL_TEXTURE0. +

Description

+ glActiveTexture selects which texture unit subsequent texture state calls will + affect. The number of texture units an implementation supports is + implementation dependent, but must be at least 48. +

Errors

+ GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where i ranges from 0 to (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). +

Associated Gets

+ glGet with argument GL_ACTIVE_TEXTURE, or GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glAttachShader.xml b/upstream-man-pages/man3/xhtml/glAttachShader.xml new file mode 100644 index 0000000..222ad12 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glAttachShader.xml @@ -0,0 +1,56 @@ + + + +glAttachShader

Name

glAttachShader — Attaches a shader object to a program object

C Specification

void glAttachShader(GLuint program,
 GLuint shader);
 

Parameters

program

Specifies the program object to which a shader + object will be attached.

shader

Specifies the shader object that is to be attached.

Description

In order to create a complete shader program, there must be a way to + specify the list of things that will be linked together. Program + objects provide this mechanism. Shaders that are to be linked + together in a program object must first be attached to that + program object. glAttachShader attaches the + shader object specified by shader to the + program object specified by program. This + indicates that shader will be included in + link operations that will be performed on + program.

All operations that can be performed on a shader object + are valid whether or not the shader object is attached to a + program object. It is permissible to attach a shader object to a + program object before source code has been loaded into the + shader object or before the shader object has been compiled. It + is permissible to attach multiple shader objects of the same + type because each may contain a portion of the complete shader. + It is also permissible to attach a shader object to more than + one program object. If a shader object is deleted while it is + attached to a program object, it will be flagged for deletion, + and deletion will not occur until + glDetachShader + is called to detach it from all program objects to which it is + attached.

Errors

GL_INVALID_VALUE is generated if either + program or shader + is not a value generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + shader is already attached to + program.

Associated Gets

+ glGetAttachedShaders + with the handle of a valid program object +

+ glGetShaderInfoLog +

+ glGetShaderSource +

+ glIsProgram +

+ glIsShader +

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBeginConditionalRender.xml b/upstream-man-pages/man3/xhtml/glBeginConditionalRender.xml new file mode 100644 index 0000000..17eb61d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBeginConditionalRender.xml @@ -0,0 +1,54 @@ + + + +glBeginConditionalRender

Name

glBeginConditionalRender — start conditional rendering

C Specification

void glBeginConditionalRender(GLuint id,
 GLenum mode);
 

Parameters

id

+ Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded. +

mode

+ Specifies how glBeginConditionalRender interprets the results of the occlusion query. +

C Specification

void glEndConditionalRender(void);
 

Description

+ Conditional rendering is started using glBeginConditionalRender and ended using glEndConditionalRender. + During conditional rendering, all vertex array commands, as well as glClear and + glClearBuffer have no effect if the (GL_SAMPLES_PASSED) result + of the query object id is zero, or if the (GL_ANY_SAMPLES_PASSED) result is GL_FALSE. + The results of commands setting the current vertex state, such as glVertexAttrib are + undefined. If the (GL_SAMPLES_PASSED) result is non-zero or if the (GL_ANY_SAMPLES_PASSED) result is + GL_TRUE, such commands are not discarded. The id parameter to glBeginConditionalRender + must be the name of a query object previously returned from a call to glGenQueries. + mode specifies how the results of the query object are to be interpreted. If mode is + GL_QUERY_WAIT, the GL waits for the results of the query to be available and then uses the results to determine if subsequent + rendering commands are discarded. If mode is GL_QUERY_NO_WAIT, the GL may choose to unconditionally + execute the subsequent rendering commands without waiting for the query to complete. +

+ If mode is GL_QUERY_BY_REGION_WAIT, the GL will also wait for occlusion query results and discard + rendering commands if the result of the occlusion query is zero. If the query result is non-zero, subsequent rendering commands are executed, + but the GL may discard the results of the commands for any region of the framebuffer that did not contribute to the sample count in the specified + occlusion query. Any such discarding is done in an implementation-dependent manner, but the rendering command results may not be discarded for + any samples that contributed to the occlusion query sample count. If mode is GL_QUERY_BY_REGION_NO_WAIT, + the GL operates as in GL_QUERY_BY_REGION_WAIT, but may choose to unconditionally execute the subsequent rendering commands + without waiting for the query to complete. +

Notes

+ glBeginConditionalRender and glEndConditionalRender are available only if the GL version is 3.0 or greater. +

+ The GL_ANY_SAMPLES_PASSED query result is available only if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_VALUE is generated if id is not the name of an existing query object. +

+ GL_INVALID_ENUM is generated if mode is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if glBeginConditionalRender is called while conditional rendering is active, + or if glEndConditionalRender is called while conditional rendering is inactive. +

+ GL_INVALID_OPERATION is generated if id is the name of a query object with a target other than + GL_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED. +

+ GL_INVALID_OPERATION is generated if id is the name of a query currently in progress. +

Copyright

+ Copyright © 2009 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBeginQuery.xml b/upstream-man-pages/man3/xhtml/glBeginQuery.xml new file mode 100644 index 0000000..1ad0287 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBeginQuery.xml @@ -0,0 +1,115 @@ + + + +glBeginQuery - OpenGL 3.3 Reference Pages

Name

glBeginQuery — delimit the boundaries of a query object

C Specification

void glBeginQuery(GLenum target, GLuint id);

Parameters

target

+ Specifies the target type of query object established between + glBeginQuery and the subsequent glEndQuery. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. +

id

+ Specifies the name of a query object. +

C Specification

void glEndQuery(GLenum target);

Parameters

target

+ Specifies the target type of query object to be concluded. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. +

Description

+ glBeginQuery and glEndQuery delimit the + boundaries of a query object. query must be a name previously returned from a call to + glGenQueries. If a query object with name id + does not yet exist it is created with the type determined by target. target must + be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query + object depends on its type and is as follows. +

+ If target is GL_SAMPLES_PASSED, id must be an unused name, + or the name of an existing occlusion query object. + When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS + is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS + is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their + discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment + is covered. When glEndQuery + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_ANY_SAMPLES_PASSED, id must be an unused name, + or the name of an existing boolean occlusion query object. + When glBeginQuery is executed, the query object's samples-passed flag is reset to GL_FALSE. + Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test. When + glEndQuery is executed, the samples-passed flag is assigned to the query object's result value. This value can + be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_PRIMITIVES_GENERATED, id must be an unused + name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. + When glBeginQuery is executed, the query object's primitives-generated counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if + no geometry shader is present. When glEndQuery is executed, the primitives-generated counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be + an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN + query binding. When glBeginQuery is executed, the query object's primitives-written counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback + mode is not activated between the call to glBeginQuery and glEndQuery, the counter will not be + incremented. When glEndQuery is executed, the primitives-written counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_TIME_ELAPSED, id must be + an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED + query binding. When glBeginQuery is executed, the query object's time counter is reset to 0. When glEndQuery + is executed, the elapsed server time that has passed since the call to glBeginQuery is written into the query object's + time counter. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. +

Notes

+ If the query target's count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with target set to the + appropriate query target and pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. +

+ An implementation may support 0 bits in its counter, in which case query results are always undefined + and essentially useless. +

+ When GL_SAMPLE_BUFFERS is 0, the samples-passed counter of an occlusion query will increment once for each + fragment that passes the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment + the samples-passed counter individually for each sample of a fragment that passes the depth test, or it may choose to increment + the counter for all samples of a fragment if any one of them passes the depth test. +

+ The query targets GL_ANY_SAMPLES_PASSED, and GL_TIME_ELAPSED are availale only if + the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if glBeginQuery is executed while + a query object of the same target is already active. +

+ GL_INVALID_OPERATION is generated if glEndQuery + is executed when a query object of the same target is not active. +

+ GL_INVALID_OPERATION is generated if id is 0. +

+ GL_INVALID_OPERATION is generated if id is the name of an already active query object. +

+ GL_INVALID_OPERATION is generated if id refers to an existing query object whose type + does not does not match target. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBeginTransformFeedback.xml b/upstream-man-pages/man3/xhtml/glBeginTransformFeedback.xml new file mode 100644 index 0000000..a0f6754 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBeginTransformFeedback.xml @@ -0,0 +1,83 @@ + + + +glBeginTransformFeedback

Name

glBeginTransformFeedback — start transform feedback operation

C Specification

void glBeginTransformFeedback(GLenum primitiveMode);
 

Parameters

primitiveMode

+ Specify the output type of the primitives that will be recorded into the + buffer objects that are bound for transform feedback. +

C Specification

void glEndTransformFeedback(void);
 

Description

+ Transform feedback mode captures the values of varying variables written by the vertex shader (or, if active, the geometry shader). + Transform feedback is said to be active after a call to glBeginTransformFeedback + until a subsequent call to glEndTransformFeedback. + Transform feedback commands must be paired. +

+ If no geometry shader is present, while transform feedback is active the mode parameter to + glDrawArrays must match those specified + in the following table: +

+ Transform Feedback primitiveMode + + Allowed Render Primitive modes +
+ GL_POINTS + + GL_POINTS +
+ GL_LINES + + GL_LINES, GL_LINE_LOOP, GL_LINE_STRIP, + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY +
+ GL_TRIANGLES + + GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY +

+ If a geometry shader is present, the output primitive type from the geometry shader must match those + provided in the following table: +

+ Transform Feedback primitiveMode + + Allowed Geometry Shader Output Primitive Type +
+ GL_POINTS + + points +
+ GL_LINES + + line_strip +
+ GL_TRIANGLES + + triangle_strip +

+

Notes

+ Geometry shaders, and the GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY and GL_LINE_STRIP_ADJACENCY primtive modes are available + only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glBeginTransformFeedback is executed + while transform feedback is active. +

+ GL_INVALID_OPERATION is generated if glEndTransformFeedback is executed + while transform feedback is not active. +

+ GL_INVALID_OPERATION is generated by glDrawArrays + if no geometry shader is present, transform feedback is active and mode is not one of the allowed modes. +

+ GL_INVALID_OPERATION is generated by glDrawArrays + if a geometry shader is present, transform feedback is active and the output primitive type of the geometry shader does not + match the transform feedback primitiveMode. +

+ GL_INVALID_OPERATION is generated by glEndTransformFeedback if any binding + point used in transform feedback mode does not have a buffer object bound. +

+ GL_INVALID_OPERATION is generated by glEndTransformFeedback if no binding + points would be used, either because no program object is active of because the active program object has specified + no varying variables to record. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindAttribLocation.xml b/upstream-man-pages/man3/xhtml/glBindAttribLocation.xml new file mode 100644 index 0000000..475895a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindAttribLocation.xml @@ -0,0 +1,98 @@ + + + +glBindAttribLocation

Name

glBindAttribLocation — Associates a generic vertex attribute index with a named attribute variable

C Specification

void glBindAttribLocation(GLuint program,
 GLuint index,
 const GLchar *name);
 

Parameters

program

Specifies the handle of the program object in + which the association is to be made.

index

Specifies the index of the generic vertex + attribute to be bound.

name

Specifies a null terminated string containing + the name of the vertex shader attribute variable to + which index is to be + bound.

Description

glBindAttribLocation is used to + associate a user-defined attribute variable in the program + object specified by program with a + generic vertex attribute index. The name of the user-defined + attribute variable is passed as a null terminated string in + name. The generic vertex attribute index + to be bound to this variable is specified by + index. When + program is made part of current state, + values provided via the generic vertex attribute + index will modify the value of the + user-defined attribute variable specified by + name.

If name refers to a matrix + attribute variable, index refers to the + first column of the matrix. Other matrix columns are then + automatically bound to locations index+1 + for a matrix of type mat2; index+1 and + index+2 for a matrix of type mat3; and + index+1, index+2, + and index+3 for a matrix of type + mat4.

This command makes it possible for vertex shaders to use + descriptive names for attribute variables rather than generic + variables that are numbered from 0 to + GL_MAX_VERTEX_ATTRIBS -1. The values sent + to each generic attribute index are part of current state. + If a different program object is made current by calling + glUseProgram, + the generic vertex attributes are tracked in such a way that the + same values will be observed by attributes in the new program + object that are also bound to + index.

Attribute variable + name-to-generic attribute index bindings for a program object + can be explicitly assigned at any time by calling + glBindAttribLocation. Attribute bindings do + not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for generic attributes remain fixed (and their + values can be queried) until the next link command + occurs.

Any attribute binding that occurs after the program object has been linked will not take effect + until the next time the program object is linked.

Notes

glBindAttribLocation can be called + before any vertex shader objects are bound to the specified + program object. It is also permissible to bind a generic + attribute index to an attribute variable name that is never used + in a vertex shader.

If name was bound previously, that + information is lost. Thus you cannot bind one user-defined + attribute variable to multiple indices, but you can bind + multiple user-defined attribute variables to the same + index.

Applications are allowed to bind more than one + user-defined attribute variable to the same generic vertex + attribute index. This is called aliasing, + and it is allowed only if just one of the aliased attributes is + active in the executable program, or if no path through the + shader consumes more than one attribute of a set of attributes + aliased to the same location. The compiler and linker are + allowed to assume that no aliasing is done and are free to + employ optimizations that work only in the absence of aliasing. + OpenGL implementations are not required to do error checking to + detect aliasing.

Active attributes that are not explicitly bound will be + bound by the linker when + glLinkProgram + is called. The locations assigned can be queried by calling + glGetAttribLocation.

OpenGL copies the name string when + glBindAttribLocation is called, so an + application may free its copy of the name + string immediately after the function returns.

Generic attribute locations may be specified in the shader source + text using a location layout qualifier. In this case, + the location of the attribute specified in the shader's source takes precedence + and may be queried by calling glGetAttribLocation. +

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_OPERATION is generated if + name starts with the reserved prefix + "gl_".

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetActiveAttrib + with argument program

glGetAttribLocation + with arguments program and + name

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindBuffer.xml b/upstream-man-pages/man3/xhtml/glBindBuffer.xml new file mode 100644 index 0000000..59f895f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindBuffer.xml @@ -0,0 +1,143 @@ + + + +glBindBuffer

Name

glBindBuffer — bind a named buffer object

C Specification

void glBindBuffer(GLenum target,
 GLuint buffer);
 

Parameters

target

+ Specifies the target to which the buffer object is bound. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

buffer

+ Specifies the name of a buffer object. +

Description

+ glBindBuffer binds a buffer object to the specified buffer binding point. Calling glBindBuffer with + target set to one of the accepted symbolic constants and buffer set to the name + of a buffer object binds that buffer object name to the target. If no buffer object with name buffer + exists, one is created with that name. When a buffer object is bound to a target, the previous binding for that + target is automatically broken. +

+ Buffer object names are unsigned integers. The value zero is reserved, but + there is no default buffer object for each buffer object target. Instead, buffer set to zero + effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target (if supported for that target). + Buffer object names and the corresponding buffer object contents are local to + the shared object space of the current + GL rendering context; + two rendering contexts share buffer object names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. +

+ glGenBuffers must be used to generate a set of unused buffer object names. +

+ The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with + GL_READ_WRITE access and GL_STATIC_DRAW usage. +

+ While a non-zero buffer object name is bound, GL operations on the target to which it is + bound affect the bound buffer object, and queries of the target to which it is bound return state + from the bound buffer object. While buffer object name zero is bound, as in the initial state, + attempts to modify or query state on the target to which it is bound generates an + GL_INVALID_OPERATION error. +

+ When a non-zero buffer object is bound to the GL_ARRAY_BUFFER target, + the vertex array pointer parameter is interpreted as an offset within the + buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, + the indices parameter of glDrawElements, + glDrawElementsInstanced, + glDrawElementsBaseVertex, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glMultiDrawElements, or + glMultiDrawElementsBaseVertex is interpreted as an + offset within the buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, + the following commands are affected: glGetCompressedTexImage, + glGetTexImage, and + glReadPixels. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, + the following commands are affected: + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. +

+ The buffer targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER + are provided to allow glCopyBufferSubData + to be used without disturbing the state of other bindings. However, glCopyBufferSubData + may be used with any pair of buffer binding points. +

+ The GL_TRANSFORM_FEEDBACK_BUFFER buffer binding point may be passed to glBindBuffer, + but will not directly affect transform feedback state. Instead, the indexed GL_TRANSFORM_FEEDBACK_BUFFER + bindings must be used through a call to glBindBufferBase + or glBindBufferRange. This will affect the generic + GL_TRANSFORM_FEEDABCK_BUFFER binding. +

+ Likewise, the GL_UNIFORM_BUFFER buffer binding point may be used, but does not directly affect + uniform buffer state. glBindBufferBase + or glBindBufferRange must be used to bind a buffer to + an indexed uniform buffer binding point. +

+ A buffer object binding created with glBindBuffer remains active until a different + buffer object name is bound to the same target, or until the bound buffer object is + deleted with glDeleteBuffers. +

+ Once created, a named buffer object may be re-bound to any target as often as needed. However, + the GL implementation may make choices about how to optimize the storage of a buffer object based + on its initial binding target. +

Notes

+ The GL_COPY_READ_BUFFER, GL_UNIFORM_BUFFER and + GL_TEXTURE_BUFFER targets are available only if the GL version is 3.1 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if buffer is not a name previously returned + from a call to glGenBuffers. +

Associated Gets

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_COPY_READ_BUFFER_BINDING +

+ glGet with argument GL_COPY_WRITE_BUFFER_BINDING +

+ glGet with argument GL_ELEMENT_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGet with argument GL_TRANSFORM_FEEDBACK_BUFFER_BINDING +

+ glGet with argument GL_UNIFORM_BUFFER_BINDING +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindBufferBase.xml b/upstream-man-pages/man3/xhtml/glBindBufferBase.xml new file mode 100644 index 0000000..bb47cbd --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindBufferBase.xml @@ -0,0 +1,45 @@ + + + +glBindBufferBase - OpenGL 3.3 Reference Pages

Name

glBindBufferBase — bind a buffer object to an indexed buffer target

C Specification

void glBindBufferBase(GLenum  target,
 GLuint  index,
 GLuint  buffer);

Parameters

target

+ Specify the target of the bind operation. target must be + either GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. +

index

+ Specify the index of the binding point within the array specified by target. +

buffer

+ The name of a buffer object to bind to the specified binding point. +

Description

+ glBindBufferBase binds the buffer object buffer + to the binding point at index index of the array of targets specified + by target. Each target represents an indexed + array of buffer binding points, as well as a single general binding point that can be used by + other buffer manipulation functions such as glBindBuffer + or glMapBuffer. In addition to binding + buffer to the indexed buffer binding target, glBindBufferBase + also binds buffer to the generic buffer binding point specified by target. +

Notes

+ Calling glBindBufferBase is equivalent to calling + glBindBufferRange with offset + zero and size equal to the size of the buffer. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. +

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. +

+ GL_INVALID_VALUE is generated if buffer does + not have an associated data store, or if the size of that store is zero. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindBufferRange.xml b/upstream-man-pages/man3/xhtml/glBindBufferRange.xml new file mode 100644 index 0000000..345c593 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindBufferRange.xml @@ -0,0 +1,54 @@ + + + +glBindBufferRange - OpenGL 3.3 Reference Pages

Name

glBindBufferRange — bind a range within a buffer object to an indexed buffer target

C Specification

void glBindBufferRange(GLenum target,
 GLuint index,
 GLuint buffer,
 GLintptr offset,
 GLsizeiptr size);

Parameters

target

+ Specify the target of the bind operation. target must be + either GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. +

index

+ Specify the index of the binding point within the array specified by target. +

buffer

+ The name of a buffer object to bind to the specified binding point. +

offset

+ The starting offset in basic machine units into the buffer object buffer. +

size

+ The amount of data in machine units that can be read from the buffet object while used as an indexed target. +

Description

+ glBindBufferRange binds a range the buffer object buffer + represented by offset and size to the + binding point at index index of the array of targets specified by target. + Each target represents an indexed array of buffer binding points, as well + as a single general binding point that can be used by other buffer manipulation functions such as + glBindBuffer or + glMapBuffer. In addition to binding + a range of buffer to the indexed buffer binding target, glBindBufferRange + also binds the range to the generic buffer binding point specified by target. +

+ offset specifies the offset in basic machine units into the buffer object + buffer and size specifies the amount of data that + can be read from the buffer object while used as an indexed target. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. +

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. +

+ GL_INVALID_VALUE is generated if size is less than + or equal to zero, or if offset + size is greater + than the value of GL_BUFFER_SIZE. +

+ Additional errors may be generated if offset violates any + target-specific alignmemt restrictions. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindFragDataLocation.xml b/upstream-man-pages/man3/xhtml/glBindFragDataLocation.xml new file mode 100644 index 0000000..c23640c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindFragDataLocation.xml @@ -0,0 +1,51 @@ + + + +glBindFragDataLocation

Name

glBindFragDataLocation — bind a user-defined varying out variable to a fragment shader color number

C Specification

void glBindFragDataLocation(GLuint  program,
 GLuint  colorNumber,
 const char *  name);

Parameters

program

+ The name of the program containing varying out variable whose binding to modify +

colorNumber

+ The color number to bind the user-defined varying out variable to +

name

+ The name of the user-defined varying out variable whose binding to modify +

Description

+ glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable + name to fragment shader color number colorNumber for program + program. If name was bound previously, its assigned binding is replaced + with colorNumber. name must be a null-terminated string. colorNumber + must be less than GL_MAX_DRAW_BUFFERS. +

+ The bindings specified by glBindFragDataLocation have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. +

+ In addition to the errors generated by glBindFragDataLocation, the + program program will fail to link if: +

  • + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. +

  • + More than one varying out variable is bound to the same color number. +

+

Notes

+ Varying out varyings may have indexed locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. +

Errors

+ GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. +

+ GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. +

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Associated Gets

+ glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindFragDataLocationIndexed.xml b/upstream-man-pages/man3/xhtml/glBindFragDataLocationIndexed.xml new file mode 100644 index 0000000..ea6f1a3 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindFragDataLocationIndexed.xml @@ -0,0 +1,68 @@ + + + +glBindFragDataLocationIndexed

Name

glBindFragDataLocationIndexed — bind a user-defined varying out variable to a fragment shader color number and index

C Specification

void glBindFragDataLocationIndexed(GLuint  program,
 GLuint  colorNumber,
 GLuint  index,
 const char * name);

Parameters

program

+ The name of the program containing varying out variable whose binding to modify +

colorNumber

+ The color number to bind the user-defined varying out variable to +

index

+ The index of the color input to bind the user-defined varying out variable to +

name

+ The name of the user-defined varying out variable whose binding to modify +

Description

+ glBindFragDataLocationIndexed specifies that the varying out variable name in + program should be bound to fragment color colorNumber when the program is next + linked. index may be zero or one to specify that the color be used as either the first or second color + input to the blend equation, respectively. +

+ The bindings specified by glBindFragDataLocationIndexed have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. +

+ If name was bound previously, its assigned binding is replaced with colorNumber and + index. name must be a null-terminated string. index must be less than or equal to one, + and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index + is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. +

+ In addition to the errors generated by glBindFragDataLocationIndexed, the + program program will fail to link if: +

  • + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. +

  • + More than one varying out variable is bound to the same color number. +

+

Notes

+ Varying out varyings may have locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. +

Errors

+ GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. +

+ GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DUAL_SOURCE_DRAW_BUFERS + and index is greater than or equal to one. +

+ GL_INVALID_VALUE is generated if index is greater than one. +

+ GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. +

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Associated Gets

+ glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable +

+ glGetFragDataIndex with a valid program object + and the the name of a user-defined varying out variable +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindFramebuffer.xml b/upstream-man-pages/man3/xhtml/glBindFramebuffer.xml new file mode 100644 index 0000000..99ef47c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindFramebuffer.xml @@ -0,0 +1,40 @@ + + + +glBindFramebuffer

Name

glBindFramebuffer — bind a framebuffer to a framebuffer target

C Specification

void glBindFramebuffer(GLenum  target,
 GLuint  framebuffer);

Parameters

target

+ Specifies the framebuffer target of the binding operation. +

framebuffer

+ Specifies the name of the framebuffer object to bind. +

Description

+ glBindFramebuffer binds the framebuffer object with name framebuffer to the framebuffer target specified + by target. target must be either GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. If a framebuffer object is bound to + GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER, it becomes the target for + rendering or readback operations, respectively, until it is deleted or another framebuffer is bound to the corresponding bind point. + Calling glBindFramebuffer with target set to GL_FRAMEBUFFER binds + framebuffer to both the read and draw framebuffer targets. framebuffer is the name of a framebuffer + object previously returned from a call to glGenFramebuffers, or zero to break the existing + binding of a framebuffer object to target. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. +

+ GL_INVALID_OPERATION is generated if framebuffer is not zero or the name of a framebuffer + previously returned from a call to glGenFramebuffers. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindRenderbuffer.xml b/upstream-man-pages/man3/xhtml/glBindRenderbuffer.xml new file mode 100644 index 0000000..b33b693 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindRenderbuffer.xml @@ -0,0 +1,29 @@ + + + +glBindRenderbuffer

Name

glBindRenderbuffer — bind a renderbuffer to a renderbuffer target

C Specification

void glBindRenderbuffer(GLenum  target,
 GLuint  renderbuffer);

Parameters

target

+ Specifies the renderbuffer target of the binding operation. target must be GL_RENDERBUFFER. +

renderbuffer

+ Specifies the name of the renderbuffer object to bind. +

Description

+ glBindRenderbuffer binds the renderbuffer object with name renderbuffer to the renderbuffer target specified + by target. target must be GL_RENDERBUFFER. renderbuffer + is the name of a renderbuffer object previously returned from a call to glGenRenderbuffers, + or zero to break the existing binding of a renderbuffer object to target. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. +

+ GL_INVALID_OPERATION is generated if renderbuffer is not zero or the name of a renderbuffer + previously returned from a call to glGenRenderbuffers. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindSampler.xml b/upstream-man-pages/man3/xhtml/glBindSampler.xml new file mode 100644 index 0000000..30dbe91 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindSampler.xml @@ -0,0 +1,43 @@ + + + +glBindSampler

Name

glBindSampler — bind a named sampler to a texturing target

C Specification

void glBindSampler(GLuint  unit,
 GLuint  sampler);

Parameters

unit

+ Specifies the index of the texture unit to which the sampler is bound. +

sampler

+ Specifies the name of a sampler. +

Description

+ glBindSampler binds sampler to the texture unit at index unit. + sampler must be zero or the name of a sampler object previously returned from a call to + glGenSamplers. unit must be less than the value + of GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. +

+ When a sampler object is bound to a texture unit, its state supersedes that of + the texture object bound to that texture unit. If the sampler name zero is bound to + a texture unit, the currently bound texture's sampler state becomes active. A single + sampler object may be bound to multiple texture units simultaneously. +

Notes

+ glBindSampler is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if unit is greater than or equal to the value of + GL_MAX_COMBIED_TEXTURE_IMAGE_UNITS. +

+ GL_INVALID_OPERATION is generated if sampler is not zero or a name previously + returned from a call to glGenSamplers, or if such a name has + been deleted by a call to glDeleteSamplers. +

Associated Gets

+ glGet with argument GL_SAMPLER_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindTexture.xml b/upstream-man-pages/man3/xhtml/glBindTexture.xml new file mode 100644 index 0000000..ff2afaa --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindTexture.xml @@ -0,0 +1,109 @@ + + + +glBindTexture - OpenGL 3.3 Reference Pages

Name

glBindTexture — bind a named texture to a texturing target

C Specification

void glBindTexture(GLenum  target,
 GLuint  texture);

Parameters

target

+ Specifies the target to which the texture is bound. + Must be either + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, or + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY. +

texture

+ Specifies the name of a texture. +

Description

+ glBindTexture lets you create or use a named texture. Calling glBindTexture with + target set to + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, or + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY + and texture set to the name of the new texture binds the texture name to the target. + When a texture is bound to a target, the previous binding for that target is automatically broken. +

+ Texture names are unsigned integers. The value zero is reserved to + represent the default texture for each texture target. + Texture names and the corresponding texture contents are local to + the shared object space of the current GL rendering context; + two rendering contexts share texture names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. +

+ You must use glGenTextures to generate a set of new texture names. +

+ When a texture is first bound, it assumes the specified target: + A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a + texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a + texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, a + texture first bound to GL_TEXTURE_1D_ARRAY becomes one-dimensional array texture, a + texture first bound to GL_TEXTURE_2D_ARRAY becomes two-dimensional arary texture, a + texture first bound to GL_TEXTURE_RECTANGLE becomes rectangle texture, a, + texture first bound to GL_TEXTURE_CUBE_MAP becomes a cube-mapped texture, a + texture first bound to GL_TEXTURE_BUFFER becomes a buffer texture, a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE becomes a two-dimensional multisampled texture, and a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE_ARRAY becomes a two-dimensional multisampled array texture. + The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the + default GL_TEXTURE_1D at GL initialization, and similarly for the other texture types. +

+ While a texture is bound, GL operations on the target to which it is + bound affect the bound texture, and queries of the target to which it + is bound return state from the bound texture. + In effect, the texture targets become aliases for the textures currently + bound to them, and the texture name zero refers to the default textures + that were bound to them at initialization. +

+ A texture binding created with glBindTexture remains active until a different + texture is bound to the same target, or until the bound texture is + deleted with glDeleteTextures. +

+ Once created, a named texture may be re-bound to its same original target as often as needed. + It is usually much faster to use glBindTexture to bind an existing named + texture to one of the texture targets than it is to reload the texture image + using glTexImage1D, glTexImage2D, + glTexImage3D or another similar function. +

Notes

+ The GL_TEXTURE_2D_MULTISAMPLE and GL_TEXTURE_2D_MULTISAMPLE_ARRAY targets are available + only if the GL version is 3.2 or higher. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if target is not a name returned from + a previous call to glGenTextures. +

+ GL_INVALID_OPERATION is generated if texture was previously created with a target + that doesn't match that of target. +

Associated Gets

+ glGet with argument GL_TEXTURE_BINDING_1D, + GL_TEXTURE_BINDING_2D, GL_TEXTURE_BINDING_3D, GL_TEXTURE_BINDING_1D_ARRAY, + GL_TEXTURE_BINDING_2D_ARRAY, GL_TEXTURE_BINDING_RECTANGLE, GL_TEXTURE_BINDING_2D_MULTISAMPLE, + or GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glBindVertexArray.xml b/upstream-man-pages/man3/xhtml/glBindVertexArray.xml new file mode 100644 index 0000000..459728a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBindVertexArray.xml @@ -0,0 +1,26 @@ + + + +glBindVertexArray

Name

glBindVertexArray — bind a vertex array object

C Specification

void glBindVertexArray(GLuint array);

Parameters

array

+ Specifies the name of the vertex array to bind. +

Description

+ glBindVertexArray binds the vertex array object with name array. array + is the name of a vertex array object previously returned from a call to glGenVertexArrays, + or zero to break the existing vertex array object binding. +

+ If no vertex array object with name array exists, one is created when array is first bound. If the bind + is successful no change is made to the state of the vertex array object, and any previous vertex array object binding is broken. +

Errors

+ GL_INVALID_OPERATION is generated if array is not zero or the name of a vertex array object + previously returned from a call to glGenVertexArrays. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBlendColor.xml b/upstream-man-pages/man3/xhtml/glBlendColor.xml new file mode 100644 index 0000000..646b005 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBlendColor.xml @@ -0,0 +1,30 @@ + + + +glBlendColor

Name

glBlendColor — set the blend color

C Specification

void glBlendColor(GLclampf  red,
 GLclampf  green,
 GLclampf  blue,
 GLclampf  alpha);

Parameters

red, green, blue, alpha

+ specify the components of GL_BLEND_COLOR +

Description

+ The GL_BLEND_COLOR may be used to calculate the source and destination + blending factors. The color components are clamped to the range + + + + 0 + 1 + + + before being stored. See glBlendFunc for a complete description of the + blending operations. + Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). +

Associated Gets

+ glGet with an argument of GL_BLEND_COLOR +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glBlendEquation.xml b/upstream-man-pages/man3/xhtml/glBlendEquation.xml new file mode 100644 index 0000000..1c3a40a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBlendEquation.xml @@ -0,0 +1,660 @@ + + + +glBlendEquation

Name

glBlendEquation — specify the equation used for both the RGB blend equation and the Alpha blend equation

C Specification

void glBlendEquation(GLenum mode);

Parameters

mode

+ specifies how source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

Description

+ The blend equations determine how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function sets both the RGB blend equation and the alpha + blend equation to a single equation. +

+ These equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. +

+ In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + +

+ Mode + + RGB Components + + Alpha Component +
+ GL_FUNC_ADD + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_SUBTRACT + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + - + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + - + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + - + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + - + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_REVERSE_SUBTRACT + +
+ + + Rr + = + + R + d + + ⁢ + d + R + + - + R + s + + ⁢ + s + R + + + +
+
+ + + Gr + = + + G + d + + ⁢ + d + G + + - + G + s + + ⁢ + s + G + + + +
+
+ + + Br + = + + B + d + + ⁢ + d + B + + - + B + s + + ⁢ + s + B + + + +
+
+
+ + + Ar + = + + A + d + + ⁢ + d + A + + - + A + s + + ⁢ + s + A + + + +
+
+ GL_MIN + +
+ + + Rr + = + + min + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + min + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + min + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + min + ⁡ + + + A + s + + + + A + d + + + + + +
+
+ GL_MAX + +
+ + + Rr + = + + max + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + max + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + max + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + max + ⁡ + + + A + s + + + + A + d + + + + + +
+

+

+ The results of these equations are clamped to the range + + + + 0 + 1 + + . +

+ The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. +

+ Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. +

+

Notes

+ The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. +

Associated Gets

+ glGet with an argument of GL_BLEND_EQUATION_RGB +

+ glGet with an argument of GL_BLEND_EQUATION_ALPHA +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glBlendEquationSeparate.xml b/upstream-man-pages/man3/xhtml/glBlendEquationSeparate.xml new file mode 100644 index 0000000..23121ae --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBlendEquationSeparate.xml @@ -0,0 +1,665 @@ + + + +glBlendEquationSeparate

Name

glBlendEquationSeparate — set the RGB blend equation and the alpha blend equation separately

C Specification

void glBlendEquationSeparate(GLenum modeRGB,
 GLenum modeAlpha);
 

Parameters

modeRGB

+ specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

modeAlpha

+ specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

Description

+ The blend equations determines how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function specifies one blend equation for the RGB-color + components and one blend equation for the alpha component. +

+ The blend equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. +

+ In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + +

+ Mode + + RGB Components + + Alpha Component +
+ GL_FUNC_ADD + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_SUBTRACT + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + - + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + - + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + - + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + - + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_REVERSE_SUBTRACT + +
+ + + Rr + = + + R + d + + ⁢ + d + R + + - + R + s + + ⁢ + s + R + + + +
+
+ + + Gr + = + + G + d + + ⁢ + d + G + + - + G + s + + ⁢ + s + G + + + +
+
+ + + Br + = + + B + d + + ⁢ + d + B + + - + B + s + + ⁢ + s + B + + + +
+
+
+ + + Ar + = + + A + d + + ⁢ + d + A + + - + A + s + + ⁢ + s + A + + + +
+
+ GL_MIN + +
+ + + Rr + = + + min + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + min + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + min + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + min + ⁡ + + + A + s + + + + A + d + + + + + +
+
+ GL_MAX + +
+ + + Rr + = + + max + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + max + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + max + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + max + ⁡ + + + A + s + + + + A + d + + + + + +
+

+

+ The results of these equations are clamped to the range + + + + 0 + 1 + + . +

+ The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. +

+ Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. +

+

Notes

+ The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. +

Errors

+ GL_INVALID_ENUM is generated if either modeRGB or modeAlpha is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. +

Associated Gets

+ glGet with an argument of GL_BLEND_EQUATION_RGB +

+ glGet with an argument of GL_BLEND_EQUATION_ALPHA +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBlendFunc.xml b/upstream-man-pages/man3/xhtml/glBlendFunc.xml new file mode 100644 index 0000000..238c251 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBlendFunc.xml @@ -0,0 +1,1280 @@ + + + +glBlendFunc

Name

glBlendFunc — specify pixel arithmetic

C Specification

void glBlendFunc(GLenum  sfactor,
 GLenum  dfactor);

Parameters

sfactor

+ Specifies how the red, green, blue, + and alpha source blending factors are computed. + The initial value is GL_ONE. +

dfactor

+ Specifies how the red, green, blue, + and alpha destination blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. +

Description

+ Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. +

+ glBlendFunc defines the operation of blending when it is enabled. + sfactor specifies which method is used to scale the + source color components. + dfactor specifies which method is used to scale the + destination color components. + Both parameters must be one of the following symbolic constants: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, + GL_SRC_ALPHA_SATURATE, + GL_SRC1_COLOR, + GL_ONE_MINUS_SRC1_COLOR, + GL_SRC1_ALPHA, and + GL_ONE_MINUS_SRC1_ALPHA. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + In the table and in subsequent equations, first source, second source + and destination color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where +

+

+ + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + +

+

+ and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. +

+ Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + The scale factors described in the table, + denoted + + + + f + R + + f + G + + f + B + + f + A + + + , + represent either source or destination factors. + All scale factors have range + + + + 0 + 1 + + . +

+

+ Parameter + + + + + f + R + + f + G + + f + B + + f + A + + + +
+ GL_ZERO + + + + + 0 + 0 + 0 + 0 + + +
+ GL_ONE + + + + + 1 + 1 + 1 + 1 + + +
+ GL_SRC_COLOR + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + + +
+ GL_DST_COLOR + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + +
+ GL_ONE_MINUS_DST_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + +
+ GL_SRC_ALPHA + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + +
+ GL_DST_ALPHA + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + +
+ GL_ONE_MINUS_DST_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + +
+ GL_CONSTANT_COLOR + + + + + R + c + + G + c + + B + c + + A + c + + + +
+ GL_ONE_MINUS_CONSTANT_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + A + c + + + + +
+ GL_CONSTANT_ALPHA + + + + + A + c + + A + c + + A + c + + A + c + + + +
+ GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + A + c + + + + +
+ GL_SRC_ALPHA_SATURATE + + + + + i + i + i + 1 + + +
+ GL_SRC1_COLOR + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + +
+ GL_ONE_MINUS_SRC1_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + + +
+ GL_SRC1_ALPHA + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + +
+ GL_ONE_MINUS_SRC1_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + +

+ In the table, +

+

+ + + + i + = + + + min + ⁡ + + A + s + + + k + A + + - + A + d + + + + + k + A + + + + +

+

+ To determine the blended RGBA values of a pixel, + the system uses the following equations: +

+

+ + + + R + d + + = + + min + ⁡ + + k + R + + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + + + + + + + + G + d + + = + + min + ⁡ + + k + G + + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + + + + + + + + B + d + + = + + min + ⁡ + + k + B + + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + + + + + + + + A + d + + = + + min + ⁡ + + k + A + + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + + + + +

+

+ Despite the apparent precision of the above equations, + blending arithmetic is not exactly specified, + because blending operates with imprecise integer color values. + However, + a blend factor that should be equal to 1 + is guaranteed not to modify its multiplicand, + and a blend factor equal to 0 reduces its multiplicand to 0. + For example, + when sfactor is GL_SRC_ALPHA, + dfactor is GL_ONE_MINUS_SRC_ALPHA, + and + + + A + s + + + is equal to + + + k + A + + , + the equations reduce to simple replacement: +

+

+ + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + +

+

+

Examples

+

+ Transparency is best implemented using blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + with primitives sorted from farthest to nearest. + Note that this transparency calculation does not require + the presence of alpha bitplanes in the frame buffer. +

+ Blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + is also useful for rendering antialiased points and lines + in arbitrary order. +

+ Polygon antialiasing is optimized using blend function + (GL_SRC_ALPHA_SATURATE, GL_ONE) + with polygons sorted from nearest to farthest. + (See the glEnable, glDisable reference page and the + GL_POLYGON_SMOOTH argument for information on polygon antialiasing.) + Destination alpha bitplanes, + which must be present for this blend function to operate correctly, + store the accumulated coverage. +

Notes

+ Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. +

+ When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) +

+ When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. +

Errors

+ GL_INVALID_ENUM is generated if either sfactor + or dfactor is not an accepted value. +

Associated Gets

+ glGet with argument GL_BLEND_SRC +

+ glGet with argument GL_BLEND_DST +

+ glIsEnabled with argument GL_BLEND +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glBlendFuncSeparate.xml b/upstream-man-pages/man3/xhtml/glBlendFuncSeparate.xml new file mode 100644 index 0000000..f84cb18 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBlendFuncSeparate.xml @@ -0,0 +1,1296 @@ + + + +glBlendFuncSeparate

Name

glBlendFuncSeparate — specify pixel arithmetic for RGB and alpha components separately

C Specification

void glBlendFuncSeparate(GLenum  srcRGB,
 GLenum  dstRGB,
 GLenum  srcAlpha,
 GLenum  dstAlpha);

Parameters

srcRGB

+ Specifies how the red, green, and blue blending factors are computed. + The initial value is GL_ONE. +

dstRGB

+ Specifies how the red, green, and blue destination blending factors are + computed. + The initial value is GL_ZERO. +

srcAlpha

+ Specified how the alpha source blending factor is computed. + The initial value is GL_ONE. +

dstAlpha

+ Specified how the alpha destination blending factor is computed. + The initial value is GL_ZERO. +

Description

+ Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. +

+ glBlendFuncSeparate defines the operation of blending when it is enabled. + srcRGB specifies which method is used to scale the + source RGB-color components. + dstRGB specifies which method is used to scale the + destination RGB-color components. + Likewise, srcAlpha specifies which method is used to scale the source alpha + color component, and dstAlpha specifies which method is used to scale the + destination alpha component. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. +

+ In the table and in subsequent equations, first source, second source and destination + color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + , + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where +

+

+ + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + +

+

+ and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. +

+ Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + All scale factors have range + + + + 0 + 1 + + . +

+

+ Parameter + + RGB Factor + + Alpha Factor +
+ GL_ZERO + + + + + 0 + 0 + 0 + + + + + + 0 + +
+ GL_ONE + + + + + 1 + 1 + 1 + + + + + + 1 + +
+ GL_SRC_COLOR + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + A + s0 + + k + A + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + +
+ GL_DST_COLOR + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + A + d + + k + A + + + +
+ GL_ONE_MINUS_DST_COLOR + + + + + + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + 1 + - + + A + d + + k + A + + + + +
+ GL_SRC_ALPHA + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + A + s0 + + k + A + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + +
+ GL_DST_ALPHA + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + A + d + + k + A + + + +
+ GL_ONE_MINUS_DST_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + 1 + - + + A + d + + k + A + + + + +
+ GL_CONSTANT_COLOR + + + + + R + c + + G + c + + B + c + + + + + + + A + c + + +
+ GL_ONE_MINUS_CONSTANT_COLOR + + + + + + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + + + + + + + + 1 + - + A + c + + + +
+ GL_CONSTANT_ALPHA + + + + + A + c + + A + c + + A + c + + + + + + + A + c + + +
+ GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + + + + + + + + 1 + - + A + c + + + +
+ GL_SRC_ALPHA_SATURATE + + + + + i + i + i + + + + + + 1 + +
+ GL_SRC1_COLOR + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + A + s1 + + k + A + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + +
+ GL_SRC1_ALPHA + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + A + s1 + + k + A + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + +

+ In the table, +

+

+ + + + i + = + + min + ⁡ + + A + s + + + 1 + - + + A + d + + + + + + + +

+

+ To determine the blended RGBA values of a pixel, + the system uses the following equations: +

+

+ + + + R + d + + = + + min + ⁡ + + k + R + + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + + + + + + + + G + d + + = + + min + ⁡ + + k + G + + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + + + + + + + + B + d + + = + + min + ⁡ + + k + B + + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + + + + + + + + A + d + + = + + min + ⁡ + + k + A + + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + + + + +

+

+ Despite the apparent precision of the above equations, blending arithmetic + is not exactly specified, because blending operates with imprecise integer + color values. However, a blend factor that should be equal to 1 is + guaranteed not to modify its multiplicand, and a blend factor equal to 0 + reduces its multiplicand to 0. For example, when srcRGB is + GL_SRC_ALPHA, dstRGB is GL_ONE_MINUS_SRC_ALPHA, and + + + A + s + + + is + equal to + + + k + A + + , + the equations reduce to simple replacement: +

+

+ + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + +

+

+

Notes

+ Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. +

+ When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) +

+ When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. +

Errors

+ GL_INVALID_ENUM is generated if either srcRGB or dstRGB is not an + accepted value. +

Associated Gets

+ glGet with argument GL_BLEND_SRC_RGB +

+ glGet with argument GL_BLEND_SRC_ALPHA +

+ glGet with argument GL_BLEND_DST_RGB +

+ glGet with argument GL_BLEND_DST_ALPHA +

+ glIsEnabled with argument GL_BLEND +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glBlitFramebuffer.xml b/upstream-man-pages/man3/xhtml/glBlitFramebuffer.xml new file mode 100644 index 0000000..6cdcdd8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBlitFramebuffer.xml @@ -0,0 +1,78 @@ + + + +glBlitFramebuffer - OpenGL 3.3 Reference Pages

Name

glBlitFramebuffer — copy a block of pixels from the read framebuffer to the draw framebuffer

C Specification

void glBlitFramebuffer(GLint  srcX0,
 GLint  srcY0,
 GLint  srcX1,
 GLint  srcY1,
 GLint  dstX0,
 GLint  dstY0,
 GLint  dstX1,
 GLint  dstY1,
 GLbitfield  mask,
 GLenum  filter);

Parameters

srcX0, srcY0, srcX1, srcY1

+ Specify the bounds of the source rectangle within the read buffer of the read framebuffer. +

dstX0, dstY0, dstX1, dstY1

+ Specify the bounds of the destination rectangle within the write buffer of the write framebuffer. +

mask

+ The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are + GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT and GL_STENCIL_BUFFER_BIT. +

filter

+ Specifies the interpolation to be applied if the image is stretched. Must be GL_NEAREST or GL_LINEAR. +

Description

+ glBlitFramebuffer transfers a rectangle of pixel values from one region of the read framebuffer to another region in + the draw framebuffer. mask is the bitwise OR of a number of values indicating which buffers are + to be copied. The values are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. The pixels corresponding to these buffers are copied from the source rectangle bounded by the + locations (srcX0; srcY0) and (srcX1; srcY1) + to the destination rectangle bounded by the locations (dstX0; dstY0) and + (dstX1; dstY1). The lower bounds of the rectangle are inclusive, while the upper + bounds are exclusive. +

+ The actual region taken from the read framebuffer is limited to the intersection of the source buffers being transferred, which may + include the color buffer selected by the read buffer, the depth buffer, and/or the stencil buffer depending on mask. The actual region + written to the draw framebuffer is limited to the intersection of the destination buffers being written, which may include multiple draw + buffers, the depth buffer, and/or the stencil buffer depending on mask. Whether or not the source or destination regions are altered due + to these limits, the scaling and offset applied to pixels being transferred is performed as though no such limits were present. +

+ If the sizes of the source and destination rectangles are not equal, filter specifies the interpolation method that + will be applied to resize the source image , and must be GL_NEAREST or GL_LINEAR. + GL_LINEAR is only a valid interpolation method for the color buffer. If filter is not + GL_NEAREST and mask includes GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT, no data is transferred and a GL_INVALID_OPERATION error is generated. +

+ If filter is GL_LINEAR and the source rectangle would require sampling outside the bounds of + the source framebuffer, values are read as if the GL_CLAMP_TO_EDGE texture wrapping mode were applied. +

+ When the color buffer is transferred, values are taken from the read buffer of the read framebuffer and written to each of the draw + buffers of the draw framebuffer. +

+ If the source and destination rectangles overlap or are the same, and the read and draw buffers are the same, the result of the operation + is undefined. +

Errors

+ GL_INVALID_OPERATION is generated if mask contains any of the GL_DEPTH_BUFFER_BIT + or GL_STENCIL_BUFFER_BIT and filter is not GL_NEAREST. +

+ GL_INVALID_OPERATION is generated if mask contains GL_COLOR_BUFFER_BIT + and any of the following conditions hold: +

  • The read buffer contains fixed-point or floating-point values and any draw buffer contains + neither fixed-point nor floating-point values.

  • The read buffer contains unsigned integer values and any draw buffer does not contain unsigned + integer values.

  • The read buffer contains signed integer values and any draw buffer does not contain signed integer values.

+

+ GL_INVALID_OPERATION is generated if mask contains GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT and the source and destination depth and stencil formats do not match. +

+ GL_INVALID_OPERATION is generated if filter is GL_LINEAR and the read buffer + contains integer data. +

+ GL_INVALID_OPERATION is generated if the value of GL_SAMPLES for the read and draw buffers is + not identical. +

+ GL_INVALID_OPERATION is generated if GL_SAMPLE_BUFFERS for both read and draw buffers greater than + zero and the dimensions of the source and destination rectangles is not identical. +

+ GL_INVALID_FRAMEBUFFER_OPERATION is generated if the objects bound to GL_DRAW_FRAMEBUFFER_BINDING + or GL_READ_FRAMEBUFFER_BINDING are not framebuffer complete. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBufferData.xml b/upstream-man-pages/man3/xhtml/glBufferData.xml new file mode 100644 index 0000000..0446eee --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBufferData.xml @@ -0,0 +1,91 @@ + + + +glBufferData

Name

glBufferData — creates and initializes a buffer object's data store

C Specification

void glBufferData(GLenum  target,
 GLsizeiptr  size,
 const GLvoid *  data,
 GLenum  usage);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

size

+ Specifies the size in bytes of the buffer object's new data store. +

data

+ Specifies a pointer to data that will be copied into the data store for initialization, + or NULL if no data is to be copied. +

usage

+ Specifies the expected usage pattern of the data store. The symbolic constant must be + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. +

Description

+ glBufferData creates a new data store for the buffer object currently bound to + target. Any pre-existing data store is deleted. The new data store is created with the + specified size in bytes and usage. If data + is not NULL, the data store is initialized with data from this pointer. In its initial + state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access + is GL_READ_WRITE. +

+ usage is a hint to the GL implementation as to how a buffer object's data store will be + accessed. This enables the GL implementation to make more intelligent decisions that may significantly + impact buffer object performance. It does not, however, constrain the actual usage of the data store. + usage can be broken down into two parts: first, the frequency of access (modification + and usage), and second, the nature of that access. The frequency of access may be one of these: +

STREAM

+ The data store contents will be modified once and used at most a few times. +

STATIC

+ The data store contents will be modified once and used many times. +

DYNAMIC

+ The data store contents will be modified repeatedly and used many times. +

+ The nature of access may be one of these: +

DRAW

+ The data store contents are modified by the application, and used as the source for GL drawing and + image specification commands. +

READ

+ The data store contents are modified by reading data from the GL, and used to return that data + when queried by the application. +

COPY

+ The data store contents are modified by reading data from the GL, and used as the source for GL + drawing and image specification commands. +

Notes

+ If data is NULL, a data store of the specified size is still created, + but its contents remain uninitialized and thus undefined. +

+ Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. +

+ GL_INVALID_ENUM is generated if usage is not + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. +

+ GL_INVALID_VALUE is generated if size is negative. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store with the specified size. +

Associated Gets

+ glGetBufferSubData +

+ glGetBufferParameter with argument GL_BUFFER_SIZE or GL_BUFFER_USAGE +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glBufferSubData.xml b/upstream-man-pages/man3/xhtml/glBufferSubData.xml new file mode 100644 index 0000000..ef0761a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glBufferSubData.xml @@ -0,0 +1,65 @@ + + + +glBufferSubData

Name

glBufferSubData — updates a subset of a buffer object's data store

C Specification

void glBufferSubData(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  size,
 const GLvoid *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

offset

+ Specifies the offset into the buffer object's data store where data replacement will begin, + measured in bytes. +

size

+ Specifies the size in bytes of the data store region being replaced. +

data

+ Specifies a pointer to the new data that will be copied into the data store. +

Description

+ glBufferSubData redefines some or all of the data store for the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied to the data store from the memory pointed to by + data. An error is thrown if offset and size + together define a range beyond the bounds of the buffer object's data store. +

Notes

+ When replacing the entire data store, consider using glBufferSubData rather + than completely recreating the data store with glBufferData. This avoids the cost of + reallocating the data store. +

+ Consider using multiple buffer objects to avoid stalling the rendering pipeline during data store updates. + If any rendering in the pipeline makes reference to data in the buffer object being updated by + glBufferSubData, especially from the specific region being updated, that rendering must + drain from the pipeline before the data store can be updated. +

+ Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. +

+ GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer object being updated is mapped. +

Associated Gets

+ glGetBufferSubData +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glCheckFramebufferStatus.xml b/upstream-man-pages/man3/xhtml/glCheckFramebufferStatus.xml new file mode 100644 index 0000000..9ace113 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCheckFramebufferStatus.xml @@ -0,0 +1,56 @@ + + + +glCheckFramebufferStatus

Name

glCheckFramebufferStatus — check the completeness status of a framebuffer

C Specification

GLenum glCheckFramebufferStatus(GLenum  target);

Parameters

target

+ Specify the target of the framebuffer completeness check. +

Description

+ glCheckFramebufferStatus queries the completeness status of the framebuffer object currently bound to target. + target must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. +

+ The return value is GL_FRAMEBUFFER_COMPLETE if the framebuffer bound to target is complete. Otherwise, + the return value is determined as follows: +

  • + GL_FRAMEBUFFER_UNDEFINED is returned if target is the default framebuffer, but the default framebuffer does not exist. +

  • + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT is returned if any of the framebuffer attachment points are framebuffer incomplete. +

  • + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT is returned if the framebuffer does not have at least one image attached to it. +

  • + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER is returned if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE + is GL_NONE for any color attachment point(s) named by GL_DRAWBUFFERi. +

  • + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER is returned if GL_READ_BUFFER is not GL_NONE + and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE for the color attachment point named + by GL_READ_BUFFER. +

  • + GL_FRAMEBUFFER_UNSUPPORTED is returned if the combination of internal formats of the attached images violates + an implementation-dependent set of restrictions. +

  • + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is returned if the value of GL_RENDERBUFFER_SAMPLES is not the same + for all attached renderbuffers; if the value of GL_TEXTURE_SAMPLES is the not same for all attached textures; or, if the attached + images are a mix of renderbuffers and textures, the value of GL_RENDERBUFFER_SAMPLES does not match the value of + GL_TEXTURE_SAMPLES. +

  • + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is also returned if the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS is + not the same for all attached textures; or, if the attached images are a mix of renderbuffers and textures, the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS + is not GL_TRUE for all attached textures. +

  • + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS is returned if any framebuffer attachment is layered, and any populated attachment is not layered, + or if all populated color attachments are not from textures of the same target. +

+

+ Additionally, if an error occurs, zero is returned. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glClampColor.xml b/upstream-man-pages/man3/xhtml/glClampColor.xml new file mode 100644 index 0000000..a726fbc --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClampColor.xml @@ -0,0 +1,26 @@ + + + +glClampColor

Name

glClampColor — specify whether data read via glReadPixels should be clamped

C Specification

void glClampColor(GLenum  target,
 GLenum  clamp);

Parameters

target

+ Target for color clamping. target must be GL_CLAMP_READ_COLOR. +

clamp

+ Specifies whether to apply color clamping. clamp must be GL_TRUE or GL_FALSE. +

Description

+ glClampColor controls color clamping that is performed during glReadPixels. + target must be GL_CLAMP_READ_COLOR. If clamp is GL_TRUE, + read color clamping is enabled; if clamp is GL_FALSE, read color clamping is disabled. If + clamp is GL_FIXED_ONLY, read color clamping is enabled only if the selected read buffer has + fixed point components and disabled otherwise. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_CLAMP_READ_COLOR. +

+ GL_INVALID_ENUM is generated if clamp is not GL_TRUE or GL_FALSE. +

Associated Gets

+ glGet with argument GL_CLAMP_READ_COLOR. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glClear.xml b/upstream-man-pages/man3/xhtml/glClear.xml new file mode 100644 index 0000000..f19f77c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClear.xml @@ -0,0 +1,68 @@ + + + +glClear

Name

glClear — clear buffers to preset values

C Specification

void glClear(GLbitfield mask);

Parameters

mask

+ Bitwise OR of masks that indicate the buffers to be cleared. + The three masks are + GL_COLOR_BUFFER_BIT, + GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. +

Description

+ glClear sets the bitplane area of the window to values previously selected + by glClearColor, glClearDepth, and + glClearStencil. + Multiple color buffers can be cleared simultaneously by selecting + more than one buffer at a time using glDrawBuffer. +

+ The pixel ownership test, + the scissor test, + dithering, and the buffer writemasks affect the operation of glClear. + The scissor box bounds the cleared region. + Alpha function, + blend function, + logical operation, + stenciling, + texture mapping, + and depth-buffering are ignored by glClear. +

+ glClear takes a single argument that is the bitwise OR of several + values indicating which buffer is to be cleared. +

+ The values are as follows: +

GL_COLOR_BUFFER_BIT

+ Indicates the buffers currently enabled for color + writing. +

GL_DEPTH_BUFFER_BIT

+ Indicates the depth buffer. +

GL_STENCIL_BUFFER_BIT

+ Indicates the stencil buffer. +

+ The value to which each buffer is cleared depends on the setting of the + clear value for that buffer. +

Notes

+ If a buffer is not present, + then a glClear directed at that buffer has no effect. +

Errors

+ GL_INVALID_VALUE is generated if any bit other than the three defined + bits is set in mask. +

Associated Gets

+ glGet with argument GL_DEPTH_CLEAR_VALUE +

+ glGet with argument GL_COLOR_CLEAR_VALUE +

+ glGet with argument GL_STENCIL_CLEAR_VALUE +

See Also

+ glClearColor, + glClearDepth, + glClearStencil, + glColorMask, + glDepthMask, + glDrawBuffer, + glScissor, + glStencilMask +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glClearBuffer.xml b/upstream-man-pages/man3/xhtml/glClearBuffer.xml new file mode 100644 index 0000000..e64ea96 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClearBuffer.xml @@ -0,0 +1,67 @@ + + + +glClearBuffer - OpenGL 3.3 Reference Pages

Name

glClearBuffer — clear individual buffers of the currently bound draw framebuffer

C Specification

void glClearBufferiv(GLenum  buffer,
 GLint  drawBuffer,
 const GLint *  value);
void glClearBufferuiv(GLenum  buffer,
 GLint  drawBuffer,
 const GLuint *  value);
void glClearBufferfv(GLenum  buffer,
 GLint  drawBuffer,
 const GLfloat *  value);
void glClearBufferfi(GLenum  buffer,
 GLint  drawBuffer,
 GLfloat  depth,
 GLint  stencil);

Parameters

buffer

+ Specify the buffer to clear. +

drawBuffer

+ Specify a particular draw buffer to clear. +

value

+ For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. + For depth buffers, a pointer to a single depth value to clear the buffer to. + For stencil buffers, a pointer to a single stencil value to clear the buffer to. +

depth

+ The value to clear a depth render buffer to. +

stencil

+ The value to clear a stencil render buffer to. +

Description

+ glClearBuffer* clears the specified buffer to the specified value(s). If buffer is + GL_COLOR, a particular draw buffer GL_DRAWBUFFERi is specified + by passing i as drawBuffer. In this case, value points to + a four-element vector specifying the R, G, B and A color to clear that draw buffer to. If buffer is + one of GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK, identifying multiple buffers, each selected buffer is cleared to the same value. + Clamping and conversion for fixed-point color buffers are performed in the same fashion as + glClearColor. +

+ If buffer is GL_DEPTH, drawBuffer must be zero, and value + points to a single value to clear the depth buffer to. Only glClearBufferfv should be used to clear + depth buffers. Clamping and conversion for fixed-point depth buffers are performed in the same fashion as + glClearDepth. +

+ If buffer is GL_STENCIL, drawBuffer must be zero, and value + points to a single value to clear the stencil buffer to. Only glClearBufferiv should be used to clear + stencil buffers. Masking and type conversion are performed in the same fashion as + glClearStencil. +

+ glClearBufferfi may be used to clear the depth and stencil buffers. buffer must be + GL_DEPTH_STENCIL and drawBuffer must be zero. depth and + stencil are the depth and stencil values, respectively. +

+ The result of glClearBuffer is undefined if no conversion between the type of value + and the buffer being cleared is defined. However, this is not an error. +

Errors

+ GL_INVALID_ENUM is generated by glClearBufferif, glClearBufferfv + and glClearBufferuiv if buffer is not GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + GL_FRONT_AND_BACK, GL_DEPTH or GL_STENCIL. +

+ GL_INVALID_ENUM is generated by glClearBufferfi if buffer + is not GL_DEPTH_STENCIL. +

+ GL_INVALID_VALUE is generated if buffer is GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK and drawBuffer is greater than or equal to GL_MAX_DRAW_BUFFERS. +

+ GL_INVALID_VALUE is generated if buffer is GL_DEPTH, + GL_STENCIL or GL_DEPTH_STENCIL and drawBuffer is not zero. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glClearColor.xml b/upstream-man-pages/man3/xhtml/glClearColor.xml new file mode 100644 index 0000000..29c2c53 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClearColor.xml @@ -0,0 +1,30 @@ + + + +glClearColor

Name

glClearColor — specify clear values for the color buffers

C Specification

void glClearColor(GLclampf  red,
 GLclampf  green,
 GLclampf  blue,
 GLclampf  alpha);

Parameters

red, green, blue, alpha

+ Specify the red, green, blue, and alpha values used when the + color buffers are cleared. + The initial values are all 0. +

Description

+ glClearColor specifies the red, + green, + blue, + and alpha values used by glClear to clear the color buffers. + Values specified by glClearColor are clamped to the range + + + + 0 + 1 + + . +

Associated Gets

+ glGet with argument GL_COLOR_CLEAR_VALUE +

See Also

+ glClear +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glClearDepth.xml b/upstream-man-pages/man3/xhtml/glClearDepth.xml new file mode 100644 index 0000000..0d989ff --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClearDepth.xml @@ -0,0 +1,26 @@ + + + +glClearDepth

Name

glClearDepth — specify the clear value for the depth buffer

C Specification

void glClearDepth(GLclampd depth);

Parameters

depth

+ Specifies the depth value used when the depth buffer is cleared. The + initial value is 1. +

Description

+ glClearDepth specifies the depth value used by glClear to clear the depth buffer. + Values specified by glClearDepth are clamped to the range + + + + 0 + 1 + + . +

Associated Gets

+ glGet with argument GL_DEPTH_CLEAR_VALUE +

See Also

+ glClear +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glClearStencil.xml b/upstream-man-pages/man3/xhtml/glClearStencil.xml new file mode 100644 index 0000000..cc5d95e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClearStencil.xml @@ -0,0 +1,40 @@ + + + +glClearStencil

Name

glClearStencil — specify the clear value for the stencil buffer

C Specification

void glClearStencil(GLint s);

Parameters

s

+ Specifies the index used when the stencil buffer is cleared. + The initial value is 0. +

Description

+ glClearStencil specifies the index used by glClear to clear the stencil buffer. + s is masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in the stencil buffer. +

Associated Gets

+ glGet with argument GL_STENCIL_CLEAR_VALUE +

+ glGet with argument GL_STENCIL_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glClientWaitSync.xml b/upstream-man-pages/man3/xhtml/glClientWaitSync.xml new file mode 100644 index 0000000..dd2ada2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glClientWaitSync.xml @@ -0,0 +1,42 @@ + + + +glClientWaitSync

Name

glClientWaitSync — block and wait for a sync object to become signaled

C Specification

GLenum glClientWaitSync(GLsync  sync,
 GLbitfield  flags,
 GLuint64  timeout);

Parameters

sync

+ The sync object whose status to wait on. +

flags

+ A bitfield controlling the command flushing behavior. flags may be GL_SYNC_FLUSH_COMMANDS_BIT. +

timeout

+ The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled. +

Description

+ glClientWaitSync causes the client to block and wait for the sync object specified by sync to become signaled. If + sync is signaled when glClientWaitSync is called, glClientWaitSync returns immediately, otherwise + it will block and wait for up to timeout nanoseconds for sync to become signaled. +

+ The return value is one of four status values: +

  • + GL_ALREADY_SIGNALED indicates that sync was signaled at the time that glClientWaitSync + was called. +

  • + GL_TIMEOUT_EXPIRED indicates that at least timeout nanoseconds passed and sync did not + become signaled. +

  • + GL_CONDITION_SATISFIED indicates that sync was signaled before the timeout expired. +

  • + GL_WAIT_FAILED indicates that an error occurred. Additionally, an OpenGL error will be generated. +

+

Notes

+ glClientWaitSync is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_VALUE is generated if sync is not the name of an existing sync object. +

+ GL_INVALID_VALUE is generated if flags contains any unsupported flag. +

See Also

+ glFenceSync, + glIsSync + glWaitSync +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glColorMask.xml b/upstream-man-pages/man3/xhtml/glColorMask.xml new file mode 100644 index 0000000..3a171ea --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glColorMask.xml @@ -0,0 +1,38 @@ + + + +glColorMask - OpenGL 3.3 Reference Pages

Name

glColorMask, glColorMaski — enable and disable writing of frame buffer color components

C Specification

void glColorMask(GLboolean  red,
 GLboolean  green,
 GLboolean  blue,
 GLboolean  alpha);
void glColorMaski(GLuint  buf,
 GLboolean  red,
 GLboolean  green,
 GLboolean  blue,
 GLboolean  alpha);

Parameters

buf

+ For glColorMaski, specifies the index of the + draw buffer whose color mask to set. +

red, green, blue, alpha

+ Specify whether red, green, blue, and alpha are to be written + into the frame buffer. + The initial values are all GL_TRUE, + indicating that the color components are written. +

Description

+ glColorMask and glColorMaski specify whether the individual color components in the frame buffer + can or cannot be written. glColorMaski sets the mask for a specific draw buffer, whereas + glColorMask sets the mask for all draw buffers. + If red is GL_FALSE, + for example, + no change is made to the red component of any pixel in any of the + color buffers, + regardless of the drawing operation attempted. +

+ Changes to individual bits of components cannot be controlled. + Rather, + changes are either enabled or disabled for entire color components. +

Associated Gets

+ glGet with argument GL_COLOR_WRITEMASK +

See Also

+ glClear, + glDepthMask, + glStencilMask +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. + Copyright © 2010-2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glColorMaski.xml b/upstream-man-pages/man3/xhtml/glColorMaski.xml new file mode 100644 index 0000000..2ce7070 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glColorMaski.xml @@ -0,0 +1,4 @@ + + + +glColorMaski diff --git a/upstream-man-pages/man3/xhtml/glCompileShader.xml b/upstream-man-pages/man3/xhtml/glCompileShader.xml new file mode 100644 index 0000000..4bce217 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompileShader.xml @@ -0,0 +1,32 @@ + + + +glCompileShader

Name

glCompileShader — Compiles a shader object

C Specification

void glCompileShader(GLuint shader);

Parameters

shader

Specifies the shader object to be + compiled.

Description

glCompileShader compiles the source + code strings that have been stored in the shader object + specified by shader.

The compilation status will be stored as part of the + shader object's state. This value will be set to + GL_TRUE if the shader was compiled without + errors and is ready for use, and GL_FALSE + otherwise. It can be queried by calling + glGetShader + with arguments shader and + GL_COMPILE_STATUS.

Compilation of a shader can fail for a number of reasons + as specified by the OpenGL Shading Language Specification. + Whether or not the compilation was successful, information about + the compilation can be obtained from the shader object's + information log by calling + glGetShaderInfoLog.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

Associated Gets

glGetShaderInfoLog + with argument shader

glGetShader + with arguments shader and + GL_COMPILE_STATUS

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glCompressedTexImage1D.xml b/upstream-man-pages/man3/xhtml/glCompressedTexImage1D.xml new file mode 100644 index 0000000..fdda6fc --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompressedTexImage1D.xml @@ -0,0 +1,110 @@ + + + +glCompressedTexImage1D

Name

glCompressedTexImage1D — specify a one-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage1D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image. + All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. +

border

+ This value must be 0. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexImage1D loads a previously defined, and retrieved, compressed + one-dimensional texture image if target is GL_TEXTURE_1D + (see glTexImage1D). +

+ If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. +

+ internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with + glTexImage1D using a generic compressed texture format + (e.g., GL_COMPRESSED_RGB) the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and + format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not + a supported specific compressed internal formats, or is one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_NUM_COMPRESSED_TEXTURE_FORMATS +

+ glGet with argument GL_COMPRESSED_TEXTURE_FORMATS +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCompressedTexImage2D.xml b/upstream-man-pages/man3/xhtml/glCompressedTexImage2D.xml new file mode 100644 index 0000000..34c78eb --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompressedTexImage2D.xml @@ -0,0 +1,129 @@ + + + +glCompressedTexImage2D

Name

glCompressedTexImage2D — specify a two-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage2D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image. + All implementations support 2D texture images that are at least 64 texels + wide and cube-mapped texture images that are at least 16 texels wide. +

height

+ Specifies the height of the texture image. + All implementations support 2D texture images that are at least 64 texels + high and cube-mapped texture images that are at least 16 texels high. +

border

+ This value must be 0. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional + texture image if target is GL_TEXTURE_2D, or one of the + cube map faces such as GL_TEXTURE_CUBE_MAP_POSITIVE_X. + (see glTexImage2D). +

+ If target is GL_TEXTURE_1D_ARRAY, data + is treated as an array of compressed 1D textures. +

+ If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY + or GL_PROXY_CUBE_MAP, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, + use an image array level greater than or equal to 1. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage2D, query the compressed texture image's + size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCompressedTexImage3D.xml b/upstream-man-pages/man3/xhtml/glCompressedTexImage3D.xml new file mode 100644 index 0000000..7693b2c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompressedTexImage3D.xml @@ -0,0 +1,120 @@ + + + +glCompressedTexImage3D

Name

glCompressedTexImage3D — specify a three-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage3D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels wide. +

height

+ Specifies the height of the texture image. + All implementations support 3D texture images that are at least 16 texels + high. +

depth

+ Specifies the depth of the texture image. + All implementations support 3D texture images that are at least 16 texels + deep. +

border

+ This value must be 0. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional + texture image if target is GL_TEXTURE_3D (see glTexImage3D). +

+ If target is GL_TEXTURE_2D_ARRAY, data is + treated as an array of compressed 2D textures. +

+ If target is GL_PROXY_TEXTURE_3D or GL_PROXY_TEXTURE_2D_ARRAY, + no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage3D, query the compressed texture image's + size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if data is not encoded in a manner consistent with the extension specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCompressedTexSubImage1D.xml b/upstream-man-pages/man3/xhtml/glCompressedTexSubImage1D.xml new file mode 100644 index 0000000..bd0431c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompressedTexSubImage1D.xml @@ -0,0 +1,114 @@ + + + +glCompressedTexSubImage1D

Name

glCompressedTexSubImage1D — specify a one-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLsizei  width,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage1D), and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCompressedTexSubImage2D.xml b/upstream-man-pages/man3/xhtml/glCompressedTexSubImage2D.xml new file mode 100644 index 0000000..64260de --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompressedTexSubImage2D.xml @@ -0,0 +1,135 @@ + + + +glCompressedTexSubImage2D

Name

glCompressedTexSubImage2D — specify a two-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage2D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCompressedTexSubImage3D.xml b/upstream-man-pages/man3/xhtml/glCompressedTexSubImage3D.xml new file mode 100644 index 0000000..b2a0c77 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCompressedTexSubImage3D.xml @@ -0,0 +1,141 @@ + + + +glCompressedTexSubImage3D

Name

glCompressedTexSubImage3D — specify a three-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

depth

+ Specifies the depth of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + and the z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. This region may not include + any texels outside the range of the texture array as it was originally + specified. It is not an error to specify a subtexture with width of 0, + but such a specification has no effect. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage3D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCopyBufferSubData.xml b/upstream-man-pages/man3/xhtml/glCopyBufferSubData.xml new file mode 100644 index 0000000..8fe268c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCopyBufferSubData.xml @@ -0,0 +1,61 @@ + + + +glCopyBufferSubData

Name

glCopyBufferSubData — copy part of the data store of a buffer object to the data store of another buffer object

C Specification

void glCopyBufferSubData(GLenum readtarget,
 GLenum writetarget,
 GLintptr readoffset,
 GLintptr writeoffset,
 GLsizeiptr size);
 

Parameters

readtarget

+ Specifies the target from whose data store data should be read. +

writetarget

+ Specifies the target to whose data store data should be written. +

readoffset

+ Specifies the offset, in basic machine units, within the data store of readtarget from which data should be read. +

writeoffset

+ Specifies the offset, in basic machine units, within the data store of writetarget to which data should be written. +

size

+ Specifies the size, in basic machine units, of the data to be copied from readtarget to writetarget. +

Description

+ glCopyBufferSubData copies part of the data store attached to readtarget to the + data store attached to writetarget. The number of basic machine units indicated by size + is copied from the source, at offset readoffset to the destination at writeoffset, + also in basic machine units. +

+ readtarget and writetarget must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. Any of these targets may be used, + although the targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER are provided + specifically to allow copies between buffers without disturbing other GL state. +

+ readoffset, writeoffset and size must all be greater than or equal to + zero. Furthermore, readoffset + size must not exceeed the size of the buffer + object bound to readtarget, and readoffset + size must not exceeed the + size of the buffer bound to writetarget. If the same buffer object is bound to both readtarget + and writetarget, then the ranges specified by readoffset, writeoffset + and size must not overlap. +

Notes

+ glCopyBufferSubData is available only if the GL version is 3.1 or greater. +

Errors

+ GL_INVALID_VALUE is generated if any of readoffset, writeoffset + or size is negative, if readoffset + size exceeds the + size of the buffer object bound to readtarget or if writeoffset + size + exceeds the size of the buffer object bound to writetarget. +

+ GL_INVALID_VALUE is generated if the same buffer object is bound to both readtarget + and writetarget and the ranges [readoffset, readoffset + + size) and [writeoffset, writeoffset + size) + overlap. +

+ GL_INVALID_OPERATION is generated if zero is bound to readtarget or writetarget. +

+ GL_INVALID_OPERATION is generated if the buffer object bound to either readtarget or writetarget + is mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glCopyTexImage1D.xml b/upstream-man-pages/man3/xhtml/glCopyTexImage1D.xml new file mode 100644 index 0000000..cca15be --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCopyTexImage1D.xml @@ -0,0 +1,204 @@ + + + +glCopyTexImage1D

Name

glCopyTexImage1D — copy pixels into a 1D texture image

C Specification

void glCopyTexImage1D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLint  border);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

x, y

+ Specify the window coordinates of the left corner + of the row of pixels to be copied. +

width

+ Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + The height of the texture image is 1. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

Description

+ glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. +

+ The screen-aligned pixel row with left corner at + + + + x + y + + + and with a length of + + + + width + + + + 2 + ⁡ + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. +

+ The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ Pixel ordering is such that lower + x + screen coordinates correspond to + lower texture coordinates. +

+ If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. +

+ When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. +

Notes

+ 1, 2, 3, and 4 are not accepted values for internalformat. +

+ An image with 0 width indicates a NULL texture. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable values. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁢ + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalformat is not an allowable value. +

+ GL_INVALID_VALUE is generated if width is less than 0 or greater than + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer value of n. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCopyTexImage2D.xml b/upstream-man-pages/man3/xhtml/glCopyTexImage2D.xml new file mode 100644 index 0000000..d57ce88 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCopyTexImage2D.xml @@ -0,0 +1,251 @@ + + + +glCopyTexImage2D

Name

glCopyTexImage2D — copy pixels into a 2D texture image

C Specification

void glCopyTexImage2D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height,
 GLint  border);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. +

height

+ Specifies the height of the texture image. + Must be 0 or + + + + 2 + m + + + + + 2 + ⁡ + + border + + + + + for some integer + m. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

Description

+ glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image + with pixels from the current + GL_READ_BUFFER. +

+ The screen-aligned pixel rectangle with lower left corner at (x, + y) and with a width of + + + + width + + + + 2 + ⁡ + + border + + + + + and a height of + + + + height + + + + 2 + ⁡ + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. +

+ The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ Pixel ordering is such that lower + x + and + y + screen coordinates correspond to + lower + s + and + t + texture coordinates. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. +

Notes

+ 1, 2, 3, and 4 are not accepted values for internalformat. +

+ An image with height or width of 0 indicates a NULL texture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁢ + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or depth cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some integer + k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_VALUE is generated if internalformat is not an + accepted format. +

+ GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCopyTexSubImage1D.xml b/upstream-man-pages/man3/xhtml/glCopyTexSubImage1D.xml new file mode 100644 index 0000000..71e2871 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCopyTexSubImage1D.xml @@ -0,0 +1,157 @@ + + + +glCopyTexSubImage1D

Name

glCopyTexSubImage1D — copy a one-dimensional texture subimage

C Specification

void glCopyTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  x,
 GLint  y,
 GLsizei  width);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies the texel offset within the texture array. +

x, y

+ Specify the window coordinates of the left corner + of the row of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

Description

+ glCopyTexSubImage1D replaces a portion of a one-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage1D). +

+ The screen-aligned pixel row with left corner at (x,\ y), and with + length width replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive. The destination in the texture array may not + include any texels outside the texture array as it was + originally specified. +

+ The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ It is not an error to specify a subtexture with zero width, but + such a specification has no effect. + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ The glPixelStore mode affects texture images. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_1D. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D or glCopyTexImage1D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. +

+

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCopyTexSubImage2D.xml b/upstream-man-pages/man3/xhtml/glCopyTexSubImage2D.xml new file mode 100644 index 0000000..ab595d3 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCopyTexSubImage2D.xml @@ -0,0 +1,230 @@ + + + +glCopyTexSubImage2D

Name

glCopyTexSubImage2D — copy a two-dimensional texture subimage

C Specification

void glCopyTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

Description

+ glCopyTexSubImage2D replaces a rectangular portion of a two-dimensional texture image or + cube-map texture image with pixels from the current GL_READ_BUFFER + (rather than from main memory, as is the case for glTexSubImage2D). +

+ The screen-aligned pixel rectangle with lower left corner at + + + + x + y + + + and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at the mipmap level specified by level. +

+ The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + height, or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glPixelStore modes affect texture images. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_OPERATION is generated if the texture array has not been + defined by a previous glTexImage2D or glCopyTexImage2D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + and + h + include twice the border width. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCopyTexSubImage3D.xml b/upstream-man-pages/man3/xhtml/glCopyTexSubImage3D.xml new file mode 100644 index 0000000..2c1ea06 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCopyTexSubImage3D.xml @@ -0,0 +1,248 @@ + + + +glCopyTexSubImage3D - OpenGL 3.3 Reference Pages

Name

glCopyTexSubImage3D — copy a three-dimensional texture subimage

C Specification

void glCopyTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

zoffset

+ Specifies a texel offset in the z direction within the texture array. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

Description

+ glCopyTexSubImage3D replaces a rectangular portion of a three-dimensional + or two-dimensional array texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage3D). +

+ The screen-aligned pixel rectangle with lower left corner at + (x, y) and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at z index zoffset and at the mipmap level specified by level. +

+ The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + height, depth, or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glPixelStore modes affect texture images. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where + is the returned value of GL_MAX_3D_TEXTURE_SIZE if target + is GL_TEXTURE_3D or the returned value of GL_MAX_ARRAY_TEXTURE_LAYERS + if target is GL_TEXTURE_2D_ARRAY. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + 1 + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glCreateProgram.xml b/upstream-man-pages/man3/xhtml/glCreateProgram.xml new file mode 100644 index 0000000..d48b4ae --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCreateProgram.xml @@ -0,0 +1,60 @@ + + + +glCreateProgram

Name

glCreateProgram — Creates a program object

C Specification

GLuint glCreateProgram(void);
 

Description

glCreateProgram creates an empty + program object and returns a non-zero value by which it can be + referenced. A program object is an object to which shader + objects can be attached. This provides a mechanism to specify + the shader objects that will be linked to create a program. It + also provides a means for checking the compatibility of the + shaders that will be used to create a program (for instance, + checking the compatibility between a vertex shader and a + fragment shader). When no longer needed as part of a program + object, shader objects can be detached.

One or more executables are created in a program object by + successfully attaching shader objects to it with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + These executables are made part of current state when + glUseProgram + is called. Program objects can be deleted by calling + glDeleteProgram. + The memory associated with the program object will be deleted + when it is no longer part of current rendering state for any + context.

Notes

Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

This function returns 0 if an error occurs creating the program object.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with a valid program object and the index of an active attribute + variable

glGetActiveUniform + with a valid program object and the index of an active uniform + variable

glGetAttachedShaders + with a valid program object

glGetAttribLocation + with a valid program object and the name of an attribute + variable

glGetProgram + with a valid program object and the parameter to be queried

glGetProgramInfoLog + with a valid program object

glGetUniform + with a valid program object and the location of a uniform + variable

glGetUniformLocation + with a valid program object and the name of a uniform + variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glCreateShader.xml b/upstream-man-pages/man3/xhtml/glCreateShader.xml new file mode 100644 index 0000000..41853ea --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCreateShader.xml @@ -0,0 +1,44 @@ + + + +glCreateShader

Name

glCreateShader — Creates a shader object

C Specification

GLuint glCreateShader(GLenum shaderType);
 

Parameters

shaderType

Specifies the type of shader to be created. + Must be one of GL_VERTEX_SHADER, + GL_GEOMETRY_SHADER + or GL_FRAGMENT_SHADER.

Description

glCreateShader creates an empty + shader object and returns a non-zero value by which it can be + referenced. A shader object is used to maintain the source code + strings that define a shader. shaderType + indicates the type of shader to be created. Three types of shaders + are supported. A shader of type + GL_VERTEX_SHADER is a shader that is + intended to run on the programmable vertex processor. A shader of type + GL_GEOMETRY_SHADER is a shader that is intended to + run on the programmable geometry processor. A shader of + type GL_FRAGMENT_SHADER is a shader that is + intended to run on the programmable fragment processor.

When created, a shader object's + GL_SHADER_TYPE parameter is set to either + GL_VERTEX_SHADER, GL_GEOMETRY_SHADER + or GL_FRAGMENT_SHADER, depending on the value + of shaderType.

Notes

Like buffer and texture objects, the name space for + shader objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

This function returns 0 if an error occurs creating the + shader object.

GL_INVALID_ENUM is generated if + shaderType is not an accepted value.

Associated Gets

glGetShader + with a valid shader object and the parameter to be queried

glGetShaderInfoLog + with a valid shader object

glGetShaderSource + with a valid shader object

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glCullFace.xml b/upstream-man-pages/man3/xhtml/glCullFace.xml new file mode 100644 index 0000000..6fdb2be --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glCullFace.xml @@ -0,0 +1,41 @@ + + + +glCullFace

Name

glCullFace — specify whether front- or back-facing facets can be culled

C Specification

void glCullFace(GLenum mode);
 

Parameters

mode

+ Specifies whether front- or back-facing facets are candidates for culling. + Symbolic constants + GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. + The initial value is GL_BACK. +

Description

+ glCullFace specifies whether front- or back-facing facets are culled + (as specified by mode) when facet culling is enabled. Facet + culling is initially disabled. + To enable and disable facet culling, call the + glEnable and glDisable commands + with the argument GL_CULL_FACE. + Facets include triangles, + quadrilaterals, + polygons, and + rectangles. +

+ glFrontFace specifies which of the clockwise and counterclockwise facets + are front-facing and back-facing. + See glFrontFace. +

Notes

+ If mode is GL_FRONT_AND_BACK, no facets are drawn, but other + primitives such as points and lines are drawn. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

Associated Gets

+ glIsEnabled with argument GL_CULL_FACE +

+ glGet with argument GL_CULL_FACE_MODE +

See Also

+ glEnable, + glFrontFace +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteBuffers.xml b/upstream-man-pages/man3/xhtml/glDeleteBuffers.xml new file mode 100644 index 0000000..0f225d8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteBuffers.xml @@ -0,0 +1,30 @@ + + + +glDeleteBuffers

Name

glDeleteBuffers — delete named buffer objects

C Specification

void glDeleteBuffers(GLsizei  n,
 const GLuint *  buffers);

Parameters

n

+ Specifies the number of buffer objects to be deleted. +

buffers

+ Specifies an array of buffer objects to be deleted. +

Description

+ glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. + After a buffer object is deleted, it has no contents, + and its name is free for reuse (for example by glGenBuffers). + If a buffer object that is currently bound is deleted, the binding reverts + to 0 (the absence of any buffer object). +

+ glDeleteBuffers silently ignores 0's and names that do not correspond to + existing buffer objects. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsBuffer +

See Also

+ glBindBuffer, + glGenBuffers, + glGet +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteFramebuffers.xml b/upstream-man-pages/man3/xhtml/glDeleteFramebuffers.xml new file mode 100644 index 0000000..6b6bc6d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteFramebuffers.xml @@ -0,0 +1,26 @@ + + + +glDeleteFramebuffers

Name

glDeleteFramebuffers — delete framebuffer objects

C Specification

void glDeleteFramebuffers(GLsizei n,
 GLuint *framebuffers);
 

Parameters

n

+ Specifies the number of framebuffer objects to be deleted. +

framebuffers

+ A pointer to an array containing n framebuffer objects to be deleted. +

Description

+ glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in + the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again + unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER + or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer + had been executed with the corresponding target and framebuffer zero. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteProgram.xml b/upstream-man-pages/man3/xhtml/glDeleteProgram.xml new file mode 100644 index 0000000..e9ae2f1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteProgram.xml @@ -0,0 +1,35 @@ + + + +glDeleteProgram

Name

glDeleteProgram — Deletes a program object

C Specification

void glDeleteProgram(GLuint program);

Parameters

program

Specifies the program object to be + deleted.

Description

glDeleteProgram frees the memory and + invalidates the name associated with the program object + specified by program. This command + effectively undoes the effects of a call to + glCreateProgram.

If a program object is in use as part of current rendering + state, it will be flagged for deletion, but it will not be + deleted until it is no longer part of current state for any + rendering context. If a program object to be deleted has shader + objects attached to it, those shader objects will be + automatically detached but not deleted unless they have already + been flagged for deletion by a previous call to + glDeleteShader. + A value of 0 for program will be silently + ignored.

To determine whether a program object has been flagged for + deletion, call + glGetProgram + with arguments program and + GL_DELETE_STATUS.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

Associated Gets

glGet + with argument GL_CURRENT_PROGRAM

glGetProgram + with arguments program and + GL_DELETE_STATUS

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteQueries.xml b/upstream-man-pages/man3/xhtml/glDeleteQueries.xml new file mode 100644 index 0000000..a795517 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteQueries.xml @@ -0,0 +1,30 @@ + + + +glDeleteQueries - OpenGL 3.3 Reference Pages

Name

glDeleteQueries — delete named query objects

C Specification

void glDeleteQueries(GLsizei  n,
 const GLuint *  ids);

Parameters

n

+ Specifies the number of query objects to be deleted. +

ids

+ Specifies an array of query objects to be deleted. +

Description

+ glDeleteQueries deletes n query objects named by the elements of the array ids. + After a query object is deleted, it has no contents, + and its name is free for reuse (for example by glGenQueries). +

+ glDeleteQueries silently ignores 0's and names that do not correspond to + existing query objects. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteRenderbuffers.xml b/upstream-man-pages/man3/xhtml/glDeleteRenderbuffers.xml new file mode 100644 index 0000000..5123d7b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteRenderbuffers.xml @@ -0,0 +1,33 @@ + + + +glDeleteRenderbuffers

Name

glDeleteRenderbuffers — delete renderbuffer objects

C Specification

void glDeleteRenderbuffers(GLsizei n,
 GLuint *renderbuffers);
 

Parameters

n

+ Specifies the number of renderbuffer objects to be deleted. +

renderbuffers

+ A pointer to an array containing n renderbuffer objects to be deleted. +

Description

+ glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in + the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again + unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER + is deleted, it is as though glBindRenderbuffer + had been executed with a target of GL_RENDERBUFFER and a name of zero. +

+ If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if + glFramebufferRenderbuffer had been called, with a renderbuffer + of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, + this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer + image is specifically not detached from any non-bound framebuffers. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteSamplers.xml b/upstream-man-pages/man3/xhtml/glDeleteSamplers.xml new file mode 100644 index 0000000..6d8ba8e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteSamplers.xml @@ -0,0 +1,29 @@ + + + +glDeleteSamplers - OpenGL 3.3 Reference Pages

Name

glDeleteSamplers — delete named sampler objects

C Specification

void glDeleteSamplers(GLsizei  n,
 const GLuint *  samplers);

Parameters

n

+ Specifies the number of sampler objects to be deleted. +

samplers

+ Specifies an array of sampler objects to be deleted. +

Description

+ glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. + After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as + though glBindSampler is called with unit set to the unit the sampler is bound to and + sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. +

Notes

+ glDeleteSamplers is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsSampler +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteShader.xml b/upstream-man-pages/man3/xhtml/glDeleteShader.xml new file mode 100644 index 0000000..dc08887 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteShader.xml @@ -0,0 +1,31 @@ + + + +glDeleteShader

Name

glDeleteShader — Deletes a shader object

C Specification

void glDeleteShader(GLuint shader);

Parameters

shader

Specifies the shader object to be deleted.

Description

glDeleteShader frees the memory and + invalidates the name associated with the shader object specified + by shader. This command effectively + undoes the effects of a call to + glCreateShader.

If a shader object to be deleted is attached to a program + object, it will be flagged for deletion, but it will not be + deleted until it is no longer attached to any program object, + for any rendering context (i.e., it must be detached from + wherever it was attached before it will be deleted). A value of + 0 for shader will be silently + ignored.

To determine whether an object has been flagged for + deletion, call + glGetShader + with arguments shader and + GL_DELETE_STATUS.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

Associated Gets

glGetAttachedShaders + with the program object to be queried

glGetShader + with arguments shader and + GL_DELETE_STATUS

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteSync.xml b/upstream-man-pages/man3/xhtml/glDeleteSync.xml new file mode 100644 index 0000000..28e356a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteSync.xml @@ -0,0 +1,31 @@ + + + +glDeleteSync

Name

glDeleteSync — delete a sync object

C Specification

void glDeleteSync(GLsync sync);
 

Parameters

sync

+ The sync object to be deleted. +

Description

+ glDeleteSync deletes the sync object specified by sync. If the fence command + corresponding to the specified sync object has completed, or if no glWaitSync + or glClientWaitSync commands are blocking on sync, + the object is deleted immediately. Otherwise, sync is flagged for deletion and will be deleted when + it is no longer associated with any fence command and is no longer blocking any glWaitSync + or glClientWaitSync command. In either case, after + glDeleteSync returns, the name sync is invalid and can no longer be used to + refer to the sync object. +

+ glDeleteSync will silently ignore a sync value of zero. +

Notes

+ glSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. +

Errors

+ GL_INVALID_VALUE is generated if sync is neither zero or the name of a sync object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteTextures.xml b/upstream-man-pages/man3/xhtml/glDeleteTextures.xml new file mode 100644 index 0000000..b49834f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteTextures.xml @@ -0,0 +1,36 @@ + + + +glDeleteTextures

Name

glDeleteTextures — delete named textures

C Specification

void glDeleteTextures(GLsizei  n,
 const GLuint *  textures);

Parameters

n

+ Specifies the number of textures to be deleted. +

textures

+ Specifies an array of textures to be deleted. +

Description

+ glDeleteTextures deletes n textures named by the elements of the array textures. + After a texture is deleted, it has no contents or dimensionality, + and its name is free for reuse (for example by glGenTextures). + If a texture that is currently bound is deleted, the binding reverts + to 0 (the default texture). +

+ glDeleteTextures silently ignores 0's and names that do not correspond to + existing textures. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsTexture +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDeleteVertexArrays.xml b/upstream-man-pages/man3/xhtml/glDeleteVertexArrays.xml new file mode 100644 index 0000000..0e3a01e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDeleteVertexArrays.xml @@ -0,0 +1,24 @@ + + + +glDeleteVertexArrays

Name

glDeleteVertexArrays — delete vertex array objects

C Specification

void glDeleteVertexArrays(GLsizei  n,
 const GLuint * arrays);

Parameters

n

+ Specifies the number of vertex array objects to be deleted. +

arrays

+ Specifies the address of an array containing the n names of the objects to be deleted. +

Description

+ glDeleteVertexArrays deletes n vertex array objects whose names are stored in the + array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is + again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero + and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDepthFunc.xml b/upstream-man-pages/man3/xhtml/glDepthFunc.xml new file mode 100644 index 0000000..9f255a4 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDepthFunc.xml @@ -0,0 +1,66 @@ + + + +glDepthFunc

Name

glDepthFunc — specify the value used for depth buffer comparisons

C Specification

void glDepthFunc(GLenum func);

Parameters

func

+ Specifies the depth comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. + The initial value is GL_LESS. +

Description

+ glDepthFunc specifies the function used to compare each incoming pixel depth value + with the depth value present in the depth buffer. + The comparison is performed only if depth testing is enabled. + (See glEnable and glDisable of GL_DEPTH_TEST.) +

+ func specifies the conditions under which the pixel will be drawn. + The comparison functions are as follows: +

GL_NEVER

+ Never passes. +

GL_LESS

+ Passes if the incoming depth value is less than the stored depth value. +

GL_EQUAL

+ Passes if the incoming depth value is equal to the stored depth value. +

GL_LEQUAL

+ Passes if the incoming depth value is less than or equal to + the stored depth value. +

GL_GREATER

+ Passes if the incoming depth value is greater than the stored depth value. +

GL_NOTEQUAL

+ Passes if the incoming depth value is not equal to the stored depth value. +

GL_GEQUAL

+ Passes if the incoming depth value is greater than or equal to + the stored depth value. +

GL_ALWAYS

+ Always passes. +

+ The initial value of func is GL_LESS. + Initially, depth testing is disabled. If depth testing is disabled or if no + depth buffer exists, it is as if the depth test always passes. +

Notes

+ Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS. +

Errors

+ GL_INVALID_ENUM is generated if func is not an accepted value. +

Associated Gets

+ glGet with argument GL_DEPTH_FUNC +

+ glIsEnabled with argument GL_DEPTH_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDepthMask.xml b/upstream-man-pages/man3/xhtml/glDepthMask.xml new file mode 100644 index 0000000..003682c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDepthMask.xml @@ -0,0 +1,36 @@ + + + +glDepthMask - OpenGL 3.3 Reference Pages

Name

glDepthMask — enable or disable writing into the depth buffer

C Specification

void glDepthMask(GLboolean flag);

Parameters

flag

+ Specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. +

Description

+ glDepthMask specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. +

Associated Gets

+ glGet with argument GL_DEPTH_WRITEMASK +

Notes

+ Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS (see glDepthFunc). +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. + Copyright © 2012 + Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDepthRange.xml b/upstream-man-pages/man3/xhtml/glDepthRange.xml new file mode 100644 index 0000000..e23972d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDepthRange.xml @@ -0,0 +1,64 @@ + + + +glDepthRange

Name

glDepthRange — specify mapping of depth values from normalized device coordinates to window coordinates

C Specification

void glDepthRange(GLclampd  nearVal,
 GLclampd  farVal);

Parameters

nearVal

+ Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. +

farVal

+ Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. +

Description

+ After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + glDepthRange specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + Thus, + the values accepted by glDepthRange are both clamped to this range + before they are accepted. +

+ The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. +

Notes

+ It is not necessary that nearVal be less than farVal. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. +

Associated Gets

+ glGet with argument GL_DEPTH_RANGE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDetachShader.xml b/upstream-man-pages/man3/xhtml/glDetachShader.xml new file mode 100644 index 0000000..6eddafd --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDetachShader.xml @@ -0,0 +1,28 @@ + + + +glDetachShader

Name

glDetachShader — Detaches a shader object from a program object to which it is attached

C Specification

void glDetachShader(GLuint  program,
 GLuint  shader);

Parameters

program

Specifies the program object from which to + detach the shader object.

shader

Specifies the shader object to be + detached.

Description

glDetachShader detaches the shader + object specified by shader from the + program object specified by program. This + command can be used to undo the effect of the command + glAttachShader.

If shader has already been flagged + for deletion by a call to + glDeleteShader + and it is not attached to any other program object, it will be + deleted after it has been detached.

Errors

GL_INVALID_VALUE is generated if either + program or shader + is a value that was not generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + shader is not attached to + program.

Associated Gets

glGetAttachedShaders + with the handle of a valid program object

glGetShader + with arguments shader and + GL_DELETE_STATUS

glIsProgram

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDisable.xml b/upstream-man-pages/man3/xhtml/glDisable.xml new file mode 100644 index 0000000..2e26c1f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDisable.xml @@ -0,0 +1,4 @@ + + + +glDisable diff --git a/upstream-man-pages/man3/xhtml/glDisableVertexAttribArray.xml b/upstream-man-pages/man3/xhtml/glDisableVertexAttribArray.xml new file mode 100644 index 0000000..3d93697 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDisableVertexAttribArray.xml @@ -0,0 +1,4 @@ + + + +glDisableVertexAttribArray.xml diff --git a/upstream-man-pages/man3/xhtml/glDisablei.xml b/upstream-man-pages/man3/xhtml/glDisablei.xml new file mode 100644 index 0000000..531742a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDisablei.xml @@ -0,0 +1,4 @@ + + + +glDisablei diff --git a/upstream-man-pages/man3/xhtml/glDrawArrays.xml b/upstream-man-pages/man3/xhtml/glDrawArrays.xml new file mode 100644 index 0000000..cd533ec --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawArrays.xml @@ -0,0 +1,66 @@ + + + +glDrawArrays

Name

glDrawArrays — render primitives from array data

C Specification

void glDrawArrays(GLenum  mode,
 GLint  first,
 GLsizei  count);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

first

+ Specifies the starting index in the enabled arrays. +

count

+ Specifies the number of indices to be rendered. +

Description

+ glDrawArrays specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glDrawArrays. +

+ When glDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed and how the array elements + construct those primitives. +

+ Vertex attributes that are modified by glDrawArrays have an + unspecified value after glDrawArrays returns. Attributes that aren't + modified remain well defined. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawArraysInstanced.xml b/upstream-man-pages/man3/xhtml/glDrawArraysInstanced.xml new file mode 100644 index 0000000..05193dd --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawArraysInstanced.xml @@ -0,0 +1,60 @@ + + + +glDrawArraysInstanced

Name

glDrawArraysInstanced — draw multiple instances of a range of elements

C Specification

void glDrawArraysInstanced(GLenum  mode,
 GLint  first,
 GLsizei  count,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. Symbolic constants GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY andGL_TRIANGLE_STRIP_ADJACENCY + are accepted. +

first

+ Specifies the starting index in the enabled arrays. +

count

+ Specifies the number of indices to be rendered. +

primcount

+ Specifies the number of instances of the specified range of indices to be rendered. +

Description

+ glDrawArraysInstanced behaves identically to glDrawArrays + except that primcount instances of the range of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. +

+ glDrawArraysInstanced has the same effect as: +

    if ( mode or count is invalid )
+        generate appropriate error
+    else {
+        for (int i = 0; i < primcount ; i++) {
+            instanceID = i;
+            glDrawArrays(mode, first, count);
+        }
+        instanceID = 0;
+    }

+

Notes

+ glDrawArraysInstanced is available only if the GL version is 3.1 or greater. +

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of + the accepted values. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_VALUE is generated if count or primcount are negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawBuffer.xml b/upstream-man-pages/man3/xhtml/glDrawBuffer.xml new file mode 100644 index 0000000..989d224 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawBuffer.xml @@ -0,0 +1,98 @@ + + + +glDrawBuffer

Name

glDrawBuffer — specify which color buffers are to be drawn into

C Specification

void glDrawBuffer(GLenum mode);

Parameters

mode

+ Specifies up to four color buffers to be drawn into. + Symbolic constants + GL_NONE, + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK + are accepted. + The initial value is GL_FRONT for single-buffered contexts, + and GL_BACK for double-buffered contexts. +

Description

+ When colors are written to the frame buffer, + they are written into the color buffers specified by glDrawBuffer. + The specifications are as follows: +

GL_NONE

+ No color buffers are written. +

GL_FRONT_LEFT

+ Only the front left color buffer is written. +

GL_FRONT_RIGHT

+ Only the front right color buffer is written. +

GL_BACK_LEFT

+ Only the back left color buffer is written. +

GL_BACK_RIGHT

+ Only the back right color buffer is written. +

GL_FRONT

+ Only the front left and front right color buffers are written. + If there is no front right color buffer, + only the front left color buffer is written. +

GL_BACK

+ Only the back left and back right color buffers are written. + If there is no back right color buffer, + only the back left color buffer is written. +

GL_LEFT

+ Only the front left and back left color buffers are written. + If there is no back left color buffer, + only the front left color buffer is written. +

GL_RIGHT

+ Only the front right and back right color buffers are written. + If there is no back right color buffer, + only the front right color buffer is written. +

GL_FRONT_AND_BACK

+ All the front and back color buffers + (front left, front right, back left, back right) + are written. + If there are no back color buffers, + only the front left and front right color buffers are written. + If there are no right color buffers, + only the front left and back left color buffers are written. + If there are no right or back color buffers, + only the front left color buffer is written. +

+ If more than one color buffer is selected for drawing, + then blending or logical operations are computed and applied independently + for each color buffer and can produce different results in each buffer. +

+ Monoscopic contexts include only + left + buffers, and stereoscopic contexts include both + left + and + right + buffers. + Likewise, single-buffered contexts include only + front + buffers, and double-buffered contexts include both + front + and + back + buffers. + The context is selected at GL initialization. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if none of the buffers indicated + by mode exists. +

Associated Gets

+ glGet with argument GL_DRAW_BUFFER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawBuffers.xml b/upstream-man-pages/man3/xhtml/glDrawBuffers.xml new file mode 100644 index 0000000..b3e73db --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawBuffers.xml @@ -0,0 +1,71 @@ + + + +glDrawBuffers

Name

glDrawBuffers — Specifies a list of color buffers to be drawn into

C Specification

void glDrawBuffers(GLsizei  n,
 const GLenum * bufs);

Parameters

n

Specifies the number of buffers in + bufs.

bufs

Points to an array of symbolic constants + specifying the buffers into which fragment colors or + data values will be written.

Description

glDrawBuffers defines an array of + buffers into which outputs from the fragment shader data will + be written. If a fragment shader writes a value + to one or more user defined output + variables, then the value of each variable will be written into the + buffer specified at a location within bufs + corresponding to the location assigned to that user defined output. + The draw buffer used for user defined outputs assigned to locations + greater than or equal to n is implicitly set + to GL_NONE and any data written to such an output + is discarded.

The symbolic constants contained in + bufs may be any of the following:

GL_NONE

The fragment shader output value is not written into + any color buffer.

GL_FRONT_LEFT

The fragment shader output value is written into the + front left color buffer.

GL_FRONT_RIGHT

The fragment shader output value is written into the + front right color buffer.

GL_BACK_LEFT

The fragment shader output value is written into the + back left color buffer.

GL_BACK_RIGHT

The fragment shader output value is written into the + back right color buffer.

GL_COLOR_ATTACHMENTn

The fragment shader output value is written into the + nth color attachment of the current framebuffer. + n may range from 0 to the value of + GL_MAX_COLOR_ATTACHMENTS.

Except for GL_NONE, the preceding + symbolic constants may not appear more than once in + bufs. The maximum number of draw buffers + supported is implementation dependent and can be queried by + calling + glGet + with the argument GL_MAX_DRAW_BUFFERS.

Notes

The symbolic constants GL_FRONT, + GL_BACK, GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK are not allowed in the + bufs array since they may refer to + multiple buffers.

If a fragment shader does not write to a user defined output variable, + the values of the fragment + colors following shader execution are undefined. For each + fragment generated in this situation, a different value may be + written into each of the buffers specified by + bufs.

Errors

GL_INVALID_ENUM is generated if one of the + values in bufs is not an accepted + value.

GL_INVALID_ENUM is generated if the GL is bound + to the default framebuffer and one or more of the values in + bufs is one of the GL_COLOR_ATTACHMENTn + tokens.

GL_INVALID_ENUM is generated if the GL is bound + to a framebuffer object and one or more of the values in bufs + is anything other than GL_NONE or one of the + GL_COLOR_ATTACHMENTSn tokens.

GL_INVALID_ENUM is generated if + n is less than 0.

GL_INVALID_OPERATION is generated if a + symbolic constant other than GL_NONE + appears more than once in bufs.

GL_INVALID_OPERATION is generated if any of + the entries in bufs (other than + GL_NONE ) indicates a color buffer that + does not exist in the current GL context.

GL_INVALID_VALUE is generated if + n is greater than + GL_MAX_DRAW_BUFFERS.

Associated Gets

glGet + with argument GL_MAX_DRAW_BUFFERS

glGet + with argument GL_DRAW_BUFFERi where + i indicates the number of the draw buffer + whose value is to be queried

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawElements.xml b/upstream-man-pages/man3/xhtml/glDrawElements.xml new file mode 100644 index 0000000..ecf02fa --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawElements.xml @@ -0,0 +1,71 @@ + + + +glDrawElements

Name

glDrawElements — render primitives from array data

C Specification

void glDrawElements(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 const GLvoid *  indices);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

Description

+ glDrawElements specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL function + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to + construct a sequence of primitives with a single + call to glDrawElements. +

+ When glDrawElements is called, it uses count sequential elements from an + enabled array, starting at indices to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed and how the array elements construct these primitives. If + more than one array is enabled, each is used. +

+ Vertex attributes that are modified by glDrawElements have an + unspecified value after glDrawElements returns. Attributes that aren't + modified maintain their previous values. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawElementsBaseVertex.xml b/upstream-man-pages/man3/xhtml/glDrawElementsBaseVertex.xml new file mode 100644 index 0000000..1d0f69d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawElementsBaseVertex.xml @@ -0,0 +1,50 @@ + + + +glDrawElementsBaseVertex

Name

glDrawElementsBaseVertex — render primitives from array data with a per-element offset

C Specification

void glDrawElementsBaseVertex(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLint  basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + and GL_TRIANGLES are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

Description

+ glDrawElementsBaseVertex behaves identically to + glDrawElements except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. +

Notes

glDrawElementsBaseVertex is only supported if the GL version is 3.2 or greater, or if + the ARB_draw_elements_base_vertex extension is supported. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawElementsInstanced.xml b/upstream-man-pages/man3/xhtml/glDrawElementsInstanced.xml new file mode 100644 index 0000000..7a44b89 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawElementsInstanced.xml @@ -0,0 +1,72 @@ + + + +glDrawElementsInstanced

Name

glDrawElementsInstanced — draw multiple instances of a set of elements

C Specification

void glDrawElementsInstanced(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 const void *  indices,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the number of instances of the specified range of indices to be rendered. +

Description

+ glDrawElementsInstanced behaves identically to glDrawElements + except that primcount instances of the set of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. +

+ glDrawElementsInstanced has the same effect as: +

    if (mode, count, or type is invalid )
+        generate appropriate error
+    else {
+        for (int i = 0; i < primcount ; i++) {
+            instanceID = i;
+            glDrawElements(mode, count, type, indices);
+        }
+        instanceID = 0;
+    }

+

Notes

+ glDrawElementsInstanced is available only if the GL version is 3.1 or greater. +

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES. +

+ GL_INVALID_VALUE is generated if count or primcount are negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawElementsInstancedBaseVertex.xml b/upstream-man-pages/man3/xhtml/glDrawElementsInstancedBaseVertex.xml new file mode 100644 index 0000000..922a32a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawElementsInstancedBaseVertex.xml @@ -0,0 +1,51 @@ + + + +glDrawElementsInstancedBaseVertex

Name

glDrawElementsInstancedBaseVertex — render multiple instances of a set of primitives from array data with a per-element offset

C Specification

void glDrawElementsInstancedBaseVertex(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLsizei  primcount,
 GLint  basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + and GL_TRIANGLES are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the number of instances of the indexed geometry that should be drawn. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

Description

+ glDrawElementsInstancedBaseVertex behaves identically to + glDrawElementsInstanced except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. +

Notes

glDrawElementsInstancedBaseVertex is only supported if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count or primcount is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawRangeElements.xml b/upstream-man-pages/man3/xhtml/glDrawRangeElements.xml new file mode 100644 index 0000000..14e3150 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawRangeElements.xml @@ -0,0 +1,126 @@ + + + +glDrawRangeElements

Name

glDrawRangeElements — render primitives from array data

C Specification

void glDrawRangeElements(GLenum  mode,
 GLuint  start,
 GLuint  end,
 GLsizei  count,
 GLenum  type,
 const GLvoid *  indices);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

start

+ Specifies the minimum array index contained in indices. +

end

+ Specifies the maximum array index contained in indices. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

Description

+ glDrawRangeElements is a restricted form of glDrawElements. mode, start, end, + and count match the corresponding arguments to glDrawElements, with + the additional constraint that all values in the arrays count must lie + between start and end, inclusive. +

+ Implementations denote recommended maximum amounts of vertex and + index data, + which may be queried by calling glGet with argument + GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. + If + + + + end + - + start + + + 1 + + + is greater than the value of + GL_MAX_ELEMENTS_VERTICES, or if count is greater than the value of + GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced + performance. There is no requirement that all vertices in the range + + + + start + end + + + be referenced. However, the implementation may + partially process unused vertices, reducing performance from what could + be achieved with an optimal index set. +

+ When glDrawRangeElements is called, it uses count sequential elements from an + enabled array, starting at start to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed, and how the array elements construct these primitives. If + more than one array is enabled, each is used. +

+ Vertex attributes that are modified by glDrawRangeElements have an + unspecified value after glDrawRangeElements returns. Attributes that aren't + modified maintain their previous values. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ It is an error for indices to lie outside the range + + + + start + end + + , + but implementations may not check for this situation. Such indices + cause implementation-dependent behavior. +

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_VALUE is generated if + + + + end + < + start + + . +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Associated Gets

+ glGet with argument GL_MAX_ELEMENTS_VERTICES +

+ glGet with argument GL_MAX_ELEMENTS_INDICES +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glDrawRangeElementsBaseVertex.xml b/upstream-man-pages/man3/xhtml/glDrawRangeElementsBaseVertex.xml new file mode 100644 index 0000000..895de72 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glDrawRangeElementsBaseVertex.xml @@ -0,0 +1,60 @@ + + + +glDrawRangeElementsBaseVertex

Name

glDrawRangeElementsBaseVertex — render primitives from array data with a per-element offset

C Specification

void glDrawRangeElementsBaseVertex(GLenum  mode,
 GLuint  start,
 GLuint  end,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLint  basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + and GL_TRIANGLES are accepted. +

start

+ Specifies the minimum array index contained in indices. +

end

+ Specifies the maximum array index contained in indices. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

Description

+ glDrawRangeElementsBaseVertex is a restricted form of + glDrawElementsBaseVertex. mode, + start, end, count and basevertex match + the corresponding arguments to glDrawElementsBaseVertex, with the additional + constraint that all values in the array indices must lie between start and end, + inclusive, prior to adding basevertex. Index values lying outside the range [start, end] + are treated in the same way as glDrawElementsBaseVertex. The ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled + array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to + 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. +

Notes

glDrawRangeElementsBaseVertex is only supported if the GL version is 3.2 or greater, or if + the ARB_draw_elements_base_vertex extension is supported. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_VALUE is generated if end < start. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glEnable.xml b/upstream-man-pages/man3/xhtml/glEnable.xml new file mode 100644 index 0000000..40e5823 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glEnable.xml @@ -0,0 +1,202 @@ + + + +glEnable - OpenGL 3.3 Reference Pages

Name

glEnable — enable or disable server-side GL capabilities

C Specification

void glEnable(GLenum cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

C Specification

void glDisable(GLenum cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

C Specification

void glEnablei(GLenum cap, GLuint index);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

index

+ Specifies the index of the swtich to enable. +

C Specification

void glDisablei(GLenum cap, GLuint index);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

index

+ Specifies the index of the swtich to disable. +

Description

+ glEnable and glDisable enable and disable various capabilities. + Use glIsEnabled or glGet to determine the current setting + of any capability. The initial value for each capability with the + exception of GL_DITHER and GL_MULTISAMPLE is + GL_FALSE. The initial value for + GL_DITHER and GL_MULTISAMPLE is GL_TRUE. +

+ Both glEnable and glDisable take a single argument, cap, + which can assume one of the following values: +

+ Some of the GL's capabilities are indicated. glEnablei and glDisablei enable and disable + indexed capabilities. +

GL_BLEND

+

+ If enabled, + blend the computed fragment color values with the values in the color + buffers. See glBlendFunc. +

GL_CLIP_DISTANCEi

+

+ If enabled, clip geometry against user-defined half space i. +

GL_COLOR_LOGIC_OP

+

+ If enabled, + apply the currently selected logical operation to the computed fragment + color and color buffer values. See glLogicOp. +

GL_CULL_FACE

+

+ If enabled, + cull polygons based on their winding in window coordinates. + See glCullFace. +

GL_DEPTH_CLAMP

+

+ If enabled, + the + + + -wc≤zc≤wc + + plane equation is ignored by view volume clipping (effectively, there is no near or + far plane clipping). + See glDepthRange. +

GL_DEPTH_TEST

+

+ If enabled, + do depth comparisons and update the depth buffer. Note that even if + the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. See + glDepthFunc and + glDepthRange. +

GL_DITHER

+

+ If enabled, + dither color components or indices before they are written to the + color buffer. +

GL_FRAMEBUFFER_SRGB

+

+ If enabled + and the value of GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING for the + framebuffer attachment corresponding to the destination buffer is GL_SRGB, + the R, G, and B destination color values (after conversion from fixed-point to floating-point) + are considered to be encoded for the sRGB color space and hence are linearized prior to + their use in blending. +

GL_LINE_SMOOTH

+

+ If enabled, + draw lines with correct filtering. + Otherwise, + draw aliased lines. + See glLineWidth. +

GL_MULTISAMPLE

+

+ If enabled, + use multiple fragment samples in computing the final color of a pixel. + See glSampleCoverage. +

GL_POLYGON_OFFSET_FILL

+

+ If enabled, and if the polygon is rendered in + GL_FILL mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. +

GL_POLYGON_OFFSET_LINE

+

+ If enabled, and if the polygon is rendered in + GL_LINE mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. +

GL_POLYGON_OFFSET_POINT

+

+ If enabled, an offset is added to depth values of a polygon's fragments + before the depth comparison is performed, if the polygon is rendered in + GL_POINT mode. See glPolygonOffset. +

GL_POLYGON_SMOOTH

+

+ If enabled, draw polygons with proper filtering. + Otherwise, draw aliased polygons. For correct antialiased polygons, + an alpha buffer is needed and the polygons must be sorted front to + back. +

GL_PRIMITIVE_RESTART

+

+ Enables primitive restarting. If enabled, any one of the draw commands + which transfers a set of generic attribute array elements to the GL will restart + the primitive when the index of the vertex is equal to the primitive restart index. + See glPrimitiveRestartIndex. +

GL_SAMPLE_ALPHA_TO_COVERAGE

+

+ If enabled, + compute a temporary coverage value where each bit is determined by the + alpha value at the corresponding sample location. The temporary coverage + value is then ANDed with the fragment coverage value. +

GL_SAMPLE_ALPHA_TO_ONE

+

+ If enabled, + each sample alpha value is replaced by the maximum representable alpha value. +

GL_SAMPLE_COVERAGE

+

+ If enabled, + the fragment's coverage is ANDed with the temporary coverage value. If + GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage + value. + See glSampleCoverage. +

GL_SCISSOR_TEST

+

+ If enabled, + discard fragments that are outside the scissor rectangle. + See glScissor. +

GL_STENCIL_TEST

+

+ If enabled, + do stencil testing and update the stencil buffer. + See glStencilFunc and glStencilOp. +

GL_TEXTURE_CUBE_MAP_SEAMLESS

+

+ If enabled, modifies the way sampling is performed on cube map textures. See the spec for more information. +

GL_PROGRAM_POINT_SIZE

+

+ If enabled + and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin + gl_PointSize and clamped to the implementation-dependent point size range. +

Errors

+ GL_INVALID_ENUM is generated if cap is not one of the values + listed previously. +

+ GL_INVALID_VALUE is generated by glEnablei and glDisablei + if index is greater than or equal to the number of indexed capabilities for cap. +

Notes

+ GL_PRIMITIVE_RESTART is available only if the GL version is 3.1 or greater. +

+ GL_TEXTURE_CUBE_MAP_SEAMLESS is available only if the GL version is 3.2 or greater. +

+ Any token accepted by glEnable or glDisable is also accepted by + glEnablei and glDisablei, but if the capability is not indexed, + the maximum value that index may take is zero. +

+ In general, passing an indexed capability to glEnable or glDisable + will enable or disable that capability for all indices, resepectively. +

Associated Gets

+ glIsEnabled +

+ glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glEnableVertexAttribArray.xml b/upstream-man-pages/man3/xhtml/glEnableVertexAttribArray.xml new file mode 100644 index 0000000..642a104 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glEnableVertexAttribArray.xml @@ -0,0 +1,41 @@ + + + +glEnableVertexAttribArray

Name

glEnableVertexAttribArray — Enable or disable a generic vertex attribute array

C Specification

void glEnableVertexAttribArray(GLuint  index);
void glDisableVertexAttribArray(GLuint  index);

Parameters

index

Specifies the index of the generic vertex + attribute to be enabled or disabled.

Description

glEnableVertexAttribArray enables the + generic vertex attribute array specified by + index. + glDisableVertexAttribArray disables the + generic vertex attribute array specified by + index. By default, all client-side + capabilities are disabled, including all generic vertex + attribute arrays. If enabled, the values in the generic vertex + attribute array will be accessed and used for rendering when + calls are made to vertex array commands such as + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + or + glMultiDrawArrays.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttrib + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_ENABLED +

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glEnablei.xml b/upstream-man-pages/man3/xhtml/glEnablei.xml new file mode 100644 index 0000000..6137736 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glEnablei.xml @@ -0,0 +1,4 @@ + + + +REFENTRY WITHOUT TITLE???

WRITE ME!

diff --git a/upstream-man-pages/man3/xhtml/glEndConditionalRender.xml b/upstream-man-pages/man3/xhtml/glEndConditionalRender.xml new file mode 100644 index 0000000..36a7309 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glEndConditionalRender.xml @@ -0,0 +1,4 @@ + + + +glBeginConditionalRender diff --git a/upstream-man-pages/man3/xhtml/glEndQuery.xml b/upstream-man-pages/man3/xhtml/glEndQuery.xml new file mode 100644 index 0000000..7cc406b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glEndQuery.xml @@ -0,0 +1,4 @@ + + + +glEndQuery diff --git a/upstream-man-pages/man3/xhtml/glEndTransformFeedback.xml b/upstream-man-pages/man3/xhtml/glEndTransformFeedback.xml new file mode 100644 index 0000000..63904e1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glEndTransformFeedback.xml @@ -0,0 +1,4 @@ + + + +glEndTransformFeedback diff --git a/upstream-man-pages/man3/xhtml/glFenceSync.xml b/upstream-man-pages/man3/xhtml/glFenceSync.xml new file mode 100644 index 0000000..40e6196 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFenceSync.xml @@ -0,0 +1,46 @@ + + + +glFenceSync

Name

glFenceSync — create a new sync object and insert it into the GL command stream

C Specification

GLsync glFenceSync(GLenum condition,
 GLbitfield flags);
 

Parameters

condition

+ Specifies the condition that must be met to set the sync object's state to signaled. condition + must be GL_SYNC_GPU_COMMANDS_COMPLETE. +

flags

+ Specifies a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined + for this operation and flags must be zero.[1] +

Description

+ glFenceSync creates a new fence sync object, inserts a fence command into the GL command stream and + associates it with that sync object, and returns a non-zero name corresponding to the sync object. +

+ When the specified condition of the sync object is satisfied by the fence command, the sync object + is signaled by the GL, causing any glWaitSync, + glClientWaitSync commands blocking in sync + to unblock. No other state is affected by glFenceSync or by the execution + of the associated fence command. +

+ condition must be GL_SYNC_GPU_COMMANDS_COMPLETE. This condition is satisfied by + completion of the fence command corresponding to the sync object and all preceding commands in the same command stream. + The sync object will not be signaled until all effects from these commands on GL client and server state and the + framebuffer are fully realized. Note that completion of the fence command occurs once the state of the corresponding sync + object has been changed, but commands waiting on that sync object may not be unblocked until after the fence command completes. +

Notes

glFenceSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. +

Errors

+ GL_INVALID_ENUM is generated if condition is not + GL_SYNC_GPU_COMMANDS_COMPLETE. +

+ GL_INVALID_VALUE is generated if flags is not zero. +

+ Additionally, if glFenceSync fails, it will return zero. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +



[1] + flags is a placeholder for anticipated future extensions of fence sync object capabilities. +

diff --git a/upstream-man-pages/man3/xhtml/glFinish.xml b/upstream-man-pages/man3/xhtml/glFinish.xml new file mode 100644 index 0000000..fe1a36f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFinish.xml @@ -0,0 +1,19 @@ + + + +glFinish

Name

glFinish — block until all GL execution is complete

C Specification

void glFinish( void);

Description

+ glFinish does not return until the effects of all previously + called GL commands are complete. + Such effects include all changes to GL state, + all changes to connection state, + and all changes to the frame buffer contents. +

Notes

+ glFinish requires a round trip to the server. +

See Also

+ glFlush +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glFlush.xml b/upstream-man-pages/man3/xhtml/glFlush.xml new file mode 100644 index 0000000..c5a4cf3 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFlush.xml @@ -0,0 +1,32 @@ + + + +glFlush

Name

glFlush — force execution of GL commands in finite time

C Specification

void glFlush( void);
 

Description

+ Different GL implementations buffer commands in several different locations, + including network buffers and the graphics accelerator itself. + glFlush empties all of these buffers, + causing all issued commands to be executed as quickly as + they are accepted by the actual rendering engine. + Though this execution may not be completed in any particular + time period, + it does complete in finite time. +

+ Because any GL program might be executed over a network, + or on an accelerator that buffers commands, + all programs should call glFlush whenever they count on having + all of their previously issued commands completed. + For example, + call glFlush before waiting for user input that depends on + the generated image. +

Notes

+ glFlush can return at any time. + It does not wait until the execution of all previously + issued GL commands is complete. +

See Also

+ glFinish +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glFlushMappedBufferRange.xml b/upstream-man-pages/man3/xhtml/glFlushMappedBufferRange.xml new file mode 100644 index 0000000..e1d07c1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFlushMappedBufferRange.xml @@ -0,0 +1,36 @@ + + + +glFlushMappedBufferRange - OpenGL 3.3 Reference Pages

Name

glFlushMappedBufferRange — indicate modifications to a range of a mapped buffer

C Specification

void glFlushMappedBufferRange(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  length);

Parameters

target

+ Specifies the target of the flush operation. target must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER. +

offset

+ Specifies the start of the buffer subrange, in basic machine units. +

length

+ Specifies the length of the buffer subrange, in basic machine units. +

Description

+ glFlushMappedBufferRange indicates that modifications have been made to a range of a mapped buffer. + The buffer must previously have been mapped with the GL_MAP_FLUSH_EXPLICIT flag. offset + and length indicate the modified subrange of the mapping, in basic units. The specified subrange to flush + is relative to the start of the currently mapped range of the buffer. glFlushMappedBufferRange may be called + multiple times to indicate distinct subranges of the mapping which require flushing. +

Errors

+ GL_INVALID_VALUE is generated if offset or length + is negative, or if offset + length exceeds the size of the mapping. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer bound to target is not + mapped, or is mapped without the GL_MAP_FLUSH_EXPLICIT flag. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glFramebufferRenderbuffer.xml b/upstream-man-pages/man3/xhtml/glFramebufferRenderbuffer.xml new file mode 100644 index 0000000..6dffe64 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFramebufferRenderbuffer.xml @@ -0,0 +1,55 @@ + + + +glFramebufferRenderbuffer - OpenGL 3.3 Reference Pages

Name

glFramebufferRenderbuffer — attach a renderbuffer as a logical buffer to the currently bound framebuffer object

C Specification

void glFramebufferRenderbuffer(GLenum  target,
 GLenum  attachment,
 GLenum  renderbuffertarget,
 GLuint  renderbuffer);

Parameters

target

+ Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. +

attachment

+ Specifies the attachment point of the framebuffer. +

renderbuffertarget

+ Specifies the renderbuffer target and must be GL_RENDERBUFFER. +

renderbuffer

+ Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach. +

Description

+ glFramebufferRenderbuffer attaches a renderbuffer as one of the logical buffers of the + currently bound framebuffer object. renderbuffer is the name of the renderbuffer object + to attach and must be either zero, or the name of an existing renderbuffer object of type renderbuffertarget. + If renderbuffer is not zero and if glFramebufferRenderbuffer is + successful, then the renderbuffer name renderbuffer will be used as the logical buffer + identified by attachment of the framebuffer currently bound to target. +

+ The value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE for the specified attachment point is + set to GL_RENDERBUFFER and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + is set to renderbuffer. All other state values of the attachment point specified by + attachment are set to their default values. No change is made to the state of the renderbuuffer + object and any previous attachment to the attachment logical buffer of the framebuffer + target is broken. +

+ Calling glFramebufferRenderbuffer with the renderbuffer name zero will detach the image, if any, + identified by attachment, in the framebuffer currently bound to target. + All state values of the attachment point specified by attachment in the object bound to target are set to their default values. +

+ Setting attachment to the value GL_DEPTH_STENCIL_ATTACHMENT is a special + case causing both the depth and stencil attachments of the framebuffer object to be set to renderbuffer, + which should have the base internal format GL_DEPTH_STENCIL. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glFramebufferTexture.xml b/upstream-man-pages/man3/xhtml/glFramebufferTexture.xml new file mode 100644 index 0000000..967daa1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFramebufferTexture.xml @@ -0,0 +1,97 @@ + + + +glFramebufferTexture - OpenGL 3.3 Reference Pages

Name

glFramebufferTexture — attach a level of a texture object as a logical buffer to the currently bound framebuffer object

C Specification

void glFramebufferTexture(GLenum  target,
 GLenum  attachment,
 GLuint  texture,
 GLint  level);
void glFramebufferTexture1D(GLenum  target,
 GLenum  attachment,
 GLenum  textarget,
 GLuint  texture,
 GLint  level);
void glFramebufferTexture2D(GLenum  target,
 GLenum  attachment,
 GLenum  textarget,
 GLuint  texture,
 GLint  level);
void glFramebufferTexture3D(GLenum  target,
 GLenum  attachment,
 GLenum  textarget,
 GLuint  texture,
 GLint  level,
 GLint  layer);

Parameters

target

+ Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. +

attachment

+ Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. +

textarget

+ For glFramebufferTexture1D, glFramebufferTexture2D and + glFramebufferTexture3D, specifies what type of texture is expected + in the texture parameter, or for cube map textures, which face is to be attached. +

texture

+ Specifies the texture object to attach to the framebuffer attachment point named by attachment. +

level

+ Specifies the mipmap level of texture to attach. +

Description

+ glFramebufferTexture, glFramebufferTexture1D, glFramebufferTexture2D, + and glFramebufferTexture attach a selected mipmap level or image of a texture object as one of the + logical buffers of the framebuffer object currently bound to target. target must + be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. +

+ attachment specifies the logical attachment of the framebuffer and must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + i in GL_COLOR_ATTACHMENTi may range from zero to + the value of GL_MAX_COLOR_ATTACHMENTS - 1. Attaching a level of a texture to + GL_DEPTH_STENCIL_ATTACHMENT is equivalent to attaching that level to both the + GL_DEPTH_ATTACHMENT and the GL_STENCIL_ATTACHMENT + attachment points simultaneously. +

+ textarget specifies what type of texture is named by texture, and for + cube map textures, specifies the face that is to be attached. If texture is not zero, it + must be the name of an existing texture with type textarget, unless it is a cube map + texture, in which case textarget must be GL_TEXTURE_CUBE_MAP_POSITIVE_X + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ If texture is non-zero, the specified level of the texture object named + texture is attached to the framebfufer attachment point named by attachment. + For glFramebufferTexture1D, glFramebufferTexture2D, and + glFramebufferTexture3D, texture must be zero or the name of an existing + texture with a target of textarget, or texture must be the name + of an existing cube-map texture and textarget must be one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ If textarget is GL_TEXTURE_RECTANGLE, GL_TEXTURE_2D_MULTISAMPLE, + or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, then level must be zero. If textarget + is GL_TEXTURE_3D, then level must be greater than or equal to zero and less than or equal to log2 + of the value of GL_MAX_3D_TEXTURE_SIZE. If textarget is one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, then level must be greater + than or equal to zero and less than or equal to log2 of the value of GL_MAX_CUBE_MAP_TEXTURE_SIZE. For all other + values of textarget, level must be greater than or equal to zero and no larger than log2 + of the value of GL_MAX_TEXTURE_SIZE. +

+ layer specifies the layer of a 2-dimensional image within a 3-dimensional texture. +

+ For glFramebufferTexture1D, if texture is not zero, then textarget must + be GL_TEXTURE_1D. For glFramebufferTexture2D, if texture is not zero, + textarget must be one of GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_2D_MULTISAMPLE. For glFramebufferTexture3D, if texture is + not zero, then textarget must be GL_TEXTURE_3D. +

Notes

+ glFramebufferTexture is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

+ GL_INVALID_OPERATION is generated if textarget and texture + are not compatible. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glFramebufferTexture1D.xml b/upstream-man-pages/man3/xhtml/glFramebufferTexture1D.xml new file mode 100644 index 0000000..97b6efc --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFramebufferTexture1D.xml @@ -0,0 +1,4 @@ + + + +glFramebufferTexture1D diff --git a/upstream-man-pages/man3/xhtml/glFramebufferTexture2D.xml b/upstream-man-pages/man3/xhtml/glFramebufferTexture2D.xml new file mode 100644 index 0000000..568c4b2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFramebufferTexture2D.xml @@ -0,0 +1,4 @@ + + + +glFramebufferTexture2D diff --git a/upstream-man-pages/man3/xhtml/glFramebufferTexture3D.xml b/upstream-man-pages/man3/xhtml/glFramebufferTexture3D.xml new file mode 100644 index 0000000..d949267 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFramebufferTexture3D.xml @@ -0,0 +1,4 @@ + + + +glFramebufferTexture3D diff --git a/upstream-man-pages/man3/xhtml/glFramebufferTextureLayer.xml b/upstream-man-pages/man3/xhtml/glFramebufferTextureLayer.xml new file mode 100644 index 0000000..8095cf2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFramebufferTextureLayer.xml @@ -0,0 +1,51 @@ + + + +glFramebufferTextureLayer

Name

glFramebufferTextureLayer — attach a single layer of a texture to a framebuffer

C Specification

void glFramebufferTextureLayer(GLenum  target,
 GLenum  attachment,
 GLuint  texture,
 GLint  level,
 GLint  layer);

Parameters

target

+ Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. +

attachment

+ Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. +

texture

+ Specifies the texture object to attach to the framebuffer attachment point named by attachment. +

level

+ Specifies the mipmap level of texture to attach. +

layer

+ Specifies the layer of texture to attach. +

Description

+ glFramebufferTextureLayer operates like glFramebufferTexture, + except that only a single layer of the texture level, given by layer, is attached to the attachment point. + If texture is not zero, layer must be greater than or equal to zero. + texture must either be zero or the name of an existing three-dimensional texture, one- or two-dimensional array texture, + or multisample array texture. +

Notes

+ glFramebufferTextureLayer is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if attachment is not one of the accepted tokens. +

+ GL_INVALID_VALUE is generated if texture is not zero or the name of an existing + texture object. +

+ GL_INVALID_VALUE is generated if texture is not zero and layer + is negative. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

+ GL_INVALID_OPERATION is generated if texture is not zero or the name of an existing cube map texture. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glFrontFace.xml b/upstream-man-pages/man3/xhtml/glFrontFace.xml new file mode 100644 index 0000000..ebf5944 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glFrontFace.xml @@ -0,0 +1,45 @@ + + + +glFrontFace

Name

glFrontFace — define front- and back-facing polygons

C Specification

void glFrontFace(GLenum mode);
 

Parameters

mode

+ Specifies the orientation of front-facing polygons. + GL_CW and GL_CCW are accepted. + The initial value is GL_CCW. +

Description

+ In a scene composed entirely of opaque closed surfaces, + back-facing polygons are never visible. + Eliminating these invisible polygons has the obvious benefit + of speeding up the rendering of the image. + To enable and disable elimination of back-facing polygons, call glEnable + and glDisable with argument GL_CULL_FACE. +

+ The projection of a polygon to window coordinates is said to have + clockwise winding if an imaginary object following the path + from its first vertex, + its second vertex, + and so on, + to its last vertex, + and finally back to its first vertex, + moves in a clockwise direction about the interior of the polygon. + The polygon's winding is said to be counterclockwise if the imaginary + object following the same path moves in a counterclockwise direction + about the interior of the polygon. + glFrontFace specifies whether polygons with clockwise winding in window coordinates, + or counterclockwise winding in window coordinates, + are taken to be front-facing. + Passing GL_CCW to mode selects counterclockwise polygons as + front-facing; + GL_CW selects clockwise polygons as front-facing. + By default, counterclockwise polygons are taken to be front-facing. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

Associated Gets

+ glGet with argument GL_FRONT_FACE +

See Also

+ glCullFace, +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenBuffers.xml b/upstream-man-pages/man3/xhtml/glGenBuffers.xml new file mode 100644 index 0000000..050a27f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenBuffers.xml @@ -0,0 +1,33 @@ + + + +glGenBuffers

Name

glGenBuffers — generate buffer object names

C Specification

void glGenBuffers(GLsizei  n,
 GLuint *  buffers);

Parameters

n

+ Specifies the number of buffer object names to be generated. +

buffers

+ Specifies an array in which the generated buffer object names are stored. +

Description

+ glGenBuffers returns n buffer object names in buffers. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenBuffers. +

+ Buffer object names returned by a call to glGenBuffers are not returned by + subsequent calls, unless they are first deleted with + glDeleteBuffers. +

+ No buffer objects are associated with the returned buffer object names until they are first bound by calling + glBindBuffer. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsBuffer +

See Also

+ glBindBuffer, + glDeleteBuffers, + glGet +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenFramebuffers.xml b/upstream-man-pages/man3/xhtml/glGenFramebuffers.xml new file mode 100644 index 0000000..ac32c0e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenFramebuffers.xml @@ -0,0 +1,28 @@ + + + +glGenFramebuffers

Name

glGenFramebuffers — generate framebuffer object names

C Specification

void glGenFramebuffers(GLsizei n,
 GLuint *ids);
 

Parameters

n

+ Specifies the number of framebuffer object names to generate. +

ids

+ Specifies an array in which the generated framebuffer object names are stored. +

Description

+ glGenFramebuffers returns n framebuffer object names in ids. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenFramebuffers. +

+ Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteFramebuffers. +

+ The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, + but they acquire state and type only when they are first bound. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenQueries.xml b/upstream-man-pages/man3/xhtml/glGenQueries.xml new file mode 100644 index 0000000..73a9185 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenQueries.xml @@ -0,0 +1,33 @@ + + + +glGenQueries - OpenGL 3.3 Reference Pages

Name

glGenQueries — generate query object names

C Specification

void glGenQueries(GLsizei n, GLuint * ids);

Parameters

n

+ Specifies the number of query object names to be generated. +

ids

+ Specifies an array in which the generated query object names are stored. +

Description

+ glGenQueries returns n query object names in ids. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenQueries. +

+ Query object names returned by a call to glGenQueries are not returned by + subsequent calls, unless they are first deleted with + glDeleteQueries. +

+ No query objects are associated with the returned query object names until they are first used by calling + glBeginQuery. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenRenderbuffers.xml b/upstream-man-pages/man3/xhtml/glGenRenderbuffers.xml new file mode 100644 index 0000000..ae2f7d5 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenRenderbuffers.xml @@ -0,0 +1,28 @@ + + + +glGenRenderbuffers

Name

glGenRenderbuffers — generate renderbuffer object names

C Specification

void glGenRenderbuffers(GLsizei n,
 GLuint *renderbuffers);
 

Parameters

n

+ Specifies the number of renderbuffer object names to generate. +

renderbuffers

+ Specifies an array in which the generated renderbuffer object names are stored. +

Description

+ glGenRenderbuffers returns n renderbuffer object names in renderbuffers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenRenderbuffers. +

+ Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteRenderbuffers. +

+ The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, + but they acquire state and type only when they are first bound. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenSamplers.xml b/upstream-man-pages/man3/xhtml/glGenSamplers.xml new file mode 100644 index 0000000..f9c0d01 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenSamplers.xml @@ -0,0 +1,31 @@ + + + +glGenSamplers

Name

glGenSamplers — generate sampler object names

C Specification

void glGenSamplers(GLsizei n,
 GLuint *samplers);
 

Parameters

n

+ Specifies the number of sampler object names to generate. +

samplers

+ Specifies an array in which the generated sampler object names are stored. +

Description

+ glGenSamplers returns n sampler object names in samplers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenSamplers. +

+ Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless + they are first deleted with glDeleteSamplers. +

+ The names returned in samplers are marked as used, for the purposes of glGenSamplers only, + but they acquire state and type only when they are first bound. +

Notes

+ glGenSamplers is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenTextures.xml b/upstream-man-pages/man3/xhtml/glGenTextures.xml new file mode 100644 index 0000000..e85858e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenTextures.xml @@ -0,0 +1,41 @@ + + + +glGenTextures

Name

glGenTextures — generate texture names

C Specification

void glGenTextures(GLsizei  n,
 GLuint *  textures);

Parameters

n

+ Specifies the number of texture names to be generated. +

textures

+ Specifies an array in which the generated texture names are stored. +

Description

+ glGenTextures returns n texture names in textures. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenTextures. +

+ The generated textures have no dimensionality; they assume the dimensionality + of the texture target to which they are first bound + (see glBindTexture). +

+ Texture names returned by a call to glGenTextures are not returned by + subsequent calls, unless they are first deleted with + glDeleteTextures. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsTexture +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenVertexArrays.xml b/upstream-man-pages/man3/xhtml/glGenVertexArrays.xml new file mode 100644 index 0000000..ac63757 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenVertexArrays.xml @@ -0,0 +1,28 @@ + + + +glGenVertexArrays

Name

glGenVertexArrays — generate vertex array object names

C Specification

void glGenVertexArrays(GLsizei n,
 GLuint *arrays);
 

Parameters

n

+ Specifies the number of vertex array object names to generate. +

arrays

+ Specifies an array in which the generated vertex array object names are stored. +

Description

+ glGenVertexArrays returns n vertex array object names in arrays. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenVertexArrays. +

+ Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless + they are first deleted with glDeleteVertexArrays. +

+ The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, + but they acquire state and type only when they are first bound. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGenerateMipmap.xml b/upstream-man-pages/man3/xhtml/glGenerateMipmap.xml new file mode 100644 index 0000000..c3bdc03 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGenerateMipmap.xml @@ -0,0 +1,95 @@ + + + +glGenerateMipmap

Name

glGenerateMipmap — generate mipmaps for a specified texture target

C Specification

void glGenerateMipmap(GLenum target);

Parameters

target

+ Specifies the target to which the texture whose mimaps to generate is bound. target must + be GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY or + GL_TEXTURE_CUBE_MAP. +

Description

+ glGenerateMipmap generates mipmaps for the texture attached + to target of the active texture unit. For cube map textures, + a GL_INVALID_OPERATION error is generated if the texture + attached to target is not cube complete. +

+ Mipmap generation replaces texel array levels + + + + + level + base + + + + 1 + + + through + + + q + + + with arrays derived from the + + + + + level + base + + + + array, regardless of their previous contents. All other mimap arrays, + including the + + + + + level + base + + + + array, are left unchanged by this computation. +

+ The internal formats of the derived mipmap arrays all match those of the + + + + + level + base + + + + array. The contents of the derived arrays are computed by repeated, filtered + reduction of the + + + + + level + base + + + + array. For one- and two-dimensional texture arrays, each layer is filtered + independently. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted texture targets. +

+ GL_INVALID_OPERATION is generated if target is + GL_TEXTURE_CUBE_MAP and the texture bound to the GL_TEXTURE_CUBE_MAP + target of the active texture unit is not cube complete. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGet.xml b/upstream-man-pages/man3/xhtml/glGet.xml new file mode 100644 index 0000000..1b3a0ec --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGet.xml @@ -0,0 +1,1128 @@ + + + +glGet - OpenGL 3.3 Reference Pages

Name

glGet — return the value or values of a selected parameter

C Specification

void glGetBooleanv(GLenum  pname,
 GLboolean *  params);

C Specification

void glGetDoublev(GLenum  pname,
 GLdouble *  params);

C Specification

void glGetFloatv(GLenum  pname,
 GLfloat *  params);

C Specification

void glGetIntegerv(GLenum  pname,
 GLint *  params);

C Specification

void glGetInteger64v(GLenum  pname,
 GLint64 *  params);

Parameters

pname

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

params

+ Returns the value or values of the specified parameter. +

C Specification

void glGetBooleani_v(GLenum  pname,
 GLuint  index,
 GLboolean *  data);

C Specification

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

C Specification

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

Parameters

pname

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

index

+ Specifies the index of the particular element being queried. +

data

+ Returns the value or values of the specified parameter. +

Description

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

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

+ The following symbolic constants are accepted by pname: +

GL_ACTIVE_TEXTURE

+

+ params returns a single value indicating the active multitexture unit. + The initial value is GL_TEXTURE0. + See glActiveTexture. +

GL_ALIASED_LINE_WIDTH_RANGE

+

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

GL_SMOOTH_LINE_WIDTH_RANGE

+

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

GL_SMOOTH_LINE_WIDTH_GRANULARITY

+

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

GL_ARRAY_BUFFER_BINDING

+

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

GL_BLEND

+

+ params returns a single boolean value indicating whether blending is + enabled. The initial value is GL_FALSE. + See glBlendFunc. +

GL_BLEND_COLOR

+

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

GL_BLEND_DST_ALPHA

+

+ params returns one value, + the symbolic constant identifying the alpha destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_DST_RGB

+

+ params returns one value, + the symbolic constant identifying the RGB destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_EQUATION_RGB

+

+ params returns one value, a symbolic constant indicating whether + the RGB blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. +

GL_BLEND_EQUATION_ALPHA

+

+ params returns one value, a symbolic constant indicating whether + the Alpha blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. +

GL_BLEND_SRC_ALPHA

+

+ params returns one value, + the symbolic constant identifying the alpha source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_SRC_RGB

+

+ params returns one value, + the symbolic constant identifying the RGB source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. +

GL_COLOR_CLEAR_VALUE

+

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

GL_COLOR_LOGIC_OP

+

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

GL_COLOR_WRITEMASK

+

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

GL_COMPRESSED_TEXTURE_FORMATS

+

+ params returns a list of symbolic + constants of length GL_NUM_COMPRESSED_TEXTURE_FORMATS + indicating which compressed texture formats are available. + See glCompressedTexImage2D. +

GL_CULL_FACE

+

+ params returns a single boolean value indicating whether polygon culling + is enabled. The initial value is GL_FALSE. + See glCullFace. +

GL_CURRENT_PROGRAM

+

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

GL_DEPTH_CLEAR_VALUE

+

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

GL_DEPTH_FUNC

+

+ params returns one value, + the symbolic constant that indicates the depth comparison + function. The initial value is GL_LESS. + See glDepthFunc. +

GL_DEPTH_RANGE

+

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

GL_DEPTH_TEST

+

+ params returns a single boolean value indicating whether depth testing + of fragments is enabled. The initial value is GL_FALSE. + See glDepthFunc and glDepthRange. +

GL_DEPTH_WRITEMASK

+

+ params returns a single boolean value indicating if the depth buffer + is enabled for writing. The initial value is GL_TRUE. + See glDepthMask. +

GL_DITHER

+

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

GL_DOUBLEBUFFER

+

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

GL_DRAW_BUFFER

+

+ params returns one value, + a symbolic constant indicating which buffers are being drawn to. + See glDrawBuffer. The initial value is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. +

GL_DRAW_BUFFERi

+

+ params returns one value, + a symbolic constant indicating which buffers are being drawn to by the corresponding output color. + See glDrawBuffers. + The initial value of GL_DRAW_BUFFER0 is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. The + initial values of draw buffers for all other output colors is GL_NONE. +

GL_DRAW_FRAMEBUFFER_BINDING

+

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

GL_READ_FRAMEBUFFER_BINDING

+

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

GL_ELEMENT_ARRAY_BUFFER_BINDING

+

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

GL_RENDERBUFFER_BINDING

+

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

GL_FRAGMENT_SHADER_DERIVATIVE_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the derivative accuracy hint + for fragment shaders. The initial value + is GL_DONT_CARE. + See glHint. +

GL_LINE_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + lines is enabled. The initial value is GL_FALSE. + See glLineWidth. +

GL_LINE_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the line antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_LINE_WIDTH

+

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

GL_LINE_WIDTH_GRANULARITY

+

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

GL_LINE_WIDTH_RANGE

+

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

GL_LOGIC_OP_MODE

+

+ params returns one value, + a symbolic constant indicating the selected logic operation + mode. The initial value is GL_COPY. + See glLogicOp. +

GL_MAX_3D_TEXTURE_SIZE

+

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

GL_MAX_CLIP_DISTANCES

+

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

GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS

+

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

GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS

+

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

GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS

+

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

GL_MAX_VARYING_COMPONENTS

+

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

GL_MAX_COMBINED_UNIFORM_BLOCKS

+

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

GL_MAX_CUBE_MAP_TEXTURE_SIZE

+

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

GL_MAX_DRAW_BUFFERS

+

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

GL_MAX_DUALSOURCE_DRAW_BUFFERS

+

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

GL_MAX_ELEMENTS_INDICES

+

+ params returns one value, + the recommended maximum number of vertex array indices. + See glDrawRangeElements. +

GL_MAX_ELEMENTS_VERTICES

+

+ params returns one value, + the recommended maximum number of vertex array vertices. + See glDrawRangeElements. +

GL_MAX_FRAGMENT_UNIFORM_COMPONENTS

+

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

GL_MAX_FRAGMENT_UNIFORM_BLOCKS

+

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

GL_MAX_FRAGMENT_INPUT_COMPONENTS

+

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

GL_MIN_PROGRAM_TEXEL_OFFSET

+

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

GL_MAX_PROGRAM_TEXEL_OFFSET

+

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

GL_MAX_RECTANGLE_TEXTURE_SIZE

+

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

GL_MAX_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_TEXTURE_LOD_BIAS

+

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

GL_MAX_TEXTURE_SIZE

+

+ params returns one value. + The value gives a rough estimate of the largest texture that + the GL can handle. The value must be at least 1024. + Use a proxy texture target such as GL_PROXY_TEXTURE_1D or GL_PROXY_TEXTURE_2D + to determine if a texture is too large. + See glTexImage1D and glTexImage2D. +

GL_MAX_RENDERBUFFER_SIZE

+

+ params returns one value. + The value indicates the maximum supported size for renderbuffers. + See glFramebufferRenderbuffer. +

GL_MAX_ARRAY_TEXTURE_LAYERS

+

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

GL_MAX_TEXTURE_BUFFER_SIZE

+

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

GL_MAX_UNIFORM_BLOCK_SIZE

+

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

GL_MAX_VARYING_FLOATS

+

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

GL_MAX_VERTEX_ATTRIBS

+

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

GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_VERTEX_UNIFORM_COMPONENTS

+

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

GL_MAX_VERTEX_OUTPUT_COMPONENTS

+

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

GL_MAX_GEOMETRY_UNIFORM_COMPONENTS

+

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

GL_MAX_SAMPLE_MASK_WORDS

+

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

GL_MAX_COLOR_TEXTURE_SAMPLES

+

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

GL_MAX_DEPTH_TEXTURE_SAMPLES

+

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

GL_MAX_DEPTH_TEXTURE_SAMPLES

+

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

GL_MAX_INTEGER_SAMPLES

+

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

GL_MAX_SERVER_WAIT_TIMEOUT

+

+ params returns one value, + the maximum glWaitSync timeout interval. +

GL_MAX_UNIFORM_BUFFER_BINDINGS

+

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

GL_MAX_UNIFORM_BLOCK_SIZE

+

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

GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT

+

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

GL_MAX_VERTEX_UNIFORM_BLOCKS

+

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

GL_MAX_GEOMETRY_UNIFORM_BLOCKS

+

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

GL_MAX_GEOMETRY_INPUT_COMPONENTS

+

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

GL_MAX_GEOMETRY_OUTPUT_COMPONENTS

+

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

GL_MAX_VIEWPORT_DIMS

+

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

GL_NUM_COMPRESSED_TEXTURE_FORMATS

+

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

GL_PACK_ALIGNMENT

+

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

GL_PACK_IMAGE_HEIGHT

+

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

GL_PACK_LSB_FIRST

+

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

GL_PACK_ROW_LENGTH

+

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

GL_PACK_SKIP_IMAGES

+

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

GL_PACK_SKIP_PIXELS

+

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

GL_PACK_SKIP_ROWS

+

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

GL_PACK_SWAP_BYTES

+

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

GL_PIXEL_PACK_BUFFER_BINDING

+

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

GL_PIXEL_UNPACK_BUFFER_BINDING

+

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

GL_POINT_FADE_THRESHOLD_SIZE

+

+ params returns one value, + the point size threshold for determining the point size. + See glPointParameter. +

GL_PRIMITIVE_RESTART_INDEX

+

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

GL_PROVOKING_VERTEX

+

+ params returns one value, + the currently selected provoking vertex convention. The initial value is GL_LAST_VERTEX_CONVENTION. + See glProvokingVertex. +

GL_POINT_SIZE

+

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

GL_POINT_SIZE_GRANULARITY

+

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

GL_POINT_SIZE_RANGE

+

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

GL_POLYGON_OFFSET_FACTOR

+

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

GL_POLYGON_OFFSET_UNITS

+

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

GL_POLYGON_OFFSET_FILL

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in fill mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_OFFSET_LINE

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in line mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_OFFSET_POINT

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in point mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + polygons is enabled. The initial value is GL_FALSE. + See glPolygonMode. +

GL_POLYGON_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the polygon antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_READ_BUFFER

+

+ params returns one value, + a symbolic constant indicating which color buffer is selected for + reading. The initial value is GL_BACK if there is a back buffer, + otherwise it is GL_FRONT. + See + glReadPixels. +

GL_SAMPLE_BUFFERS

+

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

GL_SAMPLE_COVERAGE_VALUE

+

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

GL_SAMPLE_COVERAGE_INVERT

+

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

GL_SAMPLER_BINDING

+

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

GL_SAMPLES

+

+ params returns a single integer value indicating the coverage mask size. + See glSampleCoverage. +

GL_SCISSOR_BOX

+

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

GL_SCISSOR_TEST

+

+ params returns a single boolean value indicating whether scissoring is + enabled. The initial value is GL_FALSE. + See glScissor. +

GL_STENCIL_BACK_FAIL

+

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

GL_STENCIL_BACK_FUNC

+

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

GL_STENCIL_BACK_PASS_DEPTH_FAIL

+

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

GL_STENCIL_BACK_PASS_DEPTH_PASS

+

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

GL_STENCIL_BACK_REF

+

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

GL_STENCIL_BACK_VALUE_MASK

+

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

GL_STENCIL_BACK_WRITEMASK

+

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

GL_STENCIL_CLEAR_VALUE

+

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

GL_STENCIL_FAIL

+

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

GL_STENCIL_FUNC

+

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

GL_STENCIL_PASS_DEPTH_FAIL

+

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

GL_STENCIL_PASS_DEPTH_PASS

+

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

GL_STENCIL_REF

+

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

GL_STENCIL_TEST

+

+ params returns a single boolean value indicating whether stencil testing + of fragments is enabled. The initial value is GL_FALSE. + See glStencilFunc and glStencilOp. +

GL_STENCIL_VALUE_MASK

+

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

GL_STENCIL_WRITEMASK

+

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

GL_STEREO

+

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

GL_SUBPIXEL_BITS

+

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

GL_TEXTURE_BINDING_1D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_1D_ARRAY

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D_ARRAY. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D_ARRAY

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_ARRAY. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D_MULTISAMPLE

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE_ARRAY. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_3D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_3D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_BUFFER

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_BUFFER. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_CUBE_MAP

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_CUBE_MAP. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_RECTANGLE

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_RECTANGLE. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_COMPRESSION_HINT

+

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

GL_TEXTURE_BUFFER_BINDING

+

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

GL_TIMESTAMP

+

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

GL_TRANSFORM_FEEDBACK_BUFFER_BINDING

+

+ When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_TRANSFORM_FEEDBACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed transform feedback attribute stream. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. +

GL_TRANSFORM_FEEDBACK_BUFFER_START

+

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

GL_TRANSFORM_FEEDBACK_BUFFER_SIZE

+

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

GL_UNIFORM_BUFFER_BINDING

+

+ When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_UNIFORM_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed uniform buffer binding point. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. +

GL_UNIFORM_BUFFER_START

+

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

GL_UNIFORM_BUFFER_SIZE

+

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

GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT

+

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

GL_UNPACK_ALIGNMENT

+

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

GL_UNPACK_IMAGE_HEIGHT

+

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

GL_UNPACK_LSB_FIRST

+

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

GL_UNPACK_ROW_LENGTH

+

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

GL_UNPACK_SKIP_IMAGES

+

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

GL_UNPACK_SKIP_PIXELS

+

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

GL_UNPACK_SKIP_ROWS

+

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

GL_UNPACK_SWAP_BYTES

+

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

GL_NUM_EXTENSIONS

+

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

GL_MAJOR_VERSION

+

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

GL_MINOR_VERSION

+

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

GL_CONTEXT_FLAGS

+

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

GL_VERTEX_PROGRAM_POINT_SIZE

+

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

GL_VIEWPORT

+

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

+ Many of the boolean parameters can also be queried more easily using + glIsEnabled. +

Notes

+ The following parameters return the associated value for the active texture unit: + GL_TEXTURE_1D, GL_TEXTURE_BINDING_1D, + GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D and GL_TEXTURE_BINDING_3D. +

+ GL_MAX_RECTANGLE_TEXTURE_SIZE, GL_MAX_TEXTURE_BUFFER_SIZE, + GL_UNIFORM_BUFFER_BINDING, GL_TEXTURE_BUFFER_BINDING, + GL_MAX_VERTEX_UNIFORM_BLOCKS, GL_MAX_FRAGMENT_UNIFORM_BLOCKS, + GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS, GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS + GL_MAX_COMBINED_UNIFORM_BLOCKS, GL_MAX_UNIFORM_BLOCK_SIZE, + and GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT + are available only if the GL version is 3.1 or greater. +

+ GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS, GL_MAX_GEOMETRY_UNIFORM_BLOCKS, + GL_MAX_GEOMETRY_INPUT_COMPONENTS, GL_MAX_GEOMETRY_OUTPUT_COMPONENTS, + GL_MAX_GEOMETRY_OUTPUT_VERTICES, GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS and + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS are available only if the GL version is 3.2 or greater. +

+ glGetInteger64v and glGetInteger64i_v are available only if + the GL version is 3.2 or greater. +

+ GL_MAX_DUALSOURCE_DRAW_BUFFERS, GL_SAMPLER_BINDING, and + GL_TIMESTAMP are available only if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_VALUE is generated on any of glGetBooleani_v, + glGetIntegeri_v, or glGetInteger64i_v if + index is outside of the valid range for the indexed state target. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetActiveAttrib.xml b/upstream-man-pages/man3/xhtml/glGetActiveAttrib.xml new file mode 100644 index 0000000..d64d996 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetActiveAttrib.xml @@ -0,0 +1,114 @@ + + + +glGetActiveAttrib

Name

glGetActiveAttrib — Returns information about an active attribute variable for the specified program object

C Specification

void glGetActiveAttrib(GLuint  program,
 GLuint  index,
 GLsizei  bufSize,
 GLsizei * length,
 GLint * size,
 GLenum * type,
 GLchar * name);

Parameters

program

Specifies the program object to be + queried.

index

Specifies the index of the attribute variable + to be queried.

bufSize

Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name.

length

Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed.

size

Returns the size of the attribute + variable.

type

Returns the data type of the attribute + variable.

name

Returns a null terminated string containing + the name of the attribute variable.

Description

glGetActiveAttrib returns information + about an active attribute variable in the program object + specified by program. The number of + active attributes can be obtained by calling + glGetProgram + with the value GL_ACTIVE_ATTRIBUTES. A + value of 0 for index selects the first + active attribute variable. Permissible values for + index range from 0 to the number of + active attribute variables minus 1.

A vertex shader may use either built-in attribute + variables, user-defined attribute variables, or both. Built-in + attribute variables have a prefix of "gl_" and + reference conventional OpenGL vertex attribtes (e.g., + gl_Vertex, + gl_Normal, etc., see the OpenGL Shading + Language specification for a complete list.) User-defined + attribute variables have arbitrary names and obtain their values + through numbered generic vertex attributes. An attribute + variable (either built-in or user-defined) is considered active + if it is determined during the link operation that it may be + accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully.

The size of the character buffer required to store the + longest attribute variable name in + program can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned attribute name. The size of this character buffer + is passed in bufSize, and a pointer to + this character buffer is passed in + name.

glGetActiveAttrib returns the name of + the attribute variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument.

The type argument will return a + pointer to the attribute variable's data type. The symbolic + constants GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3, + GL_INT, + GL_INT_VEC2, + GL_INT_VEC3, + GL_INT_VEC4, + GL_UNSIGNED_INT_VEC, + GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3, or + GL_UNSIGNED_INT_VEC4 may be returned. The + size argument will return the size of the + attribute, in units of the type returned in + type.

The list of active attribute variables may include both + built-in attribute variables (which begin with the prefix + "gl_") as well as user-defined attribute variable + names.

This function will return as much information as it can + about the specified active attribute variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active attribute variables in + program.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS.

glGetProgram + with argument GL_ACTIVE_ATTRIBUTES or + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetActiveUniform.xml b/upstream-man-pages/man3/xhtml/glGetActiveUniform.xml new file mode 100644 index 0000000..15d6693 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetActiveUniform.xml @@ -0,0 +1,369 @@ + + + +glGetActiveUniform

Name

glGetActiveUniform — Returns information about an active uniform variable for the specified program object

C Specification

void glGetActiveUniform(GLuint program,
 GLuint index,
 GLsizei bufSize,
 GLsizei *length,
 GLint *size,
 GLenum *type,
 GLchar *name);
 

Parameters

program

Specifies the program object to be + queried.

index

Specifies the index of the uniform variable to + be queried.

bufSize

Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name.

length

Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed.

size

Returns the size of the uniform + variable.

type

Returns the data type of the uniform + variable.

name

Returns a null terminated string containing + the name of the uniform variable.

Description

glGetActiveUniform returns + information about an active uniform variable in the program + object specified by program. The number + of active uniform variables can be obtained by calling + glGetProgram + with the value GL_ACTIVE_UNIFORMS. A value + of 0 for index selects the first active + uniform variable. Permissible values for + index range from 0 to the number of + active uniform variables minus 1.

Shaders may use either built-in uniform variables, + user-defined uniform variables, or both. Built-in uniform + variables have a prefix of "gl_" and reference + existing OpenGL state or values derived from such state (e.g., + gl_DepthRangeParameters, see the OpenGL + Shading Language specification for a complete list.) + User-defined uniform variables have arbitrary names and obtain + their values from the application through calls to + glUniform. + A uniform variable (either built-in or user-defined) is + considered active if it is determined during the link operation + that it may be accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully.

The size of the character buffer required to store the + longest uniform variable name in program + can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_UNIFORM_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned uniform variable name. The size of this character + buffer is passed in bufSize, and a + pointer to this character buffer is passed in + name.

glGetActiveUniform returns the name + of the uniform variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument.

The type + argument will return a pointer to the uniform variable's data + type. The symbolic constants returned for uniform types are shown in the + table below. +

+ Returned Symbolic Contant + + Shader Uniform Type +
+ GL_FLOAT + + float +
+ GL_FLOAT_VEC2 + + vec2 +
+ GL_FLOAT_VEC3 + + vec3 +
+ GL_FLOAT_VEC4 + + vec4 +
+ GL_INT + + int +
+ GL_INT_VEC2 + + ivec2 +
+ GL_INT_VEC3 + + ivec3 +
+ GL_INT_VEC4 + + ivec4 +
+ GL_UNSIGNED_INT + + unsigned int +
+ GL_UNSIGNED_INT_VEC2 + + uvec2 +
+ GL_UNSIGNED_INT_VEC3 + + uvec3 +
+ GL_UNSIGNED_INT_VEC4 + + uvec4 +
+ GL_BOOL + + bool +
+ GL_BOOL_VEC2 + + bvec2 +
+ GL_BOOL_VEC3 + + bvec3 +
+ GL_BOOL_VEC4 + + bvec4 +
+ GL_FLOAT_MAT2 + + mat2 +
+ GL_FLOAT_MAT3 + + mat3 +
+ GL_FLOAT_MAT4 + + mat4 +
+ GL_FLOAT_MAT2x3 + + mat2x3 +
+ GL_FLOAT_MAT2x4 + + mat2x4 +
+ GL_FLOAT_MAT3x2 + + mat3x2 +
+ GL_FLOAT_MAT3x4 + + mat3x4 +
+ GL_FLOAT_MAT4x2 + + mat4x2 +
+ GL_FLOAT_MAT4x3 + + mat4x3 +
+ GL_SAMPLER_1D + + sampler1D +
+ GL_SAMPLER_2D + + sampler2D +
+ GL_SAMPLER_3D + + sampler3D +
+ GL_SAMPLER_CUBE + + samplerCube +
+ GL_SAMPLER_1D_SHADOW + + sampler1DShadow +
+ GL_SAMPLER_2D_SHADOW + + sampler2DShadow +
+ GL_SAMPLER_1D_ARRAY + + sampler1DArray +
+ GL_SAMPLER_2D_ARRAY + + sampler2DArray +
+ GL_SAMPLER_1D_ARRAY_SHADOW + + sampler1DArrayShadow +
+ GL_SAMPLER_2D_ARRAY_SHADOW + + sampler2DArrayShadow +
+ GL_SAMPLER_2D_MULTISAMPLE + + sampler2DMS +
+ GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + sampler2DMSArray +
+ GL_SAMPLER_CUBE_SHADOW + + samplerCubeShadow +
+ GL_SAMPLER_BUFFER + + samplerBuffer +
+ GL_SAMPLER_2D_RECT + + sampler2DRect +
+ GL_SAMPLER_2D_RECT_SHADOW + + sampler2DRectShadow +
+ GL_INT_SAMPLER_1D + + isampler1D +
+ GL_INT_SAMPLER_2D + + isampler2D +
+ GL_INT_SAMPLER_3D + + isampler3D +
+ GL_INT_SAMPLER_CUBE + + isamplerCube +
+ GL_INT_SAMPLER_1D_ARRAY + + isampler1DArray +
+ GL_INT_SAMPLER_2D_ARRAY + + isampler2DArray +
+ GL_INT_SAMPLER_2D_MULTISAMPLE + + isampler2DMS +
+ GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + isampler2DMSArray +
+ GL_INT_SAMPLER_BUFFER + + isamplerBuffer +
+ GL_INT_SAMPLER_2D_RECT + + isampler2DRect +
+ GL_UNSIGNED_INT_SAMPLER_1D + + usampler1D +
+ GL_UNSIGNED_INT_SAMPLER_2D + + usampler2D +
+ GL_UNSIGNED_INT_SAMPLER_3D + + usampler3D +
+ GL_UNSIGNED_INT_SAMPLER_CUBE + + usamplerCube +
+ GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + usampler2DMS +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + usampler2DMSArray +
+ GL_UNSIGNED_INT_SAMPLER_BUFFER + + usamplerBuffer +
+ GL_UNSIGNED_INT_SAMPLER_2D_RECT + + usampler2DRect +

+

If one or more elements of an array are active, the name + of the array is returned in name, the + type is returned in type, and the + size parameter returns the highest array + element index used, plus one, as determined by the compiler + and/or linker. Only one active uniform variable will be reported + for a uniform array.

Uniform variables that are declared as structures or + arrays of structures will not be returned directly by this + function. Instead, each of these uniform variables will be + reduced to its fundamental components containing the + "." and "[]" operators such that each of the + names is valid as an argument to + glGetUniformLocation. + Each of these reduced uniform variables is counted as one active + uniform variable and is assigned an index. A valid name cannot + be a structure, an array of structures, or a subcomponent of a + vector or matrix.

The size of the uniform variable will be returned in + size. Uniform variables other than arrays + will have a size of 1. Structures and arrays of structures will + be reduced as described earlier, such that each of the names + returned will be a data type in the earlier list. If this + reduction results in an array, the size returned will be as + described for uniform arrays; otherwise, the size returned will + be 1.

The list of active uniform variables may include both + built-in uniform variables (which begin with the prefix + "gl_") as well as user-defined uniform variable + names.

This function will return as much information as it can + about the specified active uniform variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active uniform variables in + program.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS.

glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetActiveUniformBlock.xml b/upstream-man-pages/man3/xhtml/glGetActiveUniformBlock.xml new file mode 100644 index 0000000..7eca2b9 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetActiveUniformBlock.xml @@ -0,0 +1,69 @@ + + + +glGetActiveUniformBlock

Name

glGetActiveUniformBlock — query information about an active uniform block

C Specification

void glGetActiveUniformBlockiv(GLuint program,
 GLuint uniformBlockIndex,
 GLenum pname,
 GLint params);
 

Parameters

program

+ Specifies the name of a program containing the uniform block. +

uniformBlockIndex

+ Specifies the index of the uniform block within program. +

pname

+ Specifies the name of the parameter to query. +

params

+ Specifies the address of a variable to receive the result of the query. +

Description

+ glGetActiveUniformBlockiv retrieves information about an active uniform block within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. +

+ Upon success, the uniform block parameter(s) specified by pname are returned in params. If an error + occurs, nothing will be written to params. +

+ If pname is GL_UNIFORM_BLOCK_BINDING, then the index of the uniform buffer binding point + last selected by the uniform block specified by uniformBlockIndex for program is returned. If + no uniform block has been previously specified, zero is returned. +

+ If pname is GL_UNIFORM_BLOCK_DATA_SIZE, then the implementation-dependent minimum total buffer + object size, in basic machine units, required to hold all active uniforms in the uniform block identified by uniformBlockIndex + is returned. It is neither guaranteed nor expected that a given implementation will arrange uniform values as tightly packed in a buffer + object. The exception to this is the std140 uniform block layout, which guarantees specific packing behavior and does not + require the application to query for offsets and strides. In this case the minimum size may still be queried, even though it is determined in + advance based only on the uniform block declaration. +

+ If pname is GL_UNIFORM_BLOCK_NAME_LENGTH, then the total length (including the nul terminator) of + the name of the uniform block identified by uniformBlockIndex is returned. +

+ If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS, then the number of active uniforms in the uniform + block identified by uniformBlockIndex is returned. +

+ If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES, then a list of the active uniform indices + for the uniform block identified by uniformBlockIndex is returned. The number of elements that will be written to + params is the value of GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS for uniformBlockIndex. +

+ If pname is GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER, GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER, + or GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER, then a boolean value indicating whether the uniform block identified by + uniformBlockIndex is referenced by the vertex, geometry, or fragment programming stages of program, respectively, is returned. +

Errors

+ GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. +

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

Notes

+ glGetActiveUniformBlockiv is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetActiveUniformBlockName.xml b/upstream-man-pages/man3/xhtml/glGetActiveUniformBlockName.xml new file mode 100644 index 0000000..cf3b606 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetActiveUniformBlockName.xml @@ -0,0 +1,50 @@ + + + +glGetActiveUniformBlockName

Name

glGetActiveUniformBlockName — retrieve the name of an active uniform block

C Specification

void glGetActiveUniformBlockName(GLuint program,
 GLuint uniformBlockIndex,
 GLsizei bufSize,
 GLsizei *length,
 GLchar *uniformBlockName);
 

Parameters

program

+ Specifies the name of a program containing the uniform block. +

uniformBlockIndex

+ Specifies the index of the uniform block within program. +

bufSize

+ Specifies the size of the buffer addressed by uniformBlockName. +

length

+ Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. +

uniformBlockName

+ Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. +

Description

+ glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex + within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. +

+ Upon success, the name of the uniform block identified by unifomBlockIndex is returned into + uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, + excluding the nul terminator, is returned in length. If length is NULL, no length is returned. +

+ bufSize contains the maximum number of characters (including the nul terminator) that will be written into + uniformBlockName. +

+ If an error occurs, nothing will be written to uniformBlockName or length. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

+ GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. +

Notes

+ glGetActiveUniformBlockName is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetActiveUniformName.xml b/upstream-man-pages/man3/xhtml/glGetActiveUniformName.xml new file mode 100644 index 0000000..f3c7449 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetActiveUniformName.xml @@ -0,0 +1,50 @@ + + + +glGetActiveUniformName

Name

glGetActiveUniformName — query the name of an active uniform

C Specification

void glGetActiveUniformName(GLuint program,
 GLuint uniformIndex,
 GLsizei bufSize,
 GLsizei *length,
 GLchar *uniformName);
 

Parameters

program

+ Specifies the program containing the active uniform index uniformIndex. +

uniformIndex

+ Specifies the index of the active uniform whose name to query. +

bufSize

+ Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. +

length

+ Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. +

uniformName

+ Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. +

Description

+ glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. + If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into + the array whose address is specified by uniformName. If length is not NULL, the number of characters + that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address + is specified in length. If length is NULL, no length is returned. The length of the longest uniform + name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with + glGetProgram. +

+ If glGetActiveUniformName is not successful, nothing is written to length or uniformName. +

+ program must be the name of a program for which the command glLinkProgram + has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because + the number of active uniforms exceeded the limit. +

+ uniformIndex must be an active uniform index of the program program, in the range zero to + GL_ACTIVE_UNIFORMS - 1. The value of GL_ACTIVE_UNIFORMS can be queried with + glGetProgram. +

Errors

+ GL_INVALID_VALUE is generated if uniformIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORMS. +

+ GL_INVALID_VALUE is generated if bufSize is negative. +

+ GL_INVALID_VALUE is generated if program is not the name of a program object for which + glLinkProgram has been issued. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetActiveUniformsiv.xml b/upstream-man-pages/man3/xhtml/glGetActiveUniformsiv.xml new file mode 100644 index 0000000..9b9cc7d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetActiveUniformsiv.xml @@ -0,0 +1,328 @@ + + + +glGetActiveUniformsiv - OpenGL 3.3 Reference Pages

Name

glGetActiveUniformsiv — Returns information about several active uniform variables for the specified program object

C Specification

void glGetActiveUniformsiv(GLuint  program,
 GLsizei  uniformCount,
 const GLuint * uniformIndices,
 GLenum  pname,
 GLint * params);

Parameters

program

Specifies the program object to be queried.

uniformCount

Specifies both the number of elements in the array of indices uniformIndices and the + number of parameters written to params upon successful return.

uniformIndices

Specifies the address of an array of uniformCount integers containing the indices of + uniforms within program whose parameter pname pname.

pname

Specifies the property of the each uniform in uniformIndices that should be + written into the corresponding element of params.

params

Specifies the address of an array of uniformCount integers which are to + receive the value of pname for each uniform in uniformIndices.

Description

+ glGetActiveUniformsiv queries the value of the parameter named pname + for each of the uniforms within program whose indices are specified in the array of + uniformCount unsigned integers uniformIndices. Upon success, + the value of the parameter for each uniform is written into the corresponding entry in the array whose + address is given in params. If an error is generated, nothing is written into + params. +

+ If pname is GL_UNIFORM_TYPE, then an array identifying the types + of uniforms specified by the corresponding array of uniformIndices is returned. The + returned types can be any of the values from the following table: +

+ Returned Symbolic Contant + + Shader Uniform Type +
+ GL_FLOAT + + float +
+ GL_FLOAT_VEC2 + + vec2 +
+ GL_FLOAT_VEC3 + + vec3 +
+ GL_FLOAT_VEC4 + + vec4 +
+ GL_INT + + int +
+ GL_INT_VEC2 + + ivec2 +
+ GL_INT_VEC3 + + ivec3 +
+ GL_INT_VEC4 + + ivec4 +
+ GL_UNSIGNED_INT + + unsigned int +
+ GL_UNSIGNED_INT_VEC2 + + uvec2 +
+ GL_UNSIGNED_INT_VEC3 + + uvec3 +
+ GL_UNSIGNED_INT_VEC4 + + uvec4 +
+ GL_BOOL + + bool +
+ GL_BOOL_VEC2 + + bvec2 +
+ GL_BOOL_VEC3 + + bvec3 +
+ GL_BOOL_VEC4 + + bvec4 +
+ GL_FLOAT_MAT2 + + mat2 +
+ GL_FLOAT_MAT3 + + mat3 +
+ GL_FLOAT_MAT4 + + mat4 +
+ GL_FLOAT_MAT2x3 + + mat2x3 +
+ GL_FLOAT_MAT2x4 + + mat2x4 +
+ GL_FLOAT_MAT3x2 + + mat3x2 +
+ GL_FLOAT_MAT3x4 + + mat3x4 +
+ GL_FLOAT_MAT4x2 + + mat4x2 +
+ GL_FLOAT_MAT4x3 + + mat4x3 +
+ GL_SAMPLER_1D + + sampler1D +
+ GL_SAMPLER_2D + + sampler2D +
+ GL_SAMPLER_3D + + sampler3D +
+ GL_SAMPLER_CUBE + + samplerCube +
+ GL_SAMPLER_1D_SHADOW + + sampler1DShadow +
+ GL_SAMPLER_2D_SHADOW + + sampler2DShadow +
+ GL_SAMPLER_1D_ARRAY + + sampler1DArray +
+ GL_SAMPLER_2D_ARRAY + + sampler2DArray +
+ GL_SAMPLER_1D_ARRAY_SHADOW + + sampler1DArrayShadow +
+ GL_SAMPLER_2D_ARRAY_SHADOW + + sampler2DArrayShadow +
+ GL_SAMPLER_2D_MULTISAMPLE + + sampler2DMS +
+ GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + sampler2DMSArray +
+ GL_SAMPLER_CUBE_SHADOW + + samplerCubeShadow +
+ GL_SAMPLER_BUFFER + + samplerBuffer +
+ GL_SAMPLER_2D_RECT + + sampler2DRect +
+ GL_SAMPLER_2D_RECT_SHADOW + + sampler2DRectShadow +
+ GL_INT_SAMPLER_1D + + isampler1D +
+ GL_INT_SAMPLER_2D + + isampler2D +
+ GL_INT_SAMPLER_3D + + isampler3D +
+ GL_INT_SAMPLER_CUBE + + isamplerCube +
+ GL_INT_SAMPLER_1D_ARRAY + + isampler1DArray +
+ GL_INT_SAMPLER_2D_ARRAY + + isampler2DArray +
+ GL_INT_SAMPLER_2D_MULTISAMPLE + + isampler2DMS +
+ GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + isampler2DMSArray +
+ GL_INT_SAMPLER_BUFFER + + isamplerBuffer +
+ GL_INT_SAMPLER_2D_RECT + + isampler2DRect +
+ GL_UNSIGNED_INT_SAMPLER_1D + + usampler1D +
+ GL_UNSIGNED_INT_SAMPLER_2D + + usampler2D +
+ GL_UNSIGNED_INT_SAMPLER_3D + + usampler3D +
+ GL_UNSIGNED_INT_SAMPLER_CUBE + + usamplerCube +
+ GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + usampler2DMS +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + usampler2DMSArray +
+ GL_UNSIGNED_INT_SAMPLER_BUFFER + + usamplerBuffer +
+ GL_UNSIGNED_INT_SAMPLER_2D_RECT + + usampler2DRect +

+

+ If pname is GL_UNIFORM_SIZE, then an array identifying the + size of the uniforms specified by the corresponding array of uniformIndices is + returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. + For active uniforms that are arrays, the size is the number of active elements in the array; + for all other uniforms, the size is one. +

+ If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the + length, including the terminating null character, of the uniform name strings specified by the corresponding + array of uniformIndices is returned. +

+ If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the + the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices + is returned. The uniform block index of a uniform associated with the default uniform block is -1. +

+ If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer + offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic + machine units, relative to the beginning of the uniform block in the buffer object data store. For uniforms + in the default uniform block, -1 will be returned. +

+ If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the + stride between elements, in basic machine units, of each of the uniforms specified by the corresponding array of + uniformIndices is returned. The stride of a uniform associated with the default uniform + block is -1. Note that this information only makes sense for uniforms that are arrays. For uniforms that are + not arrays, but are declared in a named uniform block, an array stride of zero is returned. +

+ If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride + between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms + specified by the corresponding array of uniformIndices is returned. The matrix stride of a + uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms + that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of + zero is returned. +

+ If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each + of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A + value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default + uniform block, or a non-matrix. +

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + uniformCount is greater than or equal to the + value of GL_ACTIVE_UNIFORMS for + program.

GL_INVALID_ENUM is generated if pname + is not an accepted token.

Associated Gets

glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS.

glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2011 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetAttachedShaders.xml b/upstream-man-pages/man3/xhtml/glGetAttachedShaders.xml new file mode 100644 index 0000000..d6d9a9b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetAttachedShaders.xml @@ -0,0 +1,39 @@ + + + +glGetAttachedShaders

Name

glGetAttachedShaders — Returns the handles of the shader objects attached to a program object

C Specification

void glGetAttachedShaders(GLuint  program,
 GLsizei  maxCount,
 GLsizei * count,
 GLuint * shaders);

Parameters

program

Specifies the program object to be + queried.

maxCount

Specifies the size of the array for storing + the returned object names.

count

Returns the number of names actually returned + in objects.

shaders

Specifies an array that is used to return the + names of attached shader objects.

Description

glGetAttachedShaders returns the + names of the shader objects attached to + program. The names of shader objects that + are attached to program will be returned + in shaders. The actual number of shader + names written into shaders is returned in + count. If no shader objects are attached + to program, count + is set to 0. The maximum number of shader names that may be + returned in shaders is specified by + maxCount.

If the number of names actually returned is not required + (for instance, if it has just been obtained by calling + glGetProgram), + a value of NULL may be passed for count. If + no shader objects are attached to + program, a value of 0 will be returned in + count. The actual number of attached + shaders can be obtained by calling + glGetProgram + with the value GL_ATTACHED_SHADERS.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + maxCount is less than 0.

Associated Gets

glGetProgram + with argument GL_ATTACHED_SHADERS

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetAttribLocation.xml b/upstream-man-pages/man3/xhtml/glGetAttribLocation.xml new file mode 100644 index 0000000..9e35e35 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetAttribLocation.xml @@ -0,0 +1,46 @@ + + + +glGetAttribLocation

Name

glGetAttribLocation — Returns the location of an attribute variable

C Specification

GLint glGetAttribLocation(GLuint  program,
 const GLchar * name);

Parameters

program

Specifies the program object to be + queried.

name

Points to a null terminated string containing + the name of the attribute variable whose location is + to be queried.

Description

glGetAttribLocation queries the + previously linked program object specified by + program for the attribute variable + specified by name and returns the index + of the generic vertex attribute that is bound to that attribute + variable. If name is a matrix attribute + variable, the index of the first column of the matrix is + returned. If the named attribute variable is not an active + attribute in the specified program object or if + name starts with the reserved prefix + "gl_", a value of -1 is returned.

The association between an attribute variable name and a + generic attribute index can be specified at any time by calling + glBindAttribLocation. + Attribute bindings do not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for attribute variables remain fixed until the + next link command occurs. The attribute values can only be + queried after a link if the link was successful. + glGetAttribLocation returns the binding + that actually went into effect the last time + glLinkProgram + was called for the specified program object. Attribute bindings + that have been specified since the last link operation are not + returned by glGetAttribLocation.

Errors

GL_INVALID_OPERATION is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

Associated Gets

glGetActiveAttrib + with argument program and the index of an + active attribute

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetBufferParameter.xml b/upstream-man-pages/man3/xhtml/glGetBufferParameter.xml new file mode 100644 index 0000000..06f809d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetBufferParameter.xml @@ -0,0 +1,56 @@ + + + +glGetBufferParameteriv

Name

glGetBufferParameteriv — return parameters of a buffer object

C Specification

void glGetBufferParameteriv(GLenum  target,
 GLenum  value,
 GLint *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

value

+ Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. +

data

+ Returns the requested parameter. +

Description

+ glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. +

+ value names a specific buffer object parameter, as follows: +

GL_BUFFER_ACCESS

+ params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. +

GL_BUFFER_MAPPED

+ params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. +

GL_BUFFER_SIZE

+ params returns the size of the buffer object, measured in bytes. + The initial value is 0. +

GL_BUFFER_USAGE

+ params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

Errors

+ GL_INVALID_ENUM is generated if target or value is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetBufferPointerv.xml b/upstream-man-pages/man3/xhtml/glGetBufferPointerv.xml new file mode 100644 index 0000000..67933a0 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetBufferPointerv.xml @@ -0,0 +1,42 @@ + + + +glGetBufferPointerv

Name

glGetBufferPointerv — return the pointer to a mapped buffer object's data store

C Specification

void glGetBufferPointerv(GLenum  target,
 GLenum  pname,
 GLvoid **  params);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

pname

+ Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER. +

params

+ Returns the pointer value specified by pname. +

Description

+ glGetBufferPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer + to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. + params is a pointer to a location in which to place the returned pointer value. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ The initial value for the pointer is NULL. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

See Also

+ glBindBuffer, + glMapBuffer +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetBufferSubData.xml b/upstream-man-pages/man3/xhtml/glGetBufferSubData.xml new file mode 100644 index 0000000..385daf7 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetBufferSubData.xml @@ -0,0 +1,55 @@ + + + +glGetBufferSubData

Name

glGetBufferSubData — returns a subset of a buffer object's data store

C Specification

void glGetBufferSubData(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  size,
 GLvoid *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

offset

+ Specifies the offset into the buffer object's data store from which data will be returned, + measured in bytes. +

size

+ Specifies the size in bytes of the data store region being returned. +

data

+ Specifies a pointer to the location where buffer object data is returned. +

Description

+ glGetBufferSubData returns some or all of the data from the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied from the data store to the memory pointed to by + data. An error is thrown if the buffer object is currently mapped, or if + offset and size together define a range beyond the bounds + of the buffer object's data store. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. +

+ GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer object being queried is mapped. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetCompressedTexImage.xml b/upstream-man-pages/man3/xhtml/glGetCompressedTexImage.xml new file mode 100644 index 0000000..9a51b7c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetCompressedTexImage.xml @@ -0,0 +1,90 @@ + + + +glGetCompressedTexImage

Name

glGetCompressedTexImage — return a compressed texture image

C Specification

void glGetCompressedTexImage(GLenum  target,
 GLint  lod,
 GLvoid *  img);

Parameters

target

+ Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. +

lod

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

img

+ Returns the compressed texture image. +

Description

+ glGetCompressedTexImage returns the compressed texture image associated with target and lod + into img. img should be an array of + GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes. + target specifies whether the desired texture image was one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of GL_TEXTURE_CUBE_MAP_*), or + glTexImage3D (GL_TEXTURE_3D). + lod specifies the level-of-detail number of the desired image. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. +

+ To minimize errors, first verify that the texture is compressed by calling + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If + the texture is compressed, then determine the amount of memory required to + store the compressed texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the + internal format of the texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_INTERNAL_FORMAT. + To store the texture for later use, associate the internal format and size + with the retrieved texture image. These data can be used by the respective + texture or subtexture loading routine used for loading target textures. +

Errors

+ GL_INVALID_VALUE is generated if lod is less than zero or greater + than the maximum number of LODs permitted by the implementation. +

+ GL_INVALID_OPERATION is generated if glGetCompressedTexImage is used to retrieve a + texture that is in an uncompressed internal format. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

Associated Gets

+ glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED +

+ glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetDoublev.xml b/upstream-man-pages/man3/xhtml/glGetDoublev.xml new file mode 100644 index 0000000..23bc861 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetDoublev.xml @@ -0,0 +1,4 @@ + + + +glGetDoublev diff --git a/upstream-man-pages/man3/xhtml/glGetError.xml b/upstream-man-pages/man3/xhtml/glGetError.xml new file mode 100644 index 0000000..497d064 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetError.xml @@ -0,0 +1,68 @@ + + + +glGetError

Name

glGetError — return error information

C Specification

GLenum glGetError( void);

Description

+ glGetError returns the value of the error flag. + Each detectable error is assigned a numeric code and symbolic name. + When an error occurs, + the error flag is set to the appropriate error code value. + No other errors are recorded until glGetError is called, + the error code is returned, + and the flag is reset to GL_NO_ERROR. + If a call to glGetError returns GL_NO_ERROR, + there has been no detectable error since the last call to glGetError, + or since the GL was initialized. +

+ To allow for distributed implementations, + there may be several error flags. + If any single error flag has recorded an error, + the value of that flag is returned + and that flag is reset to GL_NO_ERROR + when glGetError is called. + If more than one flag has recorded an error, + glGetError returns and clears an arbitrary error flag value. + Thus, glGetError should always be called in a loop, + until it returns GL_NO_ERROR, + if all error flags are to be reset. +

+ Initially, all error flags are set to GL_NO_ERROR. +

+ The following errors are currently defined: +

GL_NO_ERROR

+ No error has been recorded. + The value of this symbolic constant is guaranteed to be 0. +

GL_INVALID_ENUM

+ An unacceptable value is specified for an enumerated argument. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_VALUE

+ A numeric argument is out of range. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_OPERATION

+ The specified operation is not allowed in the current state. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_FRAMEBUFFER_OPERATION

+ The framebuffer object is not complete. The offending command + is ignored and has no other side effect than to set the error flag. +

GL_OUT_OF_MEMORY

+ There is not enough memory left to execute the command. + The state of the GL is undefined, + except for the state of the error flags, + after this error is recorded. +

+ When an error flag is set, + results of a GL operation are undefined only if GL_OUT_OF_MEMORY + has occurred. + In all other cases, + the command generating the error is ignored and has no effect on the GL state + or frame buffer contents. + If the generating command returns a value, it returns 0. + If glGetError itself generates an error, it returns 0. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetFloatv.xml b/upstream-man-pages/man3/xhtml/glGetFloatv.xml new file mode 100644 index 0000000..50de409 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetFloatv.xml @@ -0,0 +1,4 @@ + + + +glGetFloatv diff --git a/upstream-man-pages/man3/xhtml/glGetFragDataIndex.xml b/upstream-man-pages/man3/xhtml/glGetFragDataIndex.xml new file mode 100644 index 0000000..0f6f456 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetFragDataIndex.xml @@ -0,0 +1,26 @@ + + + +glGetFragDataIndex

Name

glGetFragDataIndex — query the bindings of color indices to user-defined varying out variables

C Specification

GLint glGetFragDataIndex(GLuint program,
 const char * name);
 

Parameters

program

+ The name of the program containing varying out variable whose binding to query +

name

+ The name of the user-defined varying out variable whose index to query +

Description

+ glGetFragDataIndex returns the index of the fragment color to which the variable name + was bound when the program object program was last linked. If name is not a varying out + variable of program, or if an error occurs, -1 will be returned. +

Notes

+ glGetFragDataIndex is available only if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetFragDataLocation.xml b/upstream-man-pages/man3/xhtml/glGetFragDataLocation.xml new file mode 100644 index 0000000..42e2d6f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetFragDataLocation.xml @@ -0,0 +1,24 @@ + + + +glGetFragDataLocation

Name

glGetFragDataLocation — query the bindings of color numbers to user-defined varying out variables

C Specification

GLint glGetFragDataLocation(GLuint  program,
 const char *  name);

Parameters

program

+ The name of the program containing varying out variable whose binding to query +

name

+ The name of the user-defined varying out variable whose binding to query +

Description

+ glGetFragDataLocation retrieves the assigned color number binding for the user-defined + varying out variable name for program program. program + must have previously been linked. name must be a null-terminated string. If name + is not the name of an active user-defined varying out fragment shader variable within program, -1 will + be returned. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetFramebufferAttachmentParameter.xml b/upstream-man-pages/man3/xhtml/glGetFramebufferAttachmentParameter.xml new file mode 100644 index 0000000..c04d65e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetFramebufferAttachmentParameter.xml @@ -0,0 +1,114 @@ + + + +glGetFramebufferAttachmentParameteriv

Name

glGetFramebufferAttachmentParameteriv — retrieve information about attachments of a bound framebuffer object

C Specification

void glGetFramebufferAttachmentParameter(GLenum target,
 GLenum attachment,
 GLenum pname,
 GLint *params);
 

Parameters

target

+ Specifies the target of the query operation. +

attachment

+ Specifies the attachment within target +

pname

+ Specifies the parameter of attachment to query. +

params

+ Specifies the address of a variable receive the value of pname for attachment. +

Description

+ glGetFramebufferAttachmentParameter returns information about attachments of a bound framebuffer + object. target specifies the framebuffer binding point and must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent + to GL_DRAW_FRAMEBUFFER. +

+ If the default framebuffer is bound to target then attachment must be one of + GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, or + GL_BACK_RIGHT, identifying a color buffer, GL_DEPTH, identifying the depth buffer, + or GL_STENCIL, identifying the stencil buffer. +

+ If a framebuffer object is bound, then attachment must be one of GL_COLOR_ATTACHMENTi, + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT, or GL_DEPTH_STENCIL_ATTACHMENT. + i in GL_COLOR_ATTACHMENTi must be in the range zero to the value of + GL_MAX_COLOR_ATTACHMENTS - 1. +

+ If attachment is GL_DEPTH_STENCIL_ATTACHMENT and different objects are bound + to the depth and stencil attachment points of target the query will fail. If the same object + is bound to both attachment points, information about that object will be returned. +

+ Upon successful return from glGetFramebufferAttachmentParameteriv, if pname is + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, then params will contain one of GL_NONE, + GL_FRAMEBUFFER_DEFAULT, GL_TEXTURE, or GL_RENDERBUFFER, identifying the type of + object which contains the attached image. Other values accepted for pname depend on the type of object, as described below. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE, no framebuffer is bound to + target. In this case querying pname GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + will return zero, and all other queries will generate an error. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is not GL_NONE, these queries apply to all other + framebuffer types: +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE, GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE, GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE, + or GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE, then params will contain the number + of bits in the corresponding red, green, blue, alpha, depth, or stencil component of the specified attachment. Zero is returned + if the requested component is not present in attachment. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, params will + contain the format of components of the specified attachment, one of GL_FLOAT, GL_INT, + GL_UNSIGNED_INT, GL_SIGNED_NORMALIZED, or GL_UNSIGNED_NORMALIZED + for floating-point, signed integer, unsigned integer, signed normalized fixed-point, or unsigned normalized fixed-point components + respectively. Only color buffers may have integer components. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING, param will + contain the encoding of components of the specified attachment, one of GL_LINEAR or GL_SRGB + for linear or sRGB-encoded components, respectively. Only color buffer components may be sRGB-encoded; such components + are treated as described in sections 4.1.7 and 4.1.8. For the default framebuffer, color encoding is determined by the implementation. + For framebuffer objects, components are sRGB-encoded if the internal format of a color attachment is one of the color-renderable SRGB + formats. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_RENDERBUFFER, then: +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, params will contain + the name of the renderbuffer object which contains the attached image. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_TEXTURE, then: +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, then params will + contain the name of the texture object which contains the attached image. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL, then params + will contain the mipmap level of the texture object which contains the attached image. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a cube map texture, then params will contain the cube map + face of the cubemap texture object which contains the attached image. Otherwise params will contain the value + zero. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a layer of a three-dimensional texture or a one-or two-dimensional + array texture, then params will contain the number of the texture layer which contains the attached image. + Otherwise params will contain the value zero. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_LAYERED, then params will + contain GL_TRUE if an entire level of a three-dimesional texture, cube map texture, or one-or two-dimensional + array texture is attached. Otherwise, params will contain GL_FALSE. +

+ Any combinations of framebuffer type and pname not described above will generate an error. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if pname is not valid for the value of + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE. +

+ GL_INVALID_OPERATION is generated if attachment is not the accepted values + for target. +

+ GL_INVALID_OPERATION is generated if attachment is GL_DEPTH_STENCIL_ATTACHMENT + and different objects are bound to the depth and stencil attachment points of target. +

+ GL_INVALID_OPERATION is generated if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is + GL_NONE and pname is not GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetIntegerv.xml b/upstream-man-pages/man3/xhtml/glGetIntegerv.xml new file mode 100644 index 0000000..dd82b9d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetIntegerv.xml @@ -0,0 +1,4 @@ + + + +glGetIntegerv diff --git a/upstream-man-pages/man3/xhtml/glGetMultisample.xml b/upstream-man-pages/man3/xhtml/glGetMultisample.xml new file mode 100644 index 0000000..7f07432 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetMultisample.xml @@ -0,0 +1,33 @@ + + + +glGetMultisamplefv

Name

glGetMultisamplefv — retrieve the location of a sample

C Specification

void glGetMultisamplefv(GLenum pname,
 GLuint index,
 GLfloat *val);
 

Parameters

pname

+ Specifies the sample parameter name. pname must be GL_SAMPLE_POSITION. +

index

+ Specifies the index of the sample whose position to query. +

val

+ Specifies the address of an array to receive the position of the sample. +

Description

+ glGetMultisamplefv queries the location of a given sample. pname + specifies the sample parameter to retrieve and must be GL_SAMPLE_POSITION. index + corresponds to the sample for which the location should be returned. The sample location is returned as two floating-point + values in val[0] and val[1], each between 0 and 1, corresponding to the x + and y locations respectively in the GL pixel space of that sample. (0.5, 0.5) this corresponds to the + pixel center. index must be between zero and the value of GL_SAMPLES - 1. +

+ If the multisample mode does not have fixed sample locations, the returned values may only reflect the locations of samples + within some pixels. +

Errors

+ GL_INVALID_ENUM is generated if pname is not one GL_SAMPLE_POSITION. +

+ GL_INVALID_VALUE is generated if index is greater than or equal to the value of + GL_SAMPLES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetProgram.xml b/upstream-man-pages/man3/xhtml/glGetProgram.xml new file mode 100644 index 0000000..909fd4b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetProgram.xml @@ -0,0 +1,122 @@ + + + +glGetProgram

Name

glGetProgramiv — Returns a parameter from a program object

C Specification

void glGetProgramiv(GLuint program,
 GLenum pname,
 GLint *params);
 

Parameters

program

Specifies the program object to be + queried.

pname

Specifies the object parameter. Accepted + symbolic names are + GL_DELETE_STATUS, + GL_LINK_STATUS, + GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS, + GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_BLOCKS, + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH, + GL_ACTIVE_UNIFORM_MAX_LENGTH, + GL_TRANSFORM_FEEDBACK_BUFFER_MODE, + GL_TRANSFORM_FEEDBACK_VARYINGS, + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, and + GL_GEOMETRY_OUTPUT_TYPE.

params

Returns the requested object parameter.

Description

glGetProgram + returns in params + the value of a parameter for a specific program object. The following parameters are defined:

GL_DELETE_STATUS

+

params returns + GL_TRUE if + program is currently flagged + for deletion, and GL_FALSE + otherwise.

GL_LINK_STATUS

+

params returns + GL_TRUE if the last link + operation on program was + successful, and GL_FALSE + otherwise.

GL_VALIDATE_STATUS

+

params returns + GL_TRUE or if the last + validation operation on + program was successful, and + GL_FALSE + otherwise.

GL_INFO_LOG_LENGTH

+

params returns the + number of characters in the information log for + program including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If program has no + information log, a value of 0 is + returned.

GL_ATTACHED_SHADERS

+

params returns the + number of shader objects attached to + program.

GL_ACTIVE_ATTRIBUTES

+

params returns the + number of active attribute variables for + program.

GL_ACTIVE_ATTRIBUTE_MAX_LENGTH

+

params returns the + length of the longest active attribute name for + program, including the null + termination character (i.e., the size of the + character buffer required to store the longest + attribute name). If no active attributes exist, 0 is + returned.

GL_ACTIVE_UNIFORMS

+

params returns the + number of active uniform variables for + program.

GL_ACTIVE_UNIFORM_MAX_LENGTH

+

params returns the + length of the longest active uniform variable name + for program, including the + null termination character (i.e., the size of the + character buffer required to store the longest + uniform variable name). If no active uniform + variables exist, 0 is returned.

GL_TRANSFORM_FEEDBACK_BUFFER_MODE

+

params returns a symbolic constant + indicating the buffer mode used when transform feedback is active. + This may be GL_SEPARATE_ATTRIBS or + GL_INTERLEAVED_ATTRIBS.

GL_TRANSFORM_FEEDBACK_VARYINGS

+

params returns the number of varying + variables to capture in transform feedback mode for the program.

GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH

+

params returns the length of the longest + variable name to be used for transform feedback, including the null-terminator.

GL_GEOMETRY_VERTICES_OUT

+

params returns the maximum number of vertices + that the geometry shader in program will output.

GL_GEOMETRY_INPUT_TYPE

+

params returns a symbolic constant indicating + the primitive type accepted as input to the geometry shader contained in + program.

GL_GEOMETRY_OUTPUT_TYPE

+

params returns a symbolic constant indicating + the primitive type that will be output by the geometry shader contained + in program.

Notes

+ GL_ACTIVE_UNIFORM_BLOCKS and + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH + are available only if the GL version 3.1 or greater. +

+ GL_GEOMETRY_VERTICES_OUT, GL_GEOMETRY_INPUT_TYPE + and GL_GEOMETRY_OUTPUT_TYPE are accepted only if the GL + version is 3.2 or greater. +

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL.

GL_INVALID_OPERATION + is generated if program + does not refer to a program object.

GL_INVALID_OPERATION is generated if + pname is GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, or GL_GEOMETRY_OUTPUT_TYPE, + and program does not contain a geometry shader.

GL_INVALID_ENUM + is generated if pname + is not an accepted value.

Associated Gets

glGetActiveAttrib + with argument program

glGetActiveUniform + with argument program

glGetAttachedShaders + with argument program

glGetProgramInfoLog + with argument program

glIsProgram +

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetProgramInfoLog.xml b/upstream-man-pages/man3/xhtml/glGetProgramInfoLog.xml new file mode 100644 index 0000000..64b2f73 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetProgramInfoLog.xml @@ -0,0 +1,49 @@ + + + +glGetProgramInfoLog

Name

glGetProgramInfoLog — Returns the information log for a program object

C Specification

void glGetProgramInfoLog(GLuint program,
 GLsizei maxLength,
 GLsizei *length,
 GLchar *infoLog);
 

Parameters

program

Specifies the program object whose information + log is to be queried.

maxLength

Specifies the size of the character buffer for + storing the returned information log.

length

Returns the length of the string returned in + infoLog (excluding the null + terminator).

infoLog

Specifies an array of characters that is used + to return the information log.

Description

glGetProgramInfoLog returns the + information log for the specified program object. The + information log for a program object is modified when the + program object is linked or validated. The string that is + returned will be null terminated.

glGetProgramInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetProgram + with the value GL_INFO_LOG_LENGTH.

The information log for a program object is either an + empty string, or a string containing information about the last + link operation, or a string containing information about the + last validation operation. It may contain diagnostic messages, + warning messages, and other information. When a program object + is created, its information log will be a string of length + 0.

Notes

The information log for a program object is the OpenGL + implementer's primary mechanism for conveying information about + linking and validating. Therefore, the information log can be + helpful to application developers during the development + process, even when these operations are successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + maxLength is less than 0.

Associated Gets

glGetProgram + with argument GL_INFO_LOG_LENGTH

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetQueryObject.xml b/upstream-man-pages/man3/xhtml/glGetQueryObject.xml new file mode 100644 index 0000000..1c5a52d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetQueryObject.xml @@ -0,0 +1,55 @@ + + + +glGetQueryObject

Name

glGetQueryObject — return parameters of a query object

C Specification

void glGetQueryObjectiv(GLuint id,
 GLenum pname,
 GLint * params);
 
void glGetQueryObjectuiv(GLuint id,
 GLenum pname,
 GLuint * params);
 
void glGetQueryObjecti64v(GLuint id,
 GLenum pname,
 GLint64 * params);
 
void glGetQueryObjectui64v(GLuint id,
 GLenum pname,
 GLuint64 * params);
 

Parameters

id

+ Specifies the name of a query object. +

pname

+ Specifies the symbolic name of a query object parameter. + Accepted values are GL_QUERY_RESULT or GL_QUERY_RESULT_AVAILABLE. +

params

+ Returns the requested data. +

Description

+ glGetQueryObject returns in params a selected parameter of the query object + specified by id. +

+ pname names a specific query object parameter. pname can be as follows: +

GL_QUERY_RESULT

+ params returns the value of the query object's passed samples counter. + The initial value is 0. +

GL_QUERY_RESULT_AVAILABLE

+ params returns whether the passed samples counter is immediately available. + If a delay would occur waiting for the query result, GL_FALSE is returned. + Otherwise, GL_TRUE is returned, which also indicates that the results of all + previous queries are available as well. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetQueryObject implicitly flushes the GL pipeline so that any incomplete rendering + delimited by the occlusion query completes in finite time. +

+ If multiple queries are issued using the same query object id before calling + glGetQueryObject, the results of the most recent query will be returned. In this case, + when issuing a new query, the results of the previous query are discarded. +

+ glGetQueryObjecti64v and glGetQueryObjectui64v are available only + if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_OPERATION is generated if id is not the name of a query object. +

+ GL_INVALID_OPERATION is generated if id is the name of a currently active + query object. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetQueryiv.xml b/upstream-man-pages/man3/xhtml/glGetQueryiv.xml new file mode 100644 index 0000000..8f42a7e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetQueryiv.xml @@ -0,0 +1,37 @@ + + + +glGetQueryiv

Name

glGetQueryiv — return parameters of a query object target

C Specification

void glGetQueryiv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies a query object target. + Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_TIME_ELAPSED, or GL_TIMESTAMP. +

pname

+ Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. +

params

+ Returns the requested data. +

Description

+ glGetQueryiv returns in params a selected parameter of the query object target + specified by target. +

+ pname names a specific query object target parameter. When pname is + GL_CURRENT_QUERY, the name of the currently active query for target, + or zero if no query is active, will be placed in params. + If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number + of bits used to hold the result of queries for target is returned in params. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

See Also

+ glGetQueryObject, + glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetRenderbufferParameter.xml b/upstream-man-pages/man3/xhtml/glGetRenderbufferParameter.xml new file mode 100644 index 0000000..46d1f79 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetRenderbufferParameter.xml @@ -0,0 +1,41 @@ + + + +glGetRenderbufferParameteriv

Name

glGetRenderbufferParameteriv — retrieve information about a bound renderbuffer object

C Specification

void glGetRenderbufferParameteriv(GLenum target,
 GLenum pname,
 GLint *params);
 

Parameters

target

+ Specifies the target of the query operation. target must be GL_RENDERBUFFER. +

pname

+ Specifies the parameter whose value to retrieve from the renderbuffer bound to target. +

params

+ Specifies the address of an array to receive the value of the queried parameter. +

Description

+ glGetRenderbufferParameteriv retrieves information about a bound renderbuffer object. target + specifies the target of the query operation and must be GL_RENDERBUFFER. pname specifies + the parameter whose value to query and must be one of GL_RENDERBUFFER_WIDTH, GL_RENDERBUFFER_HEIGHT, + GL_RENDERBUFFER_INTERNAL_FORMAT, GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + GL_RENDERBUFFER_DEPTH_SIZE, GL_RENDERBUFFER_STENCIL_SIZE, or GL_RENDERBUFFER_SAMPLES. +

+ Upon a successful return from glGetRenderbufferParameteriv, if pname is GL_RENDERBUFFER_WIDTH, + GL_RENDERBUFFER_HEIGHT, GL_RENDERBUFFER_INTERNAL_FORMAT, or GL_RENDERBUFFER_SAMPLES, + then params will contain the width in pixels, the height in pixels, the internal format, or the number of samples, respectively, + of the image of the renderbuffer currently bound to target. +

+ If pname is GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + or GL_RENDERBUFFER_STENCIL_SIZE, then params will contain the actual resolutions (not the resolutions + specified when the image array was defined) for the red, green, blue, alpha depth, or stencil components, respectively, of the image of the + renderbuffer currently bound to target. +

Errors

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetSamplerParameter.xml b/upstream-man-pages/man3/xhtml/glGetSamplerParameter.xml new file mode 100644 index 0000000..e3d58c7 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetSamplerParameter.xml @@ -0,0 +1,103 @@ + + + +glGetSamplerParameter - OpenGL 3.3 Reference Pages

Name

glGetSamplerParameter — return sampler parameter values

C Specification

void glGetSamplerParameterfv(GLuint  sampler,
 GLenum  pname,
 GLfloat *  params);
void glGetSamplerParameteriv(GLuint  sampler,
 GLenum  pname,
 GLint *  params);
void glGetSamplerParameterIiv(GLuint  sampler,
 GLenum  pname,
 GLint *  params);
void glGetSamplerParameterIuiv(GLuint  sampler,
 GLenum  pname,
 GLuint *  params);

Parameters

sampler

+ Specifies name of the sampler object from which to retrieve parameters. +

pname

+ Specifies the symbolic name of a sampler parameter. + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, and + GL_TEXTURE_COMPARE_FUNC + are accepted. +

params

+ Returns the sampler parameters. +

Description

+ glGetSamplerParameter returns in params the value or values of the sampler parameter + specified as pname. + sampler defines the target sampler, and must be the name of an existing sampler object, returned from a previous call + to glGenSamplers. + pname accepts the same symbols as glSamplerParameter, + with the same interpretations: +

GL_TEXTURE_MAG_FILTER

+ Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. +

GL_TEXTURE_MIN_FILTER

+ Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MIN_LOD

+ Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . +

GL_TEXTURE_MAX_LOD

+ Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. +

GL_TEXTURE_WRAP_S

+ Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_T

+ Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). +

GL_TEXTURE_COMPARE_MODE

+ Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glSamplerParameter. +

GL_TEXTURE_COMPARE_FUNC

+ Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glSamplerParameter. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetSamplerParameter is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if sampler is not the name of a sampler object returned from + a previous call to glGenSamplers. +

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetShader.xml b/upstream-man-pages/man3/xhtml/glGetShader.xml new file mode 100644 index 0000000..af85a5d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetShader.xml @@ -0,0 +1,58 @@ + + + +glGetShader

Name

glGetShaderiv — Returns a parameter from a shader object

C Specification

void glGetShaderiv(GLuint shader,
 GLenum pname,
 GLint *params);
 

Parameters

shader

Specifies the shader object to be + queried.

pname

Specifies the object parameter. Accepted + symbolic names are + GL_SHADER_TYPE, + GL_DELETE_STATUS, + GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH.

params

Returns the requested object parameter.

Description

glGetShader + returns in params + the value of a parameter for a specific shader object. The + following parameters are defined:

GL_SHADER_TYPE

params returns + GL_VERTEX_SHADER if + shader is a vertex shader + object, GL_GEOMETRY_SHADER if shader + is a geometry shader object, and GL_FRAGMENT_SHADER + if shader is a fragment + shader object.

GL_DELETE_STATUS

params returns + GL_TRUE if + shader is currently flagged + for deletion, and GL_FALSE + otherwise.

GL_COMPILE_STATUS

params returns + GL_TRUE if the last compile + operation on shader was + successful, and GL_FALSE + otherwise.

GL_INFO_LOG_LENGTH

params returns the + number of characters in the information log for + shader including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If shader has no + information log, a value of 0 is returned.

GL_SHADER_SOURCE_LENGTH

params returns the + length of the concatenation of the source strings + that make up the shader source for the + shader, including the null + termination character. (i.e., the size of the + character buffer required to store the shader + source). If no source code exists, 0 is + returned.

Notes

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader does not refer to a shader + object.

GL_INVALID_ENUM is generated if + pname is not an accepted value.

Associated Gets

glGetShaderInfoLog + with argument shader

glGetShaderSource + with argument shader

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetShaderInfoLog.xml b/upstream-man-pages/man3/xhtml/glGetShaderInfoLog.xml new file mode 100644 index 0000000..313b5d2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetShaderInfoLog.xml @@ -0,0 +1,46 @@ + + + +glGetShaderInfoLog

Name

glGetShaderInfoLog — Returns the information log for a shader object

C Specification

void glGetShaderInfoLog(GLuint shader,
 GLsizei maxLength,
 GLsizei *length,
 GLchar *infoLog);
 

Parameters

shader

Specifies the shader object whose information + log is to be queried.

maxLength

Specifies the size of the character buffer for + storing the returned information log.

length

Returns the length of the string returned in + infoLog (excluding the null + terminator).

infoLog

Specifies an array of characters that is used + to return the information log.

Description

glGetShaderInfoLog returns the + information log for the specified shader object. The information + log for a shader object is modified when the shader is compiled. + The string that is returned will be null terminated.

glGetShaderInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetShader + with the value GL_INFO_LOG_LENGTH.

The information log for a shader object is a string that + may contain diagnostic messages, warning messages, and other + information about the last compile operation. When a shader + object is created, its information log will be a string of + length 0.

Notes

The information log for a shader object is the OpenGL + implementer's primary mechanism for conveying information about + the compilation process. Therefore, the information log can be + helpful to application developers during the development + process, even when compilation is successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + maxLength is less than 0.

Associated Gets

glGetShader + with argument GL_INFO_LOG_LENGTH

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetShaderSource.xml b/upstream-man-pages/man3/xhtml/glGetShaderSource.xml new file mode 100644 index 0000000..1d86e07 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetShaderSource.xml @@ -0,0 +1,39 @@ + + + +glGetShaderSource

Name

glGetShaderSource — Returns the source code string from a shader object

C Specification

void glGetShaderSource(GLuint  shader,
 GLsizei  bufSize,
 GLsizei * length,
 GLchar * source);

Parameters

shader

Specifies the shader object to be + queried.

bufSize

Specifies the size of the character buffer for + storing the returned source code string.

length

Returns the length of the string returned in + source (excluding the null + terminator).

source

Specifies an array of characters that is used + to return the source code string.

Description

glGetShaderSource returns the + concatenation of the source code strings from the shader object + specified by shader. The source code + strings for a shader object are the result of a previous call to + glShaderSource. + The string returned by the function will be null + terminated.

glGetShaderSource returns in + source as much of the source code string + as it can, up to a maximum of bufSize + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned source code + string can be obtained by calling + glGetShader + with the value + GL_SHADER_SOURCE_LENGTH.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGetShader + with argument + GL_SHADER_SOURCE_LENGTH

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetString.xml b/upstream-man-pages/man3/xhtml/glGetString.xml new file mode 100644 index 0000000..ec1e22c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetString.xml @@ -0,0 +1,74 @@ + + + +glGetString

Name

glGetString — return a string describing the current GL connection

C Specification

const GLubyte* glGetString(GLenum name);

C Specification

const GLubyte* glGetStringi(GLenum  name,
 GLuint  index);

Parameters

name

+ Specifies a symbolic constant, one of + GL_VENDOR, GL_RENDERER, + GL_VERSION, or GL_SHADING_LANGUAGE_VERSION. + Additionally, glGetStringi accepts the GL_EXTENSIONS token. +

index

+ For glGetStringi, specifies the index of the string to return. +

Description

+ glGetString returns a pointer to a static string + describing some aspect of the current GL connection. + name can be one of the following: +

GL_VENDOR

+

+ Returns the company responsible for this GL implementation. + This name does not change from release to release. +

GL_RENDERER

+

+ Returns the name of the renderer. + This name is typically specific to a particular configuration of a hardware + platform. + It does not change from release to release. +

GL_VERSION

+

+ Returns a version or release number. +

GL_SHADING_LANGUAGE_VERSION

+

+ Returns a version or release number for the shading language. +

+ glGetStringi returns a pointer to a static string + indexed by index. + name can be one of the following: +

GL_EXTENSIONS

+

+ For glGetStringi only, returns the extension string + supported by the implementation at index. +

+ Strings GL_VENDOR and GL_RENDERER together uniquely specify + a platform. They do not change from release to release and should be used + by platform-recognition algorithms. +

+ The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. + The version number uses one + of these forms: +

+ major_number.minor_number + major_number.minor_number.release_number +

+ Vendor-specific information may follow the version + number. Its format depends on the implementation, but + a space always separates the version number and + the vendor-specific information. +

+ All strings are null-terminated. +

Notes

+ If an error is generated, glGetString returns 0. +

+ The client and server may support different versions. + glGetString always returns a compatible version number. + The release number always describes the server. +

Errors

+ GL_INVALID_ENUM is generated if name is not an accepted value. +

+ GL_INVALID_VALUE is generated by glGetStringi if + index is outside the valid range for indexed state name. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetSync.xml b/upstream-man-pages/man3/xhtml/glGetSync.xml new file mode 100644 index 0000000..5b64d7a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetSync.xml @@ -0,0 +1,49 @@ + + + +glGetSynciv

Name

glGetSynciv — query the properties of a sync object

C Specification

void glGetSynciv(GLsync sync,
 GLenum pname,
 GLsizei bufSize,
 GLsizei *length,
 GLint *values);
 

Parameters

sync

+ Specifies the sync object whose properties to query. +

pname

+ Specifies the parameter whose value to retrieve from the sync object specified in sync. +

bufSize

+ Specifies the size of the buffer whose address is given in values. +

length

+ Specifies the address of an variable to receive the number of integers placed in values. +

values

+ Specifies the address of an array to receive the values of the queried parameter. +

Description

+ glGetSynciv retrieves properties of a sync object. sync specifies the name of the sync + object whose properties to retrieve. +

+ On success, glGetSynciv replaces up to bufSize integers in values with the + corresponding property values of the object being queried. The actual number of integers replaced is returned in the variable whose address is + specified in length. If length is NULL, no length is returned. +

+ If pname is GL_OBJECT_TYPE, a single value representing the specific type of the sync object is + placed in values. The only type supported is GL_SYNC_FENCE. +

+ If pname is GL_SYNC_STATUS, a single value representing the status of the sync object + (GL_SIGNALED or GL_UNSIGNALED) is placed in values. +

+ If pname is GL_SYNC_CONDITION, a single value representing the condition of the sync object + is placed in values. The only condition supported is GL_SYNC_GPU_COMMANDS_COMPLETE. +

+ If pname is GL_SYNC_FLAGS, a single value representing the flags with which the sync object + was created is placed in values. No flags are currently supported[1]. +

+ If an error occurs, nothing will be written to values or length. +

Errors

+ GL_INVALID_VALUE is generated if sync is not the name of a sync object. +

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +



[1] flags is + expected to be used in future extensions to the sync objects.

diff --git a/upstream-man-pages/man3/xhtml/glGetTexImage.xml b/upstream-man-pages/man3/xhtml/glGetTexImage.xml new file mode 100644 index 0000000..fae14d8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetTexImage.xml @@ -0,0 +1,218 @@ + + + +glGetTexImage

Name

glGetTexImage — return a texture image

C Specification

void glGetTexImage(GLenum  target,
 GLint  level,
 GLenum  format,
 GLenum  type,
 GLvoid *  img);

Parameters

target

+ Specifies which texture is to be obtained. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. +

level

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

format

+ Specifies a pixel format for the returned data. + The supported formats are + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RG, + GL_RGB, + GL_RGBA, + GL_BGR, + GL_BGRA, + GL_RED_INTEGER, + GL_GREEN_INTEGER, + GL_BLUE_INTEGER, + GL_RG_INTEGER, + GL_RGB_INTEGER, + GL_RGBA_INTEGER, + GL_BGR_INTEGER, + GL_BGRA_INTEGER. +

type

+ Specifies a pixel type for the returned data. + The supported types are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, and + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

img

+ Returns the texture image. + Should be a pointer to an array of the type specified by type. +

Description

+ glGetTexImage returns a texture image into img. + target specifies whether the desired texture image is one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_1D_ARRAY, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D or any of + GL_TEXTURE_CUBE_MAP_*), + or + glTexImage3D (GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D). + level specifies the level-of-detail number of the desired image. + format and type specify the format and type of the desired image array. + See the reference page for glTexImage1D + for a description of the acceptable values for the format and type + parameters, respectively. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. +

+ To understand the operation of glGetTexImage, consider the selected internal + four-component texture image to be an RGBA color buffer the size of the image. + The semantics of glGetTexImage are then identical to those of glReadPixels, + with the exception that no pixel transfer operations are performed, + when called with the same format and type, + with x and y set to 0, + width set to the width of the texture image + and height set to 1 for 1D images, + or to the height of the texture image + for 2D images. +

+ If the selected texture image does not contain four components, + the following mappings are applied. + Single-component textures are treated as RGBA buffers with red set + to the single-component value, + green set to 0, blue set to 0, and alpha set to 1. + Two-component textures are treated as RGBA buffers with red set to + the value of component zero, + alpha set to the value of component one, + and green and blue set to 0. + Finally, + three-component textures are treated as RGBA buffers with red set to + component zero, + green set to component one, + blue set to component two, + and alpha set to 1. +

+ To determine the required size of img, + use glGetTexLevelParameter to determine the dimensions of the + internal texture image, + then scale the required number of pixels by the storage required for + each pixel, + based on format and type. + Be sure to take the pixel storage parameters into account, + especially GL_PACK_ALIGNMENT. +

Notes

+ If an error is generated, + no change is made to the contents of img. +

+ glGetTexImage returns the texture image for the active texture unit. +

Errors

+ GL_INVALID_ENUM is generated if target, format, or type is not + an accepted value. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁡ + + max + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV and format is not GL_RGB. +

+ GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV and format is neither GL_RGBA + or GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and img is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexLevelParameter with argument GL_TEXTURE_WIDTH +

+ glGetTexLevelParameter with argument GL_TEXTURE_HEIGHT +

+ glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT +

+ glGet with arguments GL_PACK_ALIGNMENT and others +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetTexLevelParameter.xml b/upstream-man-pages/man3/xhtml/glGetTexLevelParameter.xml new file mode 100644 index 0000000..a61ccf1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetTexLevelParameter.xml @@ -0,0 +1,185 @@ + + + +glGetTexLevelParameter

Name

glGetTexLevelParameter — return texture parameter values for a specific level of detail

C Specification

void glGetTexLevelParameterfv(GLenum  target,
 GLint  level,
 GLenum  pname,
 GLfloat *  params);
void glGetTexLevelParameteriv(GLenum  target,
 GLint  level,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies the symbolic name of the target texture, + one of + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or + GL_TEXTURE_BUFFER. +

level

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

pname

+ Specifies the symbolic name of a texture parameter. + GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT, + GL_TEXTURE_DEPTH, + GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_BORDER, + GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_DEPTH_SIZE, + GL_TEXTURE_COMPRESSED, and + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + are accepted. +

params

+ Returns the requested data. +

Description

+ glGetTexLevelParameter returns in params texture parameter values for a specific + level-of-detail value, + specified as level. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

+ GL_MAX_TEXTURE_SIZE, and GL_MAX_3D_TEXTURE_SIZE are not really + descriptive enough. + It has to report the largest square texture image that can be + accommodated with mipmaps and borders, + but a long skinny texture, or a texture without mipmaps and borders, may + easily fit in texture memory. + The proxy targets allow the user to more accurately query + whether the GL can accommodate a texture of a given configuration. + If the texture cannot be accommodated, the texture state variables, which + may be queried with glGetTexLevelParameter, are set to 0. If the texture can be accommodated, + the texture state values will be set as they would be set for a + non-proxy target. +

+ pname specifies the texture parameter whose value or values + will be returned. +

+ The accepted parameter names are as follows: +

GL_TEXTURE_WIDTH

+

+ params returns a single value, + the width of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_HEIGHT

+

+ params returns a single value, + the height of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_DEPTH

+

+ params returns a single value, + the depth of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_INTERNAL_FORMAT

+

+ params returns a single value, + the internal format of the texture image. +

GL_TEXTURE_RED_TYPE,
GL_TEXTURE_GREEN_TYPE,
GL_TEXTURE_BLUE_TYPE,
GL_TEXTURE_ALPHA_TYPE,
GL_TEXTURE_DEPTH_TYPE

+

+ The data type used to store the component. + The types GL_NONE, GL_SIGNED_NORMALIZED, + GL_UNSIGNED_NORMALIZED, GL_FLOAT, + GL_INT, and GL_UNSIGNED_INT may be returned + to indicate signed normalized fixed-point, unsigned normalized fixed-point, floating-point, integer unnormalized, and + unsigned integer unnormalized components, respectively. +

GL_TEXTURE_RED_SIZE,
GL_TEXTURE_GREEN_SIZE,
GL_TEXTURE_BLUE_SIZE,
GL_TEXTURE_ALPHA_SIZE,
GL_TEXTURE_DEPTH_SIZE

+

+ The internal storage resolution of an individual component. + The resolution chosen by the GL will be a close match for the resolution + requested by the user with the component argument of glTexImage1D, + glTexImage2D, glTexImage3D, glCopyTexImage1D, and + glCopyTexImage2D. The initial value is 0. +

GL_TEXTURE_COMPRESSED

+

+ params returns a single boolean value indicating if the texture image is + stored in a compressed internal format. The initiali value is GL_FALSE. +

GL_TEXTURE_COMPRESSED_IMAGE_SIZE

+

+ params returns a single integer value, the number of unsigned bytes of the + compressed texture image that would be returned from + glGetCompressedTexImage. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetTexLevelParameter returns the texture level parameters for the active texture unit. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_BUFFER + and level is not zero. +

+ GL_INVALID_OPERATION is generated if + GL_TEXTURE_COMPRESSED_IMAGE_SIZE is queried on texture images with an + uncompressed internal format or on proxy targets. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetTexParameter.xml b/upstream-man-pages/man3/xhtml/glGetTexParameter.xml new file mode 100644 index 0000000..ac7714d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetTexParameter.xml @@ -0,0 +1,134 @@ + + + +glGetTexParameter - OpenGL 3.3 Reference Pages

Name

glGetTexParameter — return texture parameter values

C Specification

void glGetTexParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetTexParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);
void glGetTexParameterIiv(GLenum  target,
 GLenum  pname,
 GLint *  params);
void glGetTexParameterIuiv(GLenum  target,
 GLenum  pname,
 GLuint *  params);

Parameters

target

+ Specifies the symbolic name of the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D, + GL_TEXTURE_RECTANGLE, and + GL_TEXTURE_CUBE_MAP + are accepted. +

pname

+ Specifies the symbolic name of a texture parameter. + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, and + GL_TEXTURE_WRAP_R + are accepted. +

params

+ Returns the texture parameters. +

Description

+ glGetTexParameter returns in params the value or values of the texture parameter + specified as pname. + target defines the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, and + GL_TEXTURE_CUBE_MAP + specify one-, two-, or three-dimensional, one-dimensional array, two-dimensional array, rectangle or cube-mapped texturing, respectively. + pname accepts the same symbols as glTexParameter, + with the same interpretations: +

GL_TEXTURE_MAG_FILTER

+ Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. +

GL_TEXTURE_MIN_FILTER

+ Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MIN_LOD

+ Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . +

GL_TEXTURE_MAX_LOD

+ Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. +

GL_TEXTURE_BASE_LEVEL

+ Returns the single-valued base texture mipmap level. The initial value is 0. +

GL_TEXTURE_MAX_LEVEL

+ Returns the single-valued maximum texture mipmap array level. The initial + value is 1000. +

GL_TEXTURE_SWIZZLE_R

+ Returns the red component swizzle. The initial value is GL_RED. +

GL_TEXTURE_SWIZZLE_G

+ Returns the green component swizzle. The initial value is GL_GREEN. +

GL_TEXTURE_SWIZZLE_B

+ Returns the blue component swizzle. The initial value is GL_BLUE. +

GL_TEXTURE_SWIZZLE_A

+ Returns the alpha component swizzle. The initial value is GL_ALPHA. +

GL_TEXTURE_SWIZZLE_RGBA

+ Returns the component swizzle for all channels in a single query. +

GL_TEXTURE_WRAP_S

+ Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_T

+ Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). +

GL_TEXTURE_COMPARE_MODE

+ Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glTexParameter. +

GL_TEXTURE_COMPARE_FUNC

+ Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glTexParameter. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

See Also

+ glTexParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetTransformFeedbackVarying.xml b/upstream-man-pages/man3/xhtml/glGetTransformFeedbackVarying.xml new file mode 100644 index 0000000..4892163 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetTransformFeedbackVarying.xml @@ -0,0 +1,67 @@ + + + +glGetTransformFeedbackVarying

Name

glGetTransformFeedbackVarying — retrieve information about varying variables selected for transform feedback

C Specification

void glGetTransformFeedbackVarying(GLuint program,
 GLuint index,
 GLsizei bufSize,
 GLsizei * length,
 GLsizei size,
 GLenum * type,
 char * name);

Parameters

program

+ The name of the target program object. +

index

+ The index of the varying variable whose information to retrieve. +

bufSize

+ The maximum number of characters, including the null terminator, that may be written into name. +

length

+ The address of a variable which will receive the number of characters written into name, + excluding the null-terminator. If length is NULL no length is returned. +

size

+ The address of a variable that will receive the size of the varying. +

type

+ The address of a variable that will recieve the type of the varying. +

name

+ The address of a buffer into which will be written the name of the varying. +

Description

+ Information about the set of varying variables in a linked program that will be captured + during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. + glGetTransformFeedbackVarying provides information about the varying + variable selected by index. An index of 0 selects + the first varying variable specified in the varyings array passed + to glTransformFeedbackVaryings, and + an index of GL_TRANSFORM_FEEDBACK_VARYINGS-1 selects + the last such variable. +

+ The name of the selected varying is returned as a null-terminated string in + name. The actual number of characters written into name, + excluding the null terminator, is returned in length. If length + is NULL, no length is returned. The maximum number of characters that may be written into name, + including the null terminator, is specified by bufSize. +

+ The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + which can be queried with glGetProgram. +

+ For the selected varying variable, its type is returned into type. The size of + the varying is returned into size. The value in size is + in units of the type returned in type. The type returned can be any of the + scalar, vector, or matrix attribute types returned by glGetActiveAttrib. + If an error occurred, the return parameters length, size, + type and name will be unmodified. This command will return as much + information about the varying variables as possible. If no information is available, length + will be set to zero and name will be an empty string. This situation could + arise if glGetTransformFeedbackVarying is called after a failed link. +

Errors

+ GL_INVALID_VALUE is generated if program is not + the name of a program object. +

+ GL_INVALID_VALUE is generated if index is greater or equal to + the value of GL_TRANSFORM_FEEDBACK_VARYINGS. +

+ GL_INVALID_OPERATION is generated program has not been linked. +

Associated Gets

+ glGetProgram with argument GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetUniform.xml b/upstream-man-pages/man3/xhtml/glGetUniform.xml new file mode 100644 index 0000000..889d55f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetUniform.xml @@ -0,0 +1,55 @@ + + + +glGetUniform - OpenGL 3.3 Reference Pages

Name

glGetUniform — Returns the value of a uniform variable

C Specification

void glGetUniformfv(GLuint  program,
 GLint  location,
 GLfloat * params);
void glGetUniformiv(GLuint  program,
 GLint  location,
 GLint * params);
void glGetUniformuiv(GLuint  program,
 GLint  location,
 GLuint * params);

Parameters

program

Specifies the program object to be + queried.

location

Specifies the location of the uniform variable + to be queried.

params

Returns the value of the specified uniform + variable.

Description

glGetUniform returns in + params the value(s) of the specified + uniform variable. The type of the uniform variable specified by + location determines the number of values + returned. If the uniform variable is defined in the shader as a + boolean, int, or float, a single value will be returned. If it + is defined as a vec2, ivec2, or bvec2, two values will be + returned. If it is defined as a vec3, ivec3, or bvec3, three + values will be returned, and so on. To query values stored in + uniform variables declared as arrays, call + glGetUniform for each element of the array. + To query values stored in uniform variables declared as + structures, call glGetUniform for each + field in the structure. The values for uniform variables + declared as a matrix will be returned in column major + order.

The locations assigned to uniform variables are not known + until the program object is linked. After linking has occurred, + the command + glGetUniformLocation + can be used to obtain the location of a uniform variable. This + location value can then be passed to + glGetUniform in order to query the current + value of the uniform variable. After a program object has been + linked successfully, the index values for uniform variables + remain fixed until the next link command occurs. The uniform + variable values can only be queried after a link if the link was + successful.

Notes

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

GL_INVALID_OPERATION is generated if + location does not correspond to a valid + uniform variable location for the specified program object.

Associated Gets

glGetActiveUniform + with arguments program and the index of an active + uniform variable

glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH

glGetUniformLocation + with arguments program and the name of a + uniform variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetUniformBlockIndex.xml b/upstream-man-pages/man3/xhtml/glGetUniformBlockIndex.xml new file mode 100644 index 0000000..80901dc --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetUniformBlockIndex.xml @@ -0,0 +1,36 @@ + + + +glGetUniformBlockIndex

Name

glGetUniformBlockIndex — retrieve the index of a named uniform block

C Specification

GLuint glGetUniformBlockIndex(GLuint program,
 const GLchar *uniformBlockName);
 

Parameters

program

+ Specifies the name of a program containing the uniform block. +

uniformBlockName

+ Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. +

Description

+ glGetUniformBlockIndex retrieves the index of a uniform block within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. +

+ glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName + of program. If uniformBlockName does not identify an active uniform block of program, + glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform + blocks of a program are assigned in consecutive order, beginning with zero. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

Notes

+ glGetUniformBlockIndex is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetUniformIndices.xml b/upstream-man-pages/man3/xhtml/glGetUniformIndices.xml new file mode 100644 index 0000000..c8bd13c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetUniformIndices.xml @@ -0,0 +1,44 @@ + + + +glGetUniformIndices

Name

glGetUniformIndices — retrieve the index of a named uniform block

C Specification

GLuint glGetUniformIndices(GLuint program,
 GLsizei uniformCount,
 const GLchar **uniformNames,
 GLuint *uniformIndices);
 

Parameters

program

+ Specifies the name of a program containing uniforms whose indices to query. +

uniformCount

+ Specifies the number of uniforms whose indices to query. +

uniformNames

+ Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. +

uniformIndices

+ Specifies the address of an array that will receive the indices of the uniforms. +

Description

+ glGetUniformIndices retrieves the indices of a number of uniforms within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformCount indicates both the number of elements in the array of names uniformNames and the + number of indices that may be written to uniformIndices. +

+ uniformNames contains a list of uniformCount name strings identifying the uniform names to be + queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will + be written to the corresponding element of uniformIndices. If a string in uniformNames is not + the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of + uniformIndices. +

+ If an error occurs, nothing is written to uniformIndices. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

Notes

+ glGetUniformIndices is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetUniformLocation.xml b/upstream-man-pages/man3/xhtml/glGetUniformLocation.xml new file mode 100644 index 0000000..4ebab54 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetUniformLocation.xml @@ -0,0 +1,60 @@ + + + +glGetUniformLocation

Name

glGetUniformLocation — Returns the location of a uniform variable

C Specification

GLint glGetUniformLocation(GLuint  program,
 const GLchar * name);

Parameters

program

Specifies the program object to be + queried.

name

Points to a null terminated string containing + the name of the uniform variable whose location is + to be queried.

Description

glGetUniformLocation returns an + integer that represents the location of a specific uniform + variable within a program object. name + must be a null terminated string that contains no white space. + name must be an active uniform variable + name in program that is not a structure, + an array of structures, or a subcomponent of a vector or a + matrix. This function returns -1 if name + does not correspond to an active uniform variable in + program or if name + starts with the reserved prefix "gl_".

Uniform variables that are structures or arrays of + structures may be queried by calling + glGetUniformLocation for each field within + the structure. The array element operator "[]" and the + structure field operator "." may be used in + name in order to select elements within + an array or fields within a structure. The result of using these + operators is not allowed to be another structure, an array of + structures, or a subcomponent of a vector or a matrix. Except if + the last part of name indicates a uniform + variable array, the location of the first element of an array + can be retrieved by using the name of the array, or by using the + name appended by "[0]".

The actual locations assigned to uniform variables are not + known until the program object is linked successfully. After + linking has occurred, the command + glGetUniformLocation can be used to obtain + the location of a uniform variable. This location value can then + be passed to + glUniform + to set the value of the uniform variable or to + glGetUniform + in order to query the current value of the uniform variable. + After a program object has been linked successfully, the index + values for uniform variables remain fixed until the next link + command occurs. Uniform variable locations and values can only + be queried after a link if the link was successful.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

Associated Gets

glGetActiveUniform + with arguments program and the index of + an active uniform variable

glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH

glGetUniform + with arguments program and the name of a + uniform variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetVertexAttrib.xml b/upstream-man-pages/man3/xhtml/glGetVertexAttrib.xml new file mode 100644 index 0000000..3c9b420 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetVertexAttrib.xml @@ -0,0 +1,104 @@ + + + +glGetVertexAttrib

Name

glGetVertexAttrib — Return a generic vertex attribute parameter

C Specification

void glGetVertexAttribdv(GLuint  index,
 GLenum  pname,
 GLdouble * params);
void glGetVertexAttribfv(GLuint  index,
 GLenum  pname,
 GLfloat * params);
void glGetVertexAttribiv(GLuint  index,
 GLenum  pname,
 GLint * params);
void glGetVertexAttribIiv(GLuint  index,
 GLenum  pname,
 GLint * params);
void glGetVertexAttribIuiv(GLuint  index,
 GLenum  pname,
 GLuint * params);

Parameters

index

Specifies the generic vertex attribute + parameter to be queried.

pname

Specifies the symbolic name of the vertex + attribute parameter to be queried. Accepted values are + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR, or + GL_CURRENT_VERTEX_ATTRIB.

params

Returns the requested data.

Description

glGetVertexAttrib returns in + params the value of a generic vertex + attribute parameter. The generic vertex attribute to be queried + is specified by index, and the parameter + to be queried is specified by pname.

The accepted parameter names are as follows:

GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING

+

params returns a + single value, the name of the buffer object currently bound to + the binding point corresponding to generic vertex attribute array + index. If no buffer object is bound, + 0 is returned. The initial value is 0.

GL_VERTEX_ATTRIB_ARRAY_ENABLED

+

params returns a + single value that is non-zero (true) if the vertex + attribute array for index is + enabled and 0 (false) if it is disabled. The initial + value is GL_FALSE.

GL_VERTEX_ATTRIB_ARRAY_SIZE

+

params returns a + single value, the size of the vertex attribute array + for index. The size is the + number of values for each element of the vertex + attribute array, and it will be 1, 2, 3, or 4. The + initial value is 4.

GL_VERTEX_ATTRIB_ARRAY_STRIDE

+

params returns a + single value, the array stride for (number of bytes + between successive elements in) the vertex attribute + array for index. A value of 0 + indicates that the array elements are stored + sequentially in memory. The initial value is 0.

GL_VERTEX_ATTRIB_ARRAY_TYPE

+

params returns a + single value, a symbolic constant indicating the + array type for the vertex attribute array for + index. Possible values are + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, and + GL_DOUBLE. The initial value is + GL_FLOAT.

GL_VERTEX_ATTRIB_ARRAY_NORMALIZED

+

params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index are normalized when + they are converted to floating point, and 0 (false) + otherwise. The initial value is + GL_FALSE.

GL_VERTEX_ATTRIB_ARRAY_INTEGER

+

params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index have integer data types, and 0 (false) + otherwise. The initial value is + 0 (GL_FALSE).

GL_VERTEX_ATTRIB_ARRAY_DIVISOR

+

params returns a + single value that is the frequency divisor used for instanced + rendering. See glVertexAttribDivisor. + The initial value is 0.

GL_CURRENT_VERTEX_ATTRIB

+

params returns four + values that represent the current value for the + generic vertex attribute specified by index. Generic + vertex attribute 0 is unique in that it has no + current state, so an error will be generated if + index is 0. The initial value + for all other generic vertex attributes is + (0,0,0,1).

All of the parameters except GL_CURRENT_VERTEX_ATTRIB + represent state stored in the currently bound vertex array object.

Notes

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_OPERATION is generated if pname + is not GL_CURRENT_VERTEX_ATTRIB and there is no + currently bound vertex array object.

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM is generated if + pname is not an accepted value.

GL_INVALID_OPERATION is generated if + index is 0 and + pname is + GL_CURRENT_VERTEX_ATTRIB.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glGetVertexAttribPointerv.xml b/upstream-man-pages/man3/xhtml/glGetVertexAttribPointerv.xml new file mode 100644 index 0000000..0d5d581 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glGetVertexAttribPointerv.xml @@ -0,0 +1,27 @@ + + + +glGetVertexAttribPointerv

Name

glGetVertexAttribPointerv — return the address of the specified generic vertex attribute pointer

C Specification

void glGetVertexAttribPointerv(GLuint  index,
 GLenum  pname,
 GLvoid ** pointer);

Parameters

index

Specifies the generic vertex attribute + parameter to be returned.

pname

Specifies the symbolic name of the generic + vertex attribute parameter to be returned. Must be + GL_VERTEX_ATTRIB_ARRAY_POINTER.

pointer

Returns the pointer value.

Description

glGetVertexAttribPointerv returns + pointer information. index is the generic + vertex attribute to be queried, pname is + a symbolic constant indicating the pointer to be returned, and + params is a pointer to a location in + which to place the returned data.

The pointer returned is a byte offset into the data store of the buffer object + that was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously specified. +

Notes

The state returned is retrieved from the currently bound vertex array object.

The initial value for each pointer is 0.

Errors

GL_INVALID_OPERATION is generated if no vertex array object is currently bound.

GL_INVALID_VALUE + is generated if index + is greater than or equal to GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM + is generated if pname + is not an accepted value.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glHint.xml b/upstream-man-pages/man3/xhtml/glHint.xml new file mode 100644 index 0000000..f567a7c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glHint.xml @@ -0,0 +1,77 @@ + + + +glHint

Name

glHint — specify implementation-specific hints

C Specification

void glHint(GLenum target, GLenum mode);

Parameters

target

+ Specifies a symbolic constant indicating the behavior to be controlled. + GL_LINE_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT, + GL_TEXTURE_COMPRESSION_HINT, and + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + are accepted. +

mode

+ Specifies a symbolic constant indicating the desired behavior. + GL_FASTEST, + GL_NICEST, and + GL_DONT_CARE are accepted. +

Description

+ Certain aspects of GL behavior, + when there is room for interpretation, + can be controlled with hints. + A hint is specified with two arguments. + target is a symbolic + constant indicating the behavior to be controlled, + and mode is another symbolic constant indicating the desired + behavior. The initial value for each target is GL_DONT_CARE. + mode can be one of the following: +

GL_FASTEST

+

+ The most efficient option should be chosen. +

GL_NICEST

+

+ The most correct, + or highest quality, + option should be chosen. +

GL_DONT_CARE

+

+ No preference. +

+ Though the implementation aspects that can be hinted are well defined, + the interpretation of the hints depends on the implementation. + The hint aspects that can be specified with target, + along with suggested semantics, + are as follows: +

GL_FRAGMENT_SHADER_DERIVATIVE_HINT

+

+ Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: + dFdx, dFdy, and fwidth. +

GL_LINE_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased lines. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. +

GL_POLYGON_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased polygons. + Hinting GL_NICEST can result in more pixel fragments being generated + during rasterization, + if a larger filter function is applied. +

GL_TEXTURE_COMPRESSION_HINT

+

+ Indicates the quality and performance of the compressing texture images. + Hinting GL_FASTEST indicates that texture images should be compressed + as quickly as possible, while GL_NICEST indicates that texture images + should be compressed with as little image quality loss as possible. + GL_NICEST should be selected if the texture is to be retrieved by + glGetCompressedTexImage for reuse. +

Notes

+ The interpretation of hints depends on the implementation. + Some implementations ignore glHint settings. +

Errors

+ GL_INVALID_ENUM is generated if either target or mode is not + an accepted value. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsBuffer.xml b/upstream-man-pages/man3/xhtml/glIsBuffer.xml new file mode 100644 index 0000000..1c89f75 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsBuffer.xml @@ -0,0 +1,23 @@ + + + +glIsBuffer

Name

glIsBuffer — determine if a name corresponds to a buffer object

C Specification

GLboolean glIsBuffer(GLuint buffer);

Parameters

buffer

+ Specifies a value that may be the name of a buffer object. +

Description

+ glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. + If buffer is zero, or is a non-zero value that is not currently the + name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. +

+ A name returned by glGenBuffers, but not yet associated with a buffer object + by calling glBindBuffer, is not the name of a buffer object. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsEnabled.xml b/upstream-man-pages/man3/xhtml/glIsEnabled.xml new file mode 100644 index 0000000..a49c9bf --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsEnabled.xml @@ -0,0 +1,133 @@ + + + +glIsEnabled - OpenGL 3.3 Reference Pages

Name

glIsEnabled, glIsEnabledi — test whether a capability is enabled

C Specification

GLboolean glIsEnabled(GLenum cap);

GLboolean glIsEnabledi(GLenum  cap,
 GLuint  index);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

index

+ Specifies the index of the capability. +

Description

+ glIsEnabled returns GL_TRUE if cap is an enabled capability + and returns GL_FALSE otherwise. Boolean states that are indexed may be tested with glIsEnabledi. + For glIsEnabledi, index specifies the index of the capability to test. index + must be between zero and the count of indexed capabilities for cap. + Initially all capabilities except GL_DITHER are disabled; + GL_DITHER is initially enabled. +

+ The following capabilities are accepted for cap: +

+

+ Constant + + See +
+ GL_BLEND + + glBlendFunc, glLogicOp +
+ GL_CLIP_DISTANCEi + + glEnable +
+ GL_COLOR_LOGIC_OP + + glLogicOp +
+ GL_CULL_FACE + + glCullFace +
+ GL_DEPTH_CLAMP + + glEnable +
+ GL_DEPTH_TEST + + glDepthFunc, glDepthRange +
+ GL_DITHER + + glEnable +
+ GL_FRAMEBUFFER_SRGB + + glEnable +
+ GL_LINE_SMOOTH + + glLineWidth +
+ GL_MULTISAMPLE + + glSampleCoverage +
+ GL_POLYGON_SMOOTH + + glPolygonMode +
+ GL_POLYGON_OFFSET_FILL + + glPolygonOffset +
+ GL_POLYGON_OFFSET_LINE + + glPolygonOffset +
+ GL_POLYGON_OFFSET_POINT + + glPolygonOffset +
+ GL_PROGRAM_POINT_SIZE + + glEnable +
+ GL_PRIMITIVE_RESTART + + glEnable, glPrimitiveRestartIndex +
+ GL_SAMPLE_ALPHA_TO_COVERAGE + + glSampleCoverage +
+ GL_SAMPLE_ALPHA_TO_ONE + + glSampleCoverage +
+ GL_SAMPLE_COVERAGE + + glSampleCoverage +
+ GL_SAMPLE_MASK + + glEnable +
+ GL_SCISSOR_TEST + + glScissor +
+ GL_STENCIL_TEST + + glStencilFunc, glStencilOp +
+ GL_TEXTURE_CUBEMAP_SEAMLESS + + glEnable +

+

Notes

+ If an error is generated, + glIsEnabled and glIsEnabledi return GL_FALSE. +

Errors

+ GL_INVALID_ENUM is generated if cap is not an accepted value. +

+ GL_INVALID_VALUE is generated by glIsEnabledi if index is outside the + valid range for the indexed state cap. +

See Also

+ glEnable, + glDisable, + glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010-2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsFramebuffer.xml b/upstream-man-pages/man3/xhtml/glIsFramebuffer.xml new file mode 100644 index 0000000..06932d2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsFramebuffer.xml @@ -0,0 +1,22 @@ + + + +glIsFramebuffer

Name

glIsFramebuffer — determine if a name corresponds to a framebuffer object

C Specification

GLboolean glIsFramebuffer(GLuint  framebuffer);

Parameters

framebuffer

+ Specifies a value that may be the name of a framebuffer object. +

Description

+ glIsFramebuffer returns GL_TRUE if framebuffer is currently the name of a framebuffer + object. If framebuffer is zero, or if framebuffer is not the name of a framebuffer object, or if an error + occurs, glIsFramebuffer returns GL_FALSE. If framebuffer is a name returned by + glGenFramebuffers, by that has not yet been bound through a call to + glBindFramebuffer, then the name is not a framebuffer object and glIsFramebuffer + returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsProgram.xml b/upstream-man-pages/man3/xhtml/glIsProgram.xml new file mode 100644 index 0000000..3a6e1ee --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsProgram.xml @@ -0,0 +1,42 @@ + + + +glIsProgram

Name

glIsProgram — Determines if a name corresponds to a program object

C Specification

GLboolean glIsProgram(GLuint program);

Parameters

program

Specifies a potential program object.

Description

glIsProgram returns + GL_TRUE if program + is the name of a program object previously created with + glCreateProgram + and not yet deleted with glDeleteProgram. + If program is zero or a non-zero value that + is not the name of a program object, or if an error occurs, + glIsProgram returns GL_FALSE.

Notes

No error is generated if program is + not a valid program object name.

A program object marked for deletion with glDeleteProgram + but still in use as part of current rendering state is still considered + a program object and glIsProgram will return GL_TRUE.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with arguments program and the index of + an active attribute variable

glGetActiveUniform + with arguments program and the index of + an active uniform variable

glGetAttachedShaders + with argument program

glGetAttribLocation + with arguments program and the name of an + attribute variable

glGetProgram + with arguments program and the parameter + to be queried

glGetProgramInfoLog + with argument program

glGetUniform + with arguments program and the location + of a uniform variable

glGetUniformLocation + with arguments program and the name of a + uniform variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsQuery.xml b/upstream-man-pages/man3/xhtml/glIsQuery.xml new file mode 100644 index 0000000..d77ff6a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsQuery.xml @@ -0,0 +1,23 @@ + + + +glIsQuery

Name

glIsQuery — determine if a name corresponds to a query object

C Specification

GLboolean glIsQuery(GLuint id);

Parameters

id

+ Specifies a value that may be the name of a query object. +

Description

+ glIsQuery returns GL_TRUE if id is currently the name of a query object. + If id is zero, or is a non-zero value that is not currently the + name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. +

+ A name returned by glGenQueries, but not yet associated with a query object + by calling glBeginQuery, is not the name of a query object. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsRenderbuffer.xml b/upstream-man-pages/man3/xhtml/glIsRenderbuffer.xml new file mode 100644 index 0000000..7366152 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsRenderbuffer.xml @@ -0,0 +1,23 @@ + + + +glIsRenderbuffer

Name

glIsRenderbuffer — determine if a name corresponds to a renderbuffer object

C Specification

GLboolean glIsRenderbuffer(GLuint  renderbuffer);

Parameters

renderbuffer

+ Specifies a value that may be the name of a renderbuffer object. +

Description

+ glIsRenderbuffer returns GL_TRUE if renderbuffer is currently the name of a renderbuffer + object. If renderbuffer is zero, or if renderbuffer is not the name of a renderbuffer object, or if an error + occurs, glIsRenderbuffer returns GL_FALSE. If renderbuffer is a name returned by + glGenRenderbuffers, by that has not yet been bound through a call to + glBindRenderbuffer or glFramebufferRenderbuffer, + then the name is not a renderbuffer object and glIsRenderbuffer returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsSampler.xml b/upstream-man-pages/man3/xhtml/glIsSampler.xml new file mode 100644 index 0000000..fcdcb75 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsSampler.xml @@ -0,0 +1,23 @@ + + + +glIsSampler

Name

glIsSampler — determine if a name corresponds to a sampler object

C Specification

GLboolean glIsSampler(GLuint id);
 

Parameters

id

+ Specifies a value that may be the name of a sampler object. +

Description

+ glIsSampler returns GL_TRUE if id is currently the name of a sampler object. + If id is zero, or is a non-zero value that is not currently the + name of a sampler object, or if an error occurs, glIsSampler returns GL_FALSE. +

+ A name returned by glGenSamplers, is the name of a sampler object. +

Notes

+ glIsSampler is available only if the GL version is 3.3 or higher. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsShader.xml b/upstream-man-pages/man3/xhtml/glIsShader.xml new file mode 100644 index 0000000..a357277 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsShader.xml @@ -0,0 +1,31 @@ + + + +glIsShader

Name

glIsShader — Determines if a name corresponds to a shader object

C Specification

GLboolean glIsShader(GLuint shader);

Parameters

shader

Specifies a potential shader object.

Description

glIsShader returns + GL_TRUE if shader is + the name of a shader object previously created with + glCreateShader + and not yet deleted with glDeleteShader. + If shader is + zero or a non-zero value that is not the name of a shader + object, or if an error occurs, glIsShader returns + GL_FALSE.

Notes

No error is generated if shader is + not a valid shader object name.

A shader object marked for deletion with glDeleteShader + but still attached to a program object is still considered + a shader object and glIsShader will return GL_TRUE.

Associated Gets

glGetAttachedShaders + with a valid program object

glGetShader + with arguments shader and a parameter to + be queried

glGetShaderInfoLog + with argument object

glGetShaderSource + with argument object

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsSync.xml b/upstream-man-pages/man3/xhtml/glIsSync.xml new file mode 100644 index 0000000..30a040a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsSync.xml @@ -0,0 +1,22 @@ + + + +glIsSync

Name

glIsSync — determine if a name corresponds to a sync object

C Specification

GLboolean glIsSync(GLsync sync);

Parameters

sync

+ Specifies a value that may be the name of a sync object. +

Description

+ glIsSync returns GL_TRUE if sync is currently the name of a sync object. + If sync is not the name of a sync object, or if an error occurs, glIsSync returns + GL_FALSE. Note that zero is not the name of a sync object. +

Notes

+ glIsSync is available only if the GL version is 3.2 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsTexture.xml b/upstream-man-pages/man3/xhtml/glIsTexture.xml new file mode 100644 index 0000000..6cb4c86 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsTexture.xml @@ -0,0 +1,30 @@ + + + +glIsTexture

Name

glIsTexture — determine if a name corresponds to a texture

C Specification

GLboolean glIsTexture(GLuint texture);

Parameters

texture

+ Specifies a value that may be the name of a texture. +

Description

+ glIsTexture returns GL_TRUE if texture is currently the name of a texture. + If texture is zero, or is a non-zero value that is not currently the + name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. +

+ A name returned by glGenTextures, but not yet associated with a texture + by calling glBindTexture, is not the name of a texture. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glIsVertexArray.xml b/upstream-man-pages/man3/xhtml/glIsVertexArray.xml new file mode 100644 index 0000000..cee168b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glIsVertexArray.xml @@ -0,0 +1,22 @@ + + + +glIsVertexArray

Name

glIsVertexArray — determine if a name corresponds to a vertex array object

C Specification

GLboolean glIsVertexArray(GLuint array);

Parameters

array

+ Specifies a value that may be the name of a vertex array object. +

Description

+ glIsVertexArray returns GL_TRUE if array is currently the name of a renderbuffer + object. If renderbuffer is zero, or if array is not the name of a renderbuffer object, or if an error + occurs, glIsVertexArray returns GL_FALSE. If array is a name returned by + glGenVertexArrays, by that has not yet been bound through a call to + glBindVertexArray, then the name is not a vertex array object and + glIsVertexArray returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glLineWidth.xml b/upstream-man-pages/man3/xhtml/glLineWidth.xml new file mode 100644 index 0000000..db317d6 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glLineWidth.xml @@ -0,0 +1,93 @@ + + + +glLineWidth

Name

glLineWidth — specify the width of rasterized lines

C Specification

void glLineWidth(GLfloat width);
 

Parameters

width

+ Specifies the width of rasterized lines. + The initial value is 1. +

Description

+ glLineWidth specifies the rasterized width of both aliased and antialiased + lines. + Using a line width other than 1 has different effects, + depending on whether line antialiasing is enabled. + To enable and disable line antialiasing, call + glEnable and glDisable + with argument GL_LINE_SMOOTH. Line antialiasing is initially + disabled. +

+ If line antialiasing is disabled, + the actual width is determined by rounding the supplied width + to the nearest integer. + (If the rounding results in the value 0, + it is as if the line width were 1.) + If + + + + + + Δ + x + + + >= + + + Δ + y + + + + , + i pixels are filled in each column that is rasterized, + where i is the rounded value of width. + Otherwise, + i pixels are filled in each row that is rasterized. +

+ If antialiasing is enabled, + line rasterization produces a fragment for each pixel square + that intersects the region lying within the rectangle having width + equal to the current line width, + length equal to the actual length of the line, + and centered on the mathematical line segment. + The coverage value for each fragment is the window coordinate area + of the intersection of the rectangular region with the corresponding + pixel square. + This value is saved and used in the final rasterization step. +

+ Not all widths can be supported when line antialiasing is enabled. If an + unsupported width is requested, the nearest supported width is used. + Only width 1 is guaranteed to be supported; others depend on the + implementation. Likewise, there is a range for aliased line widths as well. + To query the range of supported widths and the size + difference between supported widths within the range, call glGet + with arguments GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. +

Notes

+ The line width specified by glLineWidth is always returned when GL_LINE_WIDTH + is queried. + Clamping and rounding for aliased and antialiased lines have no effect on the specified value. +

+ Nonantialiased line width may be clamped to an implementation-dependent maximum. Call glGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the maximum width. +

+ In OpenGL 1.2, the tokens GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY were replaced by GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. The old names are retained for backward compatibility, but should not be used in new code. +

Errors

+ GL_INVALID_VALUE is generated if width is less than or equal to 0. +

Associated Gets

+ glGet with argument GL_LINE_WIDTH +

+ glGet with argument GL_ALIASED_LINE_WIDTH_RANGE +

+ glGet with argument GL_SMOOTH_LINE_WIDTH_RANGE +

+ glGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY +

+ glIsEnabled with argument GL_LINE_SMOOTH +

See Also

+ glEnable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glLinkProgram.xml b/upstream-man-pages/man3/xhtml/glLinkProgram.xml new file mode 100644 index 0000000..3627ab3 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glLinkProgram.xml @@ -0,0 +1,136 @@ + + + +glLinkProgram

Name

glLinkProgram — Links a program object

C Specification

void glLinkProgram(GLuint program);

Parameters

program

Specifies the handle of the program object to be linked.

Description

glLinkProgram links the program + object specified by program. If any + shader objects of type GL_VERTEX_SHADER are + attached to program, they will be used to + create an executable that will run on the programmable vertex + processor. If any shader objects of type GL_GEOMETRY_SHADER + are attached to program, they will be used to create + an executable that will run on the programmable geometry processor. + If any shader objects of type + GL_FRAGMENT_SHADER are attached to + program, they will be used to create an + executable that will run on the programmable fragment + processor.

The status of the link operation will be stored as part of + the program object's state. This value will be set to + GL_TRUE if the program object was linked + without errors and is ready for use, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_LINK_STATUS.

As a result of a successful link operation, all active + user-defined uniform variables belonging to + program will be initialized to 0, and + each of the program object's active uniform variables will be + assigned a location that can be queried by calling + glGetUniformLocation. + Also, any active user-defined attribute variables that have not + been bound to a generic vertex attribute index will be bound to + one at this time.

Linking of a program object can fail for a number of + reasons as specified in the OpenGL Shading Language + Specification. The following lists some of the + conditions that will cause a link error.

  • The number of active attribute variables supported + by the implementation has been exceeded.

  • The storage limit for uniform variables has been + exceeded.

  • The number of active uniform variables supported + by the implementation has been exceeded.

  • The main function is missing + for the vertex, geometry or fragment shader.

  • A varying variable actually used in the fragment + shader is not declared in the same way (or is not + declared at all) in the vertex shader, or geometry shader shader if present.

  • A reference to a function or variable name is + unresolved.

  • A shared global is declared with two different + types or two different initial values.

  • One or more of the attached shader objects has not + been successfully compiled.

  • Binding a generic attribute matrix caused some + rows of the matrix to fall outside the allowed maximum + of GL_MAX_VERTEX_ATTRIBS.

  • Not enough contiguous vertex attribute slots could + be found to bind attribute matrices.

  • The program object contains objects to form a fragment shader but + does not contain objects to form a vertex shader.

  • The program object contains objects to form a geometry shader + but does not contain objects to form a vertex shader.

  • The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is not specified in any compiled geometry shader + object.

  • The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is specified differently in multiple geometry shader + objects.

  • The number of active outputs in the fragment shader is greater + than the value of GL_MAX_DRAW_BUFFERS.

  • The program has an active output assigned to a location greater + than or equal to the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS + and has an active output assigned an index greater than or equal to one.

  • More than one varying out variable is bound to the same number and index.

  • The explicit binding assigments do not leave enough space for the linker + to automatically assign a location for a varying out array, which requires + multiple contiguous locations.

  • The count specified by glTransformFeedbackVaryings + is non-zero, but the program object has no vertex or geometry shader.

  • Any variable name specified to glTransformFeedbackVaryings + in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active).

  • Any two entries in the varyings array given + glTransformFeedbackVaryings + specify the same varying variable.

  • The total number of components to capture in any transform feedback varying variable + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is SEPARATE_ATTRIBS.

When a program object has been successfully linked, the + program object can be made part of current state by calling + glUseProgram. + Whether or not the link operation was successful, the program + object's information log will be overwritten. The information + log can be retrieved by calling + glGetProgramInfoLog.

glLinkProgram will also install the + generated executables as part of the current rendering state if + the link operation was successful and the specified program + object is already currently in use as a result of a previous + call to + glUseProgram. + If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE , but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked.

If program contains shader objects + of type GL_VERTEX_SHADER, and optionally of type GL_GEOMETRY_SHADER, + but does not contain shader objects of type + GL_FRAGMENT_SHADER, the vertex shader executable will + be installed on the programmable vertex processor, the geometry shader executable, if present, + will be installed on the programmable geometry processor, but no executable will + be installed on the fragment processor. The results of + rasterizing primitives with such a program will be undefined.

The program object's information log is updated and the + program is generated at the time of the link operation. After + the link operation, applications are free to modify attached + shader objects, compile attached shader objects, detach shader + objects, delete shader objects, and attach additional shader + objects. None of these operations affects the information log or + the program that is part of the program object.

Notes

If the link operation is unsuccessful, any information about a previous link operation on program + is lost (i.e., a failed link does not restore the old state of program + ). Certain information can still be retrieved from program + even after an unsuccessful link operation. See for instance glGetActiveAttrib + and glGetActiveUniform.

Errors

GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL.

GL_INVALID_OPERATION + is generated if program + is not a program object.

GL_INVALID_OPERATION + is generated if program is the currently active program + object and transform feedback mode is active.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with argument program + and the index of an active attribute variable

glGetActiveUniform + with argument program + and the index of an active uniform variable

glGetAttachedShaders + with argument program

glGetAttribLocation + with argument program + and an attribute variable name

glGetProgram + with arguments program + and GL_LINK_STATUS

glGetProgramInfoLog + with argument program

glGetUniform + with argument program + and a uniform variable location

glGetUniformLocation + with argument program + and a uniform variable name

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glLogicOp.xml b/upstream-man-pages/man3/xhtml/glLogicOp.xml new file mode 100644 index 0000000..e702bfa --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glLogicOp.xml @@ -0,0 +1,136 @@ + + + +glLogicOp

Name

glLogicOp — specify a logical pixel operation for rendering

C Specification

void glLogicOp(GLenum opcode);

Parameters

opcode

+ Specifies a symbolic constant that selects a logical operation. + The following symbols are accepted: + GL_CLEAR, + GL_SET, + GL_COPY, + GL_COPY_INVERTED, + GL_NOOP, + GL_INVERT, + GL_AND, + GL_NAND, + GL_OR, + GL_NOR, + GL_XOR, + GL_EQUIV, + GL_AND_REVERSE, + GL_AND_INVERTED, + GL_OR_REVERSE, and + GL_OR_INVERTED. The initial value is GL_COPY. +

Description

+ glLogicOp specifies a logical operation that, + when enabled, + is applied between the incoming RGBA color + and the RGBA color at the corresponding location in the + frame buffer. + To enable or disable the logical operation, call + glEnable and glDisable + using the symbolic constant GL_COLOR_LOGIC_OP. The initial value is + disabled. +

+

+ Opcode + + Resulting Operation +
+ GL_CLEAR + + 0 +
+ GL_SET + + 1 +
+ GL_COPY + + s +
+ GL_COPY_INVERTED + + ~s +
+ GL_NOOP + + d +
+ GL_INVERT + + ~d +
+ GL_AND + + s & d +
+ GL_NAND + + ~(s & d) +
+ GL_OR + + s | d +
+ GL_NOR + + ~(s | d) +
+ GL_XOR + + s ^ d +
+ GL_EQUIV + + ~(s ^ d) +
+ GL_AND_REVERSE + + s & ~d +
+ GL_AND_INVERTED + + ~s & d +
+ GL_OR_REVERSE + + s | ~d +
+ GL_OR_INVERTED + + ~s | d +

+ opcode is a symbolic constant chosen from the list above. + In the explanation of the logical operations, + s represents the incoming color and + d represents the color in the frame buffer. + Standard C-language operators are used. + As these bitwise operators suggest, + the logical operation is applied independently to each bit pair of the + source and destination colors. +

Notes

+ When more than one RGBA color buffer is enabled for drawing, + logical operations are performed separately for each enabled buffer, + using for the destination value the contents of that buffer + (see glDrawBuffer). +

+ Logic operations have no effect on floating point draw buffers. However, if + GL_COLOR_LOGIC_OP is enabled, blending is still disabled + in this case. +

Errors

+ GL_INVALID_ENUM is generated if opcode is not an accepted value. +

Associated Gets

+ glGet with argument GL_LOGIC_OP_MODE. +

+ glIsEnabled with argument GL_COLOR_LOGIC_OP. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glMapBuffer.xml b/upstream-man-pages/man3/xhtml/glMapBuffer.xml new file mode 100644 index 0000000..196ad2f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glMapBuffer.xml @@ -0,0 +1,105 @@ + + + +glMapBuffer

Name

glMapBuffer — map a buffer object's data store

C Specification

void * glMapBuffer(GLenum target,
 GLenum access);
 

Parameters

target

+ Specifies the target buffer object being mapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. +

access

+ Specifies the access policy, indicating whether it will be possible to read from, write to, + or both read from and write to the buffer object's mapped data store. The symbolic constant must be + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. +

C Specification

GLboolean glUnmapBuffer(GLenum target);
 

Parameters

target

+ Specifies the target buffer object being unmapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. +

Description

+ glMapBuffer maps to the client's address space the entire data store of the buffer object + currently bound to target. The data can then be directly read and/or written relative to + the returned pointer, depending on the specified access policy. If the GL is unable to + map the buffer object's data store, glMapBuffer generates an error and returns + NULL. This may occur for system-specific reasons, such as low virtual memory availability. +

+ If a mapped data store is accessed in a way inconsistent with the specified access policy, + no error is generated, but performance may be negatively impacted and system errors, including program + termination, may result. Unlike the usage parameter of glBufferData, + access is not a hint, and does in fact constrain the usage of the mapped data store on + some GL implementations. In order to achieve the highest performance available, a buffer object's data store + should be used in ways consistent with both its specified usage and + access parameters. +

+ A mapped data store must be unmapped with glUnmapBuffer before its buffer object is used. + Otherwise an error will be generated by any GL command that attempts to dereference the buffer object's data store. + When a data store is unmapped, the pointer to its data store becomes invalid. glUnmapBuffer + returns GL_TRUE unless the data store contents have become corrupt during the time + the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics + memory, such as screen mode changes. In such situations, GL_FALSE is returned and the + data store contents are undefined. An application must detect this rare condition and reinitialize the data store. +

+ A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store + is recreated with glBufferData. +

Notes

+ If an error is generated, glMapBuffer returns NULL, and + glUnmapBuffer returns GL_FALSE. +

+ Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, + but results will be undefined and will likely vary across GL implementations. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. +

+ GL_INVALID_ENUM is generated if access is not + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. +

+ GL_OUT_OF_MEMORY is generated when glMapBuffer is executed + if the GL is unable to map the buffer object's data store. This may occur for a variety of system-specific + reasons, such as the absence of sufficient remaining virtual memory. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if glMapBuffer is executed for + a buffer object whose data store is already mapped. +

+ GL_INVALID_OPERATION is generated if glUnmapBuffer is executed for + a buffer object whose data store is not currently mapped. +

Associated Gets

+ glGetBufferPointerv with argument GL_BUFFER_MAP_POINTER +

+ glGetBufferParameter with argument GL_BUFFER_MAPPED, GL_BUFFER_ACCESS, or GL_BUFFER_USAGE +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glMapBufferRange.xml b/upstream-man-pages/man3/xhtml/glMapBufferRange.xml new file mode 100644 index 0000000..2d63763 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glMapBufferRange.xml @@ -0,0 +1,99 @@ + + + +glMapBufferRange

Name

glMapBufferRange — map a section of a buffer object's data store

C Specification

void *glMapBufferRange(GLenum target,
 GLintptr offset,
 GLsizeiptr length,
 GLbitfield access);
 

Parameters

target

+ Specifies a binding to which the target buffer is bound. +

offset

+ Specifies a the starting offset within the buffer of the range to be mapped. +

length

+ Specifies a length of the range to be mapped. +

access

+ Specifies a combination of access flags indicating the desired access to the range. +

Description

+ glMapBufferRange maps all or part of the data store of a buffer object into the client's address + space. target specifies the target to which the buffer is bound and must be one of GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER. offset and + length indicate the range of data in the buffer object htat is to be mapped, in terms of basic machine units. + access is a bitfield containing flags which describe the requested mapping. These flags are described below. +

+ If no error occurs, a pointer to the beginning of the mapped range is returned once all pending operations on that buffer have + completed, and may be used to modify and/or query the corresponding range of the buffer, according to the following flag bits set + in access: +

  • + GL_MAP_READ_BIT indicates that the returned pointer may be used to read + buffer object data. No GL error is generated if the pointer is used to query + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. +

  • + GL_MAP_WRITE_BIT indicates that the returned pointer may be used to modify + buffer object data. No GL error is generated if the pointer is used to modify + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. +

+

+ Furthermore, the following optional flag bits in access may be used to modify the mapping: +

  • + GL_MAP_INVALIDATE_RANGE_BIT indicates that the previous contents of the + specified range may be discarded. Data within this range are undefined with + the exception of subsequently written data. No GL error is generated if sub- + sequent GL operations access unwritten data, but the result is undefined and + system errors (possibly including program termination) may occur. This flag + may not be used in combination with GL_MAP_READ_BIT. +

  • + GL_MAP_INVALIDATE_BUFFER_BIT indicates that the previous contents of the + entire buffer may be discarded. Data within the entire buffer are undefined + with the exception of subsequently written data. No GL error is generated if + subsequent GL operations access unwritten data, but the result is undefined + and system errors (possibly including program termination) may occur. This + flag may not be used in combination with GL_MAP_READ_BIT. +

  • + GL_MAP_FLUSH_EXPLICIT_BIT indicates that one or more discrete subranges + of the mapping may be modified. When this flag is set, modifications to + each subrange must be explicitly flushed by calling glFlushMappedBufferRange. + No GL error is set if a subrange of the mapping is modified and + not flushed, but data within the corresponding subrange of the buffer are undefined. + This flag may only be used in conjunction with GL_MAP_WRITE_BIT. + When this option is selected, flushing is strictly limited to regions that are + explicitly indicated with calls to glFlushMappedBufferRange + prior to unmap; if this option is not selected glUnmapBuffer + will automatically flush the entire mapped range when called. +

  • + GL_MAP_UNSYNCHRONIZED_BIT indicates that the GL should not attempt to + synchronize pending operations on the buffer prior to returning from glMapBufferRange. + No GL error is generated if pending operations which source or modify the buffer overlap the mapped region, + but the result of such previous and any subsequent operations is undefined. +

+

+ If an error occurs, glMapBufferRange returns a NULL pointer. +

Errors

+ GL_INVALID_VALUE is generated if either of offset or length is negative, + or if offset + length is greater than the value of GL_BUFFER_SIZE. +

+ GL_INVALID_VALUE is generated if access has any bits set other than those defined above. +

+ GL_INVALID_OPERATION is generated for any of the following conditions: +

  • + The buffer is already in a mapped state. +

  • + Neither GL_MAP_READ_BIT or GL_MAP_WRITE_BIT is set. +

  • + GL_MAP_READ_BIT is set and any of GL_MAP_INVALIDATE_RANGE_BIT, + GL_MAP_INVALIDATE_BUFFER_BIT, or GL_MAP_UNSYNCHRONIZED_BIT is set. +

  • + GL_MAP_FLUSH_EXPLICIT_BIT is set and GL_MAP_WRITE_BIT is not set. +

+

+ GL_OUT_OF_MEMORY is generated if glMapBufferRange fails because memory for the + mapping could not be obtained. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glMultiDrawArrays.xml b/upstream-man-pages/man3/xhtml/glMultiDrawArrays.xml new file mode 100644 index 0000000..97e58b9 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glMultiDrawArrays.xml @@ -0,0 +1,67 @@ + + + +glMultiDrawArrays

Name

glMultiDrawArrays — render multiple sets of primitives from array data

C Specification

void glMultiDrawArrays(GLenum  mode,
 const GLint *  first,
 const GLsizei *  count,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

first

+ Points to an array of starting indices in the enabled arrays. +

count

+ Points to an array of the number of indices to be rendered. +

primcount

+ Specifies the size of the first and count +

Description

+ glMultiDrawArrays specifies multiple sets of geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glMultiDrawArrays. +

+ glMultiDrawArrays behaves identically to glDrawArrays except that primcount + separate ranges of elements are specified instead. +

+ When glMultiDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed, and how the array elements + construct those primitives. +

+ Vertex attributes that are modified by glMultiDrawArrays have an + unspecified value after glMultiDrawArrays returns. Attributes that aren't + modified remain well defined. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glMultiDrawElements.xml b/upstream-man-pages/man3/xhtml/glMultiDrawElements.xml new file mode 100644 index 0000000..f2ff5f4 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glMultiDrawElements.xml @@ -0,0 +1,63 @@ + + + +glMultiDrawElements

Name

glMultiDrawElements — render multiple sets of primitives by specifying indices of array data elements

C Specification

void glMultiDrawElements(GLenum mode,
 const GLsizei * count,
 GLenum type,
 const GLvoid ** indices,
 GLsizei primcount);
 

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

count

+ Points to an array of the elements counts. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the size of the count array. +

Description

+ glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine + calls. Instead of calling a GL function to pass each individual vertex, + normal, texture coordinate, edge flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to construct a + sequence of primitives with a single call to glMultiDrawElements. +

+ glMultiDrawElements is identical in operation to glDrawElements except that + primcount separate lists of elements are specified. +

+ Vertex attributes that are modified by glMultiDrawElements have an + unspecified value after glMultiDrawElements returns. Attributes that aren't + modified maintain their previous values. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glMultiDrawElementsBaseVertex.xml b/upstream-man-pages/man3/xhtml/glMultiDrawElementsBaseVertex.xml new file mode 100644 index 0000000..01dc7d3 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glMultiDrawElementsBaseVertex.xml @@ -0,0 +1,68 @@ + + + +glMultiDrawElementsBaseVertex

Name

glMultiDrawElementsBaseVertex — render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index

C Specification

void glMultiDrawElementsBaseVertex(GLenum mode,
 const GLsizei *count,
 GLenum type,
 const GLvoid **indices,
 GLsizei primcount,
 GLint *basevertex);
 

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are accepted. +

count

+ Points to an array of the elements counts. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the size of the count array. +

basevertex

+ Specifies a pointer to the location where the base vertices are stored. +

Description

+ glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, + except that primcount separate lists of elements are specifried instead. +

+ It has the same effect as: +

    for (int i = 0; i < primcount; i++)
+        if (count[i] > 0)
+            glDrawElementsBaseVertex(mode,
+                                     count[i],
+                                     type,
+                                     indices[i],
+                                     basevertex[i]);

+

Notes

+ glMultiDrawElementsBaseVertex is available only if the GL version is 3.1 or greater. +

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glPixelStore.xml b/upstream-man-pages/man3/xhtml/glPixelStore.xml new file mode 100644 index 0000000..e13170c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glPixelStore.xml @@ -0,0 +1,1126 @@ + + + +glPixelStore

Name

glPixelStore — set pixel storage modes

C Specification

void glPixelStoref(GLenum pname,
 GLfloat param);
 
void glPixelStorei(GLenum pname,
 GLint param);
 

Parameters

pname

+ Specifies the symbolic name of the parameter to be set. + Six values affect the packing of pixel data into memory: + GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_PIXELS, + GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_IMAGES, and + GL_PACK_ALIGNMENT. + Six more affect the unpacking of pixel data from memory: + GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH, + GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_IMAGES, and + GL_UNPACK_ALIGNMENT. +

param

+ Specifies the value that pname is set to. +

Description

+ glPixelStore sets pixel storage modes that affect the operation of subsequent + glReadPixels as well as the unpacking of + texture patterns (see glTexImage1D, + glTexImage2D, glTexImage3D, glTexSubImage1D, + glTexSubImage2D, glTexSubImage3D). +

+ pname is a symbolic constant indicating the parameter to be set, and + param is the new value. Six of the twelve storage parameters affect + how pixel data is returned to client memory. + They are as follows: +

GL_PACK_SWAP_BYTES

+ If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is stored in memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_PACK_SWAP_BYTES is true. + GL_PACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_PACK_SWAP_BYTES. +

GL_PACK_LSB_FIRST

+ If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. +

GL_PACK_ROW_LENGTH

+ If greater than 0, + GL_PACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping +

+ + + + k + = + + 8 + ⁢ + a + ⁢ + + + + + n + ⁢ + l + + + + + 8 + ⁢ + a + + + + + + + +

+ components or indices. +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_PACK_IMAGE_HEIGHT

+ If greater than 0, + GL_PACK_IMAGE_HEIGHT defines the number of pixels in an image + three-dimensional texture volume, where ``image'' is defined by all pixels + sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + ⁢ + h + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + ⁢ + h + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, where + n + is the number of components or indices + in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, the + width + argument to glTexImage3D otherwise), + h + is the number of + rows in a pixel image (GL_PACK_IMAGE_HEIGHT if it is greater than + 0, the + height + argument to the glTexImage3D routine otherwise), + a + is the value of + GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single + component (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, and GL_PACK_SKIP_IMAGES

+ These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated simply by + incrementing the pointer passed to glReadPixels. + Setting GL_PACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + ⁢ + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_PACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + ⁢ + m + + + components or indices, + where + m + is the number of components or indices per row, + as just computed in the GL_PACK_ROW_LENGTH section. + Setting GL_PACK_SKIP_IMAGES to + k + is equivalent to incrementing + the pointer by + + + + k + ⁢ + p + + , + where + p + is the number of components or indices + per image, as computed in the GL_PACK_IMAGE_HEIGHT section. +

GL_PACK_ALIGNMENT

+ Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). +

+ The other six of the twelve storage parameters affect how pixel data is + read from client memory. + These values are significant for + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D +

+ They are as follows: +

GL_UNPACK_SWAP_BYTES

+ If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is taken from memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_UNPACK_SWAP_BYTES is true. + GL_UNPACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_UNPACK_SWAP_BYTES. +

GL_UNPACK_LSB_FIRST

+ If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. +

GL_UNPACK_ROW_LENGTH

+ If greater than 0, + GL_UNPACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping +

+ + + + k + = + + 8 + ⁢ + a + ⁢ + + + + + n + ⁢ + l + + + + + 8 + ⁢ + a + + + + + + + +

+ components or indices. +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_UNPACK_IMAGE_HEIGHT

+ If greater than 0, + GL_UNPACK_IMAGE_HEIGHT defines the number of pixels in an image of + a three-dimensional texture volume. Where ``image'' is defined by all + pixel sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + ⁢ + h + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + ⁢ + h + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to glTexImage3D otherwise), + h + is the number of rows in an image (GL_UNPACK_IMAGE_HEIGHT if + it is greater than 0, the + height + argument to glTexImage3D otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_UNPACK_SKIP_PIXELS and GL_UNPACK_SKIP_ROWS

+ These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated by + incrementing the pointer passed to + glTexImage1D, + glTexImage2D, + glTexSubImage1D or + glTexSubImage2D. + Setting GL_UNPACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + ⁢ + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_UNPACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + ⁢ + k + + + components or indices, + where + k + is the number of components or indices per row, + as just computed in the GL_UNPACK_ROW_LENGTH section. +

GL_UNPACK_ALIGNMENT

+ Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). +

+ The following table gives the type, + initial value, + and range of valid values for each storage parameter + that can be set with glPixelStore. +

+

+ pname + + Type + + Initial Value + + Valid Range +
+ GL_PACK_SWAP_BYTES + + boolean + + false + + true or false +
+ GL_PACK_LSB_FIRST + + boolean + + false + + true or false +
+ GL_PACK_ROW_LENGTH + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_IMAGE_HEIGHT + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_ROWS + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_PIXELS + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_IMAGES + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_ALIGNMENT + + integer + + 4 + + 1, 2, 4, or 8 +
+ GL_UNPACK_SWAP_BYTES + + boolean + + false + + true or false +
+ GL_UNPACK_LSB_FIRST + + boolean + + false + + true or false +
+ GL_UNPACK_ROW_LENGTH + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_IMAGE_HEIGHT + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_ROWS + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_PIXELS + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_IMAGES + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_ALIGNMENT + + integer + + 4 + + 1, 2, 4, or 8 +

+ glPixelStoref can be used to set any pixel store parameter. + If the parameter type is boolean, + then if param is 0, + the parameter is false; + otherwise it is set to true. + If pname is a integer type parameter, + param is rounded to the nearest integer. +

+ Likewise, glPixelStorei can also be used to set any of the + pixel store parameters. + Boolean parameters are set to false if param is 0 and true otherwise. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_VALUE is generated if a negative row length, + pixel skip, + or row skip value is specified, + or if alignment is specified as other than 1, 2, 4, or 8. +

Associated Gets

+ glGet with argument GL_PACK_SWAP_BYTES +

+ glGet with argument GL_PACK_LSB_FIRST +

+ glGet with argument GL_PACK_ROW_LENGTH +

+ glGet with argument GL_PACK_IMAGE_HEIGHT +

+ glGet with argument GL_PACK_SKIP_ROWS +

+ glGet with argument GL_PACK_SKIP_PIXELS +

+ glGet with argument GL_PACK_SKIP_IMAGES +

+ glGet with argument GL_PACK_ALIGNMENT +

+ glGet with argument GL_UNPACK_SWAP_BYTES +

+ glGet with argument GL_UNPACK_LSB_FIRST +

+ glGet with argument GL_UNPACK_ROW_LENGTH +

+ glGet with argument GL_UNPACK_IMAGE_HEIGHT +

+ glGet with argument GL_UNPACK_SKIP_ROWS +

+ glGet with argument GL_UNPACK_SKIP_PIXELS +

+ glGet with argument GL_UNPACK_SKIP_IMAGES +

+ glGet with argument GL_UNPACK_ALIGNMENT +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glPointParameter.xml b/upstream-man-pages/man3/xhtml/glPointParameter.xml new file mode 100644 index 0000000..435511f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glPointParameter.xml @@ -0,0 +1,47 @@ + + + +glPointParameter

Name

glPointParameter — specify point parameters

C Specification

void glPointParameterf(GLenum  pname,
 GLfloat  param);

void glPointParameteri(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies a single-valued point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. +

param

+ Specifies the value that pname will be set to. +

C Specification

void glPointParameterfv(GLenum  pname,
 const GLfloat *  params);

void glPointParameteriv(GLenum  pname,
 const GLint *  params);

Parameters

pname

+ Specifies a point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. +

params

+ Specifies the value to be assigned to pname.. +

Description

+ The following values are accepted for pname: +

GL_POINT_FADE_THRESHOLD_SIZE

+

+ params is a single floating-point value that specifies the threshold value + to which point sizes are clamped if they exceed the specified value. The + default value is 1.0. +

GL_POINT_SPRITE_COORD_ORIGIN

+

+ params is a single enum specifying the point sprite texture coordinate origin, either GL_LOWER_LEFT or GL_UPPER_LEFT. + The default value is GL_UPPER_LEFT. +

Errors

+ GL_INVALID_VALUE is generated if the value specified for + GL_POINT_FADE_THRESHOLD_SIZE is less than zero. +

+ GL_INVALID_ENUM is generated If the value specified for + GL_POINT_SPRITE_COORD_ORIGIN is not GL_LOWER_LEFT or GL_UPPER_LEFT. +

Associated Gets

+ glGet with argument GL_POINT_FADE_THRESHOLD_SIZE +

+ glGet with argument GL_POINT_SPRITE_COORD_ORIGIN +

See Also

+ glPointSize +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glPointSize.xml b/upstream-man-pages/man3/xhtml/glPointSize.xml new file mode 100644 index 0000000..4f7b7b8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glPointSize.xml @@ -0,0 +1,39 @@ + + + +glPointSize

Name

glPointSize — specify the diameter of rasterized points

C Specification

void glPointSize(GLfloat size);

Parameters

size

+ Specifies the diameter of rasterized points. + The initial value is 1. +

Description

+ glPointSize specifies the rasterized diameter of points. If point size mode + is disabled (see glEnable with parameter + GL_PROGRAM_POINT_SIZE), this value will be used to rasterize points. Otherwise, + the value written to the shading language built-in variable gl_PointSize will be used. +

Notes

+ The point size specified by glPointSize is always returned when + GL_POINT_SIZE is queried. Clamping and rounding for points have no effect on the specified value. +

Errors

+ GL_INVALID_VALUE is generated if size is less than or equal to 0. +

Associated Gets

+ glGet with argument GL_POINT_SIZE_RANGE +

+ glGet with argument GL_POINT_SIZE_GRANULARITY +

+ glGet with argument GL_POINT_SIZE +

+ glGet with argument GL_POINT_SIZE_MIN +

+ glGet with argument GL_POINT_SIZE_MAX +

+ glGet with argument GL_POINT_FADE_THRESHOLD_SIZE +

+ glIsEnabled with argument GL_PROGRAM_POINT_SIZE +

See Also

+ glEnable, + glPointParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glPolygonMode.xml b/upstream-man-pages/man3/xhtml/glPolygonMode.xml new file mode 100644 index 0000000..576ebdb --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glPolygonMode.xml @@ -0,0 +1,65 @@ + + + +glPolygonMode

Name

glPolygonMode — select a polygon rasterization mode

C Specification

void glPolygonMode(GLenum face,
 GLenum mode);
 

Parameters

face

+ Specifies the polygons that mode applies to. + Must be GL_FRONT_AND_BACK for front- and back-facing polygons. +

mode

+ Specifies how polygons will be rasterized. + Accepted values are + GL_POINT, + GL_LINE, and + GL_FILL. + The initial value is GL_FILL for both front- and back-facing polygons. +

Description

+ glPolygonMode controls the interpretation of polygons for rasterization. + face describes which polygons mode applies to: + both front and back-facing polygons (GL_FRONT_AND_BACK). + The polygon mode affects only the final rasterization of polygons. + In particular, + a polygon's vertices are lit and + the polygon is clipped and possibly culled before these modes are applied. +

+ Three modes are defined and can be specified in mode: +

GL_POINT

+ Polygon vertices that are marked as the start of a boundary edge + are drawn as points. + Point attributes such as + GL_POINT_SIZE and + GL_POINT_SMOOTH control + the rasterization of the points. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. +

GL_LINE

+ Boundary edges of the polygon are drawn as line segments. + Line attributes such as + GL_LINE_WIDTH and + GL_LINE_SMOOTH control + the rasterization of the lines. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. +

GL_FILL

+ The interior of the polygon is filled. + Polygon attributes such as GL_POLYGON_SMOOTH control the rasterization of the polygon. +

Examples

+ To draw a surface with outlined polygons, + call +

+glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
+            

+

Notes

+ Vertices are marked as boundary or nonboundary with an edge flag. + Edge flags are generated internally by the GL when it decomposes + triangle stips and fans. +

Errors

+ GL_INVALID_ENUM is generated if either face or mode is not + an accepted value. +

Associated Gets

+ glGet with argument GL_POLYGON_MODE +

See Also

+ glLineWidth, + glPointSize +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glPolygonOffset.xml b/upstream-man-pages/man3/xhtml/glPolygonOffset.xml new file mode 100644 index 0000000..136de1b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glPolygonOffset.xml @@ -0,0 +1,65 @@ + + + +glPolygonOffset

Name

glPolygonOffset — set the scale and units used to calculate depth values

C Specification

void glPolygonOffset(GLfloat  factor,
 GLfloat  units);

Parameters

factor

+ Specifies a scale factor that is used to create a variable + depth offset for each polygon. The initial value is 0. +

units

+ Is multiplied by an implementation-specific value to + create a constant depth offset. The initial value is 0. +

Description

+ When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or + GL_POLYGON_OFFSET_POINT is enabled, each + fragment's depth value will be offset after it is interpolated + from the depth values of the appropriate vertices. + The value of the offset is + + + + + factor + × + DZ + + + + + r + × + units + + + , + where + + + DZ + + is a measurement of the change in depth relative to the screen + area of the polygon, and + r + is the smallest value that is guaranteed to + produce a resolvable offset for a given implementation. + The offset is added before the depth test is performed and before + the value is written into the depth buffer. +

+ glPolygonOffset is useful for rendering hidden-line images, for applying decals + to surfaces, and for rendering solids with highlighted edges. +

Associated Gets

+ glIsEnabled with argument + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + or GL_POLYGON_OFFSET_POINT. +

+ glGet with argument GL_POLYGON_OFFSET_FACTOR or + GL_POLYGON_OFFSET_UNITS. +

See Also

+ glDepthFunc, + glEnable, + glGet, + glIsEnabled +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glPrimitiveRestartIndex.xml b/upstream-man-pages/man3/xhtml/glPrimitiveRestartIndex.xml new file mode 100644 index 0000000..0d8784d --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glPrimitiveRestartIndex.xml @@ -0,0 +1,33 @@ + + + +glPrimitiveRestartIndex

Name

glPrimitiveRestartIndex — specify the primitive restart index

C Specification

void glPrimitiveRestartIndex(GLuint index);
 

Parameters

index

+ Specifies the value to be interpreted as the primitive restart index. +

Description

+ glPrimitiveRestartIndex specifies a vertex array element that is treated specially when + primitive restarting is enabled. This is known as the primitive restart index. +

+ When one of the Draw* commands transfers a set of generic attribute array elements to + the GL, if the index within the vertex arrays corresponding to that set is equal to the primitive restart + index, then the GL does not process those elements as a vertex. Instead, it is as if the drawing command + ended with the immediately preceding transfer, and another drawing command is immediately started with + the same parameters, but only transferring the immediately following element through the end of the + originally specified elements. +

+ When either glDrawElementsBaseVertex, + glDrawElementsInstancedBaseVertex or + glMultiDrawElementsBaseVertex is used, the primitive restart + comparison occurs before the basevertex offset is added to the array index. +

Notes

+ glPrimitiveRestartIndex is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glProvokingVertex.xml b/upstream-man-pages/man3/xhtml/glProvokingVertex.xml new file mode 100644 index 0000000..bb6ce19 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glProvokingVertex.xml @@ -0,0 +1,104 @@ + + + +glProvokingVertex

Name

glProvokingVertex — specifiy the vertex to be used as the source of data for flat shaded varyings

C Specification

void glProvokingVertex(GLenum provokeMode);
 

Parameters

provokeMode

+ Specifies the vertex to be used as the source of data for flat shaded varyings. +

Description

+ Flatshading a vertex shader varying output means to assign all vetices of the primitive the same value + for that output. The vertex from which these values is derived is known as the provoking vertex and + glProvokingVertex specifies which vertex is to be used as the source of data for flat shaded varyings. +

+ provokeMode must be either GL_FIRST_VERTEX_CONVENTION or + GL_LAST_VERTEX_CONVENTION, and controls the selection of the vertex whose values are assigned to flatshaded + varying outputs. The interpretation of these values for the supported primitive types is: +

+ Primitive Type of Polygon i + + First Vertex Convention + + Last Vertex Convention +
+ point + + i + + i +
+ independent line + + 2i - 1 + + 2i +
+ line loop + + i + +

+ i + 1, if i < n +

+

+ 1, if i = n +

+
+ line strip + + i + + i + 1 +
+ independent triangle + + 3i - 2 + + 3i +
+ triangle strip + + i + + i + 2 +
+ triangle fan + + i + 1 + + i + 2 +
+ line adjacency + + 4i - 2 + + 4i - 1 +
+ line strip adjacency + + i + 1 + + i + 2 +
+ triangle adjacency + + 6i - 5 + + 6i - 1 +
+ triangle strip adjacency + + 2i - 1 + + 2i + 3 +

+

+ If a vertex or geometry shader is active, user-defined varying outputs may be flatshaded by using the + flat qualifier when declaring the output. +

Notes

+ glProvokingVertex is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if provokeMode is not an accepted value. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glQueryCounter.xml b/upstream-man-pages/man3/xhtml/glQueryCounter.xml new file mode 100644 index 0000000..7a1b337 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glQueryCounter.xml @@ -0,0 +1,39 @@ + + + +glQueryCounter

Name

glQueryCounter — record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed.

C Specification

void glQueryCounter(GLuint id,
 GLenum target);
 

Parameters

id

+ Specify the name of a query object into which to record the GL time. +

target

+ Specify the counter to query. target must be GL_TIMESTAMP. +

Description

+ glQueryCounter causes the GL to record the current time into the query object named id. + target must be GL_TIMESTAMP. The time is recorded after all previous commands on the + GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object + is marked available. glQueryCounter timer queries can be used within a glBeginQuery / + glEndQuery block where the target is GL_TIME_ELAPSED and it does + not affect the result of that query object. +

Notes

+ glQueryCounter is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_OPERATION is generated if id is the name + of a query object that is already in use within a glBeginQuery / + glEndQuery block. +

+ GL_INVALID_VALUE is generated if id is not the name of a query object returned + from a previous call to glGenQueries. +

+ GL_INVALID_ENUM is generated if target is not GL_TIMESTAMP. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glReadBuffer.xml b/upstream-man-pages/man3/xhtml/glReadBuffer.xml new file mode 100644 index 0000000..7f64b96 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glReadBuffer.xml @@ -0,0 +1,62 @@ + + + +glReadBuffer - OpenGL 3.3 Reference Pages

Name

glReadBuffer — select a color buffer source for pixels

C Specification

void glReadBuffer(GLenum mode);

Parameters

mode

+ Specifies a color buffer. + Accepted values are + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, and the constants + GL_COLOR_ATTACHMENTi. +

Description

+ glReadBuffer specifies a color buffer as the source for subsequent + glReadPixels, glCopyTexImage1D, glCopyTexImage2D, + glCopyTexSubImage1D, glCopyTexSubImage2D, and + glCopyTexSubImage3D commands. + mode accepts one of twelve or more predefined values. + In a fully configured system, + GL_FRONT, + GL_LEFT, and + GL_FRONT_LEFT all name the front left buffer, + GL_FRONT_RIGHT and + GL_RIGHT name the front right buffer, and + GL_BACK_LEFT and + GL_BACK name the back left buffer. + Furthermore, the constants GL_COLOR_ATTACHMENTi may be used to indicate the + ith color attachment where i ranges from zero to the + value of GL_MAX_COLOR_ATTACHMENTS minus one. +

+ Nonstereo double-buffered configurations have only a front left and a + back left buffer. + Single-buffered configurations have a front left and a front right + buffer if stereo, and only a front left buffer if nonstereo. + It is an error to specify a nonexistent buffer to glReadBuffer. +

+ mode is initially GL_FRONT in single-buffered configurations + and GL_BACK in double-buffered configurations. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of the twelve + (or more) accepted values. +

+ GL_INVALID_OPERATION is generated if mode specifies a buffer + that does not exist. +

Associated Gets

+ glGet with argument GL_READ_BUFFER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glReadPixels.xml b/upstream-man-pages/man3/xhtml/glReadPixels.xml new file mode 100644 index 0000000..dadd728 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glReadPixels.xml @@ -0,0 +1,893 @@ + + + +glReadPixels

Name

glReadPixels — read a block of pixels from the frame buffer

C Specification

void glReadPixels(GLint x,
 GLint y,
 GLsizei width,
 GLsizei height,
 GLenum format,
 GLenum type,
 GLvoid * data);
 

Parameters

x, y

+ Specify the window coordinates of the first pixel + that is read from the frame buffer. + This location is the lower left corner of a rectangular block of pixels. +

width, height

+ Specify the dimensions of the pixel rectangle. + width and height of one correspond to a single pixel. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + Must be one of + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, or + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

data

+ Returns the pixel data. +

Description

+ glReadPixels returns pixel data from the frame buffer, + starting with the pixel whose lower left corner + is at location (x, y), + into client memory starting at location data. + Several parameters control the processing of the pixel data before + it is placed into client memory. + These parameters are set with glPixelStore. + This reference page describes the effects on glReadPixels of most, + but not all of the parameters specified by these three commands. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a block of pixels is + requested, data is treated as a byte offset into the buffer object's data store + rather than a pointer to client memory. +

+ glReadPixels returns values from each pixel with lower left corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are returned in row order from the lowest to the highest row, + left to right in each row. +

+ format specifies the format for the returned pixel values; + accepted values are: +

GL_STENCIL_INDEX

+ Stencil values are read from the stencil buffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_S_TO_S. +

GL_DEPTH_COMPONENT

+ Depth values are read from the depth buffer. + Each component is converted to floating point such that the minimum depth + value maps to 0 and the maximum value maps to 1. + Each component is then multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + and finally clamped to the range + + + + 0 + 1 + + . +

GL_DEPTH_STENCIL

+ Values are taken from both the depth and stencil buffers. The type parameter + must be GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

GL_RED
GL_GREEN
GL_BLUE
GL_RGB
GL_BGR
GL_RGBA
GL_BGRA

+ Finally, the indices or components + are converted to the proper format, + as specified by type. + If format is GL_STENCIL_INDEX + and type is not GL_FLOAT, + each index is masked with the mask value given in the following table. + If type is GL_FLOAT, then each integer index is converted to + single-precision floating-point format. +

+ If format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, or + GL_BGRA and type is not GL_FLOAT, + each component is multiplied by the multiplier shown in the following table. + If type is GL_FLOAT, then each component is passed as is + (or converted to the client's single-precision floating-point format if + it is different from the one used by the GL). +

+

+ type + + Index Mask + + Component Conversion +
+ GL_UNSIGNED_BYTE + + + + + 2 + 8 + + - + 1 + + + + + + + + + 2 + 8 + + - + 1 + + + ⁢ + c + + +
+ GL_BYTE + + + + + 2 + 7 + + - + 1 + + + + + + + + + + + 2 + 8 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_UNSIGNED_SHORT + + + + + 2 + 16 + + - + 1 + + + + + + + + + 2 + 16 + + - + 1 + + + ⁢ + c + + +
+ GL_SHORT + + + + + 2 + 15 + + - + 1 + + + + + + + + + + + 2 + 16 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_UNSIGNED_INT + + + + + 2 + 32 + + - + 1 + + + + + + + + + 2 + 32 + + - + 1 + + + ⁢ + c + + +
+ GL_INT + + + + + 2 + 31 + + - + 1 + + + + + + + + + + + 2 + 32 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_HALF_FLOAT + + none + + c +
+ GL_FLOAT + + none + + c +
+ GL_UNSIGNED_BYTE_3_3_2 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_BYTE_2_3_3_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_5_6_5 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_5_6_5_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_4_4_4_4 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_4_4_4_4_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_5_5_5_1 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_1_5_5_5_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_8_8_8_8 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_8_8_8_8_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_10_10_10_2 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_2_10_10_10_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_24_8 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_10F_11F_11F_REV + + -- + + Special +
+ GL_UNSIGNED_INT_5_9_9_9_REV + + -- + + Special +
+ GL_FLOAT_32_UNSIGNED_INT_24_8_REV + + none + + c (Depth Only) +

+ Return values are placed in memory as follows. + If format is + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, or + GL_BLUE, + a single value is returned and the data for the + ith + pixel in the + jth + row + is placed in location + + + + + j + + ⁢ + width + + + i + + . + GL_RGB and GL_BGR return three values, + GL_RGBA and GL_BGRA return four values for each pixel, + with all values corresponding to a single pixel occupying contiguous space + in data. + Storage parameters set by glPixelStore, + such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, + affect the way that data is written into memory. + See glPixelStore for a description. +

Notes

+ Values for pixels that lie outside the window + connected to the current GL context are undefined. +

+ If an error is generated, + no change is made to the contents of data. +

Errors

+ GL_INVALID_ENUM is generated if format or type is not an + accepted value. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. +

+ GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT + and there is no depth buffer. +

+ GL_INVALID_OPERATION is generated if format is GL_DEPTH_STENCIL + and there is no depth buffer or if there is no stencil buffer. +

+ GL_INVALID_ENUM is generated if format is GL_DEPTH_STENCIL + and type is not GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if GL_READ_FRAMEBUFFER_BINDING + is non-zero, the read framebuffer is complete, and the value of GL_SAMPLE_BUFFERS + for the read framebuffer is greater than zero. +

Associated Gets

+ glGet with argument GL_INDEX_MODE +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

See Also

+ glPixelStore, + glReadBuffer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glRenderbufferStorage.xml b/upstream-man-pages/man3/xhtml/glRenderbufferStorage.xml new file mode 100644 index 0000000..b77a21e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glRenderbufferStorage.xml @@ -0,0 +1,47 @@ + + + +glRenderbufferStorage

Name

glRenderbufferStorage — establish data storage, format and dimensions of a renderbuffer object's image

C Specification

void glRenderbufferStorage(GLenum target,
 GLenum internalformat,
 GLsizei width,
 GLsizei height);
 

Parameters

target

+ Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. +

internalformat

+ Specifies the internal format to use for the renderbuffer object's image. +

width

+ Specifies the width of the renderbuffer, in pixels. +

height

+ Specifies the height of the renderbuffer, in pixels. +

Description

+ glRenderbufferStorage is equivalent to calling + glRenderbufferStorageMultisample with the + samples set to zero. +

+ The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. +

+ Upon success, glRenderbufferStorage deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorage are undefined. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. +

+ GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. +

+ GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glRenderbufferStorageMultisample.xml b/upstream-man-pages/man3/xhtml/glRenderbufferStorageMultisample.xml new file mode 100644 index 0000000..a999001 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glRenderbufferStorageMultisample.xml @@ -0,0 +1,56 @@ + + + +glRenderbufferStorageMultisample

Name

glRenderbufferStorageMultisample — establish data storage, format, dimensions and sample count of a renderbuffer object's image

C Specification

void glRenderbufferStorageMultisample(GLenum target,
 GLsizei samples,
 GLenum internalformat,
 GLsizei width,
 GLsizei height);
 

Parameters

target

+ Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. +

samples

+ Specifies the number of samples to be used for the renderbuffer object's storage. +

internalformat

+ Specifies the internal format to use for the renderbuffer object's image. +

width

+ Specifies the width of the renderbuffer, in pixels. +

height

+ Specifies the height of the renderbuffer, in pixels. +

Description

+ glRenderbufferStorageMultisample establishes the data storage, format, dimensions and number of + samples of a renderbuffer object's image. +

+ The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. samples specifies the number of samples to be used + for the renderbuffer object's image, and must be less than or equal to the value of GL_MAX_SAMPLES. + If internalformat is a signed or unsigned integer format then samples must be + less than or equal to the value of GL_MAX_INTEGER_SAMPLES. +

+ Upon success, glRenderbufferStorageMultisample deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorageMultisample are undefined. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. +

+ GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. +

+ GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. +

+ GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format + and samples is greater than the value of GL_MAX_INTEGER_SAMPLES +

+ GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glSampleCoverage.xml b/upstream-man-pages/man3/xhtml/glSampleCoverage.xml new file mode 100644 index 0000000..85f5dda --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glSampleCoverage.xml @@ -0,0 +1,58 @@ + + + +glSampleCoverage

Name

glSampleCoverage — specify multisample coverage parameters

C Specification

void glSampleCoverage(GLclampf  value,
 GLboolean  invert);

Parameters

value

+ Specify a single floating-point sample coverage value. The value is + clamped to the range + + + + 0 + 1 + + . + The initial value is 1.0. +

invert

+ Specify a single boolean value representing if the coverage masks should be + inverted. GL_TRUE and GL_FALSE are accepted. The initial value + is GL_FALSE. +

Description

+ Multisampling samples a pixel multiple times at various + implementation-dependent subpixel locations to generate antialiasing + effects. Multisampling transparently antialiases points, lines, polygons, + and images if it is enabled. +

+ value is used in constructing a temporary mask used in determining which + samples will be used in resolving the final fragment color. This mask is + bitwise-anded with the coverage mask generated from the multisampling + computation. If the invert flag is set, the temporary mask is inverted + (all bits flipped) and then the bitwise-and is computed. +

+ If an implementation does not have any multisample buffers available, or + multisampling is disabled, rasterization occurs with only a single sample + computing a pixel's final RGB color. +

+ Provided an implementation supports multisample buffers, and multisampling + is enabled, then a pixel's final color is generated by combining several + samples per pixel. Each sample contains color, depth, and stencil + information, allowing those operations to be performed on each sample. +

Associated Gets

+ glGet with argument GL_SAMPLE_COVERAGE_VALUE +

+ glGet with argument GL_SAMPLE_COVERAGE_INVERT +

+ glIsEnabled with argument GL_MULTISAMPLE +

+ glIsEnabled with argument GL_SAMPLE_ALPHA_TO_COVERAGE +

+ glIsEnabled with argument GL_SAMPLE_ALPHA_TO_ONE +

+ glIsEnabled with argument GL_SAMPLE_COVERAGE +

See Also

+ glEnable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glSampleMaski.xml b/upstream-man-pages/man3/xhtml/glSampleMaski.xml new file mode 100644 index 0000000..b51408c --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glSampleMaski.xml @@ -0,0 +1,32 @@ + + + +glSampleMaski

Name

glSampleMaski — set the value of a sub-word of the sample mask

C Specification

void glSampleMaski(GLuint maskNumber,
 GLbitfield mask);
 

Parameters

maskNumber

+ Specifies which 32-bit sub-word of the sample mask to update. +

mask

+ Specifies the new value of the mask sub-word. +

Description

+ glSampleMaski sets one 32-bit sub-word of the multi-word sample mask, GL_SAMPLE_MASK_VALUE. +

+ maskIndex specifies which 32-bit sub-word of the sample mask to update, and mask specifies + the new value to use for that sub-word. maskIndex must be less than the value of + GL_MAX_SAMPLE_MASK_WORDS. Bit B of mask word M corresponds to sample + 32 x M + B. +

Notes

+ glSampleMaski is available only if the GL version is 3.2 or greater, or if the ARB_texture_multisample + extension is supported. +

Errors

+ GL_INVALID_VALUE is generated if maskIndex is greater than or equal to the value + of GL_MAX_SAMPLE_MASK_WORDS. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glSamplerParameter.xml b/upstream-man-pages/man3/xhtml/glSamplerParameter.xml new file mode 100644 index 0000000..f7c523a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glSamplerParameter.xml @@ -0,0 +1,823 @@ + + + +glSamplerParameter - OpenGL 3.3 Reference Pages

Name

glSamplerParameter — set sampler parameters

C Specification

void glSamplerParameterf(GLuint  sampler,
 GLenum  pname,
 GLfloat  param);
void glSamplerParameteri(GLuint  sampler,
 GLenum  pname,
 GLint  param);

Parameters

sampler

+ Specifies the sampler object whose parameter to modify. +

pname

+ Specifies the symbolic name of a single-valued sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. +

param

+ Specifies the value of pname. +

C Specification

void glSamplerParameterfv(GLuint  sampler,
 GLenum  pname,
 const GLfloat *  params);
void glSamplerParameteriv(GLuint  sampler,
 GLenum  pname,
 const GLint *  params);
void glSamplerParameterIiv(GLuint  sampler,
 GLenum  pname,
 const GLint *  params);
void glSamplerParameterIuiv(GLuint  sampler,
 GLenum  pname,
 const GLuint *  params);

Parameters

sampler

+ Specifies the sampler object whose parameter to modify. +

pname

+ Specifies the symbolic name of a sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. +

params

+ Specifies a pointer to an array where the value or values of pname + are stored. +

Description

+ glSamplerParameter assigns the value or values in params to the sampler parameter + specified as pname. + sampler specifies the sampler object to be modified, and must be the name of a sampler object previously + returned from a call to glGenSamplers. + The following symbols are accepted in pname: +

GL_TEXTURE_MIN_FILTER

+ The texture minifying function is used whenever the pixel being textured + maps to an area greater than one texture element. + There are six defined minifying functions. + Two of them use the nearest one or nearest four texture elements + to compute the texture value. + The other four use mipmaps. +

+ A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + ⁡ + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + ⁡ + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. +

+ params supplies a function for minifying the texture as one of the + following: +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

GL_NEAREST_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value. +

GL_LINEAR_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value. +

GL_NEAREST_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

GL_LINEAR_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

+

+ As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or four texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MAG_FILTER

+ The texture magnification function is used when the pixel being textured + maps to an area less than or equal to one texture element. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

+

+

+

+

GL_TEXTURE_MIN_LOD

+ Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. +

+

GL_TEXTURE_MAX_LOD

+ Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. +

+

GL_TEXTURE_WRAP_S

+ Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_BORDER causes the + s + coordinate to be clamped to the range + + + + + + + -1 + 2N + + + + + 1 + + + + + + 1 + 2N + + + + + + , + where + N + is the size of the texture in the direction of + clamping.GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + ⁡ + + s + + + + , + where + + + + frac + ⁡ + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_T

+ Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . +

GL_TEXTURE_COMPARE_MODE

+ Specifies the texture comparison mode for currently bound textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: +

GL_COMPARE_REF_TO_TEXTURE

+ Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. +

GL_NONE

+ Specifies that the red channel should be assigned the + appropriate value from the currently bound texture. +

+

GL_TEXTURE_COMPARE_FUNC

+ Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: +

+ Texture Comparison Function + + Computed result +
+ GL_LEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + +
+
+ GL_GEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + +
+
+ GL_LESS + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + +
+
+ GL_GREATER + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + +
+
+ GL_EQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + ≠ + + D + t + + + + + + + + +
+
+ GL_NOTEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + ≠ + + D + t + + + + + + + r + = + + D + t + + + + + + + + +
+
+ GL_ALWAYS + +
+ + result + = + 1.0 + +
+
+ GL_NEVER + +
+ + result + = + 0.0 + +
+

+ where r + is the current interpolated texture coordinate, and + + + D + t + + + is the texture value sampled from the currently bound texture. + result + is assigned to + + + R + t + + . +

Notes

+ glSamplerParameter is available only if the GL version is 3.3 or higher. +

+ If a sampler object is bound to a texture unit and that unit is used to sample from a texture, the parameters in the sampler + are used to sample from the texture, rather than the equivalent parameters in the texture object bound to that unit. This + introduces the possibility of sampling from the same texture object with different sets of sampler state, which may lead to + a condition where a texture is incomplete with respect to one sampler object and not with respect to + another. Thus, completeness can be considered a function of a sampler object and a texture object bound to a single + texture unit, rather than a property of the texture object itself. +

Errors

+ GL_INVALID_VALUE is generated if sampler is not the name of a sampler object previously + returned from a call to glGenSamplers. +

+ GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. +

Associated Gets

+ glGetSamplerParameter +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glScissor.xml b/upstream-man-pages/man3/xhtml/glScissor.xml new file mode 100644 index 0000000..65beee2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glScissor.xml @@ -0,0 +1,47 @@ + + + +glScissor

Name

glScissor — define the scissor box

C Specification

void glScissor(GLint x,
 GLint y,
 GLsizei width,
 GLsizei height);
 

Parameters

x, y

+ Specify the lower left corner of the scissor box. + Initially (0, 0). +

width, height

+ Specify the width and height of the scissor box. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

Description

+ glScissor defines a rectangle, called the scissor box, + in window coordinates. + The first two arguments, + x and y, + specify the lower left corner of the box. + width and height specify the width and height of the box. +

+ To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. +

+ When the scissor test is disabled, + it is as though the scissor box includes the entire window. +

Errors

+ GL_INVALID_VALUE is generated if either width or height is negative. +

Associated Gets

+ glGet with argument GL_SCISSOR_BOX +

+ glIsEnabled with argument GL_SCISSOR_TEST +

See Also

+ glEnable, + glViewport +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glShaderSource.xml b/upstream-man-pages/man3/xhtml/glShaderSource.xml new file mode 100644 index 0000000..be53081 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glShaderSource.xml @@ -0,0 +1,43 @@ + + + +glShaderSource

Name

glShaderSource — Replaces the source code in a shader object

C Specification

void glShaderSource(GLuint shader,
 GLsizei count,
 const GLchar **string,
 const GLint *length);
 

Parameters

shader

Specifies the handle of the shader object + whose source code is to be replaced.

count

Specifies the number of elements in the + string and + length + arrays.

string

Specifies an array of pointers to strings + containing the source code to be loaded into the + shader.

length

Specifies an array of string lengths.

Description

glShaderSource sets the source code + in shader to the source code in the array + of strings specified by string. Any + source code previously stored in the shader object is completely + replaced. The number of strings in the array is specified by + count. If length + is NULL, each string is assumed to be null + terminated. If length is a value other + than NULL, it points to an array containing + a string length for each of the corresponding elements of + string. Each element in the + length array may contain the length of + the corresponding string (the null character is not counted as + part of the string length) or a value less than 0 to indicate + that the string is null terminated. The source code strings are + not scanned or parsed at this time; they are simply copied into + the specified shader object.

Notes

OpenGL copies the shader source code strings when + glShaderSource is called, so an application + may free its copy of the source code strings immediately after + the function returns.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + count is less than 0.

Associated Gets

glGetShader + with arguments shader and + GL_SHADER_SOURCE_LENGTH

glGetShaderSource + with argument shader

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glStencilFunc.xml b/upstream-man-pages/man3/xhtml/glStencilFunc.xml new file mode 100644 index 0000000..0fe5240 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glStencilFunc.xml @@ -0,0 +1,170 @@ + + + +glStencilFunc

Name

glStencilFunc — set front and back function and reference value for stencil testing

C Specification

void glStencilFunc(GLenum func,
 GLint ref,
 GLuint mask);
 

Parameters

func

+ Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. +

mask

+ Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + Stencil planes are first drawn into using GL drawing primitives, then + geometry and images are rendered using the stencil planes to mask out + portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. +

+ There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values. Use glStencilFuncSeparate + to set front and back stencil state to different values. +

+ func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. +

+ If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. +

+ The following values are accepted by func: +

GL_NEVER

+ Always fails. +

GL_LESS

+ Passes if ( ref & mask ) < ( stencil & mask ). +

GL_LEQUAL

+ Passes if ( ref & mask ) <= ( stencil & mask ). +

GL_GREATER

+ Passes if ( ref & mask ) > ( stencil & mask ). +

GL_GEQUAL

+ Passes if ( ref & mask ) >= ( stencil & mask ). +

GL_EQUAL

+ Passes if ( ref & mask ) = ( stencil & mask ). +

GL_NOTEQUAL

+ Passes if ( ref & mask ) != ( stencil & mask ). +

GL_ALWAYS

+ Always passes. +

Notes

+ Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. +

+ glStencilFunc is the same as + calling glStencilFuncSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glStencilFuncSeparate.xml b/upstream-man-pages/man3/xhtml/glStencilFuncSeparate.xml new file mode 100644 index 0000000..7a4426f --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glStencilFuncSeparate.xml @@ -0,0 +1,173 @@ + + + +glStencilFuncSeparate

Name

glStencilFuncSeparate — set front and/or back function and reference value for stencil testing

C Specification

void glStencilFuncSeparate(GLenum face,
 GLenum func,
 GLint ref,
 GLuint mask);
 

Parameters

face

+ Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

func

+ Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. +

mask

+ Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. +

+ There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values, as if + glStencilFuncSeparate were called + with face set to GL_FRONT_AND_BACK. +

+ func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. +

+ If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. +

+ The following values are accepted by func: +

GL_NEVER

+ Always fails. +

GL_LESS

+ Passes if ( ref & mask ) < ( stencil & mask ). +

GL_LEQUAL

+ Passes if ( ref & mask ) <= ( stencil & mask ). +

GL_GREATER

+ Passes if ( ref & mask ) > ( stencil & mask ). +

GL_GEQUAL

+ Passes if ( ref & mask ) >= ( stencil & mask ). +

GL_EQUAL

+ Passes if ( ref & mask ) = ( stencil & mask ). +

GL_NOTEQUAL

+ Passes if ( ref & mask ) != ( stencil & mask ). +

GL_ALWAYS

+ Always passes. +

Notes

+ Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. +

Errors

+ GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glStencilMask.xml b/upstream-man-pages/man3/xhtml/glStencilMask.xml new file mode 100644 index 0000000..73e1981 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glStencilMask.xml @@ -0,0 +1,49 @@ + + + +glStencilMask

Name

glStencilMask — control the front and back writing of individual bits in the stencil planes

C Specification

void glStencilMask(GLuint mask);

Parameters

mask

+ Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. +

Description

+ glStencilMask controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. +

+ There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values. Use glStencilMaskSeparate + to set front and back stencil writemasks to different values. +

Notes

+ glStencilMask is the same as + calling glStencilMaskSeparate + with face set to GL_FRONT_AND_BACK. +

Associated Gets

+ glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glStencilMaskSeparate.xml b/upstream-man-pages/man3/xhtml/glStencilMaskSeparate.xml new file mode 100644 index 0000000..1df7fa8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glStencilMaskSeparate.xml @@ -0,0 +1,54 @@ + + + +glStencilMaskSeparate

Name

glStencilMaskSeparate — control the front and/or back writing of individual bits in the stencil planes

C Specification

void glStencilMaskSeparate(GLenum  face,
 GLuint  mask);

Parameters

face

+ Specifies whether the front and/or back stencil writemask is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

mask

+ Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. +

Description

+ glStencilMaskSeparate controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. +

+ There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values, as if + glStencilMaskSeparate were called + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if face is not one of the accepted tokens. +

Associated Gets

+ glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glStencilOp.xml b/upstream-man-pages/man3/xhtml/glStencilOp.xml new file mode 100644 index 0000000..20e1744 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glStencilOp.xml @@ -0,0 +1,147 @@ + + + +glStencilOp

Name

glStencilOp — set front and back stencil test actions

C Specification

void glStencilOp(GLenum  sfail,
 GLenum  dpfail,
 GLenum  dppass);

Parameters

sfail

+ Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. +

dpfail

+ Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

dppass

+ Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. +

+ There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values. Use glStencilOpSeparate + to set front and back stencil state to different values. +

+ glStencilOp takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. +

GL_KEEP

+ Keeps the current value. +

GL_ZERO

+ Sets the stencil buffer value to 0. +

GL_REPLACE

+ Sets the stencil buffer value to ref, + as specified by glStencilFunc. +

GL_INCR

+ Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. +

GL_INCR_WRAP

+ Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. +

GL_DECR

+ Decrements the current stencil buffer value. + Clamps to 0. +

GL_DECR_WRAP

+ Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. +

GL_INVERT

+ Bitwise inverts the current stencil buffer value. +

+ Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. +

+ The other two arguments to glStencilOp specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. +

Notes

+ Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil tests always pass, + regardless of any call to glStencilOp. +

+ glStencilOp is the same as + calling glStencilOpSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the defined constant values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glStencilOpSeparate.xml b/upstream-man-pages/man3/xhtml/glStencilOpSeparate.xml new file mode 100644 index 0000000..638b6a1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glStencilOpSeparate.xml @@ -0,0 +1,152 @@ + + + +glStencilOpSeparate

Name

glStencilOpSeparate — set front and/or back stencil test actions

C Specification

void glStencilOpSeparate(GLenum face,
 GLenum sfail,
 GLenum dpfail,
 GLenum dppass);
 

Parameters

face

+ Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

sfail

+ Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. +

dpfail

+ Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

dppass

+ Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. +

+ There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values, as if + glStencilOpSeparate were called + with face set to GL_FRONT_AND_BACK. +

+ glStencilOpSeparate takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. +

GL_KEEP

+ Keeps the current value. +

GL_ZERO

+ Sets the stencil buffer value to 0. +

GL_REPLACE

+ Sets the stencil buffer value to ref, + as specified by glStencilFunc. +

GL_INCR

+ Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. +

GL_INCR_WRAP

+ Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. +

GL_DECR

+ Decrements the current stencil buffer value. + Clamps to 0. +

GL_DECR_WRAP

+ Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. +

GL_INVERT

+ Bitwise inverts the current stencil buffer value. +

+ Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. +

+ The other two arguments to glStencilOpSeparate specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. +

Notes

+ Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil test always passes. +

Errors

+ GL_INVALID_ENUM is generated if face is any value + other than GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK. +

+ GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexBuffer.xml b/upstream-man-pages/man3/xhtml/glTexBuffer.xml new file mode 100644 index 0000000..df221d5 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexBuffer.xml @@ -0,0 +1,61 @@ + + + +glTexBuffer

Name

glTexBuffer — attach the storage for a buffer object to the active buffer texture

C Specification

void glTexBuffer(GLenum  target,
 GLenum  internalFormat,
 Gluint buffer);

Parameters

target

+ Specifies the target of the operation and must be GL_TEXTURE_BUFFER. +

internalFormat

+ Specifies the internal format of the data in the store belonging to buffer. +

buffer

+ Specifies the name of the buffer object whose storage to attach to the active buffer texture. +

Description

+ glTexBuffer attaches the storage for the buffer object named buffer to the active + buffer texture, and specifies the internal format for the texel array found in the attached buffer object. If buffer + is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer + is non-zero, it must be the name of an existing buffer object. target must be GL_TEXTURE_BUFFER. + internalformat specifies the storage format, and must be one of the following sized internal formats: +

     + Component +
Sized Internal FormatBase TypeComponentsNorm0123
GL_R8ubyte1YESR001
GL_R16ushort1YESR001
GL_R16Fhalf1NOR001
GL_R32Ffloat1NOR001
GL_R8Ibyte1NOR001
GL_R16Ishort1NOR001
GL_R32Iint1NOR001
GL_R8UIubyte1NOR001
GL_R16UIushort1NOR001
GL_R32UIuint1NOR001
GL_RG8ubyte2YESRG01
GL_RG16ushort2YESRG01
GL_RG16Fhalf2NORG01
GL_RG32Ffloat2NORG01
GL_RG8Ibyte2NORG01
GL_RG16Ishort2NORG01
GL_RG32Iint2NORG01
GL_RG8UIubyte2NORG01
GL_RG16UIushort2NORG01
GL_RG32UIuint2NORG01
GL_RGBA8uint4YESRGBA
GL_RGBA16short4YESRGBA
GL_RGBA16Fhalf4NORGBA
GL_RGBA32Ffloat4NORGBA
GL_RGBA8Ibyte4NORGBA
GL_RGBA16Ishort4NORGBA
GL_RGBA32Iint4NORGBA
GL_RGBA8UIubyte4NORGBA
GL_RGBA16UIushort4NORGBA
GL_RGBA32UIuint4NORGBA

+ When a buffer object is attached to a buffer texture, the buffer object's data store + is taken as the texture's texel array. The number of texels in the buffer texture's + texel array is given by +

+ + + buffer_size + + + components × sizeof(base_type) + + +

+ where buffer_size is the size of the buffer object, in basic machine units and + components and base type are the element count and base data type for elements, as specified in the table above. + The number of texels in the texel array is then clamped to the implementation-dependent limit GL_MAX_TEXTURE_BUFFER_SIZE. + When a buffer texture is accessed in a shader, the results of a texel fetch are undefined if the specified texel coordinate is negative, or + greater than or equal to the clamped number of texels in the texel array. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_BUFFER. +

+ GL_INVALID_ENUM is generated if internalFormat is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if buffer is not zero or the name of an existing buffer object. +

Notes

+ glTexBuffer is available only if the GL version is 3.1 or greater. +

Associated Gets

glGet + with argument GL_MAX_TEXTURE_BUFFER_SIZE

glGet + with argument GL_TEXTURE_BINDING_BUFFER

glGetTexLevelParameter + with argument GL_TEXTURE_BUFFER_DATA_STORE_BINDING

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexImage1D.xml b/upstream-man-pages/man3/xhtml/glTexImage1D.xml new file mode 100644 index 0000000..5931770 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexImage1D.xml @@ -0,0 +1,423 @@ + + + +glTexImage1D

Name

glTexImage1D — specify a one-dimensional texture image

C Specification

void glTexImage1D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA, + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA, + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_R3_G3_B2, + GL_RED, + GL_RG, + GL_RGB, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

width

+ Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. The height of the 1D texture image is 1. +

border

+ This value must be 0. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. +

+ Texture images are defined with glTexImage1D. + The arguments describe the parameters of the texture image, + such as width, + width of the border, + level-of-detail number + (see glTexParameter), + and the internal resolution and format used to store the image. + The last three arguments describe how the image is represented in + memory. +

+ If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked against the implementation's capabilities. + If the implementation cannot handle a texture of the + requested texture size, it sets all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_1D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the left end of the texture array. + Subsequent elements progress left-to-right through the remaining texels + in the texture array. + The final element corresponds to the right end of the texture array. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RG

+ Each element is a single red/green double + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_DEPTH_COMPONENT

+ Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, + GL_RGB and GL_RGBA must match exactly.) +

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHAor + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_1D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

+ Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. +

Notes

+ glPixelStore modes affect texture images. +

+ data may be a null pointer. In this case texture memory is + allocated to accommodate a texture of width width. + You can then download subtextures to initialize the + texture memory. The image is undefined if the program tries to apply + an uninitialized portion of the texture image to a primitive. +

+ glTexImage1D specifies the one-dimensional texture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_1D + or GL_PROXY_TEXTURE_1D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX + are accepted. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not + one of the accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer value of n. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexImage2D.xml b/upstream-man-pages/man3/xhtml/glTexImage2D.xml new file mode 100644 index 0000000..a160e54 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexImage2D.xml @@ -0,0 +1,447 @@ + + + +glTexImage2D - OpenGL 3.3 Reference Pages

Name

glTexImage2D — specify a two-dimensional texture image

C Specification

void glTexImage2D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + If target is GL_TEXTURE_RECTANGLE or + GL_PROXY_TEXTURE_RECTANGLE, level must be 0. +

internalFormat

+ Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. +

width

+ Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. +

height

+ Specifies the height of the texture image, or the number of layers in a texture + array, in the case of the GL_TEXTURE_1D_ARRAY and + GL_PROXY_TEXTURE_1D_ARRAY targets. + All implementations support 2D texture images that are at least 1024 texels + high, and texture arrays that are at least 256 layers deep. +

border

+ This value must be 0. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ To define texture images, call glTexImage2D. + The arguments describe the parameters of the texture image, + such as height, width, width of the border, level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. +

+ If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or GL_PROXY_TEXTURE_RECTANGLE, + no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to 1. +

+ If target is GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE + or one of the GL_TEXTURE_CUBE_MAP + targets, data is read from data as a sequence of signed or unsigned + bytes, shorts, or longs, or single-precision floating-point values, + depending on type. These values are grouped into sets of one, two, + three, or four values, depending on format, to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If target is GL_TEXTURE_1D_ARRAY, data is interpreted + as an array of one-dimensional images. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the lower left corner of the texture image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RG

+ Each element is a red/green double. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_DEPTH_COMPONENT

+ Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. +

GL_DEPTH_STENCIL

+ Each element is a pair of depth and stencil values. The depth component of + the pair is interpreted as in GL_DEPTH_COMPONENT. The stencil + component is interpreted based on specified the depth + stencil internal format. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, + GL_RG, GL_RGB, + and GL_RGBA must match exactly.) +

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_CUBE_MAP target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and G values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

+ Image-based shadowing can be enabled by comparing texture r coordinates to + depth texture values to generate a boolean result. + See glTexParameter for details on texture comparison. +

Notes

+ The glPixelStore mode affects texture images. +

+ data may be a null pointer. + In this case, texture memory is + allocated to accommodate a texture of width width and height height. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. +

+ glTexImage2D specifies the two-dimensional texture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if target is not GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_ARRAY_TEXTURE_LAYERS. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or height cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some + integer value of k. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV, + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV, + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if target is not + GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_RECTANGLE, + and internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. +

+ GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. +

+ GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F, and format is + not GL_DEPTH_COMPONENT. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_RECTANGLE + or GL_PROXY_TEXTURE_RECTANGLE and level is not 0. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexImage2DMultisample.xml b/upstream-man-pages/man3/xhtml/glTexImage2DMultisample.xml new file mode 100644 index 0000000..1e6b1b6 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexImage2DMultisample.xml @@ -0,0 +1,56 @@ + + + +glTexImage2DMultisample

Name

glTexImage2DMultisample — establish the data storage, format, dimensions, and number of samples of a multisample texture's image

C Specification

void glTexImage2DMultisample(GLenum  target,
 GLsizei  samples,
 GLint  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLboolean  fixedsamplelocations);

Parameters

target

+ Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. +

samples

+ The number of samples in the multisample texture's image. +

internalformat

+ The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. +

width

+ The width of the multisample texture's image, in texels. +

height

+ The height of the multisample texture's image, in texels. +

fixedsamplelocations

+ Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. +

Description

+ glTexImage2DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. +

+ target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + width and height are the dimensions in texels of the texture, and must be in the range zero + to GL_MAX_TEXTURE_SIZE - 1. samples specifies the number of samples in the image and must be + in the range zero to GL_MAX_SAMPLES - 1. +

+ internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. +

+ If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. +

+ When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. +

Notes

+ glTexImage2DMultisample is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. +

+ GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexImage3D.xml b/upstream-man-pages/man3/xhtml/glTexImage3D.xml new file mode 100644 index 0000000..e097ecd --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexImage3D.xml @@ -0,0 +1,471 @@ + + + +glTexImage3D

Name

glTexImage3D — specify a three-dimensional texture image

C Specification

void glTexImage3D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be one of GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level + n + is the + + + n + th + + + mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be one of the following symbolic constants: + GL_RGBA32F, + GL_RGBA32I, + GL_RGBA32UI, + GL_RGBA16, + GL_RGBA16F, + GL_RGBA16I, + GL_RGBA16UI, + GL_RGBA8, + GL_RGBA8UI, + GL_SRGB8_ALPHA8, + GL_RGB10_A2, + GL_RGBA10_A2UI, + GL_R11_G11_B10F, + GL_RG32F, + GL_RG32I, + GL_RG32UI, + GL_RG16, + GL_RG16F, + GL_RGB16I, + GL_RGB16UI, + GL_RG8, + GL_RG8I, + GL_RG8UI, + GL_R23F, + GL_R32I, + GL_R32UI, + GL_R16F, + GL_R16I, + GL_R16UI, + GL_R8, + GL_R8I, + GL_R8UI, + GL_RGBA16_UNORM, + GL_RGBA8_SNORM, + GL_RGB32F, + GL_RGB32I, + GL_RGB32UI, + GL_RGB16_SNORM, + GL_RGB16F, + GL_RGB16I, + GL_RGB16UI, + GL_RGB16, + GL_RGB8_SNORM, + GL_RGB8, + GL_RGB8I, + GL_RGB8UI, + GL_SRGB8, + GL_RGB9_E5, + GL_RG16_SNORM, + GL_RG8_SNORM, + GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2, + GL_R16_SNORM, + GL_R8_SNORM, + GL_COMPRESSED_RED_RGTC1, + GL_COMPRESSED_SIGNED_RED_RGTC1, + GL_DEPTH_COMPONENT32F, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT16, + GL_DEPTH32F_STENCIL8, + GL_DEPTH24_STENCIL8. +

width

+ Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels + wide. +

height

+ Specifies the height of the texture image. + All implementations support 3D texture images that are at least 256 texels + high. +

depth

+ Specifies the depth of the texture image, or the number of layers in a texture array. + All implementations support 3D texture images that are at least 256 texels + deep, and texture arrays that are at least 256 layers deep. +

border

+ This value must be 0. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. +

+ To define texture images, call glTexImage3D. + The arguments describe the parameters of the texture image, + such as height, + width, depth, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. +

+ If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_3D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RG

+ Each element is a red and green pair. + The GL converts each to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, GL_RGB, + and GL_RGBA must match exactly.) +

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_3D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

Notes

+ The glPixelStore mode affects texture images. +

+ data may be a null pointer. + In this case texture memory is + allocated to accommodate a texture of width width, height height, + and depth depth. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. +

+ glTexImage3D specifies the three-dimensional texture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + are accepted. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width, height, or depth is less than 0 or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width, height, or depth cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some + integer value of k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if format or internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexImage3DMultisample.xml b/upstream-man-pages/man3/xhtml/glTexImage3DMultisample.xml new file mode 100644 index 0000000..70f21f1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexImage3DMultisample.xml @@ -0,0 +1,58 @@ + + + +glTexImage3DMultisample

Name

glTexImage3DMultisample — establish the data storage, format, dimensions, and number of samples of a multisample texture's image

C Specification

void glTexImage3DMultisample(GLenum target,
 GLsizei samples,
 GLint internalformat,
 GLsizei width,
 GLsizei height,
 GLsizei depth,
 GLboolean fixedsamplelocations);
 

Parameters

target

+ Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. +

samples

+ The number of samples in the multisample texture's image. +

internalformat

+ The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. +

width

+ The width of the multisample texture's image, in texels. +

height

+ The height of the multisample texture's image, in texels. +

fixedsamplelocations

+ Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. +

Description

+ glTexImage3DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. +

+ target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + width and heightare the dimensions in texels of the texture, and must + be in the range zero to GL_MAX_TEXTURE_SIZE - 1. depth is the number of array slices in the array texture's image. + samples specifies the number of samples in the image and must be in the range zero to GL_MAX_SAMPLES - 1. +

+ internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. +

+ If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. +

+ When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. +

Notes

+ glTexImage2DMultisample is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. +

+ GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if depth is negative or is greater than GL_MAX_ARRAY_TEXTURE_LAYERS. +

+ GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexParameter.xml b/upstream-man-pages/man3/xhtml/glTexParameter.xml new file mode 100644 index 0000000..750630b --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexParameter.xml @@ -0,0 +1,961 @@ + + + +glTexParameter

Name

glTexParameter — set texture parameters

C Specification

void glTexParameterf(GLenum  target,
 GLenum  pname,
 GLfloat  param);
void glTexParameteri(GLenum  target,
 GLenum  pname,
 GLint  param);

Parameters

target

+ Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. +

pname

+ Specifies the symbolic name of a single-valued texture parameter. + pname can be one of the following: + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. +

param

+ Specifies the value of pname. +

C Specification

void glTexParameterfv(GLenum  target,
 GLenum  pname,
 const GLfloat *  params);
void glTexParameteriv(GLenum  target,
 GLenum  pname,
 const GLint *  params);
void glTexParameterIiv(GLenum  target,
 GLenum  pname,
 const GLint *  params);
void glTexParameterIuiv(GLenum  target,
 GLenum  pname,
 const GLuint *  params);

Parameters

target

+ Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. +

pname

+ Specifies the symbolic name of a texture parameter. + pname can be one of the following: + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. +

params

+ Specifies a pointer to an array where the value or values of pname + are stored. +

Description

+ glTexParameter assigns the value or values in params to the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, or GL_TEXTURE_3D. + The following symbols are accepted in pname: +

GL_TEXTURE_BASE_LEVEL

+ Specifies the index of the lowest defined mipmap level. This is an + integer value. The initial value is 0. +

+

GL_TEXTURE_BORDER_COLOR

+ The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . +

+ If the values for GL_TEXTURE_BORDER_COLOR are specified with glTexParameterIiv + or glTexParameterIuiv, the values are stored unmodified with an internal data type of + integer. If specified with glTexParameteriv, they are converted to floating point with the following + equation: + + + f + = + + + 2 + c + + + + 1 + + + 2 + b + + - + 1 + + + + . + If specified with glTexParameterfv, they are stored unmodified as floating-point values. +

GL_TEXTURE_COMPARE_FUNC

+ Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: +

+ Texture Comparison Function + + Computed result +
+ GL_LEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + +
+
+ GL_GEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + +
+
+ GL_LESS + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + +
+
+ GL_GREATER + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + +
+
+ GL_EQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + ≠ + + D + t + + + + + + + + +
+
+ GL_NOTEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + ≠ + + D + t + + + + + + + r + = + + D + t + + + + + + + + +
+
+ GL_ALWAYS + +
+ + result + = + 1.0 + +
+
+ GL_NEVER + +
+ + result + = + 0.0 + +
+

+ where r + is the current interpolated texture coordinate, and + + + D + t + + + is the depth texture value sampled from the currently bound depth texture. + result + is assigned to the the red channel. +

GL_TEXTURE_COMPARE_MODE

+ Specifies the texture comparison mode for currently bound depth textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: +

GL_COMPARE_REF_TO_TEXTURE

+ Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound depth texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. +

GL_NONE

+ Specifies that the red channel should be assigned the + appropriate value from the currently bound depth texture. +

+

GL_TEXTURE_LOD_BIAS

+ params specifies a fixed bias value that is to be added to the level-of-detail + parameter for the texture before texture sampling. The specified value is added to the shader-supplied + bias value (if any) and subsequently clamped into the implementation-defined range + + + + + - + bias + max + + + + + + + bias + max + + + + + + , + where + + + bias + max + + + + is the value of the implementation defined constant GL_MAX_TEXTURE_LOD_BIAS. The initial value is 0.0. +

GL_TEXTURE_MIN_FILTER

+ The texture minifying function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be minified. + There are six defined minifying functions. + Two of them use either the nearest texture elements or a weighted average of multiple texture elements + to compute the texture value. + The other four use mipmaps. +

+ A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + ⁡ + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + ⁡ + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. +

+ params supplies a function for minifying the texture as one of the + following: +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

GL_NEAREST_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates) + to produce a texture value. +

GL_LINEAR_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest to the specified texture coordinates) + to produce a texture value. +

GL_NEAREST_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates ) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

GL_LINEAR_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the texture elements that are closest to the specified texture coordinates) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

+

+ As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or multiple texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. +

+

GL_TEXTURE_MAG_FILTER

+ The texture magnification function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be magified. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. +

GL_LINEAR

+ Returns the weighted average of the texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

+

+

+

+

GL_TEXTURE_MIN_LOD

+ Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. +

+

GL_TEXTURE_MAX_LOD

+ Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. +

+

GL_TEXTURE_MAX_LEVEL

+ Sets the index of the highest defined mipmap level. This is an integer + value. The initial value is 1000. +

+

GL_TEXTURE_SWIZZLE_R

+ Sets the swizzle that will be applied to the r + component of a texel before it is returned to the shader. Valid values for param are GL_RED, + GL_GREEN, GL_BLUE, GL_ALPHA, GL_ZERO and + GL_ONE. + If GL_TEXTURE_SWIZZLE_R is GL_RED, the value for + r will be taken from the first + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_GREEN, the value for + r will be taken from the second + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_BLUE, the value for + r will be taken from the third + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ALPHA, the value for + r will be taken from the fourth + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ZERO, the value for + r will be subtituted with + 0.0. + If GL_TEXTURE_SWIZZLE_R is GL_ONE, the value for + r will be subtituted with + 1.0. + The initial value is GL_RED. +

+

GL_TEXTURE_SWIZZLE_G

+ Sets the swizzle that will be applied to the g + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_GREEN. +

+

GL_TEXTURE_SWIZZLE_B

+ Sets the swizzle that will be applied to the b + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_BLUE. +

+

GL_TEXTURE_SWIZZLE_A

+ Sets the swizzle that will be applied to the a + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_ALPHA. +

+

GL_TEXTURE_SWIZZLE_RGBA

+ Sets the swizzles that will be applied to the + r, + g, + b, and + a + components of a texel before they are returned to the shader. Valid values for params and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R, except that all channels are specified simultaneously. + Setting the value of GL_TEXTURE_SWIZZLE_RGBA is equivalent (assuming no errors are generated) to + setting the parameters of each of GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, and + GL_TEXTURE_SWIZZLE_A successively. +

+

GL_TEXTURE_WRAP_S

+ Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. + GL_CLAMP_TO_BORDER evaluates s coordinates in a similar manner to GL_CLAMP_TO_EDGE. + However, in cases where clamping would have occurred in GL_CLAMP_TO_EDGE mode, the fetched texel data + is substituted with the values specified by GL_TEXTURE_BORDER_COLOR. + GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + ⁡ + + s + + + + , + where + + + + frac + ⁡ + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_T

+ Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_R

+ Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. +

Notes

+ Suppose that a program attempts to sample from a texture and + has set GL_TEXTURE_MIN_FILTER to one of the functions that requires a + mipmap. If either the dimensions of the texture images currently defined + (with previous calls to glTexImage1D, glTexImage2D, + glTexImage3D, glCopyTexImage1D, or glCopyTexImage2D) do not + follow the proper sequence for mipmaps (described above), or there are + fewer texture images defined than are needed, or the set of texture images + have differing numbers of texture components, then the texture is considered incomplete. +

+ Linear filtering accesses the four nearest texture elements only in 2D + textures. In 1D textures, linear filtering accesses the two nearest + texture elements. In 3D textures, linear filtering accesses the eight nearest + texture elements. +

+ glTexParameter specifies the texture parameters for the active texture unit, specified + by calling glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not + one of the accepted defined values. +

+ GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. +

Associated Gets

+ glGetTexParameter +

+ glGetTexLevelParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexSubImage1D.xml b/upstream-man-pages/man3/xhtml/glTexSubImage1D.xml new file mode 100644 index 0000000..67a4943 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexSubImage1D.xml @@ -0,0 +1,205 @@ + + + +glTexSubImage1D

Name

glTexSubImage1D — specify a one-dimensional texture subimage

C Specification

void glTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable or disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. +

+ glTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with width of 0, but + such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glPixelStore modes affect texture images. +

+ glTexSubImage1D specifies a one-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or if + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, and + b + is + the width of the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. +

+ GL_INVALID_VALUE is generated if width is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexSubImage2D.xml b/upstream-man-pages/man3/xhtml/glTexSubImage2D.xml new file mode 100644 index 0000000..8925b24 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexSubImage2D.xml @@ -0,0 +1,265 @@ + + + +glTexSubImage2D - OpenGL 3.3 Reference Pages

Name

glTexSubImage2D — specify a two-dimensional texture subimage

C Specification

void glTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + or GL_TEXTURE_1D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. +

+ glTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + or one-dimensional array texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + and y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glPixelStore modes affect texture images. +

+ glTexSubImage2D specifies a two-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, and + b + is the border width + of the texture image being modified. + Note that + w + and + h + include twice the border width. +

+ GL_INVALID_VALUE is generated if width or height is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage2D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTexSubImage3D.xml b/upstream-man-pages/man3/xhtml/glTexSubImage3D.xml new file mode 100644 index 0000000..d0328f7 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTexSubImage3D.xml @@ -0,0 +1,308 @@ + + + +glTexSubImage3D - OpenGL 3.3 Reference Pages

Name

glTexSubImage3D — specify a three-dimensional texture subimage

C Specification

void glTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

zoffset

+ Specifies a texel offset in the z direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

depth

+ Specifies the depth of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. +

+ glTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + or two-dimensioanl array texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive, + and z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. + For three-dimensional textures, the z index refers to the third + dimension. For two-dimensional array textures, the z index refers to + the slice index. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width, height, or + depth but such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ The glPixelStore modes affect texture images. +

+ glTexSubImage3D specifies a three-dimensional or two-dimenaional array subtexture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + or + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + depth + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH + and + b + is the border width of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. +

+ GL_INVALID_VALUE is generated if width, height, or depth + is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glTransformFeedbackVaryings.xml b/upstream-man-pages/man3/xhtml/glTransformFeedbackVaryings.xml new file mode 100644 index 0000000..e48a079 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glTransformFeedbackVaryings.xml @@ -0,0 +1,67 @@ + + + +glTransformFeedbackVaryings

Name

glTransformFeedbackVaryings — specify values to record in transform feedback buffers

C Specification

void glTransformFeedbackVaryings(GLuintprogram,
 GLsizeicount,
 const char **varyings,
 GLenumbufferMode);
 

Parameters

program

+ The name of the target program object. +

count

+ The number of varying variables used for transform feedback. +

varyings

+ An array of count zero-terminated strings specifying the + names of the varying variables to use for transform feedback. +

bufferMode

+ Identifies the mode used to capture the varying variables when transform feedback is active. + bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. +

Description

+ The names of the vertex or geometry shader outputs to be recorded in transform feedback mode + are specified using glTransformFeedbackVaryings. When a geometry shader + is active, transform feedback records the values of selected geometry shader output variables + from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are + recorded. +

+ The state set by glTranformFeedbackVaryings is stored and takes effect + next time glLinkProgram is called + on program. When glLinkProgram + is called, program is linked so that the values of the specified varying variables + for the vertices of each primitive generated by the GL are written to a single buffer + object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple + buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. +

+ In addition to the errors generated by glTransformFeedbackVaryings, the + program program will fail to link if: +

  • + The count specified by glTransformFeedbackVaryings is non-zero, but the + program object has no vertex or geometry shader. +

  • + Any variable name specified in the varyings array is not declared as an output + in the vertex shader (or the geometry shader, if active). +

  • + Any two entries in the varyings array specify the same varying variable. +

  • + The total number of components to capture in any varying variable in varyings + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is GL_SEPARATE_ATTRIBS. +

  • + The total number of components to capture is greater than the constant + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer + mode is GL_INTERLEAVED_ATTRIBS. +

+

Notes

+ glGetTransformFeedbackVarying is available only if the GL version is 3.0 or greater. +

Errors

+ GL_INVALID_VALUE is generated if program is not + the name of a program object. +

+ GL_INVALID_VALUE is generated if bufferMode is GL_SEPARATE_ATTRIBS + and count is greater than the implementation-dependent limit GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS. +

Associated Gets

+ glGetTransformFeedbackVarying +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glUniform.xml b/upstream-man-pages/man3/xhtml/glUniform.xml new file mode 100644 index 0000000..39c9f4e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glUniform.xml @@ -0,0 +1,170 @@ + + + +glUniform - OpenGL 3.3 Reference Pages

Name

glUniform — Specify the value of a uniform variable for the current program object

C Specification

void glUniform1f(GLint location, GLfloat v0);

void glUniform2f(GLint  location,
 GLfloat  v0,
 GLfloat  v1);
void glUniform3f(GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glUniform4f(GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);

void glUniform1i(GLint location, GLint v0);

void glUniform2i(GLint  location,
 GLint  v0,
 GLint  v1);
void glUniform3i(GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2);
void glUniform4i(GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLint  v3);

void glUniform1ui(GLint location, GLuint v0);

void glUniform2ui(GLint  location,
 GLuint  v0,
 GLuint  v1);
void glUniform3ui(GLint  location,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2);
void glUniform4ui(GLint  location,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2,
 GLuint  v3);

Parameters

location

Specifies the location of the uniform variable + to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified uniform variable.

C Specification

void glUniform1fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform2fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform3fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform4fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform1iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform2iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform3iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform4iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform1uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);
void glUniform2uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);
void glUniform3uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);
void glUniform4uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);

Parameters

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

C Specification

void glUniformMatrix2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix2x3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3x2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix2x4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4x2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3x4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4x3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);

Parameters

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices.

transpose

Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

Description

glUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glUniform operates on the program object + that was made part of current state by calling + glUseProgram.

The commands glUniform{1|2|3|4}{f|i|ui} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, unsigned int, bool; + 2 for vec2, ivec2, uvec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed; the suffix ui indicates that + unsigned integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The + ui variants of this function should be used + to provide values for uniform variables defined as unsigned int, uvec2, + uvec3, uvec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i, ui or f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise.

All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0.

The commands glUniform{1|2|3|4}{f|i|ui}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glUniform{1|2|3|4}{f|i|ui}.

For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glUniform3f or + glUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count

The commands + glUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices.

Notes

glUniform1i and + glUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error.

If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged.

Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged.

If location is a value other than + -1 and it does not represent a valid uniform variable location + in the current program object, an error will be generated, and + no changes will be made to the uniform variable storage of the + current program object. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed.

Errors

GL_INVALID_OPERATION is generated if there + is no current program object.

GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glUniform + command.

GL_INVALID_OPERATION is generated if one of + the signed or unsigned integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, + ivec4, unsigned int, uvec2, uvec3, + uvec4, or an array of these.

GL_INVALID_OPERATION is generated if one of + the signed integer variants of this function is used to load a uniform + variable of type unsigned int, uvec2, uvec3, + uvec4, or an array of these.

GL_INVALID_OPERATION is generated if one of + the unsigned integer variants of this function is used to load a uniform + variable of type int, ivec2, ivec3, + ivec4, or an array of these.

GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for the current program object and + location is not equal to -1.

GL_INVALID_VALUE is generated if + count is less than 0.

GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable.

GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glUniform1i and + glUniform1iv.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveUniform + with the handle of a program object and the index of an active uniform variable

glGetUniform + with the handle of a program object and the location of a + uniform variable

glGetUniformLocation + with the handle of a program object and the name of a uniform + variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glUniformBlockBinding.xml b/upstream-man-pages/man3/xhtml/glUniformBlockBinding.xml new file mode 100644 index 0000000..ea9dff1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glUniformBlockBinding.xml @@ -0,0 +1,40 @@ + + + +glUniformBlockBinding

Name

glUniformBlockBinding — assign a binding point to an active uniform block

C Specification

void glUniformBlockBinding(GLuint program,
 GLuint uniformBlockIndex,
 GLuint uniformBlockBinding);
 

Parameters

program

+ The name of a program object containing the active uniform block whose binding to assign. +

uniformBlockIndex

+ The index of the active uniform block within program whose binding to assign. +

uniformBlockBinding

+ Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program. +

Description

+ Binding points for active uniform blocks are assigned using glUniformBlockBinding. Each of a program's active uniform + blocks has a corresponding uniform buffer binding point. program is the name of a program object for which the command + glLinkProgram has been issued in the past. +

+ If successful, glUniformBlockBinding specifies that program will use the data store of the + buffer object bound to the binding point uniformBlockBinding to extract the values of the uniforms in the + uniform block identified by uniformBlockIndex. +

+ When a program object is linked or re-linked, the uniform buffer object binding point assigned to each of its active uniform blocks is reset to zero. +

Errors

+ GL_INVALID_VALUE is generated if uniformBlockIndex is not an active uniform block index of program. +

+ GL_INVALID_VALUE is generated if uniformBlockBinding is greater than or equal to the value of GL_MAX_UNIFORM_BUFFER_BINDINGS. +

+ GL_INVALID_VALUE is generated program is not the name of a program object generated by the GL. +

Notes

+ glUniformBlockBinding is available only if the GL version is 3.1 or greater. +

Associated Gets

+ glGetActiveUniformBlock with argument GL_UNIFORM_BLOCK_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glUnmapBuffer.xml b/upstream-man-pages/man3/xhtml/glUnmapBuffer.xml new file mode 100644 index 0000000..c046bb4 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glUnmapBuffer.xml @@ -0,0 +1,4 @@ + + + +glUnmapBuffer diff --git a/upstream-man-pages/man3/xhtml/glUseProgram.xml b/upstream-man-pages/man3/xhtml/glUseProgram.xml new file mode 100644 index 0000000..839a823 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glUseProgram.xml @@ -0,0 +1,87 @@ + + + +glUseProgram

Name

glUseProgram — Installs a program object as part of current rendering state

C Specification

void glUseProgram(GLuint program);
 

Parameters

program

Specifies the handle of the program object + whose executables are to be used as part of current + rendering state.

Description

glUseProgram installs the program + object specified by program as part of + current rendering state. One or more executables are created in + a program object by successfully attaching shader objects to it + with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. +

A program object will contain an executable that will run + on the vertex processor if it contains one or more shader + objects of type GL_VERTEX_SHADER that have + been successfully compiled and linked. A program object will contain an + executable that will run on the geometry processor if it contains one or + more shader objects of type GL_GEOMETRY_SHADER that + have been successfully compiled and linked. + Similarly, a program object will contain an executable that will run on the + fragment processor if it contains one or more shader objects of type + GL_FRAGMENT_SHADER that have been + successfully compiled and linked.

While a program object is in use, applications are free to + modify attached shader objects, compile attached shader objects, + attach additional shader objects, and detach or delete shader + objects. None of these operations will affect the executables + that are part of the current state. However, relinking the + program object that is currently in use will install the program + object as part of the current rendering state if the link + operation was successful (see + glLinkProgram + ). If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE, but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked.

If program is zero, then the current rendering + state refers to an invalid program object and the + results of shader execution are undefined. However, this is not an error.

If program does not + contain shader objects of type GL_FRAGMENT_SHADER, an + executable will be installed on the vertex, and possibly geometry processors, + but the results of fragment shader execution will be undefined.

Notes

Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

GL_INVALID_VALUE is generated if + program is neither 0 nor a value + generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program could not be made part of current + state.

GL_INVALID_OPERATION is generated if + transform feedback mode is active.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with a valid program object and the index of an active attribute + variable

glGetActiveUniform + with a valid program object and the index of an active uniform + variable

glGetAttachedShaders + with a valid program object

glGetAttribLocation + with a valid program object and the name of an attribute + variable

glGetProgram + with a valid program object and the parameter to be queried

glGetProgramInfoLog + with a valid program object

glGetUniform + with a valid program object and the location of a uniform + variable

glGetUniformLocation + with a valid program object and the name of a uniform + variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glValidateProgram.xml b/upstream-man-pages/man3/xhtml/glValidateProgram.xml new file mode 100644 index 0000000..01263a4 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glValidateProgram.xml @@ -0,0 +1,53 @@ + + + +glValidateProgram

Name

glValidateProgram — Validates a program object

C Specification

void glValidateProgram(GLuint program);
 

Parameters

program

Specifies the handle of the program object to + be validated.

Description

glValidateProgram checks to see + whether the executables contained in + program can execute given the current + OpenGL state. The information generated by the validation + process will be stored in program's + information log. The validation information may consist of an + empty string, or it may be a string containing information about + how the current program object interacts with the rest of + current OpenGL state. This provides a way for OpenGL + implementers to convey more information about why the current + program is inefficient, suboptimal, failing to execute, and so + on.

The status of the validation operation will be stored as + part of the program object's state. This value will be set to + GL_TRUE if the validation succeeded, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_VALIDATE_STATUS. If validation is + successful, program is guaranteed to + execute given the current state. Otherwise, + program is guaranteed to not execute.

This function is typically useful only during application + development. The informational string stored in the information + log is completely implementation dependent; therefore, an + application should not expect different OpenGL implementations + to produce identical information strings.

Notes

This function mimics the validation operation that OpenGL + implementations must perform when rendering commands are issued + while programmable shaders are part of current state. The error + GL_INVALID_OPERATION will be generated by + any command that triggers the rendering of geometry if:

  • any two active samplers in the current program + object are of different types, but refer to the same + texture image unit,

  • the number of active samplers in the program exceeds the maximum + number of texture image units allowed.

It may be difficult or cause a performance degradation for + applications to catch these errors when rendering commands are + issued. Therefore, applications are advised to make calls to + glValidateProgram to detect these issues + during application development.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

Associated Gets

glGetProgram + with arguments program and + GL_VALIDATE_STATUS

glGetProgramInfoLog + with argument program

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glVertexAttrib.xml b/upstream-man-pages/man3/xhtml/glVertexAttrib.xml new file mode 100644 index 0000000..e59f9e6 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glVertexAttrib.xml @@ -0,0 +1,133 @@ + + + +glVertexAttrib

Name

glVertexAttrib — Specifies the value of a generic vertex attribute

C Specification

void glVertexAttrib1f(GLuint  index,
 GLfloat  v0);
void glVertexAttrib1s(GLuint  index,
 GLshort  v0);
void glVertexAttrib1d(GLuint  index,
 GLdouble  v0);
void glVertexAttribI1i(GLuint  index,
 GLint  v0);
void glVertexAttribI1ui(GLuint  index,
 GLuint  v0);
void glVertexAttrib2f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1);
void glVertexAttrib2s(GLuint  index,
 GLshort  v0,
 GLshort  v1);
void glVertexAttrib2d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1);
void glVertexAttribI2i(GLuint  index,
 GLint  v0,
 GLint  v1);
void glVertexAttribI2ui(GLuint  index,
 GLuint  v0,
 GLuint  v1);
void glVertexAttrib3f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glVertexAttrib3s(GLuint  index,
 GLshort  v0,
 GLshort  v1,
 GLshort  v2);
void glVertexAttrib3d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2);
void glVertexAttribI3i(GLuint  index,
 GLint  v0,
 GLint  v1,
 GLint  v2);
void glVertexAttribI3ui(GLuint  index,
 GLoint  v0,
 GLoint  v1,
 GLoint  v2);
void glVertexAttrib4f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);
void glVertexAttrib4s(GLuint  index,
 GLshort  v0,
 GLshort  v1,
 GLshort  v2,
 GLshort  v3);
void glVertexAttrib4d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2,
 GLdouble  v3);
void glVertexAttrib4Nub(GLuint  index,
 GLubyte  v0,
 GLubyte  v1,
 GLubyte  v2,
 GLubyte  v3);
void glVertexAttribI4i(GLuint  index,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLint  v3);
void glVertexAttribI4ui(GLuint  index,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2,
 GLuint  v3);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified vertex attribute.

C Specification

void glVertexAttrib1fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib1sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib1dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribI1iv(GLuint  index,
 const GLint * v);
void glVertexAttribI1uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib2fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib2sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib2dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribI2iv(GLuint  index,
 const GLint * v);
void glVertexAttribI2uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib3fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib3sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib3dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribI3iv(GLuint  index,
 const GLint * v);
void glVertexAttribI3uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib4fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib4sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib4dv(GLuint  index,
 const GLdouble * v);
void glVertexAttrib4iv(GLuint  index,
 const GLint * v);
void glVertexAttrib4bv(GLuint  index,
 const GLbyte * v);
void glVertexAttrib4ubv(GLuint  index,
 const GLubyte * v);
void glVertexAttrib4usv(GLuint  index,
 const GLushort * v);
void glVertexAttrib4uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib4Nbv(GLuint  index,
 const GLbyte * v);
void glVertexAttrib4Nsv(GLuint  index,
 const GLshort * v);
void glVertexAttrib4Niv(GLuint  index,
 const GLint * v);
void glVertexAttrib4Nubv(GLuint  index,
 const GLubyte * v);
void glVertexAttrib4Nusv(GLuint  index,
 const GLushort * v);
void glVertexAttrib4Nuiv(GLuint  index,
 const GLuint * v);
void glVertexAttribI4bv(GLuint  index,
 const GLbyte * v);
void glVertexAttribI4ubv(GLuint  index,
 const GLubyte * v);
void glVertexAttribI4sv(GLuint  index,
 const GLshort * v);
void glVertexAttribI4usv(GLuint  index,
 const GLushort * v);
void glVertexAttribI4iv(GLuint  index,
 const GLint * v);
void glVertexAttribI4uiv(GLuint  index,
 const GLuint * v);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

v

Specifies a pointer to an array of values to + be used for the generic vertex attribute.

C Specification

void glVertexAttribP1ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);
void glVertexAttribP2ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);
void glVertexAttribP3ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);
void glVertexAttribP4ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

type

Type of packing used on the data. This parameter must be + GL_INT_10_10_10_2 or GL_UNSIGNED_INT_10_10_10_2 + to specify signed or unsigned data, respectively.

normalized

If GL_TRUE, then the values are to be + converted to floating point values by normalizing. Otherwise, + they are converted directly to floating point values.

+ value +

Specifies the new packed value to be used for the + specified vertex attribute.

Description

OpenGL defines a number of standard vertex attributes that + applications can modify with standard API entry points (color, + normal, texture coordinates, etc.). The + glVertexAttrib family of entry points + allows an application to pass generic vertex attributes in + numbered locations.

Generic attributes are defined as four-component values + that are organized into an array. The first entry of this array + is numbered 0, and the size of the array is specified by the + implementation-dependent constant + GL_MAX_VERTEX_ATTRIBS. Individual elements + of this array can be modified with a + glVertexAttrib call that specifies the + index of the element to be modified and a value for that + element.

These commands can be used to specify one, two, three, or + all four components of the generic vertex attribute specified by + index. A 1 in the + name of the command indicates that only one value is passed, and + it will be used to modify the first component of the generic + vertex attribute. The second and third components will be set to + 0, and the fourth component will be set to 1. Similarly, a + 2 in the name of the command indicates that + values are provided for the first two components, the third + component will be set to 0, and the fourth component will be set + to 1. A 3 in the name of the command + indicates that values are provided for the first three + components and the fourth component will be set to 1, whereas a + 4 in the name indicates that values are + provided for all four components.

The letters s, + f, i, + d, ub, + us, and ui indicate + whether the arguments are of type short, float, int, double, + unsigned byte, unsigned short, or unsigned int. When + v is appended to the name, the commands can + take a pointer to an array of such values.

Additional capitalized letters can indicate further alterations + to the default behavior of the glVertexAttrib function:

+ The commands containing N indicate that + the arguments will be passed as fixed-point values that are + scaled to a normalized range according to the component + conversion rules defined by the OpenGL specification. Signed + values are understood to represent fixed-point values in the + range [-1,1], and unsigned values are understood to represent + fixed-point values in the range [0,1]. +

+ The commands containing I indicate that + the arguments are extended to full signed or unsigned integers. +

+ The commands containing P indicate that + the arguments are stored as packed components within a larger + natural type. +

OpenGL Shading Language attribute variables are allowed to + be of type mat2, mat3, or mat4. Attributes of these types may be + loaded using the glVertexAttrib entry + points. Matrices must be loaded into successive generic + attribute slots in column major order, with one column of the + matrix in each generic attribute slot.

A user-defined attribute variable declared in a vertex + shader can be bound to a generic attribute index by calling + glBindAttribLocation. + This allows an application to use more descriptive variable + names in a vertex shader. A subsequent change to the specified + generic vertex attribute will be immediately reflected as a + change to the corresponding attribute variable in the vertex + shader.

The binding between a generic vertex attribute index and a + user-defined attribute variable in a vertex shader is part of + the state of a program object, but the current value of the + generic vertex attribute is not. The value of each generic + vertex attribute is part of current state, just like standard + vertex attributes, and it is maintained even if a different + program object is used.

An application may freely modify generic vertex attributes + that are not bound to a named vertex shader attribute variable. + These values are simply maintained as part of current state and + will not be accessed by the vertex shader. If a generic vertex + attribute bound to an attribute variable in a vertex shader is + not updated while the vertex shader is executing, the vertex + shader will repeatedly use the current value for the generic + vertex attribute.

Notes

Generic vertex attributes can be updated at any time.

It is possible for an application to bind more than one + attribute name to the same generic vertex attribute index. This + is referred to as aliasing, and it is allowed only if just one + of the aliased attribute variables is active in the vertex + shader, or if no path through the vertex shader consumes more + than one of the attributes aliased to the same location. OpenGL + implementations are not required to do error checking to detect + aliasing, they are allowed to assume that aliasing will not + occur, and they are allowed to employ optimizations that work + only in the absence of aliasing.

There is no provision for binding standard vertex + attributes; therefore, it is not possible to alias generic + attributes with standard attributes.

+ glVertexAttrib4bv, glVertexAttrib4sv, + glVertexAttrib4iv, glVertexAttrib4ubv, + glVertexAttrib4usv, glVertexAttrib4uiv, and + glVertexAttrib4N versions are available only if the GL version is 3.1 or higher. +

+ glVertexAttribP versions are available only if the GL version is 3.3 or higher. +

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM is generated if + glVertexAttribP is used with a + type other than + GL_INT_10_10_10_2 or + GL_UNSIGNED_INT_10_10_10_2.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with argument program and the index of an active + attribute variable

glGetAttribLocation + with argument program and an attribute + variable name

glGetVertexAttrib + with arguments GL_CURRENT_VERTEX_ATTRIB and + index

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glVertexAttribDivisor.xml b/upstream-man-pages/man3/xhtml/glVertexAttribDivisor.xml new file mode 100644 index 0000000..72683c8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glVertexAttribDivisor.xml @@ -0,0 +1,30 @@ + + + +glVertexAttribDivisor

Name

glVertexAttribDivisor — modify the rate at which generic vertex attributes advance during instanced rendering

C Specification

void glVertexAttribDivisor(GLuint index,
 GLuint divisor);
 

Parameters

index

+ Specify the index of the generic vertex attribute. +

divisor

+ Specify the number of instances that will pass between updates of the generic attribute at slot index. +

Description

+ glVertexAttribDivisor modifies the rate at which generic vertex attributes advance when rendering + multiple instances of primitives in a single draw call. If divisor is zero, the attribute at slot + index advances once per vertex. If divisor is non-zero, the attribute advances + once per divisor instances of the set(s) of vertices being rendered. An attribute + is referred to as instanced if its GL_VERTEX_ATTRIB_ARRAY_DIVISOR value is non-zero. +

+ index must be less than the value of GL_MAX_VERTEX_ATTRIBUTES. +

Notes

+ glVertexAttribDivisor is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the value of GL_MAX_VERTEX_ATTRIBUTES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glVertexAttribIPointer.xml b/upstream-man-pages/man3/xhtml/glVertexAttribIPointer.xml new file mode 100644 index 0000000..7882a15 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glVertexAttribIPointer.xml @@ -0,0 +1,4 @@ + + + +glVertexAttribIPointer diff --git a/upstream-man-pages/man3/xhtml/glVertexAttribPointer.xml b/upstream-man-pages/man3/xhtml/glVertexAttribPointer.xml new file mode 100644 index 0000000..e9b7be1 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glVertexAttribPointer.xml @@ -0,0 +1,114 @@ + + + +glVertexAttribPointer - OpenGL 3.3 Reference Pages

Name

glVertexAttribPointer — define an array of generic vertex attribute data

C Specification

void glVertexAttribPointer(GLuint  index,
 GLint  size,
 GLenum  type,
 GLboolean  normalized,
 GLsizei  stride,
 const GLvoid *  pointer);
void glVertexAttribIPointer(GLuint  index,
 GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

size

Specifies the number of components per + generic vertex attribute. Must + be 1, 2, 3, 4. Additionally, the symbolic constant GL_BGRA + is accepted by glVertexAttribPointer. The initial value is 4.

type

Specifies the data type of each component in + the array. The symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, and + GL_UNSIGNED_INT are accepted by both functions. Additionally + GL_HALF_FLOAT, + GL_FLOAT, + GL_DOUBLE, + GL_INT_2_10_10_10_REV, and + GL_UNSIGNED_INT_2_10_10_10_REV are accepted by glVertexAttribPointer. + The initial value is GL_FLOAT.

normalized

For glVertexAttribPointer, specifies whether fixed-point data values + should be normalized (GL_TRUE) + or converted directly as fixed-point values + (GL_FALSE) when they are + accessed.

stride

Specifies the byte offset between consecutive + generic vertex attributes. If stride + is 0, the generic vertex attributes are + understood to be tightly packed in the + array. The initial value is 0.

pointer

Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the + buffer currently bound to the GL_ARRAY_BUFFER target. The initial value is 0.

Description

+ glVertexAttribPointer and glVertexAttribIPointer specify the + location and data format of the array of generic vertex attributes at index index + to use when rendering. size specifies the number of components per attribute and + must be 1, 2, 3, 4, or GL_BGRA. type specifies the data type + of each component, and stride specifies the byte stride from one attribute to the next, + allowing vertices and attributes to be packed into a single array or stored in separate arrays. +

+ For glVertexAttribPointer, if normalized is set to GL_TRUE, + it indicates that values stored in an integer format are to be mapped to the range [-1,1] (for signed values) or [0,1] (for + unsigned values) when they are accessed and converted to floating point. Otherwise, values will + be converted to floats directly without normalization. +

+ For glVertexAttribIPointer, only the integer types GL_BYTE, + GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, + GL_INT, GL_UNSIGNED_INT are accepted. Values are always left as integer values. +

+ If pointer is not NULL, a non-zero named buffer object must be bound to the + GL_ARRAY_BUFFER target (see glBindBuffer), + otherwise an error is generated. pointer is treated as a byte offset into the buffer object's data store. + The buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array + state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index. +

+ When a generic vertex attribute array is specified, + size, type, + normalized, + stride, and + pointer are saved as vertex array + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable a generic vertex attribute array, call + glEnableVertexAttribArray and + glDisableVertexAttribArray with index. + If enabled, the generic vertex attribute array is used when glDrawArrays, + glMultiDrawArrays, glDrawElements, + glMultiDrawElements, or glDrawRangeElements + is called. +

Notes

+ Each generic vertex attribute array is initially disabled and isn't accessed when + glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

+ glVertexAttribIPointer is available only if the GL version is 3.0 or higher. +

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_VALUE is generated if + size is not 1, 2, 3, 4 or (for glVertexAttribPointer), + GL_BGRA.

GL_INVALID_ENUM is generated if + type is not an accepted value.

GL_INVALID_VALUE is generated if + stride is negative.

GL_INVALID_OPERATION is generated if size + is GL_BGRA and type is not GL_UNSIGNED_BYTE, + GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV.

GL_INVALID_OPERATION is generated if type + is GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV + and size is not 4 or GL_BGRA.

GL_INVALID_OPERATION is generated by glVertexAttribPointer + if size is GL_BGRA and noramlized + is GL_FALSE.

GL_INVALID_OPERATION is generated if zero is bound to the + GL_ARRAY_BUFFER buffer object binding point and the + pointer argument is not NULL.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_ENABLED

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_SIZE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_TYPE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_NORMALIZED

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_STRIDE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING

glGet with argument + GL_ARRAY_BUFFER_BINDING

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man3/xhtml/glViewport.xml b/upstream-man-pages/man3/xhtml/glViewport.xml new file mode 100644 index 0000000..2ec1dc8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glViewport.xml @@ -0,0 +1,124 @@ + + + +glViewport

Name

glViewport — set the viewport

C Specification

void glViewport(GLint x,
 GLint y,
 GLsizei width,
 GLsizei height);
 

Parameters

x, y

+ Specify the lower left corner of the viewport rectangle, + in pixels. The initial value is (0,0). +

width, height

+ Specify the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

Description

+ glViewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: +

+

+ + + x + w + + = + + + + x + nd + + + + 1 + + + ⁢ + + + width + 2 + + + + + x + + +

+

+

+ + + y + w + + = + + + + y + nd + + + + 1 + + + ⁢ + + + height + 2 + + + + + y + + +

+

+ Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. +

Errors

+ GL_INVALID_VALUE is generated if either width or height is negative. +

Associated Gets

+ glGet with argument GL_VIEWPORT +

+ glGet with argument GL_MAX_VIEWPORT_DIMS +

See Also

+ glDepthRange +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man3/xhtml/glWaitSync.xml b/upstream-man-pages/man3/xhtml/glWaitSync.xml new file mode 100644 index 0000000..8d7b009 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/glWaitSync.xml @@ -0,0 +1,37 @@ + + + +glWaitSync

Name

glWaitSync — instruct the GL server to block until the specified sync object becomes signaled

C Specification

void glWaitSync(GLsync sync,
 GLbitfield flags,
 GLuint64 timeout);
 

Parameters

sync

+ Specifies the sync object whose status to wait on. +

flags

+ A bitfield controlling the command flushing behavior. flags may be zero. +

timeout

+ Specifies the timeout that the server should wait before continuing. timeout must be GL_TIMEOUT_IGNORED. +

Description

+ glWaitSync causes the GL server to block and wait until sync becomes signaled. sync + is the name of an existing sync object upon which to wait. flags and timeout are currently not used and + must be set to zero and the special value GL_TIMEOUT_IGNORED, respectively[1]. glWaitSync will always wait no longer than an implementation-dependent timeout. The + duration of this timeout in nanoseconds may be queried by calling glGet with the + parameter GL_MAX_SERVER_WAIT_TIMEOUT. There is currently no way to determine whether glWaitSync unblocked + because the timeout expired or because the sync object being waited on was signaled. +

+ If an error occurs, glWaitSync does not cause the GL server to block. +

Notes

+ glWaitSync is available only if the GL version is 3.2 or higher. +

Errors

+ GL_INVALID_OPERATION is generated if sync is not the name of a sync object. +

+ GL_INVALID_VALUE is generated if flags is not zero. +

+ GL_INVALID_VALUE is generated if timeout is not GL_TIMEOUT_IGNORED. +

See Also

+ glFenceSync, + glClientWaitSync +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +



[1] flags and + timeout are placeholders for anticipated future extensions of sync object capabilities. They must have these reserved values in + order that existing code calling glWaitSync operate properly in the presence of such extensions.

diff --git a/upstream-man-pages/man3/xhtml/index.html b/upstream-man-pages/man3/xhtml/index.html new file mode 100644 index 0000000..012d889 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/index.html @@ -0,0 +1,311 @@ + + + +OpenGL Documentation + + + +

OpenGL 3.3 Reference Pages

+

+ +
A   B   C   D   E   F   G   H   I   L   M   P   Q   R   S   T   U   V   W  
+ + +


+ + + + +
A
glActiveTexture
glAttachShader
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + +
B
glBeginConditionalRender
glBeginQuery
glBeginTransformFeedback
glBindAttribLocation
glBindBuffer
glBindBufferBase
glBindBufferRange
glBindFragDataLocation
glBindFragDataLocationIndexed
glBindFramebuffer
glBindRenderbuffer
glBindSampler
glBindTexture
glBindVertexArray
glBlendColor
glBlendEquation
glBlendEquationSeparate
glBlendFunc
glBlendFuncSeparate
glBlitFramebuffer
glBufferData
glBufferSubData
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
C
glCheckFramebufferStatus
glClampColor
glClear
glClearBuffer
glClearColor
glClearDepth
glClearStencil
glClientWaitSync
glColorMask
glCompileShader
glCompressedTexImage1D
glCompressedTexImage2D
glCompressedTexImage3D
glCompressedTexSubImage1D
glCompressedTexSubImage2D
glCompressedTexSubImage3D
glCopyBufferSubData
glCopyTexImage1D
glCopyTexImage2D
glCopyTexSubImage1D
glCopyTexSubImage2D
glCopyTexSubImage3D
glCreateProgram
glCreateShader
glCullFace
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
D
glDeleteBuffers
glDeleteFramebuffers
glDeleteProgram
glDeleteQueries
glDeleteRenderbuffers
glDeleteSamplers
glDeleteShader
glDeleteSync
glDeleteTextures
glDeleteVertexArrays
glDepthFunc
glDepthMask
glDepthRange
glDetachShader
glDisable
glDisableVertexAttribArray
glDisablei
glDrawArrays
glDrawArraysInstanced
glDrawBuffer
glDrawBuffers
glDrawElements
glDrawElementsBaseVertex
glDrawElementsInstanced
glDrawElementsInstancedBaseVertex
glDrawRangeElements
glDrawRangeElementsBaseVertex
Top
+ +

+ + + + + + + +
E
glEnable
glEnableVertexAttribArray
glEndConditionalRender
glEndQuery
glEndTransformFeedback
Top
+ +

+ + + + + + + + + + +
F
glFenceSync
glFinish
glFlush
glFlushMappedBufferRange
glFramebufferRenderbuffer
glFramebufferTexture
glFramebufferTextureLayer
glFrontFace
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
G
glGenBuffers
glGenFramebuffers
glGenQueries
glGenRenderbuffers
glGenSamplers
glGenTextures
glGenVertexArrays
glGenerateMipmap
glGet
glGetActiveAttrib
glGetActiveUniform
glGetActiveUniformBlock
glGetActiveUniformBlockName
glGetActiveUniformName
glGetActiveUniformsiv
glGetAttachedShaders
glGetAttribLocation
glGetBufferParameter
glGetBufferPointerv
glGetBufferSubData
glGetCompressedTexImage
glGetError
glGetFragDataIndex
glGetFragDataLocation
glGetFramebufferAttachmentParameter
glGetMultisample
glGetProgram
glGetProgramInfoLog
glGetQueryObject
glGetQueryiv
glGetRenderbufferParameter
glGetSamplerParameter
glGetShader
glGetShaderInfoLog
glGetShaderSource
glGetString
glGetSync
glGetTexImage
glGetTexLevelParameter
glGetTexParameter
glGetTransformFeedbackVarying
glGetUniform
glGetUniformBlockIndex
glGetUniformIndices
glGetUniformLocation
glGetVertexAttrib
glGetVertexAttribPointerv
Top
+ +

+ + + +
H
glHint
Top
+ +

+ + + + + + + + + + + + + +
I
glIsBuffer
glIsEnabled
glIsFramebuffer
glIsProgram
glIsQuery
glIsRenderbuffer
glIsSampler
glIsShader
glIsSync
glIsTexture
glIsVertexArray
Top
+ +

+ + + + + +
L
glLineWidth
glLinkProgram
glLogicOp
Top
+ +

+ + + + + + + +
M
glMapBuffer
glMapBufferRange
glMultiDrawArrays
glMultiDrawElements
glMultiDrawElementsBaseVertex
Top
+ +

+ + + + + + + + + +
P
glPixelStore
glPointParameter
glPointSize
glPolygonMode
glPolygonOffset
glPrimitiveRestartIndex
glProvokingVertex
Top
+ +

+ + + +
Q
glQueryCounter
Top
+ +

+ + + + + + +
R
glReadBuffer
glReadPixels
glRenderbufferStorage
glRenderbufferStorageMultisample
Top
+ +

+ + + + + + + + + + + + + +
S
glSampleCoverage
glSampleMaski
glSamplerParameter
glScissor
glShaderSource
glStencilFunc
glStencilFuncSeparate
glStencilMask
glStencilMaskSeparate
glStencilOp
glStencilOpSeparate
Top
+ +

+ + + + + + + + + + + + + +
T
glTexBuffer
glTexImage1D
glTexImage2D
glTexImage2DMultisample
glTexImage3D
glTexImage3DMultisample
glTexParameter
glTexSubImage1D
glTexSubImage2D
glTexSubImage3D
glTransformFeedbackVaryings
Top
+ +

+ + + + + + +
U
glUniform
glUniformBlockBinding
glUnmapBuffer
glUseProgram
Top
+ +

+ + + + + + + +
V
glValidateProgram
glVertexAttrib
glVertexAttribDivisor
glVertexAttribPointer
glViewport
Top
+ +

+ + + +
W
glWaitSync
Top
+ + + + diff --git a/upstream-man-pages/man3/xhtml/makeindex.pl b/upstream-man-pages/man3/xhtml/makeindex.pl new file mode 100755 index 0000000..828541e --- /dev/null +++ b/upstream-man-pages/man3/xhtml/makeindex.pl @@ -0,0 +1,300 @@ +#!/usr/bin/perl + +sub Usage { +print +"Usage: makeindex xhtmldir xmldir + where xhtmldir contains a directory full of OpenGL .xml XHTML man pages -AND- + where xmldir contains a directory full of OpenGL .xml source XML man pages + + probably want to redirect output into a file like + ./makeindex.pl . .. > ./index.html +" +} + +sub PrintHeader { +print ' + + +OpenGL Documentation + + + +

OpenGL 3.3 Reference Pages

+

+ +'; +} + +sub PrintFooter { +print ' + + +'; +} + +sub TableElementForFilename { + my $name = shift; + + my $strippedname = $name; + $strippedname =~ s/\.xml//; + print "\t"; + print ''; + print "$strippedname"; + print "\n"; +} + +sub BeginTable { + my $letter = shift; + print "

\n"; + print ''; + print "\t\n"; +} + +sub EndTable { + print "\t"; + print ''; + print "\n
"; + print "$letter
Top
\n\n"; +} + + + +############## +# main +############## + +if (@ARGV != 2) +{ + Usage(); + die; +} + +# grab list of generated XHTML files +opendir(DIR,$ARGV[0]) or die "couldn't open directory"; + +@files = readdir(DIR); +close(DIR); +@files = sort @files; + +PrintHeader(); + +my @glX; +my @glut; +my @glu; +my @gl; + +my @realEntrypoints; +my @pageNames; + +#pre-create list of all true entrypoint names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + @funcs = ; + @funcs = grep(//, @funcs); + foreach (@funcs) + { + $func = $_; + $func =~ s/.*//; + $func =~ s/<\/function>.*\n//; + + push (@realEntrypoints, $func); + } + close(PARENT); + } + } +} + +#pre-create list of page names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + push (@pageNames, $entrypoint); + + close(PARENT); + } + } +} + +#sort the files into gl, glut, glu, and glX + +foreach (@files) +{ + if (/xml/) + { + # filter out entrypoint variations that don't have their own man pages + my $needIndexEntry = 0; + + # continue only if parent page exists (e.g. glColor) OR + # different parent page exists with matching entrypoint (e.g. glEnd) + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + foreach (@pageNames) + { + if ($_ eq $entrypoint) + { + # it has its own man page + $needIndexEntry = 1; + } + } + + if ($needIndexEntry == 0) + { + foreach (@realEntrypoints) + { + if ($_ eq $entrypoint) + { + # it's a real entrypoint, but make sure not a variation + $needIndexEntry = 1; + + foreach (@pageNames) + { + my $alteredEntrypoint = $entrypoint; + $alteredEntrypoint =~ s/$_//; + + if (!($alteredEntrypoint eq $entrypoint)) + { + $needIndexEntry = 0; + } + } + } + } + } + + if ($needIndexEntry) + { + if (/^glX/) + { + push (@glX, $_); + } + elsif (/^glut/) + { + push (@glut, $_); + } + elsif (/^glu/) + { + push (@glu, $_); + } + elsif (/^gl/) + { + push (@gl, $_); + } + } + } +} + + +#output the table of contents + +my @toc; + +if ($#gl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@gl) + { + $name = $_; + $name =~ s/^gl//; + $firstletter = substr($name, 0, 1); + if ($firstletter ne $currentletter) + { + push (@toc, $firstletter); + $currentletter = $firstletter; + } + } + if ($#glu > 0) { push (@toc, "glu"); } + if ($#glut > 0) { push (@toc, "glut"); } + if ($#glX > 0) { push (@toc, "glX"); } +} + + +print '
'; +print '
'; +foreach (@toc) +{ + print ' '; + print $_; + print "   "; +} +print "
\n\n\n"; +print '
'; + +# output the tables + +if ($#gl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@gl) + { + $name = $_; + $name =~ s/^gl//; + $firstletter = substr($name, 0, 1); + if ($firstletter ne $currentletter) + { + if ($opentable == 1) + { + EndTable(); + } + BeginTable($firstletter); + $opentable =1; + $currentletter = $firstletter; + } + TableElementForFilename($_); + } + if ($opentable) + { + EndTable(); + } +} + +if ($#glu > 0) +{ + BeginTable("glu"); + foreach (@glu) + { + TableElementForFilename($_); + } + EndTable(); +} + +if ($#glut > 0) +{ + BeginTable("glut"); + foreach (@glut) + { + TableElementForFilename($_); + } + EndTable(); +} + +if ($#glX > 0) +{ + BeginTable("glX"); + foreach (@glX) + { + TableElementForFilename($_); + } + EndTable(); +} + +PrintFooter(); diff --git a/upstream-man-pages/man3/xhtml/mathml.xsl b/upstream-man-pages/man3/xhtml/mathml.xsl new file mode 100644 index 0000000..e630f11 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/mathml.xsl @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/xhtml/opengl-man.css b/upstream-man-pages/man3/xhtml/opengl-man.css new file mode 100644 index 0000000..b73bb25 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/opengl-man.css @@ -0,0 +1,86 @@ +html, body, table +{ + color: #000; + padding: 4px 4px; + margin: 0px 0px 0 0px; + text-align: left; + font-family: Arial, Lucida, sans-serif; + font-size: 10pt; +} + +#container +{ + margin: 10px; + font-size: 14pt; + text-decoration:none; +} + +div.refnamediv p +{ + font-size: 12pt; + margin: 20px; +} + +div.funcsynopsis +{ + font-family: monospace; +} + +div.informaltable table +{ + border-width: 1px; + border-style: dotted; + border-collapse: collapse; + background-color: #F0F0F0; +} + +div.informaltable th +{ + border-width: 2px; + padding: 4px; +} + +div.informaltable td +{ + border-width: 2px; + padding: 4px; +} + +code +{ + font-weight: bold; +} + +span.citerefentry +{ + font-family: monospace; + font-weight: bold; +} + +table.sample +{ + width: 100%; + text-align: left; + border-width: 1px; + border-spacing: 5px; + border-style: dotted; + border-color: black; + border-collapse: separate; + background-color: #F0F0F0; + font-family: sans-serif; +} + +table.sample th +{ + border-width: 1px; + padding: 1px; + border-style: none; + font-size: 16pt; +} + +table.sample td +{ + border-width: 1px; + padding: 1px; + border-style: none; +} diff --git a/upstream-man-pages/man3/xhtml/opengl-man.xsl b/upstream-man-pages/man3/xhtml/opengl-man.xsl new file mode 100644 index 0000000..f382773 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/opengl-man.xsl @@ -0,0 +1,50 @@ + + + + + +ansi + +.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + type="text/xsl" href="mathml.xsl" + + + + + diff --git a/upstream-man-pages/man3/xhtml/pmathml.xsl b/upstream-man-pages/man3/xhtml/pmathml.xsl new file mode 100644 index 0000000..56e9ec0 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/pmathml.xsl @@ -0,0 +1,615 @@ + + + + + + + + + + + '<!--' + + + + + + + + + + + + + + + + + + + + + + + + +in mpdialog mode, we just write out some JavaScript to display +dialog to the reader asking whether they want to install MathPlayer +Depending on the response we get, we then instantiate an XSL processor +and reprocess the doc, passing $secondpass according to the +reader response. + +Using d-o-e is fairly horrible, but this code is only for IE +anyway, and we need to force HTML semantics in this case. + + +var cookieName = "MathPlayerInstall="; +function MPInstall(){ + + if (typeof document.body.style.maxHeight != "undefined") return null; + var showDialog=true; + var c = document.cookie; + var i = c.indexOf(cookieName); + if (i >= 0) { + if ( c.substr(i + cookieName.length, 1) >= 2) { showDialog=false; } + } + if (showDialog) { + MPDialog(); + c = document.cookie; + i = c.indexOf(cookieName); + } + if (i >= 0) return c.substr(i + cookieName.length, 1); + else return null; +} + +function MPDialog() { + var vArgs=""; + var sFeatures="dialogWidth:410px;dialogHeight:190px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'function fnClose(v) { ' + text += 'var exp = new Date();' + text += 'var thirtyDays = exp.getTime() + (30 * 24 * 60 * 60 * 1000);' + text += 'exp.setTime(thirtyDays);' + text += 'var cookieProps = ";expires=" + exp.toGMTString();' + text += 'if (document.forms[0].dontask.checked) v+=2;' + text += 'document.cookie="' + cookieName + '"+v+cookieProps;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Install MathPlayer?</title></head>' + text += '<body bgcolor="#D4D0C8"><form>' + text += '<table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>This page requires Design Science\\\'s MathPlayer&trade;.<br>' + text += 'Do you want to download and install MathPlayer?</td></tr>'; + text += '<tr><td align=center><input type="checkbox" name="dontask">' + text += 'Don\\\'t ask me again</td></tr>' + text += '<tr><td align=center><input id=yes type="button" value=" Yes "' + text += ' onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value=" No " onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + window.showModalDialog( text , vArgs, sFeatures ); +} + +function WaitDialog() { + var vArgs=""; + var sFeatures="dialogWidth:510px;dialogHeight:150px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'window.onload=fnLoad;' + text += 'function fnLoad() {document.forms[0].yes.focus();}' + text += 'function fnClose(v) { ' + text += 'window.returnValue=v;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Wait for Installation?</title></head>' + text += '<body bgcolor="#D4D0C8" onload="fnLoad()"><form><' + text += 'table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>Click OK once MathPlayer is installed ' + text += 'to refresh the page.<br>' + text += 'Click Cancel to view the page immediately without MathPlayer.</td></tr>'; + text += '<tr><td align=center><input id=yes type="button" ' + text += 'value=" OK " onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value="Cancel" onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + return window.showModalDialog( text , vArgs, sFeatures ); +} + +var result = MPInstall(); + +var action = "fallthrough"; +if (result == 1 || result == 3) { + window.open("http://www.dessci.com/webmath/mathplayer"); + var wait = WaitDialog(); + if ( wait == 1) { + action = "install"; + document.location.reload(); + + } +} +if (action == "fallthrough") { +var xsl = new ActiveXObject("Microsoft.FreeThreadedXMLDOM"); +xsl.async = false; +xsl.validateOnParse = false; +xsl.load("pmathmlcss.xsl"); +var xslTemplate = new ActiveXObject("MSXML2.XSLTemplate.3.0"); +xslTemplate.stylesheet=xsl.documentElement; +var xslProc = xslTemplate.createProcessor(); +xslProc.input = document.XMLDocument; + +xslProc.transform(); +var str = xslProc.output; + +var repl = "replace"; +if (window.navigator.appVersion.match(/Windows NT 5.1/)) { repl = ""; } +var newDoc = document.open("text/html", repl); +newDoc.write(str); +document.close(); +} + + +mathplayer-dl + +techexplorer-plugin + + + + + + + + techexplorer-plugin + + + + + mathplayer-dl + + + + + + + + + + + + +IE5 hacks +This code will be ignored by an XSLT engine as a top level +element in a foreign namespace. It will be executed by an IE5XSL +engine and insert <!-- into the output stream, ie the start of a +comment. This will comment out all the XSLT code which will be copied +to the output. A similar clause below will close this comment, it is +then followed by the IE5XSL templates to be executed. +This trick is due to Jonathan Marsh of Microsoft, and used in +the stylesheet for +the XPath 2 data model draft. + + +XSLT stylesheet +MSXSL script block + +The following script block implements an extension function that +tests whether a specified ActiveX component is known to the client. +This is used below to test for the existence of MathML rendering +components. + + function isinstalled(ax) + { + try { + var ActiveX = new ActiveXObject(ax); + return "true"; + } catch (e) { + return "false"; + } +} + + +The main bulk of this stylesheet is an identity transformation so... + + + + + + + + + +XHTML elements are copied sans prefix (XHTML is default namespace +here, so these elements will still be in XHTML namespace + + + + + + + +IE's treatment of XHTML as HTML needs a little help here... + + + + + + > + + + + + + + + + + +This just ensures the mathml prefix declaration isn't copied from +the source at this stage, so that the system will use the mml prefix +coming from this stylesheet + + + + + + + +We modify the head element to add code to specify a Microsoft +"Behaviour" if the behaviour component is known to the system. +Test for MathPlayer (Design Science) +Test for Techexplorer (IBM) +Test for Microsoft. In this case we just +output a small HTML file that executes a script that will re-process +the source docuument with a different stylesheet. Doing things this +way avoids the need to xsl:import the second stylesheet, which would +very much increase the processing overhead of running this +stylesheet. +Further tests (eg for netscape/mozilla) could +be added here if necessary + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Somewhat bizarrely in an otherwise namespace aware system, +Microsoft behaviours are defined to trigger off the +prefix not the Namespace. In the code above +we associated a MathML rendering behaviour (if one was found) with the +prefix mml: so here we ensure that this is the prefix +that actually gets used in the output. + + + + + + + +Copy semantics element through in IE (so mathplayer gets to see +mathplayer annotations, otherwise use first child or a presentation annotation. + + + + + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + /> + + + + + + " + + + + + + " + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +IE5XSL stylesheet +In a rare fit of sympathy for users of +the-language-known-as-XSL-in-IE5 this file incorporates a +version of the above code designed to work in the Microsoft dialect. +This is needed otherwise users of a MathML rendering behaviour would +have to make a choice whether they wanted to use this stylesheet +(keeping their source documents conforming XHTML+MathML) or to use +the explicit Microsoft Object code, which is less portable, but would +work in at least IE5.5. + +This entire section of code, down to the end of the stylesheet is +contained within this ie5:if. Thus XSLT sees it as a top level element +from a foreign namespace and silently ignores it. IE5XSL sees it as +"if true" and so executes the code. + + +First close the comment started at the beginning. This ensures +that the bulk of the XSLT code, while being copied to the result tree +by the IE5XSL engine, will not be rendered in the browser. + +Lacking attribute value templates in +xsl:element, and the local-name() function, we resort to constructing +the start and end tags in strings in javascript, then using +no-entities attribute which is the IE5XSL equivalent of disable-output-encoding + + +'-->' + + + + + + function mpisinstalled() + { + try { + var ActiveX = new ActiveXObject("MathPlayer.Factory.1"); + return "true"; + } catch (e) { + return "false"; + } +} + + + + + + + + + + + + + + + + + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + +'<math>' + +'</math>' + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/xhtml/pmathmlcss.xsl b/upstream-man-pages/man3/xhtml/pmathmlcss.xsl new file mode 100644 index 0000000..a1f96da --- /dev/null +++ b/upstream-man-pages/man3/xhtml/pmathmlcss.xsl @@ -0,0 +1,873 @@ + + + + + + + + +Dictionary + + The following elements in the x: namespace form an +implementation of an "Operator Dictionary" for this MathML +Implementation. In the case of stretch operators, the element +specifies the symbol parts via the latin-1 equivalent character based +on the encoding in the symbol font. It is a clear "failure to comply +to the spec" that using latin 1 characters (or numeric character +references) in the latin 1 range access glyphs in teh symbol font via +font position, however most of these character parts are not in +Unicode (until 3.2), so there is no standard way to access these characters. + +{ +{ + +( +) + +[ +] + +[[ +]] + +| +|| + + + + +~ +_v_ + + +Remove these for now, as XML parser in IE6 is broken and doesn't +accept plane 1 characters. + + +Grab all of the above into a variable. + + +HTML elements + + +XHTML elements get passed straight through, sans namespace prefix. + + + + + + + + + + + + +Template for the head element copies the original content, aand in +addition adds a script element and CSS style element that implement +the core of the MathML renderer. + + + +The malign function first finds the left most item in the aligngroup, and +then modifies the left margin of each item to make them +align. (Currently only left alignment is supported.) + + + +The mrowStretch function implements stretchy brackets. It is called +repeatedly, once for each mo child,after a span corresponding to an +mrow. The arguments are the id of teh span and the characters to use +for the parts of the stretch operator. +constructed fence. The + + + +Inline CSS style block handles all font and size specification for the +various MathML operators. + + + + + + + + + + + + + + + + +Unimplemented MathML elements get copied literally, in red, mainly as +a debugging aid. + + +<> + +</> + + + +mi: set default font based on string length, otherwise behaviour based +on entries in the operator dictionary if one exists, or content is +copied through to the output unchanged. + + + + +mi1 + + + + + + + + + + + + + + + + +Handling of mathvariant attribute. +The choice of font families here (currently) avoids math-specific +fonts but does use several fionts coming with windows 9.x and/or +office 2000. + + +font-weight: bold; font-style: upright + + +font-style: upright; font-weight: bold; font-style: italic; + + +font-style: italic; + + +font-family: monospace; + + + +font-family: sans-serif; + + +font-family: sans-serif; font-weight: bold; + + + +font-family: old english text mt + + + + +doublestruck + + + + +font-family: brush script mt italic + + + + +mo: Generate a unique ID so that a script at the end of any +surrounding mrow may replace the conent by a suitably stretched +operator if need be. + + + + + + +mn: a simple span + + + + + + +munder: currently only supports underline, with a bottom border + + + + border-width: 0pt 0pt .1em 0pt; border-style: solid;" + + + + + +mover: currently only supports overline, with a top border + + + + border-width: .1em 0pt 0pt 0pt; border-style: solid;" + + + + + +munderover: + + + + + +
+
+ +mtext: a simple span + + + + + + +mstyle: not many attributes currently supported + + + + color: ; + background-color: ; + + + + + + +mglyph: Uses disable output escaping to construct a numeric +character reference. Uses IE's non conforming behaviour of using this +number to access the font encoding rather than unicode. + + +; + + + +ms: a simple span with left and right character added to the content. + + + " + + " + + + + + + + + + + + + + + + ( + + + + + + ) + + + + + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\ + + + + + +\ + + + + + + + + + + + + + + + + + +\ + + + + + + + + + + font-size: 75% ; + + + font-size: 100% ; + + + +
+ +
+ +
+
+ + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +left + + + + + + +
diff --git a/upstream-man-pages/man3/xhtml/start.html b/upstream-man-pages/man3/xhtml/start.html new file mode 100644 index 0000000..cd3d5d8 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/start.html @@ -0,0 +1,47 @@ + + +OpenGL 3.3 Reference Pages + + + +

OpenGL 3.3 Reference Pages

+ +

Use the index on the left to choose any OpenGL reference page for viewing. The reference pages +(also known as "man pages") include all of the important usage information for each command. This +information includes a description of all parameters, return values, error conditions, and related +commands.

+ +

Core Context Functionality

+ +

These man pages only document the core context. For compatibility context specific functionality, please +refer to the OpenGL 2.1 Reference Pages and/or the appropriate extension spec you are interested in +using.

+ +

Browser Compatibility

+ +

Please use the latest version of your brower to view this web-page to ensure the least amount of +compatibility issues.

+ +

Downloading Man Page Sources

+ +

The Docbook XML source for the man pages is available for anonymous + checkout in Khronos' Subversion server, and you can build a man page + distribution of your own using open source tools. See the OpenGL.org + technical Wiki pages describing the + XML Toolchain and Man Pages for more information.

+ +

Feedback

+ +

If you find any inaccuracies or typos in the reference pages, don't + hesitate to inform us via the feedback + form or using the + Khronos Bugzilla (you must first create a Bugzilla account, + however).

+ +.

+ + + diff --git a/upstream-man-pages/man3/xhtml/xhtml-lat1.ent b/upstream-man-pages/man3/xhtml/xhtml-lat1.ent new file mode 100644 index 0000000..ffee223 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/xhtml-lat1.ent @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/xhtml/xhtml-special.ent b/upstream-man-pages/man3/xhtml/xhtml-special.ent new file mode 100644 index 0000000..ca358b2 --- /dev/null +++ b/upstream-man-pages/man3/xhtml/xhtml-special.ent @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/xhtml/xhtml-symbol.ent b/upstream-man-pages/man3/xhtml/xhtml-symbol.ent new file mode 100644 index 0000000..63c2abf --- /dev/null +++ b/upstream-man-pages/man3/xhtml/xhtml-symbol.ent @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man3/xhtml/xhtml1-transitional.dtd b/upstream-man-pages/man3/xhtml/xhtml1-transitional.dtd new file mode 100644 index 0000000..628f27a --- /dev/null +++ b/upstream-man-pages/man3/xhtml/xhtml1-transitional.dtd @@ -0,0 +1,1201 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man4/Makefile b/upstream-man-pages/man4/Makefile new file mode 100644 index 0000000..06c2ca2 --- /dev/null +++ b/upstream-man-pages/man4/Makefile @@ -0,0 +1,49 @@ +#!gmake +# +# License Applicability. Except to the extent portions of this file are +# made subject to an alternative license as permitted in the SGI Free +# Software License B, Version 1.1 (the "License"), the contents of this +# file are subject only to the provisions of the License. You may not use +# this file except in compliance with the License. You may obtain a copy +# of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +# Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +# +# http://oss.sgi.com/projects/FreeB +# +# Note that, as provided in the License, the Software is distributed on an +# "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +# DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +# CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +# PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +# +# Original Code. The Original Code is: OpenGL Sample Implementation, +# Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +# Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: The application programming interfaces +# established by SGI in conjunction with the Original Code are The +# OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +# April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +# 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +# Window System(R) (Version 1.3), released October 19, 1998. This software +# was created using the OpenGL(R) version 1.2.1 Sample Implementation +# published by SGI, but has not been independently verified as being +# compliant with the OpenGL(R) version 1.2.1 Specification. + +COMMONPREF = standard +include $(ROOT)/usr/include/make/commondefs + +SUBDIRS = \ + xhtml \ + $(NULL) + +default $(ALLTARGS): $(_FORCE) + $(SUBDIRS_MAKERULE) + +distoss: + $(MAKE) $(COMMONPREF)$@ + $(SUBDIRS_MAKERULE) + +include $(COMMONRULES) diff --git a/upstream-man-pages/man4/baseformattable.xml b/upstream-man-pages/man4/baseformattable.xml new file mode 100644 index 0000000..fb752ed --- /dev/null +++ b/upstream-man-pages/man4/baseformattable.xml @@ -0,0 +1,55 @@ + + +Base Internal Formats + + + + + + + + Base Internal Format + + + RGBA, Depth and Stencil Values + + + Internal Components + + + + + + GL_DEPTH_COMPONENT + Depth + D + + + GL_DEPTH_STENCIL + Depth, Stencil + D, S + + + GL_RED + Red + R + + + GL_RG + Red, Green + R, G + + + GL_RGB + Red, Green, Blue + R, G, B + + + GL_RGBA + Red, Green, Blue, Alpha + R, G, B, A + + + +
diff --git a/upstream-man-pages/man4/bottom.php b/upstream-man-pages/man4/bottom.php new file mode 100644 index 0000000..f155064 --- /dev/null +++ b/upstream-man-pages/man4/bottom.php @@ -0,0 +1,9 @@ + + +OpenGL 4 Reference Pages + + + + + + diff --git a/upstream-man-pages/man4/compressedformattable.xml b/upstream-man-pages/man4/compressedformattable.xml new file mode 100644 index 0000000..a84b72b --- /dev/null +++ b/upstream-man-pages/man4/compressedformattable.xml @@ -0,0 +1,95 @@ + + +Compressed Internal Formats + + + + + + + + Compressed Internal Format + + + Base Internal Format + + + Type + + + + + + GL_COMPRESSED_RED + GL_RED + Generic + + + GL_COMPRESSED_RG + GL_RG + Generic + + + GL_COMPRESSED_RGB + GL_RGB + Generic + + + GL_COMPRESSED_RGBA + GL_RGBA + Generic + + + GL_COMPRESSED_SRGB + GL_RGB + Generic + + + GL_COMPRESSED_SRGB_ALPHA + GL_RGBA + Generic + + + GL_COMPRESSED_RED_RGTC1 + GL_RED + Specific + + + GL_COMPRESSED_SIGNED_RED_RGTC1 + GL_RED + Specific + + + GL_COMPRESSED_RG_RGTC2 + GL_RG + Specific + + + GL_COMPRESSED_SIGNED_RG_RGTC2 + GL_RG + Specific + + + GL_COMPRESSED_RGBA_BPTC_UNORM + GL_RGBA + Specific + + + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM + GL_RGBA + Specific + + + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT + GL_RGB + Specific + + + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT + GL_RGB + Specific + + + +
diff --git a/upstream-man-pages/man4/glActiveShaderProgram.xml b/upstream-man-pages/man4/glActiveShaderProgram.xml new file mode 100644 index 0000000..206e0ad --- /dev/null +++ b/upstream-man-pages/man4/glActiveShaderProgram.xml @@ -0,0 +1,85 @@ + + + + + + + 2010 + Khronos Group + + + glActiveShaderProgram + 3G + + + glActiveShaderProgram + set the active program object for a program pipeline object + + C Specification + + + void glActiveShaderProgram + GLuint pipeline + GLuint program + + + + Parameters + + + pipeline + + + Specifies the program pipeline object to set the active program object for. + + + + + program + + + Specifies the program object to set as the active program pipeline object pipeline. + + + + + + Description + + glActiveShaderProgram sets the linked program named by program + to be the active program for the program pipeline object pipeline. The active + program in the active program pipeline object is the target of calls to glUniform + when no program has been made current through a call to glUseProgram. + + + Errors + + GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. + + + GL_INVALID_OPERATION is generated if program refers + to a program object that has not been successfully linked. + + + See Also + + glGenProgramPipelines, + glDeleteProgramPipelines, + glIsProgramPipeline, + glUseProgram, + glUniform + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glActiveTexture.xml b/upstream-man-pages/man4/glActiveTexture.xml new file mode 100644 index 0000000..f3a9860 --- /dev/null +++ b/upstream-man-pages/man4/glActiveTexture.xml @@ -0,0 +1,101 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glActiveTexture + 3G + + + glActiveTexture + select active texture unit + + C Specification + + + void glActiveTexture + GLenum texture + + + + + Parameters + + + texture + + + Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + 80. texture must be one of + GL_TEXTUREi, + where + i ranges from 0 (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + The initial value is GL_TEXTURE0. + + + + + + Description + + glActiveTexture selects which texture unit subsequent texture state calls will + affect. The number of texture units an implementation supports is + implementation dependent, but must be at least 80. + + + Errors + + GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where i ranges from 0 to (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + + + Associated Gets + + glGet with argument GL_ACTIVE_TEXTURE, or GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. + + + See Also + + glGenTextures, + glBindTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDeleteTextures + glIsTexture, + glTexImage1D, + glTexImage2D, + glTexImage2DMultisample, + glTexImage3D, + glTexImage3DMultisample, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glAttachShader.xml b/upstream-man-pages/man4/glAttachShader.xml new file mode 100644 index 0000000..13e4c93 --- /dev/null +++ b/upstream-man-pages/man4/glAttachShader.xml @@ -0,0 +1,119 @@ + + + + + glAttachShader + 3G + + + glAttachShader + Attaches a shader object to a program object + + C Specification + + + void glAttachShader + GLuint program + GLuint shader + + + + Parameters + + + program + + Specifies the program object to which a shader + object will be attached. + + + + + shader + + Specifies the shader object that is to be attached. + + + + + Description + In order to create a complete shader program, there must be a way to + specify the list of things that will be linked together. Program + objects provide this mechanism. Shaders that are to be linked + together in a program object must first be attached to that + program object. glAttachShader attaches the + shader object specified by shader to the + program object specified by program. This + indicates that shader will be included in + link operations that will be performed on + program. + + All operations that can be performed on a shader object + are valid whether or not the shader object is attached to a + program object. It is permissible to attach a shader object to a + program object before source code has been loaded into the + shader object or before the shader object has been compiled. It + is permissible to attach multiple shader objects of the same + type because each may contain a portion of the complete shader. + It is also permissible to attach a shader object to more than + one program object. If a shader object is deleted while it is + attached to a program object, it will be flagged for deletion, + and deletion will not occur until + glDetachShader + is called to detach it from all program objects to which it is + attached. + + Errors + GL_INVALID_VALUE is generated if either + program or shader + is not a value generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + shader is already attached to + program. + + + Associated Gets + + glGetAttachedShaders + with the handle of a valid program object + + + glGetShaderInfoLog + + + glGetShaderSource + + + glIsProgram + + + glIsShader + + + See Also + + glCompileShader, + glCreateShader, + glDeleteShader, + glDetachShader, + glLinkProgram, + glShaderSource + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBeginConditionalRender.xml b/upstream-man-pages/man4/glBeginConditionalRender.xml new file mode 100644 index 0000000..67c9c5f --- /dev/null +++ b/upstream-man-pages/man4/glBeginConditionalRender.xml @@ -0,0 +1,123 @@ + + + + + + + 2010 + Khronos Group + + + glBeginConditionalRender + 3G + + + glBeginConditionalRender + start conditional rendering + + C Specification + + + void glBeginConditionalRender + GLuint id + GLenum mode + + + + Parameters + + + id + + + Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded. + + + + + mode + + + Specifies how glBeginConditionalRender interprets the results of the occlusion query. + + + + + + C Specification + + + void glEndConditionalRender + void + + + + Description + + Conditional rendering is started using glBeginConditionalRender and ended using glEndConditionalRender. + During conditional rendering, all vertex array commands, as well as glClear and + glClearBuffer have no effect if the (GL_SAMPLES_PASSED) result + of the query object id is zero, or if the (GL_ANY_SAMPLES_PASSED) result is GL_FALSE. + The results of commands setting the current vertex state, such as glVertexAttrib are + undefined. If the (GL_SAMPLES_PASSED) result is non-zero or if the (GL_ANY_SAMPLES_PASSED) result is + GL_TRUE, such commands are not discarded. The id parameter to glBeginConditionalRender + must be the name of a query object previously returned from a call to glGenQueries. + mode specifies how the results of the query object are to be interpreted. If mode is + GL_QUERY_WAIT, the GL waits for the results of the query to be available and then uses the results to determine if subsequent + rendering commands are discarded. If mode is GL_QUERY_NO_WAIT, the GL may choose to unconditionally + execute the subsequent rendering commands without waiting for the query to complete. + + + If mode is GL_QUERY_BY_REGION_WAIT, the GL will also wait for occlusion query results and discard + rendering commands if the result of the occlusion query is zero. If the query result is non-zero, subsequent rendering commands are executed, + but the GL may discard the results of the commands for any region of the framebuffer that did not contribute to the sample count in the specified + occlusion query. Any such discarding is done in an implementation-dependent manner, but the rendering command results may not be discarded for + any samples that contributed to the occlusion query sample count. If mode is GL_QUERY_BY_REGION_NO_WAIT, + the GL operates as in GL_QUERY_BY_REGION_WAIT, but may choose to unconditionally execute the subsequent rendering commands + without waiting for the query to complete. + + + Notes + + glBeginConditionalRender and glEndConditionalRender are available only if the GL version is 3.0 or greater. + + + The GL_ANY_SAMPLES_PASSED query result is available only if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_VALUE is generated if id is not the name of an existing query object. + + + GL_INVALID_ENUM is generated if mode is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if glBeginConditionalRender is called while conditional rendering is active, + or if glEndConditionalRender is called while conditional rendering is inactive. + + + GL_INVALID_OPERATION is generated if id is the name of a query object with a target other than + GL_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED. + + + GL_INVALID_OPERATION is generated if id is the name of a query currently in progress. + + + See Also + + glGenQueries, + glDeleteQueries, + glBeginQuery + + + Copyright + + Copyright 2009 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBeginQuery.xml b/upstream-man-pages/man4/glBeginQuery.xml new file mode 100644 index 0000000..e655116 --- /dev/null +++ b/upstream-man-pages/man4/glBeginQuery.xml @@ -0,0 +1,213 @@ + + + + + + + 2005 + Sams Publishing + + + glBeginQuery + 3G + + + glBeginQuery + delimit the boundaries of a query object + + C Specification + + + void glBeginQuery + GLenum target + GLuint id + + + + + Parameters + + + target + + + Specifies the target type of query object established between + glBeginQuery and the subsequent glEndQuery. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. + + + + + id + + + Specifies the name of a query object. + + + + + + C Specification + + + void glEndQuery + GLenum target + + + + + Parameters + + + target + + + Specifies the target type of query object to be concluded. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. + + + + + + Description + + glBeginQuery and glEndQuery delimit the + boundaries of a query object. query must be a name previously returned from a call to + glGenQueries. If a query object with name id + does not yet exist it is created with the type determined by target. target must + be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query + object depends on its type and is as follows. + + + If target is GL_SAMPLES_PASSED, id must be an unused name, + or the name of an existing occlusion query object. + When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS + is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS + is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their + discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment + is covered. When glEndQuery + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_ANY_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + id must be an unused name, or the name of an existing boolean occlusion query object. + When glBeginQuery is executed, the query object's samples-passed flag is reset to GL_FALSE. + Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test in the case of GL_ANY_SAMPLES_PASSED, + or if the implementation determines that any sample might pass the depth test in the case of GL_ANY_SAMPLES_PASSED_CONSERVATIVE. + The implementation may be able to provide a more efficient test in the case of GL_ANY_SAMPLES_PASSED_CONSERVATIVE + if some false positives are acceptable to the application. When + glEndQuery is executed, the samples-passed flag is assigned to the query object's result value. This value can + be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_PRIMITIVES_GENERATED, id must be an unused + name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. + When glBeginQuery is executed, the query object's primitives-generated counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if + no geometry shader is present. When glEndQuery is executed, the primitives-generated counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be + an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN + query binding. When glBeginQuery is executed, the query object's primitives-written counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback + mode is not activated between the call to glBeginQuery and glEndQuery, the counter will not be + incremented. When glEndQuery is executed, the primitives-written counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + If target is GL_TIME_ELAPSED, id must be + an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED + query binding. When glBeginQuery is executed, the query object's time counter is reset to 0. When glEndQuery + is executed, the elapsed server time that has passed since the call to glBeginQuery is written into the query object's + time counter. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + + + Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. + + + Notes + + If the query target's count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with target set to the + appropriate query target and pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. + + + An implementation may support 0 bits in its counter, in which case query results are always undefined + and essentially useless. + + + When GL_SAMPLE_BUFFERS is 0, the samples-passed counter of an occlusion query will increment once for each + fragment that passes the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment + the samples-passed counter individually for each sample of a fragment that passes the depth test, or it may choose to increment + the counter for all samples of a fragment if any one of them passes the depth test. + + + The query targets GL_ANY_SAMPLES_PASSED, and GL_TIME_ELAPSED are availale only if + the GL version is 3.3 or higher. + + + The query target GL_ANY_SAMPLES_PASSED_CONSERVATIVE is available only of the GL version is 4.3 or higher. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if glBeginQuery is executed while + a query object of the same target is already active. + + + GL_INVALID_OPERATION is generated if glEndQuery + is executed when a query object of the same target is not active. + + + GL_INVALID_OPERATION is generated if id is 0. + + + GL_INVALID_OPERATION is generated if id is the name of an already active query object. + + + GL_INVALID_OPERATION is generated if id refers to an existing query object whose type + does not does not match target. + + + See Also + + glDeleteQueries, + glGenQueries, + glGetQueryiv, + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + Copyright 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBeginQueryIndexed.xml b/upstream-man-pages/man4/glBeginQueryIndexed.xml new file mode 100644 index 0000000..820c50d --- /dev/null +++ b/upstream-man-pages/man4/glBeginQueryIndexed.xml @@ -0,0 +1,244 @@ + + + + + + + 2010 + Khronos Group. + + + glBeginQueryIndexed, glEndQueryIndexed + 3G + + + glBeginQueryIndexed, glEndQueryIndexed + delimit the boundaries of a query object on an indexed target + + C Specification + + + void glBeginQueryIndexed + GLenum target + GLuint index + GLuint id + + + + + Parameters + + + target + + + Specifies the target type of query object established between + glBeginQueryIndexed and the subsequent glEndQueryIndexed. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. + + + + + index + + + Specifies the index of the query target upon which to begin the query. + + + + + id + + + Specifies the name of a query object. + + + + + + C Specification + + + void glEndQueryIndexed + GLenum target + GLuint index + + + + + Parameters + + + target + + + Specifies the target type of query object to be concluded. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. + + + + + index + + + Specifies the index of the query target upon which to end the query. + + + + + + Description + + glBeginQueryIndexed and glEndQueryIndexed delimit the + boundaries of a query object. query must be a name previously returned from a call to + glGenQueries. If a query object with name id + does not yet exist it is created with the type determined by target. target must + be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query + object depends on its type and is as follows. + + + index specifies the index of the query target and must be between a target-specific + maximum. + + + If target is GL_SAMPLES_PASSED, id must be an unused name, + or the name of an existing occlusion query object. + When glBeginQueryIndexed is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS + is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS + is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their + discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment + is covered. When glEndQueryIndexed + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_SAMPLES_PASSED, index must be zero. + + + If target is GL_ANY_SAMPLES_PASSED, id must be an unused name, + or the name of an existing boolean occlusion query object. + When glBeginQueryIndexed is executed, the query object's samples-passed flag is reset to GL_FALSE. + Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test. When + glEndQueryIndexed is executed, the samples-passed flag is assigned to the query object's result value. This value can + be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_ANY_SAMPLES_PASSED, index must be zero. + + + If target is GL_PRIMITIVES_GENERATED, id must be an unused + name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. + When glBeginQueryIndexed is executed, the query object's primitives-generated counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is emitted from the geometry shader to the stream given by index, + or from the vertex shader if index is zero and no geometry shader is present. + When glEndQueryIndexed is executed, the primitives-generated counter for stream index is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject + with pname GL_QUERY_RESULT. + When target is GL_PRIMITIVES_GENERATED, index must be + less than the value of GL_MAX_VERTEX_STREAMS. + + + If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be + an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN + query binding. When glBeginQueryIndexed is executed, the query object's primitives-written counter for the stream specified by + index is reset to 0. Subsequent rendering will increment the counter once for every vertex that is written into the bound + transform feedback buffer(s) for stream index. If transform feedback + mode is not activated between the call to glBeginQueryIndexed and glEndQueryIndexed, the counter will not be + incremented. When glEndQueryIndexed is executed, the primitives-written counter for stream index is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, index must be + less than the value of GL_MAX_VERTEX_STREAMS. + + + If target is GL_TIME_ELAPSED, id must be + an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED + query binding. When glBeginQueryIndexed is executed, the query object's time counter is reset to 0. When glEndQueryIndexed + is executed, the elapsed server time that has passed since the call to glBeginQueryIndexed is written into the query object's + time counter. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_TIME_ELAPSED, index must be zero. + + + Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. + + + Notes + + If the query target's count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with target set to the + appropriate query target and pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. + + + An implementation may support 0 bits in its counter, in which case query results are always undefined + and essentially useless. + + + When GL_SAMPLE_BUFFERS is 0, the samples-passed counter of an occlusion query will increment once for each + fragment that passes the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment + the samples-passed counter individually for each sample of a fragment that passes the depth test, or it may choose to increment + the counter for all samples of a fragment if any one of them passes the depth test. + + + Calling glBeginQuery or + glEndQuery is equivalent to + calling glBeginQueryIndexed or + glEndQueryIndexed with + index set to zero, respectively. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_VALUE is generated if index is greater than the + query target-specific maximum. + + + GL_INVALID_OPERATION is generated if glBeginQueryIndexed is executed while + a query object of the same target is already active. + + + GL_INVALID_OPERATION is generated if glEndQueryIndexed + is executed when a query object of the same target is not active. + + + GL_INVALID_OPERATION is generated if id is 0. + + + GL_INVALID_OPERATION is generated if id is the name of an already active query object. + + + GL_INVALID_OPERATION is generated if id refers to an existing query object whose type + does not does not match target. + + + See Also + + glDeleteQueries, + glBeginQuery, + glEndQuery, + glGenQueries, + glGetQueryiv, + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBeginTransformFeedback.xml b/upstream-man-pages/man4/glBeginTransformFeedback.xml new file mode 100644 index 0000000..2216537 --- /dev/null +++ b/upstream-man-pages/man4/glBeginTransformFeedback.xml @@ -0,0 +1,194 @@ + + + + + + + 2010 + Khronos Group + + + glBeginTransformFeedback + 3G + + + glBeginTransformFeedback + start transform feedback operation + + C Specification + + + void glBeginTransformFeedback + GLenum primitiveMode + + + + Parameters + + + primitiveMode + + + Specify the output type of the primitives that will be recorded into the + buffer objects that are bound for transform feedback. + + + + + + C Specification + + + void glEndTransformFeedback + void + + + + Description + + Transform feedback mode captures the values of varying variables written by the vertex shader (or, if active, the geometry shader). + Transform feedback is said to be active after a call to glBeginTransformFeedback + until a subsequent call to glEndTransformFeedback. + Transform feedback commands must be paired. + + + If no geometry shader is present, while transform feedback is active the mode parameter to + glDrawArrays must match those specified + in the following table: + + + + + + + + + Transform Feedback primitiveMode + + + Allowed Render Primitive modes + + + + + + + GL_POINTS + + + GL_POINTS + + + + + GL_LINES + + + GL_LINES, GL_LINE_LOOP, GL_LINE_STRIP, + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY + + + + + GL_TRIANGLES + + + GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY + + + + + + + If a geometry shader is present, the output primitive type from the geometry shader must match those + provided in the following table: + + + + + + + + Transform Feedback primitiveMode + + + Allowed Geometry Shader Output Primitive Type + + + + + + + GL_POINTS + + + points + + + + + GL_LINES + + + line_strip + + + + + GL_TRIANGLES + + + triangle_strip + + + + + + + + Notes + + Geometry shaders, and the GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY and GL_LINE_STRIP_ADJACENCY primtive modes are available + only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if glBeginTransformFeedback is executed + while transform feedback is active. + + + GL_INVALID_OPERATION is generated if glEndTransformFeedback is executed + while transform feedback is not active. + + + GL_INVALID_OPERATION is generated by glDrawArrays + if no geometry shader is present, transform feedback is active and mode is not one of the allowed modes. + + + GL_INVALID_OPERATION is generated by glDrawArrays + if a geometry shader is present, transform feedback is active and the output primitive type of the geometry shader does not + match the transform feedback primitiveMode. + + + GL_INVALID_OPERATION is generated by glEndTransformFeedback if any binding + point used in transform feedback mode does not have a buffer object bound. + + + GL_INVALID_OPERATION is generated by glEndTransformFeedback if no binding + points would be used, either because no program object is active of because the active program object has specified + no varying variables to record. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindAttribLocation.xml b/upstream-man-pages/man4/glBindAttribLocation.xml new file mode 100644 index 0000000..21e5000 --- /dev/null +++ b/upstream-man-pages/man4/glBindAttribLocation.xml @@ -0,0 +1,186 @@ + + + + + glBindAttribLocation + 3G + + + glBindAttribLocation + Associates a generic vertex attribute index with a named attribute variable + + C Specification + + + void glBindAttribLocation + GLuint program + GLuint index + const GLchar *name + + + + Parameters + + + program + + Specifies the handle of the program object in + which the association is to be made. + + + + index + + Specifies the index of the generic vertex + attribute to be bound. + + + + name + + Specifies a null terminated string containing + the name of the vertex shader attribute variable to + which index is to be + bound. + + + + + Description + glBindAttribLocation is used to + associate a user-defined attribute variable in the program + object specified by program with a + generic vertex attribute index. The name of the user-defined + attribute variable is passed as a null terminated string in + name. The generic vertex attribute index + to be bound to this variable is specified by + index. When + program is made part of current state, + values provided via the generic vertex attribute + index will modify the value of the + user-defined attribute variable specified by + name. + + If name refers to a matrix + attribute variable, index refers to the + first column of the matrix. Other matrix columns are then + automatically bound to locations index+1 + for a matrix of type mat2; index+1 and + index+2 for a matrix of type mat3; and + index+1, index+2, + and index+3 for a matrix of type + mat4. + + This command makes it possible for vertex shaders to use + descriptive names for attribute variables rather than generic + variables that are numbered from 0 to + GL_MAX_VERTEX_ATTRIBS -1. The values sent + to each generic attribute index are part of current state. + If a different program object is made current by calling + glUseProgram, + the generic vertex attributes are tracked in such a way that the + same values will be observed by attributes in the new program + object that are also bound to + index. Attribute variable + name-to-generic attribute index bindings for a program object + can be explicitly assigned at any time by calling + glBindAttribLocation. Attribute bindings do + not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for generic attributes remain fixed (and their + values can be queried) until the next link command + occurs. + + Any attribute binding that occurs after the program object has been linked will not take effect + until the next time the program object is linked. + + Notes + glBindAttribLocation can be called + before any vertex shader objects are bound to the specified + program object. It is also permissible to bind a generic + attribute index to an attribute variable name that is never used + in a vertex shader. + + If name was bound previously, that + information is lost. Thus you cannot bind one user-defined + attribute variable to multiple indices, but you can bind + multiple user-defined attribute variables to the same + index. + + Applications are allowed to bind more than one + user-defined attribute variable to the same generic vertex + attribute index. This is called aliasing, + and it is allowed only if just one of the aliased attributes is + active in the executable program, or if no path through the + shader consumes more than one attribute of a set of attributes + aliased to the same location. The compiler and linker are + allowed to assume that no aliasing is done and are free to + employ optimizations that work only in the absence of aliasing. + OpenGL implementations are not required to do error checking to + detect aliasing. + + Active attributes that are not explicitly bound will be + bound by the linker when + glLinkProgram + is called. The locations assigned can be queried by calling + glGetAttribLocation. + + OpenGL copies the name string when + glBindAttribLocation is called, so an + application may free its copy of the name + string immediately after the function returns. + + Generic attribute locations may be specified in the shader source + text using a location layout qualifier. In this case, + the location of the attribute specified in the shader's source takes precedence + and may be queried by calling glGetAttribLocation. + + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_OPERATION is generated if + name starts with the reserved prefix + "gl_". + + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetActiveAttrib + with argument program + + glGetAttribLocation + with arguments program and + name + + glIsProgram + + See Also + glDisableVertexAttribArray, + glEnableVertexAttribArray, + glUseProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindBuffer.xml b/upstream-man-pages/man4/glBindBuffer.xml new file mode 100644 index 0000000..d3e8675 --- /dev/null +++ b/upstream-man-pages/man4/glBindBuffer.xml @@ -0,0 +1,258 @@ + + + + + + + 2005 + Sams Publishing + + + glBindBuffer + 3G + + + glBindBuffer + bind a named buffer object + + C Specification + + + void glBindBuffer + GLenum target + GLuint buffer + + + + Parameters + + + target + + + Specifies the target to which the buffer object is bound. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + buffer + + + Specifies the name of a buffer object. + + + + + + Description + + glBindBuffer binds a buffer object to the specified buffer binding point. Calling glBindBuffer with + target set to one of the accepted symbolic constants and buffer set to the name + of a buffer object binds that buffer object name to the target. If no buffer object with name buffer + exists, one is created with that name. When a buffer object is bound to a target, the previous binding for that + target is automatically broken. + + + Buffer object names are unsigned integers. The value zero is reserved, but + there is no default buffer object for each buffer object target. Instead, buffer set to zero + effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target (if supported for that target). + Buffer object names and the corresponding buffer object contents are local to + the shared object space of the current + GL rendering context; + two rendering contexts share buffer object names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. + + + glGenBuffers must be used to generate a set of unused buffer object names. + + + The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with + GL_READ_WRITE access and GL_STATIC_DRAW usage. + + + While a non-zero buffer object name is bound, GL operations on the target to which it is + bound affect the bound buffer object, and queries of the target to which it is bound return state + from the bound buffer object. While buffer object name zero is bound, as in the initial state, + attempts to modify or query state on the target to which it is bound generates an + GL_INVALID_OPERATION error. + + + When a non-zero buffer object is bound to the GL_ARRAY_BUFFER target, + the vertex array pointer parameter is interpreted as an offset within the + buffer object measured in basic machine units. + + + When a non-zero buffer object is bound to the GL_DRAW_INDIRECT_BUFFER target, + parameters for draws issued through glDrawArraysIndirect + and glDrawElementsIndirect are sourced + from the specified offset in that buffer object's data store. + + + When a non-zero buffer object is bound to the GL_DISPATCH_INDIRECT_BUFFER target, + the parameters for compute dispatches issued through glDispatchComputeIndirect + are sourced from the specified offset in that buffer object's data store. + + + While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, + the indices parameter of glDrawElements, + glDrawElementsInstanced, + glDrawElementsBaseVertex, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glMultiDrawElements, or + glMultiDrawElementsBaseVertex is interpreted as an + offset within the buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, + the following commands are affected: glGetCompressedTexImage, + glGetTexImage, and + glReadPixels. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. + + + While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, + the following commands are affected: + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. + + + The buffer targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER + are provided to allow glCopyBufferSubData + to be used without disturbing the state of other bindings. However, glCopyBufferSubData + may be used with any pair of buffer binding points. + + + The GL_TRANSFORM_FEEDBACK_BUFFER buffer binding point may be passed to glBindBuffer, + but will not directly affect transform feedback state. Instead, the indexed GL_TRANSFORM_FEEDBACK_BUFFER + bindings must be used through a call to glBindBufferBase + or glBindBufferRange. This will affect the generic + GL_TRANSFORM_FEEDABCK_BUFFER binding. + + + Likewise, the GL_UNIFORM_BUFFER, GL_ATOMIC_COUNTER_BUFFER and GL_SHADER_STORAGE_BUFFER + buffer binding points may + be used, but do not directly affect uniform buffer, atomic counter buffer or shader storage buffer state, respectively. + glBindBufferBase + or glBindBufferRange must be used to bind a buffer to + an indexed uniform buffer, atomic counter buffer or shader storage buffer binding point. + + + A buffer object binding created with glBindBuffer remains active until a different + buffer object name is bound to the same target, or until the bound buffer object is + deleted with glDeleteBuffers. + + + Once created, a named buffer object may be re-bound to any target as often as needed. However, + the GL implementation may make choices about how to optimize the storage of a buffer object based + on its initial binding target. + + + Notes + + The GL_COPY_READ_BUFFER, GL_UNIFORM_BUFFER and + GL_TEXTURE_BUFFER targets are available only if the GL version is 3.1 or greater. + + + The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if buffer is not a name previously returned + from a call to glGenBuffers. + + + Associated Gets + + glGet with argument GL_ARRAY_BUFFER_BINDING + + + glGet with argument GL_ATOMIC_COUNTER_BUFFER_BINDING + + + glGet with argument GL_COPY_READ_BUFFER_BINDING + + + glGet with argument GL_COPY_WRITE_BUFFER_BINDING + + + glGet with argument GL_DRAW_INDIRECT_BUFFER_BINDING + + + glGet with argument GL_DISPATCH_INDIRECT_BUFFER_BINDING + + + glGet with argument GL_ELEMENT_ARRAY_BUFFER_BINDING + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGet with argument GL_SHADER_STORAGE_BUFFER_BINDING + + + glGet with argument GL_TRANSFORM_FEEDBACK_BUFFER_BINDING + + + glGet with argument GL_UNIFORM_BUFFER_BINDING + + + See Also + + glGenBuffers, + glBindBufferBase, + glBindBufferRange, + glMapBuffer, + glUnmapBuffer, + glDeleteBuffers, + glGet, + glIsBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindBufferBase.xml b/upstream-man-pages/man4/glBindBufferBase.xml new file mode 100644 index 0000000..f40f5fa --- /dev/null +++ b/upstream-man-pages/man4/glBindBufferBase.xml @@ -0,0 +1,118 @@ + + + + + + + 2010 + Khronos Group + + + glBindBufferBase + 3G + + + glBindBufferBase + bind a buffer object to an indexed buffer target + + C Specification + + + void glBindBufferBase + GLenum target + GLuint index + GLuint buffer + + + + Parameters + + + target + + + Specify the target of the bind operation. target must be + one of GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or + GL_SHADER_STORAGE_BUFFER. + + + + + index + + + Specify the index of the binding point within the array specified by target. + + + + + buffer + + + The name of a buffer object to bind to the specified binding point. + + + + + + Description + + glBindBufferBase binds the buffer object buffer + to the binding point at index index of the array of targets specified + by target. Each target represents an indexed + array of buffer binding points, as well as a single general binding point that can be used by + other buffer manipulation functions such as glBindBuffer + or glMapBuffer. In addition to binding + buffer to the indexed buffer binding target, glBindBufferBase + also binds buffer to the generic buffer binding point specified by target. + + + Notes + + Calling glBindBufferBase is equivalent to calling + glBindBufferRange with offset + zero and size equal to the size of the buffer. + + + The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. + + + The GL_SHADER_STORAGE_BUFFER target is available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or + GL_SHADER_STORAGE_BUFFER. + + + GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. + + + GL_INVALID_VALUE is generated if buffer does + not have an associated data store, or if the size of that store is zero. + + + See Also + + glGenBuffers, + glDeleteBuffers, + glBindBuffer, + glBindBufferRange, + glMapBuffer, + glUnmapBuffer, + + Copyright + + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindBufferRange.xml b/upstream-man-pages/man4/glBindBufferRange.xml new file mode 100644 index 0000000..97c26ee --- /dev/null +++ b/upstream-man-pages/man4/glBindBufferRange.xml @@ -0,0 +1,143 @@ + + + + + + + 2010 + Khronos Group + + + glBindBufferRange + 3G + + + glBindBufferRange + bind a range within a buffer object to an indexed buffer target + + C Specification + + + void glBindBufferRange + GLenumtarget + GLuintindex + GLuintbuffer + GLintptroffset + GLsizeiptrsize + + + + Parameters + + + target + + + Specify the target of the bind operation. target must be + one of GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER, + or GL_SHADER_STORAGE_BUFFER. + + + + + index + + + Specify the index of the binding point within the array specified by target. + + + + + buffer + + + The name of a buffer object to bind to the specified binding point. + + + + + offset + + + The starting offset in basic machine units into the buffer object buffer. + + + + + size + + + The amount of data in machine units that can be read from the buffet object while used as an indexed target. + + + + + + Description + + glBindBufferRange binds a range the buffer object buffer + represented by offset and size to the + binding point at index index of the array of targets specified by target. + Each target represents an indexed array of buffer binding points, as well + as a single general binding point that can be used by other buffer manipulation functions such as + glBindBuffer or + glMapBuffer. In addition to binding + a range of buffer to the indexed buffer binding target, glBindBufferRange + also binds the range to the generic buffer binding point specified by target. + + + offset specifies the offset in basic machine units into the buffer object + buffer and size specifies the amount of data that + can be read from the buffer object while used as an indexed target. + + + Notes + + The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. + + + The GL_SHADER_STORAGE_BUFFER target is available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or + GL_SHADER_STORAGE_BUFFER. + + + GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. + + + GL_INVALID_VALUE is generated if size is less than + or equal to zero, or if offset + size is greater + than the value of GL_BUFFER_SIZE. + + + Additional errors may be generated if offset violates any + target-specific alignmemt restrictions. + + + See Also + + glGenBuffers, + glDeleteBuffers, + glBindBuffer, + glBindBufferBase, + glMapBuffer, + glUnmapBuffer, + + + Copyright + + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindFragDataLocation.xml b/upstream-man-pages/man4/glBindFragDataLocation.xml new file mode 100644 index 0000000..ecfe527 --- /dev/null +++ b/upstream-man-pages/man4/glBindFragDataLocation.xml @@ -0,0 +1,127 @@ + + + + + + + 2010 + Khronos Group + + + glBindFragDataLocation + 3G + + + glBindFragDataLocation + bind a user-defined varying out variable to a fragment shader color number + + C Specification + + + void glBindFragDataLocation + GLuint program + GLuint colorNumber + const char * name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to modify + + + + + colorNumber + + + The color number to bind the user-defined varying out variable to + + + + + name + + + The name of the user-defined varying out variable whose binding to modify + + + + + + Description + + glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable + name to fragment shader color number colorNumber for program + program. If name was bound previously, its assigned binding is replaced + with colorNumber. name must be a null-terminated string. colorNumber + must be less than GL_MAX_DRAW_BUFFERS. + + + The bindings specified by glBindFragDataLocation have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. + + + In addition to the errors generated by glBindFragDataLocation, the + program program will fail to link if: + + + + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. + + + + + More than one varying out variable is bound to the same color number. + + + + + + Notes + + Varying out varyings may have indexed locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. + + + Errors + + GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. + + + GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. + + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + Associated Gets + + glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable + + + See Also + + glCreateProgram, + glGetFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindFragDataLocationIndexed.xml b/upstream-man-pages/man4/glBindFragDataLocationIndexed.xml new file mode 100644 index 0000000..2b215e7 --- /dev/null +++ b/upstream-man-pages/man4/glBindFragDataLocationIndexed.xml @@ -0,0 +1,155 @@ + + + + + + + 2010 + Khronos Group + + + glBindFragDataLocationIndexed + 3G + + + glBindFragDataLocationIndexed + bind a user-defined varying out variable to a fragment shader color number and index + + C Specification + + + void glBindFragDataLocationIndexed + GLuint program + GLuint colorNumber + GLuint index + const char *name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to modify + + + + + colorNumber + + + The color number to bind the user-defined varying out variable to + + + + + index + + + The index of the color input to bind the user-defined varying out variable to + + + + + name + + + The name of the user-defined varying out variable whose binding to modify + + + + + + Description + + glBindFragDataLocationIndexed specifies that the varying out variable name in + program should be bound to fragment color colorNumber when the program is next + linked. index may be zero or one to specify that the color be used as either the first or second color + input to the blend equation, respectively. + + + The bindings specified by glBindFragDataLocationIndexed have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. + + + If name was bound previously, its assigned binding is replaced with colorNumber and + index. name must be a null-terminated string. index must be less than or equal to one, + and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index + is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. + + + In addition to the errors generated by glBindFragDataLocationIndexed, the + program program will fail to link if: + + + + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. + + + + + More than one varying out variable is bound to the same color number. + + + + + + Notes + + Varying out varyings may have locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. + + + Errors + + GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. + + + GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DUAL_SOURCE_DRAW_BUFERS + and index is greater than or equal to one. + + + GL_INVALID_VALUE is generated if index is greater than one. + + + GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. + + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + Associated Gets + + glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable + + + glGetFragDataIndex with a valid program object + and the the name of a user-defined varying out variable + + + See Also + + glCreateProgram, + glLinkProgram + glGetFragDataLocation, + glGetFragDataIndex + glBindFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindFramebuffer.xml b/upstream-man-pages/man4/glBindFramebuffer.xml new file mode 100644 index 0000000..0cb0242 --- /dev/null +++ b/upstream-man-pages/man4/glBindFramebuffer.xml @@ -0,0 +1,93 @@ + + + + + + + 2010 + Khronos Group + + + glBindFramebuffer + 3G + + + glBindFramebuffer + bind a framebuffer to a framebuffer target + + C Specification + + + void glBindFramebuffer + GLenum target + GLuint framebuffer + + + + Parameters + + + target + + + Specifies the framebuffer target of the binding operation. + + + + + framebuffer + + + Specifies the name of the framebuffer object to bind. + + + + + + Description + + glBindFramebuffer binds the framebuffer object with name framebuffer to the framebuffer target specified + by target. target must be either GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. If a framebuffer object is bound to + GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER, it becomes the target for + rendering or readback operations, respectively, until it is deleted or another framebuffer is bound to the corresponding bind point. + Calling glBindFramebuffer with target set to GL_FRAMEBUFFER binds + framebuffer to both the read and draw framebuffer targets. framebuffer is the name of a framebuffer + object previously returned from a call to glGenFramebuffers, or zero to break the existing + binding of a framebuffer object to target. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + + + GL_INVALID_OPERATION is generated if framebuffer is not zero or the name of a framebuffer + previously returned from a call to glGenFramebuffers. + + + See Also + + glGenFramebuffers, + glDeleteFramebuffers, + glFramebufferRenderbuffer, + glFramebufferTexture, + glFramebufferTexture1D, + glFramebufferTexture2D, + glFramebufferTexture3D, + glFramebufferTextureFace, + glFramebufferTextureLayer, + glIsFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindImageTexture.xml b/upstream-man-pages/man4/glBindImageTexture.xml new file mode 100644 index 0000000..e0f22f8 --- /dev/null +++ b/upstream-man-pages/man4/glBindImageTexture.xml @@ -0,0 +1,332 @@ + + + + + + + 2010 + Khronos Group> + + + glBindImageTexture + 3G + + + glBindImageTexture + bind a level of a texture to an image unit + + C Specification + + + void glBindImageTexture + GLuint unit + GLuint texture + GLint level + GLboolean layered + GLint layer + GLenum access + GLenum format + + + + Parameters + + + unit + + + Specifies the index of the image unit to which to bind the texture + + + + + texture + + + Specifies the name of the texture to bind to the image unit. + + + + + level + + + Specifies the level of the texture that is to be bound. + + + + + layered + + + Specifies whether a layered texture binding is to be established. + + + + + layer + + + If layered is GL_FALSE, specifies the layer of texture to be bound to the image unit. Ignored otherwise. + + + + + access + + + Specifies a token indicating the type of access that will be performed on the image. + + + + + format + + + Specifies the format that the elements of the image will be treated as for the purposes of formatted stores. + + + + + + Description + + glBindImageTexture binds a single level of a texture to an image unit for the purpose of + reading and writing it from shaders. unit specifies the zero-based index of the image + unit to which to bind the texture level. texture specifies the name of an existing texture + object to bind to the image unit. If texture is zero, then any existing binding to + the image unit is broken. level specifies the level of the texture to bind to the image + unit. + + + If texture is the name of a one-, two-, or three-dimensional array texture, a cube map + or cube map array texture, or a two-dimensional multisample array texture, then it is possible to bind either + the entire array, or only a single layer of the array to the image unit. In such cases, if layered + is GL_TRUE, the entire array is attached to the image unit and layer + is ignored. However, if layered is GL_FALSE then layer + specifies the layer of the array to attach to the image unit. + + + access specifies the access types to be performed by shaders and may be set to + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE + to indicate read-only, write-only or read-write access, respectively. Violation of the access type specified in access + (for example, if a shader writes to an image bound with access set to GL_READ_ONLY) + will lead to undefined results, possibly including program termination. + + + format specifies the format that is to be used when performing formatted stores into the + image from shaders. format must be compatible with the texture's internal format and must + be one of the formats listed in the following table. + + + Internal Image Formats + + + + + + + Image Unit Format + + + Format Qualifier + + + + + + GL_RGBA32Frgba32f + + + GL_RGBA16Frgba16f + + + GL_RG32Frg32f + + + GL_RG16Frg16f + + + GL_R11F_G11F_B10Fr11f_g11f_b10f + + + GL_R32Fr32f + + + GL_R16Fr16f + + + GL_RGBA32UIrgba32ui + + + GL_RGBA16UIrgba16ui + + + GL_RGB10_A2UIrgb10_a2ui + + + GL_RGBA8UIrgba8ui + + + GL_RG32UIrg32ui + + + GL_RG16UIrg16ui + + + GL_RG8UIrg8ui + + + GL_R32UIr32ui + + + GL_R16UIr16ui + + + GL_R8UIr8ui + + + GL_RGBA32Irgba32i + + + GL_RGBA16Irgba16i + + + GL_RGBA8Irgba8i + + + GL_RG32Irg32i + + + GL_RG16Irg16i + + + GL_RG8Irg8i + + + GL_R32Ir32i + + + GL_R16Ir16i + + + GL_R8Ir8i + + + GL_RGBA16rgba16 + + + GL_RGB10_A2rgb10_a2 + + + GL_RGBA8rgba8 + + + GL_RG16rg16 + + + GL_RG8rg8 + + + GL_R16r16 + + + GL_R8r8 + + + GL_RGBA16_SNORMrgba16_snorm + + + GL_RGBA8_SNORMrgba8_snorm + + + GL_RG16_SNORMrg16_snorm + + + GL_RG8_SNORMrg8_snorm + + + GL_R16_SNORMr16_snorm + + + GL_R8_SNORMr8_snorm + + + +
+
+ + When a texture is bound to an image unit, the format parameter for the image + unit need not exactly match the texture internal format as long as the formats are + considered compatible as defined in the OpenGL Specification. The matching criterion used + for a given texture may be determined by calling glGetTexParameter + with value + set to GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, with return values of GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE + and GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS, specifying matches by size and class, respectively. + +
+ Notes + + The glBindImageTexture is available only if the GL version is 4.2 or greater. + + + Errors + + GL_INVALID_VALUE is generated if unit greater than or equal to the + value of GL_MAX_IMAGE_UNITS. + + + GL_INVALID_VALUE is generated if texture is not the name of + an existing texture object. + + + GL_INVALID_VALUE is generated if level or layer + is less than zero. + + + GL_INVALID_ENUM is generated if access or format + is not one of the supported tokens. + + + Associated Gets + + glGet with argument GL_IMAGE_BINDING_NAME. + + + glGet with argument GL_IMAGE_BINDING_LEVEL. + + + glGet with argument GL_IMAGE_BINDING_LAYERED. + + + glGet with argument GL_IMAGE_BINDING_LAYER. + + + glGet with argument GL_IMAGE_BINDING_ACCESS. + + + glGet with argument GL_IMAGE_BINDING_FORMAT. + + + See Also + + glGenTextures, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexStorage1D, + glTexStorage2D, + glTexStorage3D, + glBindTexture + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + +
diff --git a/upstream-man-pages/man4/glBindProgramPipeline.xml b/upstream-man-pages/man4/glBindProgramPipeline.xml new file mode 100644 index 0000000..e80f7d9 --- /dev/null +++ b/upstream-man-pages/man4/glBindProgramPipeline.xml @@ -0,0 +1,85 @@ + + + + + + + 2010 + Khronos Group + + + glBindProgramPipeline + 3G + + + glBindProgramPipeline + bind a program pipeline to the current context + + C Specification + + + void glBindProgramPipeline + GLuint pipeline + + + + Parameters + + + pipeline + + + Specifies the name of the pipeline object to bind to the context. + + + + + + Description + + glBindProgramPipeline binds a program pipeline object to the current + context. pipeline must be a name previously returned from a call + to glGenProgramPipelines. If + no program pipeline exists with name pipeline then a new pipeline object + is created with that name and initialized to the default state vector. + + + When a program pipeline object is bound using glBindProgramPipeline, any previous + binding is broken and is replaced with a binding to the specified pipeline object. If pipeline + is zero, the previous binding is broken and is not replaced, leaving no pipeline object bound. + If no current program object has been established by glUseProgram, + the program objects used for each stage and for uniform updates are taken from the bound program + pipeline object, if any. If there is a current program object established by glUseProgram, + the bound program pipeline object has no effect on rendering or uniform updates. When a bound program + pipeline object is used for rendering, individual shader executables are taken from its program objects. + + + Errors + + GL_INVALID_OPERATION is generated if pipeline is not zero or + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. + + + See Also + + glCreateShader, + glCreateProgram, + glCompileShader, + glLinkProgram, + glGenProgramPipelines, + glDeleteProgramPipelines, + glIsProgramPipeline + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindRenderbuffer.xml b/upstream-man-pages/man4/glBindRenderbuffer.xml new file mode 100644 index 0000000..3539d47 --- /dev/null +++ b/upstream-man-pages/man4/glBindRenderbuffer.xml @@ -0,0 +1,82 @@ + + + + + + + 2010 + Khronos Group + + + glBindRenderbuffer + 3G + + + glBindRenderbuffer + bind a renderbuffer to a renderbuffer target + + C Specification + + + void glBindRenderbuffer + GLenum target + GLuint renderbuffer + + + + Parameters + + + target + + + Specifies the renderbuffer target of the binding operation. target must be GL_RENDERBUFFER. + + + + + renderbuffer + + + Specifies the name of the renderbuffer object to bind. + + + + + + Description + + glBindRenderbuffer binds the renderbuffer object with name renderbuffer to the renderbuffer target specified + by target. target must be GL_RENDERBUFFER. renderbuffer + is the name of a renderbuffer object previously returned from a call to glGenRenderbuffers, + or zero to break the existing binding of a renderbuffer object to target. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. + + + GL_INVALID_OPERATION is generated if renderbuffer is not zero or the name of a renderbuffer + previously returned from a call to glGenRenderbuffers. + + + See Also + + glGenRenderbuffers, + glDeleteRenderbuffers, + glRenderbufferStorage, + glRenderbufferStorageMultisample, + glIsRenderbuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindSampler.xml b/upstream-man-pages/man4/glBindSampler.xml new file mode 100644 index 0000000..370049f --- /dev/null +++ b/upstream-man-pages/man4/glBindSampler.xml @@ -0,0 +1,103 @@ + + + + + + + 2010 + Khronos Group + + + glBindSampler + 3G + + + glBindSampler + bind a named sampler to a texturing target + + C Specification + + + void glBindSampler + GLuint unit + GLuint sampler + + + + Parameters + + + unit + + + Specifies the index of the texture unit to which the sampler is bound. + + + + + sampler + + + Specifies the name of a sampler. + + + + + + Description + + glBindSampler binds sampler to the texture unit at index unit. + sampler must be zero or the name of a sampler object previously returned from a call to + glGenSamplers. unit must be less than the value + of GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. + + + When a sampler object is bound to a texture unit, its state supersedes that of + the texture object bound to that texture unit. If the sampler name zero is bound to + a texture unit, the currently bound texture's sampler state becomes active. A single + sampler object may be bound to multiple texture units simultaneously. + + + Notes + + glBindSampler is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if unit is greater than or equal to the value of + GL_MAX_COMBIED_TEXTURE_IMAGE_UNITS. + + + GL_INVALID_OPERATION is generated if sampler is not zero or a name previously + returned from a call to glGenSamplers, or if such a name has + been deleted by a call to glDeleteSamplers. + + + Associated Gets + + glGet with argument GL_SAMPLER_BINDING + + + See Also + + glGenSamplers, + glDeleteSamplers, + glGet, + glSamplerParameter, + glGetSamplerParameter, + glGenTextures, + glBindTexture, + glDeleteTextures + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindTexture.xml b/upstream-man-pages/man4/glBindTexture.xml new file mode 100644 index 0000000..0e5f04c --- /dev/null +++ b/upstream-man-pages/man4/glBindTexture.xml @@ -0,0 +1,181 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBindTexture + 3G + + + glBindTexture + bind a named texture to a texturing target + + C Specification + + + void glBindTexture + GLenum target + GLuint texture + + + + Parameters + + + target + + + Specifies the target to which the texture is bound. + Must be one of + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_ARRAY, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + + + + + texture + + + Specifies the name of a texture. + + + + + + Description + + glBindTexture lets you create or use a named texture. Calling glBindTexture with + target set to + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_ARRAY, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY + and texture set to the name of the new texture binds the texture name to the target. + When a texture is bound to a target, the previous binding for that target is automatically broken. + + + Texture names are unsigned integers. The value zero is reserved to + represent the default texture for each texture target. + Texture names and the corresponding texture contents are local to + the shared object space of the current GL rendering context; + two rendering contexts share texture names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. + + + You must use glGenTextures to generate a set of new texture names. + + + When a texture is first bound, it assumes the specified target: + A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a + texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a + texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, a + texture first bound to GL_TEXTURE_1D_ARRAY becomes one-dimensional array texture, a + texture first bound to GL_TEXTURE_2D_ARRAY becomes two-dimensional arary texture, a + texture first bound to GL_TEXTURE_RECTANGLE becomes rectangle texture, a + texture first bound to GL_TEXTURE_CUBE_MAP becomes a cube-mapped texture, a + texture first bound to GL_TEXTURE_CUBE_MAP_ARRAY becomes a cube-mapped array texture, a + texture first bound to GL_TEXTURE_BUFFER becomes a buffer texture, a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE becomes a two-dimensional multisampled texture, and a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE_ARRAY becomes a two-dimensional multisampled array texture. + The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the + default GL_TEXTURE_1D at GL initialization, and similarly for the other texture types. + + + While a texture is bound, GL operations on the target to which it is + bound affect the bound texture, and queries of the target to which it + is bound return state from the bound texture. + In effect, the texture targets become aliases for the textures currently + bound to them, and the texture name zero refers to the default textures + that were bound to them at initialization. + + + A texture binding created with glBindTexture remains active until a different + texture is bound to the same target, or until the bound texture is + deleted with glDeleteTextures. + + + Once created, a named texture may be re-bound to its same original target as often as needed. + It is usually much faster to use glBindTexture to bind an existing named + texture to one of the texture targets than it is to reload the texture image + using glTexImage1D, glTexImage2D, + glTexImage3D or another similar function. + + + Notes + + The GL_TEXTURE_2D_MULTISAMPLE and GL_TEXTURE_2D_MULTISAMPLE_ARRAY targets are available + only if the GL version is 3.2 or higher. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable + values. + + + GL_INVALID_VALUE is generated if target is not a name returned from + a previous call to glGenTextures. + + + GL_INVALID_OPERATION is generated if texture was previously created with a target + that doesn't match that of target. + + + Associated Gets + + glGet with argument GL_TEXTURE_BINDING_1D, + GL_TEXTURE_BINDING_2D, GL_TEXTURE_BINDING_3D, GL_TEXTURE_BINDING_1D_ARRAY, + GL_TEXTURE_BINDING_2D_ARRAY, GL_TEXTURE_BINDING_RECTANGLE, + GL_TEXTURE_BINDING_BUFFER, GL_TEXTURE_BINDING_CUBE_MAP, GL_TEXTURE_BINDING_CUBE_MAP, + GL_TEXTURE_BINDING_CUBE_MAP_ARRAY, + GL_TEXTURE_BINDING_2D_MULTISAMPLE, + or GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY. + + + See Also + + glDeleteTextures, + glGenTextures, + glGet, + glGetTexParameter, + glIsTexture, + glTexImage1D, + glTexImage2D, + glTexImage2DMultisample, + glTexImage3D, + glTexImage3DMultisample, + glTexBuffer, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glBindTransformFeedback.xml b/upstream-man-pages/man4/glBindTransformFeedback.xml new file mode 100644 index 0000000..f68cc19 --- /dev/null +++ b/upstream-man-pages/man4/glBindTransformFeedback.xml @@ -0,0 +1,112 @@ + + + + + + + 2010 + Khronos Group. + + + glBindTransformFeedback + 3G + + + glBindTransformFeedback + bind a transform feedback object + + C Specification + + + void glBindTransformFeedback + GLenum target + GLuint id + + + + + Parameters + + + target + + + Specifies the target to which to bind the transform feedback object id. target + must be GL_TRANSFORM_FEEDBACK. + + + + + id + + + Specifies the name of a transform feedback object reserved by glGenTransformFeedbacks. + + + + + + Description + + glBindTransformFeedback binds the transform feedback object with name id to the current + GL state. id must be a name previously returned from a call to + glGenTransformFeedbacks. If id has not + previously been bound, a new transform feedback object with name id and initialized with with the + default transform state vector is created. + + + In the initial state, a default transform feedback object is bound and treated as + a transform feedback object with a name of zero. If the name zero is subsequently bound, the default + transform feedback object is again bound to the GL state. + + + While a transform feedback buffer object is bound, GL operations on the target + to which it is bound affect the bound transform feedback object, and queries of the + target to which a transform feedback object is bound return state from the bound + object. When buffer objects are bound for transform feedback, they are attached to + the currently bound transform feedback object. Buffer objects are used for trans- + form feedback only if they are attached to the currently bound transform feedback + object. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TRANSFORM_FEEDBACK. + + + GL_INVALID_OPERATION is generated if the transform feedback operation is + active on the currently bound transform feedback object, and that operation is not paused. + + + GL_INVALID_OPERATION is generated if id is not + zero or the name of a transform feedback object returned from a previous call to + glGenTransformFeedbacks, or + if such a name has been deleted by glDeleteTransformFeedbacks. + + + Associated Gets + + glGet with argument GL_TRANSFORM_FEEDBACK_BINDING + + + See Also + + glGenTransformFeedbacks, + glDeleteTransformFeedbacks, + glIsTransformFeedback, + glBeginTransformFeedback, + glPauseTransformFeedback, + glResumeTransformFeedback, + glEndTransformFeedback + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindVertexArray.xml b/upstream-man-pages/man4/glBindVertexArray.xml new file mode 100644 index 0000000..5060d98 --- /dev/null +++ b/upstream-man-pages/man4/glBindVertexArray.xml @@ -0,0 +1,72 @@ + + + + + + + 2010 + Khronos Group + + + glBindVertexArray + 3G + + + glBindVertexArray + bind a vertex array object + + C Specification + + + void glBindVertexArray + GLuint array + + + + Parameters + + + array + + + Specifies the name of the vertex array to bind. + + + + + + Description + + glBindVertexArray binds the vertex array object with name array. array + is the name of a vertex array object previously returned from a call to glGenVertexArrays, + or zero to break the existing vertex array object binding. + + + If no vertex array object with name array exists, one is created when array is first bound. If the bind + is successful no change is made to the state of the vertex array object, and any previous vertex array object binding is broken. + + + Errors + + GL_INVALID_OPERATION is generated if array is not zero or the name of a vertex array object + previously returned from a call to glGenVertexArrays. + + + See Also + + glGenVertexArrays, + glDeleteVertexArrays + glVertexAttribPointer + glEnableVertexAttribArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBindVertexBuffer.xml b/upstream-man-pages/man4/glBindVertexBuffer.xml new file mode 100644 index 0000000..d09816b --- /dev/null +++ b/upstream-man-pages/man4/glBindVertexBuffer.xml @@ -0,0 +1,116 @@ + + + + + + + 2012 + Khronos Group + + + glBindVertexBuffer + 3G + + + glBindVertexBuffer + bind a buffer to a vertex buffer bind point + + C Specification + + + void glBindVertexBuffer + GLuint bindingindex + GLuint buffer + GLintptr offset + GLintptr stride + + + + Parameters + + + bindingindex + + + The index of the vertex buffer binding point to which to bind the buffer. + + + + + buffer + + + The name of an existing buffer to bind to the vertex buffer binding point. + + + + + offset + + + The offset of the first element of the buffer. + + + + + stride + + + The distance between elements within the buffer. + + + + + + Description + + glBindVertexBuffer binds the buffer named buffer + to the vertex buffer binding point whose index is given by bindingindex. + offset and stride specify the offset of the first + element within the buffer and the distance between elements within the buffer, respectively, and + are both measured in basic machine units. bindingindex must be less than + the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. offset + and stride must be greater than or equal to zero. If buffer + is zero, then any buffer currently bound to the specified binding point is unbound. + + + Errors + + GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. + + + GL_INVALID_VALUE is generated if offset or stride + is less than zero. + + + GL_INVALID_VALUE is generated if buffer is not the name of an + existing buffer object. + + + GL_INVALID_OPERATION is generated if no vertex array object is bound. + + + Associated Gets + + glGet with argument GL_MAX_VERTEX_ATTRIB_BINDINGS. + + + See Also + + glVertexAttribBinding, + glVertexAttribFormat, + glVertexAttribPointer, + glVertexBindingDivisor. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBlendColor.xml b/upstream-man-pages/man4/glBlendColor.xml new file mode 100644 index 0000000..2182b5c --- /dev/null +++ b/upstream-man-pages/man4/glBlendColor.xml @@ -0,0 +1,94 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendColor + 3G + + + glBlendColor + set the blend color + + C Specification + + + void glBlendColor + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + + Parameters + + + red + green + blue + alpha + + + specify the components of GL_BLEND_COLOR + + + + + + Description + + The GL_BLEND_COLOR may be used to calculate the source and destination + blending factors. The color components are clamped to the range + + + + 0 + 1 + + + before being stored. See glBlendFunc for a complete description of the + blending operations. + Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). + + + Notes + + The type of the red, + green, blue, + and alpha parameters was changed from + GLclampf to GLfloat. This change is transparent to user code + and is described in detail on the + removedTypes + page. + + + Associated Gets + + glGet with an argument of GL_BLEND_COLOR + + + See Also + + glBlendEquation, + glBlendFunc, + glGetString, + removedTypes + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glBlendEquation.xml b/upstream-man-pages/man4/glBlendEquation.xml new file mode 100644 index 0000000..7839ef3 --- /dev/null +++ b/upstream-man-pages/man4/glBlendEquation.xml @@ -0,0 +1,779 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendEquation + 3G + + + glBlendEquation + specify the equation used for both the RGB blend equation and the Alpha blend equation + + C Specification + + + void glBlendEquation + GLenum mode + + + void glBlendEquationi + GLuint buf + GLenum mode + + + + + Parameters + + + buf + + + for glBlendEquationi, specifies the index of the draw buffer + for which to set the blend equation. + + + + + mode + + + specifies how source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + + Description + + The blend equations determine how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function sets both the RGB blend equation and the alpha + blend equation to a single equation. glBlendEquationi + specifies the blend equation for a single draw buffer whereas glBlendEquation + sets the blend equation for all draw buffers. + + + These equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. + + + In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + + + + + + + + + + Mode + + + RGB Components + + + Alpha Component + + + + + + + GL_FUNC_ADD + + + + + + Rr + = + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + GL_FUNC_SUBTRACT + + + + + + Rr + = + + R + s + + + s + R + + - + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + - + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + - + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + - + A + d + + + d + A + + + + + + + + + GL_FUNC_REVERSE_SUBTRACT + + + + + + Rr + = + + R + d + + + d + R + + - + R + s + + + s + R + + + + + + + + Gr + = + + G + d + + + d + G + + - + G + s + + + s + G + + + + + + + + Br + = + + B + d + + + d + B + + - + B + s + + + s + B + + + + + + + + + + Ar + = + + A + d + + + d + A + + - + A + s + + + s + A + + + + + + + + + GL_MIN + + + + + + Rr + = + + min + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + min + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + min + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + min + + + + A + s + + + + A + d + + + + + + + + + + + GL_MAX + + + + + + Rr + = + + max + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + max + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + max + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + max + + + + A + s + + + + A + d + + + + + + + + + + + + + + The results of these equations are clamped to the range + + + + 0 + 1 + + . + + + The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. + + + Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + + + + + Notes + + The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. + + + GL_INVALID_VALUE is generated by glBlendEquationi if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. + + + Associated Gets + + glGet with an argument of GL_BLEND_EQUATION_RGB + + + glGet with an argument of GL_BLEND_EQUATION_ALPHA + + + See Also + + glBlendColor, + glBlendFunc + glBlendFuncSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glBlendEquationSeparate.xml b/upstream-man-pages/man4/glBlendEquationSeparate.xml new file mode 100644 index 0000000..a8a4dc0 --- /dev/null +++ b/upstream-man-pages/man4/glBlendEquationSeparate.xml @@ -0,0 +1,792 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendEquationSeparate + 3G + + + glBlendEquationSeparate + set the RGB blend equation and the alpha blend equation separately + + C Specification + + + void glBlendEquationSeparate + GLenum modeRGB + GLenum modeAlpha + + + void glBlendEquationSeparatei + GLuint buf + GLenum modeRGB + GLenum modeAlpha + + + + + Parameters + + + buf + + + for glBlendEquationSeparatei, specifies the index of the draw buffer for which + to set the blend equations. + + + + + modeRGB + + + specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + modeAlpha + + + specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + + + + + + Description + + The blend equations determines how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). These functions specifie one blend equation for the RGB-color + components and one blend equation for the alpha component. glBlendEquationSeparatei + specifies the blend equations for a single draw buffer whereas glBlendEquationSeparate + sets the blend equations for all draw buffers. + + + The blend equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. + + + In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + + + + + + + + + + Mode + + + RGB Components + + + Alpha Component + + + + + + + GL_FUNC_ADD + + + + + + Rr + = + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + GL_FUNC_SUBTRACT + + + + + + Rr + = + + R + s + + + s + R + + - + R + d + + + d + R + + + + + + + + Gr + = + + G + s + + + s + G + + - + G + d + + + d + G + + + + + + + + Br + = + + B + s + + + s + B + + - + B + d + + + d + B + + + + + + + + + + Ar + = + + A + s + + + s + A + + - + A + d + + + d + A + + + + + + + + + GL_FUNC_REVERSE_SUBTRACT + + + + + + Rr + = + + R + d + + + d + R + + - + R + s + + + s + R + + + + + + + + Gr + = + + G + d + + + d + G + + - + G + s + + + s + G + + + + + + + + Br + = + + B + d + + + d + B + + - + B + s + + + s + B + + + + + + + + + + Ar + = + + A + d + + + d + A + + - + A + s + + + s + A + + + + + + + + + GL_MIN + + + + + + Rr + = + + min + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + min + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + min + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + min + + + + A + s + + + + A + d + + + + + + + + + + + GL_MAX + + + + + + Rr + = + + max + + + + R + s + + + + R + d + + + + + + + + + + Gr + = + + max + + + + G + s + + + + G + d + + + + + + + + + + Br + = + + max + + + + B + s + + + + B + d + + + + + + + + + + + + Ar + = + + max + + + + A + s + + + + A + d + + + + + + + + + + + + + + The results of these equations are clamped to the range + + + + 0 + 1 + + . + + + The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. + + + Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + + + + + Notes + + The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. + + + Errors + + GL_INVALID_ENUM is generated if either modeRGB or modeAlpha is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. + + + GL_INVALID_VALUE is generated by glBlendEquationSeparatei if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. + + + Associated Gets + + glGet with an argument of GL_BLEND_EQUATION_RGB + + + glGet with an argument of GL_BLEND_EQUATION_ALPHA + + + See Also + + glGetString, + glBlendColor, + glBlendFunc, + glBlendFuncSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBlendFunc.xml b/upstream-man-pages/man4/glBlendFunc.xml new file mode 100644 index 0000000..da57b28 --- /dev/null +++ b/upstream-man-pages/man4/glBlendFunc.xml @@ -0,0 +1,1473 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendFunc + 3G + + + glBlendFunc + specify pixel arithmetic + + C Specification + + + void glBlendFunc + GLenum sfactor + GLenum dfactor + + + void glBlendFunci + GLuint buf + GLenum sfactor + GLenum dfactor + + + + + Parameters + + + buf + + + For glBlendFunci, specifies the index of the draw + buffer for which to set the blend function. + + + + + sfactor + + + Specifies how the red, green, blue, + and alpha source blending factors are computed. + The initial value is GL_ONE. + + + + + dfactor + + + Specifies how the red, green, blue, + and alpha destination blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. + + + + + + Description + + Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. + + + glBlendFunc defines the operation of blending for all draw buffers when it is enabled. + glBlendFunci defines the operation of blending for a single draw buffer + specified by buf when enabled for that draw buffer. + sfactor specifies which method is used to scale the + source color components. + dfactor specifies which method is used to scale the + destination color components. + Both parameters must be one of the following symbolic constants: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, + GL_SRC_ALPHA_SATURATE, + GL_SRC1_COLOR, + GL_ONE_MINUS_SRC1_COLOR, + GL_SRC1_ALPHA, and + GL_ONE_MINUS_SRC1_ALPHA. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + In the table and in subsequent equations, first source, second source + and destination color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where + + + + + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + + + + + and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. + + + Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + The scale factors described in the table, + denoted + + + + f + R + + f + G + + f + B + + f + A + + + , + represent either source or destination factors. + All scale factors have range + + + + 0 + 1 + + . + + + + + + + + + + + Parameter + + + + + + f + R + + f + G + + f + B + + f + A + + + + + + + + + + GL_ZERO + + + + + + 0 + 0 + 0 + 0 + + + + + + + GL_ONE + + + + + + 1 + 1 + 1 + 1 + + + + + + + GL_SRC_COLOR + + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + + + + + + + GL_DST_COLOR + + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + + + + + GL_ONE_MINUS_DST_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + + + + + + GL_SRC_ALPHA + + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + GL_DST_ALPHA + + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + GL_ONE_MINUS_DST_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + GL_CONSTANT_COLOR + + + + + + R + c + + G + c + + B + c + + A + c + + + + + + + + GL_ONE_MINUS_CONSTANT_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + A + c + + + + + + + + + GL_CONSTANT_ALPHA + + + + + + A + c + + A + c + + A + c + + A + c + + + + + + + + GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + A + c + + + + + + + + + GL_SRC_ALPHA_SATURATE + + + + + + i + i + i + 1 + + + + + + + GL_SRC1_COLOR + + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC1_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + + + + + + + GL_SRC1_ALPHA + + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + GL_ONE_MINUS_SRC1_ALPHA + + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + + + In the table, + + + + + + + i + = + + + min + + + A + s + + + k + A + + - + A + d + + + + + k + A + + + + + + + + To determine the blended RGBA values of a pixel, + the system uses the following equations: + + + + + + + R + d + + = + + min + + + k + R + + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + + + G + d + + = + + min + + + k + G + + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + + + B + d + + = + + min + + + k + B + + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + A + d + + = + + min + + + k + A + + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + + Despite the apparent precision of the above equations, + blending arithmetic is not exactly specified, + because blending operates with imprecise integer color values. + However, + a blend factor that should be equal to 1 + is guaranteed not to modify its multiplicand, + and a blend factor equal to 0 reduces its multiplicand to 0. + For example, + when sfactor is GL_SRC_ALPHA, + dfactor is GL_ONE_MINUS_SRC_ALPHA, + and + + + A + s + + + is equal to + + + k + A + + , + the equations reduce to simple replacement: + + + + + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + + + + + + + Examples + + + + Transparency is best implemented using blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + with primitives sorted from farthest to nearest. + Note that this transparency calculation does not require + the presence of alpha bitplanes in the frame buffer. + + + Blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + is also useful for rendering antialiased points and lines + in arbitrary order. + + + Polygon antialiasing is optimized using blend function + (GL_SRC_ALPHA_SATURATE, GL_ONE) + with polygons sorted from nearest to farthest. + (See the glEnable, glDisable reference page and the + GL_POLYGON_SMOOTH argument for information on polygon antialiasing.) + Destination alpha bitplanes, + which must be present for this blend function to operate correctly, + store the accumulated coverage. + + + Notes + + Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. + + + When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) + + + When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. + + + Errors + + GL_INVALID_ENUM is generated if either sfactor + or dfactor is not an accepted value. + + + GL_INVALID_VALUE is generated by glBlendFunci if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. + + + Associated Gets + + glGet with argument GL_BLEND_SRC + + + glGet with argument GL_BLEND_DST + + + glIsEnabled with argument GL_BLEND + + + + + See Also + + glBlendColor, + glBlendEquation, + glBlendFuncSeparate, + glClear, + glDrawBuffer, + glEnable, + glLogicOp, + glStencilFunc + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glBlendFuncSeparate.xml b/upstream-man-pages/man4/glBlendFuncSeparate.xml new file mode 100644 index 0000000..84d7776 --- /dev/null +++ b/upstream-man-pages/man4/glBlendFuncSeparate.xml @@ -0,0 +1,1523 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glBlendFuncSeparate + 3G + + + glBlendFuncSeparate + specify pixel arithmetic for RGB and alpha components separately + + C Specification + + + void glBlendFuncSeparate + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + void glBlendFuncSeparatei + GLuint buf + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + + Parameters + + + buf + + + For glBlendFuncSeparatei, specifies the index of the draw + buffer for which to set the blend functions. + + + + + srcRGB + + + Specifies how the red, green, and blue blending factors are computed. + The initial value is GL_ONE. + + + + + dstRGB + + + Specifies how the red, green, and blue destination blending factors are + computed. + The initial value is GL_ZERO. + + + + + srcAlpha + + + Specified how the alpha source blending factor is computed. + The initial value is GL_ONE. + + + + + dstAlpha + + + Specified how the alpha destination blending factor is computed. + The initial value is GL_ZERO. + + + + + + Description + + Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. + + + glBlendFuncSeparate defines the operation of blending for all draw buffers when it is enabled. + glBlendFuncSeparatei defines the operation of blending for a single draw buffer + specified by buf when enabled for that draw buffer. + srcRGB specifies which method is used to scale the + source RGB-color components. + dstRGB specifies which method is used to scale the + destination RGB-color components. + Likewise, srcAlpha specifies which method is used to scale the source alpha + color component, and dstAlpha specifies which method is used to scale the + destination alpha component. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + + + In the table and in subsequent equations, first source, second source and destination + color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + , + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where + + + + + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + + + + + and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. + + + Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + All scale factors have range + + + + 0 + 1 + + . + + + + + + + + + + + + Parameter + + + RGB Factor + + + Alpha Factor + + + + + + + GL_ZERO + + + + + + 0 + 0 + 0 + + + + + + + 0 + + + + + + GL_ONE + + + + + + 1 + 1 + 1 + + + + + + + 1 + + + + + + GL_SRC_COLOR + + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + + A + s0 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + + + + + + GL_DST_COLOR + + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + A + d + + k + A + + + + + + + + GL_ONE_MINUS_DST_COLOR + + + + + + + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + + 1 + - + + A + d + + k + A + + + + + + + + + GL_SRC_ALPHA + + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + A + s0 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + + + + + + GL_DST_ALPHA + + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + A + d + + k + A + + + + + + + + GL_ONE_MINUS_DST_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + + 1 + - + + A + d + + k + A + + + + + + + + + GL_CONSTANT_COLOR + + + + + + R + c + + G + c + + B + c + + + + + + + + A + c + + + + + + + GL_ONE_MINUS_CONSTANT_COLOR + + + + + + + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + + + + + + + + + 1 + - + A + c + + + + + + + + GL_CONSTANT_ALPHA + + + + + + A + c + + A + c + + A + c + + + + + + + + A + c + + + + + + + GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + + + + + + + + + 1 + - + A + c + + + + + + + + GL_SRC_ALPHA_SATURATE + + + + + + i + i + i + + + + + + + 1 + + + + + + GL_SRC1_COLOR + + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + + A + s1 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_COLOR + + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + + + + + + GL_SRC1_ALPHA + + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + A + s1 + + k + A + + + + + + + + GL_ONE_MINUS_SRC_ALPHA + + + + + + + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + + + + + + + + In the table, + + + + + + + i + = + + min + + + A + s + + + 1 + - + + A + d + + + + + + + + + + + To determine the blended RGBA values of a pixel, + the system uses the following equations: + + + + + + + R + d + + = + + min + + + k + R + + + R + s + + + s + R + + + + R + d + + + d + R + + + + + + + + + + G + d + + = + + min + + + k + G + + + G + s + + + s + G + + + + G + d + + + d + G + + + + + + + + + + B + d + + = + + min + + + k + B + + + B + s + + + s + B + + + + B + d + + + d + B + + + + + + + + + + A + d + + = + + min + + + k + A + + + A + s + + + s + A + + + + A + d + + + d + A + + + + + + + + + + Despite the apparent precision of the above equations, blending arithmetic + is not exactly specified, because blending operates with imprecise integer + color values. However, a blend factor that should be equal to 1 is + guaranteed not to modify its multiplicand, and a blend factor equal to 0 + reduces its multiplicand to 0. For example, when srcRGB is + GL_SRC_ALPHA, dstRGB is GL_ONE_MINUS_SRC_ALPHA, and + + + A + s + + + is + equal to + + + k + A + + , + the equations reduce to simple replacement: + + + + + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + + + + + + + Notes + + Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. + + + When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) + + + When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. + + + Errors + + GL_INVALID_ENUM is generated if either srcRGB or dstRGB is not an + accepted value. + + + GL_INVALID_VALUE is generated by glBlendFuncSeparatei if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. + + + Associated Gets + + glGet with argument GL_BLEND_SRC_RGB + + + glGet with argument GL_BLEND_SRC_ALPHA + + + glGet with argument GL_BLEND_DST_RGB + + + glGet with argument GL_BLEND_DST_ALPHA + + + glIsEnabled with argument GL_BLEND + + + + + See Also + + glBlendColor, + glBlendFunc, + glBlendEquation, + glClear, + glDrawBuffer, + glEnable, + glLogicOp, + glStencilFunc + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glBlitFramebuffer.xml b/upstream-man-pages/man4/glBlitFramebuffer.xml new file mode 100644 index 0000000..6c195c0 --- /dev/null +++ b/upstream-man-pages/man4/glBlitFramebuffer.xml @@ -0,0 +1,177 @@ + + + + + + + 2010 + Khronos Group + + + glBlitFramebuffer + 3G + + + glBlitFramebuffer + copy a block of pixels from the read framebuffer to the draw framebuffer + + C Specification + + + void glBlitFramebuffer + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + + Parameters + + + srcX0 + srcY0 + srcX1 + srcY1 + + + Specify the bounds of the source rectangle within the read buffer of the read framebuffer. + + + + + dstX0 + dstY0 + dstX1 + dstY1 + + + Specify the bounds of the destination rectangle within the write buffer of the write framebuffer. + + + + + mask + + + The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are + GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT and GL_STENCIL_BUFFER_BIT. + + + + + filter + + + Specifies the interpolation to be applied if the image is stretched. Must be GL_NEAREST or GL_LINEAR. + + + + + + Description + + glBlitFramebuffer transfers a rectangle of pixel values from one region of the read framebuffer to another region in + the draw framebuffer. mask is the bitwise OR of a number of values indicating which buffers are + to be copied. The values are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. The pixels corresponding to these buffers are copied from the source rectangle bounded by the + locations (srcX0; srcY0) and (srcX1; srcY1) + to the destination rectangle bounded by the locations (dstX0; dstY0) and + (dstX1; dstY1). The lower bounds of the rectangle are inclusive, while the upper + bounds are exclusive. + + + The actual region taken from the read framebuffer is limited to the intersection of the source buffers being transferred, which may + include the color buffer selected by the read buffer, the depth buffer, and/or the stencil buffer depending on mask. The actual region + written to the draw framebuffer is limited to the intersection of the destination buffers being written, which may include multiple draw + buffers, the depth buffer, and/or the stencil buffer depending on mask. Whether or not the source or destination regions are altered due + to these limits, the scaling and offset applied to pixels being transferred is performed as though no such limits were present. + + + If the sizes of the source and destination rectangles are not equal, filter specifies the interpolation method that + will be applied to resize the source image , and must be GL_NEAREST or GL_LINEAR. + GL_LINEAR is only a valid interpolation method for the color buffer. If filter is not + GL_NEAREST and mask includes GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT, no data is transferred and a GL_INVALID_OPERATION error is generated. + + + If filter is GL_LINEAR and the source rectangle would require sampling outside the bounds of + the source framebuffer, values are read as if the GL_CLAMP_TO_EDGE texture wrapping mode were applied. + + + When the color buffer is transferred, values are taken from the read buffer of the read framebuffer and written to each of the draw + buffers of the draw framebuffer. + + + If the source and destination rectangles overlap or are the same, and the read and draw buffers are the same, the result of the operation + is undefined. + + + Errors + + GL_INVALID_OPERATION is generated if mask contains any of the GL_DEPTH_BUFFER_BIT + or GL_STENCIL_BUFFER_BIT and filter is not GL_NEAREST. + + + GL_INVALID_OPERATION is generated if mask contains GL_COLOR_BUFFER_BIT + and any of the following conditions hold: + + + The read buffer contains fixed-point or floating-point values and any draw buffer contains + neither fixed-point nor floating-point values. + + + The read buffer contains unsigned integer values and any draw buffer does not contain unsigned + integer values. + + + The read buffer contains signed integer values and any draw buffer does not contain signed integer values. + + + + + GL_INVALID_OPERATION is generated if mask contains GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT and the source and destination depth and stencil formats do not match. + + + GL_INVALID_OPERATION is generated if filter is GL_LINEAR and the read buffer + contains integer data. + + + GL_INVALID_OPERATION is generated if the value of GL_SAMPLES for the read and draw buffers is + not identical. + + + GL_INVALID_OPERATION is generated if GL_SAMPLE_BUFFERS for both read and draw buffers greater than + zero and the dimensions of the source and destination rectangles is not identical. + + + GL_INVALID_FRAMEBUFFER_OPERATION is generated if the objects bound to GL_DRAW_FRAMEBUFFER_BINDING + or GL_READ_FRAMEBUFFER_BINDING are not framebuffer complete. + + + See Also + + glReadPixels + glCheckFramebufferStatus, + glGenFramebuffers + glBindFramebuffer + glDeleteFramebuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBufferData.xml b/upstream-man-pages/man4/glBufferData.xml new file mode 100644 index 0000000..079314c --- /dev/null +++ b/upstream-man-pages/man4/glBufferData.xml @@ -0,0 +1,226 @@ + + + + + + + 2005 + Sams Publishing + + + glBufferData + 3G + + + glBufferData + creates and initializes a buffer object's data store + + C Specification + + + void glBufferData + GLenum target + GLsizeiptr size + const GLvoid * data + GLenum usage + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + size + + + Specifies the size in bytes of the buffer object's new data store. + + + + + data + + + Specifies a pointer to data that will be copied into the data store for initialization, + or NULL if no data is to be copied. + + + + + usage + + + Specifies the expected usage pattern of the data store. The symbolic constant must be + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + + + + + + Description + + glBufferData creates a new data store for the buffer object currently bound to + target. Any pre-existing data store is deleted. The new data store is created with the + specified size in bytes and usage. If data + is not NULL, the data store is initialized with data from this pointer. In its initial + state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access + is GL_READ_WRITE. + + + usage is a hint to the GL implementation as to how a buffer object's data store will be + accessed. This enables the GL implementation to make more intelligent decisions that may significantly + impact buffer object performance. It does not, however, constrain the actual usage of the data store. + usage can be broken down into two parts: first, the frequency of access (modification + and usage), and second, the nature of that access. The frequency of access may be one of these: + + + + STREAM + + + The data store contents will be modified once and used at most a few times. + + + + + STATIC + + + The data store contents will be modified once and used many times. + + + + + DYNAMIC + + + The data store contents will be modified repeatedly and used many times. + + + + + + The nature of access may be one of these: + + + + DRAW + + + The data store contents are modified by the application, and used as the source for GL drawing and + image specification commands. + + + + + READ + + + The data store contents are modified by reading data from the GL, and used to return that data + when queried by the application. + + + + + COPY + + + The data store contents are modified by reading data from the GL, and used as the source for GL + drawing and image specification commands. + + + + + + Notes + + If data is NULL, a data store of the specified size is still created, + but its contents remain uninitialized and thus undefined. + + + Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. + + + The GL_ATOMIC_COUNTER_BUFFER target is available only if the GL version + is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version + is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. + + + GL_INVALID_ENUM is generated if usage is not + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + + + GL_INVALID_VALUE is generated if size is negative. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store with the specified size. + + + Associated Gets + + glGetBufferSubData + + + glGetBufferParameter with argument GL_BUFFER_SIZE or GL_BUFFER_USAGE + + + See Also + + glBindBuffer, + glBufferSubData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glBufferSubData.xml b/upstream-man-pages/man4/glBufferSubData.xml new file mode 100644 index 0000000..2e10197 --- /dev/null +++ b/upstream-man-pages/man4/glBufferSubData.xml @@ -0,0 +1,156 @@ + + + + + + + 2005 + Sams Publishing + + + glBufferSubData + 3G + + + glBufferSubData + updates a subset of a buffer object's data store + + C Specification + + + void glBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + offset + + + Specifies the offset into the buffer object's data store where data replacement will begin, + measured in bytes. + + + + + size + + + Specifies the size in bytes of the data store region being replaced. + + + + + data + + + Specifies a pointer to the new data that will be copied into the data store. + + + + + + Description + + glBufferSubData redefines some or all of the data store for the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied to the data store from the memory pointed to by + data. An error is thrown if offset and size + together define a range beyond the bounds of the buffer object's data store. + + + Notes + + When replacing the entire data store, consider using glBufferSubData rather + than completely recreating the data store with glBufferData. This avoids the cost of + reallocating the data store. + + + Consider using multiple buffer objects to avoid stalling the rendering pipeline during data store updates. + If any rendering in the pipeline makes reference to data in the buffer object being updated by + glBufferSubData, especially from the specific region being updated, that rendering must + drain from the pipeline before the data store can be updated. + + + Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. + + + The GL_ATOMIC_COUNTER_BUFFER target is available only if the GL version + is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version + is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. + + + GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer object being updated is mapped. + + + Associated Gets + + glGetBufferSubData + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glCheckFramebufferStatus.xml b/upstream-man-pages/man4/glCheckFramebufferStatus.xml new file mode 100644 index 0000000..c4e14d6 --- /dev/null +++ b/upstream-man-pages/man4/glCheckFramebufferStatus.xml @@ -0,0 +1,131 @@ + + + + + + + 2010 + Khronos Group + + + glCheckFramebufferStatus + 3G + + + glCheckFramebufferStatus + check the completeness status of a framebuffer + + C Specification + + + GLenum glCheckFramebufferStatus + GLenum target + + + + Parameters + + + target + + + Specify the target of the framebuffer completeness check. + + + + + + Description + + glCheckFramebufferStatus queries the completeness status of the framebuffer object currently bound to target. + target must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + + + The return value is GL_FRAMEBUFFER_COMPLETE if the framebuffer bound to target is complete. Otherwise, + the return value is determined as follows: + + + + GL_FRAMEBUFFER_UNDEFINED is returned if target is the default framebuffer, but the default framebuffer does not exist. + + + + + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT is returned if any of the framebuffer attachment points are framebuffer incomplete. + + + + + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT is returned if the framebuffer does not have at least one image attached to it. + + + + + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER is returned if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE + is GL_NONE for any color attachment point(s) named by GL_DRAWBUFFERi. + + + + + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER is returned if GL_READ_BUFFER is not GL_NONE + and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE for the color attachment point named + by GL_READ_BUFFER. + + + + + GL_FRAMEBUFFER_UNSUPPORTED is returned if the combination of internal formats of the attached images violates + an implementation-dependent set of restrictions. + + + + + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is returned if the value of GL_RENDERBUFFER_SAMPLES is not the same + for all attached renderbuffers; if the value of GL_TEXTURE_SAMPLES is the not same for all attached textures; or, if the attached + images are a mix of renderbuffers and textures, the value of GL_RENDERBUFFER_SAMPLES does not match the value of + GL_TEXTURE_SAMPLES. + + + + + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is also returned if the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS is + not the same for all attached textures; or, if the attached images are a mix of renderbuffers and textures, the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS + is not GL_TRUE for all attached textures. + + + + + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS is returned if any framebuffer attachment is layered, and any populated attachment is not layered, + or if all populated color attachments are not from textures of the same target. + + + + + + Additionally, if an error occurs, zero is returned. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + + + See Also + + glGenFramebuffers, + glDeleteFramebuffers + glBindFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glClampColor.xml b/upstream-man-pages/man4/glClampColor.xml new file mode 100644 index 0000000..4b0e25e --- /dev/null +++ b/upstream-man-pages/man4/glClampColor.xml @@ -0,0 +1,79 @@ + + + + + + + 2010 + Khronos Group + + + glClampColor + 3G + + + glClampColor + specify whether data read via glReadPixels should be clamped + + C Specification + + + void glClampColor + GLenum target + GLenum clamp + + + + Parameters + + + target + + + Target for color clamping. target must be GL_CLAMP_READ_COLOR. + + + + + clamp + + + Specifies whether to apply color clamping. clamp must be GL_TRUE or GL_FALSE. + + + + + + Description + + glClampColor controls color clamping that is performed during glReadPixels. + target must be GL_CLAMP_READ_COLOR. If clamp is GL_TRUE, + read color clamping is enabled; if clamp is GL_FALSE, read color clamping is disabled. If + clamp is GL_FIXED_ONLY, read color clamping is enabled only if the selected read buffer has + fixed point components and disabled otherwise. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_CLAMP_READ_COLOR. + + + GL_INVALID_ENUM is generated if clamp is not GL_TRUE or GL_FALSE. + + + Associated Gets + + glGet with argument GL_CLAMP_READ_COLOR. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glClear.xml b/upstream-man-pages/man4/glClear.xml new file mode 100644 index 0000000..9183a4e --- /dev/null +++ b/upstream-man-pages/man4/glClear.xml @@ -0,0 +1,145 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClear + 3G + + + glClear + clear buffers to preset values + + C Specification + + + void glClear + GLbitfield mask + + + + Parameters + + + mask + + + Bitwise OR of masks that indicate the buffers to be cleared. + The three masks are + GL_COLOR_BUFFER_BIT, + GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. + + + + + + Description + + glClear sets the bitplane area of the window to values previously selected + by glClearColor, glClearDepth, and + glClearStencil. + Multiple color buffers can be cleared simultaneously by selecting + more than one buffer at a time using glDrawBuffer. + + + The pixel ownership test, + the scissor test, + dithering, and the buffer writemasks affect the operation of glClear. + The scissor box bounds the cleared region. + Alpha function, + blend function, + logical operation, + stenciling, + texture mapping, + and depth-buffering are ignored by glClear. + + + glClear takes a single argument that is the bitwise OR of several + values indicating which buffer is to be cleared. + + + The values are as follows: + + + + GL_COLOR_BUFFER_BIT + + + Indicates the buffers currently enabled for color + writing. + + + + + GL_DEPTH_BUFFER_BIT + + + Indicates the depth buffer. + + + + + GL_STENCIL_BUFFER_BIT + + + Indicates the stencil buffer. + + + + + + The value to which each buffer is cleared depends on the setting of the + clear value for that buffer. + + + Notes + + If a buffer is not present, + then a glClear directed at that buffer has no effect. + + + Errors + + GL_INVALID_VALUE is generated if any bit other than the three defined + bits is set in mask. + + + Associated Gets + + glGet with argument GL_DEPTH_CLEAR_VALUE + + + glGet with argument GL_COLOR_CLEAR_VALUE + + + glGet with argument GL_STENCIL_CLEAR_VALUE + + + See Also + + glClearColor, + glClearDepth, + glClearStencil, + glColorMask, + glDepthMask, + glDrawBuffer, + glScissor, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glClearBuffer.xml b/upstream-man-pages/man4/glClearBuffer.xml new file mode 100644 index 0000000..1f85f36 --- /dev/null +++ b/upstream-man-pages/man4/glClearBuffer.xml @@ -0,0 +1,170 @@ + + + + + + + 2010 + Khronos Group + + + glClearBuffer + 3G + + + glClearBuffer + clear individual buffers of the currently bound draw framebuffer + + C Specification + + + void glClearBufferiv + GLenum buffer + GLint drawBuffer + const GLint * value + + + + + void glClearBufferuiv + GLenum buffer + GLint drawBuffer + const GLuint * value + + + + + void glClearBufferfv + GLenum buffer + GLint drawBuffer + const GLfloat * value + + + + + void glClearBufferfi + GLenum buffer + GLint drawBuffer + GLfloat depth + GLint stencil + + + + Parameters + + + buffer + + + Specify the buffer to clear. + + + + + drawBuffer + + + Specify a particular draw buffer to clear. + + + + + value + + + For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. + For depth buffers, a pointer to a single depth value to clear the buffer to. + For stencil buffers, a pointer to a single stencil value to clear the buffer to. + + + + + depth + + + The value to clear a depth render buffer to. + + + + + stencil + + + The value to clear a stencil render buffer to. + + + + + + Description + + glClearBuffer* clears the specified buffer to the specified value(s). If buffer is + GL_COLOR, a particular draw buffer GL_DRAWBUFFERi is specified + by passing i as drawBuffer. In this case, value points to + a four-element vector specifying the R, G, B and A color to clear that draw buffer to. If buffer is + one of GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK, identifying multiple buffers, each selected buffer is cleared to the same value. + Clamping and conversion for fixed-point color buffers are performed in the same fashion as + glClearColor. + + + If buffer is GL_DEPTH, drawBuffer must be zero, and value + points to a single value to clear the depth buffer to. Only glClearBufferfv should be used to clear + depth buffers. Clamping and conversion for fixed-point depth buffers are performed in the same fashion as + glClearDepth. + + + If buffer is GL_STENCIL, drawBuffer must be zero, and value + points to a single value to clear the stencil buffer to. Only glClearBufferiv should be used to clear + stencil buffers. Masking and type conversion are performed in the same fashion as + glClearStencil. + + + glClearBufferfi may be used to clear the depth and stencil buffers. buffer must be + GL_DEPTH_STENCIL and drawBuffer must be zero. depth and + stencil are the depth and stencil values, respectively. + + + The result of glClearBuffer is undefined if no conversion between the type of value + and the buffer being cleared is defined. However, this is not an error. + + + Errors + + GL_INVALID_ENUM is generated by glClearBufferif, glClearBufferfv + and glClearBufferuiv if buffer is not GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + GL_FRONT_AND_BACK, GL_DEPTH or GL_STENCIL. + + + GL_INVALID_ENUM is generated by glClearBufferfi if buffer + is not GL_DEPTH_STENCIL. + + + GL_INVALID_VALUE is generated if buffer is GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK and drawBuffer is greater than or equal to GL_MAX_DRAW_BUFFERS. + + + GL_INVALID_VALUE is generated if buffer is GL_DEPTH, + GL_STENCIL or GL_DEPTH_STENCIL and drawBuffer is not zero. + + + See Also + + glClearColor, + glClearDepth, + glClearStencil, + glClear + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glClearBufferData.xml b/upstream-man-pages/man4/glClearBufferData.xml new file mode 100644 index 0000000..e8a54f2 --- /dev/null +++ b/upstream-man-pages/man4/glClearBufferData.xml @@ -0,0 +1,128 @@ + + + + + + + 2012 + Khronos Group + + + glClearBufferData + 3G + + + glClearBufferData + fill a buffer object's data store with a fixed value + + C Specification + + + void glClearBufferData + GLenum target + GLenum internalformat + GLenum format + GLenum type + const void * data + + + + Parameters + + + target + + + Specify the target of the operation. target must be + one of the global buffer binding targets. + + + + + internalformat + + + The internal format with which the data will be stored in the buffer object. + + + + + size + + + The size, in basic machine units of the range of the data store to fill. + + + + + format + + + The format of the data in memory addressed by data. + + + + + type + + + The type of the data in memory addressed by data. + + + + + data + + + The address of a memory location storing the data to be replicated into the + buffer's data store. + + + + + + Description + + glClearBufferData fills the entirety of a buffer object's + data store with data from client memory. Data, initially supplied in a format + specified by format in data type type is + read from the memory address given by data and converted into + the internal representation given by internalforamt. + This converted data is then replicated throughout the buffer object's + data store. + + + If data is NULL, then the buffer's data store + is filled with zeros. + + + Errors + + GL_INVALID_ENUM is generated if target not one of the generic buffer binding targets. + + + GL_INVALID_VALUE is generated if no buffer is bound to target. + + + GL_INVALID_ENUM is generated if internalformat is not a sized internal format. + + + GL_INVALID_OPERATION is generated if any part of the buffer's data store is + mapped with glMapBufferRange or glMapBuffer. + + + See Also + + glClearBufferSubData. + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glClearBufferSubData.xml b/upstream-man-pages/man4/glClearBufferSubData.xml new file mode 100644 index 0000000..47aab27 --- /dev/null +++ b/upstream-man-pages/man4/glClearBufferSubData.xml @@ -0,0 +1,149 @@ + + + + + + + 2012 + Khronos Group + + + glClearBufferSubData + 3G + + + glClearBufferSubData + fill all or part of buffer object's data store with a fixed value + + C Specification + + + void glClearBufferSubData + GLenum target + GLenum internalformat + GLintptr offset + GLsizeiptr size + GLenum format + GLenum type + const void * data + + + + Parameters + + + target + + + Specify the target of the operation. target must be + one of the global buffer binding targets. + + + + + internalformat + + + The internal format with which the data will be stored in the buffer object. + + + + + offset + + + The offset, in basic machine units into the buffer object's data store at which to start filling. + + + + + size + + + The size, in basic machine units of the range of the data store to fill. + + + + + format + + + The format of the data in memory addressed by data. + + + + + type + + + The type of the data in memory addressed by data. + + + + + data + + + The address of a memory location storing the data to be replicated into the + buffer's data store. + + + + + + Description + + glClearBufferSubData fills a specified region of a buffer object's + data store with data from client memory. offset and size + demark the extent of the region within the data store of the buffer object bound to + target to fill with data. Data, initially supplied in a format + specified by format in data type type is + read from the memory address given by data and converted into + the internal representation given by internalforamt. + This converted data is then replicated throughout the specified region of the buffer object's + data store. + + + If data is NULL, then the subrange of the buffer's data store + is filled with zeros. + + + Errors + + GL_INVALID_ENUM is generated if target not one of the generic buffer binding targets. + + + GL_INVALID_VALUE is generated if no buffer is bound to target. + + + GL_INVALID_ENUM is generated if internalformat is not a sized internal format. + + + GL_INVALID_VALUE is generated if offset or range are not multiples of + the number of basic machine units per-element for the internal format specified by + internalformat. + + + GL_INVALID_VALUE is generated if offset or size is less than zero, or if + offset + size is greater than the value of GL_BUFFER_SIZE for the buffer bound to target. + + + GL_INVALID_OPERATION is generated if any part of the specified buffer range is + mapped with glMapBufferRange or glMapBuffer. + + + See Also + + glClearBufferData. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glClearColor.xml b/upstream-man-pages/man4/glClearColor.xml new file mode 100644 index 0000000..7f1a3dd --- /dev/null +++ b/upstream-man-pages/man4/glClearColor.xml @@ -0,0 +1,93 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearColor + 3G + + + glClearColor + specify clear values for the color buffers + + C Specification + + + void glClearColor + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + Parameters + + + red + green + blue + alpha + + + Specify the red, green, blue, and alpha values used when the + color buffers are cleared. + The initial values are all 0. + + + + + + Description + + glClearColor specifies the red, + green, + blue, + and alpha values used by glClear to clear the color buffers. + Values specified by glClearColor are clamped to the range + + + + 0 + 1 + + . + + + Notes + + The type of the red, + green, blue, + and alpha parameters was changed from + GLclampf to GLfloat. This change is transparent to user code + and is described in detail on the + removedTypes + page. + + + Associated Gets + + glGet with argument GL_COLOR_CLEAR_VALUE + + + See Also + + glClear, + removedTypes + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glClearDepth.xml b/upstream-man-pages/man4/glClearDepth.xml new file mode 100644 index 0000000..78645bf --- /dev/null +++ b/upstream-man-pages/man4/glClearDepth.xml @@ -0,0 +1,88 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearDepth + 3G + + + glClearDepth + specify the clear value for the depth buffer + + C Specification + + + void glClearDepth + GLdouble depth + + + void glClearDepthf + GLfloat depth + + + + Parameters + + + depth + + + Specifies the depth value used when the depth buffer is cleared. The + initial value is 1. + + + + + + Description + + glClearDepth specifies the depth value used by glClear to clear the depth buffer. + Values specified by glClearDepth are clamped to the range + + + + 0 + 1 + + . + + + Notes + + The type of the depth parameter was + changed from GLclampf to GLfloat for + glClearDepthf and from GLclampd to + GLdouble for glClearDepth. This change + is transparent to user code and is described in detail on + the + removedTypes + page. + + + Associated Gets + + glGet with argument GL_DEPTH_CLEAR_VALUE + + + See Also + + glClear, + removedTypes + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glClearStencil.xml b/upstream-man-pages/man4/glClearStencil.xml new file mode 100644 index 0000000..1e319cd --- /dev/null +++ b/upstream-man-pages/man4/glClearStencil.xml @@ -0,0 +1,87 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glClearStencil + 3G + + + glClearStencil + specify the clear value for the stencil buffer + + C Specification + + + void glClearStencil + GLint s + + + + + Parameters + + + s + + + Specifies the index used when the stencil buffer is cleared. + The initial value is 0. + + + + + + Description + + glClearStencil specifies the index used by glClear to clear the stencil buffer. + s is masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in the stencil buffer. + + + Associated Gets + + glGet with argument GL_STENCIL_CLEAR_VALUE + + + glGet with argument GL_STENCIL_BITS + + + See Also + + glClear, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glClientWaitSync.xml b/upstream-man-pages/man4/glClientWaitSync.xml new file mode 100644 index 0000000..e3521f4 --- /dev/null +++ b/upstream-man-pages/man4/glClientWaitSync.xml @@ -0,0 +1,119 @@ + + + + + + + 2010 + Khronos Group + + + glClientWaitSync + 3G + + + glClientWaitSync + block and wait for a sync object to become signaled + + C Specification + + + GLenum glClientWaitSync + GLsync sync + GLbitfield flags + GLuint64 timeout + + + + Parameters + + + sync + + + The sync object whose status to wait on. + + + + + flags + + + A bitfield controlling the command flushing behavior. flags may be GL_SYNC_FLUSH_COMMANDS_BIT. + + + + + + timeout + + + The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled. + + + + + Description + + glClientWaitSync causes the client to block and wait for the sync object specified by sync to become signaled. If + sync is signaled when glClientWaitSync is called, glClientWaitSync returns immediately, otherwise + it will block and wait for up to timeout nanoseconds for sync to become signaled. + + + The return value is one of four status values: + + + + GL_ALREADY_SIGNALED indicates that sync was signaled at the time that glClientWaitSync + was called. + + + + + GL_TIMEOUT_EXPIRED indicates that at least timeout nanoseconds passed and sync did not + become signaled. + + + + + GL_CONDITION_SATISFIED indicates that sync was signaled before the timeout expired. + + + + + GL_WAIT_FAILED indicates that an error occurred. Additionally, an OpenGL error will be generated. + + + + + + Notes + + glClientWaitSync is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_VALUE is generated if sync is not the name of an existing sync object. + + + GL_INVALID_VALUE is generated if flags contains any unsupported flag. + + + See Also + + glFenceSync, + glIsSync + glWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glColorMask.xml b/upstream-man-pages/man4/glColorMask.xml new file mode 100644 index 0000000..16fb9eb --- /dev/null +++ b/upstream-man-pages/man4/glColorMask.xml @@ -0,0 +1,106 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glColorMask + 3G + + + glColorMask, glColorMaski + enable and disable writing of frame buffer color components + + C Specification + + + void glColorMask + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + + void glColorMaski + GLuint buf + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + Parameters + + + buf + + + For glColorMaski, specifies the index of the + draw buffer whose color mask to set. + + + + + red + green + blue + alpha + + + Specify whether red, green, blue, and alpha are to be written + into the frame buffer. + The initial values are all GL_TRUE, + indicating that the color components are written. + + + + + + Description + + glColorMask and glColorMaski specify whether the individual color components in the frame buffer + can or cannot be written. glColorMaski sets the mask for a specific draw buffer, whereas + glColorMask sets the mask for all draw buffers. + If red is GL_FALSE, + for example, + no change is made to the red component of any pixel in any of the + color buffers, + regardless of the drawing operation attempted. + + + Changes to individual bits of components cannot be controlled. + Rather, + changes are either enabled or disabled for entire color components. + + + Associated Gets + + glGet with argument GL_COLOR_WRITEMASK + + + See Also + + glClear, + glDepthMask, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. + Copyright 2010-2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCompileShader.xml b/upstream-man-pages/man4/glCompileShader.xml new file mode 100644 index 0000000..714831d --- /dev/null +++ b/upstream-man-pages/man4/glCompileShader.xml @@ -0,0 +1,84 @@ + + + + + glCompileShader + 3G + + + glCompileShader + Compiles a shader object + + C Specification + + + void glCompileShader + GLuint shader + + + + Parameters + + + shader + + Specifies the shader object to be + compiled. + + + + + Description + glCompileShader compiles the source + code strings that have been stored in the shader object + specified by shader. + + The compilation status will be stored as part of the + shader object's state. This value will be set to + GL_TRUE if the shader was compiled without + errors and is ready for use, and GL_FALSE + otherwise. It can be queried by calling + glGetShader + with arguments shader and + GL_COMPILE_STATUS. + + Compilation of a shader can fail for a number of reasons + as specified by the OpenGL Shading Language Specification. + Whether or not the compilation was successful, information about + the compilation can be obtained from the shader object's + information log by calling + glGetShaderInfoLog. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + + Associated Gets + glGetShaderInfoLog + with argument shader + + glGetShader + with arguments shader and + GL_COMPILE_STATUS + glIsShader + + See Also + glCreateShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glCompressedTexImage1D.xml b/upstream-man-pages/man4/glCompressedTexImage1D.xml new file mode 100644 index 0000000..a09e229 --- /dev/null +++ b/upstream-man-pages/man4/glCompressedTexImage1D.xml @@ -0,0 +1,274 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage1D + 3G + + + glCompressedTexImage1D + specify a one-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage1D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image. + All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. + + + + + border + + + This value must be 0. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexImage1D loads a previously defined, and retrieved, compressed + one-dimensional texture image if target is GL_TEXTURE_1D + (see glTexImage1D). + + + If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + + + internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with + glTexImage1D using a generic compressed texture format + (e.g., GL_COMPRESSED_RGB) the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and + format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + If the compressed data are arranged into fixed-size blocks of texels, the pixel + storage modes can be used to select a sub-rectangle from a larger containing rectangle. + These pixel storage modes operate in the same way as they do for glTexImage1D. + In the following description, denote by bs, + bw, + bh, and + bd, + the values of pixel storage modes GL_UNPACK_COMPRESSED_BLOCK_SIZE, + GL_UNPACK_COMPRESSED_BLOCK_WIDTH, GL_UNPACK_COMPRESSED_BLOCK_HEIGHT, + and GL_UNPACK_COMPRESSED_BLOCK_DEPTH, respectively. + bs is + the compressed block size in bytes; bw, + bh, + and bd are the compressed block width, height, and depth in pixels. + + + By default the pixel storage modes GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_IMAGE_HEIGHT and GL_UNPACK_SKIP_IMAGES + are ignored for compressed images. To enable GL_UNPACK_SKIP_PIXELS + and GL_UNPACK_ROW_LENGTH, bs + and bw must both be non-zero. + To also enable GL_UNPACK_SKIP_ROWS and GL_UNPACK_IMAGE_HEIGHT, + bh must be non-zero. + To also enable GL_UNPACK_SKIP_IMAGES, bd + must be non-zero. All parameters must be consistent with the compressed format to produce the desired results. + + + When selecting a sub-rectangle from a compressed image: + + the value of GL_UNPACK_SKIP_PIXELS must be a multiple of bw; + + + + imageSize must be equal to: + + + + + + b + s + + × + + + width + + b + w + + + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not + a supported specific compressed internal formats, or is one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_NUM_COMPRESSED_TEXTURE_FORMATS + + + glGet with argument GL_COMPRESSED_TEXTURE_FORMATS + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCompressedTexImage2D.xml b/upstream-man-pages/man4/glCompressedTexImage2D.xml new file mode 100644 index 0000000..e1fb9b5 --- /dev/null +++ b/upstream-man-pages/man4/glCompressedTexImage2D.xml @@ -0,0 +1,335 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage2D + 3G + + + glCompressedTexImage2D + specify a two-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage2D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image. + All implementations support 2D texture and cube map texture images that are at least 16384 texels wide. + + + + + height + + + Specifies the height of the texture image. + All implementations support 2D texture and cube map texture images that are at least 16384 texels high. + + + + + border + + + This value must be 0. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional + texture image if target is GL_TEXTURE_2D, or one of the + cube map faces such as GL_TEXTURE_CUBE_MAP_POSITIVE_X. + (see glTexImage2D). + + + If target is GL_TEXTURE_1D_ARRAY, data + is treated as an array of compressed 1D textures. + + + If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY + or GL_PROXY_CUBE_MAP, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, + use an image array level greater than or equal to 1. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage2D, query the compressed texture image's + size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + If the compressed data are arranged into fixed-size blocks of texels, the pixel + storage modes can be used to select a sub-rectangle from a larger containing rectangle. + These pixel storage modes operate in the same way as they do for glTexImage2D. + In the following description, denote by bs, + bw, + bh, and + bd, + the values of pixel storage modes GL_UNPACK_COMPRESSED_BLOCK_SIZE, + GL_UNPACK_COMPRESSED_BLOCK_WIDTH, GL_UNPACK_COMPRESSED_BLOCK_HEIGHT, + and GL_UNPACK_COMPRESSED_BLOCK_DEPTH, respectively. + bs is + the compressed block size in bytes; bw, + bh, + and bd are the compressed block width, height, and depth in pixels. + + + By default the pixel storage modes GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_IMAGE_HEIGHT and GL_UNPACK_SKIP_IMAGES + are ignored for compressed images. To enable GL_UNPACK_SKIP_PIXELS + and GL_UNPACK_ROW_LENGTH, bs + and bw must both be non-zero. + To also enable GL_UNPACK_SKIP_ROWS and GL_UNPACK_IMAGE_HEIGHT, + bh must be non-zero. + To also enable GL_UNPACK_SKIP_IMAGES, bd + must be non-zero. All parameters must be consistent with the compressed format to produce the desired results. + + + When selecting a sub-rectangle from a compressed image: + + the value of GL_UNPACK_SKIP_PIXELS must be a multiple of bw; + the value of GL_UNPACK_SKIP_ROWS must be a multiple of bw. + + + + imageSize must be equal to: + + + + + + b + s + + × + + + width + + b + w + + + + × + + + height + + b + h + + + + + + + + Notes + + The specific compressed internal formats GL_COMPRESSED_RGB8_ETC2, + GL_COMPRESSED_SRGB8_ETC2, + GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_RGBA8_ETC2_EAC, + GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, + GL_COMPRESSED_R11_EAC, + GL_COMPRESSED_SIGNED_R11_EAC, + GL_COMPRESSED_RG11_EAC, and + GL_COMPRESSED_SIGNED_RG11_EAC are available only if the GL version + is 4.3 or higher. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not one of the specific + compressed internal formats: + GL_COMPRESSED_RED_RGTC1, + GL_COMPRESSED_SIGNED_RED_RGTC1, + GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2. + GL_COMPRESSED_RGBA_BPTC_UNORM, + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT, + GL_COMPRESSED_RGB8_ETC2, + GL_COMPRESSED_SRGB8_ETC2, + GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_RGBA8_ETC2_EAC, + GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, + GL_COMPRESSED_R11_EAC, + GL_COMPRESSED_SIGNED_R11_EAC, + GL_COMPRESSED_RG11_EAC, or + GL_COMPRESSED_SIGNED_RG11_EAC. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCompressedTexImage3D.xml b/upstream-man-pages/man4/glCompressedTexImage3D.xml new file mode 100644 index 0000000..544cbb4 --- /dev/null +++ b/upstream-man-pages/man4/glCompressedTexImage3D.xml @@ -0,0 +1,319 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexImage3D + 3G + + + glCompressedTexImage3D + specify a three-dimensional texture image in a compressed format + + C Specification + + + void glCompressedTexImage3D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the format of the compressed image data stored at address data. + + + + + width + + + Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels wide. + + + + + height + + + Specifies the height of the texture image. + All implementations support 3D texture images that are at least 16 texels + high. + + + + + depth + + + Specifies the depth of the texture image. + All implementations support 3D texture images that are at least 16 texels + deep. + + + + + border + + + This value must be 0. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional + texture image if target is GL_TEXTURE_3D (see glTexImage3D). + + + If target is GL_TEXTURE_2D_ARRAY, data is + treated as an array of compressed 2D textures. + + + If target is GL_PROXY_TEXTURE_3D or GL_PROXY_TEXTURE_2D_ARRAY, + no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage3D, query the compressed texture image's + size and format using glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + If the compressed data are arranged into fixed-size blocks of texels, the pixel + storage modes can be used to select a sub-rectangle from a larger containing rectangle. + These pixel storage modes operate in the same way as they do for glTexImage1D. + In the following description, denote by bs, + bw, + bh, and + bd, + the values of pixel storage modes GL_UNPACK_COMPRESSED_BLOCK_SIZE, + GL_UNPACK_COMPRESSED_BLOCK_WIDTH, GL_UNPACK_COMPRESSED_BLOCK_HEIGHT, + and GL_UNPACK_COMPRESSED_BLOCK_DEPTH, respectively. + bs is + the compressed block size in bytes; bw, + bh, + and bd are the compressed block width, height, and depth in pixels. + + + By default the pixel storage modes GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_IMAGE_HEIGHT and GL_UNPACK_SKIP_IMAGES + are ignored for compressed images. To enable GL_UNPACK_SKIP_PIXELS + and GL_UNPACK_ROW_LENGTH, bs + and bw must both be non-zero. + To also enable GL_UNPACK_SKIP_ROWS and GL_UNPACK_IMAGE_HEIGHT, + bh must be non-zero. + To also enable GL_UNPACK_SKIP_IMAGES, bd + must be non-zero. All parameters must be consistent with the compressed format to produce the desired results. + + + When selecting a sub-rectangle from a compressed image: + + the value of GL_UNPACK_SKIP_PIXELS must be a multiple of bw; + the value of GL_UNPACK_SKIP_ROWS must be a multiple of bw; + the value of GL_UNPACK_SKIP_IMAGES must be a multiple of bw. + + + + imageSize must be equal to: + + + + + + b + s + + × + + + width + + b + w + + + + × + + + height + + b + h + + + + × + + + depth + + b + d + + + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if data is not encoded in a manner consistent with the extension specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCompressedTexSubImage1D.xml b/upstream-man-pages/man4/glCompressedTexSubImage1D.xml new file mode 100644 index 0000000..8e11ad1 --- /dev/null +++ b/upstream-man-pages/man4/glCompressedTexSubImage1D.xml @@ -0,0 +1,216 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage1D + 3G + + + glCompressedTexSubImage1D + specify a one-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage1D), and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCompressedTexSubImage2D.xml b/upstream-man-pages/man4/glCompressedTexSubImage2D.xml new file mode 100644 index 0000000..f7ea502 --- /dev/null +++ b/upstream-man-pages/man4/glCompressedTexSubImage2D.xml @@ -0,0 +1,251 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage2D + 3G + + + glCompressedTexSubImage2D + specify a two-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage2D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCompressedTexSubImage3D.xml b/upstream-man-pages/man4/glCompressedTexSubImage3D.xml new file mode 100644 index 0000000..5b5dcec --- /dev/null +++ b/upstream-man-pages/man4/glCompressedTexSubImage3D.xml @@ -0,0 +1,265 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCompressedTexSubImage3D + 3G + + + glCompressedTexSubImage3D + specify a three-dimensional texture subimage in a compressed format + + C Specification + + + void glCompressedTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const GLvoid * data + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + depth + + + Specifies the depth of the texture subimage. + + + + + format + + + Specifies the format of the compressed image data stored at address data. + + + + + imageSize + + + Specifies the number of unsigned bytes of image data starting at the + address specified by data. + + + + + data + + + Specifies a pointer to the compressed image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + glCompressedTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + and the z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. This region may not include + any texels outside the range of the texture array as it was originally + specified. It is not an error to specify a subtexture with width of 0, + but such a specification has no effect. + + + internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage3D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Errors + + GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. + + + GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. + + + GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. + + + Associated Gets + + glGetCompressedTexImage + + + glGet with argument GL_TEXTURE_COMPRESSED + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCopyBufferSubData.xml b/upstream-man-pages/man4/glCopyBufferSubData.xml new file mode 100644 index 0000000..0db2f49 --- /dev/null +++ b/upstream-man-pages/man4/glCopyBufferSubData.xml @@ -0,0 +1,143 @@ + + + + + + + 2010 + Khronos Group + + + glCopyBufferSubData + 3G + + + glCopyBufferSubData + copy part of the data store of a buffer object to the data store of another buffer object + + C Specification + + + void glCopyBufferSubData + GLenum readtarget + GLenum writetarget + GLintptr readoffset + GLintptr writeoffset + GLsizeiptr size + + + + + Parameters + + + readtarget + + + Specifies the target from whose data store data should be read. + + + + + writetarget + + + Specifies the target to whose data store data should be written. + + + + + readoffset + + + Specifies the offset, in basic machine units, within the data store of readtarget from which data should be read. + + + + + writeoffset + + + Specifies the offset, in basic machine units, within the data store of writetarget to which data should be written. + + + + + size + + + Specifies the size, in basic machine units, of the data to be copied from readtarget to writetarget. + + + + + + Description + + glCopyBufferSubData copies part of the data store attached to readtarget to the + data store attached to writetarget. The number of basic machine units indicated by size + is copied from the source, at offset readoffset to the destination at writeoffset, + also in basic machine units. + + + readtarget and writetarget must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. Any of these targets may be used, + although the targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER are provided + specifically to allow copies between buffers without disturbing other GL state. + + + readoffset, writeoffset and size must all be greater than or equal to + zero. Furthermore, readoffset + size must not exceeed the size of the buffer + object bound to readtarget, and readoffset + size must not exceeed the + size of the buffer bound to writetarget. If the same buffer object is bound to both readtarget + and writetarget, then the ranges specified by readoffset, writeoffset + and size must not overlap. + + + Notes + + glCopyBufferSubData is available only if the GL version is 3.1 or greater. + + + Errors + + GL_INVALID_VALUE is generated if any of readoffset, writeoffset + or size is negative, if readoffset + size exceeds the + size of the buffer object bound to readtarget or if writeoffset + size + exceeds the size of the buffer object bound to writetarget. + + + GL_INVALID_VALUE is generated if the same buffer object is bound to both readtarget + and writetarget and the ranges [readoffset, readoffset + + size) and [writeoffset, writeoffset + size) + overlap. + + + GL_INVALID_OPERATION is generated if zero is bound to readtarget or writetarget. + + + GL_INVALID_OPERATION is generated if the buffer object bound to either readtarget or writetarget + is mapped. + + + See Also + + glGenBuffers, + glBindBuffer, + glBufferData, + glBufferSubData, + glGetBufferSubData + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glCopyImageSubData.xml b/upstream-man-pages/man4/glCopyImageSubData.xml new file mode 100644 index 0000000..6f434c6 --- /dev/null +++ b/upstream-man-pages/man4/glCopyImageSubData.xml @@ -0,0 +1,350 @@ + + + + + + + 2012 + Khronos Group + + + glCopyImageSubData + 3G + + + glCopyImageSubData + perform a raw data copy between two images + + C Specification + + + void glCopyImageSubData + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei srcWidth + GLsizei srcHeight + GLsizei srcDepth + + + + Parameters + + + srcName + + + The name of a texture or renderbuffer object from which to copy. + + + + + srcTarget + + + The target representing the namespace of the source name srcName. + + + + + srcLevel + + + The mipmap level to read from the source. + + + + + srcX + + + The X coordinate of the left edge of the souce region to copy. + + + + + srcY + + + The Y coordinate of the top edge of the souce region to copy. + + + + + srcZ + + + The Z coordinate of the near edge of the souce region to copy. + + + + + dstName + + + The name of a texture or renderbuffer object to which to copy. + + + + + dstTarget + + + The target representing the namespace of the destination name dstName. + + + + + dstX + + + The X coordinate of the left edge of the destination region. + + + + + dstY + + + The Y coordinate of the top edge of the destination region. + + + + + dstZ + + + The Z coordinate of the near edge of the destination region. + + + + + srcWidth + + + The width of the region to be copied. + + + + + srcHeight + + + The height of the region to be copied. + + + + + srcDepth + + + The depth of the region to be copied. + + + + + + Description + + glCopyImageSubData may be used to copy data from + one image (i.e. texture or renderbuffer) to another. glCopyImageSubData + does not perform general-purpose conversions + such as scaling, resizing, blending, color-space, or format + conversions. It should be considered to operate in a manner + similar to a CPU memcpy. CopyImageSubData can copy between + images with different internal formats, provided + the formats are compatible. + + + glCopyImageSubData also allows copying between certain + types of compressed and uncompressed internal formats. This copy does not perform on-the-fly compression + or decompression. When copying from an uncompressed internal format + to a compressed internal format, each texel of uncompressed data + becomes a single block of compressed data. When copying from a + compressed internal format to an uncompressed internal format, + a block of compressed data becomes a single texel of uncompressed + data. The texel size of the uncompressed format must be the same + size the block size of the compressed formats. Thus it is permitted + to copy between a 128-bit uncompressed format and a compressed + format which uses 8-bit 4x4 blocks, or between a 64-bit uncompressed + format and a compressed format which uses 4-bit 4x4 blocks. + + + The source object is identified by srcName and + srcTarget and the destination object is identified + by dstName and dstTarget. + The interpretation of the name depends on the value + of the corresponding target parameter. + If target is + GL_RENDERBUFFER, the name is interpreted as the name of a + renderbuffer object. If the target parameter is a texture target, + the name is interpreted as a texture object. All non-proxy + texture targets are accepted, with the exception of GL_TEXTURE_BUFFER + and the cubemap face selectors. + + + srcLevel and dstLevel identify the source and destination + level of detail. For textures, this must be a valid level of + detail in the texture object. For renderbuffers, this value must + be zero. + + + srcX, srcY, and srcZ specify the lower left texel + coordinates of a srcWidth-wide by srcHeight-high by + srcDepth-deep rectangular subregion of the source texel array. + Similarly, dstX, dstY and dstZ specify the coordinates of a subregion of the + destination texel array. The source and destination subregions + must be contained entirely within the specified level of the + corresponding image objects. + + + The dimensions are always specified in texels, even for compressed + texture formats. However, it should be noted that if only one of the + source and destination textures is compressed then the number of + texels touched in the compressed image will be a factor of the + block size larger than in the uncompressed image. + + + Slices of a GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAY + GL_TEXTURE_3D and faces of GL_TEXTURE_CUBE_MAP are all compatible provided + they share a compatible internal format, and multiple slices or faces + may be copied between these objects with a single call by specifying the + starting slice with srcZ and dstZ, and the number of slices to + be copied with srcDepth. Cubemap textures always have six faces + which are selected by a zero-based face index. + + + For the purposes of CopyImageSubData, two internal formats + are considered compatible if any of the following conditions are + met: + * the formats are the same, + * the formats are considered compatible according to the + compatibility rules used for texture views as defined in + section 3.9.X. In particular, if both internal formats are listed + in the same entry of Table 3.X.2, they are considered compatible, or + * one format is compressed and the other is uncompressed and + Table 4.X.1 lists the two formats in the same row. + If the formats are not compatible INVALID_OPERATION is generated. + +Sized Internal Formats + + + + + + + + Texel / Block Size + + + Uncompressed Internal Format + + + Compressed Internal Format(s) + + + + + + 64-bit + GL_RGBA32UI, GL_RGBA32I, GL_RGBA32F + GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, + GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, + GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2, + GL_COMPRESSED_RGBA_BPTC_UNORM, + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT + + + 128-bit + GL_RGBA16UI, + GL_RGBA16I, + GL_RGBA16F, + GL_RG32F, + GL_RG32UI, + GL_RG32I, + GL_RGBA16, + GL_RGBA16_SNORM + GL_COMPRESSED_RGB_S3TC_DXT1_EXT, + COMPRESSED_SRGB_S3TC_DXT1_EXT, + COMPRESSED_RGBA_S3TC_DXT1_EXT, + COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, + COMPRESSED_RED_RGTC1, + COMPRESSED_SIGNED_RED_RGTC1 + + + +
+
+ Errors + + GL_INVALID_OPERATION is generated if the texel size of + the uncompressed image is not equal to the block size of the + compressed image. + + + GL_INVALID_ENUM is generated if either target parameter is not GL_RENDERBUFFER, + a valid non-proxy texture target other than GL_TEXTURE_BUFFER, or is one + of the cubemap face selectors. + + + GL_INVALID_ENUM is generated if target does not match the type of the object. + + + GL_INVALID_OPERATION is generated if either object is a texture and the texture is + not complete. + + + GL_INVALID_OPERATION is generated if the source and + destination internal formats are not compatible, or if the number of samples do not match. + + + GL_INVALID_VALUE is generated if either name does not correspond to a + valid renderbuffer or texture object according to the corresponding + target parameter. + + + GL_INVALID_VALUE is generated if the specified level of either the source or destination is not + a valid level for the corresponding image. + + + GL_INVALID_VALUE is generated if the + dimensions of the either subregion exceeds the boundaries of the + corresponding image object, or if the image format is compressed + and the dimensions of the subregion fail to meet the alignment + constraints of the format. + + + Associated Gets + + glGet with argument GL_MAX_COMPUTE_WORK_GROUP_COUNT + + + See Also + + glDispatchComputeIndirect. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + +
diff --git a/upstream-man-pages/man4/glCopyTexImage1D.xml b/upstream-man-pages/man4/glCopyTexImage1D.xml new file mode 100644 index 0000000..462fafc --- /dev/null +++ b/upstream-man-pages/man4/glCopyTexImage1D.xml @@ -0,0 +1,307 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexImage1D + 3G + + + glCopyTexImage1D + copy pixels into a 1D texture image + + C Specification + + + void glCopyTexImage1D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + x + y + + + Specify the window coordinates of the left corner + of the row of pixels to be copied. + + + + + width + + + Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + The height of the texture image is 1. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + + Description + + glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. + + + The screen-aligned pixel row with left corner at + + + + x + y + + + and with a length of + + + + width + + + + 2 + + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. + + + The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + Pixel ordering is such that lower + x + screen coordinates correspond to + lower texture coordinates. + + + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. + + + When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. + + + Notes + + 1, 2, 3, and 4 are not accepted values for internalformat. + + + An image with 0 width indicates a NULL texture. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the allowable values. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalformat is not an allowable value. + + + GL_INVALID_VALUE is generated if width is less than 0 or greater than + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer value of n. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCopyTexImage2D.xml b/upstream-man-pages/man4/glCopyTexImage2D.xml new file mode 100644 index 0000000..17b5e00 --- /dev/null +++ b/upstream-man-pages/man4/glCopyTexImage2D.xml @@ -0,0 +1,360 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexImage2D + 3G + + + glCopyTexImage2D + copy pixels into a 2D texture image + + C Specification + + + void glCopyTexImage2D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalformat + + + Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer + n. + + + + + height + + + Specifies the height of the texture image. + Must be 0 or + + + + 2 + m + + + + + 2 + + + border + + + + + for some integer + m. + + + + + border + + + Specifies the width of the border. + Must be either 0 or 1. + + + + + + Description + + glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image + with pixels from the current + GL_READ_BUFFER. + + + The screen-aligned pixel rectangle with lower left corner at (x, + y) and with a width of + + + + width + + + + 2 + + + border + + + + + and a height of + + + + height + + + + 2 + + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. + + + The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + Pixel ordering is such that lower + x + and + y + screen coordinates correspond to + lower + s + and + t + texture coordinates. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. + + + Notes + + 1, 2, 3, and 4 are not accepted values for internalformat. + + + An image with height or width of 0 indicates a NULL texture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than + GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or depth cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some integer + k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_VALUE is generated if internalformat is not an + accepted format. + + + GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCopyTexSubImage1D.xml b/upstream-man-pages/man4/glCopyTexSubImage1D.xml new file mode 100644 index 0000000..18671d6 --- /dev/null +++ b/upstream-man-pages/man4/glCopyTexSubImage1D.xml @@ -0,0 +1,249 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage1D + 3G + + + glCopyTexSubImage1D + copy a one-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies the texel offset within the texture array. + + + + + x + y + + + Specify the window coordinates of the left corner + of the row of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + + Description + + glCopyTexSubImage1D replaces a portion of a one-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage1D). + + + The screen-aligned pixel row with left corner at (x,\ y), and with + length width replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive. The destination in the texture array may not + include any texels outside the texture array as it was + originally specified. + + + The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + It is not an error to specify a subtexture with zero width, but + such a specification has no effect. + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + The glPixelStore mode affects texture images. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_1D. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D or glCopyTexImage1D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. + + + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glReadBuffer, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCopyTexSubImage2D.xml b/upstream-man-pages/man4/glCopyTexSubImage2D.xml new file mode 100644 index 0000000..1e6419c --- /dev/null +++ b/upstream-man-pages/man4/glCopyTexSubImage2D.xml @@ -0,0 +1,345 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage2D + 3G + + + glCopyTexSubImage2D + copy a two-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_1D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + + Description + + glCopyTexSubImage2D replaces a rectangular portion of a two-dimensional texture image, + cube-map texture image or a linear portion of a number of slices of a one-dimensional array texture + with pixels from the current GL_READ_BUFFER + (rather than from main memory, as is the case for glTexSubImage2D). + + + The screen-aligned pixel rectangle with lower left corner at + + + + x + y + + + and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at the mipmap level specified by level. + + + The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + When target is GL_TEXTURE_1D_ARRAY + then the y coordinate and height are treated as the start slice and number + of slices to modify. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + height, or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glPixelStore modes affect texture images. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_1D_ARRAY. + + + GL_INVALID_OPERATION is generated if the texture array has not been + defined by a previous glTexImage2D or glCopyTexImage2D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + and + h + include twice the border width. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage3D, + glPixelStore, + glReadBuffer, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2012 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCopyTexSubImage3D.xml b/upstream-man-pages/man4/glCopyTexSubImage3D.xml new file mode 100644 index 0000000..6567535 --- /dev/null +++ b/upstream-man-pages/man4/glCopyTexSubImage3D.xml @@ -0,0 +1,362 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCopyTexSubImage3D + 3G + + + glCopyTexSubImage3D + copy a three-dimensional texture subimage + + C Specification + + + void glCopyTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + zoffset + + + Specifies a texel offset in the z direction within the texture array. + + + + + x + y + + + Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + + Description + + glCopyTexSubImage3D replaces a rectangular portion of a three-dimensional + or two-dimensional array texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage3D). + + + The screen-aligned pixel rectangle with lower left corner at + (x, y) and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at z index zoffset and at the mipmap level specified by level. + + + The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. + + + The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. + + + No change is made to the internalformat, width, + height, depth, or border parameters of the specified texture + array or to texel values outside the specified subregion. + + + Notes + + glPixelStore modes affect texture images. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + + + max + + + + , + where + max + is the returned value of GL_MAX_3D_TEXTURE_SIZE if target + is GL_TEXTURE_3D or the returned value of GL_MAX_ARRAY_TEXTURE_LAYERS + if target is GL_TEXTURE_2D_ARRAY. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + 1 + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. + + + Associated Gets + + glGetTexImage + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glPixelStore, + glReadBuffer, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glCreateProgram.xml b/upstream-man-pages/man4/glCreateProgram.xml new file mode 100644 index 0000000..43477a4 --- /dev/null +++ b/upstream-man-pages/man4/glCreateProgram.xml @@ -0,0 +1,118 @@ + + + + + glCreateProgram + 3G + + + glCreateProgram + Creates a program object + + C Specification + + + GLuint glCreateProgram + void + + + + Description + glCreateProgram creates an empty + program object and returns a non-zero value by which it can be + referenced. A program object is an object to which shader + objects can be attached. This provides a mechanism to specify + the shader objects that will be linked to create a program. It + also provides a means for checking the compatibility of the + shaders that will be used to create a program (for instance, + checking the compatibility between a vertex shader and a + fragment shader). When no longer needed as part of a program + object, shader objects can be detached. + + One or more executables are created in a program object by + successfully attaching shader objects to it with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + These executables are made part of current state when + glUseProgram + is called. Program objects can be deleted by calling + glDeleteProgram. + The memory associated with the program object will be deleted + when it is no longer part of current rendering state for any + context. + + Notes + Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + Errors + This function returns 0 if an error occurs creating the program object. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with a valid program object and the index of an active attribute + variable + + glGetActiveUniform + with a valid program object and the index of an active uniform + variable + + glGetAttachedShaders + with a valid program object + + glGetAttribLocation + with a valid program object and the name of an attribute + variable + + glGetProgram + with a valid program object and the parameter to be queried + + glGetProgramInfoLog + with a valid program object + + glGetUniform + with a valid program object and the location of a uniform + variable + + glGetUniformLocation + with a valid program object and the name of a uniform + variable + + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCreateShader, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glCreateShader.xml b/upstream-man-pages/man4/glCreateShader.xml new file mode 100644 index 0000000..b41d324 --- /dev/null +++ b/upstream-man-pages/man4/glCreateShader.xml @@ -0,0 +1,110 @@ + + + + + glCreateShader + 3G + + + glCreateShader + Creates a shader object + + C Specification + + + GLuint glCreateShader + GLenum shaderType + + + + Parameters + + + shaderType + + Specifies the type of shader to be created. + Must be one of GL_VERTEX_SHADER, + GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, + GL_GEOMETRY_SHADER, + or GL_FRAGMENT_SHADER. + + + + + Description + glCreateShader creates an empty + shader object and returns a non-zero value by which it can be + referenced. A shader object is used to maintain the source code + strings that define a shader. shaderType + indicates the type of shader to be created. Five types of shader + are supported. A shader of type + GL_VERTEX_SHADER is a shader that is + intended to run on the programmable vertex processor. + A shader of type GL_TESS_CONTROL_SHADER is a shader that + is intended to run on the programmable tessellation processor in the control stage. + A shader of type GL_TESS_EVALUATION_SHADER is a shader that + is intended to run on the programmable tessellation processor in the evaluation stage. + A shader of type + GL_GEOMETRY_SHADER is a shader that is intended to + run on the programmable geometry processor. A shader of + type GL_FRAGMENT_SHADER is a shader that is + intended to run on the programmable fragment processor. + + When created, a shader object's + GL_SHADER_TYPE parameter is set to either + GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER + or GL_FRAGMENT_SHADER, depending on the value + of shaderType. + + Notes + Like buffer and texture objects, the name space for + shader objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + Errors + This function returns 0 if an error occurs creating the + shader object. + + GL_INVALID_ENUM is generated if + shaderType is not an accepted value. + + + Associated Gets + glGetShader + with a valid shader object and the parameter to be queried + + glGetShaderInfoLog + with a valid shader object + + glGetShaderSource + with a valid shader object + + glIsShader + + See Also + glAttachShader, + glCompileShader, + glDeleteShader, + glDetachShader, + glShaderSource + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glCreateShaderProgram.xml b/upstream-man-pages/man4/glCreateShaderProgram.xml new file mode 100644 index 0000000..9140be9 --- /dev/null +++ b/upstream-man-pages/man4/glCreateShaderProgram.xml @@ -0,0 +1,124 @@ + + + + + + + 2010 + Khronos Group + + + glCreateShaderProgram + 3G + + + glCreateShaderProgramv + create a stand-alone program from an array of null-terminated source code strings + + C Specification + + + GLuint glCreateShaderProgramv + GLenum type + GLsizei count + const char **strings + + + + Parameters + + + type + + + Specifies the type of shader to create. + + + + + count + + + Specifies the number of source code strings in the array strings. + + + + + strings + + + Specifies the address of an array of pointers to source code strings from which to create the program object. + + + + + + Description + + glCreateShaderProgram creates a program object containing compiled and linked + shaders for a single stage specified by type. strings + refers to an array of count strings from which to create the shader executables. + + + glCreateShaderProgram is equivalent (assuming no errors are generated) to: + + + + The program object created by glCreateShaderProgram has its GL_PROGRAM_SEPARABLE + status set to GL_TRUE. + + + Errors + + GL_INVALID_ENUM is generated if if type is not + an accepted shader type. + + + GL_INVALID_VALUE is generated if count is + negative. + + + Other errors are generated if the supplied shader code fails to compile + and link, as described for the commands in the pseudocode sequence above, + but all such errors are generated without any side effects of executing those + commands. + + + See Also + + glCreateShader, + glCreateProgram, + glCompileShader, + glLinkProgram + + + Copyright + + Copyright 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glCullFace.xml b/upstream-man-pages/man4/glCullFace.xml new file mode 100644 index 0000000..40b71f5 --- /dev/null +++ b/upstream-man-pages/man4/glCullFace.xml @@ -0,0 +1,94 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glCullFace + 3G + + + glCullFace + specify whether front- or back-facing facets can be culled + + C Specification + + + void glCullFace + GLenum mode + + + + Parameters + + + mode + + + Specifies whether front- or back-facing facets are candidates for culling. + Symbolic constants + GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. + The initial value is GL_BACK. + + + + + + Description + + glCullFace specifies whether front- or back-facing facets are culled + (as specified by mode) when facet culling is enabled. Facet + culling is initially disabled. + To enable and disable facet culling, call the + glEnable and glDisable commands + with the argument GL_CULL_FACE. + Facets include triangles, + quadrilaterals, + polygons, and + rectangles. + + + glFrontFace specifies which of the clockwise and counterclockwise facets + are front-facing and back-facing. + See glFrontFace. + + + Notes + + If mode is GL_FRONT_AND_BACK, no facets are drawn, but other + primitives such as points and lines are drawn. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + Associated Gets + + glIsEnabled with argument GL_CULL_FACE + + + glGet with argument GL_CULL_FACE_MODE + + + See Also + + glEnable, + glFrontFace + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDebugMessageCallback.xml b/upstream-man-pages/man4/glDebugMessageCallback.xml new file mode 100644 index 0000000..606b79c --- /dev/null +++ b/upstream-man-pages/man4/glDebugMessageCallback.xml @@ -0,0 +1,97 @@ + + + + + + + 2012 + Khronos Group + + + glDebugMessageCallback + 3G + + + glDebugMessageCallback + specify a callback to receive debugging messages from the GL + + C Specification + + + void glDebugMessageCallback + DEBUGPROC callback + void * userParam + + + + Parameters + + + callback + + + The address of a callback function that will be called when a debug message is generated. + + + + + userParam + + + A user supplied pointer that will be passed on each invocation of callback. + + + + + + Description + + glDebugMessageInsert sets the current debug output callback function to + the function whose address is given in callback. The callback function + should have the following prototype (in C), or be otherwise compatible with such a prototype: + + + + This function is defined to have the same calling convention as the GL API functions. In + most cases this is defined as APIENTRY, although it will vary depending + on platform, language and compiler. + + + Each time a debug message is generated the debug callback function will be invoked + with source, type, id, and + severity associated with the message, and length set to + the length of debug message whose character string is in the array pointed to by message + userParam will be set to the value passed in the + userParam parameter to the most recent call to glDebugMessageInsert. + + + Notes + + When the GL is in use remotely, the server may not be able to call functions in the client's address space. + In such cases, the callback function may not be invoked and the user should retrieve debug messages from + the context's debug message log by calling glGetDebugMessageLog. + + + See Also + + glDebugMessageControl, + glDebugMessageInsert, + glGetDebugMessageLog. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDebugMessageControl.xml b/upstream-man-pages/man4/glDebugMessageControl.xml new file mode 100644 index 0000000..e6370b3 --- /dev/null +++ b/upstream-man-pages/man4/glDebugMessageControl.xml @@ -0,0 +1,160 @@ + + + + + + + 2012 + Khronos Group + + + glDebugMessageControl + 3G + + + glDebugMessageControl + control the reporting of debug messages in a debug context + + C Specification + + + void glDebugMessageControl + GLenum source + GLenum type + GLenum severity + GLsizei count + const GLuint *ids + GLboolean enabled + + + + Parameters + + + source + + + The source of debug messages to enable or disable. + + + + + type + + + The type of debug messages to enable or disable. + + + + + severity + + + The severity of debug messages to enable or disable. + + + + + count + + + The length of the array ids. + + + + + ids + + + The address of an array of unsigned integers contianing the ids of the messages to enable or disable. + + + + + enabled + + + A Boolean flag determining whether the selected messages should be enabled or disabled. + + + + + + Description + + glDebugMessageControl controls the reporting of debug messages generated by a debug + context. The parameters source, type and severity + form a filter to select messages from the pool of potential messages generated by the GL. + + + source may be GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_WINDOW_SYSTEM_, + GL_DEBUG_SOURCE_SHADER_COMPILER, GL_DEBUG_SOURCE_THIRD_PARTY, + GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_SOURCE_OTHER to select messages generated by + usage of the GL API, the window system, the shader compiler, third party tools or libraries, explicitly by the application + or by some other source, respectively. It may also take the value GL_DONT_CARE. If source + is not GL_DONT_CARE then only messages whose source matches source will be referenced. + + + type may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, + GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_OTHER to indicate the type of messages describing + GL errors, attempted use of deprecated features, triggering of undefined behavior, portability issues, performance notifications and other + types of messages. It may also take the value GL_DONT_CARE. If type is not GL_DONT_CARE + then only messages whose type matches type will be referenced. + + + severity may be one of GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, + or GL_DEBUG_SEVERITY_HIGH to select messages of low, medium or high severity messages. It may also take the + value GL_DONT_CARE. If severity is not GL_DONT_CARE then only + messages whose severity matches severity will be referenced. + + + ids contains a list of count message identifiers to select specific messages from the pool + of available messages. If count is zero then the value of ids is ignored. Otherwise, + only messages appearing in this list are selected. In this case, source and type + may not be GL_DONT_CARE and severity must be GL_DONT_CARE. + + + If enabled is GL_TRUE then messages that match the filter formed by + source, type, severity and ids + are enabled. Otherwise, those messages are disabled. + + + Notes + + Although debug messages may be enabled in a non-debug context, the quantity and detail of such messages may be substantially + inferior to those in a debug context. In particular, a valid implementation of the debug message queue in a non-debug context + may produce no messages at all. + + + Errors + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_ENUM is generated if any of source, type + or severity is not one of the accepted interface types. + + + GL_INVALID_OPERATION is generated if count is non-zero + and either source or type is GL_DONT_CARE + or if severity is not GL_DONT_CARE. + + + See Also + + glDebugMessageInsert, + glDebugMessageCallback, + glGetDebugMessageLog. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDebugMessageInsert.xml b/upstream-man-pages/man4/glDebugMessageInsert.xml new file mode 100644 index 0000000..05b091e --- /dev/null +++ b/upstream-man-pages/man4/glDebugMessageInsert.xml @@ -0,0 +1,132 @@ + + + + + + + 2012 + Khronos Group + + + glDebugMessageInsert + 3G + + + glDebugMessageInsert + inject an application-supplied message into the debug message queue + + C Specification + + + void glDebugMessageInsert + GLenum source + GLenum type + GLuint id + GLenum severity + GLsizei length + const char *message + + + + Parameters + + + source + + + The source of the debug message to insert. + + + + + type + + + The type of the debug message insert. + + + + + id + + + The user-supplied identifier of the message to insert. + + + + + severity + + + The severity of the debug messages to insert. + + + + + length + + + The length string contained in the character array whose address is given by message. + + + + + message + + + The address of a character array containing the message to insert. + + + + + + Description + + glDebugMessageInsert inserts a user-supplied message into the + debug output queue. source specifies the source that will be + used to classify the message and must be GL_DEBUG_SOURCE_APPLICATION + or GL_DEBUG_SOURCE_THIRD_PARTY. All other sources are reserved for + use by the GL implementation. type indicates the type of the message + to be inserted and may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, + GL_DEBUG_TYPE_PERFORMANCE, or GL_DEBUG_TYPE_OTHER. + severity indicates the severity of the message and may be GL_DEBUG_SEVERITY_LOW, + GL_DEBUG_SEVERITY_MEDIUM, or GL_DEBUG_SEVERITY_HIGH. + id is available for application defined use and may be any value. This value + will be recorded and used to identify the message. + + + length contains a count of the characters in the character array + whose address is given in message. If length + is negative then message is treated as a null-terminated string. + The length of the message, whether specified explicitly or implicitly, must be less than + or equal to the implementation defined constant GL_MAX_DEBUG_MESSAGE_LENGTH. + + + Errors + + GL_INVALID_ENUM is generated if any of source, type + or severity is not one of the accepted interface types. + + + GL_INVALID_VALUE is generated if the length of the message is greater than the + value of GL_MAX_DEBUG_MESSAGE_LENGTH. + + + See Also + + glDebugMessageControl, + glDebugMessageCallback, + glGetDebugMessageLog. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteBuffers.xml b/upstream-man-pages/man4/glDeleteBuffers.xml new file mode 100644 index 0000000..1a5a12b --- /dev/null +++ b/upstream-man-pages/man4/glDeleteBuffers.xml @@ -0,0 +1,86 @@ + + + + + + + 2005 + Sams Publishing + + + glDeleteBuffers + 3G + + + glDeleteBuffers + delete named buffer objects + + C Specification + + + void glDeleteBuffers + GLsizei n + const GLuint * buffers + + + + Parameters + + + n + + + Specifies the number of buffer objects to be deleted. + + + + + buffers + + + Specifies an array of buffer objects to be deleted. + + + + + + Description + + glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. + After a buffer object is deleted, it has no contents, + and its name is free for reuse (for example by glGenBuffers). + If a buffer object that is currently bound is deleted, the binding reverts + to 0 (the absence of any buffer object). + + + glDeleteBuffers silently ignores 0's and names that do not correspond to + existing buffer objects. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsBuffer + + + See Also + + glBindBuffer, + glGenBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteFramebuffers.xml b/upstream-man-pages/man4/glDeleteFramebuffers.xml new file mode 100644 index 0000000..42a1f96 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteFramebuffers.xml @@ -0,0 +1,79 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteFramebuffers + 3G + + + glDeleteFramebuffers + delete framebuffer objects + + C Specification + + + void glDeleteFramebuffers + GLsizei n + GLuint *framebuffers + + + + + Parameters + + + n + + + Specifies the number of framebuffer objects to be deleted. + + + + + framebuffers + + + A pointer to an array containing n framebuffer objects to be deleted. + + + + + + Description + + glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in + the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again + unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER + or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer + had been executed with the corresponding target and framebuffer zero. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glCheckFramebufferStatus + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteProgram.xml b/upstream-man-pages/man4/glDeleteProgram.xml new file mode 100644 index 0000000..b67cbe1 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteProgram.xml @@ -0,0 +1,86 @@ + + + + + glDeleteProgram + 3G + + + glDeleteProgram + Deletes a program object + + C Specification + + + void glDeleteProgram + GLuint program + + + + Parameters + + + program + + Specifies the program object to be + deleted. + + + + + Description + glDeleteProgram frees the memory and + invalidates the name associated with the program object + specified by program. This command + effectively undoes the effects of a call to + glCreateProgram. + + If a program object is in use as part of current rendering + state, it will be flagged for deletion, but it will not be + deleted until it is no longer part of current state for any + rendering context. If a program object to be deleted has shader + objects attached to it, those shader objects will be + automatically detached but not deleted unless they have already + been flagged for deletion by a previous call to + glDeleteShader. + A value of 0 for program will be silently + ignored. + + To determine whether a program object has been flagged for + deletion, call + glGetProgram + with arguments program and + GL_DELETE_STATUS. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + + Associated Gets + glGet + with argument GL_CURRENT_PROGRAM + + glGetProgram + with arguments program and + GL_DELETE_STATUS + + glIsProgram + + See Also + glCreateShader, + glDetachShader, + glUseProgram + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteProgramPipelines.xml b/upstream-man-pages/man4/glDeleteProgramPipelines.xml new file mode 100644 index 0000000..89ebb07 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteProgramPipelines.xml @@ -0,0 +1,80 @@ + + + + + + + 2010 + Khronos Group. + + + glDeleteProgramPipelines + 3G + + + glDeleteProgramPipelines + delete program pipeline objects + + C Specification + + + void glDeleteProgramPipelines + GLsizei n + const GLuint *pipelines + + + + + Parameters + + + n + + + Specifies the number of program pipeline objects to delete. + + + + + pipelines + + + Specifies an array of names of program pipeline objects to delete. + + + + + + Description + + glDeleteProgramPipelines deletes the n program pipeline objects + whose names are stored in the array pipelines. Unused names in pipelines are + ignored, as is the name zero. After a program pipeline object is deleted, its name is again unused and it + has no contents. If program pipeline object that is currently bound is deleted, the binding for that object reverts to + zero and no program pipeline object becomes current. + + + Associated Gets + + glGet with argument GL_PROGRAM_PIPELINE_BINDING + + + See Also + + glGenProgramPipelines, + glBindProgramPipeline, + glIsProgramPipeline, + glUseShaderPrograms, + glUseProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteQueries.xml b/upstream-man-pages/man4/glDeleteQueries.xml new file mode 100644 index 0000000..c3f3519 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteQueries.xml @@ -0,0 +1,86 @@ + + + + + + + 2005 + Sams Publishing + + + glDeleteQueries + 3G + + + glDeleteQueries + delete named query objects + + C Specification + + + void glDeleteQueries + GLsizei n + const GLuint * ids + + + + Parameters + + + n + + + Specifies the number of query objects to be deleted. + + + + + ids + + + Specifies an array of query objects to be deleted. + + + + + + Description + + glDeleteQueries deletes n query objects named by the elements of the array ids. + After a query object is deleted, it has no contents, + and its name is free for reuse (for example by glGenQueries). + + + glDeleteQueries silently ignores 0's and names that do not correspond to + existing query objects. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsQuery + + + See Also + + glBeginQuery, + glEndQuery, + glGenQueries, + glGetQueryiv, + glGetQueryObject + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteRenderbuffers.xml b/upstream-man-pages/man4/glDeleteRenderbuffers.xml new file mode 100644 index 0000000..9202ae9 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteRenderbuffers.xml @@ -0,0 +1,87 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteRenderbuffers + 3G + + + glDeleteRenderbuffers + delete renderbuffer objects + + C Specification + + + void glDeleteRenderbuffers + GLsizei n + GLuint *renderbuffers + + + + + Parameters + + + n + + + Specifies the number of renderbuffer objects to be deleted. + + + + + renderbuffers + + + A pointer to an array containing n renderbuffer objects to be deleted. + + + + + + Description + + glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in + the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again + unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER + is deleted, it is as though glBindRenderbuffer + had been executed with a target of GL_RENDERBUFFER and a name of zero. + + + If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if + glFramebufferRenderbuffer had been called, with a renderbuffer + of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, + this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer + image is specifically not detached from any non-bound framebuffers. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glGenRenderbuffers, + glFramebufferRenderbuffer, + glRenderbufferStorage, + glRenderbufferStorageMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteSamplers.xml b/upstream-man-pages/man4/glDeleteSamplers.xml new file mode 100644 index 0000000..4df6209 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteSamplers.xml @@ -0,0 +1,87 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteSamplers + 3G + + + glDeleteSamplers + delete named sampler objects + + C Specification + + + void glDeleteSamplers + GLsizei n + const GLuint * samplers + + + + Parameters + + + n + + + Specifies the number of sampler objects to be deleted. + + + + + samplers + + + Specifies an array of sampler objects to be deleted. + + + + + + Description + + glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. + After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as + though glBindSampler is called with unit set to the unit the sampler is bound to and + sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. + + + Notes + + glDeleteSamplers is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsSampler + + + See Also + + glGenSamplers, + glBindSampler, + glDeleteSamplers, + glIsSampler + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteShader.xml b/upstream-man-pages/man4/glDeleteShader.xml new file mode 100644 index 0000000..dae7c42 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteShader.xml @@ -0,0 +1,82 @@ + + + + + glDeleteShader + 3G + + + glDeleteShader + Deletes a shader object + + C Specification + + + void glDeleteShader + GLuint shader + + + + Parameters + + + shader + + Specifies the shader object to be deleted. + + + + + Description + glDeleteShader frees the memory and + invalidates the name associated with the shader object specified + by shader. This command effectively + undoes the effects of a call to + glCreateShader. + + If a shader object to be deleted is attached to a program + object, it will be flagged for deletion, but it will not be + deleted until it is no longer attached to any program object, + for any rendering context (i.e., it must be detached from + wherever it was attached before it will be deleted). A value of + 0 for shader will be silently + ignored. + + To determine whether an object has been flagged for + deletion, call + glGetShader + with arguments shader and + GL_DELETE_STATUS. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + + Associated Gets + glGetAttachedShaders + with the program object to be queried + + glGetShader + with arguments shader and + GL_DELETE_STATUS + + glIsShader + + See Also + glCreateProgram, + glCreateShader, + glDetachShader, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteSync.xml b/upstream-man-pages/man4/glDeleteSync.xml new file mode 100644 index 0000000..0b99a5d --- /dev/null +++ b/upstream-man-pages/man4/glDeleteSync.xml @@ -0,0 +1,81 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteSync + 3G + + + glDeleteSync + delete a sync object + + C Specification + + + void glDeleteSync + GLsync sync + + + + + Parameters + + + sync + + + The sync object to be deleted. + + + + + + Description + + glDeleteSync deletes the sync object specified by sync. If the fence command + corresponding to the specified sync object has completed, or if no glWaitSync + or glClientWaitSync commands are blocking on sync, + the object is deleted immediately. Otherwise, sync is flagged for deletion and will be deleted when + it is no longer associated with any fence command and is no longer blocking any glWaitSync + or glClientWaitSync command. In either case, after + glDeleteSync returns, the name sync is invalid and can no longer be used to + refer to the sync object. + + + glDeleteSync will silently ignore a sync value of zero. + + + Notes + + glSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. + + + Errors + + GL_INVALID_VALUE is generated if sync is neither zero or the name of a sync object. + + + See Also + + glFenceSync, + glWaitSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteTextures.xml b/upstream-man-pages/man4/glDeleteTextures.xml new file mode 100644 index 0000000..3448f2d --- /dev/null +++ b/upstream-man-pages/man4/glDeleteTextures.xml @@ -0,0 +1,92 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDeleteTextures + 3G + + + glDeleteTextures + delete named textures + + C Specification + + + void glDeleteTextures + GLsizei n + const GLuint * textures + + + + Parameters + + + n + + + Specifies the number of textures to be deleted. + + + + + textures + + + Specifies an array of textures to be deleted. + + + + + + Description + + glDeleteTextures deletes n textures named by the elements of the array textures. + After a texture is deleted, it has no contents or dimensionality, + and its name is free for reuse (for example by glGenTextures). + If a texture that is currently bound is deleted, the binding reverts + to 0 (the default texture). + + + glDeleteTextures silently ignores 0's and names that do not correspond to + existing textures. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsTexture + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glGenTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDeleteTransformFeedbacks.xml b/upstream-man-pages/man4/glDeleteTransformFeedbacks.xml new file mode 100644 index 0000000..a3e4be7 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteTransformFeedbacks.xml @@ -0,0 +1,82 @@ + + + + + + + 2010 + Khronos Group. + + + glDeleteTransformFeedbacks + 3G + + + glDeleteTransformFeedbacks + delete transform feedback objects + + C Specification + + + void glDeleteTransformFeedbacks + GLsizei n + const GLuint *ids + + + + + Parameters + + + n + + + Specifies the number of transform feedback objects to delete. + + + + + ids + + + Specifies an array of names of transform feedback objects to delete. + + + + + + Description + + glDeleteTransformFeedbacks deletes the n transform feedback objects + whose names are stored in the array ids. Unused names in ids are + ignored, as is the name zero. After a transform feedback object is deleted, its name is again unused and it + has no contents. If an active transform feedback object is deleted, its name immediately becomes unused, but + the underlying object is not deleted until it is no longer active. + + + Associated Gets + + glGet with argument GL_TRANSFORM_FEEDBACK_BINDING + + + See Also + + glGenTransformFeedbacks, + glBindTransformFeedback, + glIsTransformFeedback, + glBeginTransformFeedback, + glPauseTransformFeedback, + glResumeTransformFeedback, + glEndTransformFeedback + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDeleteVertexArrays.xml b/upstream-man-pages/man4/glDeleteVertexArrays.xml new file mode 100644 index 0000000..557f9e1 --- /dev/null +++ b/upstream-man-pages/man4/glDeleteVertexArrays.xml @@ -0,0 +1,77 @@ + + + + + + + 2010 + Khronos Group + + + glDeleteVertexArrays + 3G + + + glDeleteVertexArrays + delete vertex array objects + + C Specification + + + void glDeleteVertexArrays + GLsizei n + const GLuint *arrays + + + + + Parameters + + + n + + + Specifies the number of vertex array objects to be deleted. + + + + + arrays + + + Specifies the address of an array containing the n names of the objects to be deleted. + + + + + + Description + + glDeleteVertexArrays deletes n vertex array objects whose names are stored in the + array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is + again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero + and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glGenVertexArrays, + glIsVertexArray, + glBindVertexArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDepthFunc.xml b/upstream-man-pages/man4/glDepthFunc.xml new file mode 100644 index 0000000..51900ad --- /dev/null +++ b/upstream-man-pages/man4/glDepthFunc.xml @@ -0,0 +1,170 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthFunc + 3G + + + glDepthFunc + specify the value used for depth buffer comparisons + + C Specification + + + void glDepthFunc + GLenum func + + + + Parameters + + + func + + + Specifies the depth comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. + The initial value is GL_LESS. + + + + + + Description + + glDepthFunc specifies the function used to compare each incoming pixel depth value + with the depth value present in the depth buffer. + The comparison is performed only if depth testing is enabled. + (See glEnable and glDisable of GL_DEPTH_TEST.) + + + func specifies the conditions under which the pixel will be drawn. + The comparison functions are as follows: + + + + GL_NEVER + + + Never passes. + + + + + GL_LESS + + + Passes if the incoming depth value is less than the stored depth value. + + + + + GL_EQUAL + + + Passes if the incoming depth value is equal to the stored depth value. + + + + + GL_LEQUAL + + + Passes if the incoming depth value is less than or equal to + the stored depth value. + + + + + GL_GREATER + + + Passes if the incoming depth value is greater than the stored depth value. + + + + + GL_NOTEQUAL + + + Passes if the incoming depth value is not equal to the stored depth value. + + + + + GL_GEQUAL + + + Passes if the incoming depth value is greater than or equal to + the stored depth value. + + + + + GL_ALWAYS + + + Always passes. + + + + + + The initial value of func is GL_LESS. + Initially, depth testing is disabled. If depth testing is disabled or if no + depth buffer exists, it is as if the depth test always passes. + + + Notes + + Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS. + + + Errors + + GL_INVALID_ENUM is generated if func is not an accepted value. + + + Associated Gets + + glGet with argument GL_DEPTH_FUNC + + + glIsEnabled with argument GL_DEPTH_TEST + + + See Also + + glDepthRange, + glEnable, + glPolygonOffset + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDepthMask.xml b/upstream-man-pages/man4/glDepthMask.xml new file mode 100644 index 0000000..3cccaf1 --- /dev/null +++ b/upstream-man-pages/man4/glDepthMask.xml @@ -0,0 +1,84 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthMask + 3G + + + glDepthMask + enable or disable writing into the depth buffer + + C Specification + + + void glDepthMask + GLboolean flag + + + + Parameters + + + flag + + + Specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. + + + + + + Description + + glDepthMask specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. + + + Associated Gets + + glGet with argument GL_DEPTH_WRITEMASK + + + Notes + + Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS (see glDepthFunc). + + + See Also + + glColorMask, + glDepthFunc, + glDepthRange, + glStencilMask + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. + Copyright 2012 + Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDepthRange.xml b/upstream-man-pages/man4/glDepthRange.xml new file mode 100644 index 0000000..4544eff --- /dev/null +++ b/upstream-man-pages/man4/glDepthRange.xml @@ -0,0 +1,137 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDepthRange + 3G + + + glDepthRange + specify mapping of depth values from normalized device coordinates to window coordinates + + C Specification + + + void glDepthRange + GLdouble nearVal + GLdouble farVal + + + void glDepthRangef + GLfloat nearVal + GLfloat farVal + + + + + Parameters + + + nearVal + + + Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. + + + + + farVal + + + Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. + + + + + + Description + + After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + glDepthRange specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + Thus, + the values accepted by glDepthRange are both clamped to this range + before they are accepted. + + + The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. + + + Notes + + It is not necessary that nearVal be less than farVal. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. + + + The type of the nearVal and + farVal parameters was changed from + GLclampf to GLfloat for glDepthRangef + and from GLclampd to GLdouble for + glDepthRange. This change is + transparent to user code and is described in detail on the + removedTypes + page. + + + Associated Gets + + glGet with argument GL_DEPTH_RANGE + + + See Also + + glDepthFunc, + glPolygonOffset, + glViewport, + removedTypes + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDepthRangeArray.xml b/upstream-man-pages/man4/glDepthRangeArray.xml new file mode 100644 index 0000000..53db962 --- /dev/null +++ b/upstream-man-pages/man4/glDepthRangeArray.xml @@ -0,0 +1,162 @@ + + + + + + + 2010 + Khronos Group + + + glDepthRangeArray + 3G + + + glDepthRangeArray + specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports + + C Specification + + + void glDepthRangeArrayv + GLuint first + GLsizei count + const GLdouble *v + + + + + Parameters + + + first + + + Specifies the index of the first viewport whose depth range to update. + + + + + count + + + Specifies the number of viewports whose depth range to update. + + + + + v + + + Specifies the address of an array containing the near and far values for the + depth range of each modified viewport. + + + + + + Description + + After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + Each viewport has an independent depth range specified as a linear mapping of the normalized + depth coordinates in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + glDepthRangeArray specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates for each viewport in the range [first, + first + count). + Thus, + the values accepted by glDepthRangeArray are both clamped to this range + before they are accepted. + + + The first parameter specifies the index of the first viewport whose depth + range to modify and must be less than the value of GL_MAX_VIEWPORTS. + count specifies the number of viewports whose depth range to modify. + first + count must be less than or equal to + the value of GL_MAX_VIEWPORTS. v specifies the address of an + array of pairs of double precision floating point values representing the near and far values of the + depth range for each viewport, in that order. + + + The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. + + + Notes + + It is not necessary that the near plane distance be less than the far plane distance. + Reverse mappings such as + + + + near + = + 1 + + , + and + + + + far + = + 0 + + + are acceptable. + + + The type of the v parameter was + changed from GLclampd to GLdouble. This change is + transparent to user code and is described in detail on the + removedTypes + page. + + + Errors + + GL_INVALID_VALUE is generated if first is greater than or equal to + the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if first + count + is greater than or equal to the value of GL_MAX_VIEWPORTS. + + + Associated Gets + + glGet with argument GL_DEPTH_RANGE + + + See Also + + glDepthFunc, + glDepthRange, + glDepthRangeIndexed, + glPolygonOffset, + glViewportArray, + glViewport, + removedTypes + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDepthRangeIndexed.xml b/upstream-man-pages/man4/glDepthRangeIndexed.xml new file mode 100644 index 0000000..291b763 --- /dev/null +++ b/upstream-man-pages/man4/glDepthRangeIndexed.xml @@ -0,0 +1,156 @@ + + + + + + + 2010 + Khronos Group + + + glDepthRangeIndexed + 3G + + + glDepthRangeIndexed + specify mapping of depth values from normalized device coordinates to window coordinates for a specified viewport + + C Specification + + + void glDepthRangeIndexed + GLuint index + GLdouble nearVal + GLdouble farVal + + + + + Parameters + + + index + + + Specifies the index of the viewport whose depth range to update. + + + + + nearVal + + + Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. + + + + + farVal + + + Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. + + + + + + Description + + After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + Each viewport has an independent depth range specified as a linear mapping of the normalized + depth coordinates in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + glDepthRangeIndexed specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates for a specified viewport. + Thus, + the values accepted by glDepthRangeIndexed are both clamped to this range + before they are accepted. + + + The index parameter specifies the index of first viewport whose depth + range to modify and must be less than the value of GL_MAX_VIEWPORTS. + nearVal and farVal specify near and far values of the + depth range for the specified viewport, respectively. + + + The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. + + + Notes + + It is not necessary that the near plane distance be less than the far plane distance. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. + + + The type of the nearVal and + farVal parameters was changed from + GLclampd to GLdouble. This change is transparent to user + code and is described in detail on the + removedTypes + page. + + + Errors + + GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_MAX_VIEWPORTS. + + + Associated Gets + + glGet with argument GL_DEPTH_RANGE + + + See Also + + glDepthFunc, + glDepthRange, + glDepthRangeArray, + glPolygonOffset, + glViewportArray, + glViewport, + removedTypes + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDetachShader.xml b/upstream-man-pages/man4/glDetachShader.xml new file mode 100644 index 0000000..7fe22f7 --- /dev/null +++ b/upstream-man-pages/man4/glDetachShader.xml @@ -0,0 +1,92 @@ + + + + + glDetachShader + 3G + + + glDetachShader + Detaches a shader object from a program object to which it is attached + + C Specification + + + void glDetachShader + GLuint program + GLuint shader + + + + Parameters + + + program + + Specifies the program object from which to + detach the shader object. + + + + shader + + Specifies the shader object to be + detached. + + + + + Description + glDetachShader detaches the shader + object specified by shader from the + program object specified by program. This + command can be used to undo the effect of the command + glAttachShader. + + If shader has already been flagged + for deletion by a call to + glDeleteShader + and it is not attached to any other program object, it will be + deleted after it has been detached. + + Errors + GL_INVALID_VALUE is generated if either + program or shader + is a value that was not generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_OPERATION is generated if + shader is not attached to + program. + + + Associated Gets + glGetAttachedShaders + with the handle of a valid program object + + glGetShader + with arguments shader and + GL_DELETE_STATUS + + glIsProgram + + glIsShader + + See Also + glAttachShader + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDispatchCompute.xml b/upstream-man-pages/man4/glDispatchCompute.xml new file mode 100644 index 0000000..06f7a59 --- /dev/null +++ b/upstream-man-pages/man4/glDispatchCompute.xml @@ -0,0 +1,97 @@ + + + + + + + 2012 + Khronos Group + + + glDispatchCompute + 3G + + + glDispatchCompute + launch one or more compute work groups + + C Specification + + + void glDispatchCompute + GLuint num_groups_x + GLuint num_groups_y + GLuint num_groups_z + + + + Parameters + + + num_groups_x + + + The number of work groups to be launched in the X dimension. + + + + + num_groups_y + + + The number of work groups to be launched in the Y dimension. + + + + + num_groups_z + + + The number of work groups to be launched in the Z dimension. + + + + + + Description + + glDispatchCompute launches one or more compute + work groups. Each work group is processed by the active program object for the compute + shader stage. While the individual shader invocations within a work group are + executed as a unit, work groups are executed completely independently and in + unspecified order. num_groups_x, num_groups_y + and num_groups_z specify the number of local + work groups that will be dispatched in the X, Y and Z dimensions, respectively. + + + Errors + + GL_INVALID_OPERATION is generated if there is no active program + for the compute shader stage. + + + GL_INVALID_VALUE is generated if any of num_groups_x, + num_groups_y, or num_groups_z is greater than or + equal to the maximum work-group count for the corresponding dimension. + + + Associated Gets + + glGet with argument GL_MAX_COMPUTE_WORK_GROUP_COUNT + + + See Also + + glDispatchComputeIndirect. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDispatchComputeIndirect.xml b/upstream-man-pages/man4/glDispatchComputeIndirect.xml new file mode 100644 index 0000000..5ea4388 --- /dev/null +++ b/upstream-man-pages/man4/glDispatchComputeIndirect.xml @@ -0,0 +1,112 @@ + + + + + + + 2012 + Khronos Group + + + glDispatchComputeIndirect + 3G + + + glDispatchComputeIndirect + launch one or more compute work groups using parameters stored in a buffer + + C Specification + + + void glDispatchComputeIndirect + GLintptr indirect + + + + Parameters + + + indirect + + + The offset into the buffer object currently bound to the + GL_DISPATCH_INDIRECT_BUFFER buffer target at + which the dispatch parameters are stored. + + + + + + Description + + glDispatchComputeIndirect launches one or more compute + work groups using parameters stored in the buffer object currently bound + to the GL_DISPATCH_INDIRECT_BUFFER target. + Each work group is processed by the active program object for the compute + shader stage. While the individual shader invocations within a work group are + executed as a unit, work groups are executed completely independently and in + unspecified order. indirect contains the offset + into the data store of the buffer object bound to the GL_DISPATCH_INDIRECT_BUFFER + target at which the parameters are stored. + + + The parameters addressed by indirect are packed a structure, + which takes the form (in C): + + + + A call to glDispatchComputeIndirect is equivalent, assuming no + errors are generated, to: + num_groups_x, cmd->num_groups_y, cmd->num_groups_z); + }]]> + + + Unlike glDispatchCompute, + no error is generated if any of the num_groups_x, + num_groups_y or num_groups_z members + of the DispatchIndirectCommand is larger than the + value of GL_MAX_COMPUTE_WORK_GROUP_COUNT for the + corresponding dimension. In such circumstances, behavior is undefined and + may lead to application termination. + + + Errors + + GL_INVALID_OPERATION is generated if there is no active program + for the compute shader stage. + + + GL_INVALID_VALUE is generated if indirect is + less than zero or not a multiple of four. + + + GL_INVALID_OPERATION is generated if no buffer is bound to the + GL_DISPATCH_INDIRECT_BUFFER target or if the command would + source data beyond the end of the buffer object's data store. + + + Associated Gets + + glGet with argument GL_MAX_COMPUTE_WORK_GROUP_COUNT + + + See Also + + glDispatchCompute. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawArrays.xml b/upstream-man-pages/man4/glDrawArrays.xml new file mode 100644 index 0000000..3198bd1 --- /dev/null +++ b/upstream-man-pages/man4/glDrawArrays.xml @@ -0,0 +1,134 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawArrays + 3G + + + glDrawArrays + render primitives from array data + + C Specification + + + void glDrawArrays + GLenum mode + GLint first + GLsizei count + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + first + + + Specifies the starting index in the enabled arrays. + + + + + count + + + Specifies the number of indices to be rendered. + + + + + + Description + + glDrawArrays specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glDrawArrays. + + + When glDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed and how the array elements + construct those primitives. + + + Vertex attributes that are modified by glDrawArrays have an + unspecified value after glDrawArrays returns. Attributes that aren't + modified remain well defined. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + See Also + + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDrawArraysIndirect.xml b/upstream-man-pages/man4/glDrawArraysIndirect.xml new file mode 100644 index 0000000..9e9e238 --- /dev/null +++ b/upstream-man-pages/man4/glDrawArraysIndirect.xml @@ -0,0 +1,142 @@ + + + + + + + 2010 + Khronos Group. + + + glDrawArraysIndirect + 3G + + + glDrawArraysIndirect + render primitives from array data, taking parameters from memory + + C Specification + + + void glDrawArraysIndirect + GLenum mode + const void *indirect + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + indirect + + + Specifies the address of a structure containing the draw parameters. + + + + + + Description + + glDrawArraysIndirect specifies multiple geometric primitives + with very few subroutine calls. glDrawArraysIndirect behaves + similarly to glDrawArraysInstancedBaseInstance, + execept that the parameters to glDrawArraysInstancedBaseInstance + are stored in memory at the address given by indirect. + + + The parameters addressed by indirect are packed into a structure + that takes the form (in C): + first, cmd->count, cmd->primCount, cmd->baseInstance);]]> + + + If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glDrawArraysIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. + + + In contrast to glDrawArraysInstancedBaseInstance, + the first member of the parameter structure is unsigned, and out-of-range indices + do not generate an error. + + + Vertex attributes that are modified by glDrawArraysIndirect have an + unspecified value after glDrawArraysIndirect returns. Attributes that aren't + modified remain well defined. + + + Notes + + The baseInstance member of the DrawArraysIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawArraysInstanced.xml b/upstream-man-pages/man4/glDrawArraysInstanced.xml new file mode 100644 index 0000000..de357cf --- /dev/null +++ b/upstream-man-pages/man4/glDrawArraysInstanced.xml @@ -0,0 +1,122 @@ + + + + + + + 2010 + Khronos Group + + + glDrawArraysInstanced + 3G + + + glDrawArraysInstanced + draw multiple instances of a range of elements + + C Specification + + + void glDrawArraysInstanced + GLenum mode + GLint first + GLsizei count + GLsizei primcount + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. Symbolic constants GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES + are accepted. + + + + + first + + + Specifies the starting index in the enabled arrays. + + + + + count + + + Specifies the number of indices to be rendered. + + + + + primcount + + + Specifies the number of instances of the specified range of indices to be rendered. + + + + + + Description + + glDrawArraysInstanced behaves identically to glDrawArrays + except that primcount instances of the range of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. + + + glDrawArraysInstanced has the same effect as: + + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of + the accepted values. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_VALUE is generated if count or primcount are negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawElementsInstanced + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawArraysInstancedBaseInstance.xml b/upstream-man-pages/man4/glDrawArraysInstancedBaseInstance.xml new file mode 100644 index 0000000..724f4e3 --- /dev/null +++ b/upstream-man-pages/man4/glDrawArraysInstancedBaseInstance.xml @@ -0,0 +1,153 @@ + + + + + + + 2010 + Khronos Group + + + glDrawArraysInstancedBaseInstance + 3G + + + glDrawArraysInstancedBaseInstance + draw multiple instances of a range of elements with offset applied to instanced attributes + + C Specification + + + void glDrawArraysInstancedBaseInstance + GLenum mode + GLint first + GLsizei count + GLsizei primcount + GLuint baseinstance + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. Symbolic constants GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES + are accepted. + + + + + first + + + Specifies the starting index in the enabled arrays. + + + + + count + + + Specifies the number of indices to be rendered. + + + + + primcount + + + Specifies the number of instances of the specified range of indices to be rendered. + + + + + baseinstance + + + Specifies the base instance for use in fetching instanced vertex attributes. + + + + + + Description + + glDrawArraysInstancedBaseInstance behaves identically to glDrawArrays + except that primcount instances of the range of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. + + + glDrawArraysInstancedBaseInstance has the same effect as: + + + + Specific vertex attributes may be classified as instanced through the use of + glVertexAttribDivisor. Instanced vertex attributes + supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex + attribute arrays is calculated as: + + + + + + gl + _ + InstanceID + + divisor + + + + + baseInstance + +. Note that baseinstance does not affect the shader-visible value of gl_InstanceID. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of + the accepted values. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_VALUE is generated if count or primcount are negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawElementsInstanced + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawBuffer.xml b/upstream-man-pages/man4/glDrawBuffer.xml new file mode 100644 index 0000000..035c90d --- /dev/null +++ b/upstream-man-pages/man4/glDrawBuffer.xml @@ -0,0 +1,212 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawBuffer + 3G + + + glDrawBuffer + specify which color buffers are to be drawn into + + C Specification + + + void glDrawBuffer + GLenum mode + + + + + Parameters + + + mode + + + Specifies up to four color buffers to be drawn into. + Symbolic constants + GL_NONE, + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK + are accepted. + The initial value is GL_FRONT for single-buffered contexts, + and GL_BACK for double-buffered contexts. + + + + + + Description + + When colors are written to the frame buffer, + they are written into the color buffers specified by glDrawBuffer. + The specifications are as follows: + + + + GL_NONE + + + No color buffers are written. + + + + + GL_FRONT_LEFT + + + Only the front left color buffer is written. + + + + + GL_FRONT_RIGHT + + + Only the front right color buffer is written. + + + + + GL_BACK_LEFT + + + Only the back left color buffer is written. + + + + + GL_BACK_RIGHT + + + Only the back right color buffer is written. + + + + + GL_FRONT + + + Only the front left and front right color buffers are written. + If there is no front right color buffer, + only the front left color buffer is written. + + + + + GL_BACK + + + Only the back left and back right color buffers are written. + If there is no back right color buffer, + only the back left color buffer is written. + + + + + GL_LEFT + + + Only the front left and back left color buffers are written. + If there is no back left color buffer, + only the front left color buffer is written. + + + + + GL_RIGHT + + + Only the front right and back right color buffers are written. + If there is no back right color buffer, + only the front right color buffer is written. + + + + + GL_FRONT_AND_BACK + + + All the front and back color buffers + (front left, front right, back left, back right) + are written. + If there are no back color buffers, + only the front left and front right color buffers are written. + If there are no right color buffers, + only the front left and back left color buffers are written. + If there are no right or back color buffers, + only the front left color buffer is written. + + + + + + If more than one color buffer is selected for drawing, + then blending or logical operations are computed and applied independently + for each color buffer and can produce different results in each buffer. + + + Monoscopic contexts include only + left + buffers, and stereoscopic contexts include both + left + and + right + buffers. + Likewise, single-buffered contexts include only + front + buffers, and double-buffered contexts include both + front + and + back + buffers. + The context is selected at GL initialization. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if none of the buffers indicated + by mode exists. + + + Associated Gets + + glGet with argument GL_DRAW_BUFFER + + + See Also + + glBlendFunc, + glColorMask, + glDrawBuffers, + glLogicOp, + glReadBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDrawBuffers.xml b/upstream-man-pages/man4/glDrawBuffers.xml new file mode 100644 index 0000000..f54a5d1 --- /dev/null +++ b/upstream-man-pages/man4/glDrawBuffers.xml @@ -0,0 +1,184 @@ + + + + + glDrawBuffers + 3G + + + glDrawBuffers + Specifies a list of color buffers to be drawn into + + C Specification + + + void glDrawBuffers + GLsizei n + const GLenum *bufs + + + + Parameters + + + n + + Specifies the number of buffers in + bufs. + + + + bufs + + Points to an array of symbolic constants + specifying the buffers into which fragment colors or + data values will be written. + + + + + Description + glDrawBuffers defines an array of + buffers into which outputs from the fragment shader data will + be written. If a fragment shader writes a value + to one or more user defined output + variables, then the value of each variable will be written into the + buffer specified at a location within bufs + corresponding to the location assigned to that user defined output. + The draw buffer used for user defined outputs assigned to locations + greater than or equal to n is implicitly set + to GL_NONE and any data written to such an output + is discarded. + + The symbolic constants contained in + bufs may be any of the following: + + + + GL_NONE + + The fragment shader output value is not written into + any color buffer. + + + + GL_FRONT_LEFT + + The fragment shader output value is written into the + front left color buffer. + + + + GL_FRONT_RIGHT + + The fragment shader output value is written into the + front right color buffer. + + + + GL_BACK_LEFT + + The fragment shader output value is written into the + back left color buffer. + + + + GL_BACK_RIGHT + + The fragment shader output value is written into the + back right color buffer. + + + + GL_COLOR_ATTACHMENTn + + The fragment shader output value is written into the + nth color attachment of the current framebuffer. + n may range from 0 to the value of + GL_MAX_COLOR_ATTACHMENTS. + + + + + Except for GL_NONE, the preceding + symbolic constants may not appear more than once in + bufs. The maximum number of draw buffers + supported is implementation dependent and can be queried by + calling + glGet + with the argument GL_MAX_DRAW_BUFFERS. + + Notes + + The symbolic constants GL_FRONT, + GL_BACK, GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK are not allowed in the + bufs array since they may refer to + multiple buffers. + + If a fragment shader does not write to a user defined output variable, + the values of the fragment + colors following shader execution are undefined. For each + fragment generated in this situation, a different value may be + written into each of the buffers specified by + bufs. + + Errors + GL_INVALID_ENUM is generated if one of the + values in bufs is not an accepted + value. + + GL_INVALID_ENUM is generated if the GL is bound + to the default framebuffer and one or more of the values in + bufs is one of the GL_COLOR_ATTACHMENTn + tokens. + + GL_INVALID_ENUM is generated if the GL is bound + to a framebuffer object and one or more of the values in bufs + is anything other than GL_NONE or one of the + GL_COLOR_ATTACHMENTSn tokens. + + GL_INVALID_ENUM is generated if + n is less than 0. + + GL_INVALID_OPERATION is generated if a + symbolic constant other than GL_NONE + appears more than once in bufs. + + GL_INVALID_OPERATION is generated if any of + the entries in bufs (other than + GL_NONE ) indicates a color buffer that + does not exist in the current GL context. + + GL_INVALID_VALUE is generated if + n is greater than + GL_MAX_DRAW_BUFFERS. + + + Associated Gets + glGet + with argument GL_MAX_DRAW_BUFFERS + + glGet + with argument GL_DRAW_BUFFERi where + i indicates the number of the draw buffer + whose value is to be queried + + See Also + glBlendFunc, + glColorMask, + glDrawBuffers, + glLogicOp, + glReadBuffer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawElements.xml b/upstream-man-pages/man4/glDrawElements.xml new file mode 100644 index 0000000..df6b5aa --- /dev/null +++ b/upstream-man-pages/man4/glDrawElements.xml @@ -0,0 +1,146 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawElements + 3G + + + glDrawElements + render primitives from array data + + C Specification + + + void glDrawElements + GLenum mode + GLsizei count + GLenum type + const GLvoid * indices + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + + Description + + glDrawElements specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL function + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to + construct a sequence of primitives with a single + call to glDrawElements. + + + When glDrawElements is called, it uses count sequential elements from an + enabled array, starting at indices to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed and how the array elements construct these primitives. If + more than one array is enabled, each is used. + + + Vertex attributes that are modified by glDrawElements have an + unspecified value after glDrawElements returns. Attributes that aren't + modified maintain their previous values. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawElementsInstanced, + glDrawElementsBaseVertex, + glDrawRangeElements + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDrawElementsBaseVertex.xml b/upstream-man-pages/man4/glDrawElementsBaseVertex.xml new file mode 100644 index 0000000..044f70e --- /dev/null +++ b/upstream-man-pages/man4/glDrawElementsBaseVertex.xml @@ -0,0 +1,130 @@ + + + + + + + 2010 + Khronos Group + + + glDrawElementsBaseVertex + 3G + + + glDrawElementsBaseVertex + render primitives from array data with a per-element offset + + C Specification + + + void glDrawElementsBaseVertex + GLenum mode + GLsizei count + GLenum type + GLvoid *indices + GLint basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + + Description + + glDrawElementsBaseVertex behaves identically to + glDrawElements except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. + + + Notes + glDrawElementsBaseVertex is only supported if the GL version is 3.2 or greater, or if + the ARB_draw_elements_base_vertex extension is supported. + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawElementsIndirect.xml b/upstream-man-pages/man4/glDrawElementsIndirect.xml new file mode 100644 index 0000000..c342b4d --- /dev/null +++ b/upstream-man-pages/man4/glDrawElementsIndirect.xml @@ -0,0 +1,171 @@ + + + + + + + 2010 + Khronos Group. + + + glDrawElementsIndirect + 3G + + + glDrawElementsIndirect + render indexed primitives from array data, taking parameters from memory + + C Specification + + + void glDrawElementsIndirect + GLenum mode + GLenum type + const void *indirect + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + type + + + Specifies the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. + + + + + indirect + + + Specifies the address of a structure containing the draw parameters. + + + + + + Description + + glDrawElementsIndirect specifies multiple indexed geometric primitives + with very few subroutine calls. glDrawElementsIndirect behaves + similarly to glDrawElementsInstancedBaseVertexBaseInstance, + execpt that the parameters to glDrawElementsInstancedBaseVertexBaseInstance + are stored in memory at the address given by indirect. + + + The parameters addressed by indirect are packed into a structure + that takes the form (in C): + + + glDrawElementsIndirect is equivalent to: + +count, + type, + cmd->firstIndex + size-of-type, + cmd->primCount, + cmd->baseVertex, + cmd->baseInstance); + }]]> + + + If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glDrawElementsIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. + + + Note that indices stored in client memory are not supported. If no buffer is bound to the + GL_ELEMENT_ARRAY_BUFFER binding, an error will be generated. + + + The results of the operation are undefined if the reservedMustBeZero member + of the parameter structure is non-zero. However, no error is generated in this case. + + + Vertex attributes that are modified by glDrawElementsIndirect have an + unspecified value after glDrawElementsIndirect returns. Attributes that aren't + modified remain well defined. + + + Notes + + The baseInstance member of the DrawElementsIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_OPERATION is generated if no buffer is bound to the GL_ELEMENT_ARRAY_BUFFER + binding, or if such a buffer's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawArraysIndirect, + glDrawElements, + glDrawRangeElements, + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawElementsInstanced.xml b/upstream-man-pages/man4/glDrawElementsInstanced.xml new file mode 100644 index 0000000..43355ea --- /dev/null +++ b/upstream-man-pages/man4/glDrawElementsInstanced.xml @@ -0,0 +1,153 @@ + + + + + + + 2010 + Khronos Group + + + glDrawElementsInstanced + 3G + + + glDrawElementsInstanced + draw multiple instances of a set of elements + + C Specification + + + void glDrawElementsInstanced + GLenum mode + GLsizei count + GLenum type + const void * indices + GLsizei primcount + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the number of instances of the specified range of indices to be rendered. + + + + + + Description + + glDrawElementsInstanced behaves identically to glDrawElements + except that primcount instances of the set of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. + + + glDrawElementsInstanced has the same effect as: + + + + Notes + + glDrawElementsInstanced is available only if the GL version is 3.1 or greater. + + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES. + + + GL_INVALID_VALUE is generated if count or primcount are negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawArraysInstanced + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawElementsInstancedBaseInstance.xml b/upstream-man-pages/man4/glDrawElementsInstancedBaseInstance.xml new file mode 100644 index 0000000..f5b60b9 --- /dev/null +++ b/upstream-man-pages/man4/glDrawElementsInstancedBaseInstance.xml @@ -0,0 +1,184 @@ + + + + + + + 2011 + Khronos Group + + + glDrawElementsInstancedBaseInstance + 3G + + + glDrawElementsInstancedBaseInstance + draw multiple instances of a set of elements with offset applied to instanced attributes + + C Specification + + + void glDrawElementsInstancedBaseInstance + GLenum mode + GLsizei count + GLenum type + const void * indices + GLsizei primcount + GLuitn baseinstance + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the number of instances of the specified range of indices to be rendered. + + + + + baseinstance + + + Specifies the base instance for use in fetching instanced vertex attributes. + + + + + + Description + + glDrawElementsInstancedBaseInstance behaves identically to glDrawElements + except that primcount instances of the set of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. + + + glDrawElementsInstancedBaseInstance has the same effect as: + + + + Specific vertex attributes may be classified as instanced through the use of + glVertexAttribDivisor. Instanced vertex attributes + supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex + attribute arrays is calculated as + + + + + + gl + _ + InstanceID + + divisor + + + + + baseInstance + +. Note that baseinstance does not affect the shader-visible value of gl_InstanceID. + + + Notes + + glDrawElementsInstancedBaseInstance is available only if the GL version is 4.2 or greater. + + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES. + + + GL_INVALID_VALUE is generated if count or primcount are negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawArraysInstanced + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawElementsInstancedBaseVertex.xml b/upstream-man-pages/man4/glDrawElementsInstancedBaseVertex.xml new file mode 100644 index 0000000..8c268ee --- /dev/null +++ b/upstream-man-pages/man4/glDrawElementsInstancedBaseVertex.xml @@ -0,0 +1,138 @@ + + + + + + + 2010 + Khronos Group + + + glDrawElementsInstancedBaseVertex + 3G + + + glDrawElementsInstancedBaseVertex + render multiple instances of a set of primitives from array data with a per-element offset + + C Specification + + + void glDrawElementsInstancedBaseVertex + GLenum mode + GLsizei count + GLenum type + GLvoid *indices + GLsizei primcount + GLint basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the number of instances of the indexed geometry that should be drawn. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + + Description + + glDrawElementsInstancedBaseVertex behaves identically to + glDrawElementsInstanced except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. + + + Notes + glDrawElementsInstancedBaseVertex is only supported if the GL version is 3.2 or greater. + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count or primcount is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawElementsInstancedBaseVertexBaseInstance.xml b/upstream-man-pages/man4/glDrawElementsInstancedBaseVertexBaseInstance.xml new file mode 100644 index 0000000..d14401e --- /dev/null +++ b/upstream-man-pages/man4/glDrawElementsInstancedBaseVertexBaseInstance.xml @@ -0,0 +1,170 @@ + + + + + + + 2011 + Khronos Group + + + glDrawElementsInstancedBaseVertexBaseInstance + 3G + + + glDrawElementsInstancedBaseVertexBaseInstance + render multiple instances of a set of primitives from array data with a per-element offset + + C Specification + + + void glDrawElementsInstancedBaseVertexBaseInstance + GLenum mode + GLsizei count + GLenum type + GLvoid *indices + GLsizei primcount + GLint basevertex + GLuint baseinstance + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the number of instances of the indexed geometry that should be drawn. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + baseinstance + + + Specifies the base instance for use in fetching instanced vertex attributes. + + + + + + Description + + glDrawElementsInstancedBaseVertexBaseInstance behaves identically to + glDrawElementsInstanced except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. The basevertex has no effect on the + shader-visible value of gl_VertexID. + + + Specific vertex attributes may be classified as instanced through the use of + glVertexAttribDivisor. Instanced vertex attributes + supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex + attribute arrays is calculated as + + + + + + gl + _ + InstanceID + + divisor + + + + + baseInstance + +. Note that baseinstance does not affect the shader-visible value of gl_InstanceID. + + + Notes + glDrawElementsInstancedBaseVertex is only supported if the GL version is 3.2 or greater. + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count or primcount is negative. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawRangeElements.xml b/upstream-man-pages/man4/glDrawRangeElements.xml new file mode 100644 index 0000000..9124c19 --- /dev/null +++ b/upstream-man-pages/man4/glDrawRangeElements.xml @@ -0,0 +1,222 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glDrawRangeElements + 3G + + + glDrawRangeElements + render primitives from array data + + C Specification + + + void glDrawRangeElements + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const GLvoid * indices + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + start + + + Specifies the minimum array index contained in indices. + + + + + end + + + Specifies the maximum array index contained in indices. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + + Description + + glDrawRangeElements is a restricted form of glDrawElements. mode, start, end, + and count match the corresponding arguments to glDrawElements, with + the additional constraint that all values in the arrays count must lie + between start and end, inclusive. + + + Implementations denote recommended maximum amounts of vertex and + index data, + which may be queried by calling glGet with argument + GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. + If + + + + end + - + start + + + 1 + + + is greater than the value of + GL_MAX_ELEMENTS_VERTICES, or if count is greater than the value of + GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced + performance. There is no requirement that all vertices in the range + + + + start + end + + + be referenced. However, the implementation may + partially process unused vertices, reducing performance from what could + be achieved with an optimal index set. + + + When glDrawRangeElements is called, it uses count sequential elements from an + enabled array, starting at start to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed, and how the array elements construct these primitives. If + more than one array is enabled, each is used. + + + Vertex attributes that are modified by glDrawRangeElements have an + unspecified value after glDrawRangeElements returns. Attributes that aren't + modified maintain their previous values. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + It is an error for indices to lie outside the range + + + + start + end + + , + but implementations may not check for this situation. Such indices + cause implementation-dependent behavior. + + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_VALUE is generated if + + + + end + < + start + + . + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + Associated Gets + + glGet with argument GL_MAX_ELEMENTS_VERTICES + + + glGet with argument GL_MAX_ELEMENTS_INDICES + + + See Also + + glDrawArrays, + glDrawElements, + glDrawElementsBaseVertex + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glDrawRangeElementsBaseVertex.xml b/upstream-man-pages/man4/glDrawRangeElementsBaseVertex.xml new file mode 100644 index 0000000..54a74dc --- /dev/null +++ b/upstream-man-pages/man4/glDrawRangeElementsBaseVertex.xml @@ -0,0 +1,151 @@ + + + + + + + 2010 + Khronos Group + + + glDrawRangeElementsBaseVertex + 3G + + + glDrawRangeElementsBaseVertex + render primitives from array data with a per-element offset + + C Specification + + + void glDrawRangeElementsBaseVertex + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + GLvoid *indices + GLint basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + + + + + start + + + Specifies the minimum array index contained in indices. + + + + + end + + + Specifies the maximum array index contained in indices. + + + + + count + + + Specifies the number of elements to be rendered. + + + + + type + + + Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + basevertex + + + Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. + + + + + + Description + + glDrawRangeElementsBaseVertex is a restricted form of + glDrawElementsBaseVertex. mode, + start, end, count and basevertex match + the corresponding arguments to glDrawElementsBaseVertex, with the additional + constraint that all values in the array indices must lie between start and end, + inclusive, prior to adding basevertex. Index values lying outside the range [start, end] + are treated in the same way as glDrawElementsBaseVertex. The ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled + array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to + 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if count is negative. + + + GL_INVALID_VALUE is generated if end < start. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawElementsBaseVertex, + glDrawRangeElements, + glDrawElementsInstanced, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawTransformFeedback.xml b/upstream-man-pages/man4/glDrawTransformFeedback.xml new file mode 100644 index 0000000..c4e3c71 --- /dev/null +++ b/upstream-man-pages/man4/glDrawTransformFeedback.xml @@ -0,0 +1,114 @@ + + + + + + + 2010 + Khronos Group. + + + glDrawTransformFeedback + 3G + + + glDrawTransformFeedback + render primitives using a count derived from a transform feedback object + + C Specification + + + void glDrawTransformFeedback + GLenum mode + GLuint id + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + id + + + Specifies the name of a transform feedback object from which to retrieve a primitive count. + + + + + + Description + + glDrawTransformFeedback draws primitives of a type specified by mode using + a count retrieved from the transform feedback specified by id. Calling glDrawTransformFeedback + is equivalent to calling glDrawArrays with mode + as specified, first set to zero, and count set to the number of vertices captured + on vertex stream zero the last time transform feedback was active on the transform feedback object named by id. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + glDrawTransformFeedbackStream + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawTransformFeedbackInstanced.xml b/upstream-man-pages/man4/glDrawTransformFeedbackInstanced.xml new file mode 100644 index 0000000..6c5deb7 --- /dev/null +++ b/upstream-man-pages/man4/glDrawTransformFeedbackInstanced.xml @@ -0,0 +1,134 @@ + + + + + + + 2011 + Khronos Group. + + + glDrawTransformFeedbackInstanced + 3G + + + glDrawTransformFeedbackInstanced + render multiple instances of primitives using a count derived from a transform feedback object + + C Specification + + + void glDrawTransformFeedbackInstanced + GLenum mode + GLuint id + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + id + + + Specifies the name of a transform feedback object from which to retrieve a primitive count. + + + + + primcount + + + Specifies the number of instances of the geometry to render. + + + + + + Description + + glDrawTransformFeedbackInstanced draws multiple copies of a range of primitives of a type specified by mode using + a count retrieved from the transform feedback stream specified by stream of the transform feedback object + specified by id. Calling glDrawTransformFeedbackInstanced + is equivalent to calling glDrawArraysInstanced with mode + and primcount as specified, first set to zero, and count set to the number of vertices captured + on vertex stream zero the last time transform feedback was active on the transform feedback object named + by id. + + + Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawTransformFeedbackStreamInstanced + with stream set to zero. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. + + + GL_INVALID_VALUE is generated if stream is greater than or equal to + the value of GL_MAX_VERTEX_STREAMS. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + glDrawTransformFeedback, + glDrawTransformFeedbackStreamInstanced. + + + Copyright + + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawTransformFeedbackStream.xml b/upstream-man-pages/man4/glDrawTransformFeedbackStream.xml new file mode 100644 index 0000000..8570938 --- /dev/null +++ b/upstream-man-pages/man4/glDrawTransformFeedbackStream.xml @@ -0,0 +1,133 @@ + + + + + + + 2010 + Khronos Group. + + + glDrawTransformFeedbackStream + 3G + + + glDrawTransformFeedbackStream + render primitives using a count derived from a specifed stream of a transform feedback object + + C Specification + + + void glDrawTransformFeedbackStream + GLenum mode + GLuint id + GLuint stream + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + id + + + Specifies the name of a transform feedback object from which to retrieve a primitive count. + + + + + stream + + + Specifies the index of the transform feedback stream from which to retrieve a primitive count. + + + + + + Description + + glDrawTransformFeedbackStream draws primitives of a type specified by mode using + a count retrieved from the transform feedback stream specified by stream of the transform feedback object + specified by id. Calling glDrawTransformFeedbackStream + is equivalent to calling glDrawArrays with mode + as specified, first set to zero, and count set to the number of vertices captured + on vertex stream stream the last time transform feedback was active on the transform feedback object named + by id. + + + Calling glDrawTransformFeedback is equivalent to calling glDrawTransformFeedbackStream + with stream set to zero. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. + + + GL_INVALID_VALUE is generated if stream is greater than or equal to + the value of GL_MAX_VERTEX_STREAMS. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + glDrawTransformFeedback + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glDrawTransformFeedbackStreamInstanced.xml b/upstream-man-pages/man4/glDrawTransformFeedbackStreamInstanced.xml new file mode 100644 index 0000000..90988c4 --- /dev/null +++ b/upstream-man-pages/man4/glDrawTransformFeedbackStreamInstanced.xml @@ -0,0 +1,143 @@ + + + + + + + 2011 + Khronos Group. + + + glDrawTransformFeedbackStreamInstanced + 3G + + + glDrawTransformFeedbackStreamInstanced + render multiple instances of primitives using a count derived from a specifed stream of a transform feedback object + + C Specification + + + void glDrawTransformFeedbackStreamInstanced + GLenum mode + GLuint id + GLuint stream + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + id + + + Specifies the name of a transform feedback object from which to retrieve a primitive count. + + + + + stream + + + Specifies the index of the transform feedback stream from which to retrieve a primitive count. + + + + + primcount + + + Specifies the number of instances of the geometry to render. + + + + + + Description + + glDrawTransformFeedbackStreamInstanced draws multiple copies of a range of primitives of a type specified by mode using + a count retrieved from the transform feedback stream specified by stream of the transform feedback object + specified by id. Calling glDrawTransformFeedbackStreamInstanced + is equivalent to calling glDrawArraysInstanced with mode + and primcount as specified, first set to zero, and count set to the number of vertices captured + on vertex stream stream the last time transform feedback was active on the transform feedback object named + by id. + + + Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawTransformFeedbackStreamInstanced + with stream set to zero. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. + + + GL_INVALID_VALUE is generated if stream is greater than or equal to + the value of GL_MAX_VERTEX_STREAMS. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + glDrawTransformFeedback, + glDrawTransformFeedbackStream. + + + Copyright + + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glEnable.xml b/upstream-man-pages/man4/glEnable.xml new file mode 100644 index 0000000..a6046b1 --- /dev/null +++ b/upstream-man-pages/man4/glEnable.xml @@ -0,0 +1,561 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glEnable + 3G + + + glEnable + enable or disable server-side GL capabilities + + C Specification + + + void glEnable + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + C Specification + + + void glDisable + GLenum cap + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + + C Specification + + + void glEnablei + GLenum cap + GLuint index + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + index + + + Specifies the index of the swtich to enable. + + + + + + C Specification + + + void glDisablei + GLenum cap + GLuint index + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + index + + + Specifies the index of the swtich to disable. + + + + + + Description + + glEnable and glDisable enable and disable various capabilities. + Use glIsEnabled or glGet to determine the current setting + of any capability. The initial value for each capability with the + exception of GL_DITHER and GL_MULTISAMPLE is + GL_FALSE. The initial value for + GL_DITHER and GL_MULTISAMPLE is GL_TRUE. + + + Both glEnable and glDisable take a single argument, cap, + which can assume one of the following values: + + + Some of the GL's capabilities are indexed. glEnablei and glDisablei enable and disable + indexed capabilities. + + + + GL_BLEND + + + + + If enabled, + blend the computed fragment color values with the values in the color + buffers. See glBlendFunc. + + + + + GL_CLIP_DISTANCEi + + + + + If enabled, clip geometry against user-defined half space i. + + + + + GL_COLOR_LOGIC_OP + + + + + If enabled, + apply the currently selected logical operation to the computed fragment + color and color buffer values. See glLogicOp. + + + + + GL_CULL_FACE + + + + + If enabled, + cull polygons based on their winding in window coordinates. + See glCullFace. + + + + + GL_DEBUG_OUTPUT + + + + + If enabled, debug messages are produced by a debug context. When disabled, + the debug message log is silenced. Note that in a non-debug context, very + few, if any messages might be produced, even when GL_DEBUG_OUTPUT + is enabled. + + + + + GL_DEBUG_OUTPUT_SYNCHRONOUS + + + + + If enabled, debug messages are produced synchronously by a debug context. If disabled, + debug messages may be produced asynchronously. In particular, they may be delayed relative + to the execution of GL commands, and the debug callback function may be called from + a thread other than that in which the commands are executed. + See glDebugMessageCallback. + + + + + GL_DEPTH_CLAMP + + + + + If enabled, + the + + + -wczcwc + + plane equation is ignored by view volume clipping (effectively, there is no near or + far plane clipping). + See glDepthRange. + + + + + GL_DEPTH_TEST + + + + + If enabled, + do depth comparisons and update the depth buffer. Note that even if + the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. See + glDepthFunc and + glDepthRange. + + + + + GL_DITHER + + + + + If enabled, + dither color components or indices before they are written to the + color buffer. + + + + + GL_FRAMEBUFFER_SRGB + + + + + If enabled + and the value of GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING for the + framebuffer attachment corresponding to the destination buffer is GL_SRGB, + the R, G, and B destination color values (after conversion from fixed-point to floating-point) + are considered to be encoded for the sRGB color space and hence are linearized prior to + their use in blending. + + + + + GL_LINE_SMOOTH + + + + + If enabled, + draw lines with correct filtering. + Otherwise, + draw aliased lines. + See glLineWidth. + + + + + GL_MULTISAMPLE + + + + + If enabled, + use multiple fragment samples in computing the final color of a pixel. + See glSampleCoverage. + + + + + GL_POLYGON_OFFSET_FILL + + + + + If enabled, and if the polygon is rendered in + GL_FILL mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_LINE + + + + + If enabled, and if the polygon is rendered in + GL_LINE mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_POINT + + + + + If enabled, an offset is added to depth values of a polygon's fragments + before the depth comparison is performed, if the polygon is rendered in + GL_POINT mode. See glPolygonOffset. + + + + + GL_POLYGON_SMOOTH + + + + + If enabled, draw polygons with proper filtering. + Otherwise, draw aliased polygons. For correct antialiased polygons, + an alpha buffer is needed and the polygons must be sorted front to + back. + + + + + GL_PRIMITIVE_RESTART + + + + + Enables primitive restarting. If enabled, any one of the draw commands + which transfers a set of generic attribute array elements to the GL will restart + the primitive when the index of the vertex is equal to the primitive restart index. + See glPrimitiveRestartIndex. + + + + + GL_PRIMITIVE_RESTART_FIXED_INDEX + + + + + Enables primitive restarting with a fixed index. If enabled, any one of the + draw commands which transfers a set of generic attribute array elements to the GL will + restart the primitive when the index of the vertex is equal to the fixed primitive + index for the specified index type. The fixed index is equal to + 2n1 + where n is equal to 8 for GL_UNSIGNED_BYTE, + 16 for GL_UNSIGNED_SHORT and 32 for GL_UNSIGNED_INT. + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE + + + + + If enabled, + compute a temporary coverage value where each bit is determined by the + alpha value at the corresponding sample location. The temporary coverage + value is then ANDed with the fragment coverage value. + + + + + GL_SAMPLE_ALPHA_TO_ONE + + + + + If enabled, + each sample alpha value is replaced by the maximum representable alpha value. + + + + + GL_SAMPLE_COVERAGE + + + + + If enabled, + the fragment's coverage is ANDed with the temporary coverage value. If + GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage + value. + See glSampleCoverage. + + + + + GL_SAMPLE_SHADING + + + + + If enabled, the active fragment shader is run once for each covered sample, or at + fraction of this rate as determined by the current value of GL_MIN_SAMPLE_SHADING_VALUE. + See glMinSampleShading. + + + + + GL_SAMPLE_MASK + + + + + If enabled, the sample coverage mask generated for a fragment during rasterization + will be ANDed with the value of GL_SAMPLE_MASK_VALUE before + shading occurs. + See glSampleMaski. + + + + + GL_SCISSOR_TEST + + + + + If enabled, + discard fragments that are outside the scissor rectangle. + See glScissor. + + + + + GL_STENCIL_TEST + + + + + If enabled, + do stencil testing and update the stencil buffer. + See glStencilFunc and glStencilOp. + + + + + GL_TEXTURE_CUBE_MAP_SEAMLESS + + + + + If enabled, cubemap textures are sampled such that when linearly sampling from the border + between two adjacent faces, texels from both faces are used to generate the final sample + value. When disabled, texels from only a single face are used to construct the final + sample value. + + + + + GL_PROGRAM_POINT_SIZE + + + + + If enabled + and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin + gl_PointSize and clamped to the implementation-dependent point size range. + + + + + + Errors + + GL_INVALID_ENUM is generated if cap is not one of the values + listed previously. + + + GL_INVALID_VALUE is generated by glEnablei and glDisablei + if index is greater than or equal to the number of indexed capabilities for cap. + + + Notes + + GL_PRIMITIVE_RESTART is available only if the GL version is 3.1 or greater. + + + GL_TEXTURE_CUBE_MAP_SEAMLESS is available only if the GL version is 3.2 or greater. + + + GL_PRIMITIVE_RESTART_FIXED_INDEX is available only if the GL version is 4.3 or greater. + + + GL_DEBUG_OUTPUT and GL_DEBUG_OUTPUT_SYNCHRONOUS are available only if the GL version is 4.3 or greater. + + + Any token accepted by glEnable or glDisable is also accepted by + glEnablei and glDisablei, but if the capability is not indexed, + the maximum value that index may take is zero. + + + In general, passing an indexed capability to glEnable or glDisable + will enable or disable that capability for all indices, resepectively. + + + Associated Gets + + glIsEnabled + + + glGet + + + See Also + + glActiveTexture, + glBlendFunc, + glCullFace, + glDepthFunc, + glDepthRange, + glGet, + glIsEnabled, + glLineWidth, + glLogicOp, + glPointSize, + glPolygonMode, + glPolygonOffset, + glSampleCoverage, + glScissor, + glStencilFunc, + glStencilOp, + glTexImage1D, + glTexImage2D, + glTexImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010-2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glEnableVertexAttribArray.xml b/upstream-man-pages/man4/glEnableVertexAttribArray.xml new file mode 100644 index 0000000..be9dd57 --- /dev/null +++ b/upstream-man-pages/man4/glEnableVertexAttribArray.xml @@ -0,0 +1,94 @@ + + + + + glEnableVertexAttribArray + 3G + + + glEnableVertexAttribArray + glEnableVertexAttribArray + glDisableVertexAttribArray + Enable or disable a generic vertex attribute array + + C Specification + + + void glEnableVertexAttribArray + GLuint index + + + void glDisableVertexAttribArray + GLuint index + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be enabled or disabled. + + + + + Description + glEnableVertexAttribArray enables the + generic vertex attribute array specified by + index. + glDisableVertexAttribArray disables the + generic vertex attribute array specified by + index. By default, all client-side + capabilities are disabled, including all generic vertex + attribute arrays. If enabled, the values in the generic vertex + attribute array will be accessed and used for rendering when + calls are made to vertex array commands such as + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + or + glMultiDrawArrays. + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttrib + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_ENABLED + + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + + glBindAttribLocation, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + glVertexAttrib, + glVertexAttribPointer + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFenceSync.xml b/upstream-man-pages/man4/glFenceSync.xml new file mode 100644 index 0000000..c0fbc22 --- /dev/null +++ b/upstream-man-pages/man4/glFenceSync.xml @@ -0,0 +1,106 @@ + + + + + + + 2010 + Khronos Group + + + glFenceSync + 3G + + + glFenceSync + create a new sync object and insert it into the GL command stream + + C Specification + + + GLsync glFenceSync + GLenum condition + GLbitfield flags + + + + + Parameters + + + condition + + + Specifies the condition that must be met to set the sync object's state to signaled. condition + must be GL_SYNC_GPU_COMMANDS_COMPLETE. + + + + + flags + + + Specifies a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined + for this operation and flags must be zero. + flags is a placeholder for anticipated future extensions of fence sync object capabilities. + + + + + + + + Description + + glFenceSync creates a new fence sync object, inserts a fence command into the GL command stream and + associates it with that sync object, and returns a non-zero name corresponding to the sync object. + + + When the specified condition of the sync object is satisfied by the fence command, the sync object + is signaled by the GL, causing any glWaitSync, + glClientWaitSync commands blocking in sync + to unblock. No other state is affected by glFenceSync or by the execution + of the associated fence command. + + + condition must be GL_SYNC_GPU_COMMANDS_COMPLETE. This condition is satisfied by + completion of the fence command corresponding to the sync object and all preceding commands in the same command stream. + The sync object will not be signaled until all effects from these commands on GL client and server state and the + framebuffer are fully realized. Note that completion of the fence command occurs once the state of the corresponding sync + object has been changed, but commands waiting on that sync object may not be unblocked until after the fence command completes. + + + Notes + glFenceSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. + + Errors + + GL_INVALID_ENUM is generated if condition is not + GL_SYNC_GPU_COMMANDS_COMPLETE. + + + GL_INVALID_VALUE is generated if flags is not zero. + + + Additionally, if glFenceSync fails, it will return zero. + + + See Also + + glDeleteSync, + glGetSync, + glWaitSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFinish.xml b/upstream-man-pages/man4/glFinish.xml new file mode 100644 index 0000000..57d86d8 --- /dev/null +++ b/upstream-man-pages/man4/glFinish.xml @@ -0,0 +1,54 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFinish + 3G + + + glFinish + block until all GL execution is complete + + C Specification + + + void glFinish + void + + + + Description + + glFinish does not return until the effects of all previously + called GL commands are complete. + Such effects include all changes to GL state, + all changes to connection state, + and all changes to the frame buffer contents. + + + Notes + + glFinish requires a round trip to the server. + + + See Also + + glFlush + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glFlush.xml b/upstream-man-pages/man4/glFlush.xml new file mode 100644 index 0000000..c7fad46 --- /dev/null +++ b/upstream-man-pages/man4/glFlush.xml @@ -0,0 +1,68 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFlush + 3G + + + glFlush + force execution of GL commands in finite time + + C Specification + + + void glFlush + void + + + + Description + + Different GL implementations buffer commands in several different locations, + including network buffers and the graphics accelerator itself. + glFlush empties all of these buffers, + causing all issued commands to be executed as quickly as + they are accepted by the actual rendering engine. + Though this execution may not be completed in any particular + time period, + it does complete in finite time. + + + Because any GL program might be executed over a network, + or on an accelerator that buffers commands, + all programs should call glFlush whenever they count on having + all of their previously issued commands completed. + For example, + call glFlush before waiting for user input that depends on + the generated image. + + + Notes + + glFlush can return at any time. + It does not wait until the execution of all previously + issued GL commands is complete. + + + See Also + + glFinish + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glFlushMappedBufferRange.xml b/upstream-man-pages/man4/glFlushMappedBufferRange.xml new file mode 100644 index 0000000..baf29b3 --- /dev/null +++ b/upstream-man-pages/man4/glFlushMappedBufferRange.xml @@ -0,0 +1,98 @@ + + + + + + + 2010 + Khronos Group + + + glFlushMappedBufferRange + 3G + + + glFlushMappedBufferRange + indicate modifications to a range of a mapped buffer + + C Specification + + + void glFlushMappedBufferRange + GLenum target + GLintptr offset + GLsizeiptr length + + + + + Parameters + + + target + + + Specifies the target of the flush operation. target must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER. + + + + + offset + + + Specifies the start of the buffer subrange, in basic machine units. + + + + + length + + + Specifies the length of the buffer subrange, in basic machine units. + + + + + + Description + + glFlushMappedBufferRange indicates that modifications have been made to a range of a mapped buffer. + The buffer must previously have been mapped with the GL_MAP_FLUSH_EXPLICIT flag. offset + and length indicate the modified subrange of the mapping, in basic units. The specified subrange to flush + is relative to the start of the currently mapped range of the buffer. glFlushMappedBufferRange may be called + multiple times to indicate distinct subranges of the mapping which require flushing. + + + Errors + + GL_INVALID_VALUE is generated if offset or length + is negative, or if offset + length exceeds the size of the mapping. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer bound to target is not + mapped, or is mapped without the GL_MAP_FLUSH_EXPLICIT flag. + + + See Also + + glMapBufferRange, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFramebufferParameteri.xml b/upstream-man-pages/man4/glFramebufferParameteri.xml new file mode 100644 index 0000000..dc784cd --- /dev/null +++ b/upstream-man-pages/man4/glFramebufferParameteri.xml @@ -0,0 +1,179 @@ + + + + + + + 2012 + Khronos Group + + + glFramebufferParameteri + 3G + + + glFramebufferParameteri + set a named parameter of a framebuffer + + C Specification + + + void glFramebufferParameteri + GLenum target + GLenum pname + GLint param + + + + Parameters + + + target + + + The target of the operation, which must be GL_READ_FRAMEBUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. + + + + + pname + + + A token indicating the parameter to be modified. + + + + + param + + + The new value for the parameter named pname. + + + + + + Description + + glFramebufferParameteri modifies the current value of the parameter + named pname in the framebuffer bound to target. + target must be GL_READ_FRAMEBFUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. The + token GL_FRAMEBUFFER is treated as GL_DRAW_FRAMEBUFFER. + A non-default framebuffer must be bound to target. + + + pname specifies the parameter to be modified. The following symbols + are accepted in pname: + + + + GL_FRAMEBUFFER_DEFAULT_WIDTH + + + param specifies the assumed with for a framebuffer object with no attachments. If a + framebuffer has attachments then the width of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_WIDTH is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_WIDTH. + + + + + GL_FRAMEBUFFER_DEFAULT_HEIGHT + + + param specifies the assumed height for a framebuffer object with no attachments. If a + framebuffer has attachments then the height of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_HEIGHT is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_HEIGHT. + + + + + GL_FRAMEBUFFER_DEFAULT_LAYERS + + + param specifies the assumed number of layers for a framebuffer object with no attachments. If a + framebuffer has attachments then the layer count of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_LAYERS is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_LAYERS. + + + + + GL_FRAMEBUFFER_DEFAULT_SAMPLES + + + param specifies the assumed number of samples in a framebuffer object with no attachments. If a + framebuffer has attachments then the sample count of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_SAMPLES is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_SAMPLE. + + + + + GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS + + + param specifies whether the framebuffer should assume identical sample locations and + the same number of samples for all texels in the virtual image. If param is zero, + then the implementation may vary the position or the count of samples within the virtual image from + pixel to pixel, otherwise it will use the same sample position and count for all pixels in the virtual image. + + + + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted + framebuffer targets. + + + GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_WIDTH + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_WIDTH. + + + GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_HEIGHT + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_HEIGHT. + + + GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_LAYERS + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_LAYERS. + + + GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_SAMPLES + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_SAMPLES. + + + GL_INVALID_OPERATION is generated if the default framebuffer is bound to target. + + + Associated Gets + + glGetFramebufferParameteriv. + + + See Also + + glVertexAttribBinding, + glVertexAttribFormat, + glVertexAttribPointer, + glVertexBindingDivisor. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFramebufferRenderbuffer.xml b/upstream-man-pages/man4/glFramebufferRenderbuffer.xml new file mode 100644 index 0000000..0eb8385 --- /dev/null +++ b/upstream-man-pages/man4/glFramebufferRenderbuffer.xml @@ -0,0 +1,127 @@ + + + + + + + 2010 + Khronos Group + + + glFramebufferRenderbuffer + 3G + + + glFramebufferRenderbuffer + attach a renderbuffer as a logical buffer to the currently bound framebuffer object + + C Specification + + + void glFramebufferRenderbuffer + GLenum target + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + + + Parameters + + + target + + + Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. + + + + + attachment + + + Specifies the attachment point of the framebuffer. + + + + + renderbuffertarget + + + Specifies the renderbuffer target and must be GL_RENDERBUFFER. + + + + + renderbuffer + + + Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach. + + + + + + Description + + glFramebufferRenderbuffer attaches a renderbuffer as one of the logical buffers of the + currently bound framebuffer object. renderbuffer is the name of the renderbuffer object + to attach and must be either zero, or the name of an existing renderbuffer object of type renderbuffertarget. + If renderbuffer is not zero and if glFramebufferRenderbuffer is + successful, then the renderbuffer name renderbuffer will be used as the logical buffer + identified by attachment of the framebuffer currently bound to target. + + + The value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE for the specified attachment point is + set to GL_RENDERBUFFER and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + is set to renderbuffer. All other state values of the attachment point specified by + attachment are set to their default values. No change is made to the state of the renderbuuffer + object and any previous attachment to the attachment logical buffer of the framebuffer + target is broken. + + + Calling glFramebufferRenderbuffer with the renderbuffer name zero will detach the image, if any, + identified by attachment, in the framebuffer currently bound to target. + All state values of the attachment point specified by attachment in the object bound to target are set to their default values. + + + Setting attachment to the value GL_DEPTH_STENCIL_ATTACHMENT is a special + case causing both the depth and stencil attachments of the framebuffer object to be set to renderbuffer, + which should have the base internal format GL_DEPTH_STENCIL. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glGenRenderbuffers, + glFramebufferTexture, + glFramebufferTexture1D, + glFramebufferTexture2D, + glFramebufferTexture3D + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFramebufferTexture.xml b/upstream-man-pages/man4/glFramebufferTexture.xml new file mode 100644 index 0000000..d8daff3 --- /dev/null +++ b/upstream-man-pages/man4/glFramebufferTexture.xml @@ -0,0 +1,207 @@ + + + + + + + 2010 + Khronos Group + + + glFramebufferTexture + 3G + + + glFramebufferTexture + attach a level of a texture object as a logical buffer to the currently bound framebuffer object + + C Specification + + + void glFramebufferTexture + GLenum target + GLenum attachment + GLuint texture + GLint level + + + void glFramebufferTexture1D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glFramebufferTexture2D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glFramebufferTexture3D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint layer + + + + + Parameters + + + target + + + Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. + + + + + attachment + + + Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + + + + + textarget + + + For glFramebufferTexture1D, glFramebufferTexture2D and + glFramebufferTexture3D, specifies what type of texture is expected + in the texture parameter, or for cube map textures, which face is to be attached. + + + + + texture + + + Specifies the texture object to attach to the framebuffer attachment point named by attachment. + + + + + level + + + Specifies the mipmap level of texture to attach. + + + + + + Description + + glFramebufferTexture, glFramebufferTexture1D, glFramebufferTexture2D, + and glFramebufferTexture attach a selected mipmap level or image of a texture object as one of the + logical buffers of the framebuffer object currently bound to target. target must + be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + + + attachment specifies the logical attachment of the framebuffer and must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + i in GL_COLOR_ATTACHMENTi may range from zero to + the value of GL_MAX_COLOR_ATTACHMENTS - 1. Attaching a level of a texture to + GL_DEPTH_STENCIL_ATTACHMENT is equivalent to attaching that level to both the + GL_DEPTH_ATTACHMENT and the GL_STENCIL_ATTACHMENT + attachment points simultaneously. + + + textarget specifies what type of texture is named by texture, and for + cube map textures, specifies the face that is to be attached. If texture is not zero, it + must be the name of an existing texture with type textarget, unless it is a cube map + texture, in which case textarget must be GL_TEXTURE_CUBE_MAP_POSITIVE_X + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + If texture is non-zero, the specified level of the texture object named + texture is attached to the framebfufer attachment point named by attachment. + For glFramebufferTexture1D, glFramebufferTexture2D, and + glFramebufferTexture3D, texture must be zero or the name of an existing + texture with a target of textarget, or texture must be the name + of an existing cube-map texture and textarget must be one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + If textarget is GL_TEXTURE_RECTANGLE, GL_TEXTURE_2D_MULTISAMPLE, + or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, then level must be zero. If textarget + is GL_TEXTURE_3D, then level must be greater than or equal to zero and less than or equal to log2 + of the value of GL_MAX_3D_TEXTURE_SIZE. If textarget is one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, then level must be greater + than or equal to zero and less than or equal to log2 of the value of GL_MAX_CUBE_MAP_TEXTURE_SIZE. For all other + values of textarget, level must be greater than or equal to zero and no larger than log2 + of the value of GL_MAX_TEXTURE_SIZE. + + + layer specifies the layer of a 2-dimensional image within a 3-dimensional texture. + + + For glFramebufferTexture1D, if texture is not zero, then textarget must + be GL_TEXTURE_1D. For glFramebufferTexture2D, if texture is not zero, + textarget must be one of GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_2D_MULTISAMPLE. For glFramebufferTexture3D, if texture is + not zero, then textarget must be GL_TEXTURE_3D. + + + Notes + + glFramebufferTexture is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + GL_INVALID_OPERATION is generated if textarget and texture + are not compatible. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glGenRenderbuffers, + glFramebufferTexture, + glFramebufferTexture1D, + glFramebufferTexture2D, + glFramebufferTexture3D + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFramebufferTextureLayer.xml b/upstream-man-pages/man4/glFramebufferTextureLayer.xml new file mode 100644 index 0000000..1a769ae --- /dev/null +++ b/upstream-man-pages/man4/glFramebufferTextureLayer.xml @@ -0,0 +1,128 @@ + + + + + + + 2010 + Khronos Group + + + glFramebufferTextureLayer + 3G + + + glFramebufferTextureLayer + attach a single layer of a texture to a framebuffer + + C Specification + + + void glFramebufferTextureLayer + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint layer + + + + + Parameters + + + target + + + Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. + + + + + attachment + + + Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + + + + + texture + + + Specifies the texture object to attach to the framebuffer attachment point named by attachment. + + + + + level + + + Specifies the mipmap level of texture to attach. + + + + + layer + + + Specifies the layer of texture to attach. + + + + + + Description + + glFramebufferTextureLayer operates like glFramebufferTexture, + except that only a single layer of the texture level, given by layer, is attached to the attachment point. + If texture is not zero, layer must be greater than or equal to zero. + texture must either be zero or the name of an existing three-dimensional texture, one- or two-dimensional array texture, + or multisample array texture. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if attachment is not one of the accepted tokens. + + + GL_INVALID_VALUE is generated if texture is not zero or the name of an existing + texture object. + + + GL_INVALID_VALUE is generated if texture is not zero and layer + is negative. + + + GL_INVALID_OPERATION is generated if zero is bound to target. + + + GL_INVALID_OPERATION is generated if texture is not zero or the name of an existing cube map texture. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glGenRenderbuffers, + glFramebufferTexture, + glFramebufferTextureFace + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glFrontFace.xml b/upstream-man-pages/man4/glFrontFace.xml new file mode 100644 index 0000000..7114da1 --- /dev/null +++ b/upstream-man-pages/man4/glFrontFace.xml @@ -0,0 +1,95 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glFrontFace + 3G + + + glFrontFace + define front- and back-facing polygons + + C Specification + + + void glFrontFace + GLenum mode + + + + + Parameters + + + mode + + + Specifies the orientation of front-facing polygons. + GL_CW and GL_CCW are accepted. + The initial value is GL_CCW. + + + + + + Description + + In a scene composed entirely of opaque closed surfaces, + back-facing polygons are never visible. + Eliminating these invisible polygons has the obvious benefit + of speeding up the rendering of the image. + To enable and disable elimination of back-facing polygons, call glEnable + and glDisable with argument GL_CULL_FACE. + + + The projection of a polygon to window coordinates is said to have + clockwise winding if an imaginary object following the path + from its first vertex, + its second vertex, + and so on, + to its last vertex, + and finally back to its first vertex, + moves in a clockwise direction about the interior of the polygon. + The polygon's winding is said to be counterclockwise if the imaginary + object following the same path moves in a counterclockwise direction + about the interior of the polygon. + glFrontFace specifies whether polygons with clockwise winding in window coordinates, + or counterclockwise winding in window coordinates, + are taken to be front-facing. + Passing GL_CCW to mode selects counterclockwise polygons as + front-facing; + GL_CW selects clockwise polygons as front-facing. + By default, counterclockwise polygons are taken to be front-facing. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + Associated Gets + + glGet with argument GL_FRONT_FACE + + + See Also + + glCullFace, + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGenBuffers.xml b/upstream-man-pages/man4/glGenBuffers.xml new file mode 100644 index 0000000..95c8a64 --- /dev/null +++ b/upstream-man-pages/man4/glGenBuffers.xml @@ -0,0 +1,90 @@ + + + + + + + 2005 + Sams Publishing + + + glGenBuffers + 3G + + + glGenBuffers + generate buffer object names + + C Specification + + + void glGenBuffers + GLsizei n + GLuint * buffers + + + + Parameters + + + n + + + Specifies the number of buffer object names to be generated. + + + + + buffers + + + Specifies an array in which the generated buffer object names are stored. + + + + + + Description + + glGenBuffers returns n buffer object names in buffers. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenBuffers. + + + Buffer object names returned by a call to glGenBuffers are not returned by + subsequent calls, unless they are first deleted with + glDeleteBuffers. + + + No buffer objects are associated with the returned buffer object names until they are first bound by calling + glBindBuffer. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsBuffer + + + See Also + + glBindBuffer, + glDeleteBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenFramebuffers.xml b/upstream-man-pages/man4/glGenFramebuffers.xml new file mode 100644 index 0000000..0a9742b --- /dev/null +++ b/upstream-man-pages/man4/glGenFramebuffers.xml @@ -0,0 +1,83 @@ + + + + + + + 2010 + Khronos Group + + + glGenFramebuffers + 3G + + + glGenFramebuffers + generate framebuffer object names + + C Specification + + + void glGenFramebuffers + GLsizei n + GLuint *ids + + + + + Parameters + + + n + + + Specifies the number of framebuffer object names to generate. + + + + + ids + + + Specifies an array in which the generated framebuffer object names are stored. + + + + + + Description + + glGenFramebuffers returns n framebuffer object names in ids. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenFramebuffers. + + + Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteFramebuffers. + + + The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, + but they acquire state and type only when they are first bound. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glBindFramebuffer, + glDeleteFramebuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenProgramPipelines.xml b/upstream-man-pages/man4/glGenProgramPipelines.xml new file mode 100644 index 0000000..e5fddb5 --- /dev/null +++ b/upstream-man-pages/man4/glGenProgramPipelines.xml @@ -0,0 +1,82 @@ + + + + + + + 2010 + Khronos Group. + + + glGenProgramPipelines + 3G + + + glGenProgramPipelines + reserve program pipeline object names + + C Specification + + + void glGenProgramPipelines + GLsizei n + GLuint *pipelines + + + + + Parameters + + + n + + + Specifies the number of program pipeline object names to reserve. + + + + + pipelines + + + Specifies an array of into which the reserved names will be written. + + + + + + Description + + glGenProgramPipelines returns n previously unused + program pipeline object names in pipelines. These names are marked as used, + for the purposes of glGenProgramPipelines only, but they + acquire program pipeline state only when they are first bound. + + + Associated Gets + + glGet with argument GL_PROGRAM_PIPELINE_BINDING + + + glIsProgramPipeline + + + See Also + + glDeleteProgramPipelines, + glBindProgramPipeline, + glIsProgramPipeline, + glUseShaderPrograms, + glUseProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenQueries.xml b/upstream-man-pages/man4/glGenQueries.xml new file mode 100644 index 0000000..0661939 --- /dev/null +++ b/upstream-man-pages/man4/glGenQueries.xml @@ -0,0 +1,90 @@ + + + + + + + 2005 + Sams Publishing + + + glGenQueries + 3G + + + glGenQueries + generate query object names + + C Specification + + + void glGenQueries + GLsizei n + GLuint * ids + + + + Parameters + + + n + + + Specifies the number of query object names to be generated. + + + + + ids + + + Specifies an array in which the generated query object names are stored. + + + + + + Description + + glGenQueries returns n query object names in ids. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenQueries. + + + Query object names returned by a call to glGenQueries are not returned by + subsequent calls, unless they are first deleted with + glDeleteQueries. + + + No query objects are associated with the returned query object names until they are first used by calling + glBeginQuery. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsQuery + + + See Also + + glBeginQuery, + glDeleteQueries, + glEndQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenRenderbuffers.xml b/upstream-man-pages/man4/glGenRenderbuffers.xml new file mode 100644 index 0000000..70ba5aa --- /dev/null +++ b/upstream-man-pages/man4/glGenRenderbuffers.xml @@ -0,0 +1,83 @@ + + + + + + + 2010 + Khronos Group + + + glGenRenderbuffers + 3G + + + glGenRenderbuffers + generate renderbuffer object names + + C Specification + + + void glGenRenderbuffers + GLsizei n + GLuint *renderbuffers + + + + + Parameters + + + n + + + Specifies the number of renderbuffer object names to generate. + + + + + renderbuffers + + + Specifies an array in which the generated renderbuffer object names are stored. + + + + + + Description + + glGenRenderbuffers returns n renderbuffer object names in renderbuffers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenRenderbuffers. + + + Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteRenderbuffers. + + + The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, + but they acquire state and type only when they are first bound. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenSamplers.xml b/upstream-man-pages/man4/glGenSamplers.xml new file mode 100644 index 0000000..78b016b --- /dev/null +++ b/upstream-man-pages/man4/glGenSamplers.xml @@ -0,0 +1,89 @@ + + + + + + + 2010 + Khronos Group + + + glGenSamplers + 3G + + + glGenSamplers + generate sampler object names + + C Specification + + + void glGenSamplers + GLsizei n + GLuint *samplers + + + + + Parameters + + + n + + + Specifies the number of sampler object names to generate. + + + + + samplers + + + Specifies an array in which the generated sampler object names are stored. + + + + + + Description + + glGenSamplers returns n sampler object names in samplers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenSamplers. + + + Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless + they are first deleted with glDeleteSamplers. + + + The names returned in samplers are marked as used, for the purposes of glGenSamplers only, + but they acquire state and type only when they are first bound. + + + Notes + + glGenSamplers is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glBindSampler, + glIsSampler, + glDeleteSamplers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenTextures.xml b/upstream-man-pages/man4/glGenTextures.xml new file mode 100644 index 0000000..1f84256 --- /dev/null +++ b/upstream-man-pages/man4/glGenTextures.xml @@ -0,0 +1,98 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGenTextures + 3G + + + glGenTextures + generate texture names + + C Specification + + + void glGenTextures + GLsizei n + GLuint * textures + + + + Parameters + + + n + + + Specifies the number of texture names to be generated. + + + + + textures + + + Specifies an array in which the generated texture names are stored. + + + + + + Description + + glGenTextures returns n texture names in textures. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenTextures. + + + The generated textures have no dimensionality; they assume the dimensionality + of the texture target to which they are first bound + (see glBindTexture). + + + Texture names returned by a call to glGenTextures are not returned by + subsequent calls, unless they are first deleted with + glDeleteTextures. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + Associated Gets + + glIsTexture + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glDeleteTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGenTransformFeedbacks.xml b/upstream-man-pages/man4/glGenTransformFeedbacks.xml new file mode 100644 index 0000000..044e889 --- /dev/null +++ b/upstream-man-pages/man4/glGenTransformFeedbacks.xml @@ -0,0 +1,84 @@ + + + + + + + 2010 + Khronos Group. + + + glGenTransformFeedbacks + 3G + + + glGenTransformFeedbacks + reserve transform feedback object names + + C Specification + + + void glGenTransformFeedbacks + GLsizei n + GLuint *ids + + + + + Parameters + + + n + + + Specifies the number of transform feedback object names to reserve. + + + + + ids + + + Specifies an array of into which the reserved names will be written. + + + + + + Description + + glGenTransformFeedbacks returns n previously unused + transform feedback object names in ids. These names are marked as used, + for the purposes of glGenTransformFeedbacks only, but they + acquire transform feedback state only when they are first bound. + + + Associated Gets + + glGet with argument GL_TRANSFORM_FEEDBACK_BINDING + + + glIsTransformFeedback + + + See Also + + glDeleteTransformFeedbacks, + glBindTransformFeedback, + glIsTransformFeedback, + glBeginTransformFeedback, + glPauseTransformFeedback, + glResumeTransformFeedback, + glEndTransformFeedback + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenVertexArrays.xml b/upstream-man-pages/man4/glGenVertexArrays.xml new file mode 100644 index 0000000..37d5def --- /dev/null +++ b/upstream-man-pages/man4/glGenVertexArrays.xml @@ -0,0 +1,83 @@ + + + + + + + 2010 + Khronos Group + + + glGenVertexArrays + 3G + + + glGenVertexArrays + generate vertex array object names + + C Specification + + + void glGenVertexArrays + GLsizei n + GLuint *arrays + + + + + Parameters + + + n + + + Specifies the number of vertex array object names to generate. + + + + + arrays + + + Specifies an array in which the generated vertex array object names are stored. + + + + + + Description + + glGenVertexArrays returns n vertex array object names in arrays. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenVertexArrays. + + + Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless + they are first deleted with glDeleteVertexArrays. + + + The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, + but they acquire state and type only when they are first bound. + + + Errors + + GL_INVALID_VALUE is generated if n is negative. + + + See Also + + glBindVertexArray, + glDeleteVertexArrays + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGenerateMipmap.xml b/upstream-man-pages/man4/glGenerateMipmap.xml new file mode 100644 index 0000000..0bd7482 --- /dev/null +++ b/upstream-man-pages/man4/glGenerateMipmap.xml @@ -0,0 +1,144 @@ + + + + + + + 2010 + Khronos Group + + + glGenerateMipmap + 3G + + + glGenerateMipmap + generate mipmaps for a specified texture target + + C Specification + + + void glGenerateMipmap + GLenum target + + + + + Parameters + + + target + + + Specifies the target to which the texture whose mimaps to generate is bound. target must + be GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY or + GL_TEXTURE_CUBE_MAP. + + + + + + Description + + glGenerateMipmap generates mipmaps for the texture attached + to target of the active texture unit. For cube map textures, + a GL_INVALID_OPERATION error is generated if the texture + attached to target is not cube complete. + + + Mipmap generation replaces texel array levels + + + + + level + base + + + + 1 + + + through + + + q + + + with arrays derived from the + + + + + level + base + + + + array, regardless of their previous contents. All other mimap arrays, + including the + + + + + level + base + + + + array, are left unchanged by this computation. + + + The internal formats of the derived mipmap arrays all match those of the + + + + + level + base + + + + array. The contents of the derived arrays are computed by repeated, filtered + reduction of the + + + + + level + base + + + + array. For one- and two-dimensional texture arrays, each layer is filtered + independently. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted texture targets. + + + GL_INVALID_OPERATION is generated if target is + GL_TEXTURE_CUBE_MAP and the texture bound to the GL_TEXTURE_CUBE_MAP + target of the active texture unit is not cube complete. + + + See Also + + glTexImage2D, + glBindTexture, + glGenTextures + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGet.xml b/upstream-man-pages/man4/glGet.xml new file mode 100644 index 0000000..1931592 --- /dev/null +++ b/upstream-man-pages/man4/glGet.xml @@ -0,0 +1,3227 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGet + 3G + + + glGet + return the value or values of a selected parameter + + C Specification + + + void glGetBooleanv + GLenum pname + GLboolean * params + + + + C Specification + + + void glGetDoublev + GLenum pname + GLdouble * params + + + + C Specification + + + void glGetFloatv + GLenum pname + GLfloat * params + + + + C Specification + + + void glGetIntegerv + GLenum pname + GLint * params + + + + C Specification + + + void glGetInteger64v + GLenum pname + GLint64 * params + + + + + Parameters + + + pname + + + Specifies the parameter value to be returned. + The symbolic constants in the list below are accepted. + + + + + params + + + Returns the value or values of the specified parameter. + + + + + + C Specification + + + void glGetBooleani_v + GLenum pname + GLuint index + GLboolean * data + + + + C Specification + + + void glGetIntegeri_v + GLenum pname + GLuint index + GLint * data + + + + C Specification + + + void glGetFloati_v + GLenum pname + GLuint index + GLfloat * data + + + + C Specification + + + void glGetDoublei_v + GLenum pname + GLuint index + GLdouble * data + + + + C Specification + + + void glGetInteger64i_v + GLenum pname + GLuint index + GLint64 * data + + + + + Parameters + + + pname + + + Specifies the parameter value to be returned. + The symbolic constants in the list below are accepted. + + + + + index + + + Specifies the index of the particular element being queried. + + + + + data + + + Returns the value or values of the specified parameter. + + + + + + Description + + These four commands return values for simple state variables in GL. + pname is a symbolic constant indicating the state variable to be returned, + and params is a pointer to an array of the indicated type in + which to place the returned data. + + + Type conversion is performed if params has a different type than + the state variable value being requested. + If glGetBooleanv is called, + a floating-point (or integer) value is converted to GL_FALSE if + and only if it is 0.0 (or 0). + Otherwise, + it is converted to GL_TRUE. + If glGetIntegerv is called, boolean values are returned as + GL_TRUE or GL_FALSE, and most floating-point values are + rounded to the nearest integer value. Floating-point colors and + normals, however, are returned with a linear mapping that maps 1.0 to + the most positive representable integer value + and + + + -1.0 + + to the most negative representable integer value. + If glGetFloatv or glGetDoublev is called, + boolean values are returned as GL_TRUE or GL_FALSE, + and integer values are converted to floating-point values. + + + The following symbolic constants are accepted by pname: + + + + GL_ACTIVE_TEXTURE + + + + + params returns a single value indicating the active multitexture unit. + The initial value is GL_TEXTURE0. + See glActiveTexture. + + + + + GL_ALIASED_LINE_WIDTH_RANGE + + + + + params returns a pair of values indicating the range of + widths supported for aliased lines. See glLineWidth. + + + + + GL_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_ARRAY_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_BLEND + + + + + params returns a single boolean value indicating whether blending is + enabled. The initial value is GL_FALSE. + See glBlendFunc. + + + + + GL_BLEND_COLOR + + + + + params returns four values, + the red, green, blue, and alpha values which are the components of + the blend color. + See glBlendColor. + + + + + GL_BLEND_DST_ALPHA + + + + + params returns one value, + the symbolic constant identifying the alpha destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_DST_RGB + + + + + params returns one value, + the symbolic constant identifying the RGB destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_EQUATION_RGB + + + + + params returns one value, a symbolic constant indicating whether + the RGB blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. + + + + + GL_BLEND_EQUATION_ALPHA + + + + + params returns one value, a symbolic constant indicating whether + the Alpha blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. + + + + + GL_BLEND_SRC_ALPHA + + + + + params returns one value, + the symbolic constant identifying the alpha source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_BLEND_SRC_RGB + + + + + params returns one value, + the symbolic constant identifying the RGB source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. + + + + + GL_COLOR_CLEAR_VALUE + + + + + params returns four values: + the red, green, blue, and alpha values used to clear the color buffers. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 0, 0, 0). + See glClearColor. + + + + + GL_COLOR_LOGIC_OP + + + + + params returns a single boolean value indicating whether a fragment's + RGBA color values are merged into the framebuffer using a logical + operation. The initial value is GL_FALSE. + See glLogicOp. + + + + + GL_COLOR_WRITEMASK + + + + + params returns four boolean values: + the red, green, blue, and alpha write enables for the color + buffers. The initial value is (GL_TRUE, GL_TRUE, + GL_TRUE, GL_TRUE). + See glColorMask. + + + + + GL_COMPRESSED_TEXTURE_FORMATS + + + + + params returns a list of symbolic + constants of length GL_NUM_COMPRESSED_TEXTURE_FORMATS + indicating which compressed texture formats are available. + See glCompressedTexImage2D. + + + + + GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum number of active shader storage blocks that may be accessed by a compute shader. + + + + + GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum total number of active shader storage blocks that may be accessed by all active shaders. + + + + + + GL_MAX_COMPUTE_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per compute shader. The value must be at least 14. + See glUniformBlockBinding. + + + + + GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS + + + + + params 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 glActiveTexture. + + + + + GL_MAX_COMPUTE_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a compute shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_COMPUTE_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to compute shaders. + + + + + GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS + + + + + params returns a single value, the maximum number of atomic counter buffers that may be accessed by a compute shader. + + + + + GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS + + + + + params 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 glUniform. + + + + + GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS + + + + + params 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. + + + + + GL_MAX_COMPUTE_WORK_GROUP_COUNT + + + + + Accepted by the indexed versions of glGet. + params 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. + + + + + GL_MAX_COMPUTE_WORK_GROUP_SIZE + + + + + Accepted by the indexed versions of glGet. + params 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. + + + + + GL_DISPATCH_INDIRECT_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_DISPATCH_INDIRECT_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + + + GL_MAX_DEBUG_GROUP_STACK_DEPTH + + + + + params returns a single value, the maximum depth of the + debug message group stack. + + + + + GL_DEBUG_GROUP_STACK_DEPTH + + + + + params returns a single value, the current depth of the + debug message group stack. + + + + + + GL_CONTEXT_FLAGS + + + + + params returns one value, + the flags with which the context was created (such as debugging functionality). + + + + + GL_CULL_FACE + + + + + params returns a single boolean value indicating whether polygon culling + is enabled. The initial value is GL_FALSE. + See glCullFace. + + + + + GL_CURRENT_PROGRAM + + + + + params returns one value, + the name of the program object that is currently active, or 0 if no program object is active. + See glUseProgram. + + + + + GL_DEPTH_CLEAR_VALUE + + + + + params returns one value, + the value that is used to clear the depth buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is 1. + See glClearDepth. + + + + + GL_DEPTH_FUNC + + + + + params returns one value, + the symbolic constant that indicates the depth comparison + function. The initial value is GL_LESS. + See glDepthFunc. + + + + + GL_DEPTH_RANGE + + + + + params returns two values: + the near and far mapping limits for the depth buffer. + Integer values, + if requested, + are linearly mapped from the internal floating-point representation such + that 1.0 returns the most positive representable integer value, + and + + + -1.0 + + returns the most negative representable integer + value. The initial value is (0, 1). + See glDepthRange. + + + + + GL_DEPTH_TEST + + + + + params returns a single boolean value indicating whether depth testing + of fragments is enabled. The initial value is GL_FALSE. + See glDepthFunc and glDepthRange. + + + + + GL_DEPTH_WRITEMASK + + + + + params returns a single boolean value indicating if the depth buffer + is enabled for writing. The initial value is GL_TRUE. + See glDepthMask. + + + + + GL_DITHER + + + + + params returns a single boolean value indicating whether dithering of + fragment colors and indices is enabled. The initial value is GL_TRUE. + + + + + GL_DOUBLEBUFFER + + + + + params returns a single boolean value indicating whether double buffering + is supported. + + + + + GL_DRAW_BUFFER + + + + + params returns one value, + a symbolic constant indicating which buffers are being drawn to. + See glDrawBuffer. The initial value is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. + + + + + GL_DRAW_BUFFERi + + + + + params returns one value, + a symbolic constant indicating which buffers are being drawn to by the corresponding output color. + See glDrawBuffers. + The initial value of GL_DRAW_BUFFER0 is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. The + initial values of draw buffers for all other output colors is GL_NONE. + + + + + GL_DRAW_FRAMEBUFFER_BINDING + + + + + params returns one value, + the name of the framebuffer object currently bound to the GL_DRAW_FRAMEBUFFER target. + If the default framebuffer is bound, this value will be zero. The initial value is zero. + See glBindFramebuffer. + + + + + GL_READ_FRAMEBUFFER_BINDING + + + + + params returns one value, + the name of the framebuffer object currently bound to the GL_READ_FRAMEBUFFER target. + If the default framebuffer is bound, this value will be zero. The initial value is zero. + See glBindFramebuffer. + + + + + GL_ELEMENT_ARRAY_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_ELEMENT_ARRAY_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the derivative accuracy hint + for fragment shaders. The initial value + is GL_DONT_CARE. + See glHint. + + + + + GL_IMPLEMENTATION_COLOR_READ_FORMAT + + + + + params returns a single GLenum value indicating + the implementation's preferred pixel data format. + See glReadPixels. + + + + + GL_IMPLEMENTATION_COLOR_READ_TYPE + + + + + params returns a single GLenum value indicating + the implementation's preferred pixel data type. + See glReadPixels. + + + + + GL_LINE_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + lines is enabled. The initial value is GL_FALSE. + See glLineWidth. + + + + + GL_LINE_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the line antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_LINE_WIDTH + + + + + params returns one value, + the line width as specified with glLineWidth. The initial value is + 1. + + + + + GL_LAYER_PROVOKING_VERTEX + + + + + params 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 GL_PROVOKING_VERTEX, then the vertex + selection follows the convention specified by + glProvokingVertex. + If the value returned is equivalent to GL_FIRST_VERTEX_CONVENTION, then the + selection is always taken from the first vertex in the primitive. + If the value returned is equivalent to GL_LAST_VERTEX_CONVENTION, then the + selection is always taken from the last vertex in the primitive. + If the value returned is equivalent to GL_UNDEFINED_VERTEX, then the + selection is not guaranteed to be taken from any specific vertex in the primitive. + + + + + GL_LINE_WIDTH_GRANULARITY + + + + + params returns one value, + the width difference between adjacent supported widths for antialiased lines. + See glLineWidth. + + + + + GL_LINE_WIDTH_RANGE + + + + + params returns two values: + the smallest and largest supported widths for antialiased + lines. + See glLineWidth. + + + + + GL_LOGIC_OP_MODE + + + + + params returns one value, + a symbolic constant indicating the selected logic operation + mode. The initial value is GL_COPY. + See glLogicOp. + + + + + GL_MAJOR_VERSION + + + + + params returns one value, + the major version number of the OpenGL API supported by the current context. + + + + + GL_MAX_3D_TEXTURE_SIZE + + + + + params returns one value, + a rough estimate of the largest 3D texture that the GL can handle. + The value must be at least 64. + Use GL_PROXY_TEXTURE_3D to determine if a texture is too large. + See glTexImage3D. + + + + + GL_MAX_ARRAY_TEXTURE_LAYERS + + + + + params returns one value. + The value indicates the maximum number of layers allowed in an array texture, and must be at least 256. + See glTexImage2D. + + + + + GL_MAX_CLIP_DISTANCES + + + + + params returns one value, + the maximum number of application-defined clipping distances. The value must be at least 8. + + + + + GL_MAX_COLOR_TEXTURE_SAMPLES + + + + + params returns one value, + the maximum number of samples in a color multisample texture. + + + + + + GL_MAX_COMBINED_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to all active shaders. + + + + + + GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS + + + + + params returns one value, + the number of words for fragment shader uniform variables in all uniform + blocks (including default). The value must be at least 1. + See glUniform. + + + + + GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS + + + + + params returns one value, + the number of words for geometry shader uniform variables in all uniform + blocks (including default). The value must be at least 1. + See glUniform. + + + + + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader and the fragment processor combined. + If both the vertex shader and the fragment processing stage access the same texture image + unit, then that counts as using two texture image units against this limit. + The value must be at least 48. + See glActiveTexture. + + + + + GL_MAX_COMBINED_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per program. The value must be at least 36. + See glUniformBlockBinding. + + + + + GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS + + + + + params returns one value, + the number of words for vertex shader uniform variables in all uniform + blocks (including default). The value must be at least 1. + See glUniform. + + + + + GL_MAX_CUBE_MAP_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest cube-map texture that + the GL can handle. The value must be at least 1024. + Use GL_PROXY_TEXTURE_CUBE_MAP + to determine if a texture is too large. + See glTexImage2D. + + + + + GL_MAX_DEPTH_TEXTURE_SAMPLES + + + + + params returns one value, + the maximum number of samples in a multisample depth or depth-stencil texture. + + + + + GL_MAX_DRAW_BUFFERS + + + + + params returns one value, the maximum number + of simultaneous outputs that may be written in a fragment shader. + The value must be at least 8. + See glDrawBuffers. + + + + + GL_MAX_DUALSOURCE_DRAW_BUFFERS + + + + + params returns one value, the maximum number + of active draw buffers when using dual-source blending. The value must be at least 1. + See glBlendFunc and + glBlendFuncSeparate. + + + + + GL_MAX_ELEMENTS_INDICES + + + + + params returns one value, + the recommended maximum number of vertex array indices. + See glDrawRangeElements. + + + + + GL_MAX_ELEMENTS_VERTICES + + + + + params returns one value, + the recommended maximum number of vertex array vertices. + See glDrawRangeElements. + + + + + + GL_MAX_FRAGMENT_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to fragment shaders. + + + + + + GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum number of active shader storage blocks that may be accessed by a fragment shader. + + + + + GL_MAX_FRAGMENT_INPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of the inputs read by the fragment shader, which must be at least 128. + + + + + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a fragment shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_FRAGMENT_UNIFORM_VECTORS + + + + + params 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 + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS divided by 4 and must be at least 256. + See glUniform. + + + + + GL_MAX_FRAGMENT_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per fragment shader. The value must be at least 12. + See glUniformBlockBinding. + + + + + GL_MAX_FRAMEBUFFER_WIDTH + + + + + params returns one value, + the maximum width for a framebuffer that has no attachments, which must be at least 16384. + See glFramebufferParameter. + + + + + GL_MAX_FRAMEBUFFER_HEIGHT + + + + + params returns one value, + the maximum height for a framebuffer that has no attachments, which must be at least 16384. + See glFramebufferParameter. + + + + + GL_MAX_FRAMEBUFFER_LAYERS + + + + + params returns one value, + the maximum number of layers for a framebuffer that has no attachments, which must be at least 2048. + See glFramebufferParameter. + + + + + GL_MAX_FRAMEBUFFER_SAMPLES + + + + + params returns one value, + the maximum samples in a framebuffer that has no attachments, which must be at least 4. + See glFramebufferParameter. + + + + + + GL_MAX_GEOMETRY_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to geometry shaders. + + + + + + GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum number of active shader storage blocks that may be accessed by a geometry shader. + + + + + GL_MAX_GEOMETRY_INPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of inputs read by a geometry shader, which must be at least 64. + + + + + GL_MAX_GEOMETRY_OUTPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of outputs written by a geometry shader, which must be at least 128. + + + + + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the geometry shader. The value must be at least 16. + See glActiveTexture. + + + + + GL_MAX_GEOMETRY_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per geometry shader. The value must be at least 12. + See glUniformBlockBinding. + + + + + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a geometry shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_INTEGER_SAMPLES + + + + + params returns one value, + the maximum number of samples supported in integer format multisample buffers. + + + + + GL_MIN_MAP_BUFFER_ALIGNMENT + + + + + params returns one value, + the minimum alignment in basic machine units of pointers returned fromglMapBuffer + and glMapBufferRange. This value must be a power of two and must + be at least 64. + + + + + GL_MAX_LABEL_LENGTH + + + + + params returns one value, + the maximum length of a label that may be assigned to an object. + See glObjectLabel and + glObjectPtrLabel. + + + + + GL_MAX_PROGRAM_TEXEL_OFFSET + + + + + params returns one value, + the maximum texel offset allowed in a texture lookup, which must be at least 7. + + + + + GL_MIN_PROGRAM_TEXEL_OFFSET + + + + + params returns one value, + the minimum texel offset allowed in a texture lookup, which must be at most -8. + + + + + GL_MAX_RECTANGLE_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest rectangular texture that + the GL can handle. The value must be at least 1024. + Use GL_PROXY_RECTANGLE_TEXTURE + to determine if a texture is too large. + See glTexImage2D. + + + + + GL_MAX_RENDERBUFFER_SIZE + + + + + params returns one value. + The value indicates the maximum supported size for renderbuffers. + See glFramebufferRenderbuffer. + + + + + GL_MAX_SAMPLE_MASK_WORDS + + + + + params returns one value, + the maximum number of sample mask words. + + + + + GL_MAX_SERVER_WAIT_TIMEOUT + + + + + params returns one value, + the maximum glWaitSync timeout interval. + + + + + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS + + + + + params returns one value, + the maximum number of shader storage buffer binding points on the context, which must be at least 8. + + + + + + GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to tessellation control shaders. + + + + + GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to tessellation evaluation shaders. + + + + + GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum number of active shader storage blocks that may be accessed by a tessellation control shader. + + + + + GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum number of active shader storage blocks that may be accessed by a tessellation evaluation shader. + + + + + + GL_MAX_TEXTURE_BUFFER_SIZE + + + + + params returns one value. + The value gives the maximum number of texels allowed in the texel array of a texture buffer object. + Value must be at least 65536. + + + + + GL_MAX_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the fragment shader. + The value must be at least 16. + See glActiveTexture. + + + + + GL_MAX_TEXTURE_LOD_BIAS + + + + + params returns one value, + the maximum, absolute value of the texture level-of-detail bias. The + value must be at least 2.0. + + + + + GL_MAX_TEXTURE_SIZE + + + + + params returns one value. + The value gives a rough estimate of the largest texture that + the GL can handle. The value must be at least 1024. + Use a proxy texture target such as GL_PROXY_TEXTURE_1D or GL_PROXY_TEXTURE_2D + to determine if a texture is too large. + See glTexImage1D and glTexImage2D. + + + + + GL_MAX_UNIFORM_BUFFER_BINDINGS + + + + + params returns one value, + the maximum number of uniform buffer binding points on the context, which must be at least 36. + + + + + GL_MAX_UNIFORM_BLOCK_SIZE + + + + + params returns one value, + the maximum size in basic machine units of a uniform block, which must be at least 16384. + + + + + GL_MAX_UNIFORM_LOCATIONS + + + + + params returns one value, + the maximum number of explicitly assignable uniform locations, which must be at least 1024. + + + + + GL_MAX_VARYING_COMPONENTS + + + + + params returns one value, + the number components for varying variables, which must be at least 60. + + + + + GL_MAX_VARYING_VECTORS + + + + + params returns one value, + the number 4-vectors for varying variables, which is equal to the value of + GL_MAX_VARYING_COMPONENTS and must be at least 15. + + + + + GL_MAX_VARYING_FLOATS + + + + + params returns one value, + the maximum number of interpolators available for processing varying variables used by + vertex and fragment shaders. This value represents the number of individual floating-point + values that can be interpolated; varying variables declared as vectors, matrices, and arrays + will all consume multiple interpolators. The value must be at least 32. + + + + + + GL_MAX_VERTEX_ATOMIC_COUNTERS + + + + + params returns a single value, the maximum number of atomic counters available to vertex shaders. + + + + + + GL_MAX_VERTEX_ATTRIBS + + + + + params returns one value, + the maximum number of 4-component generic vertex attributes accessible to a vertex shader. + The value must be at least 16. + See glVertexAttrib. + + + + + GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS + + + + + params returns one value, + the maximum number of active shader storage blocks that may be accessed by a vertex shader. + + + + + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS + + + + + params returns one value, the maximum supported texture image units that + can be used to access texture maps from the vertex shader. The value may be at least 16. + See glActiveTexture. + + + + + GL_MAX_VERTEX_UNIFORM_COMPONENTS + + + + + params returns one value, + the maximum number of individual floating-point, integer, or boolean values that can be held + in uniform variable storage for a vertex shader. The value must be at least 1024. + See glUniform. + + + + + GL_MAX_VERTEX_UNIFORM_VECTORS + + + + + params returns one value, + the maximum number of 4-vectors that may be held in uniform variable storage for the vertex + shader. The value of GL_MAX_VERTEX_UNIFORM_VECTORS is equal to the + value of GL_MAX_VERTEX_UNIFORM_COMPONENTS and must be at least + 256. + + + + + GL_MAX_VERTEX_OUTPUT_COMPONENTS + + + + + params returns one value, + the maximum number of components of output written by a vertex shader, which must be at least 64. + + + + + GL_MAX_VERTEX_UNIFORM_BLOCKS + + + + + params returns one value, + the maximum number of uniform blocks per vertex shader. The value must be at least 12. + See glUniformBlockBinding. + + + + + GL_MAX_VIEWPORT_DIMS + + + + + params returns two values: + the maximum supported width and height of the viewport. + These must be at least as large as the visible dimensions of the display + being rendered to. + See glViewport. + + + + + GL_MAX_VIEWPORTS + + + + + params returns one value, the maximum number + of simultaneous viewports that are supported. + The value must be at least 16. + See glViewportIndexed. + + + + + GL_MINOR_VERSION + + + + + params returns one value, + the minor version number of the OpenGL API supported by the current context. + + + + + GL_NUM_COMPRESSED_TEXTURE_FORMATS + + + + + params returns a single integer value indicating the number of available + compressed texture formats. The minimum value is 4. + See glCompressedTexImage2D. + + + + + GL_NUM_EXTENSIONS + + + + + params returns one value, + the number of extensions supported by the GL implementation for the current context. + See glGetString. + + + + + GL_NUM_PROGRAM_BINARY_FORMATS + + + + + params returns one value, + the number of program binary formats supported by the implementation. + + + + + GL_NUM_SHADER_BINARY_FORMATS + + + + + params 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. + + + + + GL_PACK_ALIGNMENT + + + + + params returns one value, + the byte alignment used for writing pixel data to memory. The initial + value is 4. + See glPixelStore. + + + + + GL_PACK_IMAGE_HEIGHT + + + + + params returns one value, + the image height used for writing pixel data to memory. The initial + value is 0. + See glPixelStore. + + + + + GL_PACK_LSB_FIRST + + + + + params returns a single boolean value indicating whether single-bit + pixels being written to memory are written first to the least significant + bit of each unsigned byte. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_PACK_ROW_LENGTH + + + + + params returns one value, + the row length used for writing pixel data to memory. The initial value is + 0. + See glPixelStore. + + + + + GL_PACK_SKIP_IMAGES + + + + + params returns one value, + the number of pixel images skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SKIP_PIXELS + + + + + params returns one value, + the number of pixel locations skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SKIP_ROWS + + + + + params returns one value, + the number of rows of pixel locations skipped before the first pixel is written + into memory. The initial value is 0. + See glPixelStore. + + + + + GL_PACK_SWAP_BYTES + + + + + params returns a single boolean value indicating whether the bytes of + two-byte and four-byte pixel indices and components are swapped before being + written to memory. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_PIXEL_PACK_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_PIXEL_PACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_PIXEL_UNPACK_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the target GL_PIXEL_UNPACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindBuffer. + + + + + GL_POINT_FADE_THRESHOLD_SIZE + + + + + params returns one value, + the point size threshold for determining the point size. + See glPointParameter. + + + + + GL_PRIMITIVE_RESTART_INDEX + + + + + params returns one value, + the current primitive restart index. The initial value is 0. + See glPrimitiveRestartIndex. + + + + + GL_PROGRAM_BINARY_FORMATS + + + + + params an array of GL_NUM_PROGRAM_BINARY_FORMATS values, + indicating the proram binary formats supported by the implementation. + + + + + GL_PROGRAM_PIPELINE_BINDING + + + + + params a single value, the name of the currently bound program pipeline + object, or zero if no program pipeline object is bound. + See glBindProgramPipeline. + + + + + GL_PROVOKING_VERTEX + + + + + params returns one value, + the currently selected provoking vertex convention. The initial value is GL_LAST_VERTEX_CONVENTION. + See glProvokingVertex. + + + + + GL_POINT_SIZE + + + + + params returns one value, + the point size as specified by glPointSize. + The initial value is 1. + + + + + GL_POINT_SIZE_GRANULARITY + + + + + params returns one value, + the size difference between adjacent supported sizes for antialiased points. + See glPointSize. + + + + + GL_POINT_SIZE_RANGE + + + + + params returns two values: + the smallest and largest supported sizes for antialiased + points. The smallest size must be at most 1, and the largest size must + be at least 1. + See glPointSize. + + + + + GL_POLYGON_OFFSET_FACTOR + + + + + params returns one value, + the scaling factor used to determine the variable offset that is added + to the depth value of each fragment generated when a polygon is + rasterized. The initial value is 0. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_UNITS + + + + + params returns one value. + This value is multiplied by an implementation-specific value and then + added to the depth value of each fragment + generated when a polygon is rasterized. The initial value is 0. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_FILL + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in fill mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_LINE + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in line mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_OFFSET_POINT + + + + + params returns a single boolean value indicating whether polygon offset + is enabled for polygons in point mode. The initial value is GL_FALSE. + See glPolygonOffset. + + + + + GL_POLYGON_SMOOTH + + + + + params returns a single boolean value indicating whether antialiasing of + polygons is enabled. The initial value is GL_FALSE. + See glPolygonMode. + + + + + GL_POLYGON_SMOOTH_HINT + + + + + params returns one value, + a symbolic constant indicating the mode of the polygon antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. + + + + + GL_READ_BUFFER + + + + + params returns one value, + a symbolic constant indicating which color buffer is selected for + reading. The initial value is GL_BACK if there is a back buffer, + otherwise it is GL_FRONT. + See + glReadPixels. + + + + + GL_RENDERBUFFER_BINDING + + + + + params returns a single value, the name of the renderbuffer object + currently bound to the target GL_RENDERBUFFER. If no renderbuffer object + is bound to this target, 0 is returned. The initial value is 0. + See glBindRenderbuffer. + + + + + GL_SAMPLE_BUFFERS + + + + + params returns a single integer value indicating the number of sample buffers + associated with the framebuffer. + See glSampleCoverage. + + + + + GL_SAMPLE_COVERAGE_VALUE + + + + + params returns a single positive floating-point value indicating the + current sample coverage value. + See glSampleCoverage. + + + + + GL_SAMPLE_COVERAGE_INVERT + + + + + params returns a single boolean value indicating if the temporary + coverage value should be inverted. + See glSampleCoverage. + + + + + GL_SAMPLER_BINDING + + + + + params returns a single value, the name of the sampler object + currently bound to the active texture unit. The initial value is 0. + See glBindSampler. + + + + + GL_SAMPLES + + + + + params returns a single integer value indicating the coverage mask size. + See glSampleCoverage. + + + + + GL_SCISSOR_BOX + + + + + params returns four values: + the + x + and + y + window coordinates of the scissor box, + followed by its width and height. + Initially the + x + and + y + window coordinates are both 0 and the + width and height are set to the size of the window. + See glScissor. + + + + + GL_SCISSOR_TEST + + + + + params returns a single boolean value indicating whether scissoring is + enabled. The initial value is GL_FALSE. + See glScissor. + + + + + GL_SHADER_COMPILER + + + + + params 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 GL_SHADER_COMPILER + will always be GL_TRUE. + + + + + GL_SHADER_STORAGE_BUFFER_BINDING + + + + + When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_SHADER_STORAGE_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params 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 glBindBuffer, glBindBufferBase, and + glBindBufferRange. + + + + + GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT + + + + + params returns a single value, the minimum required alignment + for shader storage buffer sizes and offset. The initial value is 1. + See glShaderStorateBlockBinding. + + + + + GL_SHADER_STORAGE_BUFFER_START + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params 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 glBindBufferRange. + + + + + GL_SHADER_STORAGE_BUFFER_SIZE + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params 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 glBindBufferRange. + + + + + GL_SMOOTH_LINE_WIDTH_RANGE + + + + + params returns a pair of values indicating the range of + widths supported for smooth (antialiased) lines. See glLineWidth. + + + + + GL_SMOOTH_LINE_WIDTH_GRANULARITY + + + + + params returns a single value indicating the level of + quantization applied to smooth line width parameters. + + + + + GL_STENCIL_BACK_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_FUNC + + + + + params returns one value, + a symbolic constant indicating what function is used for back-facing polygons to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_PASS_DEPTH_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_PASS_DEPTH_PASS + + + + + params returns one value, + a symbolic constant indicating what action is taken for back-facing polygons when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOpSeparate. + + + + + GL_STENCIL_BACK_REF + + + + + params returns one value, + the reference value that is compared with the contents of the stencil + buffer for back-facing polygons. The initial value is 0. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_VALUE_MASK + + + + + params returns one value, + the mask that is used for back-facing polygons to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFuncSeparate. + + + + + GL_STENCIL_BACK_WRITEMASK + + + + + params returns one value, + the mask that controls writing of the stencil bitplanes for back-facing polygons. The initial value + is all 1's. + See glStencilMaskSeparate. + + + + + GL_STENCIL_CLEAR_VALUE + + + + + params returns one value, + the index to which the stencil bitplanes are cleared. The initial value is + 0. + See glClearStencil. + + + + + GL_STENCIL_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test fails. The initial value is GL_KEEP. + See glStencilOp. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_FUNC + + + + + params returns one value, + a symbolic constant indicating what function is used to compare the + stencil reference value with the stencil buffer value. The initial value + is GL_ALWAYS. + See glStencilFunc. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_PASS_DEPTH_FAIL + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes, + but the depth test fails. The initial value is GL_KEEP. + See glStencilOp. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_PASS_DEPTH_PASS + + + + + params returns one value, + a symbolic constant indicating what action is taken when the stencil + test passes and the depth test passes. The initial value is GL_KEEP. + See glStencilOp. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilOpSeparate. + + + + + GL_STENCIL_REF + + + + + params returns one value, + the reference value that is compared with the contents of the stencil + buffer. The initial value is 0. + See glStencilFunc. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_TEST + + + + + params returns a single boolean value indicating whether stencil testing + of fragments is enabled. The initial value is GL_FALSE. + See glStencilFunc and glStencilOp. + + + + + GL_STENCIL_VALUE_MASK + + + + + params returns one value, + the mask that is used to mask both the stencil reference value and the + stencil buffer value before they are compared. The initial value is all 1's. + See glStencilFunc. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilFuncSeparate. + + + + + GL_STENCIL_WRITEMASK + + + + + params returns one value, + the mask that controls writing of the stencil bitplanes. The initial value + is all 1's. + See glStencilMask. + This stencil state only affects non-polygons + and front-facing polygons. Back-facing polygons use separate stencil state. + See glStencilMaskSeparate. + + + + + GL_STEREO + + + + + params returns a single boolean value indicating whether stereo buffers + (left and right) are supported. + + + + + GL_SUBPIXEL_BITS + + + + + params returns one value, + an estimate of the number of bits of subpixel resolution that are used to + position rasterized geometry in window coordinates. The value must be at least 4. + + + + + GL_TEXTURE_BINDING_1D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_1D_ARRAY + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D_ARRAY. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D_ARRAY + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_ARRAY. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D_MULTISAMPLE + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE_ARRAY. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_3D + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_3D. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_BUFFER + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_BUFFER. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_CUBE_MAP + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_CUBE_MAP. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_BINDING_RECTANGLE + + + + + params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_RECTANGLE. The initial value is 0. + See glBindTexture. + + + + + GL_TEXTURE_COMPRESSION_HINT + + + + + params returns a single value indicating the mode of the texture + compression hint. The initial value is GL_DONT_CARE. + + + + + GL_TEXTURE_BUFFER_BINDING + + + + + params returns a single value, the name of the buffer object + currently bound to the GL_TEXTURE_BUFFER buffer binding point. The initial value is 0. + See glBindBuffer. + + + + + GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT + + + + + params returns a single value, the minimum required alignment + for texture buffer sizes and offset. The initial value is 1. + See glUniformBlockBinding. + + + + + GL_TIMESTAMP + + + + + params returns a single value, the 64-bit value of the current + GL time. + See glQueryCounter. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING + + + + + When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_TRANSFORM_FEEDBACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed transform feedback attribute stream. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_START + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the start offset of the binding range for each + transform feedback attribute stream. The initial value is 0 for all streams. + See glBindBufferRange. + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the size of the binding range for each + transform feedback attribute stream. The initial value is 0 for all streams. + See glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_BINDING + + + + + When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_UNIFORM_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed uniform buffer binding point. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT + + + + + params returns a single value, the minimum required alignment + for uniform buffer sizes and offset. The initial value is 1. + See glUniformBlockBinding. + + + + + GL_UNIFORM_BUFFER_SIZE + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the size of the binding range for each + indexed uniform buffer binding. The initial value is 0 for all bindings. + See glBindBufferRange. + + + + + GL_UNIFORM_BUFFER_START + + + + + When used with indexed variants of glGet (such as glGetInteger64i_v), + params returns a single value, the start offset of the binding range for each + indexed uniform buffer binding. The initial value is 0 for all bindings. + See glBindBufferRange. + + + + + GL_UNPACK_ALIGNMENT + + + + + params returns one value, + the byte alignment used for reading pixel data from memory. The initial + value is 4. + See glPixelStore. + + + + + GL_UNPACK_IMAGE_HEIGHT + + + + + params returns one value, + the image height used for reading pixel data from memory. The initial + is 0. + See glPixelStore. + + + + + GL_UNPACK_LSB_FIRST + + + + + params returns a single boolean value indicating whether single-bit + pixels being read from memory are read first from the least significant + bit of each unsigned byte. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_UNPACK_ROW_LENGTH + + + + + params returns one value, + the row length used for reading pixel data from memory. The initial value + is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_IMAGES + + + + + params returns one value, + the number of pixel images skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_PIXELS + + + + + params returns one value, + the number of pixel locations skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SKIP_ROWS + + + + + params returns one value, + the number of rows of pixel locations skipped before the first pixel is read + from memory. The initial value is 0. + See glPixelStore. + + + + + GL_UNPACK_SWAP_BYTES + + + + + params returns a single boolean value indicating whether the bytes of + two-byte and four-byte pixel indices and components are swapped after being + read from memory. The initial value is GL_FALSE. + See glPixelStore. + + + + + GL_VERTEX_PROGRAM_POINT_SIZE + + + + + params returns a single boolean value indicating whether vertex + program point size mode is enabled. If enabled, and a vertex shader is active, then the + point size is taken from the shader built-in gl_PointSize. If disabled, + and a vertex shader is active, then the point size is taken from the point state as specified + by glPointSize. + The initial value is GL_FALSE. + + + + + GL_VERTEX_BINDING_DIVISOR + + + + + Accepted by the indexed forms. params 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 index. + + + + + GL_VERTEX_BINDING_OFFSET + + + + + Accepted by the indexed forms. params 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 index. + + + + + GL_VERTEX_BINDING_STRIDE + + + + + Accepted by the indexed forms. params 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 index. + + + + + GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET + + + + + params returns a single integer value containing the maximum offset that may be added to a vertex binding + offset. + + + + + GL_MAX_VERTEX_ATTRIB_BINDINGS + + + + + params returns a single integer value containing the maximum number of vertex buffers that may be bound. + + + + + GL_VIEWPORT + + + + + When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns four values: + the + x + and + y + window coordinates of the viewport, followed by its width and height. + Initially the + x + and + y + window coordinates are both set to 0, + and the width and height are set to the width and height of the window into + which the GL will do its rendering. + See glViewport. + + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns four values: + the + x + and + y + window coordinates of the indexed viewport, followed by its width and height. + Initially the + x + and + y + window coordinates are both set to 0, + and the width and height are set to the width and height of the window into + which the GL will do its rendering. + See glViewportIndexedf. + + + + + GL_VIEWPORT_BOUNDS_RANGE + + + + + params returns two values, the minimum and maximum viewport bounds range. + The minimum range should be at least [-32768, 32767]. + + + + + GL_VIEWPORT_INDEX_PROVOKING_VERTEX + + + + + params 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 GL_PROVOKING_VERTEX, then the vertex + selection follows the convention specified by + glProvokingVertex. + If the value returned is equivalent to GL_FIRST_VERTEX_CONVENTION, then the + selection is always taken from the first vertex in the primitive. + If the value returned is equivalent to GL_LAST_VERTEX_CONVENTION, then the + selection is always taken from the last vertex in the primitive. + If the value returned is equivalent to GL_UNDEFINED_VERTEX, then the + selection is not guaranteed to be taken from any specific vertex in the primitive. + + + + + GL_VIEWPORT_SUBPIXEL_BITS + + + + + params 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. + + + + + GL_MAX_ELEMENT_INDEX + + + + + params returns a single value, the maximum index that may be specified during the + transfer of generic vertex attributes to the GL. + + + + + + Many of the boolean parameters can also be queried more easily using + glIsEnabled. + + + Notes + + The following parameters return the associated value for the active texture unit: + GL_TEXTURE_1D, GL_TEXTURE_BINDING_1D, + GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D and GL_TEXTURE_BINDING_3D. + + + GL_MAX_VIEWPORTS, GL_VIEWPORT_SUBPIXEL_BITS, + GL_VIEWPORT_BOUNDS_RANGE, GL_LAYER_PROVOKING_VERTEX, + and GL_VIEWPORT_INDEX_PROVOKING_VERTEX + are available only if the GL version is 4.1 or greater. + + + GL_MAX_VERTEX_ATOMIC_COUNTERS, + GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS, + GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS, + GL_MAX_GEOMETRY_ATOMIC_COUNTERS, + GL_MAX_FRAMGENT_ATOMIC_COUNTERS, and + GL_MIN_MAP_BUFFER_ALIGNMENT are accepted by pname + only if the GL version is 4.2 or greater. + + + GL_MAX_ELEMENT_INDEX is accepted by pname only + if the GL version is 4.3 or greater. + + + GL_MAX_COMPUTE_UNIFORM_BLOCKS, GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS, + GL_MAX_COMPUTE_UNIFORM_COMPONENTS, GL_MAX_COMPUTE_ATOMIC_COUNTERS, + GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS, GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS, + GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS, GL_MAX_COMPUTE_WORK_GROUP_COUNT, and + GL_MAX_COMPUTE_WORK_GROUP_SIZE and GL_DISPATCH_INDIRECT_BUFFER_BINDING are available only if the GL version + is 4.3 or greater. + + + GL_MAX_DEBUG_GROUP_STACK_DEPTH, GL_DEBUG_GROUP_STACK_DEPTH and GL_MAX_LABEL_LENGTH are accepted only if + the GL version is 4.3 or greater. + + + GL_MAX_UNIFORM_LOCATIONS is accepted only if the GL version is 4.3 or greater. + + + GL_MAX_FRAMEBUFFER_WIDTH, GL_MAX_FRAMEBUFFER_HEIGHT, GL_MAX_FRAMEBUFFER_LAYERS, + and GL_MAX_FRAMEBUFFER_SAMPLES are available only if the GL version is 4.3 or greater. + + + GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, + GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, + GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, and GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS are available + only if the GL version is 4.3 or higher. + + + GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT is available only if the GL version is 4.3 or greater. + + + GL_VERTEX_BINDING_DIVISOR, GL_VERTEX_BINDING_OFFSET, GL_VERTEX_BINDING_STRIDE, + GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET and GL_MAX_VERTEX_ATTRIB_BINDINGS are available only if + the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_VALUE is generated on any of glGetBooleani_v, + glGetIntegeri_v, or glGetInteger64i_v if + index is outside of the valid range for the indexed state target. + + + See Also + + glGetActiveUniform, + glGetAttachedShaders, + glGetAttribLocation, + glGetBufferParameter, + glGetBufferPointerv, + glGetBufferSubData, + glGetCompressedTexImage, + glGetError, + glGetProgram, + glGetProgramInfoLog, + glGetQueryiv, + glGetQueryObject, + glGetShader, + glGetShaderInfoLog, + glGetShaderSource, + glGetString, + glGetTexImage, + glGetTexLevelParameter, + glGetTexParameter, + glGetUniform, + glGetUniformLocation, + glGetVertexAttrib, + glGetVertexAttribPointerv, + glIsEnabled + + + Copyright + + Copyright 1991-2006 Silicon Graphics, Inc. + Copyright 2010-2011 Khronos Group. + This document is licensed under the SGI Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetActiveAtomicCounterBufferiv.xml b/upstream-man-pages/man4/glGetActiveAtomicCounterBufferiv.xml new file mode 100644 index 0000000..8052c6b --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveAtomicCounterBufferiv.xml @@ -0,0 +1,157 @@ + + + + + + + 2011 + Khronos Group. + + + glGetActiveAtomicCounterBufferiv + 3G + + + glGetActiveAtomicCounterBufferiv + retrieve information about the set of active atomic counter buffers for a program + + C Specification + + + void glGetActiveAtomicCounterBufferiv + Gluint program + GLuint bufferIndex + GLenum pname + GLint *params + + + + + Parameters + + + program + + + The name of a program object from which to retrieve information. + + + + + bufferIndex + + + Specifies index of an active atomic counter buffer. + + + + + pname + + + Specifies which parameter of the atomic counter buffer to retrieve. + + + + + params + + + Specifies the address of a variable into which to write the retrieved information. + + + + + + Description + + glGetActiveAtomicCounterBufferiv retrieves information about the set of active + atomic counter buffers for a program object. program is the name of a program + object for which the command glLinkProgram + has been issued in the past. It is not necessary for program to have been linked + successfully. The link may have failed because the number of active atomic counters exceeded the limits. + + + bufferIndex specifies the index of an active atomic counter buffer and must be in + the range zero to the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS minus one. The value + of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program indicates the + number of active atomic counter buffer and can be queried with + glGetProgram. + + + If no error occurs, the parameter(s) specified by pname are returned in params. + If an error is generated, the contents of params are not modified. + + + If pname is GL_ATOMIC_COUNTER_BUFFER_BINDING, then the index of the + counter buffer binding point associated with the active atomic counter buffer bufferIndex + for program is returned. + + + If pname is GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE, then the implementation-dependent + minimum total buffer object size, in baseic machine units, required to hold all active atomic counters in the + atomic counter binding point identified by bufferIndex is returned. + + + If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS, then the number of active + atomic counters for the atomic counter buffer identified by bufferIndex is returned. + + + If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES, + then a list of the active atomic counter indices for the atomic counter buffer identified by bufferIndex + is returned. The number of elements that will be written into params is the value of + GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS for bufferIndex. + + + If pname is GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER then a boolean value indicating + whether the atomic counter buffer identified by bufferIndex is referenced by the vertex, + tessellation control, tessellation evaluation, geometry, fragment or compute processing stages of program, + respectively, is returned. + + + Notes + + glGetActiveAtomicCounterBufferiv is available only if the + GL version is 4.2 or higher. + + + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER is available + only of the GL version is 4.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if program is not the name of a program + object for which glLinkProgram has been called in the past. + + + GL_INVALID_VALUE is generated if bufferIndex is greater than or equal to + the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program. + + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + See Also + + glGetProgram, + glGetActiveSubroutineUniform, + glGetActiveSubroutineUniformName, + glGetUniformLocation + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveAttrib.xml b/upstream-man-pages/man4/glGetActiveAttrib.xml new file mode 100644 index 0000000..8b6c5b2 --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveAttrib.xml @@ -0,0 +1,235 @@ + + + + + glGetActiveAttrib + 3G + + + glGetActiveAttrib + Returns information about an active attribute variable for the specified program object + + C Specification + + + void glGetActiveAttrib + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + index + + Specifies the index of the attribute variable + to be queried. + + + + bufSize + + Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name. + + + + length + + Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed. + + + + size + + Returns the size of the attribute + variable. + + + + type + + Returns the data type of the attribute + variable. + + + + name + + Returns a null terminated string containing + the name of the attribute variable. + + + + + Description + glGetActiveAttrib returns information + about an active attribute variable in the program object + specified by program. The number of + active attributes can be obtained by calling + glGetProgram + with the value GL_ACTIVE_ATTRIBUTES. A + value of 0 for index selects the first + active attribute variable. Permissible values for + index range from 0 to the number of + active attribute variables minus 1. + + A vertex shader may use either built-in attribute + variables, user-defined attribute variables, or both. Built-in + attribute variables have a prefix of "gl_" and + reference conventional OpenGL vertex attribtes (e.g., + gl_Vertex, + gl_Normal, etc., see the OpenGL Shading + Language specification for a complete list.) User-defined + attribute variables have arbitrary names and obtain their values + through numbered generic vertex attributes. An attribute + variable (either built-in or user-defined) is considered active + if it is determined during the link operation that it may be + accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully. + + The size of the character buffer required to store the + longest attribute variable name in + program can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned attribute name. The size of this character buffer + is passed in bufSize, and a pointer to + this character buffer is passed in + name. + + glGetActiveAttrib returns the name of + the attribute variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument. + + The type argument specifies a + pointer to a variable into which the attribute variable's data type + will be written. The symbolic + constants GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3, + GL_INT, + GL_INT_VEC2, + GL_INT_VEC3, + GL_INT_VEC4, + GL_UNSIGNED_INT_VEC, + GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3, + GL_UNSIGNED_INT_VEC4, + DOUBLE, + DOUBLE_VEC2, + DOUBLE_VEC3, + DOUBLE_VEC4, + DOUBLE_MAT2, + DOUBLE_MAT3, + DOUBLE_MAT4, + DOUBLE_MAT2x3, + DOUBLE_MAT2x4, + DOUBLE_MAT3x2, + DOUBLE_MAT3x4, + DOUBLE_MAT4x2, or + DOUBLE_MAT4x3 + may be returned. The + size argument will return the size of the + attribute, in units of the type returned in + type. + + The list of active attribute variables may include both + built-in attribute variables (which begin with the prefix + "gl_") as well as user-defined attribute variable + names. + + This function will return as much information as it can + about the specified active attribute variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active attribute variables in + program. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS. + + glGetProgram + with argument GL_ACTIVE_ATTRIBUTES or + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. + + glIsProgram + + See Also + glBindAttribLocation, + glLinkProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveSubroutineName.xml b/upstream-man-pages/man4/glGetActiveSubroutineName.xml new file mode 100644 index 0000000..843703b --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveSubroutineName.xml @@ -0,0 +1,130 @@ + + + + + + + 2010 + Khronos Group. + + + glGetActiveSubroutineName + 3G + + + glGetActiveSubroutineName + query the name of an active shader subroutine + + C Specification + + + void glGetActiveSubroutineName + GLuint program + GLenum shadertype + GLuint index + GLsizei bufsize + GLsizei *length + GLchar *name + + + + + Parameters + + + program + + + Specifies the name of the program containing the subroutine. + + + + + shadertype + + + Specifies the shader stage from which to query the subroutine name. + + + + + index + + + Specifies the index of the shader subroutine uniform. + + + + + bufsize + + + Specifies the size of the buffer whose address is given in name. + + + + + length + + + Specifies the address of a variable which is to receive the length of the shader subroutine uniform name. + + + + + name + + + Specifies the address of an array into which the name of the shader subroutine uniform will be written. + + + + + + Description + + glGetActiveSubroutineName queries the name of an active shader subroutine uniform from the + program object given in program. index specifies the index of + the shader subroutine uniform within the shader stage given by stage, and must between + zero and the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + + + The name of the selected subroutine is returned as a null-terminated string in name. The + actual number of characters written into name, not including the null-terminator, is + is returned in length. If length is NULL, + no length is returned. The maximum number of characters that may be written into name, + including the null-terminator, is given in bufsize. + + + Errors + + GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_ACTIVE_SUBROUTINES. + + + GL_INVALID_VALUE is generated if program is not the name of an + existing program object. + + + Associated Gets + + glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH + + + See Also + + glGetSubroutineIndex, + glGetActiveSubroutineUniform, + glGetProgramStage + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveSubroutineUniform.xml b/upstream-man-pages/man4/glGetActiveSubroutineUniform.xml new file mode 100644 index 0000000..d3731cf --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveSubroutineUniform.xml @@ -0,0 +1,142 @@ + + + + + + + 2010 + Khronos Group. + + + glGetActiveSubroutineUniform + 3G + + + glGetActiveSubroutineUniform + query a property of an active shader subroutine uniform + + C Specification + + + void glGetActiveSubroutineUniformiv + GLuint program + GLenum shadertype + GLuint index + GLenum pname + GLint *values + + + + + Parameters + + + program + + + Specifies the name of the program containing the subroutine. + + + + + shadertype + + + Specifies the shader stage from which to query for the subroutine parameter. shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + index + + + Specifies the index of the shader subroutine uniform. + + + + + pname + + + Specifies the parameter of the shader subroutine uniform to query. pname + must be GL_NUM_COMPATIBLE_SUBROUTINES, GL_COMPATIBLE_SUBROUTINES, + GL_UNIFORM_SIZE or GL_UNIFORM_NAME_LENGTH. + + + + + values + + + Specifies the address of a into which the queried value or values will be placed. + + + + + + Description + + glGetActiveSubroutineUniform queries a parameter of an active shader subroutine uniform. + program contains the name of the program containing the uniform. shadertype + specifies the stage which which the uniform location, given by index, is valid. index + must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the + shader stage. + + + If pname is GL_NUM_COMPATIBLE_SUBROUTINES, a single integer indicating the number + of subroutines that can be assigned to the uniform is returned in values. + + + If pname is GL_COMPATIBLE_SUBROUTINES, an array of integers is returned in + values, with each integer specifying the index of an active subroutine that can be assigned to + the selected subroutine uniform. The number of integers returned is the same as the value returned for + GL_NUM_COMPATIBLE_SUBROUTINES. + + + If pname is GL_UNIFORM_SIZE, a single integer is returned in values. + If the selected subroutine uniform is an array, the declared size of the array is returned; otherwise, one is returned. + + + If pname is GL_UNIFORM_NAME_LENGTH, a single integer specifying the length of + the subroutine uniform name (including the terminating null character) is returned in values. + + + Errors + + GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. + + + GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_ACTIVE_SUBROUTINES. + + + GL_INVALID_VALUE is generated if program is not the name of an + existing program object. + + + Associated Gets + + glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORMS + + + See Also + + glGetSubroutineIndex, + glGetActiveSubroutineUniformName, + glGetProgramStage + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveSubroutineUniformName.xml b/upstream-man-pages/man4/glGetActiveSubroutineUniformName.xml new file mode 100644 index 0000000..3803951 --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveSubroutineUniformName.xml @@ -0,0 +1,140 @@ + + + + + + + 2010 + Khronos Group. + + + glGetActiveSubroutineUniformName + 3G + + + glGetActiveSubroutineUniformName + query the name of an active shader subroutine uniform + + C Specification + + + void glGetActiveSubroutineUniformName + GLuint program + GLenum shadertype + GLuint index + GLsizei bufsize + GLsizei *length + GLchar *name + + + + + Parameters + + + program + + + Specifies the name of the program containing the subroutine. + + + + + shadertype + + + Specifies the shader stage from which to query for the subroutine parameter. shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + index + + + Specifies the index of the shader subroutine uniform. + + + + + bufsize + + + Specifies the size of the buffer whose address is given in name. + + + + + length + + + Specifies the address of a variable into which is written the number of characters copied into name. + + + + + name + + + Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform. + + + + + + Description + + glGetActiveSubroutineUniformName retrieves the name of an active shader subroutine uniform. + program contains the name of the program containing the uniform. shadertype + specifies the stage for which which the uniform location, given by index, is valid. index + must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the + shader stage. + + + The uniform name is returned as a null-terminated string in name. The actual number of characters + written into name, excluding the null terminator is returned in length. + If length is NULL, no length is returned. The maximum number of characters + that may be written into name, including the null terminator, is specified by bufsize. + The length of the longest subroutine uniform name in program and shadertype is given + by the value of GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, which can be queried with + glGetProgramStage. + + + Errors + + GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. + + + GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_ACTIVE_SUBROUTINES. + + + GL_INVALID_VALUE is generated if program is not the name of an + existing program object. + + + Associated Gets + + glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORMS + + + See Also + + glGetSubroutineIndex, + glGetActiveSubroutineUniform, + glGetProgramStage + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveUniform.xml b/upstream-man-pages/man4/glGetActiveUniform.xml new file mode 100644 index 0000000..be611a4 --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveUniform.xml @@ -0,0 +1,1140 @@ + + + + + glGetActiveUniform + 3G + + + glGetActiveUniform + Returns information about an active uniform variable for the specified program object + + C Specification + + + void glGetActiveUniform + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + index + + Specifies the index of the uniform variable to + be queried. + + + + bufSize + + Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name. + + + + length + + Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed. + + + + size + + Returns the size of the uniform + variable. + + + + type + + Returns the data type of the uniform + variable. + + + + name + + Returns a null terminated string containing + the name of the uniform variable. + + + + + Description + glGetActiveUniform returns + information about an active uniform variable in the program + object specified by program. The number + of active uniform variables can be obtained by calling + glGetProgram + with the value GL_ACTIVE_UNIFORMS. A value + of 0 for index selects the first active + uniform variable. Permissible values for + index range from 0 to the number of + active uniform variables minus 1. + + Shaders may use either built-in uniform variables, + user-defined uniform variables, or both. Built-in uniform + variables have a prefix of "gl_" and reference + existing OpenGL state or values derived from such state (e.g., + gl_DepthRangeParameters, see the OpenGL + Shading Language specification for a complete list.) + User-defined uniform variables have arbitrary names and obtain + their values from the application through calls to + glUniform. + A uniform variable (either built-in or user-defined) is + considered active if it is determined during the link operation + that it may be accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully. + + The size of the character buffer required to store the + longest uniform variable name in program + can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_UNIFORM_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned uniform variable name. The size of this character + buffer is passed in bufSize, and a + pointer to this character buffer is passed in + name. + + glGetActiveUniform returns the name + of the uniform variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument. + + The type + argument will return a pointer to the uniform variable's data + type. The symbolic constants returned for uniform types are shown in the + table below. + + + + + + + + Returned Symbolic Contant + + + Shader Uniform Type + + + + + + + GL_FLOAT + + + float + + + + + GL_FLOAT_VEC2 + + + vec2 + + + + + GL_FLOAT_VEC3 + + + vec3 + + + + + GL_FLOAT_VEC4 + + + vec4 + + + + + GL_DOUBLE + + + double + + + + + GL_DOUBLE_VEC2 + + + dvec2 + + + + + GL_DOUBLE_VEC3 + + + dvec3 + + + + + GL_DOUBLE_VEC4 + + + dvec4 + + + + + GL_INT + + + int + + + + + GL_INT_VEC2 + + + ivec2 + + + + + GL_INT_VEC3 + + + ivec3 + + + + + GL_INT_VEC4 + + + ivec4 + + + + + GL_UNSIGNED_INT + + + unsigned int + + + + + GL_UNSIGNED_INT_VEC2 + + + uvec2 + + + + + GL_UNSIGNED_INT_VEC3 + + + uvec3 + + + + + GL_UNSIGNED_INT_VEC4 + + + uvec4 + + + + + GL_BOOL + + + bool + + + + + GL_BOOL_VEC2 + + + bvec2 + + + + + GL_BOOL_VEC3 + + + bvec3 + + + + + GL_BOOL_VEC4 + + + bvec4 + + + + + GL_FLOAT_MAT2 + + + mat2 + + + + + GL_FLOAT_MAT3 + + + mat3 + + + + + GL_FLOAT_MAT4 + + + mat4 + + + + + GL_FLOAT_MAT2x3 + + + mat2x3 + + + + + GL_FLOAT_MAT2x4 + + + mat2x4 + + + + + GL_FLOAT_MAT3x2 + + + mat3x2 + + + + + GL_FLOAT_MAT3x4 + + + mat3x4 + + + + + GL_FLOAT_MAT4x2 + + + mat4x2 + + + + + GL_FLOAT_MAT4x3 + + + mat4x3 + + + + + GL_DOUBLE_MAT2 + + + dmat2 + + + + + GL_DOUBLE_MAT3 + + + dmat3 + + + + + GL_DOUBLE_MAT4 + + + dmat4 + + + + + GL_DOUBLE_MAT2x3 + + + dmat2x3 + + + + + GL_DOUBLE_MAT2x4 + + + dmat2x4 + + + + + GL_DOUBLE_MAT3x2 + + + dmat3x2 + + + + + GL_DOUBLE_MAT3x4 + + + dmat3x4 + + + + + GL_DOUBLE_MAT4x2 + + + dmat4x2 + + + + + GL_DOUBLE_MAT4x3 + + + dmat4x3 + + + + + GL_SAMPLER_1D + + + sampler1D + + + + + GL_SAMPLER_2D + + + sampler2D + + + + + GL_SAMPLER_3D + + + sampler3D + + + + + GL_SAMPLER_CUBE + + + samplerCube + + + + + GL_SAMPLER_1D_SHADOW + + + sampler1DShadow + + + + + GL_SAMPLER_2D_SHADOW + + + sampler2DShadow + + + + + GL_SAMPLER_1D_ARRAY + + + sampler1DArray + + + + + GL_SAMPLER_2D_ARRAY + + + sampler2DArray + + + + + GL_SAMPLER_1D_ARRAY_SHADOW + + + sampler1DArrayShadow + + + + + GL_SAMPLER_2D_ARRAY_SHADOW + + + sampler2DArrayShadow + + + + + GL_SAMPLER_2D_MULTISAMPLE + + + sampler2DMS + + + + + GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + + sampler2DMSArray + + + + + GL_SAMPLER_CUBE_SHADOW + + + samplerCubeShadow + + + + + GL_SAMPLER_BUFFER + + + samplerBuffer + + + + + GL_SAMPLER_2D_RECT + + + sampler2DRect + + + + + GL_SAMPLER_2D_RECT_SHADOW + + + sampler2DRectShadow + + + + + GL_INT_SAMPLER_1D + + + isampler1D + + + + + GL_INT_SAMPLER_2D + + + isampler2D + + + + + GL_INT_SAMPLER_3D + + + isampler3D + + + + + GL_INT_SAMPLER_CUBE + + + isamplerCube + + + + + GL_INT_SAMPLER_1D_ARRAY + + + isampler1DArray + + + + + GL_INT_SAMPLER_2D_ARRAY + + + isampler2DArray + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE + + + isampler2DMS + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + isampler2DMSArray + + + + + GL_INT_SAMPLER_BUFFER + + + isamplerBuffer + + + + + GL_INT_SAMPLER_2D_RECT + + + isampler2DRect + + + + + GL_UNSIGNED_INT_SAMPLER_1D + + + usampler1D + + + + + GL_UNSIGNED_INT_SAMPLER_2D + + + usampler2D + + + + + GL_UNSIGNED_INT_SAMPLER_3D + + + usampler3D + + + + + GL_UNSIGNED_INT_SAMPLER_CUBE + + + usamplerCube + + + + + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + + usampler2DMS + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + usampler2DMSArray + + + + + GL_UNSIGNED_INT_SAMPLER_BUFFER + + + usamplerBuffer + + + + + GL_UNSIGNED_INT_SAMPLER_2D_RECT + + + usampler2DRect + + + + + + GL_IMAGE_1D + + + image1D + + + + + GL_IMAGE_2D + + + image2D + + + + + GL_IMAGE_3D + + + image3D + + + + + GL_IMAGE_2D_RECT + + + image2DRect + + + + + GL_IMAGE_CUBE + + + imageCube + + + + + GL_IMAGE_BUFFER + + + imageBuffer + + + + + GL_IMAGE_1D_ARRAY + + + image1DArray + + + + + GL_IMAGE_2D_ARRAY + + + image2DArray + + + + + GL_IMAGE_2D_MULTISAMPLE + + + image2DMS + + + + + GL_IMAGE_2D_MULTISAMPLE_ARRAY + + + image2DMSArray + + + + + GL_INT_IMAGE_1D + + + iimage1D + + + + + GL_INT_IMAGE_2D + + + iimage2D + + + + + GL_INT_IMAGE_3D + + + iimage3D + + + + + GL_INT_IMAGE_2D_RECT + + + iimage2DRect + + + + + GL_INT_IMAGE_CUBE + + + iimageCube + + + + + GL_INT_IMAGE_BUFFER + + + iimageBuffer + + + + + GL_INT_IMAGE_1D_ARRAY + + + iimage1DArray + + + + + GL_INT_IMAGE_2D_ARRAY + + + iimage2DArray + + + + + GL_INT_IMAGE_2D_MULTISAMPLE + + + iimage2DMS + + + + + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY + + + iimage2DMSArray + + + + + GL_UNSIGNED_INT_IMAGE_1D + + + uimage1D + + + + + GL_UNSIGNED_INT_IMAGE_2D + + + uimage2D + + + + + GL_UNSIGNED_INT_IMAGE_3D + + + uimage3D + + + + + GL_UNSIGNED_INT_IMAGE_2D_RECT + + + uimage2DRect + + + + + GL_UNSIGNED_INT_IMAGE_CUBE + + + uimageCube + + + + + GL_UNSIGNED_INT_IMAGE_BUFFER + + + uimageBuffer + + + + + GL_UNSIGNED_INT_IMAGE_1D_ARRAY + + + uimage1DArray + + + + + GL_UNSIGNED_INT_IMAGE_2D_ARRAY + + + uimage2DArray + + + + + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE + + + uimage2DMS + + + + + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY + + + uimage2DMSArray + + + + + GL_UNSIGNED_INT_ATOMIC_COUNTER + + + atomic_uint + + + + + + + + If one or more elements of an array are active, the name + of the array is returned in name, the + type is returned in type, and the + size parameter returns the highest array + element index used, plus one, as determined by the compiler + and/or linker. Only one active uniform variable will be reported + for a uniform array. + + Uniform variables that are declared as structures or + arrays of structures will not be returned directly by this + function. Instead, each of these uniform variables will be + reduced to its fundamental components containing the + "." and "[]" operators such that each of the + names is valid as an argument to + glGetUniformLocation. + Each of these reduced uniform variables is counted as one active + uniform variable and is assigned an index. A valid name cannot + be a structure, an array of structures, or a subcomponent of a + vector or matrix. + + The size of the uniform variable will be returned in + size. Uniform variables other than arrays + will have a size of 1. Structures and arrays of structures will + be reduced as described earlier, such that each of the names + returned will be a data type in the earlier list. If this + reduction results in an array, the size returned will be as + described for uniform arrays; otherwise, the size returned will + be 1. + + The list of active uniform variables may include both + built-in uniform variables (which begin with the prefix + "gl_") as well as user-defined uniform variable + names. + + This function will return as much information as it can + about the specified active uniform variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified. + + Notes + + The double types, GL_DOUBLE, GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, + GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, + GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, + GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, + and GL_DOUBLE_MAT4x3 are only available if the GL + version is 4.1 or higher. + + + The image types, + GL_IMAGE_1D, + GL_IMAGE_2D, + GL_IMAGE_3D, + GL_IMAGE_2D_RECT, + GL_IMAGE_CUBE, + GL_IMAGE_BUFFER, + GL_IMAGE_1D_ARRAY, + GL_IMAGE_2D_ARRAY, + GL_IMAGE_2D_MULTISAMPLE, + GL_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_INT_IMAGE_1D, + GL_INT_IMAGE_2D, + GL_INT_IMAGE_3D, + GL_INT_IMAGE_2D_RECT, + GL_INT_IMAGE_CUBE, + GL_INT_IMAGE_BUFFER, + GL_INT_IMAGE_1D_ARRAY, + GL_INT_IMAGE_2D_ARRAY, + GL_INT_IMAGE_2D_MULTISAMPLE, + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_IMAGE_1D, + GL_UNSIGNED_INT_IMAGE_2D, + GL_UNSIGNED_INT_IMAGE_3D, + GL_UNSIGNED_INT_IMAGE_2D_RECT, + GL_UNSIGNED_INT_IMAGE_CUBE, + GL_UNSIGNED_INT_IMAGE_BUFFER, + GL_UNSIGNED_INT_IMAGE_1D_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + and the atomic counter type, + GL_UNSIGNED_INT_ATOMIC_COUNTER + are only available if the GL + version is 4.2 or higher. + + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active uniform variables in + program. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS. + + glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH. + + glIsProgram + + See Also + glGetUniform, + glGetUniformLocation, + glLinkProgram, + glUniform, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveUniformBlock.xml b/upstream-man-pages/man4/glGetActiveUniformBlock.xml new file mode 100644 index 0000000..7221cbf --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveUniformBlock.xml @@ -0,0 +1,156 @@ + + + + + + + 2010 + Khronos Group + + + glGetActiveUniformBlock + 3G + + + glGetActiveUniformBlock + query information about an active uniform block + + C Specification + + + void glGetActiveUniformBlockiv + GLuint program + GLuint uniformBlockIndex + GLenum pname + GLint params + + + + Parameters + + + program + + + Specifies the name of a program containing the uniform block. + + + + + uniformBlockIndex + + + Specifies the index of the uniform block within program. + + + + + pname + + + Specifies the name of the parameter to query. + + + + + params + + + Specifies the address of a variable to receive the result of the query. + + + + + + Description + + glGetActiveUniformBlockiv retrieves information about an active uniform block within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. + + + Upon success, the uniform block parameter(s) specified by pname are returned in params. If an error + occurs, nothing will be written to params. + + + If pname is GL_UNIFORM_BLOCK_BINDING, then the index of the uniform buffer binding point + last selected by the uniform block specified by uniformBlockIndex for program is returned. If + no uniform block has been previously specified, zero is returned. + + + If pname is GL_UNIFORM_BLOCK_DATA_SIZE, then the implementation-dependent minimum total buffer + object size, in basic machine units, required to hold all active uniforms in the uniform block identified by uniformBlockIndex + is returned. It is neither guaranteed nor expected that a given implementation will arrange uniform values as tightly packed in a buffer + object. The exception to this is the std140 uniform block layout, which guarantees specific packing behavior and does not + require the application to query for offsets and strides. In this case the minimum size may still be queried, even though it is determined in + advance based only on the uniform block declaration. + + + If pname is GL_UNIFORM_BLOCK_NAME_LENGTH, then the total length (including the nul terminator) of + the name of the uniform block identified by uniformBlockIndex is returned. + + + If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS, then the number of active uniforms in the uniform + block identified by uniformBlockIndex is returned. + + + If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES, then a list of the active uniform indices + for the uniform block identified by uniformBlockIndex is returned. The number of elements that will be written to + params is the value of GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS for uniformBlockIndex. + + + If pname is GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER, GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER, GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER, or GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER + then a boolean value indicating whether the uniform block identified by + uniformBlockIndex is referenced by the vertex, tessellation control, tessellation evaluation, geometry, fragment or compute + programming stages of program, respectively, is returned. + + + Errors + + GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. + + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + Notes + + glGetActiveUniformBlockiv is available only if the GL version is 3.1 or greater. + + + GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER is accepted only if the GL version is 4.3 + or greater. + + + See Also + + glGetActiveUniformBlockName, + glGetUniformBlockIndex, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveUniformBlockName.xml b/upstream-man-pages/man4/glGetActiveUniformBlockName.xml new file mode 100644 index 0000000..9c47bf1 --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveUniformBlockName.xml @@ -0,0 +1,132 @@ + + + + + + + 2010 + Khronos Group + + + glGetActiveUniformBlockName + 3G + + + glGetActiveUniformBlockName + retrieve the name of an active uniform block + + C Specification + + + void glGetActiveUniformBlockName + GLuint program + GLuint uniformBlockIndex + GLsizei bufSize + GLsizei *length + GLchar *uniformBlockName + + + + Parameters + + + program + + + Specifies the name of a program containing the uniform block. + + + + + uniformBlockIndex + + + Specifies the index of the uniform block within program. + + + + + bufSize + + + Specifies the size of the buffer addressed by uniformBlockName. + + + + + length + + + Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. + + + + + uniformBlockName + + + Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. + + + + + + Description + + glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex + within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. + + + Upon success, the name of the uniform block identified by unifomBlockIndex is returned into + uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, + excluding the nul terminator, is returned in length. If length is NULL, no length is returned. + + + bufSize contains the maximum number of characters (including the nul terminator) that will be written into + uniformBlockName. + + + If an error occurs, nothing will be written to uniformBlockName or length. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. + + + Notes + + glGetActiveUniformBlockName is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniformBlock, + glGetUniformBlockIndex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveUniformName.xml b/upstream-man-pages/man4/glGetActiveUniformName.xml new file mode 100644 index 0000000..2796523 --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveUniformName.xml @@ -0,0 +1,129 @@ + + + + + + + 2010 + Khronos Group + + + glGetActiveUniformName + 3G + + + glGetActiveUniformName + query the name of an active uniform + + C Specification + + + void glGetActiveUniformName + GLuint program + GLuint uniformIndex + GLsizei bufSize + GLsizei *length + GLchar *uniformName + + + + + Parameters + + + program + + + Specifies the program containing the active uniform index uniformIndex. + + + + + uniformIndex + + + Specifies the index of the active uniform whose name to query. + + + + + bufSize + + + Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. + + + + + length + + + Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. + + + + + uniformName + + + Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. + + + + + + Description + + glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. + If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into + the array whose address is specified by uniformName. If length is not NULL, the number of characters + that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address + is specified in length. If length is NULL, no length is returned. The length of the longest uniform + name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with + glGetProgram. + + + If glGetActiveUniformName is not successful, nothing is written to length or uniformName. + + + program must be the name of a program for which the command glLinkProgram + has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because + the number of active uniforms exceeded the limit. + + + uniformIndex must be an active uniform index of the program program, in the range zero to + GL_ACTIVE_UNIFORMS - 1. The value of GL_ACTIVE_UNIFORMS can be queried with + glGetProgram. + + + Errors + + GL_INVALID_VALUE is generated if uniformIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORMS. + + + GL_INVALID_VALUE is generated if bufSize is negative. + + + GL_INVALID_VALUE is generated if program is not the name of a program object for which + glLinkProgram has been issued. + + + See Also + + glGetActiveUniform, + glGetUniformIndices, + glGetProgram, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetActiveUniformsiv.xml b/upstream-man-pages/man4/glGetActiveUniformsiv.xml new file mode 100644 index 0000000..c0e99da --- /dev/null +++ b/upstream-man-pages/man4/glGetActiveUniformsiv.xml @@ -0,0 +1,805 @@ + + + + + glGetActiveUniformsiv + 3G + + + glGetActiveUniformsiv + Returns information about several active uniform variables for the specified program object + + C Specification + + + void glGetActiveUniformsiv + GLuint program + GLsizei uniformCount + const GLuint *uniformIndices + GLenum pname + GLint *params + + + + Parameters + + + program + + Specifies the program object to be queried. + + + + uniformCount + + Specifies both the number of elements in the array of indices uniformIndices and the + number of parameters written to params upon successful return. + + + + uniformIndices + + Specifies the address of an array of uniformCount integers containing the indices of + uniforms within program whose parameter pname pname. + + + + pname + + Specifies the property of the each uniform in uniformIndices that should be + written into the corresponding element of params. + + + + params + + Specifies the address of an array of uniformCount integers which are to + receive the value of pname for each uniform in uniformIndices. + + + + + Description + + glGetActiveUniformsiv queries the value of the parameter named pname + for each of the uniforms within program whose indices are specified in the array of + uniformCount unsigned integers uniformIndices. Upon success, + the value of the parameter for each uniform is written into the corresponding entry in the array whose + address is given in params. If an error is generated, nothing is written into + params. + + + If pname is GL_UNIFORM_TYPE, then an array identifying the types + of uniforms specified by the corresponding array of uniformIndices is returned. The + returned types can be any of the values from the following table: + + + + + + + + Returned Symbolic Contant + + + Shader Uniform Type + + + + + + + GL_FLOAT + + + float + + + + + GL_FLOAT_VEC2 + + + vec2 + + + + + GL_FLOAT_VEC3 + + + vec3 + + + + + GL_FLOAT_VEC4 + + + vec4 + + + + + GL_DOUBLE + + + double + + + + + GL_DOUBLE_VEC2 + + + dvec2 + + + + + GL_DOUBLE_VEC3 + + + dvec3 + + + + + GL_DOUBLE_VEC4 + + + dvec4 + + + + + GL_INT + + + int + + + + + GL_INT_VEC2 + + + ivec2 + + + + + GL_INT_VEC3 + + + ivec3 + + + + + GL_INT_VEC4 + + + ivec4 + + + + + GL_UNSIGNED_INT + + + unsigned int + + + + + GL_UNSIGNED_INT_VEC2 + + + uvec2 + + + + + GL_UNSIGNED_INT_VEC3 + + + uvec3 + + + + + GL_UNSIGNED_INT_VEC4 + + + uvec4 + + + + + GL_BOOL + + + bool + + + + + GL_BOOL_VEC2 + + + bvec2 + + + + + GL_BOOL_VEC3 + + + bvec3 + + + + + GL_BOOL_VEC4 + + + bvec4 + + + + + GL_FLOAT_MAT2 + + + mat2 + + + + + GL_FLOAT_MAT3 + + + mat3 + + + + + GL_FLOAT_MAT4 + + + mat4 + + + + + GL_FLOAT_MAT2x3 + + + mat2x3 + + + + + GL_FLOAT_MAT2x4 + + + mat2x4 + + + + + GL_FLOAT_MAT3x2 + + + mat3x2 + + + + + GL_FLOAT_MAT3x4 + + + mat3x4 + + + + + GL_FLOAT_MAT4x2 + + + mat4x2 + + + + + GL_FLOAT_MAT4x3 + + + mat4x3 + + + + + GL_DOUBLE_MAT2 + + + dmat2 + + + + + GL_DOUBLE_MAT3 + + + dmat3 + + + + + GL_DOUBLE_MAT4 + + + dmat4 + + + + + GL_DOUBLE_MAT2x3 + + + dmat2x3 + + + + + GL_DOUBLE_MAT2x4 + + + dmat2x4 + + + + + GL_DOUBLE_MAT3x2 + + + dmat3x2 + + + + + GL_DOUBLE_MAT3x4 + + + dmat3x4 + + + + + GL_DOUBLE_MAT4x2 + + + dmat4x2 + + + + + GL_DOUBLE_MAT4x3 + + + dmat4x3 + + + + + GL_SAMPLER_1D + + + sampler1D + + + + + GL_SAMPLER_2D + + + sampler2D + + + + + GL_SAMPLER_3D + + + sampler3D + + + + + GL_SAMPLER_CUBE + + + samplerCube + + + + + GL_SAMPLER_1D_SHADOW + + + sampler1DShadow + + + + + GL_SAMPLER_2D_SHADOW + + + sampler2DShadow + + + + + GL_SAMPLER_1D_ARRAY + + + sampler1DArray + + + + + GL_SAMPLER_2D_ARRAY + + + sampler2DArray + + + + + GL_SAMPLER_1D_ARRAY_SHADOW + + + sampler1DArrayShadow + + + + + GL_SAMPLER_2D_ARRAY_SHADOW + + + sampler2DArrayShadow + + + + + GL_SAMPLER_2D_MULTISAMPLE + + + sampler2DMS + + + + + GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + + sampler2DMSArray + + + + + GL_SAMPLER_CUBE_SHADOW + + + samplerCubeShadow + + + + + GL_SAMPLER_BUFFER + + + samplerBuffer + + + + + GL_SAMPLER_2D_RECT + + + sampler2DRect + + + + + GL_SAMPLER_2D_RECT_SHADOW + + + sampler2DRectShadow + + + + + GL_INT_SAMPLER_1D + + + isampler1D + + + + + GL_INT_SAMPLER_2D + + + isampler2D + + + + + GL_INT_SAMPLER_3D + + + isampler3D + + + + + GL_INT_SAMPLER_CUBE + + + isamplerCube + + + + + GL_INT_SAMPLER_1D_ARRAY + + + isampler1DArray + + + + + GL_INT_SAMPLER_2D_ARRAY + + + isampler2DArray + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE + + + isampler2DMS + + + + + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + isampler2DMSArray + + + + + GL_INT_SAMPLER_BUFFER + + + isamplerBuffer + + + + + GL_INT_SAMPLER_2D_RECT + + + isampler2DRect + + + + + GL_UNSIGNED_INT_SAMPLER_1D + + + usampler1D + + + + + GL_UNSIGNED_INT_SAMPLER_2D + + + usampler2D + + + + + GL_UNSIGNED_INT_SAMPLER_3D + + + usampler3D + + + + + GL_UNSIGNED_INT_SAMPLER_CUBE + + + usamplerCube + + + + + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + + usampler2DArray + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + + usampler2DMS + + + + + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + + usampler2DMSArray + + + + + GL_UNSIGNED_INT_SAMPLER_BUFFER + + + usamplerBuffer + + + + + GL_UNSIGNED_INT_SAMPLER_2D_RECT + + + usampler2DRect + + + + + + + + If pname is GL_UNIFORM_SIZE, then an array identifying the + size of the uniforms specified by the corresponding array of uniformIndices is + returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. + For active uniforms that are arrays, the size is the number of active elements in the array; + for all other uniforms, the size is one. + + + If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the + length, including the terminating null character, of the uniform name strings specified by the corresponding + array of uniformIndices is returned. + + + If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the + the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices + is returned. The uniform block index of a uniform associated with the default uniform block is -1. + + + If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer + offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic + machine units, relative to the beginning of the uniform block in the buffer object data store. + For atomic counter uniforms, the returned value will be its offset relative to the beginning of its active + atomic counter buffer. + For all other uniforms, -1 will be returned. + + + If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the + stride between elements of each of the uniforms specified by the corresponding array of + uniformIndices is returned. + For uniforms in named uniform blocks and for uniforms declared as atomic counters, the stride is the difference, + in basic machine units, of consecutive elements in an array, or zero for uniforms not declared as an array. + For all other uniforms, a stride of -1 will be returned. + + + If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride + between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms + specified by the corresponding array of uniformIndices is returned. The matrix stride of a + uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms + that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of + zero is returned. + + + If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each + of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A + value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default + uniform block, or a non-matrix. + + + If pname is GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX, then an array + identifying the active atomic counter buffer index of each of the uniforms specified by the corresponding array + of uniformIndices is returned. For uniforms other than atomic counters, the returned buffer + index is -1. The returned indices may be passed to glGetActiveAtomicCounterBufferiv + to query the properties of the associated buffer, and not necessarily the binding point specified in the uniform declaration. + + + Notes + + The double types, GL_DOUBLE, GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, + GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, + GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, + GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, + and GL_DOUBLE_MAT4x3 are only available if the GL + version is 4.1 or higher. + + + GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX is only accepted by pname + if the GL version is 4.2 or higher. + + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + uniformCount is greater than or equal to the + value of GL_ACTIVE_UNIFORMS for + program. + + GL_INVALID_ENUM is generated if pname + is not an accepted token. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS, + GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS. + + glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH. + + glIsProgram + + See Also + glGetUniform, + glGetActiveUniform, + glGetUniformLocation, + glLinkProgram, + glUniform, + glUseProgram + + Copyright + + Copyright 2011 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetAttachedShaders.xml b/upstream-man-pages/man4/glGetAttachedShaders.xml new file mode 100644 index 0000000..a052d6e --- /dev/null +++ b/upstream-man-pages/man4/glGetAttachedShaders.xml @@ -0,0 +1,110 @@ + + + + + glGetAttachedShaders + 3G + + + glGetAttachedShaders + Returns the handles of the shader objects attached to a program object + + C Specification + + + void glGetAttachedShaders + GLuint program + GLsizei maxCount + GLsizei *count + GLuint *shaders + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + maxCount + + Specifies the size of the array for storing + the returned object names. + + + + count + + Returns the number of names actually returned + in objects. + + + + shaders + + Specifies an array that is used to return the + names of attached shader objects. + + + + + Description + glGetAttachedShaders returns the + names of the shader objects attached to + program. The names of shader objects that + are attached to program will be returned + in shaders. The actual number of shader + names written into shaders is returned in + count. If no shader objects are attached + to program, count + is set to 0. The maximum number of shader names that may be + returned in shaders is specified by + maxCount. + + If the number of names actually returned is not required + (for instance, if it has just been obtained by calling + glGetProgram), + a value of NULL may be passed for count. If + no shader objects are attached to + program, a value of 0 will be returned in + count. The actual number of attached + shaders can be obtained by calling + glGetProgram + with the value GL_ATTACHED_SHADERS. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + maxCount is less than 0. + + + Associated Gets + glGetProgram + with argument GL_ATTACHED_SHADERS + + glIsProgram + + See Also + glAttachShader, + glDetachShader. + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetAttribLocation.xml b/upstream-man-pages/man4/glGetAttribLocation.xml new file mode 100644 index 0000000..39bc04a --- /dev/null +++ b/upstream-man-pages/man4/glGetAttribLocation.xml @@ -0,0 +1,104 @@ + + + + + glGetAttribLocation + 3G + + + glGetAttribLocation + Returns the location of an attribute variable + + C Specification + + + GLint glGetAttribLocation + GLuint program + const GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + name + + Points to a null terminated string containing + the name of the attribute variable whose location is + to be queried. + + + + + Description + glGetAttribLocation queries the + previously linked program object specified by + program for the attribute variable + specified by name and returns the index + of the generic vertex attribute that is bound to that attribute + variable. If name is a matrix attribute + variable, the index of the first column of the matrix is + returned. If the named attribute variable is not an active + attribute in the specified program object or if + name starts with the reserved prefix + "gl_", a value of -1 is returned. + + The association between an attribute variable name and a + generic attribute index can be specified at any time by calling + glBindAttribLocation. + Attribute bindings do not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for attribute variables remain fixed until the + next link command occurs. The attribute values can only be + queried after a link if the link was successful. + glGetAttribLocation returns the binding + that actually went into effect the last time + glLinkProgram + was called for the specified program object. Attribute bindings + that have been specified since the last link operation are not + returned by glGetAttribLocation. + + Errors + GL_INVALID_OPERATION is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + + Associated Gets + glGetActiveAttrib + with argument program and the index of an + active attribute + + glIsProgram + + See Also + glBindAttribLocation, + glLinkProgram, + glVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetBufferParameter.xml b/upstream-man-pages/man4/glGetBufferParameter.xml new file mode 100644 index 0000000..2ec6649 --- /dev/null +++ b/upstream-man-pages/man4/glGetBufferParameter.xml @@ -0,0 +1,165 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferParameteriv + 3G + + + glGetBufferParameteriv + return parameters of a buffer object + + C Specification + + + void glGetBufferParameteriv + GLenum target + GLenum value + GLint * data + + + + + void glGetBufferParameteri64v + GLenum target + GLenum value + GLint64 * data + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + value + + + Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. + + + + + data + + + Returns the requested parameter. + + + + + + Description + + glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. + + + value names a specific buffer object parameter, as follows: + + + + GL_BUFFER_ACCESS + + + params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. + + + + + GL_BUFFER_MAPPED + + + params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. + + + + + GL_BUFFER_SIZE + + + params returns the size of the buffer object, measured in bytes. + The initial value is 0. + + + + + GL_BUFFER_USAGE + + + params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. + + + + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or value is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + See Also + + glBindBuffer, + glBufferData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetBufferPointerv.xml b/upstream-man-pages/man4/glGetBufferPointerv.xml new file mode 100644 index 0000000..1a617ab --- /dev/null +++ b/upstream-man-pages/man4/glGetBufferPointerv.xml @@ -0,0 +1,117 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferPointerv + 3G + + + glGetBufferPointerv + return the pointer to a mapped buffer object's data store + + C Specification + + + void glGetBufferPointerv + GLenum target + GLenum pname + GLvoid ** params + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + pname + + + Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER. + + + + + params + + + Returns the pointer value specified by pname. + + + + + + Description + + glGetBufferPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer + to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. + params is a pointer to a location in which to place the returned pointer value. + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + The initial value for the pointer is NULL. + + + The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + See Also + + glBindBuffer, + glMapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetBufferSubData.xml b/upstream-man-pages/man4/glGetBufferSubData.xml new file mode 100644 index 0000000..755c1e7 --- /dev/null +++ b/upstream-man-pages/man4/glGetBufferSubData.xml @@ -0,0 +1,138 @@ + + + + + + + 2005 + Sams Publishing + + + glGetBufferSubData + 3G + + + glGetBufferSubData + returns a subset of a buffer object's data store + + C Specification + + + void glGetBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + GLvoid * data + + + + + Parameters + + + target + + + Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. + + + + + offset + + + Specifies the offset into the buffer object's data store from which data will be returned, + measured in bytes. + + + + + size + + + Specifies the size in bytes of the data store region being returned. + + + + + data + + + Specifies a pointer to the location where buffer object data is returned. + + + + + + Description + + glGetBufferSubData returns some or all of the data from the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied from the data store to the memory pointed to by + data. An error is thrown if the buffer object is currently mapped, or if + offset and size together define a range beyond the bounds + of the buffer object's data store. + + + Notes + + If an error is generated, + no change is made to the contents of data. + + + The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER target is available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. + + + GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if the buffer object being queried is mapped. + + + See Also + + glBindBuffer, + glBufferData, + glBufferSubData, + glMapBuffer, + glUnmapBuffer + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetCompressedTexImage.xml b/upstream-man-pages/man4/glGetCompressedTexImage.xml new file mode 100644 index 0000000..b3278a4 --- /dev/null +++ b/upstream-man-pages/man4/glGetCompressedTexImage.xml @@ -0,0 +1,161 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetCompressedTexImage + 3G + + + glGetCompressedTexImage + return a compressed texture image + + C Specification + + + void glGetCompressedTexImage + GLenum target + GLint lod + GLvoid * img + + + + + Parameters + + + target + + + Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. + + + + + lod + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + img + + + Returns the compressed texture image. + + + + + + Description + + glGetCompressedTexImage returns the compressed texture image associated with target and lod + into img. img should be an array of + GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes. + target specifies whether the desired texture image was one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of GL_TEXTURE_CUBE_MAP_*), or + glTexImage3D (GL_TEXTURE_3D). + lod specifies the level-of-detail number of the desired image. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. + + + To minimize errors, first verify that the texture is compressed by calling + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If + the texture is compressed, then determine the amount of memory required to + store the compressed texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the + internal format of the texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_INTERNAL_FORMAT. + To store the texture for later use, associate the internal format and size + with the retrieved texture image. These data can be used by the respective + texture or subtexture loading routine used for loading target textures. + + + Errors + + GL_INVALID_VALUE is generated if lod is less than zero or greater + than the maximum number of LODs permitted by the implementation. + + + GL_INVALID_OPERATION is generated if glGetCompressedTexImage is used to retrieve a + texture that is in an uncompressed internal format. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + Associated Gets + + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED + + + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetDebugMessageLog.xml b/upstream-man-pages/man4/glGetDebugMessageLog.xml new file mode 100644 index 0000000..8b9ddfd --- /dev/null +++ b/upstream-man-pages/man4/glGetDebugMessageLog.xml @@ -0,0 +1,171 @@ + + + + + + + 2012 + Khronos Group + + + glGetDebugMessageLog + 3G + + + glGetDebugMessageLog + retrieve messages from the debug message log + + C Specification + + + GLuint glGetDebugMessageLog + GLuint count + GLsizei bufSize + GLenum *sources + Glenum *types + GLuint *ids + GLenum *severities + GLsizei *lengths + GLchar *messageLog + + + + Parameters + + + count + + + The number of debug messages to retrieve from the log. + + + + + bufSize + + + The size of the buffer whose address is given by messageLog. + + + + + sources + + + The address of an array of variables to receive the sources of the retrieved messages. + + + + + types + + + The address of an array of variables to receive the types of the retrieved messages. + + + + + ids + + + The address of an array of unsigned integers to receive the ids of the retrieved messages. + + + + + severities + + + The address of an array of variables to receive the severites of the retrieved messages. + + + + + lengths + + + The address of an array of variables to receive the lengths of the received messages. + + + + + messageLog + + + The address of an array of characters that will receive the messages. + + + + + + Description + + glGetDebugMessageLog retrieves messages from the debug message log. A maximum of + count messages are retrieved from the log. If sources + is not NULL then the source of each message is written into up to count elements + of the array. If types + is not NULL then the type of each message is written into up to count elements + of the array. If id + is not NULL then the identifier of each message is written into up to count elements + of the array. If severities + is not NULL then the severity of each message is written into up to count elements + of the array. If lengths + is not NULL then the length of each message is written into up to count elements + of the array. + + + messageLog specifies the address of a character array into which the debug messages + will be written. Each message will be concatenated onto the array starting at the first element of messageLog. + bufSize specifies the size of the array messageLog. If a message will not + fit into the remaining space in messageLog then the function terminates and returns the number + of messages written so far, which may be zero. + + + If glGetDebugMessageLog returns zero then no messages are present in the debug log, or there + was not enough space in messageLog to retrieve the first message in the queue. If messageLog + is NULL then no messages are written and the value of bufSize is ignored. + + + Notes + + Although debug messages may be enabled in a non-debug context, the quantity and detail of such messages may be substantially + inferior to those in a debug context. In particular, a valid implementation of the debug message queue in a non-debug context + may produce no messages at all. + + + Errors + + GL_INVALID_VALUE is generated if count or bufSize is negative. + + + Associated Gets + + glGet with argument GL_DEBUG_LOGGED_MESSAGES + + + glGet with argument GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH + + + glGet with argument GL_MAX_DEBUG_MESSAGE_LENGTH + + + glGet with argument GL_MAX_DEBUG_LOGGED_MESSAGES + + + See Also + + glDebugMessageInsert, + glDebugMessageCallback, + glDebugMessageControl. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetError.xml b/upstream-man-pages/man4/glGetError.xml new file mode 100644 index 0000000..6049057 --- /dev/null +++ b/upstream-man-pages/man4/glGetError.xml @@ -0,0 +1,160 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetError + 3G + + + glGetError + return error information + + C Specification + + + GLenum glGetError + void + + + + Description + + glGetError returns the value of the error flag. + Each detectable error is assigned a numeric code and symbolic name. + When an error occurs, + the error flag is set to the appropriate error code value. + No other errors are recorded until glGetError is called, + the error code is returned, + and the flag is reset to GL_NO_ERROR. + If a call to glGetError returns GL_NO_ERROR, + there has been no detectable error since the last call to glGetError, + or since the GL was initialized. + + + To allow for distributed implementations, + there may be several error flags. + If any single error flag has recorded an error, + the value of that flag is returned + and that flag is reset to GL_NO_ERROR + when glGetError is called. + If more than one flag has recorded an error, + glGetError returns and clears an arbitrary error flag value. + Thus, glGetError should always be called in a loop, + until it returns GL_NO_ERROR, + if all error flags are to be reset. + + + Initially, all error flags are set to GL_NO_ERROR. + + + The following errors are currently defined: + + + + GL_NO_ERROR + + + No error has been recorded. + The value of this symbolic constant is guaranteed to be 0. + + + + + GL_INVALID_ENUM + + + An unacceptable value is specified for an enumerated argument. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_VALUE + + + A numeric argument is out of range. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_OPERATION + + + The specified operation is not allowed in the current state. + The offending command is ignored + and has no other side effect than to set the error flag. + + + + + GL_INVALID_FRAMEBUFFER_OPERATION + + + The framebuffer object is not complete. The offending command + is ignored and has no other side effect than to set the error flag. + + + + + GL_OUT_OF_MEMORY + + + There is not enough memory left to execute the command. + The state of the GL is undefined, + except for the state of the error flags, + after this error is recorded. + + + + + GL_STACK_UNDERFLOW + + + An attempt has been made to perform an operation that would + cause an internal stack to underflow. + + + + + GL_STACK_OVERFLOW + + + An attempt has been made to perform an operation that would + cause an internal stack to overflow. + + + + + + When an error flag is set, + results of a GL operation are undefined only if GL_OUT_OF_MEMORY + has occurred. + In all other cases, + the command generating the error is ignored and has no effect on the GL state + or frame buffer contents. + If the generating command returns a value, it returns 0. + If glGetError itself generates an error, it returns 0. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. + Copyright 2012 + Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetFragDataIndex.xml b/upstream-man-pages/man4/glGetFragDataIndex.xml new file mode 100644 index 0000000..bd5e453 --- /dev/null +++ b/upstream-man-pages/man4/glGetFragDataIndex.xml @@ -0,0 +1,81 @@ + + + + + + + 2010 + Khronos Group + + + glGetFragDataIndex + 3G + + + glGetFragDataIndex + query the bindings of color indices to user-defined varying out variables + + C Specification + + + GLint glGetFragDataIndex + GLuint program + const char * name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to query + + + + + name + + + The name of the user-defined varying out variable whose index to query + + + + + + Description + + glGetFragDataIndex returns the index of the fragment color to which the variable name + was bound when the program object program was last linked. If name is not a varying out + variable of program, or if an error occurs, -1 will be returned. + + + Notes + + glGetFragDataIndex is available only if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + See Also + + glCreateProgram, + glBindFragDataLocation, + glBindFragDataLocationIndexed, + glGetFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetFragDataLocation.xml b/upstream-man-pages/man4/glGetFragDataLocation.xml new file mode 100644 index 0000000..12bb1ee --- /dev/null +++ b/upstream-man-pages/man4/glGetFragDataLocation.xml @@ -0,0 +1,76 @@ + + + + + + + 2010 + Khronos Group + + + glGetFragDataLocation + 3G + + + glGetFragDataLocation + query the bindings of color numbers to user-defined varying out variables + + C Specification + + + GLint glGetFragDataLocation + GLuint program + const char * name + + + + Parameters + + + program + + + The name of the program containing varying out variable whose binding to query + + + + + name + + + The name of the user-defined varying out variable whose binding to query + + + + + + Description + + glGetFragDataLocation retrieves the assigned color number binding for the user-defined + varying out variable name for program program. program + must have previously been linked. name must be a null-terminated string. If name + is not the name of an active user-defined varying out fragment shader variable within program, -1 will + be returned. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object. + + + See Also + + glCreateProgram, + glBindFragDataLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetFramebufferAttachmentParameter.xml b/upstream-man-pages/man4/glGetFramebufferAttachmentParameter.xml new file mode 100644 index 0000000..6cabe15 --- /dev/null +++ b/upstream-man-pages/man4/glGetFramebufferAttachmentParameter.xml @@ -0,0 +1,227 @@ + + + + + + + 2010 + Khronos Group + + + glGetFramebufferAttachmentParameteriv + 3G + + + glGetFramebufferAttachmentParameteriv + retrieve information about attachments of a bound framebuffer object + + C Specification + + + void glGetFramebufferAttachmentParameteriv + GLenum target + GLenum attachment + GLenum pname + GLint *params + + + + + Parameters + + + target + + + Specifies the target of the query operation. + + + + + attachment + + + Specifies the attachment within target + + + + + pname + + + Specifies the parameter of attachment to query. + + + + + params + + + Specifies the address of a variable receive the value of pname for attachment. + + + + + + Description + + glGetFramebufferAttachmentParameter returns information about attachments of a bound framebuffer + object. target specifies the framebuffer binding point and must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent + to GL_DRAW_FRAMEBUFFER. + + + If the default framebuffer is bound to target then attachment must be one of + GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, or + GL_BACK_RIGHT, identifying a color buffer, GL_DEPTH, identifying the depth buffer, + or GL_STENCIL, identifying the stencil buffer. + + + If a framebuffer object is bound, then attachment must be one of GL_COLOR_ATTACHMENTi, + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT, or GL_DEPTH_STENCIL_ATTACHMENT. + i in GL_COLOR_ATTACHMENTi must be in the range zero to the value of + GL_MAX_COLOR_ATTACHMENTS - 1. + + + If attachment is GL_DEPTH_STENCIL_ATTACHMENT and different objects are bound + to the depth and stencil attachment points of target the query will fail. If the same object + is bound to both attachment points, information about that object will be returned. + + + Upon successful return from glGetFramebufferAttachmentParameteriv, if pname is + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, then params will contain one of GL_NONE, + GL_FRAMEBUFFER_DEFAULT, GL_TEXTURE, or GL_RENDERBUFFER, identifying the type of + object which contains the attached image. Other values accepted for pname depend on the type of object, as described below. + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE, no framebuffer is bound to + target. In this case querying pname GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + will return zero, and all other queries will generate an error. + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is not GL_NONE, these queries apply to all other + framebuffer types: + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE, GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE, GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE, + or GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE, then params will contain the number + of bits in the corresponding red, green, blue, alpha, depth, or stencil component of the specified attachment. Zero is returned + if the requested component is not present in attachment. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, params will + contain the format of components of the specified attachment, one of GL_FLOAT, GL_INT, + GL_UNSIGNED_INT, GL_SIGNED_NORMALIZED, or GL_UNSIGNED_NORMALIZED + for floating-point, signed integer, unsigned integer, signed normalized fixed-point, or unsigned normalized fixed-point components + respectively. Only color buffers may have integer components. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING, param will + contain the encoding of components of the specified attachment, one of GL_LINEAR or GL_SRGB + for linear or sRGB-encoded components, respectively. Only color buffer components may be sRGB-encoded; such components + are treated as described in sections 4.1.7 and 4.1.8. For the default framebuffer, color encoding is determined by the implementation. + For framebuffer objects, components are sRGB-encoded if the internal format of a color attachment is one of the color-renderable SRGB + formats. + + + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_RENDERBUFFER, then: + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, params will contain + the name of the renderbuffer object which contains the attached image. + + + + + If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_TEXTURE, then: + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, then params will + contain the name of the texture object which contains the attached image. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL, then params + will contain the mipmap level of the texture object which contains the attached image. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a cube map texture, then params will contain the cube map + face of the cubemap texture object which contains the attached image. Otherwise params will contain the value + zero. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a layer of a three-dimensional texture or a one-or two-dimensional + array texture, then params will contain the number of the texture layer which contains the attached image. + Otherwise params will contain the value zero. + + + + + If pname is GL_FRAMEBUFFER_ATTACHMENT_LAYERED, then params will + contain GL_TRUE if an entire level of a three-dimesional texture, cube map texture, or one-or two-dimensional + array texture is attached. Otherwise, params will contain GL_FALSE. + + + + + Any combinations of framebuffer type and pname not described above will generate an error. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted tokens. + + + GL_INVALID_ENUM is generated if pname is not valid for the value of + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE. + + + GL_INVALID_OPERATION is generated if attachment is not the accepted values + for target. + + + GL_INVALID_OPERATION is generated if attachment is GL_DEPTH_STENCIL_ATTACHMENT + and different objects are bound to the depth and stencil attachment points of target. + + + GL_INVALID_OPERATION is generated if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is + GL_NONE and pname is not GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME. + + + See Also + + glGenFramebuffers, + glBindFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetFramebufferParameter.xml b/upstream-man-pages/man4/glGetFramebufferParameter.xml new file mode 100644 index 0000000..4a1344f --- /dev/null +++ b/upstream-man-pages/man4/glGetFramebufferParameter.xml @@ -0,0 +1,156 @@ + + + + + + + 2012 + Khronos Group + + + glGetFramebufferParameter + 3G + + + glGetFramebufferParameter + retrieve a named parameter from a framebuffer + + C Specification + + + void glGetFramebufferParameteriv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + The target of the operation, which must be GL_READ_FRAMEBUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. + + + + + pname + + + A token indicating the parameter to be retrieved. + + + + + params + + + The address of a variable to receive the value of the parameter named pname. + + + + + + Description + + glGetFramebufferParameter retrieves the current value of the parameter + named pname from the framebuffer bound to target. + target must be GL_READ_FRAMEBFUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. The + token GL_FRAMEBUFFER is treated as GL_DRAW_FRAMEBUFFER. + A non-default framebuffer must be bound to target. + + + pname specifies the parameter to be retrieved. The values retrieved from + the framebuffer are written into the variable whose address is given by params. + The following symbols are accepted in pname: + + + + GL_FRAMEBUFFER_DEFAULT_WIDTH + + + The value of GL_FRAMEBUFFER_DEFAULT_WIDTH for the framebuffer is written to the + single integer variable whose address is given by params. + + + + + GL_FRAMEBUFFER_DEFAULT_HEIGHT + + + The value of GL_FRAMEBUFFER_DEFAULT_HEIGHT for the framebuffer is written to the + single integer variable whose address is given by params. + + + + + GL_FRAMEBUFFER_DEFAULT_LAYERS + + + The value of GL_FRAMEBUFFER_DEFAULT_LAYERS for the framebuffer is written to the + single integer variable whose address is given by params. + + + + + GL_FRAMEBUFFER_DEFAULT_SAMPLES + + + The value of GL_FRAMEBUFFER_DEFAULT_SAMPLES for the framebuffer is written to the + single integer variable whose address is given by params. + + + + + GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS + + + If the value of GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS for the framebuffer is GL_TRUE + then the single integer variable whose address is in params is set to one, + otherwise it is set to zero. + + + + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the accepted + framebuffer targets. + + + GL_INVALID_ENUM is generated if pname is not one of the accepted + parameter names. + + + GL_INVALID_OPERATION is generated if the default framebuffer is bound to target. + + + params should be the address of a variable to which the client has write access otherwise + undefined behavior, including process termination may occur. + + + Associated Gets + + glGetFramebufferParameteriv. + + + See Also + + glFramebufferParameteri. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetInternalFormativ.xml b/upstream-man-pages/man4/glGetInternalFormativ.xml new file mode 100644 index 0000000..99fd889 --- /dev/null +++ b/upstream-man-pages/man4/glGetInternalFormativ.xml @@ -0,0 +1,442 @@ + + + + + + + 2011 + Khronos Group. + + + glGetInternalFormativ + 3G + + + glGetInternalFormativ + retrieve information about implementation-dependent support for internal formats + + C Specification + + + void glGetInternalFormativ + GLenum target + GLenum internalformat + GLenum pname + GLsizei bufSize + GLint *params + + + void glGetInternalFormati64v + GLenum target + GLenum internalformat + GLenum pname + GLsizei bufSize + GLint64 *params + + + + + Parameters + + + target + + + Indicates the usage of the internal format. target must be GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_BUFFER, + GL_RENDERBUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + + + + + internalformat + + + Specifies the internal format about which to retrieve information. + + + + + pname + + + Specifies the type of information to query. + + + + + bufSize + + + Specifies the maximum number of basic machine units that may be written to params by the function. + + + + + params + + + Specifies the address of a variable into which to write the retrieved information. + + + + + + Description + + glGetInternalFormativ and glGetInternalFormati64v retrieve information about implementation-dependent support for + internal formats. target indicates the target with which the internal format will + be used and must be one of GL_RENDERBUFFER, GL_TEXTURE_2D_MULTISAMPLE, + or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, corresponding to usage as a renderbuffer, two-dimensional + multisample texture or two-dimensional multisample array texture, respectively. + + + internalformat specifies the internal format about which to retrieve information and + must be a color-renderable, depth-renderable or stencil-renderable format. + + + The information retrieved will be written to memory addressed by the pointer specified in params. No + more than bufSize basic machine units will be written to this memory. + + + If pname is GL_NUM_SAMPLE_COUNTS, the number of sample counts that would be + returned by querying GL_SAMPLES will be returned in params. + + + If pname is GL_SAMPLES, the sample counts supported for internalformat + and target are written into params in descending numeric order. Only positive values are returned. + Querying GL_SAMPLES with bufSize of one will return just the maximum supported number of + samples for this format. The maximum value in GL_SAMPLES is guaranteed to be at least the lowest of the following: + + The value of GL_MAX_INTEGER_SAMPLES if internalformat is a signed or unsigned integer format. + The value of GL_MAX_DEPTH_TEXTURE_SAMPLES if internalformat is a depth- or stencil-renderable format and + target is GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + The value of GL_MAX_COLOR_TEXTURE_SAMPLES if internalformat is a color-renderable format and + target is GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + The value of GL_MAX_SAMPLES. + + + + If pname is GL_INTERNALFORMAT_SUPPORTED, params is set to GL_TRUE if internalFormat + is a supported internal format for target and to GL_FALSE otherwise. + + + If pname is GL_INTERNALFORMAT_PREFERRED, params is set to GL_TRUE if internalFormat + is an format for target that is preferred by the implementation and to GL_FALSE otherwise. + + + If pname is GL_INTERNALFORMAT_RED_SIZE, GL_INTERNALFORMAT_GREEN_SIZE, + GL_INTERNALFORMAT_BLUE_SIZE, GL_INTERNALFORMAT_ALPHA_SIZE, GL_INTERNALFORMAT_DEPTH_SIZE, + GL_INTERNALFORMAT_STENCIL_SIZE, or GL_INTERNALFORMAT_SHARED_SIZE then + params is set to the actual resolutions that would be used for storing image array components + for the resource for the red, green, blue, alpha, depth, stencil and shared channels respectively. If internalFormat + is a compressed internal format, then params is set to the component resolution of an uncompressed internal format that produces + an image of roughly the same quality as the compressed algorithm. If the internal format is unsupported, or if a particular component is + not present in the format, 0 is written to params. + + + If pname is GL_INTERNALFORMAT_RED_TYPE, GL_INTERNALFORMAT_GREEN_TYPE, + GL_INTERNALFORMAT_BLUE_TYPE, GL_INTERNALFORMAT_ALPHA_TYPE, GL_INTERNALFORMAT_DEPTH_TYPE, + or GL_INTERNALFORMAT_STENCIL_TYPE then params is set to a token identifying the data type used + to store the respective component. If the internalFormat represents a compressed internal format then + the types returned specify how components are interpreted after decompression. + + + If pname is GL_MAX_WIDTH, GL_MAX_HEIGHT, GL_MAX_DEPTH, + or GL_MAX_LAYERS then pname is filled with the maximum width, height, depth or layer count + for textures with internal format internalFormat, respectively. If pname is GL_MAX_COMBINED_DIMENSIONS + then pname is filled with the maximum combined dimensions of a texture of the specified internal format. + + + If pname is GL_COLOR_COMPONENTS then params is set to the value GL_TRUE + if the internal format contains any color component (i.e., red, green, blue or alpha) and to GL_FALSE otherwise. If + pname is GL_DEPTH_COMPONENTS or GL_STENCIL_COMPONENTS then params + is set to GL_TRUE if the internal format contains a depth or stencil component, respectively, and to GL_FALSE + otherwise. + + + If pname is GL_COLOR_RENDERABLE, GL_DEPTH_RENDERABLE or GL_STENCIL_RENDERABLE + then params is set to GL_TRUE if the specified internal format is color, depth or stencil renderable, respectively, + and to GL_FALSE otherwise. + + + If pname is GL_FRAMEBUFFER_RENDERABLE or GL_FRAMEBUFFER_RENDERABLE_LAYERED + then params is set to one of GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT or GL_NONE to indicate that framebuffer attachments (layered attachments in the + case of GL_FRAMEBUFFER_RENDERABLE_LAYERED) with that internal format are either + renderable with no restrictions, renderable with some restrictions or not renderable at all. + + + If pname is GL_FRAMEBUFFER_BLEND, params is set to GL_TRUE + to indicate that the internal format is supported for blending operations when attached to a framebuffer, and to GL_FALSE otherwise. + + + If pname is GL_READ_PIXELS then params is set to GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT or GL_NONE to that either full support, limited support or no support at all is supplied + for reading pixels from framebuffer attachments in the specified internal format. + + + If pname is GL_READ_PIXELS_FORMAT or GL_READ_PIXELS_TYPE then params + is filled with the format or type, respectively, most recommended to obtain the highest image quality and performance. For + GL_READ_PIXELS_FORMAT, the value returned in params is a token that is accepted for + the format argument to glReadPixels. For + GL_READ_PIXELS_TYPE, the value returned in params is a token that is accepted for + the type argument to glReadPixels. + + + If pname is GL_TEXTURE_IMAGE_FORMAT or GL_TEXTURE_IMAGE_TYPE then + params is filled with the implementation-recommended format or type to be used in calls to + glTexImage2D and other similar functions. For GL_TEXTURE_IMAGE_FORMAT, + params is filled with a token suitable for use as the format argument to + glTexImage2D. For GL_TEXTURE_IMAGE_TYPE, + params is filled with a token suitable for use as the type argument to + glTexImage2D. + + + If pname is GL_GET_TEXTURE_IMAGE_FORMAT or GL_GET_TEXTURE_IMAGE_TYPE then + params is filled with the implementation-recommended format or type to be used in calls to + glGetTexImage2D and other similar functions. For GL_GET_TEXTURE_IMAGE_FORMAT, + params is filled with a token suitable for use as the format argument to + glGetTexImage2D. For GL_GET_TEXTURE_IMAGE_TYPE, + params is filled with a token suitable for use as the type argument to + glGetTexImage2D. + + + If pname is GL_MIPMAP then pname is set to GL_TRUE + to indicate that the specified internal format supports mipmaps and to GL_FALSE otherwise. + + + If pname is GL_GENERATE_MIPMAP or GL_AUTO_GENERATE_MIPMAP then params + is indicates the level of support for manual or automatic mipmap generation for the specified internal format, respectively. Returned values + may be one of GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT and GL_NONE to indicate + either full support, limited support or no support at all. + + + If pname is GL_COLOR_ENCODING then the color encoding for the resource is returned in + params. Possible values for color buffers are GL_LINEAR or GL_SRGB, + for linear or sRGB-encoded color components, respectively. For non-color + formats (such as depth or stencil), or for unsupported resources, + the value GL_NONE is returned. + + + If pname is GL_SRGB_READ, or GL_SRGB_WRITE then params + indicates the level of support for reading and writing to sRGB encoded images, respectively. For GL_SRGB_READ, + support for converting from sRGB colorspace on read operations is returned in params and for GL_SRGB_WRITE, + support for converting to sRGB colorspace on write operations to the resource is returned in params. params may be + set to GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all, respecitively. + + + If pname is GL_FILTER the params is set to either GL_TRUE + or GL_FALSE to indicate support or lack thereof for filter modes other than GL_NEAREST or GL_NEAREST_MIPMAP + for the specified internal format. + + + If pname is GL_VERTEX_TEXTURE, GL_TESS_CONTROL_TEXTURE, GL_TESS_EVALUATION_TEXTURE, + GL_GEOMETRY_TEXTURE, GL_FRAGMENT_TEXTURE, or GL_COMPUTE_TEXTURE, then the value + written to params indicates support for use of the resource as a source of texturing in the vertex, tessellation control, + tessellation evaluation, geometry, fragment and compute shader stages, respectively. params may be set to + GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT or GL_NONE to indicate full support, + limited support or no support at all, respectively. + + + If pname is GL_TEXTURE_SHADOW, GL_TEXTURE_GATHER or GL_TEXTURE_GATHER_SHADOW then the value written to + params indicates the level of support for using the resource with a shadow sampler, in gather operations or as a shadow sampler in gather operations, respectively. Returned values + may be GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT or GL_NONE to indicate full support, + limited support or no support at all, respectively. + + + If pname is GL_SHADER_IMAGE_LOAD, GL_SHADER_IMAGE_STORE or GL_SHADER_IMAGE_ATOMIC + then the value returned in params indicates the level of support for image loads, stores and atomics for resources of the specified internal + format. Returned values + may be GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT or GL_NONE to indicate full support, + limited support or no support at all, respectively. + + + If pname is GL_IMAGE_TEXEL_SIZE then the size of a texel when the resource when used as + an image texture is returned in params. If the resource is not supported for image + textures zero is returned. + + + If pname is GL_IMAGE_COMPATIBILITY_CLASS then the compatibility class of the resource when + used as an image texture is returned in params. The possible values + returned are GL_IMAGE_CLASS_4_X_32, GL_IMAGE_CLASS_2_X_32, GL_IMAGE_CLASS_1_X_32, + GL_IMAGE_CLASS_4_X_16, GL_IMAGE_CLASS_2_X_16, GL_IMAGE_CLASS_1_X_16, + GL_IMAGE_CLASS_4_X_8, GL_IMAGE_CLASS_2_X_8, GL_IMAGE_CLASS_1_X_8, + GL_IMAGE_CLASS_11_11_10, and GL_IMAGE_CLASS_10_10_10_2, which correspond to + the 4x32, 2x32, 1x32, 4x16, 2x16, 1x16, 4x8, 2x8, 1x8, the class + (a) 11/11/10 packed floating-point format, and the class (b) + 10/10/10/2 packed formats, respectively. + If the resource is not supported for image textures, GL_NONE is returned. + + + If pname is GL_IMAGE_PIXEL_FORMAT or GL_IMAGE_PIXEL_TYPE then + the pixel format or type of the resource when used as an image texture is returned in params, respectively. + In either case, the resource is not supported for image textures GL_NONE is returned. + + + If pname is GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, the matching criteria use for the + resource when used as an image textures is returned in params. Possible values returned in params are + GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE or GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS. + If the resource is not supported for image textures, GL_NONE is returned. + + + If pname is GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST or GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST, + support for using the resource both as a source for texture sampling while it is bound as a buffer for depth or stencil test, respectively, is written to params. + Possible values returned are GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all. If the resource or operation is not supported, GL_NONE is returned. + + + If pname is GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE or GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE, + support for using the resource both as a source for texture sampling while performing depth or stencil writes to the resources, respectively, is written to params. + Possible values returned are GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all. If the resource or operation is not supported, GL_NONE is returned. + + + If pname is GL_TEXTURE_COMPRESSED then GL_TRUE is returned in params + if internalformat is a compressed internal format. GL_FALSE is returned in params + otherwise. + + + If pname is GL_TEXTURE_COMPRESSED_BLOCK_WIDTH, GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT or + GL_TEXTURE_COMPRESSED_BLOCK_SIZE then the width, height or total size, respectively of a block (in basic machine units) is returned in + params. If the internal format is not compressed, or the resource is not supported, 0 is returned. + + + If pname is GL_CLEAR_BUFFER, the level of support for using the resource with glClearBufferData + and glClearBufferSubData is returned in params. Possible values returned are GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all, respectively. If the resource or operation is not supported, GL_NONE is returned. + + + If pname is GL_TEXTURE_VIEW, the level of support for using the resource with the glTextureView + command is returned in params. Possible values returned are GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all, respectively. If the resource or operation is not supported, GL_NONE is returned. + + + If pname is GL_VIEW_COMPATIBILITY_CLASS then the compatibility class of the resource when + used as a texture view is returned in params. The possible values + returned are GL_VIEW_CLASS_128_BITS, GL_VIEW_CLASS_96_BITS, + GL_VIEW_CLASS_64_BITS, GL_VIEW_CLASS_48_BITS, GL_VIEW_CLASS_32_BITS, + GL_VIEW_CLASS_24_BITS, GL_VIEW_CLASS_16_BITS, GL_VIEW_CLASS_8_BITS, + GL_VIEW_CLASS_S3TC_DXT1_RGB, GL_VIEW_CLASS_S3TC_DXT1_RGBA, + GL_VIEW_CLASS_S3TC_DXT3_RGBA, GL_VIEW_CLASS_S3TC_DXT5_RGBA, + GL_VIEW_CLASS_RGTC1_RED, GL_VIEW_CLASS_RGTC2_RG, GL_VIEW_CLASS_BPTC_UNORM, and + GL_VIEW_CLASS_BPTC_FLOAT. + + + Notes + + glGetInternalFormativ is available only if the + GL version is 4.2 or higher. + + + The tokens + GL_INTERNALFORMAT_SUPPORTED, + GL_INTERNALFORMAT_PREFERRED, + GL_INTERNALFORMAT_RED_SIZE, + GL_INTERNALFORMAT_GREEN_SIZE, + GL_INTERNALFORMAT_BLUE_SIZE, + GL_INTERNALFORMAT_ALPHA_SIZE, + GL_INTERNALFORMAT_DEPTH_SIZE, + GL_INTERNALFORMAT_STENCIL_SIZE, + GL_INTERNALFORMAT_SHARED_SIZE, + GL_INTERNALFORMAT_RED_TYPE, + GL_INTERNALFORMAT_GREEN_TYPE, + GL_INTERNALFORMAT_BLUE_TYPE, + GL_INTERNALFORMAT_ALPHA_TYPE, + GL_INTERNALFORMAT_DEPTH_TYPE, + GL_INTERNALFORMAT_STENCIL_TYPE, + GL_MAX_WIDTH, + GL_MAX_HEIGHT, + GL_MAX_DEPTH, + GL_MAX_LAYERS, + GL_MAX_COMBINED_DIMENSIONS, + GL_COLOR_COMPONENTS, + GL_DEPTH_COMPONENTS, + GL_STENCIL_COMPONENTS, + GL_COLOR_RENDERABLE, + GL_DEPTH_RENDERABLE, + GL_STENCIL_RENDERABLE, + GL_FRAMEBUFFER_RENDERABLE, + GL_FRAMEBUFFER_RENDERABLE_LAYERED, + GL_FRAMEBUFFER_BLEND, + GL_READ_PIXELS, + GL_READ_PIXELS_FORMAT, + GL_READ_PIXELS_TYPE, + GL_TEXTURE_IMAGE_FORMAT, + GL_TEXTURE_IMAGE_TYPE, + GL_GET_TEXTURE_IMAGE_FORMAT, + GL_GET_TEXTURE_IMAGE_TYPE, + GL_MIPMAP, + GL_GENERATE_MIPMAP, + GL_AUTO_GENERATE_MIPMAP, + GL_COLOR_ENCODING, + GL_SRGB_READ, + GL_SRGB_WRITE, + GL_SRGB_DECODE_ARB, + GL_FILTER, + GL_VERTEX_TEXTURE, + GL_TESS_CONTROL_TEXTURE, + GL_TESS_EVALUATION_TEXTURE, + GL_GEOMETRY_TEXTURE, + GL_FRAGMENT_TEXTURE, + GL_COMPUTE_TEXTURE, + GL_TEXTURE_SHADOW, + GL_TEXTURE_GATHER, + GL_TEXTURE_GATHER_SHADOW, + GL_SHADER_IMAGE_LOAD, + GL_SHADER_IMAGE_STORE, + GL_SHADER_IMAGE_ATOMIC, + GL_IMAGE_TEXEL_SIZE, + GL_IMAGE_COMPATIBILITY_CLASS, + GL_IMAGE_PIXEL_FORMAT, + GL_IMAGE_PIXEL_TYPE, + GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST, + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST, + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE, + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE, + GL_TEXTURE_COMPRESSED, + GL_TEXTURE_COMPRESSED_BLOCK_WIDTH, + GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT, + GL_TEXTURE_COMPRESSED_BLOCK_SIZE, + GL_CLEAR_BUFFER, + GL_TEXTURE_VIEW, and + GL_VIEW_COMPATIBILITY_CLASS are supported only if the GL + version is 4.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if bufSize is negative. + + + GL_INVALID_ENUM is generated if pname is not GL_SAMPLES or GL_NUM_SAMPLE_COUNTS. + + + GL_INVALID_ENUM is generated if internalformat is not color-, depth-, or stencil-renderable. + + + GL_INVALID_ENUM is generated if target is not one of GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_RENDERBUFFER. + + + See Also + + glGet + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetMultisample.xml b/upstream-man-pages/man4/glGetMultisample.xml new file mode 100644 index 0000000..95e299c --- /dev/null +++ b/upstream-man-pages/man4/glGetMultisample.xml @@ -0,0 +1,95 @@ + + + + + + + 2010 + Khronos Group + + + glGetMultisamplefv + 3G + + + glGetMultisamplefv + retrieve the location of a sample + + C Specification + + + void glGetMultisamplefv + GLenum pname + GLuint index + GLfloat *val + + + + + Parameters + + + pname + + + Specifies the sample parameter name. pname must be GL_SAMPLE_POSITION. + + + + + index + + + Specifies the index of the sample whose position to query. + + + + + val + + + Specifies the address of an array to receive the position of the sample. + + + + + + Description + + glGetMultisamplefv queries the location of a given sample. pname + specifies the sample parameter to retrieve and must be GL_SAMPLE_POSITION. index + corresponds to the sample for which the location should be returned. The sample location is returned as two floating-point + values in val[0] and val[1], each between 0 and 1, corresponding to the x + and y locations respectively in the GL pixel space of that sample. (0.5, 0.5) this corresponds to the + pixel center. index must be between zero and the value of GL_SAMPLES - 1. + + + If the multisample mode does not have fixed sample locations, the returned values may only reflect the locations of samples + within some pixels. + + + Errors + + GL_INVALID_ENUM is generated if pname is not one GL_SAMPLE_POSITION. + + + GL_INVALID_VALUE is generated if index is greater than or equal to the value of + GL_SAMPLES. + + + See Also + + glGenFramebuffers, + glBindFramebuffer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetObjectLabel.xml b/upstream-man-pages/man4/glGetObjectLabel.xml new file mode 100644 index 0000000..f5c21e0 --- /dev/null +++ b/upstream-man-pages/man4/glGetObjectLabel.xml @@ -0,0 +1,135 @@ + + + + + + + 2012 + Khronos Group + + + glGetObjectLabel + 3G + + + glGetObjectLabel + retrieve the label of a named object identified within a namespace + + C Specification + + + void glGetObjectLabel + GLenum identifier + GLuint name + GLsizei bifSize + GLsizei * length + char * label + + + + Parameters + + + identifier + + + The namespace from which the name of the object is allocated. + + + + + name + + + The name of the object whose label to retrieve. + + + + + bufSize + + + The length of the buffer whose address is in label. + + + + + length + + + The address of a variable to receive the length of the object label. + + + + + label + + + The address of a string that will receive the object label. + + + + + + Description + + glGetObjectLabel retrieves the label of the object identified by + name within the namespace given by identifier. + identifier must be one of GL_BUFFER, GL_SHADER, + GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, + GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, + GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, + to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, + program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame + buffers, respectively. + + + label is the address of a string that will be used to store the object label. + bufSize specifies the number of characters in the array identified by label. + length contains the address of a variable which will receive the the number of characters in the object label. + If length is NULL, then it is ignored and no data is written. Likewise, if label + is NULL, or if bufSize is zero then no data is written to label. + + + Errors + + GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. + + + GL_INVALID_OPERATION is generated if name + is not the name of an existing object of the type specified by identifier. + + + GL_INVALID_VALUE is generated if bufSize is + zero. + + + If not NULL, length and label should be addresses + to which the client has write access, otherwise undefined behavior, including process termination + may occur. + + + Associated Gets + + glGet with argument GL_MAX_LABEL_LENGTH. + + + See Also + + glPushDebugGroup, + glPopDebugGroup, + glObjectLabel, + glGetObjectPtrLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetObjectPtrLabel.xml b/upstream-man-pages/man4/glGetObjectPtrLabel.xml new file mode 100644 index 0000000..d00db99 --- /dev/null +++ b/upstream-man-pages/man4/glGetObjectPtrLabel.xml @@ -0,0 +1,119 @@ + + + + + + + 2012 + Khronos Group + + + glGetObjectPtrLabel + 3G + + + glGetObjectPtrLabel + retrieve the label of a sync object identified by a pointer + + C Specification + + + void glGetObjectPtrLabel + void * ptr + GLsizei bifSize + GLsizei * length + char * label + + + + Parameters + + + ptr + + + The name of the sync object whose label to retrieve. + + + + + bufSize + + + The length of the buffer whose address is in label. + + + + + length + + + The address of a variable to receive the length of the object label. + + + + + label + + + The address of a string that will receive the object label. + + + + + + Description + + glGetObjectPtrLabel retrieves the label of the sync object identified by + ptr. + + + label is the address of a string that will be used to store the object label. + bufSize specifies the number of characters in the array identified by label. + length contains the address of a variable which will receive the the number of characters in the object label. + If length is NULL, then it is ignored and no data is written. Likewise, if label + is NULL, or if bufSize is zero then no data is written to label. + + + Errors + + GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. + + + GL_INVALID_VALUE is generated if ptr + is not the name of an existing sync object. + + + GL_INVALID_VALUE is generated if bufSize is + zero. + + + If not NULL, length and label should be addresses + to which the client has write access, otherwise undefined behavior, including process termination + may occur. + + + Associated Gets + + glGet with argument GL_MAX_LABEL_LENGTH. + + + See Also + + glPushDebugGroup, + glPopDebugGroup, + glObjectLabel, + glGetObjectLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgram.xml b/upstream-man-pages/man4/glGetProgram.xml new file mode 100644 index 0000000..26af4cd --- /dev/null +++ b/upstream-man-pages/man4/glGetProgram.xml @@ -0,0 +1,372 @@ + + + + + glGetProgram + 3G + + + glGetProgramiv + Returns a parameter from a program object + + C Specification + + + void glGetProgramiv + GLuint program + GLenum pname + GLint *params + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + pname + + Specifies the object parameter. Accepted + symbolic names are + GL_DELETE_STATUS, + GL_LINK_STATUS, + GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS, + GL_ACTIVE_ATOMIC_COUNTER_BUFFERS, + GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_BLOCKS, + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH, + GL_ACTIVE_UNIFORM_MAX_LENGTH, + GL_COMPUTE_WORK_GROUP_SIZE + GL_PROGRAM_BINARY_LENGTH, + GL_TRANSFORM_FEEDBACK_BUFFER_MODE, + GL_TRANSFORM_FEEDBACK_VARYINGS, + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, and + GL_GEOMETRY_OUTPUT_TYPE. + + + + params + + Returns the requested object parameter. + + + + + Description + glGetProgram + returns in params + the value of a parameter for a specific program object. The following parameters are defined: + + + + GL_DELETE_STATUS + + + + params returns + GL_TRUE if + program is currently flagged + for deletion, and GL_FALSE + otherwise. + + + + + GL_LINK_STATUS + + + + params returns + GL_TRUE if the last link + operation on program was + successful, and GL_FALSE + otherwise. + + + + + GL_VALIDATE_STATUS + + + + params returns + GL_TRUE or if the last + validation operation on + program was successful, and + GL_FALSE + otherwise. + + + + + GL_INFO_LOG_LENGTH + + + + params returns the + number of characters in the information log for + program including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If program has no + information log, a value of 0 is + returned. + + + + + GL_ATTACHED_SHADERS + + + + params returns the + number of shader objects attached to + program. + + + + + GL_ACTIVE_ATOMIC_COUNTER_BUFFERS + + + + params returns the + number of active attribute atomic counter buffers used by + program. + + + + + GL_ACTIVE_ATTRIBUTES + + + + params returns the + number of active attribute variables for + program. + + + + + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH + + + + params returns the + length of the longest active attribute name for + program, including the null + termination character (i.e., the size of the + character buffer required to store the longest + attribute name). If no active attributes exist, 0 is + returned. + + + + + GL_ACTIVE_UNIFORMS + + + + params returns the + number of active uniform variables for + program. + + + + + GL_ACTIVE_UNIFORM_MAX_LENGTH + + + + params returns the + length of the longest active uniform variable name + for program, including the + null termination character (i.e., the size of the + character buffer required to store the longest + uniform variable name). If no active uniform + variables exist, 0 is returned. + + + + + GL_PROGRAM_BINARY_LENGTH + + + + params returns the + length of the program binary, in bytes that will be returned by + a call to glGetProgramBinary. + When a progam's GL_LINK_STATUS is GL_FALSE, + its program binary length is zero. + + + + + + GL_COMPUTE_WORK_GROUP_SIZE + + + + params returns an + array of three integers containing the local work group size of + the compute program as specified by its input layout qualifier(s). + program must be the name of a program object + that has been previously linked successfully and contains a binary + for the compute shader stage. + + + + + + GL_TRANSFORM_FEEDBACK_BUFFER_MODE + + + + params returns a symbolic constant + indicating the buffer mode used when transform feedback is active. + This may be GL_SEPARATE_ATTRIBS or + GL_INTERLEAVED_ATTRIBS. + + + + + GL_TRANSFORM_FEEDBACK_VARYINGS + + + + params returns the number of varying + variables to capture in transform feedback mode for the program. + + + + + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH + + + + params returns the length of the longest + variable name to be used for transform feedback, including the null-terminator. + + + + + GL_GEOMETRY_VERTICES_OUT + + + + params returns the maximum number of vertices + that the geometry shader in program will output. + + + + + GL_GEOMETRY_INPUT_TYPE + + + + params returns a symbolic constant indicating + the primitive type accepted as input to the geometry shader contained in + program. + + + + + GL_GEOMETRY_OUTPUT_TYPE + + + + params returns a symbolic constant indicating + the primitive type that will be output by the geometry shader contained + in program. + + + + + Notes + + GL_ACTIVE_UNIFORM_BLOCKS and + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH + are available only if the GL version 3.1 or greater. + + + GL_GEOMETRY_VERTICES_OUT, GL_GEOMETRY_INPUT_TYPE + and GL_GEOMETRY_OUTPUT_TYPE are accepted only if the GL + version is 3.2 or greater. + + + GL_COMPUTE_WORK_GROUP_SIZE is accepted only if the + GL version is 4.3 or greater. + + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL. + + GL_INVALID_OPERATION + is generated if program + does not refer to a program object. + + GL_INVALID_OPERATION is generated if + pname is GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, or GL_GEOMETRY_OUTPUT_TYPE, + and program does not contain a geometry shader. + + GL_INVALID_ENUM + is generated if pname + is not an accepted value. + + GL_INVALID_OPERATION is generated if pname + is GL_COMPUTE_WORK_GROUP_SIZE and program + does not contain a binary for the compute shader stage. + + + Associated Gets + glGetActiveAttrib + with argument program + + glGetActiveUniform + with argument program + + glGetAttachedShaders + with argument program + + glGetProgramInfoLog + with argument program + + glIsProgram + + + See Also + glAttachShader, + glCreateProgram, + glDeleteProgram, + glGetShader, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramBinary.xml b/upstream-man-pages/man4/glGetProgramBinary.xml new file mode 100644 index 0000000..dfcba62 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramBinary.xml @@ -0,0 +1,124 @@ + + + + + + + 2010 + Khronos Group + + + glGetProgramBinary + 3G + + + glGetProgramBinary + return a binary representation of a program object's compiled and linked executable source + + C Specification + + + void glGetProgramBinary + GLuint program + GLsizei bufsize + GLsizei *length + GLenum *binaryFormat + void *binary + + + + Parameters + + + program + + + Specifies the name of a program object whose binary representation to retrieve. + + + + + bufSize + + + Specifies the size of the buffer whose address is given by binary. + + + + + length + + + Specifies the address of a variable to receive the number of bytes written into binary. + + + + + binaryFormat + + + Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL. + + + + + binary + + + Specifies the address an array into which the GL will return program's binary representation. + + + + + + Description + + glGetProgramBinary returns a binary representation of the compiled + and linked executable for program into the array of bytes whose + address is specified in binary. The maximum number of bytes that + may be written into binary is specified by bufSize. + If the program binary is greater in size than bufSize bytes, + then an error is generated, otherwise the actual number of bytes written into binary + is returned in the variable whose address is given by length. If + length is NULL, then no length is returned. + + + The format of the program binary written into binary is returned in + the variable whose address is given by binaryFormat, and may be implementation dependent. The binary produced + by the GL may subsequently be returned to the GL by calling glProgramBinary, + with binaryFormat and length set to the values + returned by glGetProgramBinary, and passing the returned binary data + in the binary parameter. + + + Errors + + GL_INVALID_OPERATION is generated if bufSize is less than + the size of GL_PROGRAM_BINARY_LENGTH for program. + + + GL_INVALID_OPERATION is generated if GL_LINK_STATUS for the + program object is false. + + + Associated Gets + + glGetProgram with argument GL_PROGRAM_BINARY_LENGTH + + + See Also + + glGetProgram, + glProgramBinary + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramInfoLog.xml b/upstream-man-pages/man4/glGetProgramInfoLog.xml new file mode 100644 index 0000000..e276597 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramInfoLog.xml @@ -0,0 +1,126 @@ + + + + + glGetProgramInfoLog + 3G + + + glGetProgramInfoLog + Returns the information log for a program object + + C Specification + + + void glGetProgramInfoLog + GLuint program + GLsizei maxLength + GLsizei *length + GLchar *infoLog + + + + Parameters + + + program + + Specifies the program object whose information + log is to be queried. + + + + maxLength + + Specifies the size of the character buffer for + storing the returned information log. + + + + length + + Returns the length of the string returned in + infoLog (excluding the null + terminator). + + + + infoLog + + Specifies an array of characters that is used + to return the information log. + + + + + Description + glGetProgramInfoLog returns the + information log for the specified program object. The + information log for a program object is modified when the + program object is linked or validated. The string that is + returned will be null terminated. + + glGetProgramInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetProgram + with the value GL_INFO_LOG_LENGTH. + + The information log for a program object is either an + empty string, or a string containing information about the last + link operation, or a string containing information about the + last validation operation. It may contain diagnostic messages, + warning messages, and other information. When a program object + is created, its information log will be a string of length + 0. + + Notes + The information log for a program object is the OpenGL + implementer's primary mechanism for conveying information about + linking and validating. Therefore, the information log can be + helpful to application developers during the development + process, even when these operations are successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_VALUE is generated if + maxLength is less than 0. + + + Associated Gets + glGetProgram + with argument GL_INFO_LOG_LENGTH + + glIsProgram + + See Also + glCompileShader, + glGetShaderInfoLog, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramInterface.xml b/upstream-man-pages/man4/glGetProgramInterface.xml new file mode 100644 index 0000000..6393057 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramInterface.xml @@ -0,0 +1,254 @@ + + + + + + + 2012 + Khronos Group + + + glGetProgramInterface + 3G + + + glGetProgramInterface + query a property of an interface in a program + + C Specification + + + void glGetProgramInterfaceiv + GLuint program + GLenum programInterface + GLenum pname + GLint * params + + + + Parameters + + + program + + + The name of a program object whose interface to query. + + + + + programInterface + + + A token identifying the interface within program to query. + + + + + pname + + + The name of the parameter within programInterface to query. + + + + + params + + + The address of a variable to retrieve the value of pname for the program interface. + + + + + + Description + + glGetProgramInterfaceiv queries the property of the interface identifed + by programInterface in program, the property name of + which is given by pname. + + + program must be the name of an existing program object. programInterface + is the name of the interface within program to query and must be one of the following + values: + + + + GL_UNIFORM + + + The query is targeted at the set of active uniforms within program. + + + + + GL_UNIFORM_BLOCK + + + The query is targeted at the set of active uniform blocks within program. + + + + + GL_ATOMIC_COUNTER_BUFFER + + + The query is targeted at the set of active atomic counter buffer binding points within program. + + + + + GL_PROGRAM_INPUT + + + The query is targeted at the set of active input variables used by the first shader stage of program. + If program contains multiple shader stages then input variables from any stage other than the first + will not be enumerated. + + + + + GL_PROGRAM_OUTPUT + + + The query is targeted at the set of active output variables produced by the last shader stage of program. + If program contains multiple shader stages then output variables from any stage other than the last + will not be enumerated. + + + + + GL_VERTEX_SUBROUTINE, + GL_TESS_CONTROL_SUBROUTINE, + GL_TESS_EVALUATION_SUBROUTINE, + GL_GEOMETRY_SUBROUTINE, + GL_FRAGMENT_SUBROUTINE, + GL_COMPUTE_SUBROUTINE + + + The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. + + + + + GL_VERTEX_SUBROUTINE_UNIFORM, + GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, + GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, + GL_COMPUTE_SUBROUTINE_UNIFORM + + + The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. + + + + + GL_TRANSFORM_FEEDBACK_VARYING + + + The query is targeted at the set of output variables from the last non-fragment stage of program that would be + captured if transform feedback were active. + + + + + GL_BUFFER_VARIABLE + + + The query is targeted at the set of active buffer variables used by program. + + + + + GL_SHADER_STORAGE_BLOCK + + + The query is targeted at the set of active shader storage blocks used by program. + + + + + + pname identifies the property of programInterface + to return in params. + + + If pname is GL_ACTIVE_RESOURCES, the value returned is the number of + resources in the active resource list for programInterface. If the list + of active resources for programInterface is empty, zero is returned. + + + If pname is GL_MAX_NAME_LENGTH, the value returned is the length of the + longest active name string for an active resource in programInterface. + This length includes an extra character for the null terminator. If the + list of active resources for programInterface is empty, zero is + returned. It is an error to specify GL_MAX_NAME_LENGTH when programInterface + is GL_ATOMIC_COUNTER_BUFFER, as active atomic counter buffer resources are + not assigned name strings. + + + If pname is GL_MAX_NUM_ACTIVE_VARIABLES, the value returned is the number + of active variables belonging to the interface block or atomic counter + buffer resource in programInterface with the most active variables. If + the list of active resources for programInterface is empty, zero is + returned. When pname is GL_MAX_NUM_ACTIVE_VARIABLES, programInterface + must be GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, or GL_SHADER_STORAGE_BLOCK. + + + If pname is GL_MAX_NUM_COMPATIBLE_SUBROUTINES, the value returned is the + number of compatible subroutines belonging to the active subroutine + uniform in programInterface with the most compatible subroutines. If + the list of active resources for programInterface is empty, zero is + returned. When pname is GL_MAX_NUM_COMPATIBLE_SUBROUTINES, + programInterface must be one of GL_VERTEX_SUBROUTINE_UNIFORM, + GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, + GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, or + GL_COMPUTE_SUBROUTINE_UNIFORM. + + + Errors + + GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. + + + GL_INVALID_VALUE is generated if program + is not the name of an existing sync object. + + + GL_INVALID_VALUE is generated if bufSize is + zero. + + + If not NULL, length and label should be addresses + to which the client has write access, otherwise undefined behavior, including process termination + may occur. + + + Associated Gets + + glGet with argument GL_MAX_LABEL_LENGTH. + + + See Also + + glPushDebugGroup, + glPopDebugGroup, + glObjectLabel, + glGetObjectLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramPipeline.xml b/upstream-man-pages/man4/glGetProgramPipeline.xml new file mode 100644 index 0000000..adf53d4 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramPipeline.xml @@ -0,0 +1,127 @@ + + + + + + + 2010 + Khronos Group + + + glGetProgramPipeline + 3G + + + glGetProgramPipeline + retrieve properties of a program pipeline object + + C Specification + + + void glGetProgramPipelineiv + GLuint pipeline + GLenum pname + GLint *params + + + + Parameters + + + pipeline + + + Specifies the name of a program pipeline object whose parameter retrieve. + + + + + pname + + + Specifies the name of the parameter to retrieve. + + + + + params + + + Specifies the address of a variable into which will be written the value or values + of pname for pipeline. + + + + + + Description + + glGetProgramPipelineiv retrieves the value of a property of the program + pipeline object pipeline. pname specifies the + name of the parameter whose value to retrieve. The value of the parameter is written to + the variable whose address is given by params. + + + If pname is GL_ACTIVE_PROGRAM, the name of the + active program object of the program pipeline object is returned in params. + + + If pname is GL_VERTEX_SHADER, the name of the + current program object for the vertex shader type of the program pipeline object is + returned in params. + + + If pname is GL_TESS_CONTROL_SHADER, the name of the + current program object for the tessellation control shader type of the program pipeline object is + returned in params. + + + If pname is GL_TESS_EVALUATION_SHADER, the name of the + current program object for the tessellation evaluation shader type of the program pipeline object is + returned in params. + + + If pname is GL_GEOMETRY_SHADER, the name of the + current program object for the geometry shader type of the program pipeline object is + returned in params. + + + If pname is GL_FRAGMENT_SHADER, the name of the + current program object for the fragment shader type of the program pipeline object is + returned in params. + + + If pname is GL_INFO_LOG_LENGTH, the length of the + info log, including the null terminator, is returned in params. If there + is no info log, zero is returned. + + + Errors + + GL_INVALID_OPERATION is generated if pipeline is not zero or + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. + + + GL_INVALID_ENUM is generated if pname is not one + of the accepted values. + + + See Also + + glGetProgramPipelines, + glBindProgramPipeline, + glDeleteProgramPipelines + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramPipelineInfoLog.xml b/upstream-man-pages/man4/glGetProgramPipelineInfoLog.xml new file mode 100644 index 0000000..f6b031e --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramPipelineInfoLog.xml @@ -0,0 +1,114 @@ + + + + + + + 2010 + Khronos Group + + + glGetProgramPipelineInfoLog + 3G + + + glGetProgramPipelineInfoLog + retrieve the info log string from a program pipeline object + + C Specification + + + void glGetProgramPipelineInfoLog + GLuint pipeline + GLsizei bufSize + GLsizei *length + GLchar *infoLog + + + + Parameters + + + pipeline + + + Specifies the name of a program pipeline object from which to retrieve the info log. + + + + + bufSize + + + Specifies the maximum number of characters, including the null terminator, that may be written into infoLog. + + + + + length + + + Specifies the address of a variable into which will be written the number of characters written into infoLog. + + + + + infoLog + + + Specifies the address of an array of characters into which will be written the info log for pipeline. + + + + + + Description + + glGetProgramPipelineInfoLog retrieves the info log for the program + pipeline object pipeline. The info log, including its null terminator, + is written into the array of characters whose address is given by infoLog. + The maximum number of characters that may be written into infoLog + is given by bufSize, and the actual number of characters written + into infoLog is returned in the integer whose address is given + by length. If length is NULL, + no length is returned. + + + The actual length of the info log for the program pipeline may be determined by calling + glGetProgramPipeline with + pname set to GL_INFO_LOG_LENGTH. + + + Errors + + GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. + + + Associated Gets + + glGetProgramPipeline + with parameter GL_INFO_LOG_LENGTH. + + + + See Also + + glGenProgramPipelines, + glBindProgramPipeline, + glDeleteProgramPipelines, + glGetProgramPipeline + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramResource.xml b/upstream-man-pages/man4/glGetProgramResource.xml new file mode 100644 index 0000000..ecad016 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramResource.xml @@ -0,0 +1,371 @@ + + + + + + + 2012 + Khronos Group + + + glGetProgramResource + 3G + + + glGetProgramResource + retrieve values for multiple properties of a single active resource within a program object + + C Specification + + + void glGetProgramResourceiv + GLuint program + GLenum programInterface + GLuint index + GLsizei propCount + const Glenum * props + GLsizei bufSize + GLsizei * length + GLint * params + + + + Parameters + + + program + + + The name of a program object whose resources to query. + + + + + programInterface + + + A token identifying the interface within program containing the resource named name. + + + + + + Description + + glGetProgramResourceiv returns values for multiple properties of a single active resource with an + index of index in the interface programInterface of program object + program. For each resource, values for propCount properties specified + by the array props are returned. propCount may not be zero. + An error is generated if any value + in props is not one of the properties described immediately belowor if any value in props is not + allowed for programInterface. The set of allowed programInterface + values for each property can be found in the following table: + + + + + + + + Property + Supported Interfaces + + + + + GL_NAME_LENGTH + Any except GL_ATOMIC_COUNTER_BUFFER + + + GL_TYPE + GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, GL_TRANSFORM_FEEDBACK_VARYING, GL_BUFFER_VARIABLE + + + GL_ARRAY_SIZE + GL_UNIFORM, GL_BUFFER_VARIABLE, GL_PROGRAM_INPUT, + GL_PROGRAM_OUTPUT, VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM, GL_TRANSFORM_FEEDBACK_VARYING + + + GL_OFFSET + GL_UNIFORM, GL_BUFFER_VARIABLE + + + GL_BLOCK_INDEX + GL_UNIFORM, GL_BUFFER_VARIABLE + + + GL_ARRAY_STRIDE + GL_UNIFORM, GL_BUFFER_VARIABLE + + + GL_MATRIX_STRIDE + GL_UNIFORM, GL_BUFFER_VARIABLE + + + GL_IS_ROW_MAJOR + GL_UNIFORM, GL_BUFFER_VARIABLE + + + GL_ATOMIC_COUNTER_BUFFER_INDEX + GL_UNIFORM + + + GL_TEXTURE_BUFFER + none + + + GL_BUFFER_BINDING + GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK + + + GL_BUFFER_DATA_SIZE + GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK + + + GL_NUM_ACTIVE_VARIABLES + GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK + + + GL_ACTIVE_VARIABLES + GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK + + + GL_REFERENCED_BY_VERTEX_SHADER + GL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + GL_REFERENCED_BY_TESS_CONTROL_SHADER + GL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + GL_REFERENCED_BY_TESS_EVALUATION_SHADER + GL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + GL_REFERENCED_BY_GEOMETRY_SHADER + GL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + GL_REFERENCED_BY_FRAGMENT_SHADER + GL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + GL_REFERENCED_BY_COMPUTE_SHADER + GL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + GL_NUM_COMPATIBLE_SUBROUTINES + GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM + + + GL_COMPATIBLE_SUBROUTINES + GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM + + + GL_TOP_LEVEL_ARRAY_SIZE + GL_BUFFER_VARIABLE + + + GL_TOP_LEVEL_ARRAY_STRIDE + GL_BUFFER_VARIABLE + + + GL_LOCATION + GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, + GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM + + + GL_LOCATION_INDEX + GL_PROGRAM_OUTPUT + + + GL_IS_PER_PATCH + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT + + + + + + + For the property GL_NAME_LENGTH, a single integer identifying the length of + the name string associated with an active variable, interface block, or + subroutine is written to params. The name length includes a terminating + null character. + + For the property GL_TYPE, a single integer identifying the type of an active + variable is written to params. The integer returned is one of the + values found in table 2.16. + + For the property GL_ARRAY_SIZE, a single integer identifying the number of + active array elements of an active variable is written to params. The + array size returned is in units of the type associated with the property + TYPE. For active variables not corresponding to an array of basic types, + the value zero is written to params. + + For the property GL_BLOCK_INDEX, a single integer identifying the index of + the active interface block containing an active variable is written to + params. If the variable is not the member of an interface block, the + value -1 is written to params. + + For the property GL_OFFSET, a single integer identifying the offset of an + active variable is written to params. For active variables backed by a + buffer object, the value written is the offset, in basic machine units, + relative to the base of buffer range holding the values of the variable. + For active variables not backed by a buffer object, an offset of -1 is + written to params. + + For the property GL_ARRAY_STRIDE, a single integer identifying the stride + between array elements in an active variable is written to params. For + active variables declared as an array of basic types, the value written is + the difference, in basic machine units, between the offsets of consecutive + elements in an array. For active variables not declared as an array of + basic types, zero is written to params. For active variables not backed + by a buffer object, -1 is written to params, regardless of the variable + type. + + For the property GL_MATRIX_STRIDE, a single integer identifying the stride + between columns of a column-major matrix or rows of a row-major matrix is + written to params. For active variables declared a single matrix or + array of matrices, the value written is the difference, in basic machine + units, between the offsets of consecutive columns or rows in each matrix. + For active variables not declared as a matrix or array of matrices, zero + is written to params. For active variables not backed by a buffer + object, -1 is written to params, regardless of the variable type. + + For the property GL_IS_ROW_MAJOR, a single integer identifying whether an + active variable is a row-major matrix is written to params. For active + variables backed by a buffer object, declared as a single matrix or array + of matrices, and stored in row-major order, one is written to params. + For all other active variables, zero is written to params. + + For the property GL_ATOMIC_COUNTER_BUFFER_INDEX, a single integer identifying + the index of the active atomic counter buffer containing an active + variable is written to params. If the variable is not an atomic counter + uniform, the value -1 is written to params. + + For the property GL_BUFFER_BINDING, to index of the buffer binding point + associated with the active uniform block, shader storage block, or atomic + counter buffer is written to params. + + For the property GL_BUFFER_DATA_SIZE, then the implementation-dependent + minimum total buffer object size, in basic machine units, required to hold + all active variables associated with an active uniform block, shader + storage block, or atomic counter buffer is written to params. If the + final member of an active shader storage block is array with no declared + size, the minimum buffer size is computed assuming the array was declared + as an array with one element. + + For the property GL_NUM_ACTIVE_VARIABLES, the number of active variables + associated with an active uniform block, shader storage block, or atomic + counter buffer is written to params. + + For the property GL_of ACTIVE_VARIABLES, an array of active variable indices + associated with an active uniform block, shader storage block, or atomic + counter buffer is written to params. The number of values written to + params for an active resource is given by the value of the property + GL_NUM_ACTIVE_VARIABLES for the resource. + + For the properties GL_REFERENCED_BY_VERTEX_SHADER, + GL_REFERENCED_BY_TESS_CONTROL_SHADER, GL_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_REFERENCED_BY_GEOMETRY_SHADER, GL_REFERENCED_BY_FRAGMENT_SHADER, and + GL_REFERENCED_BY_COMPUTE_SHADER, a single integer is written to params, + identifying whether the active resource is referenced by the vertex, + tessellation control, tessellation evaluation, geometry, or fragment + shaders, respectively, in the program object. The value one is written to + params if an active variable is referenced by the corresponding shader, + or if an active uniform block, shader storage block, or atomic counter + buffer contains at least one variable referenced by the corresponding + shader. Otherwise, the value zero is written to params. + + For the property GL_TOP_LEVEL_ARRAY_SIZE, a single integer identifying the + number of active array elements of the top-level shader storage block + member containing to the active variable is written to params. If the + top-level block member is not declared as an array, the value one is + written to params. If the top-level block member is an array with no + declared size, the value zero is written to params. + + For the property GL_TOP_LEVEL_ARRAY_STRIDE, a single integer identifying the + stride between array elements of the top-level shader storage block member + containing the active variable is written to params. For top-level + block members declared as arrays, the value written is the difference, in + basic machine units, between the offsets of the active variable for + consecutive elements in the top-level array. For top-level block members + not declared as an array, zero is written to params. + + For the property GL_LOCATION, a single integer identifying the assigned + location for an active uniform, input, output, or subroutine uniform + variable is written to params. For input, output, or uniform variables + with locations specified by a layout qualifier, the specified location is + used. For vertex shader input or fragment shader output variables without + a layout qualifier, the location assigned when a program is linked is + written to params. For all other input and output variables, the value + -1 is written to params. For uniforms in uniform blocks, the value -1 + is written to params. + + For the property GL_LOCATION_INDEX, a single integer identifying the fragment + color index of an active fragment shader output variable is written to + params. If the active variable is an output for a non-fragment shader, + the value -1 will be written to params. + + For the property GL_IS_PER_PATCH, a single integer identifying whether the + input or output is a per-patch attribute. If the active variable is a + per-patch attribute (declared with the patch qualifier), the value one + is written to params; otherwise, the value zero is written to params. + + + Errors + + GL_INVALID_VALUE is generated if program is + not the name of an existing program object. + + + GL_INVALID_VALUE is generated if propCount is + zero. + + + GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. + + + GL_INVLALID_ENUM is generated if any value in props + is not one of the accepted tokens for the interface programInterface + + + See Also + + glGetProgramResourceName, + glGetGetProgramResourceIndex, + glGetProgramResourceLocation, + glGetProgramResourceLocationIndex. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramResourceIndex.xml b/upstream-man-pages/man4/glGetProgramResourceIndex.xml new file mode 100644 index 0000000..a040830 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramResourceIndex.xml @@ -0,0 +1,201 @@ + + + + + + + 2012 + Khronos Group + + + glGetProgramResourceIndex + 3G + + + glGetProgramResourceIndex + query the index of a named resource within a program + + C Specification + + + GLuint glGetProgramResourceIndex + GLuint program + GLenum programInterface + const char * name + + + + Parameters + + + program + + + The name of a program object whose resources to query. + + + + + programInterface + + + A token identifying the interface within program containing the resource named name. + + + + + name + + + The name of the resource to query the index of. + + + + + + Description + + glGetProgramResourceIndex returns the unsigned + integer index assigned to a resource named name in + the interface type programInterface of program object program. + + + program must be the name of an existing program object. programInterface + is the name of the interface within program which contains the resource named + nameand must be one of the following + values: + + + + GL_UNIFORM + + + The query is targeted at the set of active uniforms within program. + + + + + GL_UNIFORM_BLOCK + + + The query is targeted at the set of active uniform blocks within program. + + + + + GL_PROGRAM_INPUT + + + The query is targeted at the set of active input variables used by the first shader stage of program. + If program contains multiple shader stages then input variables from any stage other than the first + will not be enumerated. + + + + + GL_PROGRAM_OUTPUT + + + The query is targeted at the set of active output variables produced by the last shader stage of program. + If program contains multiple shader stages then output variables from any stage other than the last + will not be enumerated. + + + + + GL_VERTEX_SUBROUTINE, + GL_TESS_CONTROL_SUBROUTINE, + GL_TESS_EVALUATION_SUBROUTINE, + GL_GEOMETRY_SUBROUTINE, + GL_FRAGMENT_SUBROUTINE, + GL_COMPUTE_SUBROUTINE + + + The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. + + + + + GL_VERTEX_SUBROUTINE_UNIFORM, + GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, + GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, + GL_COMPUTE_SUBROUTINE_UNIFORM + + + The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. + + + + + GL_TRANSFORM_FEEDBACK_VARYING + + + The query is targeted at the set of output variables from the last non-fragment stage of program that would be + captured if transform feedback were active. + + + + + GL_BUFFER_VARIABLE + + + The query is targeted at the set of active buffer variables used by program. + + + + + GL_SHADER_STORAGE_BLOCK + + + The query is targeted at the set of active shader storage blocks used by program. + + + + + + If name exactly matches the name string of one of the active resources + for programInterface, the index of the matched resource is returned. + Additionally, if name would exactly match the name string of an active + resource if "[0]" were appended to name, the index of the matched + resource is returned. Otherwise, name is considered not to be the name + of an active resource, and GL_INVALID_INDEX is returned. + + + For the interface GL_TRANSFORM_FEEDBACK_VARYING, the value GL_INVALID_INDEX + should be returned when querying the index assigned to the special names + gl_NextBuffer, gl_SkipComponents1, gl_SkipComponents2, + gl_SkipComponents3, or gl_SkipComponents4. + + + Errors + + GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. + + + Although not an error, GL_INVALID_INDEX is returned if name + is not the name of a resource within the interface identified by programInterface. + + + See Also + + glGetProgramResourceName, + glGetGetProgramResource, + glGetProgramResourceLocation, + glGetProgramResourceLocationIndex. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramResourceLocation.xml b/upstream-man-pages/man4/glGetProgramResourceLocation.xml new file mode 100644 index 0000000..e99fe73 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramResourceLocation.xml @@ -0,0 +1,140 @@ + + + + + + + 2012 + Khronos Group + + + glGetProgramResourceLocation + 3G + + + glGetProgramResourceLocation + query the location of a named resource within a program + + C Specification + + + GLint glGetProgramResourceLocation + GLuint program + GLenum programInterface + const char * name + + + + Parameters + + + program + + + The name of a program object whose resources to query. + + + + + programInterface + + + A token identifying the interface within program containing the resource named name. + + + + + name + + + The name of the resource to query the location of. + + + + + + Description + + glGetProgramResourceLocation returns the location assigned + to the variable named name in interface programInterface of program + object program. program must be the name of a program that has been + linked successfully. programInterface must + be one of GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, + GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, or GL_COMPUTE_SUBROUTINE_UNIFORM. + The value -1 will be returned if an error occurs, if name does not identify an active variable on + programInterface, or if name identifies an active variable that does + not have a valid location assigned, as described above. The locations + returned by these commands are the same locations returned when querying + the GL_LOCATION and GL_LOCATION_INDEX resource properties. + + + A string provided to glGetProgramResourceLocation is considered to match an active variable if: + + + + + the string exactly matches the name of the active variable + + + + + if the string identifies the base name of an active array, where the + string would exactly match the name of the variable if the suffix + "[0]" were appended to the string + + + + + if the string identifies an active element of the array, where the + string ends with the concatenation of the "[" character, an integer + with no "+" sign, extra leading zeroes, or whitespace identifying an + array element, and the "]" character, the integer is less than the + number of active elements of the array variable, and where the string + would exactly match the enumerated name of the array if the decimal + integer were replaced with zero. + + + + + Any other string is considered not to identify an active variable. If the + string specifies an element of an array variable, + glGetProgramResourceLocation returns the + location assigned to that element. If it + specifies the base name of an array, it identifies the resources + associated with the first element of the array. + + + Errors + + GL_INVALID_VALUE is generated if program + is not the name of an existing program object. + + + GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. + + + GL_INVALID_OPERATION is generated if program + has not been linked successfully. + + + See Also + + glGetProgramResourceName, + glGetProgramResourceIndex, + glGetGetProgramResource, + glGetProgramResourceLocationIndex. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramResourceLocationIndex.xml b/upstream-man-pages/man4/glGetProgramResourceLocationIndex.xml new file mode 100644 index 0000000..e0d42de --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramResourceLocationIndex.xml @@ -0,0 +1,137 @@ + + + + + + + 2012 + Khronos Group + + + glGetProgramResourceLocationIndex + 3G + + + glGetProgramResourceLocationIndex + query the fragment color index of a named variable within a program + + C Specification + + + GLint glGetProgramResourceLocationIndex + GLuint program + GLenum programInterface + const char * name + + + + Parameters + + + program + + + The name of a program object whose resources to query. + + + + + programInterface + + + A token identifying the interface within program containing the resource named name. + + + + + name + + + The name of the resource to query the location of. + + + + + + Description + + glGetProgramResourceLocation returns the fragment color index assigned + to the variable named name in interface programInterface of program + object program. program must be the name of a program that has been + linked successfully. programInterface must + be one of PROGRAM_OUTPUT. + The value -1 will be returned if an error occurs, if name does not identify an active variable on + programInterface, or if name identifies an active variable that does + not have a valid location assigned, as described above. The locations + returned by these commands are the same locations returned when querying + the GL_LOCATION and GL_LOCATION_INDEX resource properties. + + + A string provided to glGetProgramResourceLocationIndex is considered to match an active variable if: + + + + + the string exactly matches the name of the active variable + + + + + if the string identifies the base name of an active array, where the + string would exactly match the name of the variable if the suffix + "[0]" were appended to the string + + + + + if the string identifies an active element of the array, where the + string ends with the concatenation of the "[" character, an integer + with no "+" sign, extra leading zeroes, or whitespace identifying an + array element, and the "]" character, the integer is less than the + number of active elements of the array variable, and where the string + would exactly match the enumerated name of the array if the decimal + integer were replaced with zero. + + + + + Any other string is considered not to identify an active variable. If the + string specifies an element of an array variable, + glGetProgramResourceLocation returns the + location assigned to that element. If it + specifies the base name of an array, it identifies the resources + associated with the first element of the array. + + + Errors + + GL_INVALID_VALUE is generated if program + is not the name of an existing program object. + + + GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. + + + GL_INVALID_OPERATION is generated if program + has not been linked successfully. + + + See Also + + glGetProgramResourceName, + glGetProgramResourceIndex, + glGetGetProgramResource, + glGetProgramResourceLocationIndex. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramResourceName.xml b/upstream-man-pages/man4/glGetProgramResourceName.xml new file mode 100644 index 0000000..0b948bb --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramResourceName.xml @@ -0,0 +1,235 @@ + + + + + + + 2012 + Khronos Group + + + glGetProgramResourceName + 3G + + + glGetProgramResourceName + query the name of an indexed resource within a program + + C Specification + + + void glGetProgramResourceName + GLuint program + GLenum programInterface + GLuint index + GLsizei bufSize + GLsizei * length + char * name + + + + Parameters + + + program + + + The name of a program object whose resources to query. + + + + + programInterface + + + A token identifying the interface within program containing the indexed resource. + + + + + index + + + The index of the resource within programInterface of program. + + + + + bufSize + + + The size of the character array whose address is given by name. + + + + + length + + + The address of a variable which will receive the length of the resource name. + + + + + name + + + The address of a character array into which will be written the name of the resource. + + + + + + Description + + glGetProgramResourceName retrieves the name string + assigned to the single active resource with an index of index + in the interface programInterface of program object + program. index must be less than + the number of entries in the active resource list for programInterface. + + + program must be the name of an existing program object. programInterface + is the name of the interface within program which contains the resource and must be one of the following + values: + + + + GL_UNIFORM + + + The query is targeted at the set of active uniforms within program. + + + + + GL_UNIFORM_BLOCK + + + The query is targeted at the set of active uniform blocks within program. + + + + + GL_PROGRAM_INPUT + + + The query is targeted at the set of active input variables used by the first shader stage of program. + If program contains multiple shader stages then input variables from any stage other than the first + will not be enumerated. + + + + + GL_PROGRAM_OUTPUT + + + The query is targeted at the set of active output variables produced by the last shader stage of program. + If program contains multiple shader stages then output variables from any stage other than the last + will not be enumerated. + + + + + GL_VERTEX_SUBROUTINE, + GL_TESS_CONTROL_SUBROUTINE, + GL_TESS_EVALUATION_SUBROUTINE, + GL_GEOMETRY_SUBROUTINE, + GL_FRAGMENT_SUBROUTINE, + GL_COMPUTE_SUBROUTINE + + + The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. + + + + + GL_VERTEX_SUBROUTINE_UNIFORM, + GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, + GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, + GL_COMPUTE_SUBROUTINE_UNIFORM + + + The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. + + + + + GL_TRANSFORM_FEEDBACK_VARYING + + + The query is targeted at the set of output variables from the last non-fragment stage of program that would be + captured if transform feedback were active. + + + + + GL_BUFFER_VARIABLE + + + The query is targeted at the set of active buffer variables used by program. + + + + + GL_SHADER_STORAGE_BLOCK + + + The query is targeted at the set of active shader storage blocks used by program. + + + + + + The name string assigned to the active resource identified by index is + returned as a null-terminated string in the character array whose address is given in name. The actual number of + characters written into name, excluding the null terminator, is returned + in length. If length is NULL, no length is returned. The maximum + number of characters that may be written into name, including the null + terminator, is specified by bufSize. If the length of the name string + including the null terminator is greater than bufSize, the first + bufSize-1 characters of the name string will be written to name, + followed by a null terminator. If bufSize is zero, no error will be + generated but no characters will be written to name. The length of the + longest name string for programInterface>, including a null terminator, + can be queried by calling glGetProgramInterface with a pname of + GL_MAX_NAME_LENGTH. + + + Errors + + GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. + + + GL_INVALID_VALUE is generated if progam is not + the name of an existing program. + + + GL_INVALID_VALUE is generated if index is greater + than or equal to the number of entries in the active resource list for + programInterface. + + + See Also + + glGetProgramResourceIndex, + glGetGetProgramResource, + glGetProgramResourceLocation, + glGetProgramResourceLocationIndex. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetProgramStage.xml b/upstream-man-pages/man4/glGetProgramStage.xml new file mode 100644 index 0000000..8966024 --- /dev/null +++ b/upstream-man-pages/man4/glGetProgramStage.xml @@ -0,0 +1,132 @@ + + + + + + + 2010 + Khronos Group. + + + glGetProgramStage + 3G + + + glGetProgramStage + retrieve properties of a program object corresponding to a specified shader stage + + C Specification + + + void glGetProgramStageiv + GLuint program + GLenum shadertype + GLenum pname + GLint *values + + + + + Parameters + + + program + + + Specifies the name of the program containing shader stage. + + + + + shadertype + + + Specifies the shader stage from which to query for the subroutine parameter. shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + pname + + + Specifies the parameter of the shader to query. pname + must be GL_ACTIVE_SUBROUTINE_UNIFORMS, + GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS, + GL_ACTIVE_SUBROUTINES, + GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, + or GL_ACTIVE_SUBROUTINE_MAX_LENGTH. + + + + + values + + + Specifies the address of a variable into which the queried value or values will be placed. + + + + + + Description + + glGetProgramStage queries a parameter of a shader stage attached to a program object. + program contains the name of the program to which the shader is attached. shadertype + specifies the stage from which to query the parameter. pname specifies which parameter + should be queried. The value or values of the parameter to be queried is returned in the variable whose address + is given in values. + + + If pname is GL_ACTIVE_SUBROUTINE_UNIFORMS, the number + of active subroutine variables in the stage is returned in values. + + + If pname is GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS, + the number of active subroutine variable locations in the stage is returned in values. + + + If pname is GL_ACTIVE_SUBROUTINES, + the number of active subroutines in the stage is returned in values. + + + If pname is GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, + the length of the longest subroutine uniform for the stage is returned in values. + + + If pname is GL_ACTIVE_SUBROUTINE_MAX_LENGTH, + the length of the longest subroutine name for the stage is returned in values. The + returned name length includes space for the null-terminator. + + + If there is no shader present of type shadertype, the returned value will be consistent + with a shader containing no subroutines or subroutine uniforms. + + + Errors + + GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. + + + GL_INVALID_VALUE is generated if program is not the name of an + existing program object. + + + See Also + + glGetProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetQueryIndexed.xml b/upstream-man-pages/man4/glGetQueryIndexed.xml new file mode 100644 index 0000000..0ceabee --- /dev/null +++ b/upstream-man-pages/man4/glGetQueryIndexed.xml @@ -0,0 +1,121 @@ + + + + + + + 2010 + Khronos Group. + + + glGetQueryIndexediv + 3G + + + glGetQueryIndexediv + return parameters of an indexed query object target + + C Specification + + + void glGetQueryIndexediv + GLenum target + GLuint index + GLenum pname + GLint * params + + + + Parameters + + + target + + + Specifies a query object target. + Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_TIME_ELAPSED, or GL_TIMESTAMP. + + + + + index + + + Specifies the index of the query object target. + + + + + pname + + + Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryIndexediv returns in params a selected parameter of the indexed query object target + specified by target and index. index specifies the index of the + query object target and must be between zero and a target-specific maxiumum. + + + pname names a specific query object target parameter. When pname is + GL_CURRENT_QUERY, the name of the currently active query for the specified index of target, + or zero if no query is active, will be placed in params. + If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number + of bits used to hold the result of queries for target is returned in params. + + + Notes + + The target GL_ANY_SAMPLES_PASSED_CONSERVATIVE is available only if the GL version is 4.3 or greater. + + + If an error is generated, + no change is made to the contents of params. + + + Calling glGetQueryiv is equivalent to calling + glGetQueryIndexediv with index set to zero. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_VALUE is generated if index is greater than or equal to the + target-specific maximum. + + + See Also + + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetQueryObject.xml b/upstream-man-pages/man4/glGetQueryObject.xml new file mode 100644 index 0000000..6d728d1 --- /dev/null +++ b/upstream-man-pages/man4/glGetQueryObject.xml @@ -0,0 +1,161 @@ + + + + + + + 2005 + Sams Publishing + + + glGetQueryObject + 3G + + + glGetQueryObject + return parameters of a query object + + C Specification + + + void glGetQueryObjectiv + GLuint id + GLenum pname + GLint * params + + + + + void glGetQueryObjectuiv + GLuint id + GLenum pname + GLuint * params + + + + + void glGetQueryObjecti64v + GLuint id + GLenum pname + GLint64 * params + + + + + void glGetQueryObjectui64v + GLuint id + GLenum pname + GLuint64 * params + + + + Parameters + + + id + + + Specifies the name of a query object. + + + + + pname + + + Specifies the symbolic name of a query object parameter. + Accepted values are GL_QUERY_RESULT or GL_QUERY_RESULT_AVAILABLE. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryObject returns in params a selected parameter of the query object + specified by id. + + + pname names a specific query object parameter. pname can be as follows: + + + + GL_QUERY_RESULT + + + params returns the value of the query object's passed samples counter. + The initial value is 0. + + + + + GL_QUERY_RESULT_AVAILABLE + + + params returns whether the passed samples counter is immediately available. + If a delay would occur waiting for the query result, GL_FALSE is returned. + Otherwise, GL_TRUE is returned, which also indicates that the results of all + previous queries are available as well. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetQueryObject implicitly flushes the GL pipeline so that any incomplete rendering + delimited by the occlusion query completes in finite time. + + + If multiple queries are issued using the same query object id before calling + glGetQueryObject, the results of the most recent query will be returned. In this case, + when issuing a new query, the results of the previous query are discarded. + + + glGetQueryObjecti64v and glGetQueryObjectui64v are available only + if the GL version is 3.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_OPERATION is generated if id is not the name of a query object. + + + GL_INVALID_OPERATION is generated if id is the name of a currently active + query object. + + + See Also + + glBeginQuery, + glEndQuery, + glGetQueryiv, + glIsQuery, + glQueryCounter + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetQueryiv.xml b/upstream-man-pages/man4/glGetQueryiv.xml new file mode 100644 index 0000000..08b3781 --- /dev/null +++ b/upstream-man-pages/man4/glGetQueryiv.xml @@ -0,0 +1,103 @@ + + + + + + + 2005 + Sams Publishing + + + glGetQueryiv + 3G + + + glGetQueryiv + return parameters of a query object target + + C Specification + + + void glGetQueryiv + GLenum target + GLenum pname + GLint * params + + + + Parameters + + + target + + + Specifies a query object target. + Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_TIME_ELAPSED, or GL_TIMESTAMP. + + + + + pname + + + Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetQueryiv returns in params a selected parameter of the query object target + specified by target. + + + pname names a specific query object target parameter. When pname is + GL_CURRENT_QUERY, the name of the currently active query for target, + or zero if no query is active, will be placed in params. + If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number + of bits used to hold the result of queries for target is returned in params. + + + Notes + + The target GL_ANY_SAMPLES_PASSED_CONSERVATIVE is available only if the GL version is 4.3 or greater. + + + If an error is generated, + no change is made to the contents of params. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + See Also + + glGetQueryObject, + glIsQuery + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetRenderbufferParameter.xml b/upstream-man-pages/man4/glGetRenderbufferParameter.xml new file mode 100644 index 0000000..c477a1d --- /dev/null +++ b/upstream-man-pages/man4/glGetRenderbufferParameter.xml @@ -0,0 +1,103 @@ + + + + + + + 2010 + Khronos Group + + + glGetRenderbufferParameteriv + 3G + + + glGetRenderbufferParameteriv + retrieve information about a bound renderbuffer object + + C Specification + + + void glGetRenderbufferParameteriv + GLenum target + GLenum pname + GLint *params + + + + + Parameters + + + target + + + Specifies the target of the query operation. target must be GL_RENDERBUFFER. + + + + + pname + + + Specifies the parameter whose value to retrieve from the renderbuffer bound to target. + + + + + params + + + Specifies the address of an array to receive the value of the queried parameter. + + + + + + Description + + glGetRenderbufferParameteriv retrieves information about a bound renderbuffer object. target + specifies the target of the query operation and must be GL_RENDERBUFFER. pname specifies + the parameter whose value to query and must be one of GL_RENDERBUFFER_WIDTH, GL_RENDERBUFFER_HEIGHT, + GL_RENDERBUFFER_INTERNAL_FORMAT, GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + GL_RENDERBUFFER_DEPTH_SIZE, GL_RENDERBUFFER_STENCIL_SIZE, or GL_RENDERBUFFER_SAMPLES. + + + Upon a successful return from glGetRenderbufferParameteriv, if pname is GL_RENDERBUFFER_WIDTH, + GL_RENDERBUFFER_HEIGHT, GL_RENDERBUFFER_INTERNAL_FORMAT, or GL_RENDERBUFFER_SAMPLES, + then params will contain the width in pixels, the height in pixels, the internal format, or the number of samples, respectively, + of the image of the renderbuffer currently bound to target. + + + If pname is GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + or GL_RENDERBUFFER_STENCIL_SIZE, then params will contain the actual resolutions (not the resolutions + specified when the image array was defined) for the red, green, blue, alpha depth, or stencil components, respectively, of the image of the + renderbuffer currently bound to target. + + + Errors + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + See Also + + glGenRenderbuffers, + glFramebufferRenderbuffer, + glBindRenderbuffer, + glRenderbufferStorage, + glRenderbufferStorageMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetSamplerParameter.xml b/upstream-man-pages/man4/glGetSamplerParameter.xml new file mode 100644 index 0000000..9695a0f --- /dev/null +++ b/upstream-man-pages/man4/glGetSamplerParameter.xml @@ -0,0 +1,254 @@ + + + + + + + 2010 + Khronos Group + + + glGetSamplerParameter + 3G + + + glGetSamplerParameter + return sampler parameter values + + C Specification + + + void glGetSamplerParameterfv + GLuint sampler + GLenum pname + GLfloat * params + + + + + void glGetSamplerParameteriv + GLuint sampler + GLenum pname + GLint * params + + + + + void glGetSamplerParameterIiv + GLuint sampler + GLenum pname + GLint * params + + + + + void glGetSamplerParameterIuiv + GLuint sampler + GLenum pname + GLuint * params + + + + + Parameters + + + sampler + + + Specifies name of the sampler object from which to retrieve parameters. + + + + + pname + + + Specifies the symbolic name of a sampler parameter. + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, and + GL_TEXTURE_COMPARE_FUNC + are accepted. + + + + + params + + + Returns the sampler parameters. + + + + + + Description + + glGetSamplerParameter returns in params the value or values of the sampler parameter + specified as pname. + sampler defines the target sampler, and must be the name of an existing sampler object, returned from a previous call + to glGenSamplers. + pname accepts the same symbols as glSamplerParameter, + with the same interpretations: + + + + GL_TEXTURE_MAG_FILTER + + + Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. + + + + + GL_TEXTURE_MIN_FILTER + + + Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MIN_LOD + + + Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . + + + + + GL_TEXTURE_MAX_LOD + + + Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. + + + + + GL_TEXTURE_WRAP_S + + + Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_T + + + Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). + + + + + GL_TEXTURE_COMPARE_MODE + + + Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glSamplerParameter. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glSamplerParameter. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetSamplerParameter is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if sampler is not the name of a sampler object returned from + a previous call to glGenSamplers. + + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + See Also + + glSamplerParameter, + glGenSamplers, + glDeleteSamplers, + glSamplerParameter + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetShader.xml b/upstream-man-pages/man4/glGetShader.xml new file mode 100644 index 0000000..daedbe2 --- /dev/null +++ b/upstream-man-pages/man4/glGetShader.xml @@ -0,0 +1,165 @@ + + + + + glGetShader + 3G + + + glGetShaderiv + Returns a parameter from a shader object + + C Specification + + + void glGetShaderiv + GLuint shader + GLenum pname + GLint *params + + + + Parameters + + + shader + + Specifies the shader object to be + queried. + + + + pname + + Specifies the object parameter. Accepted + symbolic names are + GL_SHADER_TYPE, + GL_DELETE_STATUS, + GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH. + + + + params + + Returns the requested object parameter. + + + + + Description + + glGetShader + returns in params + the value of a parameter for a specific shader object. The + following parameters are defined: + + + + GL_SHADER_TYPE + + params returns + GL_VERTEX_SHADER if + shader is a vertex shader + object, GL_GEOMETRY_SHADER if shader + is a geometry shader object, and GL_FRAGMENT_SHADER + if shader is a fragment + shader object. + + + + + GL_DELETE_STATUS + + params returns + GL_TRUE if + shader is currently flagged + for deletion, and GL_FALSE + otherwise. + + + + + GL_COMPILE_STATUS + + params returns + GL_TRUE if the last compile + operation on shader was + successful, and GL_FALSE + otherwise. + + + + + GL_INFO_LOG_LENGTH + + params returns the + number of characters in the information log for + shader including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If shader has no + information log, a value of 0 is returned. + + + + + GL_SHADER_SOURCE_LENGTH + + params returns the + length of the concatenation of the source strings + that make up the shader source for the + shader, including the null + termination character. (i.e., the size of the + character buffer required to store the shader + source). If no source code exists, 0 is + returned. + + + + + Notes + + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader does not refer to a shader + object. + + GL_INVALID_ENUM is generated if + pname is not an accepted value. + + + Associated Gets + glGetShaderInfoLog + with argument shader + + glGetShaderSource + with argument shader + + glIsShader + + See Also + glCompileShader, + glCreateShader, + glDeleteShader, + glGetProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetShaderInfoLog.xml b/upstream-man-pages/man4/glGetShaderInfoLog.xml new file mode 100644 index 0000000..d492099 --- /dev/null +++ b/upstream-man-pages/man4/glGetShaderInfoLog.xml @@ -0,0 +1,123 @@ + + + + + glGetShaderInfoLog + 3G + + + glGetShaderInfoLog + Returns the information log for a shader object + + C Specification + + + void glGetShaderInfoLog + GLuint shader + GLsizei maxLength + GLsizei *length + GLchar *infoLog + + + + Parameters + + + shader + + Specifies the shader object whose information + log is to be queried. + + + + maxLength + + Specifies the size of the character buffer for + storing the returned information log. + + + + length + + Returns the length of the string returned in + infoLog (excluding the null + terminator). + + + + infoLog + + Specifies an array of characters that is used + to return the information log. + + + + + Description + glGetShaderInfoLog returns the + information log for the specified shader object. The information + log for a shader object is modified when the shader is compiled. + The string that is returned will be null terminated. + + glGetShaderInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetShader + with the value GL_INFO_LOG_LENGTH. + + The information log for a shader object is a string that + may contain diagnostic messages, warning messages, and other + information about the last compile operation. When a shader + object is created, its information log will be a string of + length 0. + + Notes + The information log for a shader object is the OpenGL + implementer's primary mechanism for conveying information about + the compilation process. Therefore, the information log can be + helpful to application developers during the development + process, even when compilation is successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + maxLength is less than 0. + + + Associated Gets + glGetShader + with argument GL_INFO_LOG_LENGTH + + glIsShader + + See Also + glCompileShader, + glGetProgramInfoLog, + glLinkProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetShaderPrecisionFormat.xml b/upstream-man-pages/man4/glGetShaderPrecisionFormat.xml new file mode 100644 index 0000000..76fcc73 --- /dev/null +++ b/upstream-man-pages/man4/glGetShaderPrecisionFormat.xml @@ -0,0 +1,107 @@ + + + + + + + 2010 + Khronos Group + + + glGetShaderPrecisionFormat + 3G + + + glGetShaderPrecisionFormat + retrieve the range and precision for numeric formats supported by the shader compiler + + C Specification + + + void glGetShaderPrecisionFormat + GLenum shaderType + GLenum precisionType + GLint *range + GLint *precision + + + + Parameters + + + shaderType + + + Specifies the type of shader whose precision to query. shaderType + must be GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. + + + + + precisionType + + + Specifies the numeric format whose precision and range to query. + + + + + range + + + Specifies the address of array of two integers into which encodings of the implementation's + numeric range are returned. + + + + + precision + + + Specifies the address of an integer into which the numeric precision of the implementation + is written. + + + + + + Description + + glGetShaderPrecisionFormat retrieves the numeric range and precision for + the implementation's representation of quantities in different numeric formats in specified + shader type. shaderType specifies the type of shader for which the numeric + precision and range is to be retrieved and must be one of GL_VERTEX_SHADER + or GL_FRAGMENT_SHADER. precisionType specifies the + numeric format to query and must be one of GL_LOW_FLOAT, GL_MEDIUM_FLOAT + GL_HIGH_FLOAT, GL_LOW_INT, GL_MEDIUM_INT, + or GL_HIGH_INT. + + + range points to an array of two integers into which the format's numeric range + will be returned. If min and max are the smallest values representable in the format, then the values + returned are defined to be: range[0] = floor(log2(|min|)) and + range[1] = floor(log2(|max|)). + + + precision specifies the address of an integer into which will be written + the log2 value of the number of bits of precision of the format. If the smallest representable + value greater than 1 is 1 + eps, then the integer addressed by precision + will contain floor(-log2(eps)). + + + Errors + + GL_INVALID_ENUM is generated if shaderType or + precisionType is not an accepted value. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetShaderSource.xml b/upstream-man-pages/man4/glGetShaderSource.xml new file mode 100644 index 0000000..6d7cb10 --- /dev/null +++ b/upstream-man-pages/man4/glGetShaderSource.xml @@ -0,0 +1,111 @@ + + + + + glGetShaderSource + 3G + + + glGetShaderSource + Returns the source code string from a shader object + + C Specification + + + void glGetShaderSource + GLuint shader + GLsizei bufSize + GLsizei *length + GLchar *source + + + + Parameters + + + shader + + Specifies the shader object to be + queried. + + + + bufSize + + Specifies the size of the character buffer for + storing the returned source code string. + + + + length + + Returns the length of the string returned in + source (excluding the null + terminator). + + + + source + + Specifies an array of characters that is used + to return the source code string. + + + + + Description + glGetShaderSource returns the + concatenation of the source code strings from the shader object + specified by shader. The source code + strings for a shader object are the result of a previous call to + glShaderSource. + The string returned by the function will be null + terminated. + + glGetShaderSource returns in + source as much of the source code string + as it can, up to a maximum of bufSize + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned source code + string can be obtained by calling + glGetShader + with the value + GL_SHADER_SOURCE_LENGTH. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + bufSize is less than 0. + + + Associated Gets + glGetShader + with argument + GL_SHADER_SOURCE_LENGTH + + glIsShader + + See Also + glCreateShader, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetString.xml b/upstream-man-pages/man4/glGetString.xml new file mode 100644 index 0000000..7f541af --- /dev/null +++ b/upstream-man-pages/man4/glGetString.xml @@ -0,0 +1,181 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetString + 3G + + + glGetString + return a string describing the current GL connection + + C Specification + + + const GLubyte* glGetString + GLenum name + + + + C Specification + + + const GLubyte* glGetStringi + GLenum name + GLuint index + + + + Parameters + + + name + + + Specifies a symbolic constant, one of + GL_VENDOR, GL_RENDERER, + GL_VERSION, or GL_SHADING_LANGUAGE_VERSION. + Additionally, glGetStringi accepts the GL_EXTENSIONS token. + + + + + index + + + For glGetStringi, specifies the index of the string to return. + + + + + + Description + + glGetString returns a pointer to a static string + describing some aspect of the current GL connection. + name can be one of the following: + + + + GL_VENDOR + + + + + Returns the company responsible for this GL implementation. + This name does not change from release to release. + + + + + GL_RENDERER + + + + + Returns the name of the renderer. + This name is typically specific to a particular configuration of a hardware + platform. + It does not change from release to release. + + + + + GL_VERSION + + + + + Returns a version or release number. + + + + + GL_SHADING_LANGUAGE_VERSION + + + + + Returns a version or release number for the shading language. + + + + + + glGetStringi returns a pointer to a static string + indexed by index. + name can be one of the following: + + + + GL_EXTENSIONS + + + + + For glGetStringi only, returns the extension string + supported by the implementation at index. + + + + + + Strings GL_VENDOR and GL_RENDERER together uniquely specify + a platform. They do not change from release to release and should be used + by platform-recognition algorithms. + + + The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. + The version number uses one + of these forms: + + + major_number.minor_number + major_number.minor_number.release_number + + + Vendor-specific information may follow the version + number. Its format depends on the implementation, but + a space always separates the version number and + the vendor-specific information. + + + All strings are null-terminated. + + + Notes + + If an error is generated, glGetString returns 0. + + + The client and server may support different versions. + glGetString always returns a compatible version number. + The release number always describes the server. + + + Errors + + GL_INVALID_ENUM is generated if name is not an accepted value. + + + GL_INVALID_VALUE is generated by glGetStringi if + index is outside the valid range for indexed state name. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetSubroutineIndex.xml b/upstream-man-pages/man4/glGetSubroutineIndex.xml new file mode 100644 index 0000000..68e6640 --- /dev/null +++ b/upstream-man-pages/man4/glGetSubroutineIndex.xml @@ -0,0 +1,102 @@ + + + + + + + 2010 + Khronos Group. + + + glGetSubroutineIndex + 3G + + + glGetSubroutineIndex + retrieve the index of a subroutine uniform of a given shader stage within a program + + C Specification + + + GLuint glGetSubroutineIndex + GLuint program + GLenum shadertype + const GLchar *name + + + + + Parameters + + + program + + + Specifies the name of the program containing shader stage. + + + + + shadertype + + + Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + name + + + Specifies the name of the subroutine uniform whose index to query. + + + + + + Description + + glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage attached to a program object. + program contains the name of the program to which the shader is attached. shadertype + specifies the stage from which to query shader subroutine index. name contains the null-terminated + name of the subroutine uniform whose name to query. + + + If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX + is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, + a value between zero and the value of GL_ACTIVE_SUBROUTINES minus one will be returned. Subroutine indices + are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINES minus + one for the shader stage. + + + Errors + + GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. + + + GL_INVALID_VALUE is generated if program is not the name of an + existing program object. + + + See Also + + glGetProgram, + glGetActiveSubroutineUniform, + glGetActiveSubroutineUniformName + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetSubroutineUniformLocation.xml b/upstream-man-pages/man4/glGetSubroutineUniformLocation.xml new file mode 100644 index 0000000..b17746b --- /dev/null +++ b/upstream-man-pages/man4/glGetSubroutineUniformLocation.xml @@ -0,0 +1,104 @@ + + + + + + + 2010 + Khronos Group. + + + glGetSubroutineUniformLocation + 3G + + + glGetSubroutineUniformLocation + retrieve the location of a subroutine uniform of a given shader stage within a program + + C Specification + + + GLint glGetSubroutineUniformLocation + GLuint program + GLenum shadertype + const GLchar *name + + + + + Parameters + + + program + + + Specifies the name of the program containing shader stage. + + + + + shadertype + + + Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + name + + + Specifies the name of the subroutine uniform whose index to query. + + + + + + Description + + glGetSubroutineUniformLocation returns the location of the subroutine uniform variable + name in the shader stage of type shadertype attached to + program, with behavior otherwise identical to + glGetUniformLocation. + + + If name is not the name of a subroutine uniform in the shader stage, -1 + is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, + a value between zero and the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one will be returned. + Subroutine locations are assigned using consecutive integers in the range from zero to the value + of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one for the shader stage. For active subroutine uniforms + declared as arrays, the declared array elements are assigned consecutive locations. + + + Errors + + GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. + + + GL_INVALID_VALUE is generated if program is not the name of an + existing program object. + + + See Also + + glGetProgram, + glGetActiveSubroutineUniform, + glGetActiveSubroutineUniformName, + glGetUniformLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetSync.xml b/upstream-man-pages/man4/glGetSync.xml new file mode 100644 index 0000000..02d3051 --- /dev/null +++ b/upstream-man-pages/man4/glGetSync.xml @@ -0,0 +1,130 @@ + + + + + + + 2010 + Khronos Group + + + glGetSynciv + 3G + + + glGetSynciv + query the properties of a sync object + + C Specification + + + void glGetSynciv + GLsync sync + GLenum pname + GLsizei bufSize + GLsizei *length + GLint *values + + + + + Parameters + + + sync + + + Specifies the sync object whose properties to query. + + + + + pname + + + Specifies the parameter whose value to retrieve from the sync object specified in sync. + + + + + bufSize + + + Specifies the size of the buffer whose address is given in values. + + + + + length + + + Specifies the address of an variable to receive the number of integers placed in values. + + + + + values + + + Specifies the address of an array to receive the values of the queried parameter. + + + + + + Description + + glGetSynciv retrieves properties of a sync object. sync specifies the name of the sync + object whose properties to retrieve. + + + On success, glGetSynciv replaces up to bufSize integers in values with the + corresponding property values of the object being queried. The actual number of integers replaced is returned in the variable whose address is + specified in length. If length is NULL, no length is returned. + + + If pname is GL_OBJECT_TYPE, a single value representing the specific type of the sync object is + placed in values. The only type supported is GL_SYNC_FENCE. + + + If pname is GL_SYNC_STATUS, a single value representing the status of the sync object + (GL_SIGNALED or GL_UNSIGNALED) is placed in values. + + + If pname is GL_SYNC_CONDITION, a single value representing the condition of the sync object + is placed in values. The only condition supported is GL_SYNC_GPU_COMMANDS_COMPLETE. + + + If pname is GL_SYNC_FLAGS, a single value representing the flags with which the sync object + was created is placed in values. No flags are currently supportedflags is + expected to be used in future extensions to the sync objects.. + + + If an error occurs, nothing will be written to values or length. + + + Errors + + GL_INVALID_VALUE is generated if sync is not the name of a sync object. + + + GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. + + + See Also + + glFenceSync, + glWaitSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetTexImage.xml b/upstream-man-pages/man4/glGetTexImage.xml new file mode 100644 index 0000000..37f5b9a --- /dev/null +++ b/upstream-man-pages/man4/glGetTexImage.xml @@ -0,0 +1,314 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexImage + 3G + + + glGetTexImage + return a texture image + + C Specification + + + void glGetTexImage + GLenum target + GLint level + GLenum format + GLenum type + GLvoid * img + + + + + Parameters + + + target + + + Specifies which texture is to be obtained. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. + + + + + level + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + format + + + Specifies a pixel format for the returned data. + The supported formats are + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RG, + GL_RGB, + GL_RGBA, + GL_BGR, + GL_BGRA, + GL_RED_INTEGER, + GL_GREEN_INTEGER, + GL_BLUE_INTEGER, + GL_RG_INTEGER, + GL_RGB_INTEGER, + GL_RGBA_INTEGER, + GL_BGR_INTEGER, + GL_BGRA_INTEGER. + + + + + type + + + Specifies a pixel type for the returned data. + The supported types are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, and + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + + + img + + + Returns the texture image. + Should be a pointer to an array of the type specified by type. + + + + + + Description + + glGetTexImage returns a texture image into img. + target specifies whether the desired texture image is one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_1D_ARRAY, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D or any of + GL_TEXTURE_CUBE_MAP_*), + or + glTexImage3D (GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D). + level specifies the level-of-detail number of the desired image. + format and type specify the format and type of the desired image array. + See the reference page for glTexImage1D + for a description of the acceptable values for the format and type + parameters, respectively. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. + + + To understand the operation of glGetTexImage, consider the selected internal + four-component texture image to be an RGBA color buffer the size of the image. + The semantics of glGetTexImage are then identical to those of glReadPixels, + with the exception that no pixel transfer operations are performed, + when called with the same format and type, + with x and y set to 0, + width set to the width of the texture image + and height set to 1 for 1D images, + or to the height of the texture image + for 2D images. + + + If the selected texture image does not contain four components, + the following mappings are applied. + Single-component textures are treated as RGBA buffers with red set + to the single-component value, + green set to 0, blue set to 0, and alpha set to 1. + Two-component textures are treated as RGBA buffers with red set to + the value of component zero, + alpha set to the value of component one, + and green and blue set to 0. + Finally, + three-component textures are treated as RGBA buffers with red set to + component zero, + green set to component one, + blue set to component two, + and alpha set to 1. + + + To determine the required size of img, + use glGetTexLevelParameter to determine the dimensions of the + internal texture image, + then scale the required number of pixels by the storage required for + each pixel, + based on format and type. + Be sure to take the pixel storage parameters into account, + especially GL_PACK_ALIGNMENT. + + + Notes + + If an error is generated, + no change is made to the contents of img. + + + glGetTexImage returns the texture image for the active texture unit. + + + Errors + + GL_INVALID_ENUM is generated if target, format, or type is not + an accepted value. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + + + max + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV and format is not GL_RGB. + + + GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV and format is neither GL_RGBA + or GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and img is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexLevelParameter with argument GL_TEXTURE_WIDTH + + + glGetTexLevelParameter with argument GL_TEXTURE_HEIGHT + + + glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT + + + glGet with arguments GL_PACK_ALIGNMENT and others + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetTexLevelParameter.xml b/upstream-man-pages/man4/glGetTexLevelParameter.xml new file mode 100644 index 0000000..2be71f9 --- /dev/null +++ b/upstream-man-pages/man4/glGetTexLevelParameter.xml @@ -0,0 +1,399 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexLevelParameter + 3G + + + glGetTexLevelParameter + return texture parameter values for a specific level of detail + + C Specification + + + void glGetTexLevelParameterfv + GLenum target + GLint level + GLenum pname + GLfloat * params + + + + + void glGetTexLevelParameteriv + GLenum target + GLint level + GLenum pname + GLint * params + + + + + Parameters + + + target + + + Specifies the symbolic name of the target texture, + one of + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or + GL_TEXTURE_BUFFER. + + + + + level + + + Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT, + GL_TEXTURE_DEPTH, + GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_BORDER, + GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_DEPTH_SIZE, + GL_TEXTURE_COMPRESSED, + GL_TEXTURE_COMPRESSED_IMAGE_SIZE, and + GL_TEXTURE_BUFFER_OFFSET + are accepted. + + + + + params + + + Returns the requested data. + + + + + + Description + + glGetTexLevelParameter returns in params texture parameter values for a specific + level-of-detail value, + specified as level. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + GL_MAX_TEXTURE_SIZE, and GL_MAX_3D_TEXTURE_SIZE are not really + descriptive enough. + It has to report the largest square texture image that can be + accommodated with mipmaps and borders, + but a long skinny texture, or a texture without mipmaps and borders, may + easily fit in texture memory. + The proxy targets allow the user to more accurately query + whether the GL can accommodate a texture of a given configuration. + If the texture cannot be accommodated, the texture state variables, which + may be queried with glGetTexLevelParameter, are set to 0. If the texture can be accommodated, + the texture state values will be set as they would be set for a + non-proxy target. + + + pname specifies the texture parameter whose value or values + will be returned. + + + The accepted parameter names are as follows: + + + + GL_TEXTURE_WIDTH + + + + + params returns a single value, + the width of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_HEIGHT + + + + + params returns a single value, + the height of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_DEPTH + + + + + params returns a single value, + the depth of the texture image. + This value includes the border of the texture image. The initial value is + 0. + + + + + GL_TEXTURE_INTERNAL_FORMAT + + + + + params returns a single value, + the internal format of the texture image. + + + + + GL_TEXTURE_RED_TYPE, + + + + + GL_TEXTURE_GREEN_TYPE, + + + + + GL_TEXTURE_BLUE_TYPE, + + + + + GL_TEXTURE_ALPHA_TYPE, + + + + + GL_TEXTURE_DEPTH_TYPE + + + + + The data type used to store the component. + The types GL_NONE, GL_SIGNED_NORMALIZED, + GL_UNSIGNED_NORMALIZED, GL_FLOAT, + GL_INT, and GL_UNSIGNED_INT may be returned + to indicate signed normalized fixed-point, unsigned normalized fixed-point, floating-point, integer unnormalized, and + unsigned integer unnormalized components, respectively. + + + + + GL_TEXTURE_RED_SIZE, + + + + + GL_TEXTURE_GREEN_SIZE, + + + + + GL_TEXTURE_BLUE_SIZE, + + + + + GL_TEXTURE_ALPHA_SIZE, + + + + + GL_TEXTURE_DEPTH_SIZE + + + + + The internal storage resolution of an individual component. + The resolution chosen by the GL will be a close match for the resolution + requested by the user with the component argument of glTexImage1D, + glTexImage2D, glTexImage3D, glCopyTexImage1D, and + glCopyTexImage2D. The initial value is 0. + + + + + GL_TEXTURE_COMPRESSED + + + + + params returns a single boolean value indicating if the texture image is + stored in a compressed internal format. The initiali value is GL_FALSE. + + + + + GL_TEXTURE_COMPRESSED_IMAGE_SIZE + + + + + params returns a single integer value, the number of unsigned bytes of the + compressed texture image that would be returned from + glGetCompressedTexImage. + + + + + GL_TEXTURE_BUFFER_OFFSET + + + + + params returns a single integer value, the offset into the + data store of the buffer bound to a buffer texture. + glTexBufferRange. + + + + + GL_TEXTURE_BUFFER_SIZE + + + + + params returns a single integer value, the size of the range of a + data store of the buffer bound to a buffer texture. + glTexBufferRange. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + glGetTexLevelParameter returns the texture level parameters for the active texture unit. + + + GL_TEXTURE_BUFFER_OFFSET and GL_TEXTURE_BUFFER_SIZE are available only + if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_BUFFER + and level is not zero. + + + GL_INVALID_OPERATION is generated if + GL_TEXTURE_COMPRESSED_IMAGE_SIZE is queried on texture images with an + uncompressed internal format or on proxy targets. + + + See Also + + glActiveTexture, + glGetTexParameter, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010-2012 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetTexParameter.xml b/upstream-man-pages/man4/glGetTexParameter.xml new file mode 100644 index 0000000..95933bf --- /dev/null +++ b/upstream-man-pages/man4/glGetTexParameter.xml @@ -0,0 +1,414 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glGetTexParameter + 3G + + + glGetTexParameter + return texture parameter values + + C Specification + + + void glGetTexParameterfv + GLenum target + GLenum pname + GLfloat * params + + + + + void glGetTexParameteriv + GLenum target + GLenum pname + GLint * params + + + + + void glGetTexParameterIiv + GLenum target + GLenum pname + GLint * params + + + + + void glGetTexParameterIuiv + GLenum target + GLenum pname + GLuint * params + + + + + Parameters + + + target + + + Specifies the symbolic name of the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, and + GL_TEXTURE_CUBE_MAP_ARRAY + are accepted. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_IMMUTABLE_FORMAT, + GL_TEXTURE_IMMUTABLE_LEVELS, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_MIN_LEVEL, + GL_TEXTURE_VIEW_NUM_LAYERS, + GL_TEXTURE_VIEW_NUM_LEVELS, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, and + GL_TEXTURE_WRAP_R + are accepted. + + + + + params + + + Returns the texture parameters. + + + + + + Description + + glGetTexParameter returns in params the value or values of the texture parameter + specified as pname. + target defines the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_ARRAY + specify one-, two-, or three-dimensional, one-dimensional array, two-dimensional array, rectangle, cube-mapped or cube-mapped array texturing, respectively. + pname accepts the same symbols as glTexParameter, + with the same interpretations: + + + + GL_DEPTH_STENCIL_TEXTURE_MODE + + + Returns the single-value depth stencil texture mode, a symbolic constant. + The initial value is GL_DEPTH_COMPONENT. + + + + + GL_TEXTURE_MAG_FILTER + + + Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. + + + + + GL_TEXTURE_MIN_FILTER + + + Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MIN_LOD + + + Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . + + + + + GL_TEXTURE_MAX_LOD + + + Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. + + + + + GL_TEXTURE_BASE_LEVEL + + + Returns the single-valued base texture mipmap level. The initial value is 0. + + + + + GL_TEXTURE_MAX_LEVEL + + + Returns the single-valued maximum texture mipmap array level. The initial + value is 1000. + + + + + GL_TEXTURE_SWIZZLE_R + + + Returns the red component swizzle. The initial value is GL_RED. + + + + + GL_TEXTURE_SWIZZLE_G + + + Returns the green component swizzle. The initial value is GL_GREEN. + + + + + GL_TEXTURE_SWIZZLE_B + + + Returns the blue component swizzle. The initial value is GL_BLUE. + + + + + GL_TEXTURE_SWIZZLE_A + + + Returns the alpha component swizzle. The initial value is GL_ALPHA. + + + + + GL_TEXTURE_SWIZZLE_RGBA + + + Returns the component swizzle for all channels in a single query. + + + + + GL_TEXTURE_WRAP_S + + + Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_T + + + Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). + + + + + GL_TEXTURE_COMPARE_MODE + + + Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glTexParameter. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glTexParameter. + + + + + GL_TEXTURE_VIEW_MIN_LEVEL + + + Returns a single-valued base level of a texture view relative to its parent. The + initial value is 0. See glTextureView. + + + + + GL_TEXTURE_VIEW_NUM_LEVELS + + + Returns a single-valued number of levels of detail of a texture view. + See glTextureView. + + + + + GL_TEXTURE_VIEW_MIN_LAYER + + + Returns a single-valued first level of a texture array view relative to its parent. + See glTextureView. + + + + + GL_TEXTURE_VIEW_NUM_LAYERS + + + Returns a single-valued number of layers in a texture array view. + See glTextureView. + + + + + GL_TEXTURE_IMMUTABLE_LEVELS + + + Returns a single-valued number of immutable texture levels in a texture view. + See glTextureView. + + + + + + In addition to the parameters that may be set with glTexParameter, + glGetTexParameter accepts the following read-only parameters: + + + + GL_TEXTURE_IMMUTABLE_FORMAT + + + Returns non-zero if the texture has an immutable format. Textures become + immutable if their storage is specified with glTexStorage1D, + glTexStorage2D or glTexStorage3D. + The initial value is GL_FALSE. + + + + + + Notes + + If an error is generated, + no change is made to the contents of params. + + + GL_DEPTH_STENCIL_TEXTURE_MODE, GL_TEXTURE_VIEW_MIN_LEVEL, + GL_TEXTURE_VIEW_NUM_LEVELS, GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_NUM_LAYERS and GL_TEXTURE_IMMUTABLE_LEVELS are available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not an + accepted value. + + + See Also + + glTexParameter, + glTexStorage1D, + glTexStorage2D, + glTexStorage3D, + glTextureView + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010-2012 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glGetTransformFeedbackVarying.xml b/upstream-man-pages/man4/glGetTransformFeedbackVarying.xml new file mode 100644 index 0000000..aa7cc03 --- /dev/null +++ b/upstream-man-pages/man4/glGetTransformFeedbackVarying.xml @@ -0,0 +1,161 @@ + + + + + + + 2010 + Khronos Group + + + glGetTransformFeedbackVarying + 3G + + + glGetTransformFeedbackVarying + retrieve information about varying variables selected for transform feedback + + C Specification + + + void glGetTransformFeedbackVarying + GLuintprogram + GLuintindex + GLsizeibufSize + GLsizei *length + GLsizeisize + GLenum *type + char *name + + + + Parameters + + + program + + + The name of the target program object. + + + + + index + + + The index of the varying variable whose information to retrieve. + + + + + bufSize + + + The maximum number of characters, including the null terminator, that may be written into name. + + + + + length + + + The address of a variable which will receive the number of characters written into name, + excluding the null-terminator. If length is NULL no length is returned. + + + + + size + + + The address of a variable that will receive the size of the varying. + + + + + type + + + The address of a variable that will recieve the type of the varying. + + + + + name + + + The address of a buffer into which will be written the name of the varying. + + + + + + Description + + Information about the set of varying variables in a linked program that will be captured + during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. + glGetTransformFeedbackVarying provides information about the varying + variable selected by index. An index of 0 selects + the first varying variable specified in the varyings array passed + to glTransformFeedbackVaryings, and + an index of GL_TRANSFORM_FEEDBACK_VARYINGS-1 selects + the last such variable. + + + The name of the selected varying is returned as a null-terminated string in + name. The actual number of characters written into name, + excluding the null terminator, is returned in length. If length + is NULL, no length is returned. The maximum number of characters that may be written into name, + including the null terminator, is specified by bufSize. + + + The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + which can be queried with glGetProgram. + + + For the selected varying variable, its type is returned into type. The size of + the varying is returned into size. The value in size is + in units of the type returned in type. The type returned can be any of the + scalar, vector, or matrix attribute types returned by glGetActiveAttrib. + If an error occurred, the return parameters length, size, + type and name will be unmodified. This command will return as much + information about the varying variables as possible. If no information is available, length + will be set to zero and name will be an empty string. This situation could + arise if glGetTransformFeedbackVarying is called after a failed link. + + + Errors + + GL_INVALID_VALUE is generated if program is not + the name of a program object. + + + GL_INVALID_VALUE is generated if index is greater or equal to + the value of GL_TRANSFORM_FEEDBACK_VARYINGS. + + + GL_INVALID_OPERATION is generated program has not been linked. + + + Associated Gets + + glGetProgram with argument GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH. + + + See Also + + glBeginTransformFeedback, + glEndTransformFeedback, + glTransformFeedbackVaryings, + glGetProgram + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetUniform.xml b/upstream-man-pages/man4/glGetUniform.xml new file mode 100644 index 0000000..b10f369 --- /dev/null +++ b/upstream-man-pages/man4/glGetUniform.xml @@ -0,0 +1,148 @@ + + + + + glGetUniform + 3G + + + glGetUniform + glGetUniformfv + glGetUniformiv + Returns the value of a uniform variable + + C Specification + + + void glGetUniformfv + GLuint program + GLint location + GLfloat *params + + + void glGetUniformiv + GLuint program + GLint location + GLint *params + + + void glGetUniformuiv + GLuint program + GLint location + GLuint *params + + + void glGetUniformdv + GLuint program + GLint location + GLdouble *params + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + location + + Specifies the location of the uniform variable + to be queried. + + + + params + + Returns the value of the specified uniform + variable. + + + + + Description + glGetUniform returns in + params the value(s) of the specified + uniform variable. The type of the uniform variable specified by + location determines the number of values + returned. If the uniform variable is defined in the shader as a + boolean, int, or float, a single value will be returned. If it + is defined as a vec2, ivec2, or bvec2, two values will be + returned. If it is defined as a vec3, ivec3, or bvec3, three + values will be returned, and so on. To query values stored in + uniform variables declared as arrays, call + glGetUniform for each element of the array. + To query values stored in uniform variables declared as + structures, call glGetUniform for each + field in the structure. The values for uniform variables + declared as a matrix will be returned in column major + order. + + The locations assigned to uniform variables are not known + until the program object is linked. After linking has occurred, + the command + glGetUniformLocation + can be used to obtain the location of a uniform variable. This + location value can then be passed to + glGetUniform in order to query the current + value of the uniform variable. After a program object has been + linked successfully, the index values for uniform variables + remain fixed until the next link command occurs. The uniform + variable values can only be queried after a link if the link was + successful. + + Notes + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + GL_INVALID_OPERATION is generated if + location does not correspond to a valid + uniform variable location for the specified program object. + + + Associated Gets + glGetActiveUniform + with arguments program and the index of an active + uniform variable + + glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH + + glGetUniformLocation + with arguments program and the name of a + uniform variable + glIsProgram + + See Also + glCreateProgram, + glLinkProgram, + glUniform + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetUniformBlockIndex.xml b/upstream-man-pages/man4/glGetUniformBlockIndex.xml new file mode 100644 index 0000000..75039fa --- /dev/null +++ b/upstream-man-pages/man4/glGetUniformBlockIndex.xml @@ -0,0 +1,94 @@ + + + + + + + 2010 + Khronos Group + + + glGetUniformBlockIndex + 3G + + + glGetUniformBlockIndex + retrieve the index of a named uniform block + + C Specification + + + GLuint glGetUniformBlockIndex + GLuint program + const GLchar *uniformBlockName + + + + Parameters + + + program + + + Specifies the name of a program containing the uniform block. + + + + + uniformBlockName + + + Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. + + + + + + Description + + glGetUniformBlockIndex retrieves the index of a uniform block within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. + + + glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName + of program. If uniformBlockName does not identify an active uniform block of program, + glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform + blocks of a program are assigned in consecutive order, beginning with zero. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + Notes + + glGetUniformBlockIndex is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniformBlockName, + glGetActiveUniformBlock, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetUniformIndices.xml b/upstream-man-pages/man4/glGetUniformIndices.xml new file mode 100644 index 0000000..f5cfa9e --- /dev/null +++ b/upstream-man-pages/man4/glGetUniformIndices.xml @@ -0,0 +1,117 @@ + + + + + + + 2010 + Khronos Group + + + glGetUniformIndices + 3G + + + glGetUniformIndices + retrieve the index of a named uniform block + + C Specification + + + void glGetUniformIndices + GLuint program + GLsizei uniformCount + const GLchar **uniformNames + GLuint *uniformIndices + + + + Parameters + + + program + + + Specifies the name of a program containing uniforms whose indices to query. + + + + + uniformCount + + + Specifies the number of uniforms whose indices to query. + + + + + uniformNames + + + Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. + + + + + uniformIndices + + + Specifies the address of an array that will receive the indices of the uniforms. + + + + + + Description + + glGetUniformIndices retrieves the indices of a number of uniforms within program. + + + program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. + + + uniformCount indicates both the number of elements in the array of names uniformNames and the + number of indices that may be written to uniformIndices. + + + uniformNames contains a list of uniformCount name strings identifying the uniform names to be + queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will + be written to the corresponding element of uniformIndices. If a string in uniformNames is not + the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of + uniformIndices. + + + If an error occurs, nothing is written to uniformIndices. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. + + + Notes + + glGetUniformIndices is available only if the GL version is 3.1 or greater. + + + See Also + + glGetActiveUniform, + glGetActiveUniformName, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetUniformLocation.xml b/upstream-man-pages/man4/glGetUniformLocation.xml new file mode 100644 index 0000000..c1f7598 --- /dev/null +++ b/upstream-man-pages/man4/glGetUniformLocation.xml @@ -0,0 +1,126 @@ + + + + + glGetUniformLocation + 3G + + + glGetUniformLocation + Returns the location of a uniform variable + + C Specification + + + GLint glGetUniformLocation + GLuint program + const GLchar *name + + + + Parameters + + + program + + Specifies the program object to be + queried. + + + + name + + Points to a null terminated string containing + the name of the uniform variable whose location is + to be queried. + + + + + Description + glGetUniformLocation returns an + integer that represents the location of a specific uniform + variable within a program object. name + must be a null terminated string that contains no white space. + name must be an active uniform variable + name in program that is not a structure, + an array of structures, or a subcomponent of a vector or a + matrix. This function returns -1 if name + does not correspond to an active uniform variable in + program, if name + starts with the reserved prefix "gl_", or if + name is associated with an atomic counter or + a named uniform block. + + Uniform variables that are structures or arrays of + structures may be queried by calling + glGetUniformLocation for each field within + the structure. The array element operator "[]" and the + structure field operator "." may be used in + name in order to select elements within + an array or fields within a structure. The result of using these + operators is not allowed to be another structure, an array of + structures, or a subcomponent of a vector or a matrix. Except if + the last part of name indicates a uniform + variable array, the location of the first element of an array + can be retrieved by using the name of the array, or by using the + name appended by "[0]". + + The actual locations assigned to uniform variables are not + known until the program object is linked successfully. After + linking has occurred, the command + glGetUniformLocation can be used to obtain + the location of a uniform variable. This location value can then + be passed to + glUniform + to set the value of the uniform variable or to + glGetUniform + in order to query the current value of the uniform variable. + After a program object has been linked successfully, the index + values for uniform variables remain fixed until the next link + command occurs. Uniform variable locations and values can only + be queried after a link if the link was successful. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program has not been successfully + linked. + + + Associated Gets + glGetActiveUniform + with arguments program and the index of + an active uniform variable + + glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH + + glGetUniform + with arguments program and the name of a + uniform variable + glIsProgram + + See Also + glLinkProgram, + glUniform + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetUniformSubroutine.xml b/upstream-man-pages/man4/glGetUniformSubroutine.xml new file mode 100644 index 0000000..b9fed15 --- /dev/null +++ b/upstream-man-pages/man4/glGetUniformSubroutine.xml @@ -0,0 +1,101 @@ + + + + + + + 2010 + Khronos Group. + + + glGetUniformSubroutine + 3G + + + glGetUniformSubroutine + retrieve the value of a subroutine uniform of a given shader stage of the current program + + C Specification + + + void glGetUniformSubroutineuiv + GLenum shadertype + GLint location + GLuint *values + + + + + Parameters + + + shadertype + + + Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + location + + + Specifies the location of the subroutine uniform. + + + + + values + + + Specifies the address of a variable to receive the value or values of the subroutine uniform. + + + + + + Description + + glGetUniformSubroutine retrieves the value of the subroutine uniform at location + location for shader stage shadertype of the current + program. location must be less than the value of + GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader currently in use at + shader stage shadertype. The value of the subroutine uniform is returned in + values. + + + Errors + + GL_INVALID_ENUM is generated if shadertype is not one of the accepted values. + + + GL_INVALID_VALUE is generated if location is greater than or equal to + the value of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader currently in use at + shader stage shadertype. + + + GL_INVALID_OPERATION is generated if no program is active. + + + See Also + + glGetProgram, + glGetActiveSubroutineUniform, + glGetActiveSubroutineUniformName, + glGetUniformLocation + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetVertexAttrib.xml b/upstream-man-pages/man4/glGetVertexAttrib.xml new file mode 100644 index 0000000..8f11fd3 --- /dev/null +++ b/upstream-man-pages/man4/glGetVertexAttrib.xml @@ -0,0 +1,295 @@ + + + + + glGetVertexAttrib + 3G + + + glGetVertexAttrib + glGetVertexAttribdv + glGetVertexAttribfv + glGetVertexAttribiv + glGetVertexAttribIiv + glGetVertexAttribIuiv + glGetVertexAttribLdv + Return a generic vertex attribute parameter + + C Specification + + + void glGetVertexAttribdv + GLuint index + GLenum pname + GLdouble *params + + + void glGetVertexAttribfv + GLuint index + GLenum pname + GLfloat *params + + + void glGetVertexAttribiv + GLuint index + GLenum pname + GLint *params + + + void glGetVertexAttribIiv + GLuint index + GLenum pname + GLint *params + + + void glGetVertexAttribIuiv + GLuint index + GLenum pname + GLuint *params + + + void glGetVertexAttribLdv + GLuint index + GLenum pname + GLdouble *params + + + + Parameters + + + index + + Specifies the generic vertex attribute + parameter to be queried. + + + + pname + + Specifies the symbolic name of the vertex + attribute parameter to be queried. Accepted values are + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR, or + GL_CURRENT_VERTEX_ATTRIB. + + + + params + + Returns the requested data. + + + + + Description + glGetVertexAttrib returns in + params the value of a generic vertex + attribute parameter. The generic vertex attribute to be queried + is specified by index, and the parameter + to be queried is specified by pname. + + The accepted parameter names are as follows: + + + + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING + + + + params returns a + single value, the name of the buffer object currently bound to + the binding point corresponding to generic vertex attribute array + index. If no buffer object is bound, + 0 is returned. The initial value is 0. + + + + + GL_VERTEX_ATTRIB_ARRAY_ENABLED + + + + params returns a + single value that is non-zero (true) if the vertex + attribute array for index is + enabled and 0 (false) if it is disabled. The initial + value is GL_FALSE. + + + + + GL_VERTEX_ATTRIB_ARRAY_SIZE + + + + params returns a + single value, the size of the vertex attribute array + for index. The size is the + number of values for each element of the vertex + attribute array, and it will be 1, 2, 3, or 4. The + initial value is 4. + + + + + GL_VERTEX_ATTRIB_ARRAY_STRIDE + + + + params returns a + single value, the array stride for (number of bytes + between successive elements in) the vertex attribute + array for index. A value of 0 + indicates that the array elements are stored + sequentially in memory. The initial value is 0. + + + + + GL_VERTEX_ATTRIB_ARRAY_TYPE + + + + params returns a + single value, a symbolic constant indicating the + array type for the vertex attribute array for + index. Possible values are + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, and + GL_DOUBLE. The initial value is + GL_FLOAT. + + + + + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED + + + + params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index are normalized when + they are converted to floating point, and 0 (false) + otherwise. The initial value is + GL_FALSE. + + + + + GL_VERTEX_ATTRIB_ARRAY_INTEGER + + + + params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index have integer data types, and 0 (false) + otherwise. The initial value is + 0 (GL_FALSE). + + + + + GL_VERTEX_ATTRIB_ARRAY_DIVISOR + + + + params returns a + single value that is the frequency divisor used for instanced + rendering. See glVertexAttribDivisor. + The initial value is 0. + + + + + GL_CURRENT_VERTEX_ATTRIB + + + + params returns four + values that represent the current value for the + generic vertex attribute specified by index. Generic + vertex attribute 0 is unique in that it has no + current state, so an error will be generated if + index is 0. The initial value + for all other generic vertex attributes is + (0,0,0,1). + + glGetVertexAttribdv and glGetVertexAttribfv + return the current attribute values as four single-precision floating-point values; + glGetVertexAttribiv reads them as floating-point values and + converts them to four integer values; glGetVertexAttribIiv and + glGetVertexAttribIuiv read and return them as signed or unsigned + integer values, respectively; glGetVertexAttribLdv reads and returns + them as four double-precision floating-point values. + + + + + + All of the parameters except GL_CURRENT_VERTEX_ATTRIB + represent state stored in the currently bound vertex array object. + + + Notes + If an error is generated, no change is made to the + contents of params. + + Errors + GL_INVALID_OPERATION is generated if pname + is not GL_CURRENT_VERTEX_ATTRIB and there is no + currently bound vertex array object. + + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM is generated if + pname is not an accepted value. + + GL_INVALID_OPERATION is generated if + index is 0 and + pname is + GL_CURRENT_VERTEX_ATTRIB. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + glBindAttribLocation, + glBindBuffer, + glDisableVertexAttribArray, + glEnableVertexAttribArray, + glVertexAttrib, + glVertexAttribDivisor, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glGetVertexAttribPointerv.xml b/upstream-man-pages/man4/glGetVertexAttribPointerv.xml new file mode 100644 index 0000000..1ffb1af --- /dev/null +++ b/upstream-man-pages/man4/glGetVertexAttribPointerv.xml @@ -0,0 +1,93 @@ + + + + + glGetVertexAttribPointerv + 3G + + + glGetVertexAttribPointerv + return the address of the specified generic vertex attribute pointer + + C Specification + + + void glGetVertexAttribPointerv + GLuint index + GLenum pname + GLvoid **pointer + + + + Parameters + + + index + + Specifies the generic vertex attribute + parameter to be returned. + + + + pname + + Specifies the symbolic name of the generic + vertex attribute parameter to be returned. Must be + GL_VERTEX_ATTRIB_ARRAY_POINTER. + + + + pointer + + Returns the pointer value. + + + + + Description + glGetVertexAttribPointerv returns + pointer information. index is the generic + vertex attribute to be queried, pname is + a symbolic constant indicating the pointer to be returned, and + params is a pointer to a location in + which to place the returned data. + + The pointer returned is a byte offset into the data store of the buffer object + that was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously specified. + + + Notes + The state returned is retrieved from the currently bound vertex array object. + The initial value for each pointer is 0. + + Errors + GL_INVALID_OPERATION is generated if no vertex array object is currently bound. + + GL_INVALID_VALUE + is generated if index + is greater than or equal to GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM + is generated if pname + is not an accepted value. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + See Also + glGetVertexAttrib, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glHint.xml b/upstream-man-pages/man4/glHint.xml new file mode 100644 index 0000000..1e50960 --- /dev/null +++ b/upstream-man-pages/man4/glHint.xml @@ -0,0 +1,183 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glHint + 3G + + + glHint + specify implementation-specific hints + + C Specification + + + void glHint + GLenum target + GLenum mode + + + + Parameters + + + target + + + Specifies a symbolic constant indicating the behavior to be controlled. + GL_LINE_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT, + GL_TEXTURE_COMPRESSION_HINT, and + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + are accepted. + + + + + mode + + + Specifies a symbolic constant indicating the desired behavior. + GL_FASTEST, + GL_NICEST, and + GL_DONT_CARE are accepted. + + + + + + Description + + Certain aspects of GL behavior, + when there is room for interpretation, + can be controlled with hints. + A hint is specified with two arguments. + target is a symbolic + constant indicating the behavior to be controlled, + and mode is another symbolic constant indicating the desired + behavior. The initial value for each target is GL_DONT_CARE. + mode can be one of the following: + + + + GL_FASTEST + + + + + The most efficient option should be chosen. + + + + + GL_NICEST + + + + + The most correct, + or highest quality, + option should be chosen. + + + + + GL_DONT_CARE + + + + + No preference. + + + + + + Though the implementation aspects that can be hinted are well defined, + the interpretation of the hints depends on the implementation. + The hint aspects that can be specified with target, + along with suggested semantics, + are as follows: + + + + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + + + + + Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: + dFdx, dFdy, and fwidth. + + + + + GL_LINE_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased lines. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. + + + + + GL_POLYGON_SMOOTH_HINT + + + + + Indicates the sampling quality of antialiased polygons. + Hinting GL_NICEST can result in more pixel fragments being generated + during rasterization, + if a larger filter function is applied. + + + + + GL_TEXTURE_COMPRESSION_HINT + + + + + Indicates the quality and performance of the compressing texture images. + Hinting GL_FASTEST indicates that texture images should be compressed + as quickly as possible, while GL_NICEST indicates that texture images + should be compressed with as little image quality loss as possible. + GL_NICEST should be selected if the texture is to be retrieved by + glGetCompressedTexImage for reuse. + + + + + + Notes + + The interpretation of hints depends on the implementation. + Some implementations ignore glHint settings. + + + Errors + + GL_INVALID_ENUM is generated if either target or mode is not + an accepted value. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glInvalidateBufferData.xml b/upstream-man-pages/man4/glInvalidateBufferData.xml new file mode 100644 index 0000000..3f1738f --- /dev/null +++ b/upstream-man-pages/man4/glInvalidateBufferData.xml @@ -0,0 +1,78 @@ + + + + + + + 2012 + Khronos Group + + + glInvalidateBufferData + 3G + + + glInvalidateBufferData + invalidate the content of a buffer object's data store + + C Specification + + + void glInvalidateBufferData + GLuint buffer + + + + Parameters + + + buffer + + + The name of a buffer object whose data store to invalidate. + + + + + + Description + + glInvalidateBufferData invalidates all of the + content of the data store of a buffer object. After invalidation, the content + of the buffer's data store becomes undefined. + + + Errors + + GL_INVALID_VALUE is generated if buffer is not the + name of an existing buffer object. + + + GL_INVALID_OPERATION is generated if any part of buffer + is currently mapped. + + + Associated Gets + + glGetBufferParameter with argument GL_BUFFER_SIZE + + + See Also + + glInvalidateTexSubImage,, + glInvalidateTexImage, + glInvalidateBufferSubData, + glInvalidateFramebuffer, + glInvalidateSubFramebuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glInvalidateBufferSubData.xml b/upstream-man-pages/man4/glInvalidateBufferSubData.xml new file mode 100644 index 0000000..5e4cd3a --- /dev/null +++ b/upstream-man-pages/man4/glInvalidateBufferSubData.xml @@ -0,0 +1,104 @@ + + + + + + + 2012 + Khronos Group + + + glInvalidateBufferSubData + 3G + + + glInvalidateBufferSubData + invalidate a region of a buffer object's data store + + C Specification + + + void glInvalidateBufferSubData + GLuint buffer + GLintptr offset + GLsizeiptr length + + + + Parameters + + + buffer + + + The name of a buffer object, a subrange of whose data store to invalidate. + + + + + offset + + + The offset within the buffer's data store of the start of the range to be invalidated. + + + + + length + + + The length of the range within the buffer's data store to be invalidated. + + + + + + Description + + glInvalidateBufferSubData invalidates all or part of the + content of the data store of a buffer object. After invalidation, the content + of the specified range of the buffer's data store becomes undefined. The + start of the range is given by offset and its size + is given by length, both measured in basic machine units. + + + Errors + + GL_INVALID_VALUE is generated if offset or + length is negative, or if offset + + length is greater than the value of GL_BUFFER_SIZE + for buffer. + + + GL_INVALID_VALUE is generated if buffer is not the + name of an existing buffer object. + + + GL_INVALID_OPERATION is generated if any part of buffer + is currently mapped. + + + Associated Gets + + glGetBufferParameter with argument GL_BUFFER_SIZE + + + See Also + + glInvalidateTexSubImage,, + glInvalidateTexImage, + glInvalidateBufferData, + glInvalidateFramebuffer, + glInvalidateSubFramebuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glInvalidateFramebuffer.xml b/upstream-man-pages/man4/glInvalidateFramebuffer.xml new file mode 100644 index 0000000..c365ae2 --- /dev/null +++ b/upstream-man-pages/man4/glInvalidateFramebuffer.xml @@ -0,0 +1,123 @@ + + + + + + + 2012 + Khronos Group + + + glInvalidateFramebuffer + 3G + + + glInvalidateFramebuffer + invalidate the content some or all of a framebuffer object's attachments + + C Specification + + + void glInvalidateFramebuffer + GLenum target + GLsizei numAttachments + const GLenum * attachments + + + + Parameters + + + target + + + The target to which the framebuffer is attached. target must be + GL_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER, or GL_READ_FRAMEBUFFER. + + + + + numAttachments + + + The number of entries in the attachments array. + + + + + attachments + + + The address of an array identifying the attachments to be invalidated. + + + + + + Description + + glInvalidateFramebuffer invalidates the content + of a specified set of attachments of a framebuffer. The framebuffer + whose content to invalidate is indicated by setting target + to the target to which it is bound. target may be + GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or + GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER + is treated as if it were GL_DRAW_FRAMEBUFFER. + + + The set of attachments whose content to invalidate are specified in an array whose address is given + by attachments and which contains numAttachments + elements. The elements of attachments must be + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT + GL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, + where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + Furthermore, if the default framebuffer is bound to target, then + attachments may contain GL_FRONT_LEFT, + GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, + GL_AUXi, GL_ACCUM, + GL_COLOR, GL_DEPTH, or GL_STENCIL, identifying that specific buffer. + GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and + GL_FRONT_LEFT for a single-buffered context. + After glInvalidateFramebuffer is executed, the contents + of the specified attachments become undefined. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the + accepted framebuffer target tokens. + + + GL_INVALID_ENUM is generated if any element of attachments is + not one of the accepted framebuffer attachment tokens. + + + GL_INVALID_OPERATION is generated if element of attachments is + GL_COLOR_ATTACHMENTi where i is greater than or equal + to the value of GL_MAX_COLOR_ATTACHMENTS. + + + Associated Gets + + glGet with argument GL_MAX_COLOR_ATTACHMENTS + + + See Also + + glInvalidateTexSubImage, + glInvalidateTexImage, + glInvalidateBufferSubData, + glInvalidateBufferData, + glInvalidateSubFramebuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glInvalidateSubFramebuffer.xml b/upstream-man-pages/man4/glInvalidateSubFramebuffer.xml new file mode 100644 index 0000000..06e343d --- /dev/null +++ b/upstream-man-pages/man4/glInvalidateSubFramebuffer.xml @@ -0,0 +1,169 @@ + + + + + + + 2012 + Khronos Group + + + glInvalidateSubFramebuffer + 3G + + + glInvalidateSubFramebuffer + invalidate the content of a region of some or all of a framebuffer object's attachments + + C Specification + + + void glInvalidateSubFramebuffer + GLenum target + GLsizei numAttachments + const GLenum * attachments + GLint x + GLint y + GLint width + GLint height + + + + Parameters + + + target + + + The target to which the framebuffer is attached. target must be + GL_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER, or GL_READ_FRAMEBUFFER. + + + + + numAttachments + + + The number of entries in the attachments array. + + + + + attachments + + + The address of an array identifying the attachments to be invalidated. + + + + + x + + + The X offset of the region to be invalidated. + + + + + y + + + The Y offset of the region to be invalidated. + + + + + width + + + The width of the region to be invalidated. + + + + + height + + + The height of the region to be invalidated. + + + + + + Description + + glInvalidateSubFramebuffer invalidates the content of a region + of a specified set of attachments of a framebuffer. The framebuffer + whose content to invalidate is indicated by setting target + to the target to which it is bound. target may be + GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or + GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER + is treated as if it were GL_DRAW_FRAMEBUFFER. + + + A region within a subset of the framebuffer's attachments may be invalidated. + This set of attachments are specified in an array whose address is given + by attachments and which contains numAttachments + elements. The elements of attachments must be + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT + GL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, + where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + Furthermore, if the default framebuffer is bound to target, then + attachments may contain GL_FRONT_LEFT, + GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, + GL_AUXi, GL_ACCUM, + GL_COLOR, GL_DEPTH, or GL_STENCIL, identifying that specific buffer. + GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and + GL_FRONT_LEFT for a single-buffered context. + + + The region of the framebuffer attachments to be invalidated is specified + by x, y, width and height + where x and y give the offset from the origin (with + lower-left corner at (0, 0)) and width and height + give the size. Any pixels lying outside of the window allocated + to the current GL context, or outside of the attachments of the currently + bound framebuffer object, are ignored. + After glInvalidateFramebuffer is executed, the contents + of the specified region of the specified attachments become undefined. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the + accepted framebuffer target tokens. + + + GL_INVALID_ENUM is generated if any element of attachments is + not one of the accepted framebuffer attachment tokens. + + + GL_INVALID_OPERATION is generated if element of attachments is + GL_COLOR_ATTACHMENTi where i is greater than or equal + to the value of GL_MAX_COLOR_ATTACHMENTS. + + + Associated Gets + + glGet with argument GL_MAX_COLOR_ATTACHMENTS + + + See Also + + glInvalidateTexSubImage, + glInvalidateTexImage, + glInvalidateBufferSubData, + glInvalidateBufferData, + glInvalidateFramebuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glInvalidateTexImage.xml b/upstream-man-pages/man4/glInvalidateTexImage.xml new file mode 100644 index 0000000..3959b25 --- /dev/null +++ b/upstream-man-pages/man4/glInvalidateTexImage.xml @@ -0,0 +1,101 @@ + + + + + + + 2012 + Khronos Group + + + glInvalidateTexImage + 3G + + + glInvalidateTexImage + invalidate the entirety a texture image + + C Specification + + + void glInvalidateTexImage + GLuint texture + GLint level + + + + Parameters + + + texture + + + The name of a texture object to invalidate. + + + + + level + + + The level of detail of the texture object to invalidate. + + + + + + Description + + glInvalidateTexSubImage invalidates all of + a texture image. texture and level indicated + which texture image is being invalidated. After this command, data in the texture image has undefined + values. + + + level must be greater than or equal to zero and be + less than the base 2 logarithm of the maximum texture width, height, or depth. + + + For textures of targets GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, level must be zero. + + + Errors + + GL_INVALID_VALUE is generated if level is + less than zero or if it is greater or equal to the base 2 logarithm of the maximum texture width, height, or depth. + + + GL_INVALID_VALUE is generated if the target of texture + is any of GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY and level is not zero. + + + GL_INVALID_VALUE is generated if texture is not the + name of an existing texture object. + + + Associated Gets + + glGet with argument GL_MAX_TEXTURE_SIZE + + + See Also + + glInvalidateTexSubImage,, + glInvalidateBufferSubData, + glInvalidateBufferData, + glInvalidateFramebuffer, + glInvalidateSubFramebuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glInvalidateTexSubImage.xml b/upstream-man-pages/man4/glInvalidateTexSubImage.xml new file mode 100644 index 0000000..0b4fe02 --- /dev/null +++ b/upstream-man-pages/man4/glInvalidateTexSubImage.xml @@ -0,0 +1,173 @@ + + + + + + + 2012 + Khronos Group + + + glInvalidateTexSubImage + 3G + + + glInvalidateTexSubImage + invalidate a region of a texture image + + C Specification + + + void glInvalidateTexSubImage + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + + + + Parameters + + + texture + + + The name of a texture object a subregion of which to invalidate. + + + + + level + + + The level of detail of the texture object within which the region resides. + + + + + xoffset + + + The X offset of the region to be invalidated. + + + + + yoffset + + + The Y offset of the region to be invalidated. + + + + + zoffset + + + The Z offset of the region to be invalidated. + + + + + width + + + The width of the region to be invalidated. + + + + + height + + + The height of the region to be invalidated. + + + + + depth + + + The depth of the region to be invalidated. + + + + + + Description + + glInvalidateTexSubImage invalidates all or part of + a texture image. texture and level indicated + which texture image is being invalidated. After this command, data in that subregion have undefined + values. xoffset, yoffset, zoffset, width, height, and depth + are interpreted as they are in glTexSubImage3D. For texture targets that + don't have certain dimensions, this command treats those dimensions as + having a size of 1. For example, to invalidate a portion of a two- + dimensional texture, the application would use zoffset equal to zero and + depth equal to one. Cube map textures are treated as an array of six + slices in the z-dimension, where a value of zoffset is interpreted as + specifying face TEXTURE_CUBE_MAP_POSITIVE_X + zoffset. + + + level must be greater than or equal to zero and be + less than the base 2 logarithm of the maximum texture width, height, or depth. + xoffset, yoffset and zoffset + must be greater than or equal to zero and be less than the width, height or depth + of the image, respectively. Furthermore, xoffset + width, + yoffset + height, and + zoffset + depth must be less + than or equal to the width, height or depth of the image, respectively. + + + For textures of targets GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, level must be zero. + + + Errors + + GL_INVALID_VALUE is generated if xoffset, + yoffset or zoffset is less than zero, + or if any of them is greater than the size of the image in the corresponding dimension. + + + GL_INVALID_VALUE is generated if level is + less than zero or if it is greater or equal to the base 2 logarithm of the maximum texture width, height, or depth. + + + GL_INVALID_VALUE is generated if the target of texture + is any of GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY and level is not zero. + + + GL_INVALID_VALUE is generated if texture is not the + name of an existing texture object. + + + Associated Gets + + glGet with argument GL_MAX_TEXTURE_SIZE + + + See Also + + glInvalidateTexImage,, + glInvalidateBufferSubData, + glInvalidateBufferData, + glInvalidateFramebuffer, + glInvalidateSubFramebuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsBuffer.xml b/upstream-man-pages/man4/glIsBuffer.xml new file mode 100644 index 0000000..29feffd --- /dev/null +++ b/upstream-man-pages/man4/glIsBuffer.xml @@ -0,0 +1,66 @@ + + + + + + + 2005 + Sams Publishing + + + glIsBuffer + 3G + + + glIsBuffer + determine if a name corresponds to a buffer object + + C Specification + + + GLboolean glIsBuffer + GLuint buffer + + + + Parameters + + + buffer + + + Specifies a value that may be the name of a buffer object. + + + + + + Description + + glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. + If buffer is zero, or is a non-zero value that is not currently the + name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. + + + A name returned by glGenBuffers, but not yet associated with a buffer object + by calling glBindBuffer, is not the name of a buffer object. + + + See Also + + glBindBuffer, + glDeleteBuffers, + glGenBuffers, + glGet + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsEnabled.xml b/upstream-man-pages/man4/glIsEnabled.xml new file mode 100644 index 0000000..1202388 --- /dev/null +++ b/upstream-man-pages/man4/glIsEnabled.xml @@ -0,0 +1,323 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsEnabled + 3G + + + glIsEnabled, glIsEnabledi + test whether a capability is enabled + + C Specification + + + GLboolean glIsEnabled + GLenum cap + + + + + GLboolean glIsEnabledi + GLenum cap + GLuint index + + + + Parameters + + + cap + + + Specifies a symbolic constant indicating a GL capability. + + + + + index + + + Specifies the index of the capability. + + + + + + Description + + glIsEnabled returns GL_TRUE if cap is an enabled capability + and returns GL_FALSE otherwise. Boolean states that are indexed may be tested with glIsEnabledi. + For glIsEnabledi, index specifies the index of the capability to test. index + must be between zero and the count of indexed capabilities for cap. + Initially all capabilities except GL_DITHER are disabled; + GL_DITHER is initially enabled. + + + The following capabilities are accepted for cap: + + + + + + + + + + + Constant + + + See + + + + + + + GL_BLEND + + + glBlendFunc, glLogicOp + + + + + GL_CLIP_DISTANCEi + + + glEnable + + + + + GL_COLOR_LOGIC_OP + + + glLogicOp + + + + + GL_CULL_FACE + + + glCullFace + + + + + GL_DEPTH_CLAMP + + + glEnable + + + + + GL_DEBUG_OUTPUT + + + glEnable + + + + + GL_DEBUG_OUTPUT_SYNCHRONOUS + + + glEnable + + + + + GL_DEPTH_TEST + + + glDepthFunc, glDepthRange + + + + + GL_DITHER + + + glEnable + + + + + GL_FRAMEBUFFER_SRGB + + + glEnable + + + + + GL_LINE_SMOOTH + + + glLineWidth + + + + + GL_MULTISAMPLE + + + glSampleCoverage + + + + + GL_POLYGON_SMOOTH + + + glPolygonMode + + + + + GL_POLYGON_OFFSET_FILL + + + glPolygonOffset + + + + + GL_POLYGON_OFFSET_LINE + + + glPolygonOffset + + + + + GL_POLYGON_OFFSET_POINT + + + glPolygonOffset + + + + + GL_PROGRAM_POINT_SIZE + + + glEnable + + + + + GL_PRIMITIVE_RESTART + + + glEnable, glPrimitiveRestartIndex + + + + + GL_SAMPLE_ALPHA_TO_COVERAGE + + + glSampleCoverage + + + + + GL_SAMPLE_ALPHA_TO_ONE + + + glSampleCoverage + + + + + GL_SAMPLE_COVERAGE + + + glSampleCoverage + + + + + GL_SAMPLE_MASK + + + glEnable + + + + + GL_SCISSOR_TEST + + + glScissor + + + + + GL_STENCIL_TEST + + + glStencilFunc, glStencilOp + + + + + GL_TEXTURE_CUBEMAP_SEAMLESS + + + glEnable + + + + + + + + + Notes + + If an error is generated, + glIsEnabled and glIsEnabledi return GL_FALSE. + + + GL_DEBUG_OUTPUT and GL_DEBUG_OUTPUT_SYNCHRONOUS are available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if cap is not an accepted value. + + + GL_INVALID_VALUE is generated by glIsEnabledi if index is outside the + valid range for the indexed state cap. + + + See Also + + glEnable, + glDisable, + glGet + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010-2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glIsFramebuffer.xml b/upstream-man-pages/man4/glIsFramebuffer.xml new file mode 100644 index 0000000..3f11e61 --- /dev/null +++ b/upstream-man-pages/man4/glIsFramebuffer.xml @@ -0,0 +1,64 @@ + + + + + + + 2010 + Khronos Group + + + glIsFramebuffer + 3G + + + glIsFramebuffer + determine if a name corresponds to a framebuffer object + + C Specification + + + GLboolean glIsFramebuffer + GLuint framebuffer + + + + Parameters + + + framebuffer + + + Specifies a value that may be the name of a framebuffer object. + + + + + + Description + + glIsFramebuffer returns GL_TRUE if framebuffer is currently the name of a framebuffer + object. If framebuffer is zero, or if framebuffer is not the name of a framebuffer object, or if an error + occurs, glIsFramebuffer returns GL_FALSE. If framebuffer is a name returned by + glGenFramebuffers, by that has not yet been bound through a call to + glBindFramebuffer, then the name is not a framebuffer object and glIsFramebuffer + returns GL_FALSE. + + + See Also + + glGenFramebuffers, + glBindFramebuffer, + glDeleteFramebuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsProgram.xml b/upstream-man-pages/man4/glIsProgram.xml new file mode 100644 index 0000000..cc0aca2 --- /dev/null +++ b/upstream-man-pages/man4/glIsProgram.xml @@ -0,0 +1,102 @@ + + + + + glIsProgram + 3G + + + glIsProgram + Determines if a name corresponds to a program object + + C Specification + + + GLboolean glIsProgram + GLuint program + + + + Parameters + + + program + + Specifies a potential program object. + + + + + Description + glIsProgram returns + GL_TRUE if program + is the name of a program object previously created with + glCreateProgram + and not yet deleted with glDeleteProgram. + If program is zero or a non-zero value that + is not the name of a program object, or if an error occurs, + glIsProgram returns GL_FALSE. + + Notes + No error is generated if program is + not a valid program object name. + + A program object marked for deletion with glDeleteProgram + but still in use as part of current rendering state is still considered + a program object and glIsProgram will return GL_TRUE. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with arguments program and the index of + an active attribute variable + + glGetActiveUniform + with arguments program and the index of + an active uniform variable + + glGetAttachedShaders + with argument program + + glGetAttribLocation + with arguments program and the name of an + attribute variable + + glGetProgram + with arguments program and the parameter + to be queried + + glGetProgramInfoLog + with argument program + + glGetUniform + with arguments program and the location + of a uniform variable + + glGetUniformLocation + with arguments program and the name of a + uniform variable + + See Also + glAttachShader, + glBindAttribLocation, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsProgramPipeline.xml b/upstream-man-pages/man4/glIsProgramPipeline.xml new file mode 100644 index 0000000..b728085 --- /dev/null +++ b/upstream-man-pages/man4/glIsProgramPipeline.xml @@ -0,0 +1,67 @@ + + + + + + + 2010 + Khronos Group + + + glIsProgramPipeline + 3G + + + glIsProgramPipeline + determine if a name corresponds to a program pipeline object + + C Specification + + + GLboolean glIsProgramPipeline + GLuint pipeline + + + + Parameters + + + pipeline + + + Specifies a value that may be the name of a program pipeline object. + + + + + + Description + + glIsProgramPipeline returns GL_TRUE if + pipeline is currently the name of a program pipeline object. + If pipeline is zero, or if pipeline is not the + name of a program pipeline object, or if an error occurs, glIsProgramPipeline + returns GL_FALSE. If pipeline is a name returned by + glGenProgramPipelines, but that + has not yet been bound through a call to glBindProgramPipeline, + then the name is not a program pipeline object and glIsProgramPipeline + returns GL_FALSE. + + + See Also + + glGenProgramPipelines, + glBindProgramPipeline, + glDeleteProgramPipeline + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsQuery.xml b/upstream-man-pages/man4/glIsQuery.xml new file mode 100644 index 0000000..35ce221 --- /dev/null +++ b/upstream-man-pages/man4/glIsQuery.xml @@ -0,0 +1,66 @@ + + + + + + + 2005 + Sams Publishing + + + glIsQuery + 3G + + + glIsQuery + determine if a name corresponds to a query object + + C Specification + + + GLboolean glIsQuery + GLuint id + + + + Parameters + + + id + + + Specifies a value that may be the name of a query object. + + + + + + Description + + glIsQuery returns GL_TRUE if id is currently the name of a query object. + If id is zero, or is a non-zero value that is not currently the + name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. + + + A name returned by glGenQueries, but not yet associated with a query object + by calling glBeginQuery, is not the name of a query object. + + + See Also + + glBeginQuery, + glDeleteQueries, + glEndQuery, + glGenQueries + + + Copyright + + Copyright 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsRenderbuffer.xml b/upstream-man-pages/man4/glIsRenderbuffer.xml new file mode 100644 index 0000000..16436dc --- /dev/null +++ b/upstream-man-pages/man4/glIsRenderbuffer.xml @@ -0,0 +1,65 @@ + + + + + + + 2010 + Khronos Group + + + glIsRenderbuffer + 3G + + + glIsRenderbuffer + determine if a name corresponds to a renderbuffer object + + C Specification + + + GLboolean glIsRenderbuffer + GLuint renderbuffer + + + + Parameters + + + renderbuffer + + + Specifies a value that may be the name of a renderbuffer object. + + + + + + Description + + glIsRenderbuffer returns GL_TRUE if renderbuffer is currently the name of a renderbuffer + object. If renderbuffer is zero, or if renderbuffer is not the name of a renderbuffer object, or if an error + occurs, glIsRenderbuffer returns GL_FALSE. If renderbuffer is a name returned by + glGenRenderbuffers, by that has not yet been bound through a call to + glBindRenderbuffer or glFramebufferRenderbuffer, + then the name is not a renderbuffer object and glIsRenderbuffer returns GL_FALSE. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsSampler.xml b/upstream-man-pages/man4/glIsSampler.xml new file mode 100644 index 0000000..71224db --- /dev/null +++ b/upstream-man-pages/man4/glIsSampler.xml @@ -0,0 +1,69 @@ + + + + + + + 2010 + Khronos Group + + + glIsSampler + 3G + + + glIsSampler + determine if a name corresponds to a sampler object + + C Specification + + + GLboolean glIsSampler + GLuint id + + + + Parameters + + + id + + + Specifies a value that may be the name of a sampler object. + + + + + + Description + + glIsSampler returns GL_TRUE if id is currently the name of a sampler object. + If id is zero, or is a non-zero value that is not currently the + name of a sampler object, or if an error occurs, glIsSampler returns GL_FALSE. + + + A name returned by glGenSamplers, is the name of a sampler object. + + + Notes + + glIsSampler is available only if the GL version is 3.3 or higher. + + + See Also + + glGenSamplers, + glBindSampler, + glDeleteSamplers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsShader.xml b/upstream-man-pages/man4/glIsShader.xml new file mode 100644 index 0000000..1210149 --- /dev/null +++ b/upstream-man-pages/man4/glIsShader.xml @@ -0,0 +1,81 @@ + + + + + glIsShader + 3G + + + glIsShader + Determines if a name corresponds to a shader object + + C Specification + + + GLboolean glIsShader + GLuint shader + + + + Parameters + + + shader + + Specifies a potential shader object. + + + + + Description + glIsShader returns + GL_TRUE if shader is + the name of a shader object previously created with + glCreateShader + and not yet deleted with glDeleteShader. + If shader is + zero or a non-zero value that is not the name of a shader + object, or if an error occurs, glIsShader returns + GL_FALSE. + + Notes + No error is generated if shader is + not a valid shader object name. + + A shader object marked for deletion with glDeleteShader + but still attached to a program object is still considered + a shader object and glIsShader will return GL_TRUE. + + Associated Gets + glGetAttachedShaders + with a valid program object + + glGetShader + with arguments shader and a parameter to + be queried + + glGetShaderInfoLog + with argument object + + glGetShaderSource + with argument object + + See Also + glAttachShader, + glCompileShader, + glCreateShader, + glDeleteShader, + glDetachShader, + glLinkProgram, + glShaderSource + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsSync.xml b/upstream-man-pages/man4/glIsSync.xml new file mode 100644 index 0000000..be201db --- /dev/null +++ b/upstream-man-pages/man4/glIsSync.xml @@ -0,0 +1,67 @@ + + + + + + + 2010 + Khronos Group + + + glIsSync + 3G + + + glIsSync + determine if a name corresponds to a sync object + + C Specification + + + GLboolean glIsSync + GLsync sync + + + + Parameters + + + sync + + + Specifies a value that may be the name of a sync object. + + + + + + Description + + glIsSync returns GL_TRUE if sync is currently the name of a sync object. + If sync is not the name of a sync object, or if an error occurs, glIsSync returns + GL_FALSE. Note that zero is not the name of a sync object. + + + Notes + + glIsSync is available only if the GL version is 3.2 or greater. + + + See Also + + glFenceSync, + glWaitSync, + glClientWaitSync, + glDeleteSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsTexture.xml b/upstream-man-pages/man4/glIsTexture.xml new file mode 100644 index 0000000..1e31dd5 --- /dev/null +++ b/upstream-man-pages/man4/glIsTexture.xml @@ -0,0 +1,73 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glIsTexture + 3G + + + glIsTexture + determine if a name corresponds to a texture + + C Specification + + + GLboolean glIsTexture + GLuint texture + + + + Parameters + + + texture + + + Specifies a value that may be the name of a texture. + + + + + + Description + + glIsTexture returns GL_TRUE if texture is currently the name of a texture. + If texture is zero, or is a non-zero value that is not currently the + name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. + + + A name returned by glGenTextures, but not yet associated with a texture + by calling glBindTexture, is not the name of a texture. + + + See Also + + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glDeleteTextures, + glGenTextures, + glGet, + glGetTexParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glIsTransformFeedback.xml b/upstream-man-pages/man4/glIsTransformFeedback.xml new file mode 100644 index 0000000..9c1e39e --- /dev/null +++ b/upstream-man-pages/man4/glIsTransformFeedback.xml @@ -0,0 +1,64 @@ + + + + + + + 2010 + Khronos Group + + + glIsTransformFeedback + 3G + + + glIsTransformFeedback + determine if a name corresponds to a transform feedback object + + C Specification + + + GLboolean glIsTransformFeedback + GLuint id + + + + Parameters + + + id + + + Specifies a value that may be the name of a transform feedback object. + + + + + + Description + + glIsTransformFeedback returns GL_TRUE if id is currently the name of a transform feedback + object. If id is zero, or if id is not the name of a transform feedback object, or if an error + occurs, glIsTransformFeedback returns GL_FALSE. If id is a name returned by + glGenTransformFeedbacks, but that has not yet been bound through a call to + glBindTransformFeedback, then the name is not a transform feedback object and glIsTransformFeedback + returns GL_FALSE. + + + See Also + + glGenTransformFeedbacks, + glBindTransformFeedback, + glDeleteTransformFeedbacks + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glIsVertexArray.xml b/upstream-man-pages/man4/glIsVertexArray.xml new file mode 100644 index 0000000..c4c2020 --- /dev/null +++ b/upstream-man-pages/man4/glIsVertexArray.xml @@ -0,0 +1,64 @@ + + + + + + + 2010 + Khronos Group + + + glIsVertexArray + 3G + + + glIsVertexArray + determine if a name corresponds to a vertex array object + + C Specification + + + GLboolean glIsVertexArray + GLuint array + + + + Parameters + + + array + + + Specifies a value that may be the name of a vertex array object. + + + + + + Description + + glIsVertexArray returns GL_TRUE if array is currently the name of a renderbuffer + object. If renderbuffer is zero, or if array is not the name of a renderbuffer object, or if an error + occurs, glIsVertexArray returns GL_FALSE. If array is a name returned by + glGenVertexArrays, by that has not yet been bound through a call to + glBindVertexArray, then the name is not a vertex array object and + glIsVertexArray returns GL_FALSE. + + + See Also + + glGenVertexArrays, + glBindVertexArray, + glDeleteVertexArrays + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glLineWidth.xml b/upstream-man-pages/man4/glLineWidth.xml new file mode 100644 index 0000000..e9dbd2e --- /dev/null +++ b/upstream-man-pages/man4/glLineWidth.xml @@ -0,0 +1,154 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLineWidth + 3G + + + glLineWidth + specify the width of rasterized lines + + C Specification + + + void glLineWidth + GLfloat width + + + + + Parameters + + + width + + + Specifies the width of rasterized lines. + The initial value is 1. + + + + + + Description + + glLineWidth specifies the rasterized width of both aliased and antialiased + lines. + Using a line width other than 1 has different effects, + depending on whether line antialiasing is enabled. + To enable and disable line antialiasing, call + glEnable and glDisable + with argument GL_LINE_SMOOTH. Line antialiasing is initially + disabled. + + + If line antialiasing is disabled, + the actual width is determined by rounding the supplied width + to the nearest integer. + (If the rounding results in the value 0, + it is as if the line width were 1.) + If + + + + + + Δ + x + + + >= + + + Δ + y + + + + , + i pixels are filled in each column that is rasterized, + where i is the rounded value of width. + Otherwise, + i pixels are filled in each row that is rasterized. + + + If antialiasing is enabled, + line rasterization produces a fragment for each pixel square + that intersects the region lying within the rectangle having width + equal to the current line width, + length equal to the actual length of the line, + and centered on the mathematical line segment. + The coverage value for each fragment is the window coordinate area + of the intersection of the rectangular region with the corresponding + pixel square. + This value is saved and used in the final rasterization step. + + + Not all widths can be supported when line antialiasing is enabled. If an + unsupported width is requested, the nearest supported width is used. + Only width 1 is guaranteed to be supported; others depend on the + implementation. Likewise, there is a range for aliased line widths as well. + To query the range of supported widths and the size + difference between supported widths within the range, call glGet + with arguments GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. + + + Notes + + The line width specified by glLineWidth is always returned when GL_LINE_WIDTH + is queried. + Clamping and rounding for aliased and antialiased lines have no effect on the specified value. + + + Nonantialiased line width may be clamped to an implementation-dependent maximum. Call glGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the maximum width. + + + In OpenGL 1.2, the tokens GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY were replaced by GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. The old names are retained for backward compatibility, but should not be used in new code. + + + Errors + + GL_INVALID_VALUE is generated if width is less than or equal to 0. + + + Associated Gets + + glGet with argument GL_LINE_WIDTH + + + glGet with argument GL_ALIASED_LINE_WIDTH_RANGE + + + glGet with argument GL_SMOOTH_LINE_WIDTH_RANGE + + + glGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY + + + glIsEnabled with argument GL_LINE_SMOOTH + + + See Also + + glEnable + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glLinkProgram.xml b/upstream-man-pages/man4/glLinkProgram.xml new file mode 100644 index 0000000..67330ca --- /dev/null +++ b/upstream-man-pages/man4/glLinkProgram.xml @@ -0,0 +1,276 @@ + + + + + glLinkProgram + 3G + + + glLinkProgram + Links a program object + + C Specification + + + void glLinkProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object to be linked. + + + + + + Description + glLinkProgram links the program + object specified by program. If any + shader objects of type GL_VERTEX_SHADER are + attached to program, they will be used to + create an executable that will run on the programmable vertex + processor. If any shader objects of type GL_GEOMETRY_SHADER + are attached to program, they will be used to create + an executable that will run on the programmable geometry processor. + If any shader objects of type + GL_FRAGMENT_SHADER are attached to + program, they will be used to create an + executable that will run on the programmable fragment + processor. + + The status of the link operation will be stored as part of + the program object's state. This value will be set to + GL_TRUE if the program object was linked + without errors and is ready for use, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_LINK_STATUS. + + As a result of a successful link operation, all active + user-defined uniform variables belonging to + program will be initialized to 0, and + each of the program object's active uniform variables will be + assigned a location that can be queried by calling + glGetUniformLocation. + Also, any active user-defined attribute variables that have not + been bound to a generic vertex attribute index will be bound to + one at this time. + + Linking of a program object can fail for a number of + reasons as specified in the OpenGL Shading Language + Specification. The following lists some of the + conditions that will cause a link error. + + + + The number of active attribute variables supported + by the implementation has been exceeded. + + + The storage limit for uniform variables has been + exceeded. + + + The number of active uniform variables supported + by the implementation has been exceeded. + + + The main function is missing + for the vertex, geometry or fragment shader. + + + A varying variable actually used in the fragment + shader is not declared in the same way (or is not + declared at all) in the vertex shader, or geometry shader shader if present. + + + A reference to a function or variable name is + unresolved. + + + A shared global is declared with two different + types or two different initial values. + + + One or more of the attached shader objects has not + been successfully compiled. + + + Binding a generic attribute matrix caused some + rows of the matrix to fall outside the allowed maximum + of GL_MAX_VERTEX_ATTRIBS. + + + Not enough contiguous vertex attribute slots could + be found to bind attribute matrices. + + + The program object contains objects to form a fragment shader but + does not contain objects to form a vertex shader. + + + The program object contains objects to form a geometry shader + but does not contain objects to form a vertex shader. + + + The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is not specified in any compiled geometry shader + object. + + + The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is specified differently in multiple geometry shader + objects. + + + The number of active outputs in the fragment shader is greater + than the value of GL_MAX_DRAW_BUFFERS. + + + The program has an active output assigned to a location greater + than or equal to the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS + and has an active output assigned an index greater than or equal to one. + + + More than one varying out variable is bound to the same number and index. + + + The explicit binding assigments do not leave enough space for the linker + to automatically assign a location for a varying out array, which requires + multiple contiguous locations. + + + The count specified by glTransformFeedbackVaryings + is non-zero, but the program object has no vertex or geometry shader. + + + Any variable name specified to glTransformFeedbackVaryings + in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active). + + + Any two entries in the varyings array given + glTransformFeedbackVaryings + specify the same varying variable. + + + The total number of components to capture in any transform feedback varying variable + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is SEPARATE_ATTRIBS. + + + + When a program object has been successfully linked, the + program object can be made part of current state by calling + glUseProgram. + Whether or not the link operation was successful, the program + object's information log will be overwritten. The information + log can be retrieved by calling + glGetProgramInfoLog. + + glLinkProgram will also install the + generated executables as part of the current rendering state if + the link operation was successful and the specified program + object is already currently in use as a result of a previous + call to + glUseProgram. + If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE , but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked. + + If program contains shader objects + of type GL_VERTEX_SHADER, and optionally of type GL_GEOMETRY_SHADER, + but does not contain shader objects of type + GL_FRAGMENT_SHADER, the vertex shader executable will + be installed on the programmable vertex processor, the geometry shader executable, if present, + will be installed on the programmable geometry processor, but no executable will + be installed on the fragment processor. The results of + rasterizing primitives with such a program will be undefined. + + The program object's information log is updated and the + program is generated at the time of the link operation. After + the link operation, applications are free to modify attached + shader objects, compile attached shader objects, detach shader + objects, delete shader objects, and attach additional shader + objects. None of these operations affects the information log or + the program that is part of the program object. + + Notes + If the link operation is unsuccessful, any information about a previous link operation on program + is lost (i.e., a failed link does not restore the old state of program + ). Certain information can still be retrieved from program + even after an unsuccessful link operation. See for instance glGetActiveAttrib + and glGetActiveUniform. + + Errors + GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL. + GL_INVALID_OPERATION + is generated if program + is not a program object. + GL_INVALID_OPERATION + is generated if program is the currently active program + object and transform feedback mode is active. + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + glGetActiveAttrib + with argument program + and the index of an active attribute variable + glGetActiveUniform + with argument program + and the index of an active uniform variable + glGetAttachedShaders + with argument program + glGetAttribLocation + with argument program + and an attribute variable name + glGetProgram + with arguments program + and GL_LINK_STATUS + glGetProgramInfoLog + with argument program + glGetUniform + with argument program + and a uniform variable location + glGetUniformLocation + with argument program + and a uniform variable name + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glUniform, + glUseProgram, + glValidateProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glLogicOp.xml b/upstream-man-pages/man4/glLogicOp.xml new file mode 100644 index 0000000..1052754 --- /dev/null +++ b/upstream-man-pages/man4/glLogicOp.xml @@ -0,0 +1,269 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glLogicOp + 3G + + + glLogicOp + specify a logical pixel operation for rendering + + C Specification + + + void glLogicOp + GLenum opcode + + + + Parameters + + + opcode + + + Specifies a symbolic constant that selects a logical operation. + The following symbols are accepted: + GL_CLEAR, + GL_SET, + GL_COPY, + GL_COPY_INVERTED, + GL_NOOP, + GL_INVERT, + GL_AND, + GL_NAND, + GL_OR, + GL_NOR, + GL_XOR, + GL_EQUIV, + GL_AND_REVERSE, + GL_AND_INVERTED, + GL_OR_REVERSE, and + GL_OR_INVERTED. The initial value is GL_COPY. + + + + + + Description + + glLogicOp specifies a logical operation that, + when enabled, + is applied between the incoming RGBA color + and the RGBA color at the corresponding location in the + frame buffer. + To enable or disable the logical operation, call + glEnable and glDisable + using the symbolic constant GL_COLOR_LOGIC_OP. The initial value is + disabled. + + + + + + + + + + + Opcode + + + Resulting Operation + + + + + + + GL_CLEAR + + + 0 + + + + + GL_SET + + + 1 + + + + + GL_COPY + + + s + + + + + GL_COPY_INVERTED + + + ~s + + + + + GL_NOOP + + + d + + + + + GL_INVERT + + + ~d + + + + + GL_AND + + + s & d + + + + + GL_NAND + + + ~(s & d) + + + + + GL_OR + + + s | d + + + + + GL_NOR + + + ~(s | d) + + + + + GL_XOR + + + s ^ d + + + + + GL_EQUIV + + + ~(s ^ d) + + + + + GL_AND_REVERSE + + + s & ~d + + + + + GL_AND_INVERTED + + + ~s & d + + + + + GL_OR_REVERSE + + + s | ~d + + + + + GL_OR_INVERTED + + + ~s | d + + + + + + + opcode is a symbolic constant chosen from the list above. + In the explanation of the logical operations, + s represents the incoming color and + d represents the color in the frame buffer. + Standard C-language operators are used. + As these bitwise operators suggest, + the logical operation is applied independently to each bit pair of the + source and destination colors. + + + Notes + + When more than one RGBA color buffer is enabled for drawing, + logical operations are performed separately for each enabled buffer, + using for the destination value the contents of that buffer + (see glDrawBuffer). + + + Logic operations have no effect on floating point draw buffers. However, if + GL_COLOR_LOGIC_OP is enabled, blending is still disabled + in this case. + + + Errors + + GL_INVALID_ENUM is generated if opcode is not an accepted value. + + + Associated Gets + + glGet with argument GL_LOGIC_OP_MODE. + + + glIsEnabled with argument GL_COLOR_LOGIC_OP. + + + See Also + + glBlendFunc, + glDrawBuffer, + glEnable, + glStencilOp + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glMapBuffer.xml b/upstream-man-pages/man4/glMapBuffer.xml new file mode 100644 index 0000000..923a015 --- /dev/null +++ b/upstream-man-pages/man4/glMapBuffer.xml @@ -0,0 +1,206 @@ + + + + + + + 2005 + Sams Publishing + + + glMapBuffer + 3G + + + glMapBuffer + map a buffer object's data store + + C Specification + + + void * glMapBuffer + GLenum target + GLenum access + + + + Parameters + + + target + + + Specifies the target buffer object being mapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. + + + + + access + + + Specifies the access policy, indicating whether it will be possible to read from, write to, + or both read from and write to the buffer object's mapped data store. The symbolic constant must be + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + + + + + + C Specification + + + GLboolean glUnmapBuffer + GLenum target + + + + + Parameters + + + target + + + Specifies the target buffer object being unmapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. + + + + + + Description + + glMapBuffer maps to the client's address space the entire data store of the buffer object + currently bound to target. The data can then be directly read and/or written relative to + the returned pointer, depending on the specified access policy. If the GL is unable to + map the buffer object's data store, glMapBuffer generates an error and returns + NULL. This may occur for system-specific reasons, such as low virtual memory availability. + If no error occurs, the returned pointer will have an alignment of at least GL_MIN_MAP_BUFFER_ALIGNMENT + basic machine units. The value of GL_MIN_MAP_BUFFER_ALIGNMENT can be retrieved by calling + glGet with pname set to + GL_MIN_MAP_BUFFER_ALIGNMENT and must be a power of two that is at least 64. + + + If a mapped data store is accessed in a way inconsistent with the specified access policy, + no error is generated, but performance may be negatively impacted and system errors, including program + termination, may result. Unlike the usage parameter of glBufferData, + access is not a hint, and does in fact constrain the usage of the mapped data store on + some GL implementations. In order to achieve the highest performance available, a buffer object's data store + should be used in ways consistent with both its specified usage and + access parameters. + + + A mapped data store must be unmapped with glUnmapBuffer before its buffer object is used. + Otherwise an error will be generated by any GL command that attempts to dereference the buffer object's data store. + When a data store is unmapped, the pointer to its data store becomes invalid. glUnmapBuffer + returns GL_TRUE unless the data store contents have become corrupt during the time + the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics + memory, such as screen mode changes. In such situations, GL_FALSE is returned and the + data store contents are undefined. An application must detect this rare condition and reinitialize the data store. + + + A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store + is recreated with glBufferData. + + + Notes + + If an error is generated, glMapBuffer returns NULL, and + glUnmapBuffer returns GL_FALSE. + + + Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, + but results will be undefined and will likely vary across GL implementations. + + + Alignment of the returned pointer is guaranteed only if the version + of the GL version is 4.2 or greater. Also, the GL_ATOMIC_COUNTER_BUFFER + target is accepted only if the GL version is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version + is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target is not + one of the accepted targets. + + + GL_INVALID_ENUM is generated if access is not + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + + + GL_OUT_OF_MEMORY is generated when glMapBuffer is executed + if the GL is unable to map the buffer object's data store. This may occur for a variety of system-specific + reasons, such as the absence of sufficient remaining virtual memory. + + + GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. + + + GL_INVALID_OPERATION is generated if glMapBuffer is executed for + a buffer object whose data store is already mapped. + + + GL_INVALID_OPERATION is generated if glUnmapBuffer is executed for + a buffer object whose data store is not currently mapped. + + + Associated Gets + + glGetBufferPointerv with argument GL_BUFFER_MAP_POINTER + + + glGetBufferParameter with argument GL_BUFFER_MAPPED, GL_BUFFER_ACCESS, or GL_BUFFER_USAGE + + + See Also + + glBindBuffer, + glBindBufferBase, + glBindBufferRange, + glBufferData, + glBufferSubData, + glDeleteBuffers + + + Copyright + + Copyright 2005 Addison-Wesley. + Copyright 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glMapBufferRange.xml b/upstream-man-pages/man4/glMapBufferRange.xml new file mode 100644 index 0000000..3e012e3 --- /dev/null +++ b/upstream-man-pages/man4/glMapBufferRange.xml @@ -0,0 +1,222 @@ + + + + + + + 2012 + Khronos Group + + + glMapBufferRange + 3G + + + glMapBufferRange + map a section of a buffer object's data store + + C Specification + + + void *glMapBufferRange + GLenum target + GLintptr offset + GLsizeiptr length + GLbitfield access + + + + Parameters + + + target + + + Specifies a binding to which the target buffer is bound. + + + + + offset + + + Specifies a the starting offset within the buffer of the range to be mapped. + + + + + length + + + Specifies a length of the range to be mapped. + + + + + access + + + Specifies a combination of access flags indicating the desired access to the range. + + + + + + Description + + glMapBufferRange maps all or part of the data store of a buffer object into the client's address + space. target specifies the target to which the buffer is bound and must be one of GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. offset and + length indicate the range of data in the buffer object htat is to be mapped, in terms of basic machine units. + access is a bitfield containing flags which describe the requested mapping. These flags are described below. + + + If no error occurs, a pointer to the beginning of the mapped range is returned once all pending operations on that buffer have + completed, and may be used to modify and/or query the corresponding range of the buffer, according to the following flag bits set + in access: + + + + GL_MAP_READ_BIT indicates that the returned pointer may be used to read + buffer object data. No GL error is generated if the pointer is used to query + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. + + + + + GL_MAP_WRITE_BIT indicates that the returned pointer may be used to modify + buffer object data. No GL error is generated if the pointer is used to modify + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. + + + + + + Furthermore, the following optional flag bits in access may be used to modify the mapping: + + + + GL_MAP_INVALIDATE_RANGE_BIT indicates that the previous contents of the + specified range may be discarded. Data within this range are undefined with + the exception of subsequently written data. No GL error is generated if sub- + sequent GL operations access unwritten data, but the result is undefined and + system errors (possibly including program termination) may occur. This flag + may not be used in combination with GL_MAP_READ_BIT. + + + + + GL_MAP_INVALIDATE_BUFFER_BIT indicates that the previous contents of the + entire buffer may be discarded. Data within the entire buffer are undefined + with the exception of subsequently written data. No GL error is generated if + subsequent GL operations access unwritten data, but the result is undefined + and system errors (possibly including program termination) may occur. This + flag may not be used in combination with GL_MAP_READ_BIT. + + + + + GL_MAP_FLUSH_EXPLICIT_BIT indicates that one or more discrete subranges + of the mapping may be modified. When this flag is set, modifications to + each subrange must be explicitly flushed by calling glFlushMappedBufferRange. + No GL error is set if a subrange of the mapping is modified and + not flushed, but data within the corresponding subrange of the buffer are undefined. + This flag may only be used in conjunction with GL_MAP_WRITE_BIT. + When this option is selected, flushing is strictly limited to regions that are + explicitly indicated with calls to glFlushMappedBufferRange + prior to unmap; if this option is not selected glUnmapBuffer + will automatically flush the entire mapped range when called. + + + + + GL_MAP_UNSYNCHRONIZED_BIT indicates that the GL should not attempt to + synchronize pending operations on the buffer prior to returning from glMapBufferRange. + No GL error is generated if pending operations which source or modify the buffer overlap the mapped region, + but the result of such previous and any subsequent operations is undefined. + + + + + + If an error occurs, glMapBufferRange returns a NULL pointer. + If no error occurs, the returned pointer will reflect an alignment of at least GL_MIN_MAP_BUFFER_ALIGNMENT + basic machine units. The value of GL_MIN_MAP_BUFFER_ALIGNMENT can be retrieved by calling + glGet with pname set to + GL_MIN_MAP_BUFFER_ALIGNMENT and must be a power of two that is at least 64. Subtracting offset + from this returned pointed will always produce a multiple of GL_MIN_MAP_BUFFER_ALINMENT. + + + Notes + + Alignment of the returned pointer is guaranteed only if the version + of the GL version is 4.2 or greater. Also, the GL_ATOMIC_COUNTER_BUFFER + target is accepted only if the GL version is 4.2 or greater. + + + The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are accepted only if the + GL version is 4.3 or greater. + + + Errors + + GL_INVALID_VALUE is generated if either of offset or length is negative, + or if offset + length is greater than the value of GL_BUFFER_SIZE. + + + GL_INVALID_VALUE is generated if access has any bits set other than those defined above. + + + GL_INVALID_OPERATION is generated for any of the following conditions: + + + + The buffer is already in a mapped state. + + + + + Neither GL_MAP_READ_BIT or GL_MAP_WRITE_BIT is set. + + + + + GL_MAP_READ_BIT is set and any of GL_MAP_INVALIDATE_RANGE_BIT, + GL_MAP_INVALIDATE_BUFFER_BIT, or GL_MAP_UNSYNCHRONIZED_BIT is set. + + + + + GL_MAP_FLUSH_EXPLICIT_BIT is set and GL_MAP_WRITE_BIT is not set. + + + + + + GL_OUT_OF_MEMORY is generated if glMapBufferRange fails because memory for the + mapping could not be obtained. + + + See Also + + glMapBuffer, + glFlushMappedBufferRange, + glBindBuffer + + + Copyright + + Copyright 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glMemoryBarrier.xml b/upstream-man-pages/man4/glMemoryBarrier.xml new file mode 100644 index 0000000..7da5546 --- /dev/null +++ b/upstream-man-pages/man4/glMemoryBarrier.xml @@ -0,0 +1,308 @@ + + + + + + + 2011 + Khronos Group + + + glMemoryBarrier + 3G + + + glMemoryBarrier + defines a barrier ordering memory transactions + + C Specification + + + void glMemoryBarrier + GLbitfield barriers + + + + Parameters + + + barriers + + + Specifies the barriers to insert. Must be a bitwise combination of GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, + GL_ELEMENT_ARRAY_BARRIER_BIT, GL_UNIFORM_BARRIER_BIT, GL_TEXTURE_FETCH_BARRIER_BIT, + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, GL_COMMAND_BARRIER_BIT, GL_PIXEL_BUFFER_BARRIER_BIT, + GL_TEXTURE_UPDATE_BARRIER_BIT, GL_BUFFER_UPDATE_BARRIER_BIT, + GL_FRAMEBUFFER_BARRIER_BIT, GL_TRANSFORM_FEEDBACK_BARRIER_BIT, GL_ATOMIC_COUNTER_BARRIER_BIT, + or GL_SHADER_STORAGE_BARRIER_BIT. + If the special value GL_ALL_BARRIER_BITS is specified, all supported barriers will be inserted. + + + + + + Description + + glMemoryBarrier defines a barrier ordering the memory transactions issued prior to the + command relative to those issued after the barrier. For the purposes of + this ordering, memory transactions performed by shaders are considered to + be issued by the rendering command that triggered the execution of the + shader. barriers is a bitfield indicating the set of operations that + are synchronized with shader stores; the bits used in barriers are as + follows: + + + + + GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT + + + If set, vertex data sourced from + buffer objects after the barrier will reflect data written by shaders + prior to the barrier. The set of buffer objects affected by this bit + is derived from the buffer object bindings used for + generic vertex attributes derived from the GL_VERTEX_ATTRIB_ARRAY_BUFFER bindings. + + + + + GL_ELEMENT_ARRAY_BARRIER_BIT + + + If set, vertex array indices sourced from + buffer objects after the barrier will reflect data written by shaders + prior to the barrier. The buffer objects affected by this bit are + derived from the GL_ELEMENT_ARRAY_BUFFER binding. + + + + + GL_UNIFORM_BARRIER_BIT + + + Shader uniforms sourced from buffer objects after the barrier will reflect data + written by shaders prior to the barrier. + + + + + GL_TEXTURE_FETCH_BARRIER_BIT + + + Texture fetches from shaders, including + fetches from buffer object memory via buffer textures, after the + barrier will reflect data written by shaders prior to the barrier. + + + + + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT + + + Memory accesses using shader image + load, store, and atomic built-in functions issued after the barrier + will reflect data written by shaders prior to the barrier. + Additionally, image stores and atomics issued after the barrier will + not execute until all memory accesses (e.g., loads, stores, texture + fetches, vertex fetches) initiated prior to the barrier complete. + + + + + GL_COMMAND_BARRIER_BIT + + + Command data sourced from buffer objects by + Draw*Indirect commands after the barrier will reflect data written by + shaders prior to the barrier. The buffer objects affected by this bit + are derived from the GL_DRAW_INDIRECT_BUFFER binding. + + + + + GL_PIXEL_BUFFER_BARRIER_BIT + + + Reads and writes of buffer objects via the + GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER + bindings (via glReadPixels, + glTexSubImage, etc.) after the + barrier will reflect data written by shaders prior to the barrier. + Additionally, buffer object writes issued after the barrier will wait + on the completion of all shader writes initiated prior to the barrier. + + + + + GL_TEXTURE_UPDATE_BARRIER_BIT + + + Writes to a texture via glTex(Sub)Image*, + glCopyTex(Sub)Image*, glCompressedTex(Sub)Image*, and reads via + glGetTexImage after the barrier will reflect data written by shaders + prior to the barrier. Additionally, texture writes from these + commands issued after the barrier will not execute until all shader + writes initiated prior to the barrier complete. + + + + + GL_BUFFER_UPDATE_BARRIER_BIT + + + Reads or writes via glBufferSubData, + glCopyBufferSubData, + or glGetBufferSubData, or + to buffer object memory mapped by glMapBuffer + or glMapBufferRange after the barrier + will reflect data written by shaders prior to the barrier. + Additionally, writes via these commands issued after the barrier will + wait on the completion of any shader writes to the same memory + initiated prior to the barrier. + + + + + GL_FRAMEBUFFER_BARRIER_BIT + + + Reads and writes via framebuffer object + attachments after the barrier will reflect data written by shaders + prior to the barrier. Additionally, framebuffer writes issued after + the barrier will wait on the completion of all shader writes issued + prior to the barrier. + + + + + GL_TRANSFORM_FEEDBACK_BARRIER_BIT + + + Writes via transform feedback + bindings after the barrier will reflect data written by shaders prior + to the barrier. Additionally, transform feedback writes issued after + the barrier will wait on the completion of all shader writes issued + prior to the barrier. + + + + + GL_ATOMIC_COUNTER_BARRIER_BIT + + + Accesses to atomic counters after the + barrier will reflect writes prior to the barrier. + + + + + GL_SHADER_STORAGE_BARRIER_BIT + + + Accesses to shader storage blocks after the + barrier will reflect writes prior to the barrier. + + + + + + + If barriers is GL_ALL_BARRIER_BITS, shader memory accesses + will be synchronized relative to all the operations described above. + + + Implementations may cache buffer object and texture image memory that + could be written by shaders in multiple caches; for example, there may be + separate caches for texture, vertex fetching, and one or more caches for + shader memory accesses. Implementations are not required to keep these + caches coherent with shader memory writes. Stores issued by one + invocation may not be immediately observable by other pipeline stages or + other shader invocations because the value stored may remain in a cache + local to the processor executing the store, or because data overwritten by + the store is still in a cache elsewhere in the system. When glMemoryBarrier + is called, the GL flushes and/or invalidates any caches relevant to the + operations specified by the barriers parameter to ensure consistent + ordering of operations across the barrier. + + + To allow for independent shader invocations to communicate by reads and + writes to a common memory address, image variables in the OpenGL Shading + Language may be declared as "coherent". Buffer object or texture image + memory accessed through such variables may be cached only if caches are + automatically updated due to stores issued by any other shader invocation. + If the same address is accessed using both coherent and non-coherent + variables, the accesses using variables declared as coherent will observe + the results stored using coherent variables in other invocations. Using + variables declared as "coherent" guarantees only that the results of + stores will be immediately visible to shader invocations using + similarly-declared variables; calling glMemoryBarrier is required to ensure + that the stores are visible to other operations. + + + The following guidelines may be helpful in choosing when to use coherent + memory accesses and when to use barriers. + + + + Data that are read-only or constant may be accessed without using + coherent variables or calling MemoryBarrier(). Updates to the + read-only data via API calls such as BufferSubData will invalidate + shader caches implicitly as required. + + Data that are shared between shader invocations at a fine granularity + (e.g., written by one invocation, consumed by another invocation) should + use coherent variables to read and write the shared data. + + Data written by one shader invocation and consumed by other shader + invocations launched as a result of its execution ("dependent + invocations") should use coherent variables in the producing shader + invocation and call memoryBarrier() after the last write. The consuming + shader invocation should also use coherent variables. + + Data written to image variables in one rendering pass and read by the + shader in a later pass need not use coherent variables or + memoryBarrier(). Calling MemoryBarrier() with the + SHADER_IMAGE_ACCESS_BARRIER_BIT set in barriers between passes is + necessary. + + Data written by the shader in one rendering pass and read by another + mechanism (e.g., vertex or index buffer pulling) in a later pass need + not use coherent variables or memoryBarrier(). Calling + glMemoryBarrier with the appropriate bits set in barriers between + passes is necessary. + + + + Notes + + glMemoryBarrier is available only if the GL version is 4.2 or higher. + + + GL_SHADER_STORAGE_BARRIER_BIT is available only if the GL version is 4.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if barriers contains any bits + other than those listed above, or is not the special value GL_ALL_BARRIER_BITS. + + + See Also + + glBindImageTexture, + glBufferData, + glMapBuffer, + glMapBufferRange, + glFlushMappedBufferRange + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glMinSampleShading.xml b/upstream-man-pages/man4/glMinSampleShading.xml new file mode 100644 index 0000000..a114c8b --- /dev/null +++ b/upstream-man-pages/man4/glMinSampleShading.xml @@ -0,0 +1,94 @@ + + + + + + + 2010 + Khronos Group. + + + glMinSampleShading + 3G + + + glMinSampleShading + specifies minimum rate at which sample shaing takes place + + C Specification + + + void glMinSampleShading + GLfloat value + + + + + Parameters + + + value + + + Specifies the rate at which samples are shaded within each covered pixel. + + + + + + Description + + glMinSampleShading specifies the rate at which samples are shaded within + a covered pixel. Sample-rate shading is enabled by calling glEnable + with the parameter GL_SAMPLE_SHADING. If GL_MULTISAMPLE + or GL_SAMPLE_SHADING is disabled, sample shading has no effect. + Otherwise, an implementation must provide at least as many unique color values for + each covered fragment as specified by value times samples where + samples is the value of GL_SAMPLES for the current + framebuffer. At least 1 sample for each covered fragment is generated. + + + A value of 1.0 indicates that each sample in the framebuffer should be + indpendently shaded. A value of 0.0 effectively allows the GL to ignore + sample rate shading. Any value between 0.0 and 1.0 allows the GL to shade only a subset + of the total samples within each covered fragment. Which samples are shaded and the algorithm + used to select that subset of the fragment's samples is implementation dependent. + + + Notes + + The type of the value parameter was + changed from GLclampf to GLfloat. This change is transparent + to user code and is described in detail on the + removedTypes + page. + + + Errors + + None. + + + Associated Gets + + glGet with argument GL_MIN_SAMPLE_SHADING. + + + glGet with argument GL_SAMPLES. + + + See Also + + removedTypes + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glMultiDrawArrays.xml b/upstream-man-pages/man4/glMultiDrawArrays.xml new file mode 100644 index 0000000..fd791ca --- /dev/null +++ b/upstream-man-pages/man4/glMultiDrawArrays.xml @@ -0,0 +1,142 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiDrawArrays + 3G + + + glMultiDrawArrays + render multiple sets of primitives from array data + + C Specification + + + void glMultiDrawArrays + GLenum mode + const GLint * first + const GLsizei * count + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + first + + + Points to an array of starting indices in the enabled arrays. + + + + + count + + + Points to an array of the number of indices to be rendered. + + + + + primcount + + + Specifies the size of the first and count + + + + + + Description + + glMultiDrawArrays specifies multiple sets of geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glMultiDrawArrays. + + + glMultiDrawArrays behaves identically to glDrawArrays except that primcount + separate ranges of elements are specified instead. + + + When glMultiDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed, and how the array elements + construct those primitives. + + + Vertex attributes that are modified by glMultiDrawArrays have an + unspecified value after glMultiDrawArrays returns. Attributes that aren't + modified remain well defined. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. + + + See Also + + glDrawElements, + glDrawRangeElements + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glMultiDrawArraysIndirect.xml b/upstream-man-pages/man4/glMultiDrawArraysIndirect.xml new file mode 100644 index 0000000..f54a782 --- /dev/null +++ b/upstream-man-pages/man4/glMultiDrawArraysIndirect.xml @@ -0,0 +1,190 @@ + + + + + + + 2012 + Khronos Group. + + + glMultiDrawArraysIndirect + 3G + + + glMultiDrawArraysIndirect + render multiple sets of primitives from array data, taking parameters from memory + + C Specification + + + void glMultiDrawArraysIndirect + GLenum mode + const void *indirect + GLsizei drawcount + GLsizei stride + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + indirect + + + Specifies the address of an array of structures containing the draw parameters. + + + + + drawcount + + + Specifies the the number of elements in the array of draw parameter structures. + + + + + stride + + + Specifies the distance in basic machine units between elements of the draw parameter array. + + + + + + Description + + glMultiDrawArraysIndirect specifies multiple geometric primitives + with very few subroutine calls. glMultiDrawArraysIndirect behaves + similarly to a multitude of calls to glDrawArraysInstancedBaseInstance, + execept that the parameters to each call to glDrawArraysInstancedBaseInstance + are stored in an array in memory at the address given by indirect, separated + by the stride, in basic machine units, specified by stride. If stride + is zero, then the array is assumed to be tightly packed in memory. + + + The parameters addressed by indirect are packed into an array of structures, + each element of which takes the form (in C): + + + + A single call to glMultiDrawArraysIndirect is equivalent, assuming no errors + are generated to: + first, cmd->count, cmd->primCount, cmd->baseInstance); + }]]> + + + If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glMultiDrawArraysIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. + + + In contrast to glDrawArraysInstancedBaseInstance, + the first member of the parameter structure is unsigned, and out-of-range indices + do not generate an error. + + + Vertex attributes that are modified by glMultiDrawArraysIndirect have an + unspecified value after glMultiDrawArraysIndirect returns. Attributes that aren't + modified remain well defined. + + + Notes + + The baseInstance member of the DrawArraysIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. + + + glMultiDrawArraysIndirect is available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is not a multiple + of four. + + + GL_INVALID_VALUE is generated if drawcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + glDrawArraysIndirect, + glMultiDrawElementsIndirect + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glMultiDrawElements.xml b/upstream-man-pages/man4/glMultiDrawElements.xml new file mode 100644 index 0000000..3772633 --- /dev/null +++ b/upstream-man-pages/man4/glMultiDrawElements.xml @@ -0,0 +1,144 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glMultiDrawElements + 3G + + + glMultiDrawElements + render multiple sets of primitives by specifying indices of array data elements + + C Specification + + + void glMultiDrawElements + GLenum mode + const GLsizei * count + GLenum type + const GLvoid ** indices + GLsizei primcount + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + count + + + Points to an array of the elements counts. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the size of the count array. + + + + + + Description + + glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine + calls. Instead of calling a GL function to pass each individual vertex, + normal, texture coordinate, edge flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to construct a + sequence of primitives with a single call to glMultiDrawElements. + + + glMultiDrawElements is identical in operation to glDrawElements except that + primcount separate lists of elements are specified. + + + Vertex attributes that are modified by glMultiDrawElements have an + unspecified value after glMultiDrawElements returns. Attributes that aren't + modified maintain their previous values. + + + Notes + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glDrawArrays, + glDrawRangeElements + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glMultiDrawElementsBaseVertex.xml b/upstream-man-pages/man4/glMultiDrawElementsBaseVertex.xml new file mode 100644 index 0000000..21223d8 --- /dev/null +++ b/upstream-man-pages/man4/glMultiDrawElementsBaseVertex.xml @@ -0,0 +1,156 @@ + + + + + + + 2010 + Khronos Group + + + glMultiDrawElementsBaseVertex + 3G + + + glMultiDrawElementsBaseVertex + render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index + + C Specification + + + void glMultiDrawElementsBaseVertex + GLenum mode + const GLsizei *count + GLenum type + const GLvoid **indices + GLsizei primcount + GLint *basevertex + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. + + + + + count + + + Points to an array of the elements counts. + + + + + type + + + Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. + + + + + indices + + + Specifies a pointer to the location where the indices are stored. + + + + + primcount + + + Specifies the size of the count array. + + + + + basevertex + + + Specifies a pointer to the location where the base vertices are stored. + + + + + + Description + + glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, + except that primcount separate lists of elements are specifried instead. + + + It has the same effect as: + for (int i = 0; i < primcount; i++) + if (count[i] > 0) + glDrawElementsBaseVertex(mode, + count[i], + type, + indices[i], + basevertex[i]); + + + Notes + + glMultiDrawElementsBaseVertex is available only if the GL version is 3.1 or greater. + + + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if primcount is negative. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. + + + See Also + + glMultiDrawElements, + glDrawElementsBaseVertex, + glDrawArrays, + glVertexAttribPointer + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glMultiDrawElementsIndirect.xml b/upstream-man-pages/man4/glMultiDrawElementsIndirect.xml new file mode 100644 index 0000000..1b67412 --- /dev/null +++ b/upstream-man-pages/man4/glMultiDrawElementsIndirect.xml @@ -0,0 +1,211 @@ + + + + + + + 2012 + Khronos Group. + + + glMultiDrawElementsIndirect + 3G + + + glMultiDrawElementsIndirect + render indexed primitives from array data, taking parameters from memory + + C Specification + + + void glMultiDrawElementsIndirect + GLenum mode + GLenum type + const void *indirect + GLsizei drawcount + GLsizei stride + + + + + Parameters + + + mode + + + Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. + + + + + type + + + Specifies the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. + + + + + indirect + + + Specifies the address of a structure containing an array of draw parameters. + + + + + drawcount + + + Specifies the number of elements in the array addressed by indirect. + + + + + stride + + + Specifies the distance in basic machine units between elements of the draw parameter array. + + + + + + Description + + glMultiDrawElementsIndirect specifies multiple indexed geometric primitives + with very few subroutine calls. glMultiDrawElementsIndirect behaves + similarly to a multitude of calls to glDrawElementsInstancedBaseVertexBaseInstance, + execpt that the parameters to glDrawElementsInstancedBaseVertexBaseInstance + are stored in an array in memory at the address given by indirect, separated + by the stride, in basic machine units, specified by stride. If stride + is zero, then the array is assumed to be tightly packed in memory. + + + The parameters addressed by indirect are packed into a structure + that takes the form (in C): + + + + A single call to glMultiDrawElementsIndirect is equivalent, assuming no errors + are generated to: + count, + type, + cmd->firstIndex + size-of-type, + cmd->primCount, + cmd->baseVertex, + cmd->baseInstance); + }]]> + + + If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glDrawElementsIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. + + + Note that indices stored in client memory are not supported. If no buffer is bound to the + GL_ELEMENT_ARRAY_BUFFER binding, an error will be generated. + + + The results of the operation are undefined if the reservedMustBeZero member + of the parameter structure is non-zero. However, no error is generated in this case. + + + Vertex attributes that are modified by glDrawElementsIndirect have an + unspecified value after glDrawElementsIndirect returns. Attributes that aren't + modified remain well defined. + + + Notes + + The baseInstance member of the DrawElementsIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. + + + Errors + + GL_INVALID_ENUM is generated if mode is not an accepted value. + + + GL_INVALID_VALUE is generated if stride is not a multiple + of four. + + + GL_INVALID_VALUE is generated if drawcount is negative. + + + GL_INVALID_OPERATION is generated if no buffer is bound to the GL_ELEMENT_ARRAY_BUFFER + binding, or if such a buffer's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. + + + GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawArraysIndirect, + glDrawElements, + glDrawRangeElements, + glDrawElementsIndirect, + glMultiDrawArraysIndirect + + + Copyright + + Copyright 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glObjectLabel.xml b/upstream-man-pages/man4/glObjectLabel.xml new file mode 100644 index 0000000..1d3aeaf --- /dev/null +++ b/upstream-man-pages/man4/glObjectLabel.xml @@ -0,0 +1,121 @@ + + + + + + + 2012 + Khronos Group + + + glObjectLabel + 3G + + + glObjectLabel + label a named object identified within a namespace + + C Specification + + + void glObjectLabel + GLenum identifier + GLuint name + GLsizei length + const char * label + + + + Parameters + + + identifier + + + The namespace from which the name of the object is allocated. + + + + + name + + + The name of the object to label. + + + + + length + + + The length of the label to be used for the object. + + + + + label + + + The address of a string containing the label to assign to the object. + + + + + + Description + + glObjectLabel labels the object identified by + name within the namespace given by identifier. + identifier must be one of GL_BUFFER, GL_SHADER, + GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, + GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, + GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, + to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, + program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame + buffers, respectively. + + + label is the address of a string that will be used to label an object. + length contains the number of characters in label. + If length is negative, it is implied that + label contains a null-terminated string. If label + is NULL, any debug label is effectively removed from the object. + + + Errors + + GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. + + + GL_INVALID_OPERATION is generated if name + is not the name of an existing object of the type specified by identifier. + + + GL_INVALID_VALUE is generated if the number of characters in + label, excluding the null terminator when length + is negative, is greater than the value of GL_MAX_LABEL_LENGTH. + + + Associated Gets + + glGet with argument GL_MAX_LABEL_LENGTH. + + + See Also + + glPushDebugGroup, + glPopDebugGroup, + glObjectPtrLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glObjectPtrLabel.xml b/upstream-man-pages/man4/glObjectPtrLabel.xml new file mode 100644 index 0000000..5ea9c4b --- /dev/null +++ b/upstream-man-pages/man4/glObjectPtrLabel.xml @@ -0,0 +1,101 @@ + + + + + + + 2012 + Khronos Group + + + glObjectPtrLabel + 3G + + + glObjectPtrLabel + label a a sync object identified by a pointer + + C Specification + + + void glObjectPtrLabel + void * ptr + GLsizei length + const char * label + + + + Parameters + + + ptr + + + A pointer identifying a sync object. + + + + + length + + + The length of the label to be used for the object. + + + + + label + + + The address of a string containing the label to assign to the object. + + + + + + Description + + glObjectPtrLabel labels the sync object identified by + ptr. + + + label is the address of a string that will be used to label the object. + length contains the number of characters in label. + If length is negative, it is implied that + label contains a null-terminated string. If label + is NULL, any debug label is effectively removed from the object. + + + Errors + + GL_INVALID_VALUE is generated if ptr is not + a valid sync object. + + + GL_INVALID_VALUE is generated if the number of characters in + label, excluding the null terminator when length + is negative, is greater than the value of GL_MAX_LABEL_LENGTH. + + + Associated Gets + + glGet with argument GL_MAX_LABEL_LENGTH. + + + See Also + + glPushDebugGroup, + glPopDebugGroup, + glObjectLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glPatchParameter.xml b/upstream-man-pages/man4/glPatchParameter.xml new file mode 100644 index 0000000..85c9c8d --- /dev/null +++ b/upstream-man-pages/man4/glPatchParameter.xml @@ -0,0 +1,112 @@ + + + + + + + 2010 + Khronos Group. + + + glPatchParameter + 3G + + + glPatchParameter + specifies the parameters for patch primitives + + C Specification + + + void glPatchParameteri + GLenum pname + GLint value + + + + + void glPatchParameterfv + GLenum pname + const GLfloat *values + + + + + Parameters + + + pname + + + Specifies the name of the parameter to set. The symbolc constants GL_PATCH_VERTICES, + GL_PATCH_DEFAULT_OUTER_LEVEL, and GL_PATCH_DEFAULT_INNER_LEVEL are accepted. + + + + + value + + + Specifies the new value for the parameter given by pname. + + + + + values + + + Specifies the address of an array containing the new values for the parameter given by pname. + + + + + + Description + + glPatchParameter specifies the parameters that will be used for patch primitives. pname + specifies the parameter to modify and must be either GL_PATCH_VERTICES, GL_PATCH_DEFAULT_OUTER_LEVEL + or GL_PATCH_DEFAULT_INNER_LEVEL. For glPatchParameteri, value specifies + the new value for the parameter specified by pname. For glPatchParameterfv, values + specifies the address of an array containing the new values for the parameter specified by pname. + + + When pname is GL_PATCH_VERTICES, value specifies the number + of vertices that will be used to make up a single patch primitive. Patch primitives are consumed by the tessellation control + shader (if present) and subsequently used for tessellation. When primitives are specified using + glDrawArrays or a similar function, each patch will be made + from parameter control points, each represented by a vertex taken from the enabeld vertex arrays. + parameter must be greater than zero, and less than or equal to the value of GL_MAX_PATCH_VERTICES. + + + When pname is GL_PATCH_DEFAULT_OUTER_LEVEL or GL_PATCH_DEFAULT_INNER_LEVEL, + values contains the address of an array contiaining the default outer or inner tessellation levels, respectively, + to be used when no tessellation control shader is present. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_VALUE is generated if pname is GL_PATCH_VERTICES + and value is less than or equal to zero, or greater than the value of GL_MAX_PATCH_VERTICES. + + + See Also + + glDrawArrays, + glDrawArraysInstanced, + glDrawElements, + glDrawRangeElements, + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glPauseTransformFeedback.xml b/upstream-man-pages/man4/glPauseTransformFeedback.xml new file mode 100644 index 0000000..0f4af90 --- /dev/null +++ b/upstream-man-pages/man4/glPauseTransformFeedback.xml @@ -0,0 +1,58 @@ + + + + + + + 2010 + Khronos Group + + + glPauseTransformFeedback + 3G + + + glPauseTransformFeedback + pause transform feedback operations + + C Specification + + + void glPauseTransformFeedback + void + + + + Description + + glPauseTransformFeedback pauses transform feedback operations on the currently active transform feedback + object. When transform feedback operations are paused, transform feedback is still considered active and changing most + transform feedback state related to the object results in an error. However, a new transform feedback object may be bound + while transform feedback is paused. + + + Errors + + GL_INVALID_OPERATION is generated if the currently bound transform feedback object is not active or is paused. + + + See Also + + glGenTransformFeedbacks, + glBindTransformFeedback, + glBeginTransformFeedback, + glResumeTransformFeedback, + glEndTransformFeedback, + glDeleteTransformFeedbacks + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glPixelStore.xml b/upstream-man-pages/man4/glPixelStore.xml new file mode 100644 index 0000000..0eba5b2 --- /dev/null +++ b/upstream-man-pages/man4/glPixelStore.xml @@ -0,0 +1,1428 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPixelStore + 3G + + + glPixelStore + set pixel storage modes + + C Specification + + + void glPixelStoref + GLenum pname + GLfloat param + + + + + void glPixelStorei + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies the symbolic name of the parameter to be set. + Six values affect the packing of pixel data into memory: + GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_PIXELS, + GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_IMAGES, and + GL_PACK_ALIGNMENT. + Six more affect the unpacking of pixel data from memory: + GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH, + GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_IMAGES, and + GL_UNPACK_ALIGNMENT. + + + + + param + + + Specifies the value that pname is set to. + + + + + + Description + + glPixelStore sets pixel storage modes that affect the operation of subsequent + glReadPixels as well as the unpacking of + texture patterns (see glTexImage1D, + glTexImage2D, glTexImage3D, glTexSubImage1D, + glTexSubImage2D, glTexSubImage3D), + glCompressedTexImage1D, glCompressedTexImage2D, + glCompressedTexImage3D, glCompressedTexSubImage1D, + glCompressedTexSubImage2D or glCompressedTexSubImage1D. + + + pname is a symbolic constant indicating the parameter to be set, and + param is the new value. Six of the twelve storage parameters affect + how pixel data is returned to client memory. + They are as follows: + + + + GL_PACK_SWAP_BYTES + + + If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is stored in memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_PACK_SWAP_BYTES is true. + GL_PACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_PACK_SWAP_BYTES. + + + + + GL_PACK_LSB_FIRST + + + If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + + + + + GL_PACK_ROW_LENGTH + + + If greater than 0, + GL_PACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + + + + + + a + s + + + + + + + + s + + n + + l + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping + + + + + + k + = + + 8 + + a + + + + + + n + + l + + + + + 8 + + a + + + + + + + + + + components or indices. + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_PACK_IMAGE_HEIGHT + + + If greater than 0, + GL_PACK_IMAGE_HEIGHT defines the number of pixels in an image + three-dimensional texture volume, where ``image'' is defined by all pixels + sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + h + + + + + + + a + s + + + + + + + + s + + n + + l + + h + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, where + n + is the number of components or indices + in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, the + width + argument to glTexImage3D otherwise), + h + is the number of + rows in a pixel image (GL_PACK_IMAGE_HEIGHT if it is greater than + 0, the + height + argument to the glTexImage3D routine otherwise), + a + is the value of + GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single + component (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, and GL_PACK_SKIP_IMAGES + + + These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated simply by + incrementing the pointer passed to glReadPixels. + Setting GL_PACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_PACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + + m + + + components or indices, + where + m + is the number of components or indices per row, + as just computed in the GL_PACK_ROW_LENGTH section. + Setting GL_PACK_SKIP_IMAGES to + k + is equivalent to incrementing + the pointer by + + + + k + + p + + , + where + p + is the number of components or indices + per image, as computed in the GL_PACK_IMAGE_HEIGHT section. + + + + + GL_PACK_ALIGNMENT + + + Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). + + + + + + The other six of the twelve storage parameters affect how pixel data is + read from client memory. + These values are significant for + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D + + + They are as follows: + + + + GL_UNPACK_SWAP_BYTES + + + If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is taken from memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_UNPACK_SWAP_BYTES is true. + GL_UNPACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_UNPACK_SWAP_BYTES. + + + + + GL_UNPACK_LSB_FIRST + + + If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. + + + + + GL_UNPACK_ROW_LENGTH + + + If greater than 0, + GL_UNPACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + + + + + + a + s + + + + + + + + s + + n + + l + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping + + + + + + k + = + + 8 + + a + + + + + + n + + l + + + + + 8 + + a + + + + + + + + + + components or indices. + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_UNPACK_IMAGE_HEIGHT + + + If greater than 0, + GL_UNPACK_IMAGE_HEIGHT defines the number of pixels in an image of + a three-dimensional texture volume. Where ``image'' is defined by all + pixel sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping + + + + + + k + = + + + + + + n + + l + + h + + + + + + + a + s + + + + + + + + s + + n + + l + + h + + + a + + + + + + + + + + s + >= + a + + + + + s + < + a + + + + + + + + + + components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to glTexImage3D otherwise), + h + is the number of rows in an image (GL_UNPACK_IMAGE_HEIGHT if + it is greater than 0, the + height + argument to glTexImage3D otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + + + The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. + + + + + GL_UNPACK_SKIP_PIXELS and GL_UNPACK_SKIP_ROWS + + + These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated by + incrementing the pointer passed to + glTexImage1D, + glTexImage2D, + glTexSubImage1D or + glTexSubImage2D. + Setting GL_UNPACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_UNPACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + + k + + + components or indices, + where + k + is the number of components or indices per row, + as just computed in the GL_UNPACK_ROW_LENGTH section. + + + + + GL_UNPACK_ALIGNMENT + + + Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). + + + + + + The following table gives the type, + initial value, + and range of valid values for each storage parameter + that can be set with glPixelStore. + + + + + + + + + + + + + pname + + + Type + + + Initial Value + + + Valid Range + + + + + + + GL_PACK_SWAP_BYTES + + + boolean + + + false + + + true or false + + + + + GL_PACK_LSB_FIRST + + + boolean + + + false + + + true or false + + + + + GL_PACK_ROW_LENGTH + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_IMAGE_HEIGHT + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_ROWS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_PIXELS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_SKIP_IMAGES + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_PACK_ALIGNMENT + + + integer + + + 4 + + + 1, 2, 4, or 8 + + + + + GL_UNPACK_SWAP_BYTES + + + boolean + + + false + + + true or false + + + + + GL_UNPACK_LSB_FIRST + + + boolean + + + false + + + true or false + + + + + GL_UNPACK_ROW_LENGTH + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_IMAGE_HEIGHT + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_ROWS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_PIXELS + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_SKIP_IMAGES + + + integer + + + 0 + + + + + + 0 + + + + + + + + GL_UNPACK_ALIGNMENT + + + integer + + + 4 + + + 1, 2, 4, or 8 + + + + + + + glPixelStoref can be used to set any pixel store parameter. + If the parameter type is boolean, + then if param is 0, + the parameter is false; + otherwise it is set to true. + If pname is a integer type parameter, + param is rounded to the nearest integer. + + + Likewise, glPixelStorei can also be used to set any of the + pixel store parameters. + Boolean parameters are set to false if param is 0 and true otherwise. + + + Errors + + GL_INVALID_ENUM is generated if pname is not an accepted value. + + + GL_INVALID_VALUE is generated if a negative row length, + pixel skip, + or row skip value is specified, + or if alignment is specified as other than 1, 2, 4, or 8. + + + Associated Gets + + glGet with argument GL_PACK_SWAP_BYTES + + + glGet with argument GL_PACK_LSB_FIRST + + + glGet with argument GL_PACK_ROW_LENGTH + + + glGet with argument GL_PACK_IMAGE_HEIGHT + + + glGet with argument GL_PACK_SKIP_ROWS + + + glGet with argument GL_PACK_SKIP_PIXELS + + + glGet with argument GL_PACK_SKIP_IMAGES + + + glGet with argument GL_PACK_ALIGNMENT + + + glGet with argument GL_UNPACK_SWAP_BYTES + + + glGet with argument GL_UNPACK_LSB_FIRST + + + glGet with argument GL_UNPACK_ROW_LENGTH + + + glGet with argument GL_UNPACK_IMAGE_HEIGHT + + + glGet with argument GL_UNPACK_SKIP_ROWS + + + glGet with argument GL_UNPACK_SKIP_PIXELS + + + glGet with argument GL_UNPACK_SKIP_IMAGES + + + glGet with argument GL_UNPACK_ALIGNMENT + + + See Also + + glReadPixels, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage1D. + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glPointParameter.xml b/upstream-man-pages/man4/glPointParameter.xml new file mode 100644 index 0000000..d18d494 --- /dev/null +++ b/upstream-man-pages/man4/glPointParameter.xml @@ -0,0 +1,162 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPointParameter + 3G + + + glPointParameter + specify point parameters + + C Specification + + + void glPointParameterf + GLenum pname + GLfloat param + + + + + + void glPointParameteri + GLenum pname + GLint param + + + + + Parameters + + + pname + + + Specifies a single-valued point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. + + + + + param + + + Specifies the value that pname will be set to. + + + + + + C Specification + + + void glPointParameterfv + GLenum pname + const GLfloat * params + + + + + + void glPointParameteriv + GLenum pname + const GLint * params + + + + Parameters + + + pname + + + Specifies a point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. + + + + + params + + + Specifies the value to be assigned to pname.. + + + + + + Description + + The following values are accepted for pname: + + + + GL_POINT_FADE_THRESHOLD_SIZE + + + + + params is a single floating-point value that specifies the threshold value + to which point sizes are clamped if they exceed the specified value. The + default value is 1.0. + + + + + GL_POINT_SPRITE_COORD_ORIGIN + + + + + params is a single enum specifying the point sprite texture coordinate origin, either GL_LOWER_LEFT or GL_UPPER_LEFT. + The default value is GL_UPPER_LEFT. + + + + + + Errors + + GL_INVALID_VALUE is generated if the value specified for + GL_POINT_FADE_THRESHOLD_SIZE is less than zero. + + + GL_INVALID_ENUM is generated If the value specified for + GL_POINT_SPRITE_COORD_ORIGIN is not GL_LOWER_LEFT or GL_UPPER_LEFT. + + + Associated Gets + + glGet with argument GL_POINT_FADE_THRESHOLD_SIZE + + + glGet with argument GL_POINT_SPRITE_COORD_ORIGIN + + + See Also + + glPointSize + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. Copyright 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glPointSize.xml b/upstream-man-pages/man4/glPointSize.xml new file mode 100644 index 0000000..77dcecb --- /dev/null +++ b/upstream-man-pages/man4/glPointSize.xml @@ -0,0 +1,97 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPointSize + 3G + + + glPointSize + specify the diameter of rasterized points + + C Specification + + + void glPointSize + GLfloat size + + + + + Parameters + + + size + + + Specifies the diameter of rasterized points. + The initial value is 1. + + + + + + Description + + glPointSize specifies the rasterized diameter of points. If point size mode + is disabled (see glEnable with parameter + GL_PROGRAM_POINT_SIZE), this value will be used to rasterize points. Otherwise, + the value written to the shading language built-in variable gl_PointSize will be used. + + + Notes + + The point size specified by glPointSize is always returned when + GL_POINT_SIZE is queried. Clamping and rounding for points have no effect on the specified value. + + + Errors + + GL_INVALID_VALUE is generated if size is less than or equal to 0. + + + Associated Gets + + glGet with argument GL_POINT_SIZE_RANGE + + + glGet with argument GL_POINT_SIZE_GRANULARITY + + + glGet with argument GL_POINT_SIZE + + + glGet with argument GL_POINT_SIZE_MIN + + + glGet with argument GL_POINT_SIZE_MAX + + + glGet with argument GL_POINT_FADE_THRESHOLD_SIZE + + + glIsEnabled with argument GL_PROGRAM_POINT_SIZE + + + See Also + + glEnable, + glPointParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glPolygonMode.xml b/upstream-man-pages/man4/glPolygonMode.xml new file mode 100644 index 0000000..0705c41 --- /dev/null +++ b/upstream-man-pages/man4/glPolygonMode.xml @@ -0,0 +1,147 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonMode + 3G + + + glPolygonMode + select a polygon rasterization mode + + C Specification + + + void glPolygonMode + GLenum face + GLenum mode + + + + Parameters + + + face + + + Specifies the polygons that mode applies to. + Must be GL_FRONT_AND_BACK for front- and back-facing polygons. + + + + + mode + + + Specifies how polygons will be rasterized. + Accepted values are + GL_POINT, + GL_LINE, and + GL_FILL. + The initial value is GL_FILL for both front- and back-facing polygons. + + + + + + Description + + glPolygonMode controls the interpretation of polygons for rasterization. + face describes which polygons mode applies to: + both front and back-facing polygons (GL_FRONT_AND_BACK). + The polygon mode affects only the final rasterization of polygons. + In particular, + a polygon's vertices are lit and + the polygon is clipped and possibly culled before these modes are applied. + + + Three modes are defined and can be specified in mode: + + + + GL_POINT + + + Polygon vertices that are marked as the start of a boundary edge + are drawn as points. + Point attributes such as + GL_POINT_SIZE and + GL_POINT_SMOOTH control + the rasterization of the points. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. + + + + + GL_LINE + + + Boundary edges of the polygon are drawn as line segments. + Line attributes such as + GL_LINE_WIDTH and + GL_LINE_SMOOTH control + the rasterization of the lines. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. + + + + + GL_FILL + + + The interior of the polygon is filled. + Polygon attributes such as GL_POLYGON_SMOOTH control the rasterization of the polygon. + + + + + + Examples + + To draw a surface with outlined polygons, + call + +glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); + + + + Notes + + Vertices are marked as boundary or nonboundary with an edge flag. + Edge flags are generated internally by the GL when it decomposes + triangle stips and fans. + + + Errors + + GL_INVALID_ENUM is generated if either face or mode is not + an accepted value. + + + Associated Gets + + glGet with argument GL_POLYGON_MODE + + + See Also + + glLineWidth, + glPointSize + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glPolygonOffset.xml b/upstream-man-pages/man4/glPolygonOffset.xml new file mode 100644 index 0000000..c93623c --- /dev/null +++ b/upstream-man-pages/man4/glPolygonOffset.xml @@ -0,0 +1,120 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glPolygonOffset + 3G + + + glPolygonOffset + set the scale and units used to calculate depth values + + C Specification + + + void glPolygonOffset + GLfloat factor + GLfloat units + + + + + Parameters + + + factor + + + Specifies a scale factor that is used to create a variable + depth offset for each polygon. The initial value is 0. + + + + + units + + + Is multiplied by an implementation-specific value to + create a constant depth offset. The initial value is 0. + + + + + + Description + + When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or + GL_POLYGON_OFFSET_POINT is enabled, each + fragment's depth value will be offset after it is interpolated + from the depth values of the appropriate vertices. + The value of the offset is + + + + + factor + × + DZ + + + + + r + × + units + + + , + where + + + DZ + + is a measurement of the change in depth relative to the screen + area of the polygon, and + r + is the smallest value that is guaranteed to + produce a resolvable offset for a given implementation. + The offset is added before the depth test is performed and before + the value is written into the depth buffer. + + + glPolygonOffset is useful for rendering hidden-line images, for applying decals + to surfaces, and for rendering solids with highlighted edges. + + + Associated Gets + + glIsEnabled with argument + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + or GL_POLYGON_OFFSET_POINT. + + + glGet with argument GL_POLYGON_OFFSET_FACTOR or + GL_POLYGON_OFFSET_UNITS. + + + See Also + + glDepthFunc, + glEnable, + glGet, + glIsEnabled + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glPopDebugGroup.xml b/upstream-man-pages/man4/glPopDebugGroup.xml new file mode 100644 index 0000000..6ed3429 --- /dev/null +++ b/upstream-man-pages/man4/glPopDebugGroup.xml @@ -0,0 +1,67 @@ + + + + + + + 2012 + Khronos Group + + + glPopDebugGroup + 3G + + + glPopDebugGroup + pop the active debug group + + C Specification + + + void glPopDebugGroup + void + + + + Description + + glPopDebugGroup pops the active debug group. + After popping a debug group, the GL will also generate a debug + output message describing its cause based on the message + string, the source source, and an ID id + submitted to the corresponding glPushDebugGroup + command. GL_DEBUG_TYPE_PUSH_GROUP and GL_DEBUG_TYPE_POP_GROUP + share a single namespace for message id. + severity has the value GL_DEBUG_SEVERITY_NOTIFICATION. The type + has the value GL_DEBUG_TYPE_POP_GROUP. Popping a debug group restores + the debug output volume control of the parent debug group. + + + Errors + + GL_STACK_UNDERFLOW is generated if an attempt is made to pop the default debug + group from the stack. + + + Associated Gets + + glGet with argument GL_MAX_DEBUG_MESSAGE_LENGTH. + + + See Also + + glPushDebugGroup, + glObjectLabel, + glObjectPtrLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glPrimitiveRestartIndex.xml b/upstream-man-pages/man4/glPrimitiveRestartIndex.xml new file mode 100644 index 0000000..1d8427c --- /dev/null +++ b/upstream-man-pages/man4/glPrimitiveRestartIndex.xml @@ -0,0 +1,80 @@ + + + + + + + 2010 + Khronos Group + + + glPrimitiveRestartIndex + 3G + + + glPrimitiveRestartIndex + specify the primitive restart index + + C Specification + + + void glPrimitiveRestartIndex + GLuint index + + + + Parameters + + + index + + + Specifies the value to be interpreted as the primitive restart index. + + + + + + Description + + glPrimitiveRestartIndex specifies a vertex array element that is treated specially when + primitive restarting is enabled. This is known as the primitive restart index. + + + When one of the Draw* commands transfers a set of generic attribute array elements to + the GL, if the index within the vertex arrays corresponding to that set is equal to the primitive restart + index, then the GL does not process those elements as a vertex. Instead, it is as if the drawing command + ended with the immediately preceding transfer, and another drawing command is immediately started with + the same parameters, but only transferring the immediately following element through the end of the + originally specified elements. + + + When either glDrawElementsBaseVertex, + glDrawElementsInstancedBaseVertex or + glMultiDrawElementsBaseVertex is used, the primitive restart + comparison occurs before the basevertex offset is added to the array index. + + + Notes + + glPrimitiveRestartIndex is available only if the GL version is 3.1 or greater. + + + See Also + + glDrawArrays, + glDrawElements, + glDrawElementsBaseVertex, + glDrawElementsInstancedBaseVertex + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glProgramBinary.xml b/upstream-man-pages/man4/glProgramBinary.xml new file mode 100644 index 0000000..5bb94f9 --- /dev/null +++ b/upstream-man-pages/man4/glProgramBinary.xml @@ -0,0 +1,138 @@ + + + + + + + 2010 + Khronos Group + + + glProgramBinary + 3G + + + glProgramBinary + load a program object with a program binary + + C Specification + + + void glProgramBinary + GLuint program + GLenum binaryFormat + const void *binary + GLsizei length + + + + Parameters + + + program + + + Specifies the name of a program object into which to load a program binary. + + + + + binaryFormat + + + Specifies the format of the binary data in binary. + + + + + binary + + + Specifies the address an array containing the binary to be loaded into program. + + + + + length + + + Specifies the number of bytes contained in binary. + + + + + + Description + + glProgramBinary loads a program object with a program binary previously + returned from glGetProgramBinary. + binaryFormat and binary must be those returned + by a previous call to glGetProgramBinary, + and length must be the length returned by + glGetProgramBinary, or by + glGetProgram when called with + pname set to GL_PROGRAM_BINARY_LENGTH. + If these conditions are not met, loading the program binary will fail and program's + GL_LINK_STATUS will be set to GL_FALSE. + + + A program object's program binary is replaced by calls to + glLinkProgram or + glProgramBinary. When linking success or failure is concerned, glProgramBinary + can be considered to perform an implicit linking operation. + glLinkProgram and glProgramBinary + both set the program object's GL_LINK_STATUS to GL_TRUE + or GL_FALSE. + + + A successful call to glProgramBinary will reset all uniform variables to their + initial values. The initial value is either the value of the variable's initializer as specified in the + original shader source, or zero if no initializer was present. Additionally, all vertex shader input + and fragment shader output assignments that were in effect when the program was linked before saving are + restored with glProgramBinary is called. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the + name of an existing program object. + + + GL_INVALID_ENUM is generated if binaryFormat is not a + value recognized by the implementation. + + + Notes + + A program binary may fail to load if the implementation determines that there has been a + change in hardware or software configuration from when the program binary was produced such + as having been compiled with an incompatible or outdated version of the compiler. + + + Associated Gets + + glGetProgram with argument GL_PROGRAM_BINARY_LENGTH + + + glGet with argument GL_NUM_PROGRAM_BINARY_FORMATS + + + glGet with argument GL_PROGRAM_BINARY_FORMATS + + + See Also + + glGetProgram, + glGetProgramBinary + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glProgramParameter.xml b/upstream-man-pages/man4/glProgramParameter.xml new file mode 100644 index 0000000..183bbd9 --- /dev/null +++ b/upstream-man-pages/man4/glProgramParameter.xml @@ -0,0 +1,118 @@ + + + + + + + 2010 + Khronos Group + + + glProgramParameter + 3G + + + glProgramParameter + specify a parameter for a program object + + C Specification + + + void glProgramParameteri + GLuint program + GLenum pname + GLint value + + + + Parameters + + + program + + + Specifies the name of a program object whose parameter to modify. + + + + + pname + + + Specifies the name of the parameter to modify. + + + + + value + + + Specifies the new value of the parameter specified by pname for program. + + + + + + Description + + glProgramParameter specifies a new value for the parameter nameed by + pname for the program object program. + + + If pname is GL_PROGRAM_BINARY_RETRIEVABLE_HINT, + value should be GL_FALSE or GL_TRUE + to indicate to the implementation the intention of the application to retrieve the program's + binary representation with glGetProgramBinary. + The implementation may use this information to store information that may be useful for a future + query of the program's binary. It is recommended to set GL_PROGRAM_BINARY_RETRIEVABLE_HINT + for the program to GL_TRUE before calling + glLinkProgram, and + using the program at run-time if the binary is to be retrieved later. + + + If pname is GL_PROGRAM_SEPARABLE, value + must be GL_TRUE or GL_FALSE and indicates whether + program can be bound to individual pipeline stages via + glUseProgramStages. A program's + GL_PROGRAM_SEPARABLE parameter must be set to GL_TRUE + before glLinkProgram + is called in order for it to be usable with a program pipeline object. The initial state of + GL_PROGRAM_SEPARABLE is GL_FALSE. + + + Errors + + GL_INVALID_OPERATION is generated if program is not the + name of an existing program object. + + + GL_INVALID_ENUM is generated if pname is not one + of the accepted values. + + + GL_INVALID_VALUE is generated if value is not a valid + value for the parameter named by pname. + + + Associated Gets + + glGetProgram. + + + See Also + + glGetProgram, + glGetProgramBinary, + glProgramBinary + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glProgramUniform.xml b/upstream-man-pages/man4/glProgramUniform.xml new file mode 100644 index 0000000..41024a5 --- /dev/null +++ b/upstream-man-pages/man4/glProgramUniform.xml @@ -0,0 +1,611 @@ + + + + + glProgramUniform + 3G + + + glProgramUniform + glProgramUniform1f + glProgramUniform2f + glProgramUniform3f + glProgramUniform4f + glProgramUniform1i + glProgramUniform2i + glProgramUniform3i + glProgramUniform4i + glProgramUniform1ui + glProgramUniform2ui + glProgramUniform3ui + glProgramUniform4ui + glProgramUniform1fv + glProgramUniform2fv + glProgramUniform3fv + glProgramUniform4fv + glProgramUniform1iv + glProgramUniform2iv + glProgramUniform3iv + glProgramUniform4iv + glProgramUniform1uiv + glProgramUniform2uiv + glProgramUniform3uiv + glProgramUniform4uiv + glProgramUniformMatrix2fv + glProgramUniformMatrix3fv + glProgramUniformMatrix4fv + glProgramUniformMatrix2x3fv + glProgramUniformMatrix3x2fv + glProgramUniformMatrix2x4fv + glProgramUniformMatrix4x2fv + glProgramUniformMatrix3x4fv + glProgramUniformMatrix4x3fv + Specify the value of a uniform variable for a specified program object + + C Specification + + + void glProgramUniform1f + GLuint program + GLint location + GLfloat v0 + + + void glProgramUniform2f + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + + + void glProgramUniform3f + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glProgramUniform4f + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glProgramUniform1i + GLuint program + GLint location + GLint v0 + + + void glProgramUniform2i + GLuint program + GLint location + GLint v0 + GLint v1 + + + void glProgramUniform3i + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + + + void glProgramUniform4i + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glProgramUniform1ui + GLuint program + GLint location + GLuint v0 + + + void glProgramUniform2ui + GLuint program + GLint location + GLint v0 + GLuint v1 + + + void glProgramUniform3ui + GLuint program + GLint location + GLint v0 + GLint v1 + GLuint v2 + + + void glProgramUniform4ui + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + GLuint v3 + + + + Parameters + + + program + + Specifies the handle of the program containing the uniform + variable to be modified. + + + + location + + Specifies the location of the uniform variable + to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified uniform variable. + + + + + C Specification + + + void glProgramUniform1fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform2fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform3fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform4fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform1iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform2iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform3iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform4iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform1uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform2uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform3uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform4uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + + Parameters + + + program + + Specifies the handle of the program containing the uniform + variable to be modified. + + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + C Specification + + + void glProgramUniformMatrix2fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix3fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix4fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix2x3fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix3x2fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix2x4fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix4x2fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix3x4fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix4x3fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + Parameters + + + program + + Specifies the handle of the program containing the uniform + variable to be modified. + + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices. + + + + transpose + + Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + Description + glProgramUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glProgramUniform operates on the program object + specified by program. + + The commands glProgramUniform{1|2|3|4}{f|i|ui} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, unsigned int, bool; + 2 for vec2, ivec2, uvec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed; the suffix ui indicates that + unsigned integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The + ui variants of this function should be used + to provide values for uniform variables defined as unsigned int, uvec2, + uvec3, uvec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i, ui or f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise. + + All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glProgramUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0. + + The commands glProgramUniform{1|2|3|4}{f|i|ui}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glProgramUniform{1|2|3|4}{f|i|ui}. + + For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glProgramUniform3f or + glProgramUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count + + The commands + glProgramUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices. + + Notes + glProgramUniform1i and + glProgramUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error. + + If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged. + + Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged. + + If location is a value other than + -1 and it does not represent a valid uniform variable location + in within program, an error will be generated, and + no changes will be made to the uniform variable storage of + program. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed. + + Errors + GL_INVALID_OPERATION is generated if + program does not refer to a program object owned + by the GL. + + GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glProgramUniform + command. + + GL_INVALID_OPERATION is generated if one of + the signed or unsigned integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, + ivec4, unsigned int, uvec2, uvec3, + uvec4, or an array of these. + + GL_INVALID_OPERATION is generated if one of + the signed integer variants of this function is used to load a uniform + variable of type unsigned int, uvec2, uvec3, + uvec4, or an array of these. + + GL_INVALID_OPERATION is generated if one of + the unsigned integer variants of this function is used to load a uniform + variable of type int, ivec2, ivec3, + ivec4, or an array of these. + + GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for program and + location is not equal to -1. + + GL_INVALID_VALUE is generated if + count is less than 0. + + GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable. + + GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glProgramUniform1i and + glProgramUniform1iv. + + + Associated Gets + glGetActiveUniform + with the handle of a program object and the index of an active uniform variable + + glGetUniform + with the handle of a program object and the location of a + uniform variable + + glGetUniformLocation + with the handle of a program object and the name of a uniform + variable + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glProvokingVertex.xml b/upstream-man-pages/man4/glProvokingVertex.xml new file mode 100644 index 0000000..5cb2d9b --- /dev/null +++ b/upstream-man-pages/man4/glProvokingVertex.xml @@ -0,0 +1,220 @@ + + + + + + + 2010 + Khronos Group + + + glProvokingVertex + 3G + + + glProvokingVertex + specifiy the vertex to be used as the source of data for flat shaded varyings + + C Specification + + + void glProvokingVertex + GLenum provokeMode + + + + + Parameters + + + provokeMode + + + Specifies the vertex to be used as the source of data for flat shaded varyings. + + + + + + Description + + Flatshading a vertex shader varying output means to assign all vetices of the primitive the same value + for that output. The vertex from which these values is derived is known as the provoking vertex and + glProvokingVertex specifies which vertex is to be used as the source of data for flat shaded varyings. + + + provokeMode must be either GL_FIRST_VERTEX_CONVENTION or + GL_LAST_VERTEX_CONVENTION, and controls the selection of the vertex whose values are assigned to flatshaded + varying outputs. The interpretation of these values for the supported primitive types is: + + + + + + + + + Primitive Type of Polygon i + + + First Vertex Convention + + + Last Vertex Convention + + + + + point + + + i + + + i + + + + + independent line + + + 2i - 1 + + + 2i + + + + + line loop + + + i + + + + i + 1, if i < n + + + 1, if i = n + + + + + + line strip + + + i + + + i + 1 + + + + + independent triangle + + + 3i - 2 + + + 3i + + + + + triangle strip + + + i + + + i + 2 + + + + + triangle fan + + + i + 1 + + + i + 2 + + + + + line adjacency + + + 4i - 2 + + + 4i - 1 + + + + + line strip adjacency + + + i + 1 + + + i + 2 + + + + + triangle adjacency + + + 6i - 5 + + + 6i - 1 + + + + + triangle strip adjacency + + + 2i - 1 + + + 2i + 3 + + + + + + + + If a vertex or geometry shader is active, user-defined varying outputs may be flatshaded by using the + flat qualifier when declaring the output. + + + Notes + + glProvokingVertex is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_ENUM is generated if provokeMode is not an accepted value. + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glPushDebugGroup.xml b/upstream-man-pages/man4/glPushDebugGroup.xml new file mode 100644 index 0000000..3acd484 --- /dev/null +++ b/upstream-man-pages/man4/glPushDebugGroup.xml @@ -0,0 +1,115 @@ + + + + + + + 2012 + Khronos Group + + + glPushDebugGroup + 3G + + + glPushDebugGroup + push a named debug group into the command stream + + C Specification + + + void glPushDebugGroup + GLenum source + GLuint id + GLsizei length + const char * message + + + + Parameters + + + source + + + The source of the debug message. + + + + + id + + + The identifier of the message. + + + + + length + + + The length of the message to be sent to the debug output stream. + + + + + message + + + The a string containing the message to be sent to the debug output stream. + + + + + + Description + + glPushDebugGroup pushes a debug group described by the string + message into the command stream. The value of + id specifies the ID of messages generated. The parameter + length contains the number of characters in message. + If length is negative, it is implied that message + contains a null terminated string. The message has the specified source + and id, the type GL_DEBUG_TYPE_PUSH_GROUP, and severity + GL_DEBUG_SEVERITY_NOTIFICATION. The GL will put a new debug group + on top of the debug group stack which inherits the control of the + volume of debug output of the debug group previously residing on the + top of the debug group stack. Because debug groups are strictly + hierarchical, any additional control of the debug output volume will + only apply within the active debug group and the debug groups pushed + on top of the active debug group. + + + Errors + + GL_INVALID_ENUM is generated if the value of source is + neither GL_DEBUG_SOURCE_APPLICATION nor GL_DEBUG_SOURCE_THIRD_PARTY. + + + GL_INVALID_VALUE is generated if length is negative + and the number of characters in message, excluding the null-terminator, + is not less than the value of GL_MAX_DEBUG_MESSAGE_LENGTH. + + + Associated Gets + + glGet with argument GL_MAX_DEBUG_MESSAGE_LENGTH. + + + See Also + + glPopDebugGroup, + glObjectLabel, + glObjectPtrLabel. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glQueryCounter.xml b/upstream-man-pages/man4/glQueryCounter.xml new file mode 100644 index 0000000..1f1f676 --- /dev/null +++ b/upstream-man-pages/man4/glQueryCounter.xml @@ -0,0 +1,96 @@ + + + + + + + 2010 + Khronos Group + + + glQueryCounter + 3G + + + glQueryCounter + record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed. + + C Specification + + + void glQueryCounter + GLuint id + GLenum target + + + + Parameters + + + id + + + Specify the name of a query object into which to record the GL time. + + + + + target + + + Specify the counter to query. target must be GL_TIMESTAMP. + + + + + + Description + + glQueryCounter causes the GL to record the current time into the query object named id. + target must be GL_TIMESTAMP. The time is recorded after all previous commands on the + GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object + is marked available. glQueryCounter timer queries can be used within a glBeginQuery / + glEndQuery block where the target is GL_TIME_ELAPSED and it does + not affect the result of that query object. + + + Notes + + glQueryCounter is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_OPERATION is generated if id is the name + of a query object that is already in use within a glBeginQuery / + glEndQuery block. + + + GL_INVALID_VALUE is generated if id is not the name of a query object returned + from a previous call to glGenQueries. + + + GL_INVALID_ENUM is generated if target is not GL_TIMESTAMP. + + + See Also + + glGenQueries, + glBeginQuery, + glEndQuery, + glDeleteQueries, + glGetQueryObject, + glGetQueryiv, + glGet + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glReadBuffer.xml b/upstream-man-pages/man4/glReadBuffer.xml new file mode 100644 index 0000000..9c871b4 --- /dev/null +++ b/upstream-man-pages/man4/glReadBuffer.xml @@ -0,0 +1,115 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glReadBuffer + 3G + + + glReadBuffer + select a color buffer source for pixels + + C Specification + + + void glReadBuffer + GLenum mode + + + + Parameters + + + mode + + + Specifies a color buffer. + Accepted values are + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and the constants + GL_COLOR_ATTACHMENTi. + + + + + + Description + + glReadBuffer specifies a color buffer as the source for subsequent + glReadPixels, glCopyTexImage1D, glCopyTexImage2D, + glCopyTexSubImage1D, glCopyTexSubImage2D, and + glCopyTexSubImage3D commands. + mode accepts one of twelve or more predefined values. + In a fully configured system, + GL_FRONT, + GL_LEFT, and + GL_FRONT_LEFT all name the front left buffer, + GL_FRONT_RIGHT and + GL_RIGHT name the front right buffer, and + GL_BACK_LEFT and + GL_BACK name the back left buffer. + Further more, the constants GL_COLOR_ATTACHMENTi may be used to indicate the + ith color attachment where i ranges from zero to the + value of GL_MAX_COLOR_ATTACHMENTS minus one. + + + Nonstereo double-buffered configurations have only a front left and a + back left buffer. + Single-buffered configurations have a front left and a front right + buffer if stereo, and only a front left buffer if nonstereo. + It is an error to specify a nonexistent buffer to glReadBuffer. + + + mode is initially GL_FRONT in single-buffered configurations + and GL_BACK in double-buffered configurations. + + + Errors + + GL_INVALID_ENUM is generated if mode is not one of the twelve + (or more) accepted values. + + + GL_INVALID_OPERATION is generated if mode specifies a buffer + that does not exist. + + + Associated Gets + + glGet with argument GL_READ_BUFFER + + + See Also + + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glDrawBuffer, + glReadPixels + + + Copyright + + Copyright 1991-2006 Silicon Graphics, Inc. + Copyright 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glReadPixels.xml b/upstream-man-pages/man4/glReadPixels.xml new file mode 100644 index 0000000..798a87e --- /dev/null +++ b/upstream-man-pages/man4/glReadPixels.xml @@ -0,0 +1,1188 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glReadPixels + 3G + + + glReadPixels + read a block of pixels from the frame buffer + + C Specification + + + void glReadPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLvoid * data + + + + + Parameters + + + x + y + + + Specify the window coordinates of the first pixel + that is read from the frame buffer. + This location is the lower left corner of a rectangular block of pixels. + + + + + width + height + + + Specify the dimensions of the pixel rectangle. + width and height of one correspond to a single pixel. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + Must be one of + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, or + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + + + data + + + Returns the pixel data. + + + + + + Description + + glReadPixels returns pixel data from the frame buffer, + starting with the pixel whose lower left corner + is at location (x, y), + into client memory starting at location data. + Several parameters control the processing of the pixel data before + it is placed into client memory. + These parameters are set with glPixelStore. + This reference page describes the effects on glReadPixels of most, + but not all of the parameters specified by these three commands. + + + If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a block of pixels is + requested, data is treated as a byte offset into the buffer object's data store + rather than a pointer to client memory. + + + glReadPixels returns values from each pixel with lower left corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are returned in row order from the lowest to the highest row, + left to right in each row. + + + format specifies the format for the returned pixel values; + accepted values are: + + + + GL_STENCIL_INDEX + + + Stencil values are read from the stencil buffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_S_TO_S. + + + + + GL_DEPTH_COMPONENT + + + Depth values are read from the depth buffer. + Each component is converted to floating point such that the minimum depth + value maps to 0 and the maximum value maps to 1. + Each component is then multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + and finally clamped to the range + + + + 0 + 1 + + . + + + + + GL_DEPTH_STENCIL + + + Values are taken from both the depth and stencil buffers. The type parameter + must be GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + + + GL_RED + + + + + GL_GREEN + + + + + GL_BLUE + + + + + GL_RGB + + + + + GL_BGR + + + + + GL_RGBA + + + + + GL_BGRA + + + + + + Finally, the indices or components + are converted to the proper format, + as specified by type. + If format is GL_STENCIL_INDEX + and type is not GL_FLOAT, + each index is masked with the mask value given in the following table. + If type is GL_FLOAT, then each integer index is converted to + single-precision floating-point format. + + + If format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, or + GL_BGRA and type is not GL_FLOAT, + each component is multiplied by the multiplier shown in the following table. + If type is GL_FLOAT, then each component is passed as is + (or converted to the client's single-precision floating-point format if + it is different from the one used by the GL). + + + + + + + + + + + + type + + + Index Mask + + + Component Conversion + + + + + + + GL_UNSIGNED_BYTE + + + + + + 2 + 8 + + - + 1 + + + + + + + + + + 2 + 8 + + - + 1 + + + + c + + + + + + + GL_BYTE + + + + + + 2 + 7 + + - + 1 + + + + + + + + + + + + 2 + 8 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_UNSIGNED_SHORT + + + + + + 2 + 16 + + - + 1 + + + + + + + + + + 2 + 16 + + - + 1 + + + + c + + + + + + + GL_SHORT + + + + + + 2 + 15 + + - + 1 + + + + + + + + + + + + 2 + 16 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_UNSIGNED_INT + + + + + + 2 + 32 + + - + 1 + + + + + + + + + + 2 + 32 + + - + 1 + + + + c + + + + + + + GL_INT + + + + + + 2 + 31 + + - + 1 + + + + + + + + + + + + 2 + 32 + + - + 1 + + + + c + - + 1 + + + 2 + + + + + + + GL_HALF_FLOAT + + + none + + + c + + + + + GL_FLOAT + + + none + + + c + + + + + GL_UNSIGNED_BYTE_3_3_2 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_BYTE_2_3_3_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_5_6_5 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_5_6_5_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_4_4_4_4 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_4_4_4_4_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_5_5_5_1 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_SHORT_1_5_5_5_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_8_8_8_8 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_8_8_8_8_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_10_10_10_2 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_2_10_10_10_REV + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_24_8 + + + + + + 2 + N + + - + 1 + + + + + + + + + + 2 + N + + - + 1 + + + + c + + + + + + + GL_UNSIGNED_INT_10F_11F_11F_REV + + + -- + + + Special + + + + + GL_UNSIGNED_INT_5_9_9_9_REV + + + -- + + + Special + + + + + GL_FLOAT_32_UNSIGNED_INT_24_8_REV + + + none + + + c (Depth Only) + + + + + + + Return values are placed in memory as follows. + If format is + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, or + GL_BLUE, + a single value is returned and the data for the + ith + pixel in the + jth + row + is placed in location + + + + + j + + + width + + + i + + . + GL_RGB and GL_BGR return three values, + GL_RGBA and GL_BGRA return four values for each pixel, + with all values corresponding to a single pixel occupying contiguous space + in data. + Storage parameters set by glPixelStore, + such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, + affect the way that data is written into memory. + See glPixelStore for a description. + + + Notes + + Values for pixels that lie outside the window + connected to the current GL context are undefined. + + + If an error is generated, + no change is made to the contents of data. + + + Errors + + GL_INVALID_ENUM is generated if format or type is not an + accepted value. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. + + + GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT + and there is no depth buffer. + + + GL_INVALID_OPERATION is generated if format is GL_DEPTH_STENCIL + and there is no depth buffer or if there is no stencil buffer. + + + GL_INVALID_ENUM is generated if format is GL_DEPTH_STENCIL + and type is not GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_OPERATION is generated if GL_READ_FRAMEBUFFER_BINDING + is non-zero, the read framebuffer is complete, and the value of GL_SAMPLE_BUFFERS + for the read framebuffer is greater than zero. + + + Associated Gets + + glGet with argument GL_INDEX_MODE + + + glGet with argument GL_PIXEL_PACK_BUFFER_BINDING + + + See Also + + glPixelStore, + glReadBuffer + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glReleaseShaderCompiler.xml b/upstream-man-pages/man4/glReleaseShaderCompiler.xml new file mode 100644 index 0000000..fdb6a1b --- /dev/null +++ b/upstream-man-pages/man4/glReleaseShaderCompiler.xml @@ -0,0 +1,49 @@ + + + + + + + 2010 + Khronos Group + + + glReleaseShaderCompiler + 3G + + + glReleaseShaderCompiler + release resources consumed by the implementation's shader compiler + + C Specification + + + void glReleaseShaderCompiler + void + + + + Description + + glReleaseShaderCompiler provides a hint to the implementation that it + may free internal resources associated with its shader compiler. glCompileShader + may subsequently be called and the implementation may at that time reallocate resources + previously freed by the call to glReleaseShaderCompiler. + + + See Also + + glCompileShader, + glLinkProgram + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glRenderbufferStorage.xml b/upstream-man-pages/man4/glRenderbufferStorage.xml new file mode 100644 index 0000000..6f4be1d --- /dev/null +++ b/upstream-man-pages/man4/glRenderbufferStorage.xml @@ -0,0 +1,118 @@ + + + + + + + 2010 + Khronos Group + + + glRenderbufferStorage + 3G + + + glRenderbufferStorage + establish data storage, format and dimensions of a renderbuffer object's image + + C Specification + + + void glRenderbufferStorage + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + + + + Parameters + + + target + + + Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. + + + + + internalformat + + + Specifies the internal format to use for the renderbuffer object's image. + + + + + width + + + Specifies the width of the renderbuffer, in pixels. + + + + + height + + + Specifies the height of the renderbuffer, in pixels. + + + + + + Description + + glRenderbufferStorage is equivalent to calling + glRenderbufferStorageMultisample with the + samples set to zero. + + + The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. + + + Upon success, glRenderbufferStorage deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorage are undefined. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. + + + GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. + + + GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glRenderbufferStorageMultisample, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glRenderbufferStorageMultisample.xml b/upstream-man-pages/man4/glRenderbufferStorageMultisample.xml new file mode 100644 index 0000000..563b136 --- /dev/null +++ b/upstream-man-pages/man4/glRenderbufferStorageMultisample.xml @@ -0,0 +1,136 @@ + + + + + + + 2010 + Khronos Group + + + glRenderbufferStorageMultisample + 3G + + + glRenderbufferStorageMultisample + establish data storage, format, dimensions and sample count of a renderbuffer object's image + + C Specification + + + void glRenderbufferStorageMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + + Parameters + + + target + + + Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. + + + + + samples + + + Specifies the number of samples to be used for the renderbuffer object's storage. + + + + + internalformat + + + Specifies the internal format to use for the renderbuffer object's image. + + + + + width + + + Specifies the width of the renderbuffer, in pixels. + + + + + height + + + Specifies the height of the renderbuffer, in pixels. + + + + + + Description + + glRenderbufferStorageMultisample establishes the data storage, format, dimensions and number of + samples of a renderbuffer object's image. + + + The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. samples specifies the number of samples to be used + for the renderbuffer object's image, and must be less than or equal to the value of GL_MAX_SAMPLES. + If internalformat is a signed or unsigned integer format then samples must be + less than or equal to the value of GL_MAX_INTEGER_SAMPLES. + + + Upon success, glRenderbufferStorageMultisample deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorageMultisample are undefined. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. + + + GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. + + + GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. + + + GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format + and samples is greater than the value of GL_MAX_INTEGER_SAMPLES + + + GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. + + + GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glRenderbufferStorage, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glResumeTransformFeedback.xml b/upstream-man-pages/man4/glResumeTransformFeedback.xml new file mode 100644 index 0000000..b688e96 --- /dev/null +++ b/upstream-man-pages/man4/glResumeTransformFeedback.xml @@ -0,0 +1,58 @@ + + + + + + + 2010 + Khronos Group + + + glResumeTransformFeedback + 3G + + + glResumeTransformFeedback + resume transform feedback operations + + C Specification + + + void glResumeTransformFeedback + void + + + + Description + + glResumeTransformFeedback resumes transform feedback operations on the currently active transform feedback + object. When transform feedback operations are paused, transform feedback is still considered active and changing most + transform feedback state related to the object results in an error. However, a new transform feedback object may be bound + while transform feedback is paused. + + + Errors + + GL_INVALID_OPERATION is generated if the currently bound transform feedback object is not active or is not paused. + + + See Also + + glGenTransformFeedbacks, + glBindTransformFeedback, + glBeginTransformFeedback, + glPauseTransformFeedback, + glEndTransformFeedback, + glDeleteTransformFeedbacks + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glSampleCoverage.xml b/upstream-man-pages/man4/glSampleCoverage.xml new file mode 100644 index 0000000..5ff6bf5 --- /dev/null +++ b/upstream-man-pages/man4/glSampleCoverage.xml @@ -0,0 +1,129 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glSampleCoverage + 3G + + + glSampleCoverage + specify multisample coverage parameters + + C Specification + + + void glSampleCoverage + GLfloat value + GLboolean invert + + + + + Parameters + + + value + + + Specify a single floating-point sample coverage value. The value is + clamped to the range + + + + 0 + 1 + + . + The initial value is 1.0. + + + + + invert + + + Specify a single boolean value representing if the coverage masks should be + inverted. GL_TRUE and GL_FALSE are accepted. The initial value + is GL_FALSE. + + + + + + Description + + Multisampling samples a pixel multiple times at various + implementation-dependent subpixel locations to generate antialiasing + effects. Multisampling transparently antialiases points, lines, polygons, + and images if it is enabled. + + + value is used in constructing a temporary mask used in determining which + samples will be used in resolving the final fragment color. This mask is + bitwise-anded with the coverage mask generated from the multisampling + computation. If the invert flag is set, the temporary mask is inverted + (all bits flipped) and then the bitwise-and is computed. + + + If an implementation does not have any multisample buffers available, or + multisampling is disabled, rasterization occurs with only a single sample + computing a pixel's final RGB color. + + + Provided an implementation supports multisample buffers, and multisampling + is enabled, then a pixel's final color is generated by combining several + samples per pixel. Each sample contains color, depth, and stencil + information, allowing those operations to be performed on each sample. + + + Notes + + The type of the value parameter was + changed from GLclampf to GLfloat. This change is transparent + to user code and is described in detail on the + removedTypes + page. + + + Associated Gets + + glGet with argument GL_SAMPLE_COVERAGE_VALUE + + + glGet with argument GL_SAMPLE_COVERAGE_INVERT + + + glIsEnabled with argument GL_MULTISAMPLE + + + glIsEnabled with argument GL_SAMPLE_ALPHA_TO_COVERAGE + + + glIsEnabled with argument GL_SAMPLE_ALPHA_TO_ONE + + + glIsEnabled with argument GL_SAMPLE_COVERAGE + + + See Also + + glEnable, + removedTypes + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glSampleMaski.xml b/upstream-man-pages/man4/glSampleMaski.xml new file mode 100644 index 0000000..53f9bc4 --- /dev/null +++ b/upstream-man-pages/man4/glSampleMaski.xml @@ -0,0 +1,88 @@ + + + + + + + 2010 + Khronos Group + + + glSampleMaski + 3G + + + glSampleMaski + set the value of a sub-word of the sample mask + + C Specification + + + void glSampleMaski + GLuint maskNumber + GLbitfield mask + + + + Parameters + + + maskNumber + + + Specifies which 32-bit sub-word of the sample mask to update. + + + + + mask + + + Specifies the new value of the mask sub-word. + + + + + + Description + + glSampleMaski sets one 32-bit sub-word of the multi-word sample mask, GL_SAMPLE_MASK_VALUE. + + + maskIndex specifies which 32-bit sub-word of the sample mask to update, and mask specifies + the new value to use for that sub-word. maskIndex must be less than the value of + GL_MAX_SAMPLE_MASK_WORDS. Bit B of mask word M corresponds to sample + 32 x M + B. + + + Notes + + glSampleMaski is available only if the GL version is 3.2 or greater, or if the ARB_texture_multisample + extension is supported. + + + Errors + + GL_INVALID_VALUE is generated if maskIndex is greater than or equal to the value + of GL_MAX_SAMPLE_MASK_WORDS. + + + See Also + + glGenRenderbuffers, + glBindRenderbuffer, + glRenderbufferStorageMultisample, + glFramebufferRenderbuffer, + glDeleteRenderbuffers + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glSamplerParameter.xml b/upstream-man-pages/man4/glSamplerParameter.xml new file mode 100644 index 0000000..072fcf2 --- /dev/null +++ b/upstream-man-pages/man4/glSamplerParameter.xml @@ -0,0 +1,1144 @@ + + + + + + + 2010 + KhronosGroup + + + glSamplerParameter + 3G + + + glSamplerParameter + set sampler parameters + + C Specification + + + void glSamplerParameterf + GLuint sampler + GLenum pname + GLfloat param + + + + + void glSamplerParameteri + GLuint sampler + GLenum pname + GLint param + + + + + Parameters + + + sampler + + + Specifies the sampler object whose parameter to modify. + + + + + pname + + + Specifies the symbolic name of a single-valued sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. + + + + + param + + + Specifies the value of pname. + + + + + + C Specification + + + void glSamplerParameterfv + GLuint sampler + GLenum pname + const GLfloat * params + + + + + void glSamplerParameteriv + GLuint sampler + GLenum pname + const GLint * params + + + + + void glSamplerParameterIiv + GLuint sampler + GLenum pname + const GLint *params + + + + + void glSamplerParameterIuiv + GLuint sampler + GLenum pname + const GLuint *params + + + + Parameters + + + sampler + + + Specifies the sampler object whose parameter to modify. + + + + + pname + + + Specifies the symbolic name of a sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. + + + + + params + + + Specifies a pointer to an array where the value or values of pname + are stored. + + + + + + Description + + glSamplerParameter assigns the value or values in params to the sampler parameter + specified as pname. + sampler specifies the sampler object to be modified, and must be the name of a sampler object previously + returned from a call to glGenSamplers. + The following symbols are accepted in pname: + + + + GL_TEXTURE_MIN_FILTER + + + The texture minifying function is used whenever the pixel being textured + maps to an area greater than one texture element. + There are six defined minifying functions. + Two of them use the nearest one or nearest four texture elements + to compute the texture value. + The other four use mipmaps. + + + A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. + + + params supplies a function for minifying the texture as one of the + following: + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + GL_NEAREST_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value. + + + + + GL_LINEAR_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value. + + + + + GL_NEAREST_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + GL_LINEAR_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + + + As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or four texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. + + + + + GL_TEXTURE_MAG_FILTER + + + The texture magnification function is used when the pixel being textured + maps to an area less than or equal to one texture element. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + + + + + + + + + + + GL_TEXTURE_MIN_LOD + + + Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. + + + + + + + + + GL_TEXTURE_MAX_LOD + + + Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. + + + + + + + + + GL_TEXTURE_WRAP_S + + + Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_BORDER causes the + s + coordinate to be clamped to the range + + + + + + + -1 + 2N + + + + + 1 + + + + + + 1 + 2N + + + + + + , + where + N + is the size of the texture in the direction of + clamping.GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + + + s + + + + , + where + + + + frac + + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_T + + + Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. + + + + + GL_TEXTURE_WRAP_R + + + Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. + + + + + GL_TEXTURE_BORDER_COLOR + + + The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . + + + + + GL_TEXTURE_COMPARE_MODE + + + Specifies the texture comparison mode for currently bound textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: + + + GL_COMPARE_REF_TO_TEXTURE + + + Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. + + + + + GL_NONE + + + Specifies that the red channel should be assigned the + appropriate value from the currently bound texture. + + + + + + + + + GL_TEXTURE_COMPARE_FUNC + + + Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: + + + + + + + + Texture Comparison Function + + + Computed result + + + + + + + GL_LEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + + + + + + + GL_GEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + + + + + + + GL_LESS + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + + + + + + + GL_GREATER + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + + + + + + + GL_EQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + + + D + t + + + + + + + + + + + + + + GL_NOTEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + + + D + t + + + + + + + r + = + + D + t + + + + + + + + + + + + + + GL_ALWAYS + + + + + + result + = + 1.0 + + + + + + + + GL_NEVER + + + + + + result + = + 0.0 + + + + + + + + + where r + is the current interpolated texture coordinate, and + + + D + t + + + is the texture value sampled from the currently bound texture. + result + is assigned to + + + R + t + + . + + + + + + Notes + + glSamplerParameter is available only if the GL version is 3.3 or higher. + + + If a sampler object is bound to a texture unit and that unit is used to sample from a texture, the parameters in the sampler + are used to sample from the texture, rather than the equivalent parameters in the texture object bound to that unit. This + introduces the possibility of sampling from the same texture object with different sets of sampler state, which may lead to + a condition where a texture is incomplete with respect to one sampler object and not with respect to + another. Thus, completeness can be considered a function of a sampler object and a texture object bound to a single + texture unit, rather than a property of the texture object itself. + + + Errors + + GL_INVALID_VALUE is generated if sampler is not the name of a sampler object previously + returned from a call to glGenSamplers. + + + GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. + + + Associated Gets + + glGetSamplerParameter + + + See Also + + glGenSamplers, + glBindSampler, + glDeleteSamplers, + glIsSampler, + glBindTexture, + glTexParameter + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glScissor.xml b/upstream-man-pages/man4/glScissor.xml new file mode 100644 index 0000000..eb88163 --- /dev/null +++ b/upstream-man-pages/man4/glScissor.xml @@ -0,0 +1,109 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glScissor + 3G + + + glScissor + define the scissor box + + C Specification + + + void glScissor + GLint x + GLint y + GLsizei width + GLsizei height + + + + Parameters + + + x + y + + + Specify the lower left corner of the scissor box. + Initially (0, 0). + + + + + width + height + + + Specify the width and height of the scissor box. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + + Description + + glScissor defines a rectangle, called the scissor box, + in window coordinates. + The first two arguments, + x and y, + specify the lower left corner of the box. + width and height specify the width and height of the box. + + + To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. + + + When the scissor test is disabled, + it is as though the scissor box includes the entire window. + + + Errors + + GL_INVALID_VALUE is generated if either width or height is negative. + + + Associated Gets + + glGet with argument GL_SCISSOR_BOX + + + glIsEnabled with argument GL_SCISSOR_TEST + + + See Also + + glEnable, + glViewport + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glScissorArray.xml b/upstream-man-pages/man4/glScissorArray.xml new file mode 100644 index 0000000..751c64f --- /dev/null +++ b/upstream-man-pages/man4/glScissorArray.xml @@ -0,0 +1,123 @@ + + + + + + + 2010 + Khronos Group + + + glScissorArray + 3G + + + glScissorArray + define the scissor box for multiple viewports + + C Specification + + + void glScissorArrayv + GLuint first + GLsizei count + const GLint *v + + + + Parameters + + + first + + + Specifies the index of the first viewport whose scissor box to modify. + + + + + count + + + Specifies the number of scissor boxes to modify. + + + + + v + + + Specifies the address of an array containing the left, bottom, width and height of each + scissor box, in that order. + + + + + + Description + + glScissorArrayv defines rectangles, called scissor boxes, + in window coordinates for each viewport. + first specifies the index of the first scissor box to modify and + count specifies the number of scissor boxes to modify. first + must be less than the value of GL_MAX_VIEWPORTS, and first + + count must be less than or equal to the value of GL_MAX_VIEWPORTS. + v specifies the address of an array containing integers specifying the + lower left corner of the scissor boxes, and the width and height of the scissor boxes, in that order. + + + To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled for all viewports. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. + + + When the scissor test is disabled, + it is as though the scissor box includes the entire window. + + + Errors + + GL_INVALID_VALUE is generated if first is greater than or equal to + the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if first + count + is greater than or equal to the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if any width or height specified in the array v is negative. + + + Associated Gets + + glGet with argument GL_SCISSOR_BOX + + + glIsEnabled with argument GL_SCISSOR_TEST + + + See Also + + glEnable, + glViewport, + glViewportIndexed, + glViewportArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glScissorIndexed.xml b/upstream-man-pages/man4/glScissorIndexed.xml new file mode 100644 index 0000000..c47d2cf --- /dev/null +++ b/upstream-man-pages/man4/glScissorIndexed.xml @@ -0,0 +1,136 @@ + + + + + + + 2010 + Khronos Group + + + glScissorIndexed + 3G + + + glScissorIndexed + define the scissor box for a specific viewport + + C Specification + + + void glScissorIndexed + GLuint index + GLint left + GLint bottom + GLsizei width + GLsizei height + + + void glScissorIndexedv + GLuint index + const GLint *v += + + + Parameters + + + index + + + Specifies the index of the viewport whose scissor box to modify. + + + + + left + bottom + + + Specify the coordinate of the bottom left corner of the scissor box, in pixels. + + + + + width + height + + + Specify ths dimensions of the scissor box, in pixels. + + + + + v + + + For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each + scissor box, in that order. + + + + + + Description + + glScissorIndexed defines the scissor box for a specified viewport. + index specifies the index of scissor box to modify. + index must be less than the value of GL_MAX_VIEWPORTS. + For glScissorIndexed, left, bottom, + width and height specify the left, bottom, width + and height of the scissor box, in pixels, respectively. + For glScissorIndexedv, v specifies the address of an + array containing integers specifying the lower left corner of the scissor box, and the width and + height of the scissor box, in that order. + + + To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled for all viewports. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. + + + When the scissor test is disabled, + it is as though the scissor box includes the entire window. + + + Errors + + GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if any width or height specified in the array v is negative. + + + Associated Gets + + glGet with argument GL_SCISSOR_BOX + + + glIsEnabled with argument GL_SCISSOR_TEST + + + See Also + + glEnable, + glScissor, + glScissorArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glShaderBinary.xml b/upstream-man-pages/man4/glShaderBinary.xml new file mode 100644 index 0000000..8925e87 --- /dev/null +++ b/upstream-man-pages/man4/glShaderBinary.xml @@ -0,0 +1,131 @@ + + + + + + + 2010 + Khronos Group + + + glShaderBinary + 3G + + + glShaderBinary + load pre-compiled shader binaries + + C Specification + + + void glShaderBinary + GLsizei count + const GLuint *shaders + GLenum binaryFormat + const void *binary + GLsizei length + + + + Parameters + + + count + + + Specifies the number of shader object handles contained in shaders. + + + + + shaders + + + Specifies the address of an array of shader handles into which to load pre-compiled shader binaries. + + + + + binaryFormat + + + Specifies the format of the shader binaries contained in binary. + + + + + binary + + + Specifies the address of an array of bytes containing pre-compiled binary shader code. + + + + + length + + + Specifies the length of the array whose address is given in binary. + + + + + + Description + + glShaderBinary loads pre-compiled shader binary code into the count + shader objects whose handles are given in shaders. binary + points to length bytes of binary shader code stored in client memory. + binaryFormat specifies the format of the pre-compiled code. + + + The binary image contained in binary will be decoded according to the extension + specification defining the specified binaryFormat token. OpenGL + does not define any specific binary formats, but it does provide a mechanism to obtain token + vaues for such formats provided by such extensions. + + + Depending on the types of the shader objects in shaders, glShaderBinary + will individually load binary vertex or fragment shaders, or load an executable binary that contains an optimized + pair of vertex and fragment shaders stored in the same binary. + + + Errors + + GL_INVALID_OPERATION is generated if more than one of the handles in + shaders refers to the same shader object. + + + GL_INVALID_ENUM is generated if binaryFormat is not an + accepted value. + + + GL_INVALID_VALUE is generated if the data pointed to by binary + does not match the format specified by binaryFormat. + + + Associated Gets + + glGet with parameter GL_NUM_SHADER_BINARY_FORMATS. + + + glGet with parameter GL_SHADER_BINARY_FORMATS. + + + See Also + + glGetProgram, + glGetProgramBinary, + glProgramBinary + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glShaderSource.xml b/upstream-man-pages/man4/glShaderSource.xml new file mode 100644 index 0000000..2d64a1e --- /dev/null +++ b/upstream-man-pages/man4/glShaderSource.xml @@ -0,0 +1,118 @@ + + + + + glShaderSource + 3G + + + glShaderSource + Replaces the source code in a shader object + + C Specification + + + void glShaderSource + GLuint shader + GLsizei count + const GLchar **string + const GLint *length + + + + Parameters + + + shader + + Specifies the handle of the shader object + whose source code is to be replaced. + + + + count + + Specifies the number of elements in the + string and + length + arrays. + + + + string + + Specifies an array of pointers to strings + containing the source code to be loaded into the + shader. + + + + length + + Specifies an array of string lengths. + + + + + Description + glShaderSource sets the source code + in shader to the source code in the array + of strings specified by string. Any + source code previously stored in the shader object is completely + replaced. The number of strings in the array is specified by + count. If length + is NULL, each string is assumed to be null + terminated. If length is a value other + than NULL, it points to an array containing + a string length for each of the corresponding elements of + string. Each element in the + length array may contain the length of + the corresponding string (the null character is not counted as + part of the string length) or a value less than 0 to indicate + that the string is null terminated. The source code strings are + not scanned or parsed at this time; they are simply copied into + the specified shader object. + + Notes + OpenGL copies the shader source code strings when + glShaderSource is called, so an application + may free its copy of the source code strings immediately after + the function returns. + + Errors + GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + shader is not a shader object. + + GL_INVALID_VALUE is generated if + count is less than 0. + + + Associated Gets + glGetShader + with arguments shader and + GL_SHADER_SOURCE_LENGTH + + glGetShaderSource + with argument shader + + glIsShader + + See Also + glCompileShader, + glCreateShader, + glDeleteShader + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glShaderStorageBlockBinding.xml b/upstream-man-pages/man4/glShaderStorageBlockBinding.xml new file mode 100644 index 0000000..deb57b1 --- /dev/null +++ b/upstream-man-pages/man4/glShaderStorageBlockBinding.xml @@ -0,0 +1,99 @@ + + + + + + + 2012 + Khronos Group + + + glShaderStorageBlockBinding + 3G + + + glShaderStorageBlockBinding + change an active shader storage block binding + + C Specification + + + void glShaderStorageBlockBinding + GLuint program + GLuint storageBlockIndex + GLuint storageBlockBinding + + + + Parameters + + + program + + + The name of the program containing the block whose binding to change. + + + + + storageBlockIndex + + + The index storage block within the program. + + + + + storageBlockBinding + + + The index storage block binding to associate with the specified storage block. + + + + + + Description + + glShaderStorageBlockBinding, changes the active + shader storage block with an assigned index of storageBlockIndex + in program object program. storageBlockIndex must be an active shader storage block + index in program. storageBlockBinding must be less than the value of GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS. + If successful, glShaderStorageBinding specifies that program will use the data store of + the buffer object bound to the binding point storageBlockBinding to read + and write the values of the buffer variables in the shader storage block identified by storageBlockIndex. + + + Errors + + GL_INVALID_VALUE is generated if attribindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIBS. + + + GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. + + + GL_INVALID_OPERATION is generated if no vertex array object is bound. + + + Associated Gets + + glGet with arguments GL_SHADER_STORAGE_BUFFER_BINDING, + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, + GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, + GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, + GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS or GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS, + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, or GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glStencilFunc.xml b/upstream-man-pages/man4/glStencilFunc.xml new file mode 100644 index 0000000..3da7c33 --- /dev/null +++ b/upstream-man-pages/man4/glStencilFunc.xml @@ -0,0 +1,293 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilFunc + 3G + + + glStencilFunc + set front and back function and reference value for stencil testing + + + C Specification + + + void glStencilFunc + GLenum func + GLint ref + GLuint mask + + + + Parameters + + + func + + + Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. + + + + + mask + + + Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + Stencil planes are first drawn into using GL drawing primitives, then + geometry and images are rendered using the stencil planes to mask out + portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. + + + There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values. Use glStencilFuncSeparate + to set front and back stencil state to different values. + + + func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. + + + If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + + + The following values are accepted by func: + + + + GL_NEVER + + + Always fails. + + + + + GL_LESS + + + Passes if ( ref & mask ) < ( stencil & mask ). + + + + + GL_LEQUAL + + + Passes if ( ref & mask ) <= ( stencil & mask ). + + + + + GL_GREATER + + + Passes if ( ref & mask ) > ( stencil & mask ). + + + + + GL_GEQUAL + + + Passes if ( ref & mask ) >= ( stencil & mask ). + + + + + GL_EQUAL + + + Passes if ( ref & mask ) = ( stencil & mask ). + + + + + GL_NOTEQUAL + + + Passes if ( ref & mask ) != ( stencil & mask ). + + + + + GL_ALWAYS + + + Always passes. + + + + + + Notes + + Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. + + + glStencilFunc is the same as + calling glStencilFuncSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glStencilFuncSeparate.xml b/upstream-man-pages/man4/glStencilFuncSeparate.xml new file mode 100644 index 0000000..4a689ca --- /dev/null +++ b/upstream-man-pages/man4/glStencilFuncSeparate.xml @@ -0,0 +1,302 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilFuncSeparate + 3G + + + glStencilFuncSeparate + set front and/or back function and reference value for stencil testing + + + C Specification + + + void glStencilFuncSeparate + GLenum face + GLenum func + GLint ref + GLuint mask + + + + Parameters + + + face + + + Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + func + + + Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. + + + + + ref + + + Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. + + + + + mask + + + Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. + + + There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values, as if + glStencilFuncSeparate were called + with face set to GL_FRONT_AND_BACK. + + + func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. + + + If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + + + The following values are accepted by func: + + + + GL_NEVER + + + Always fails. + + + + + GL_LESS + + + Passes if ( ref & mask ) < ( stencil & mask ). + + + + + GL_LEQUAL + + + Passes if ( ref & mask ) <= ( stencil & mask ). + + + + + GL_GREATER + + + Passes if ( ref & mask ) > ( stencil & mask ). + + + + + GL_GEQUAL + + + Passes if ( ref & mask ) >= ( stencil & mask ). + + + + + GL_EQUAL + + + Passes if ( ref & mask ) = ( stencil & mask ). + + + + + GL_NOTEQUAL + + + Passes if ( ref & mask ) != ( stencil & mask ). + + + + + GL_ALWAYS + + + Always passes. + + + + + + Notes + + Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. + + + Errors + + GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilMask, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glStencilMask.xml b/upstream-man-pages/man4/glStencilMask.xml new file mode 100644 index 0000000..65b13db --- /dev/null +++ b/upstream-man-pages/man4/glStencilMask.xml @@ -0,0 +1,99 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilMask + 3G + + + glStencilMask + control the front and back writing of individual bits in the stencil planes + + C Specification + + + void glStencilMask + GLuint mask + + + + + Parameters + + + mask + + + Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. + + + + + + Description + + glStencilMask controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. + + + There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values. Use glStencilMaskSeparate + to set front and back stencil writemasks to different values. + + + Notes + + glStencilMask is the same as + calling glStencilMaskSeparate + with face set to GL_FRONT_AND_BACK. + + + Associated Gets + + glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS + + + See Also + + glColorMask, + glDepthMask, + glStencilFunc, + glStencilFuncSeparate, + glStencilMaskSeparate, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glStencilMaskSeparate.xml b/upstream-man-pages/man4/glStencilMaskSeparate.xml new file mode 100644 index 0000000..f54f87e --- /dev/null +++ b/upstream-man-pages/man4/glStencilMaskSeparate.xml @@ -0,0 +1,111 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilMaskSeparate + 3G + + + glStencilMaskSeparate + control the front and/or back writing of individual bits in the stencil planes + + C Specification + + + void glStencilMaskSeparate + GLenum face + GLuint mask + + + + + Parameters + + + face + + + Specifies whether the front and/or back stencil writemask is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + mask + + + Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. + + + + + + Description + + glStencilMaskSeparate controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. + + + There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values, as if + glStencilMaskSeparate were called + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if face is not one of the accepted tokens. + + + Associated Gets + + glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS + + + See Also + + glColorMask, + glDepthMask, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilOp, + glStencilOpSeparate + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glStencilOp.xml b/upstream-man-pages/man4/glStencilOp.xml new file mode 100644 index 0000000..1b6752e --- /dev/null +++ b/upstream-man-pages/man4/glStencilOp.xml @@ -0,0 +1,270 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilOp + 3G + + + glStencilOp + set front and back stencil test actions + + + C Specification + + + void glStencilOp + GLenum sfail + GLenum dpfail + GLenum dppass + + + + Parameters + + + sfail + + + Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. + + + + + dpfail + + + Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + dppass + + + Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. + + + There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values. Use glStencilOpSeparate + to set front and back stencil state to different values. + + + glStencilOp takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. + + + + GL_KEEP + + + Keeps the current value. + + + + + GL_ZERO + + + Sets the stencil buffer value to 0. + + + + + GL_REPLACE + + + Sets the stencil buffer value to ref, + as specified by glStencilFunc. + + + + + GL_INCR + + + Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. + + + + + GL_INCR_WRAP + + + Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. + + + + + GL_DECR + + + Decrements the current stencil buffer value. + Clamps to 0. + + + + + GL_DECR_WRAP + + + Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. + + + + + GL_INVERT + + + Bitwise inverts the current stencil buffer value. + + + + + + Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. + + + The other two arguments to glStencilOp specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. + + + Notes + + Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil tests always pass, + regardless of any call to glStencilOp. + + + glStencilOp is the same as + calling glStencilOpSeparate + with face set to GL_FRONT_AND_BACK. + + + Errors + + GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the defined constant values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOpSeparate + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glStencilOpSeparate.xml b/upstream-man-pages/man4/glStencilOpSeparate.xml new file mode 100644 index 0000000..409cee1 --- /dev/null +++ b/upstream-man-pages/man4/glStencilOpSeparate.xml @@ -0,0 +1,282 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glStencilOpSeparate + 3G + + + glStencilOpSeparate + set front and/or back stencil test actions + + + C Specification + + + void glStencilOpSeparate + GLenum face + GLenum sfail + GLenum dpfail + GLenum dppass + + + + Parameters + + + face + + + Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. + + + + + sfail + + + Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. + + + + + dpfail + + + Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + dppass + + + Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. + + + + + + Description + + Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. + + + The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. + + + There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values, as if + glStencilOpSeparate were called + with face set to GL_FRONT_AND_BACK. + + + glStencilOpSeparate takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. + + + + GL_KEEP + + + Keeps the current value. + + + + + GL_ZERO + + + Sets the stencil buffer value to 0. + + + + + GL_REPLACE + + + Sets the stencil buffer value to ref, + as specified by glStencilFunc. + + + + + GL_INCR + + + Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. + + + + + GL_INCR_WRAP + + + Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. + + + + + GL_DECR + + + Decrements the current stencil buffer value. + Clamps to 0. + + + + + GL_DECR_WRAP + + + Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. + + + + + GL_INVERT + + + Bitwise inverts the current stencil buffer value. + + + + + + Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. + + + The other two arguments to glStencilOpSeparate specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. + + + Notes + + Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil test always passes. + + + Errors + + GL_INVALID_ENUM is generated if face is any value + other than GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK. + + + GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. + + + Associated Gets + + glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS + + + glIsEnabled with argument GL_STENCIL_TEST + + + See Also + + glBlendFunc, + glDepthFunc, + glEnable, + glLogicOp, + glStencilFunc, + glStencilFuncSeparate, + glStencilMask, + glStencilMaskSeparate, + glStencilOp + + + Copyright + + Copyright 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexBuffer.xml b/upstream-man-pages/man4/glTexBuffer.xml new file mode 100644 index 0000000..bc3cbb0 --- /dev/null +++ b/upstream-man-pages/man4/glTexBuffer.xml @@ -0,0 +1,498 @@ + + + + + + + 2010 + Khronos Group + + + glTexBuffer + 3G + + + glTexBuffer + attach the storage for a buffer object to the active buffer texture + + C Specification + + + void glTexBuffer + GLenum target + GLenum internalFormat + Gluintbuffer + + + + Parameters + + + target + + + Specifies the target of the operation and must be GL_TEXTURE_BUFFER. + + + + + internalFormat + + + Specifies the internal format of the data in the store belonging to buffer. + + + + + buffer + + + Specifies the name of the buffer object whose storage to attach to the active buffer texture. + + + + + + Description + + glTexBuffer attaches the storage for the buffer object named buffer to the active + buffer texture, and specifies the internal format for the texel array found in the attached buffer object. If buffer + is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer + is non-zero, it must be the name of an existing buffer object. target must be GL_TEXTURE_BUFFER. + internalformat specifies the storage format, and must be one of the following sized internal formats: + + + + + + + + + + + + + + + + + + + Component + + + + + + Sized Internal Format + Base Type + Components + Norm + 0 + 1 + 2 + 3 + + + GL_R8 + ubyte + 1 + YES + R + 0 + 0 + 1 + + + GL_R16 + ushort + 1 + YES + R + 0 + 0 + 1 + + + GL_R16F + half + 1 + NO + R + 0 + 0 + 1 + + + GL_R32F + float + 1 + NO + R + 0 + 0 + 1 + + + GL_R8I + byte + 1 + NO + R + 0 + 0 + 1 + + + GL_R16I + short + 1 + NO + R + 0 + 0 + 1 + + + GL_R32I + int + 1 + NO + R + 0 + 0 + 1 + + + GL_R8UI + ubyte + 1 + NO + R + 0 + 0 + 1 + + + GL_R16UI + ushort + 1 + NO + R + 0 + 0 + 1 + + + GL_R32UI + uint + 1 + NO + R + 0 + 0 + 1 + + + GL_RG8 + ubyte + 2 + YES + R + G + 0 + 1 + + + GL_RG16 + ushort + 2 + YES + R + G + 0 + 1 + + + GL_RG16F + half + 2 + NO + R + G + 0 + 1 + + + GL_RG32F + float + 2 + NO + R + G + 0 + 1 + + + GL_RG8I + byte + 2 + NO + R + G + 0 + 1 + + + GL_RG16I + short + 2 + NO + R + G + 0 + 1 + + + GL_RG32I + int + 2 + NO + R + G + 0 + 1 + + + GL_RG8UI + ubyte + 2 + NO + R + G + 0 + 1 + + + GL_RG16UI + ushort + 2 + NO + R + G + 0 + 1 + + + GL_RG32UI + uint + 2 + NO + R + G + 0 + 1 + + + GL_RGB32F + float + 3 + NO + R + G + B + 1 + + + GL_RGB32I + int + 3 + NO + R + G + B + 1 + + + GL_RGB32UI + uint + 3 + NO + R + G + B + 1 + + + GL_RGBA8 + uint + 4 + YES + R + G + B + A + + + GL_RGBA16 + short + 4 + YES + R + G + B + A + + + GL_RGBA16F + half + 4 + NO + R + G + B + A + + + GL_RGBA32F + float + 4 + NO + R + G + B + A + + + GL_RGBA8I + byte + 4 + NO + R + G + B + A + + + GL_RGBA16I + short + 4 + NO + R + G + B + A + + + GL_RGBA32I + int + 4 + NO + R + G + B + A + + + GL_RGBA8UI + ubyte + 4 + NO + R + G + B + A + + + GL_RGBA16UI + ushort + 4 + NO + R + G + B + A + + + GL_RGBA32UI + uint + 4 + NO + R + G + B + A + + + + + + When a buffer object is attached to a buffer texture, the buffer object's data store + is taken as the texture's texel array. The number of texels in the buffer texture's + texel array is given by + + + + + + buffer_size + + + components × sizeof(base_type) + + + + + + where buffer_size is the size of the buffer object, in basic machine units and + components and base type are the element count and base data type for elements, as specified in the table above. + The number of texels in the texel array is then clamped to the implementation-dependent limit GL_MAX_TEXTURE_BUFFER_SIZE. + When a buffer texture is accessed in a shader, the results of a texel fetch are undefined if the specified texel coordinate is negative, or + greater than or equal to the clamped number of texels in the texel array. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_BUFFER. + + + GL_INVALID_ENUM is generated if internalFormat is not one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if buffer is not zero or the name of an existing buffer object. + + + Notes + + glTexBuffer is available only if the GL version is 3.1 or greater. + + + Associated Gets + glGet + with argument GL_MAX_TEXTURE_BUFFER_SIZE + glGet + with argument GL_TEXTURE_BINDING_BUFFER + glGetTexLevelParameter + with argument GL_TEXTURE_BUFFER_DATA_STORE_BINDING + + See Also + + glGenBuffers, + glBindBuffer, + glBufferData, + glDeleteBuffers, + glGenTextures, + glBindTexture, + glDeleteTextures + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexBufferRange.xml b/upstream-man-pages/man4/glTexBufferRange.xml new file mode 100644 index 0000000..5282fdf --- /dev/null +++ b/upstream-man-pages/man4/glTexBufferRange.xml @@ -0,0 +1,496 @@ + + + + + + + 2012 + Khronos Group + + + glTexBufferRange + 3G + + + glTexBufferRange + bind a range of a buffer's data store to a buffer texture + + C Specification + + + void glTexBufferRange + GLenum target + GLenum internalFormat + GLuint buffer + GLintptr offset + GLsizeiptr size + + + + Parameters + + + target + + + Specifies the target of the operation and must be GL_TEXTURE_BUFFER. + + + + + internalFormat + + + Specifies the internal format of the data in the store belonging to buffer. + + + + + buffer + + + Specifies the name of the buffer object whose storage to attach to the active buffer texture. + + + + + offset + + + Specifies the offset of the start of the range of the buffer's data store to attach. + + + + + size + + + Specifies the size of the range of the buffer's data store to attach. + + + + + + Description + + glTexBufferRange attaches the a range of the data store of the buffer object named buffer to the active + buffer texture, and specifies the internal format for the texel array found in the attached buffer object. If buffer + is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer + is non-zero, it must be the name of an existing buffer object. target must be GL_TEXTURE_BUFFER. + The start of the range is specified by offset and the size of the range is specified by size, + both measured in basic machine units. offset must be greater than or equal to zero, size must be greater + than zero, and the sum of offset and size not exceed the value + of GL_BUFFER_SIZE for buffer. Furthermore, offset must be + an integer multiple of the value of GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT. + internalformat specifies the storage format, and must be one of the following sized internal formats: + + + + + + + + + + + + + + + + + + + Component + + + + + + Sized Internal Format + Base Type + Components + Norm + 0 + 1 + 2 + 3 + + + GL_R8 + ubyte + 1 + YES + R + 0 + 0 + 1 + + + GL_R16 + ushort + 1 + YES + R + 0 + 0 + 1 + + + GL_R16F + half + 1 + NO + R + 0 + 0 + 1 + + + GL_R32F + float + 1 + NO + R + 0 + 0 + 1 + + + GL_R8I + byte + 1 + NO + R + 0 + 0 + 1 + + + GL_R16I + short + 1 + NO + R + 0 + 0 + 1 + + + GL_R32I + int + 1 + NO + R + 0 + 0 + 1 + + + GL_R8UI + ubyte + 1 + NO + R + 0 + 0 + 1 + + + GL_R16UI + ushort + 1 + NO + R + 0 + 0 + 1 + + + GL_R32UI + uint + 1 + NO + R + 0 + 0 + 1 + + + GL_RG8 + ubyte + 2 + YES + R + G + 0 + 1 + + + GL_RG16 + ushort + 2 + YES + R + G + 0 + 1 + + + GL_RG16F + half + 2 + NO + R + G + 0 + 1 + + + GL_RG32F + float + 2 + NO + R + G + 0 + 1 + + + GL_RG8I + byte + 2 + NO + R + G + 0 + 1 + + + GL_RG16I + short + 2 + NO + R + G + 0 + 1 + + + GL_RG32I + int + 2 + NO + R + G + 0 + 1 + + + GL_RG8UI + ubyte + 2 + NO + R + G + 0 + 1 + + + GL_RG16UI + ushort + 2 + NO + R + G + 0 + 1 + + + GL_RG32UI + uint + 2 + NO + R + G + 0 + 1 + + + GL_RGB32F + float + 3 + NO + R + G + B + 1 + + + GL_RGB32I + int + 3 + NO + R + G + B + 1 + + + GL_RGB32UI + uint + 3 + NO + R + G + B + 1 + + + GL_RGBA8 + uint + 4 + YES + R + G + B + A + + + GL_RGBA16 + short + 4 + YES + R + G + B + A + + + GL_RGBA16F + half + 4 + NO + R + G + B + A + + + GL_RGBA32F + float + 4 + NO + R + G + B + A + + + GL_RGBA8I + byte + 4 + NO + R + G + B + A + + + GL_RGBA16I + short + 4 + NO + R + G + B + A + + + GL_RGBA32I + int + 4 + NO + R + G + B + A + + + GL_RGBA8UI + ubyte + 4 + NO + R + G + B + A + + + GL_RGBA16UI + ushort + 4 + NO + R + G + B + A + + + GL_RGBA32UI + uint + 4 + NO + R + G + B + A + + + + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_BUFFER. + + + GL_INVALID_VALUE is generated if offset is less than zero. + + + GL_INVALID_VALUE is generated if size is less than or equal to zero. + + + GL_INVALID_VALUE is generated if offset + size is + greater than the value of GL_BUFFER_SIZE for buffer. + + + GL_INVALID_VALUE is generated if offset is not + an integer multiple of the value of GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT. + + + Associated Gets + + glGet with argument GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT + + + glGetTexLevelParameter with arguments GL_TEXTURE_BUFFER_OFFSET + or GL_TEXTURE_BUFFER_SIZE. + + + See Also + + glTexBuffer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexImage1D.xml b/upstream-man-pages/man4/glTexImage1D.xml new file mode 100644 index 0000000..b6ef496 --- /dev/null +++ b/upstream-man-pages/man4/glTexImage1D.xml @@ -0,0 +1,592 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage1D + 3G + + + glTexImage1D + specify a one-dimensional texture image + + C Specification + + + void glTexImage1D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. + + + + + width + + + Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. The height of the 1D texture image is 1. + + + + + border + + + This value must be 0. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. + + + Texture images are defined with glTexImage1D. + The arguments describe the parameters of the texture image, + such as width, + width of the border, + level-of-detail number + (see glTexParameter), + and the internal resolution and format used to store the image. + The last three arguments describe how the image is represented in + memory. + + + If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked against the implementation's capabilities. + If the implementation cannot handle a texture of the + requested texture size, it sets all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_1D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the left end of the texture array. + Subsequent elements progress left-to-right through the remaining texels + in the texture array. + The final element corresponds to the right end of the texture array. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RG + + + Each element is a single red/green double + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_DEPTH_COMPONENT + + + Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. + + + + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, + GL_RGB and GL_RGBA must match exactly.) + + + internalFormat may be one of the base internal formats shown in + Table 1, below + + + + + + internalFormat may also be one of the sized internal formats + shown in Table 2, below + + + + + + Finally, internalFormat may also be one of the generic or compressed + compressed texture formats shown in Table 3 below + + + + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHAor + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_1D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. + + + Notes + + glPixelStore modes affect texture images. + + + data may be a null pointer. In this case texture memory is + allocated to accommodate a texture of width width. + You can then download subtextures to initialize the + texture memory. The image is undefined if the program tries to apply + an uninitialized portion of the texture image to a primitive. + + + glTexImage1D specifies the one-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_1D + or GL_PROXY_TEXTURE_1D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX + are accepted. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not + one of the accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + + + border + + + + + for some integer value of n. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexSubImage1D, + glCopyTexImage1D, + glCopyTexSubImage1D, + glGetCompressedTexImage, + glPixelStore, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 Silicon Graphics, Inc. + Copyright 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTexImage2D.xml b/upstream-man-pages/man4/glTexImage2D.xml new file mode 100644 index 0000000..4370538 --- /dev/null +++ b/upstream-man-pages/man4/glTexImage2D.xml @@ -0,0 +1,665 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage2D + 3G + + + glTexImage2D + specify a two-dimensional texture image + + C Specification + + + void glTexImage2D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLsizei height + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + If target is GL_TEXTURE_RECTANGLE or + GL_PROXY_TEXTURE_RECTANGLE, level must be 0. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. + + + + + width + + + Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. + + + + + height + + + Specifies the height of the texture image, or the number of layers in a texture + array, in the case of the GL_TEXTURE_1D_ARRAY and + GL_PROXY_TEXTURE_1D_ARRAY targets. + All implementations support 2D texture images that are at least 1024 texels + high, and texture arrays that are at least 256 layers deep. + + + + + border + + + This value must be 0. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing allows elements of an image array to be read by shaders. + + + To define texture images, call glTexImage2D. + The arguments describe the parameters of the texture image, + such as height, width, width of the border, level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. + + + If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or GL_PROXY_TEXTURE_RECTANGLE, + no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to 1. + + + If target is GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE + or one of the GL_TEXTURE_CUBE_MAP + targets, data is read from data as a sequence of signed or unsigned + bytes, shorts, or longs, or single-precision floating-point values, + depending on type. These values are grouped into sets of one, two, + three, or four values, depending on format, to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If target is GL_TEXTURE_1D_ARRAY, data is interpreted + as an array of one-dimensional images. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the lower left corner of the texture image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RG + + + Each element is a red/green double. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_DEPTH_COMPONENT + + + Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. + + + + + GL_DEPTH_STENCIL + + + Each element is a pair of depth and stencil values. The depth component of + the pair is interpreted as in GL_DEPTH_COMPONENT. The stencil + component is interpreted based on specified the depth + stencil internal format. + + + + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, + GL_RG, GL_RGB, + and GL_RGBA must match exactly.) + + + internalFormat may be one of the base internal formats shown in + Table 1, below + + + + + + internalFormat may also be one of the sized internal formats + shown in Table 2, below + + + + + + Finally, internalFormat may also be one of the generic or compressed + compressed texture formats shown in Table 3 below + + + + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_CUBE_MAP target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and G values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Image-based shadowing can be enabled by comparing texture r coordinates to + depth texture values to generate a boolean result. + See glTexParameter for details on texture comparison. + + + Notes + + The glPixelStore mode affects texture images. + + + data may be a null pointer. + In this case, texture memory is + allocated to accommodate a texture of width width and height height. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. + + + glTexImage2D specifies the two-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + + + GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if target is not GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_ARRAY_TEXTURE_LAYERS. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or height cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some + integer value of k. + + + GL_INVALID_VALUE is generated if border is not 0. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV, + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV, + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if target is not + GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_RECTANGLE, + and internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. + + + GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. + + + GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F, and format is + not GL_DEPTH_COMPONENT. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_RECTANGLE + or GL_PROXY_TEXTURE_RECTANGLE and level is not 0. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 Silicon Graphics, Inc. + Copyright 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTexImage2DMultisample.xml b/upstream-man-pages/man4/glTexImage2DMultisample.xml new file mode 100644 index 0000000..6e4bc3f --- /dev/null +++ b/upstream-man-pages/man4/glTexImage2DMultisample.xml @@ -0,0 +1,147 @@ + + + + + + + 2010 + Khronos Group + + + glTexImage2DMultisample + 3G + + + glTexImage2DMultisample + establish the data storage, format, dimensions, and number of samples of a multisample texture's image + + C Specification + + + void glTexImage2DMultisample + GLenum target + GLsizei samples + GLint internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + + Parameters + + + target + + + Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + + + + + samples + + + The number of samples in the multisample texture's image. + + + + + internalformat + + + The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. + + + + + width + + + The width of the multisample texture's image, in texels. + + + + + height + + + The height of the multisample texture's image, in texels. + + + + + fixedsamplelocations + + + Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. + + + + + + Description + + glTexImage2DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. + + + target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + width and height are the dimensions in texels of the texture, and must be in the range zero + to GL_MAX_TEXTURE_SIZE - 1. samples specifies the number of samples in the image and must be + in the range zero to GL_MAX_SAMPLES - 1. + + + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + + + If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + + + When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. + + + Notes + + glTexImage2DMultisample is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. + + + GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. + + + See Also + + glTexImage3D, + glTexImage2DMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexImage3D.xml b/upstream-man-pages/man4/glTexImage3D.xml new file mode 100644 index 0000000..c1d29b0 --- /dev/null +++ b/upstream-man-pages/man4/glTexImage3D.xml @@ -0,0 +1,617 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexImage3D + 3G + + + glTexImage3D + specify a three-dimensional texture image + + C Specification + + + void glTexImage3D + GLenum target + GLint level + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be one of GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level + n + is the + + + n + th + + + mipmap reduction image. + + + + + internalFormat + + + Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. + + + + + width + + + Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels + wide. + + + + + height + + + Specifies the height of the texture image. + All implementations support 3D texture images that are at least 256 texels + high. + + + + + depth + + + Specifies the depth of the texture image, or the number of layers in a texture array. + All implementations support 3D texture images that are at least 256 texels + deep, and texture arrays that are at least 256 layers deep. + + + + + border + + + This value must be 0. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. + + + To define texture images, call glTexImage3D. + The arguments describe the parameters of the texture image, + such as height, + width, depth, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. + + + If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. + + + If target is GL_TEXTURE_3D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. + + + format determines the composition of each element in data. + It can assume one of these symbolic values: + + + + GL_RED + + + Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RG + + + Each element is a red and green pair. + The GL converts each to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGB + + + + + GL_BGR + + + Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + GL_RGBA + + + + + GL_BGRA + + + Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. + + + + + + If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, GL_RGB, + and GL_RGBA must match exactly.) + + + internalFormat may be one of the base internal formats shown in + Table 1, below + + + + + + internalFormat may also be one of the sized internal formats + shown in Table 2, below + + + + + + Finally, internalFormat may also be one of the generic or compressed + compressed texture formats shown in Table 3 below + + + + + + If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + + + If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: + + + + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + + + + + Assume + + c + s + + + is the sRGB component in the range [0,1]. + + + Use the GL_PROXY_TEXTURE_3D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. + + + A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. + + + Notes + + The glPixelStore mode affects texture images. + + + data may be a null pointer. + In this case texture memory is + allocated to accommodate a texture of width width, height height, + and depth depth. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. + + + glTexImage3D specifies the three-dimensional texture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + are accepted. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. + + + GL_INVALID_VALUE is generated if width, height, or depth is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width, height, or depth cannot be represented as + + + + 2 + k + + + + + 2 + + + border + + + + + for some + integer value of k. + + + GL_INVALID_VALUE is generated if border is not 0 or 1. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if format or internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glGetCompressedTexImage, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 Silicon Graphics, Inc. + Copyright 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTexImage3DMultisample.xml b/upstream-man-pages/man4/glTexImage3DMultisample.xml new file mode 100644 index 0000000..3ce6250 --- /dev/null +++ b/upstream-man-pages/man4/glTexImage3DMultisample.xml @@ -0,0 +1,151 @@ + + + + + + + 2010 + Khronos Group + + + glTexImage3DMultisample + 3G + + + glTexImage3DMultisample + establish the data storage, format, dimensions, and number of samples of a multisample texture's image + + C Specification + + + void glTexImage3DMultisample + GLenum target + GLsizei samples + GLint internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + + Parameters + + + target + + + Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + + + + + samples + + + The number of samples in the multisample texture's image. + + + + + internalformat + + + The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. + + + + + width + + + The width of the multisample texture's image, in texels. + + + + + height + + + The height of the multisample texture's image, in texels. + + + + + fixedsamplelocations + + + Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. + + + + + + Description + + glTexImage3DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. + + + target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + width and heightare the dimensions in texels of the texture, and must + be in the range zero to GL_MAX_TEXTURE_SIZE - 1. depth is the number of array slices in the array texture's image. + samples specifies the number of samples in the image and must be in the range zero to GL_MAX_SAMPLES - 1. + + + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + + + If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + + + When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. + + + Notes + + glTexImage2DMultisample is available only if the GL version is 3.2 or greater. + + + Errors + + GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. + + + GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. + + + GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if depth is negative or is greater than GL_MAX_ARRAY_TEXTURE_LAYERS. + + + GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. + + + See Also + + glTexImage3D, + glTexImage2DMultisample + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexParameter.xml b/upstream-man-pages/man4/glTexParameter.xml new file mode 100644 index 0000000..b641778 --- /dev/null +++ b/upstream-man-pages/man4/glTexParameter.xml @@ -0,0 +1,1382 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexParameter + 3G + + + glTexParameter + set texture parameters + + C Specification + + + void glTexParameterf + GLenum target + GLenum pname + GLfloat param + + + + + void glTexParameteri + GLenum target + GLenum pname + GLint param + + + + + Parameters + + + target + + + Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. + + + + + pname + + + Specifies the symbolic name of a single-valued texture parameter. + pname can be one of the following: + GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. + + + + + param + + + Specifies the value of pname. + + + + + + C Specification + + + void glTexParameterfv + GLenum target + GLenum pname + const GLfloat * params + + + + + void glTexParameteriv + GLenum target + GLenum pname + const GLint * params + + + + + void glTexParameterIiv + GLenum target + GLenum pname + const GLint * params + + + + + void glTexParameterIuiv + GLenum target + GLenum pname + const GLuint * params + + + + Parameters + + + target + + + Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. + + + + + pname + + + Specifies the symbolic name of a texture parameter. + pname can be one of the following: + GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. + + + + + params + + + Specifies a pointer to an array where the value or values of pname + are stored. + + + + + + Description + + glTexParameter assigns the value or values in params to the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, or GL_TEXTURE_3D. + The following symbols are accepted in pname: + + + + GL_DEPTH_STENCIL_TEXTURE_MODE + + + Specifies the mode used to read from depth-stencil format textures. params + must be one of GL_DEPTH_COMPONENT or GL_STENCIL_COMPONENT. + If the depth stencil mode is GL_DEPTH_COMPONENT, then reads from depth-stencil + format textures will return the depth component of the texel in + Rt and the stencil component + will be discarded. If the depth stencil mode is GL_STENCIL_COMPONENT then + the stencil component is returned in Rt + and the depth component is discarded. The initial value is GL_DEPTH_COMPONENT. + + + + + + + GL_TEXTURE_BASE_LEVEL + + + Specifies the index of the lowest defined mipmap level. This is an + integer value. The initial value is 0. + + + + + + + + + GL_TEXTURE_BORDER_COLOR + + + The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . + + + If the values for GL_TEXTURE_BORDER_COLOR are specified with glTexParameterIiv + or glTexParameterIuiv, the values are stored unmodified with an internal data type of + integer. If specified with glTexParameteriv, they are converted to floating point with the following + equation: + + + f + = + + + 2 + c + + + + 1 + + + 2 + b + + - + 1 + + + + . + If specified with glTexParameterfv, they are stored unmodified as floating-point values. + + + + + GL_TEXTURE_COMPARE_FUNC + + + Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: + + + + + + + + Texture Comparison Function + + + Computed result + + + + + + + GL_LEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + + + + + + + GL_GEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + + + + + + + GL_LESS + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + + + + + + + GL_GREATER + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + + + + + + + GL_EQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + + + D + t + + + + + + + + + + + + + + GL_NOTEQUAL + + + + + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + + + D + t + + + + + + + r + = + + D + t + + + + + + + + + + + + + + GL_ALWAYS + + + + + + result + = + 1.0 + + + + + + + + GL_NEVER + + + + + + result + = + 0.0 + + + + + + + + + where r + is the current interpolated texture coordinate, and + + + D + t + + + is the depth texture value sampled from the currently bound depth texture. + result + is assigned to the the red channel. + + + + + GL_TEXTURE_COMPARE_MODE + + + Specifies the texture comparison mode for currently bound depth textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: + + + GL_COMPARE_REF_TO_TEXTURE + + + Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound depth texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. + + + + + GL_NONE + + + Specifies that the red channel should be assigned the + appropriate value from the currently bound depth texture. + + + + + + + + + GL_TEXTURE_LOD_BIAS + + + params specifies a fixed bias value that is to be added to the level-of-detail + parameter for the texture before texture sampling. The specified value is added to the shader-supplied + bias value (if any) and subsequently clamped into the implementation-defined range + + + + + - + bias + max + + + + + + + bias + max + + + + + + , + where + + + bias + max + + + + is the value of the implementation defined constant GL_MAX_TEXTURE_LOD_BIAS. The initial value is 0.0. + + + + + GL_TEXTURE_MIN_FILTER + + + The texture minifying function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be minified. + There are six defined minifying functions. + Two of them use either the nearest texture elements or a weighted average of multiple texture elements + to compute the texture value. + The other four use mipmaps. + + + A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. + + + params supplies a function for minifying the texture as one of the + following: + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. + + + + + GL_LINEAR + + + Returns the weighted average of the four texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + GL_NEAREST_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates) + to produce a texture value. + + + + + GL_LINEAR_MIPMAP_NEAREST + + + Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest to the specified texture coordinates) + to produce a texture value. + + + + + GL_NEAREST_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates ) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + GL_LINEAR_MIPMAP_LINEAR + + + Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the texture elements that are closest to the specified texture coordinates) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. + + + + + + + As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or multiple texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. + + + + + + + + + GL_TEXTURE_MAG_FILTER + + + The texture magnification function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be magified. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. + + + GL_NEAREST + + + Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. + + + + + GL_LINEAR + + + Returns the weighted average of the texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. + + + + + + + + + + + + + + + GL_TEXTURE_MIN_LOD + + + Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. + + + + + + + + + GL_TEXTURE_MAX_LOD + + + Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. + + + + + + + + + GL_TEXTURE_MAX_LEVEL + + + Sets the index of the highest defined mipmap level. This is an integer + value. The initial value is 1000. + + + + + + + + + GL_TEXTURE_SWIZZLE_R + + + Sets the swizzle that will be applied to the r + component of a texel before it is returned to the shader. Valid values for param are GL_RED, + GL_GREEN, GL_BLUE, GL_ALPHA, GL_ZERO and + GL_ONE. + If GL_TEXTURE_SWIZZLE_R is GL_RED, the value for + r will be taken from the first + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_GREEN, the value for + r will be taken from the second + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_BLUE, the value for + r will be taken from the third + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ALPHA, the value for + r will be taken from the fourth + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ZERO, the value for + r will be subtituted with + 0.0. + If GL_TEXTURE_SWIZZLE_R is GL_ONE, the value for + r will be subtituted with + 1.0. + The initial value is GL_RED. + + + + + + + + + GL_TEXTURE_SWIZZLE_G + + + Sets the swizzle that will be applied to the g + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_GREEN. + + + + + + + + + GL_TEXTURE_SWIZZLE_B + + + Sets the swizzle that will be applied to the b + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_BLUE. + + + + + + + + + GL_TEXTURE_SWIZZLE_A + + + Sets the swizzle that will be applied to the a + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_ALPHA. + + + + + + + + + GL_TEXTURE_SWIZZLE_RGBA + + + Sets the swizzles that will be applied to the + r, + g, + b, and + a + components of a texel before they are returned to the shader. Valid values for params and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R, except that all channels are specified simultaneously. + Setting the value of GL_TEXTURE_SWIZZLE_RGBA is equivalent (assuming no errors are generated) to + setting the parameters of each of GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, and + GL_TEXTURE_SWIZZLE_A successively. + + + + + + + + + GL_TEXTURE_WRAP_S + + + Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. + GL_CLAMP_TO_BORDER evaluates s coordinates in a similar manner to GL_CLAMP_TO_EDGE. + However, in cases where clamping would have occurred in GL_CLAMP_TO_EDGE mode, the fetched texel data + is substituted with the values specified by GL_TEXTURE_BORDER_COLOR. + GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + + + s + + + + , + where + + + + frac + + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_T + + + Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. + + + + + + + + + GL_TEXTURE_WRAP_R + + + Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. + + + + + + Notes + + Suppose that a program attempts to sample from a texture and + has set GL_TEXTURE_MIN_FILTER to one of the functions that requires a + mipmap. If either the dimensions of the texture images currently defined + (with previous calls to glTexImage1D, glTexImage2D, + glTexImage3D, glCopyTexImage1D, or glCopyTexImage2D) do not + follow the proper sequence for mipmaps (described above), or there are + fewer texture images defined than are needed, or the set of texture images + have differing numbers of texture components, then the texture is considered incomplete. + + + Linear filtering accesses the four nearest texture elements only in 2D + textures. In 1D textures, linear filtering accesses the two nearest + texture elements. In 3D textures, linear filtering accesses the eight nearest + texture elements. + + + glTexParameter specifies the texture parameters for the active texture unit, specified + by calling glActiveTexture. + + + GL_DEPTH_STENCIL_TEXTURE_MODE is available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_ENUM is generated if target or pname is not + one of the accepted defined values. + + + GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. + + + Associated Gets + + glGetTexParameter + + + glGetTexLevelParameter + + + See Also + + glActiveTexture, + glBindTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glSamplerParameter, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTexStorage1D.xml b/upstream-man-pages/man4/glTexStorage1D.xml new file mode 100644 index 0000000..8a5955e --- /dev/null +++ b/upstream-man-pages/man4/glTexStorage1D.xml @@ -0,0 +1,157 @@ + + + + + + + 2011 + Khronos Group + + + glTexStorage1D + 3G + + + glTexStorage1D + simultaneously specify storage for all levels of a one-dimensional texture + + C Specification + + + void glTexStorage1D + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + + + + Parameters + + + target + + + Specify the target of the operation. target must be + either GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + + + + + levels + + + Specify the number of texture levels. + + + + + internalformat + + + Specifies the sized internal format to be used to store texture image data. + + + + + width + + + Specifies the width of the texture, in texels. + + + + + + Description + + glTexStorage1D specifies the storage requirements for all levels + of a one-dimensional texture simultaneously. Once a texture is specified with this + command, the format and dimensions of all levels become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. + + + Calling glTexStorage1D is equivalent, assuming no errors are generated, + to executing the following pseudo-code: + + + + Since no texture data is actually provided, the values used in the pseudo-code + for format and type are + irrelevant and may be considered to be any values that are legal for the + chosen internalformat enumerant. internalformat + must be one of the sized internal formats given in Table 1 below, one of the sized depth-component + formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or + GL_DEPTH_COMPONENT16, or one of the combined depth-stencil formats, + GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8. Upon success, + the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes + GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT + may be discovered by calling glGetTexParameter + with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. + No further changes to the dimensions or format of the texture object may be + made. Using any command that might alter the dimensions or format of the + texture object (such as glTexImage1D or + another call to glTexStorage1D) will result in the + generation of a GL_INVALID_OPERATION error, even if it + would not, in fact, alter the dimensions or format of the object. + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not a + valid sized internal format. + + + GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_1D or GL_TEXTURE_2D. + + + GL_INVALID_VALUE is generated if width or levels + are less than 1. + + + GL_INVALID_OPERATION is generated if levels is greater than + + + + + log + 2 + + + width + + + + + + 1 + +. + + + See Also + + glTexImage1D, + glTexStorage2D, + glTexStorage3D. + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexStorage2D.xml b/upstream-man-pages/man4/glTexStorage2D.xml new file mode 100644 index 0000000..fefc6f5 --- /dev/null +++ b/upstream-man-pages/man4/glTexStorage2D.xml @@ -0,0 +1,226 @@ + + + + + + + 2011 + Khronos Group + + + glTexStorage2D + 3G + + + glTexStorage2D + simultaneously specify storage for all levels of a two-dimensional or one-dimensional array texture + + C Specification + + + void glTexStorage2D + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + + + + Parameters + + + target + + + Specify the target of the operation. target must be + one of GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, + or GL_PROXY_TEXTURE_CUBE_MAP. + + + + + levels + + + Specify the number of texture levels. + + + + + internalformat + + + Specifies the sized internal format to be used to store texture image data. + + + + + width + + + Specifies the width of the texture, in texels. + + + + + height + + + Specifies the height of the texture, in texels. + + + + + + Description + + glTexStorage2D specifies the storage requirements for all levels + of a two-dimensional texture or one-dimensional texture array simultaneously. Once a texture is specified with this + command, the format and dimensions of all levels become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. + + + The behavior of glTexStorage2D depends on the target parameter. + When target is GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE or GL_PROXY_TEXTURE_CUBE_MAP, + calling glTexStorage2D is equivalent, assuming no errors are generated, + to executing the following pseudo-code: + + + + When target is GL_TEXTURE_CUBE_MAP, glTexStorage2D + is equivalent to: + + + + When target is GL_TEXTURE_1D or GL_TEXTURE_1D_ARRAY, + glTexStorage2D is equivalent to: + + + + Since no texture data is actually provided, the values used in the pseudo-code + for format and type are + irrelevant and may be considered to be any values that are legal for the + chosen internalformat enumerant. internalformat + must be one of the sized internal formats given in Table 1 below, one of the sized depth-component + formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or + GL_DEPTH_COMPONENT16, or one of the combined depth-stencil formats, + GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8. Upon success, + the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes + GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT + may be discovered by calling glGetTexParameter + with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. + No further changes to the dimensions or format of the texture object may be + made. Using any command that might alter the dimensions or format of the + texture object (such as glTexImage2D or + another call to glTexStorage2D) will result in the + generation of a GL_INVALID_OPERATION error, even if it + would not, in fact, alter the dimensions or format of the object. + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not a + valid sized internal format. + + + GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. + + + GL_INVALID_VALUE is generated if width or levels + are less than 1. + + + GL_INVALID_OPERATION is generated if target is GL_TEXTURE_1D_ARRAY + or GL_PROXY_TEXTURE_1D_ARRAY and levels is greater than + + + + + log + 2 + + + width + + + + + + 1 + +. + + + GL_INVALID_OPERATION is generated if target is not GL_TEXTURE_1D_ARRAY + or GL_PROXY_TEXTURE_1D_ARRAY and levels is greater than + + + + + log + 2 + + + + max + + + width + , +   + height + + + + + + + + + 1 + +. + + + See Also + + glTexImage2D, + glTexStorage1D, + glTexStorage3D. + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexStorage2DMultisample.xml b/upstream-man-pages/man4/glTexStorage2DMultisample.xml new file mode 100644 index 0000000..061cb90 --- /dev/null +++ b/upstream-man-pages/man4/glTexStorage2DMultisample.xml @@ -0,0 +1,146 @@ + + + + + + + 2012 + Khronos Group + + + glTexStorage2DMultisample + 3G + + + glTexStorage2DMultisample + specify storage for a two-dimensional multisample texture + + C Specification + + + void glTexStorage2DMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + + Parameters + + + target + + + Specify the target of the operation. target must be + GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + + + + + samples + + + Specify the number of samples in the texture. + + + + + internalformat + + + Specifies the sized internal format to be used to store texture image data. + + + + + width + + + Specifies the width of the texture, in texels. + + + + + height + + + Specifies the height of the texture, in texels. + + + + + fixedsamplelocations + + + Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. + + + + + + Description + + glTexStorage2DMultisample specifies the storage requirements for + a two-dimensional multisample texture. Once a texture is specified with this + command, its format and dimensions become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. + + + samples specifies the number of samples to be used for the texture + and must be greater than zero and less than or equal to the value of GL_MAX_SAMPLES. + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height specify the width and height, + respectively, of the texture. If fixedsamplelocations is GL_TRUE, + the image will use identical sample locations and the same number of samples for all texels in the image, + and the sample locations will not depend on the internal format or size of the image. + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not a + valid color-renderable, depth-renderable or stencil-renderable format. + + + GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. + + + GL_INVALID_VALUE is generated if width or height + are less than 1 or greater than the value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if samples is greater than the + value of GL_MAX_SAMPLES. + + + GL_INVALID_OPERATION is generated if the value of GL_TEXTURE_IMMUTABLE_FORMAT + for the texture bound to target is not GL_FALSE. + + + See Also + + glTexImage2D, + glTexImage2DMultisample, + glTexStorage1D, + glTexStorage3D. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexStorage3D.xml b/upstream-man-pages/man4/glTexStorage3D.xml new file mode 100644 index 0000000..b72bef8 --- /dev/null +++ b/upstream-man-pages/man4/glTexStorage3D.xml @@ -0,0 +1,237 @@ + + + + + + + 2011 + Khronos Group + + + glTexStorage3D + 3G + + + glTexStorage3D + simultaneously specify storage for all levels of a three-dimensional, two-dimensional array or cube-map array texture + + C Specification + + + void glTexStorage3D + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + + + + Parameters + + + target + + + Specify the target of the operation. target must be + one of GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY, GL_PROXY_TEXTURE_2D_ARRAY, + GL_TEXTURE_CUBE_ARRAY, or GL_PROXY_TEXTURE_CUBE_ARRAY. + + + + + levels + + + Specify the number of texture levels. + + + + + internalformat + + + Specifies the sized internal format to be used to store texture image data. + + + + + width + + + Specifies the width of the texture, in texels. + + + + + height + + + Specifies the height of the texture, in texels. + + + + + depth + + + Specifies the depth of the texture, in texels. + + + + + + Description + + glTexStorage3D specifies the storage requirements for all levels + of a three-dimensional, two-dimensional array or cube-map array texture simultaneously. Once a texture is specified with this + command, the format and dimensions of all levels become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. + + + The behavior of glTexStorage3D depends on the target parameter. + When target is GL_TEXTURE_3D, or GL_PROXY_TEXTURE_3D, + calling glTexStorage3D is equivalent, assuming no errors are generated, + to executing the following pseudo-code: + + + + When target is GL_TEXTURE_2D_ARRAY, GL_PROXY_TEXTURE_2D_ARRAY, + GL_TEXTURE_CUBE_MAP_ARRAY, or GL_PROXY_TEXTURE_CUBE_MAP_ARRAY, glTexStorage3D + is equivalent to: + + + + Since no texture data is actually provided, the values used in the pseudo-code + for format and type are + irrelevant and may be considered to be any values that are legal for the + chosen internalformat enumerant. internalformat + must be one of the sized internal formats given in Table 1 below, one of the sized depth-component + formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or + GL_DEPTH_COMPONENT16, or one of the combined depth-stencil formats, + GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8. Upon success, + the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes + GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT + may be discovered by calling glGetTexParameter + with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. + No further changes to the dimensions or format of the texture object may be + made. Using any command that might alter the dimensions or format of the + texture object (such as glTexImage3D or + another call to glTexStorage3D) will result in the + generation of a GL_INVALID_OPERATION error, even if it + would not, in fact, alter the dimensions or format of the object. + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not a + valid sized internal format. + + + GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. + + + GL_INVALID_VALUE is generated if width or levels + are less than 1. + + + GL_INVALID_OPERATION is generated if target is GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D and levels is greater than + + + + + log + 2 + + + + max + + + width + , +   + height + , +   + depth + + + + + + + + + 1 + +. + + + GL_INVALID_OPERATION is generated if target is GL_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY, GL_TEXURE_CUBE_ARRAY, or GL_PROXY_TEXTURE_CUBE_MAP_ARRAY + and levels is greater than + + + + + log + 2 + + + + max + + + width + , +   + height + + + + + + + + + 1 + +. + + + See Also + + glTexImage3D, + glTexStorage1D, + glTexStorage2D. + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexStorage3DMultisample.xml b/upstream-man-pages/man4/glTexStorage3DMultisample.xml new file mode 100644 index 0000000..eaf5a09 --- /dev/null +++ b/upstream-man-pages/man4/glTexStorage3DMultisample.xml @@ -0,0 +1,168 @@ + + + + + + + 2012 + Khronos Group + + + glTexStorage3DMultisample + 3G + + + glTexStorage3DMultisample + specify storage for a two-dimensional multisample array texture + + C Specification + + + void glTexStorage3DMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + + Parameters + + + target + + + Specify the target of the operation. target must be + GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_MULTISAMPLE. + + + + + samples + + + Specify the number of samples in the texture. + + + + + internalformat + + + Specifies the sized internal format to be used to store texture image data. + + + + + width + + + Specifies the width of the texture, in texels. + + + + + height + + + Specifies the height of the texture, in texels. + + + + + depth + + + Specifies the depth of the texture, in layers. + + + + + fixedsamplelocations + + + Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. + + + + + + Description + + glTexStorage3DMultisample specifies the storage requirements for + a two-dimensional multisample array texture. Once a texture is specified with this + command, its format and dimensions become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. + + + samples specifies the number of samples to be used for the texture + and must be greater than zero and less than or equal to the value of GL_MAX_SAMPLES. + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height specify the width and height, + respectively, of the texture and depth specifies the depth (or the number of layers) + of the texture. If fixedsamplelocations is GL_TRUE, + the image will use identical sample locations and the same number of samples for all texels in the image, + and the sample locations will not depend on the internal format or size of the image. + + + + + + Errors + + GL_INVALID_ENUM is generated if internalformat is not a + valid color-renderable, depth-renderable or stencil-renderable format. + + + GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. + + + GL_INVALID_VALUE is generated if width or height + are less than 1 or greater than the value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if depth + is less than 1 or greater than the value of GL_MAX_ARRAY_TEXTURE_LAYERS. + + + GL_INVALID_VALUE is generated if samples is greater than the + value of GL_MAX_SAMPLES. + + + GL_INVALID_OPERATION is generated if the value of GL_TEXTURE_IMMUTABLE_FORMAT + for the texture bound to target is not GL_FALSE. + + + Associated Gets + + glGetInteger with arguments GL_MAX_TEXTURE_SIZE, + GL_MAX_ARRAY_TEXTURE_LEVELS, GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_NUM_LAYERS, or GL_TEXTURE_IMMUTABLE_LEVELS. + + + See Also + + glTexImage3D, + glTexImage3DMultisample, + glTexStorage1D, + glTexStorage2DMultisample, + glTexStorage3D. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTexSubImage1D.xml b/upstream-man-pages/man4/glTexSubImage1D.xml new file mode 100644 index 0000000..3d8e082 --- /dev/null +++ b/upstream-man-pages/man4/glTexSubImage1D.xml @@ -0,0 +1,316 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage1D + 3G + + + glTexSubImage1D + specify a one-dimensional texture subimage + + C Specification + + + void glTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_1D. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable or disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. + + + glTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with width of 0, but + such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glPixelStore modes affect texture images. + + + glTexSubImage1D specifies a one-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not one of the + allowable values. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or if + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, and + b + is + the width of the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. + + + GL_INVALID_VALUE is generated if width is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexParameter, + glTexSubImage2D, + glTexSubImage3D + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTexSubImage2D.xml b/upstream-man-pages/man4/glTexSubImage2D.xml new file mode 100644 index 0000000..ed96573 --- /dev/null +++ b/upstream-man-pages/man4/glTexSubImage2D.xml @@ -0,0 +1,391 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage2D + 3G + + + glTexSubImage2D + specify a two-dimensional texture subimage + + C Specification + + + void glTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + or GL_TEXTURE_1D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + + + glTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + or one-dimensional arary texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + and y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + glPixelStore modes affect texture images. + + + glTexSubImage2D specifies a two-dimensional subtexture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_1D_ARRAY. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, and + b + is the border width + of the texture image being modified. + Note that + w + and + h + include twice the border width. + + + GL_INVALID_VALUE is generated if width or height is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage2D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage3D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTexSubImage3D.xml b/upstream-man-pages/man4/glTexSubImage3D.xml new file mode 100644 index 0000000..8171241 --- /dev/null +++ b/upstream-man-pages/man4/glTexSubImage3D.xml @@ -0,0 +1,448 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glTexSubImage3D + 3G + + + glTexSubImage3D + specify a three-dimensional texture subimage + + C Specification + + + void glTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const GLvoid * data + + + + + + + Parameters + + + target + + + Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + + + + + level + + + Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + + + + + xoffset + + + Specifies a texel offset in the x direction within the texture array. + + + + + yoffset + + + Specifies a texel offset in the y direction within the texture array. + + + + + zoffset + + + Specifies a texel offset in the z direction within the texture array. + + + + + width + + + Specifies the width of the texture subimage. + + + + + height + + + Specifies the height of the texture subimage. + + + + + depth + + + Specifies the depth of the texture subimage. + + + + + format + + + Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. + + + + + type + + + Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. + + + + + data + + + Specifies a pointer to the image data in memory. + + + + + + Description + + Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + + + glTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + or two-dimensioanl array texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive, + and z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. + For three-dimensional textures, the z index refers to the third + dimension. For two-dimensional array textures, the z index refers to + the slice index. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width, height, or + depth but such a specification has no effect. + + + If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. + + + Notes + + The glPixelStore modes affect texture images. + + + glTexSubImage3D specifies a three-dimensional or two-dimenaional array subtexture for the current texture unit, + specified with glActiveTexture. + + + Errors + + GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + + + GL_INVALID_ENUM is generated if format is not an accepted + format constant. + + + GL_INVALID_ENUM is generated if type is not a type constant. + + + GL_INVALID_VALUE is generated if level is less than 0. + + + GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. + + + GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + or + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + depth + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH + and + b + is the border width of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. + + + GL_INVALID_VALUE is generated if width, height, or depth + is less than 0. + + + GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D + or glTexStorage3D operation. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. + + + GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. + + + GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. + + + Associated Gets + + glGetTexImage + + + glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING + + + See Also + + glActiveTexture, + glCopyTexImage1D, + glCopyTexImage2D, + glCopyTexSubImage1D, + glCopyTexSubImage2D, + glCopyTexSubImage3D, + glPixelStore, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, + glTexParameter + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glTextureView.xml b/upstream-man-pages/man4/glTextureView.xml new file mode 100644 index 0000000..e9570bb --- /dev/null +++ b/upstream-man-pages/man4/glTextureView.xml @@ -0,0 +1,357 @@ + + + + + + + 2012 + Khronos Group + + + glTextureView + 3G + + + glTextureView + initialize a texture as a data alias of another texture's data store + + C Specification + + + void glTextureView + GLuint texture + GLenum target + GLuint origtexture + GLenum internalformat + GLuint minlevel + GLuint numlevels + GLuint minlayer + GLuint numlayers + + + + Parameters + + + texture + + + Specifies the texture object to be initialized as a view. + + + + + target + + + Specifies the target to be used for the newly initialized texture. + + + + + origtexture + + + Specifies the name of a texture object of which to make a view. + + + + + internalFormat + + + Specifies the internal format for the newly created view. + + + + + minlevel + + + Specifies lowest level of detail of the view. + + + + + numlevels + + + Specifies the number of levels of detail to include in the view. + + + + + minlayer + + + Specifies the index of the first layer to include in the view. + + + + + numlayers + + + Specifies the number of layers to include in the view. + + + + + + Description + + glTextureView initializes a texture object as an + alias, or view of another texture object, sharing some or all of the + parent texture's data store with the initialized texture. texture + specifies a name previously reserved by a successful call to glGenTextures + but that has not yet been bound or given a target. target + specifies the target for the newly initialized texture and must be compatible + with the target of the parent texture, given in origtexture + as specified in the following table: + + + + + + + + Original Target + Compatible New Targets + + + + + GL_TEXTURE_1D + GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY + + + GL_TEXTURE_2D + GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY + + + GL_TEXTURE_3D + GL_TEXTURE_3D + + + GL_TEXTURE_CUBE_MAP + GL_TEXTURE_CUBE_MAP, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTUER_CUBE_MAP_ARRAY + + + GL_TEXTURE_RECTANGLE + GL_TEXTURE_RECTANGLE + + + GL_TEXTURE_BUFFER + none + + + GL_TEXTURE_1D_ARRAY + GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY + + + GL_TEXTURE_2D_ARRAY + GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY + + + GL_TEXTURE_CUBE_MAP_ARRAY + GL_TEXTURE_CUBE_MAP, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTUER_CUBE_MAP_ARRAY + + + GL_TEXTURE_2D_MULTISAMPLE + GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MULTISAMPLE_ARRAY + + + GL_TEXTURE_2D_MULTISAMPLE_ARRAY + GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MULTISAMPLE_ARRAY + + + + + + The value of GL_TEXTURE_IMMUTABLE_FORMAT for origtexture + must be GL_TRUE. + After initialization, texture inherits the data store of + the parent texture, origtexture and is usable as a normal + texture object with target target. Data in the shared store + is reinterpreted with the new internal format specified by internalformat. + internalformat must be compatible with the internal format + of the parent texture as specified in the following table: + + + + + + + + Class + Internal Formats + + + + + 128-bit + GL_RGBA32F, GL_RGBA32UI, GL_RGBA32I + + + 96-bit + GL_RGB32F, GL_RGB32UI, GL_RGB32I + + + 64-bit + GL_RGBA16F, GL_RG32F, GL_RGBA16UI, + GL_RG32UI, GL_RGBA16I, GL_RG32I, GL_RGBA16, GL_RGBA16_SNORM + + + 48-bit + GL_RGB16, GL_RGB16_SNORM, GL_RGB16F, GL_RGB16UI, GL_RGB16I + + + 32-bit + GL_RG16F, GL_R11F_G11F_B10F, GL_R32F, GL_RGB10_A2UI, + GL_RGBA8UI, GL_RG16UI, GL_R32UI, GL_RGBA8I, + GL_RG16I, GL_R32I, GL_RGB10_A2, GL_RGBA8, + GL_RG16, GL_RGBA8_SNORM, GL_RG16_SNORM, GL_SRGB8_ALPHA8, + GL_RGB9_E5 + + + 24-bit + GL_RGB8, GL_RGB8_SNORM, GL_SRGB8, + GL_RGB8UI, GL_RGB8I + + + 16-bit + GL_R16F, GL_RG8UI, GL_R16UI, GL_RG8I, + GL_R16I, GL_RG8, GL_R16, GL_RG8_SNORM, GL_R16_SNORM + + + 8-bit + GL_R8UI, GL_R8I, GL_R8, GL_R8_SNORM + + + GL_RGTC1_RED + GL_COMPRESSED_RED_RGTC1, GL_COMPRESSED_SIGNED_RED_RGTC1 + + + GL_RGTC2_RG + GL_COMPRESSED_RG_RGTC2, GL_COMPRESSED_SIGNED_RG_RGTC2 + + + GL_BPTC_UNORM + GL_COMPRESSED_RGBA_BPTC_UNORM, GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM + + + GL_BPTC_FLOAT + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT + + + + + + If the original texture is an array or has multiple mipmap levels, + the parameters minlayer, numlayers, minlevel, and numlevels + control which of those slices and levels are considered part of the texture. + The minlevel and minlayer parameters are relative to the view of the + original texture. If numlayers or numlevels extend beyond the original + texture, they are clamped to the max extent of the original texture. + + + If the new texture's target is GL_TEXTURE_CUBE_MAP, the clamped numlayers + must be equal to 6. If the new texture's target is GL_TEXTURE_CUBE_MAP_ARRAY, + then numlayers counts layer-faces rather than layers, and the clamped + numlayers must be a multiple of 6. If the new texture's target is GL_TEXTURE_CUBE_MAP or + GL_TEXTURE_CUBE_MAP_ARRAY, the width and height of the original texture's + levels must be equal. + + + When the original texture's target is GL_TEXTURE_CUBE_MAP, the layer + parameters are interpreted in the same order as if it were a + GL_TEXTURE_CUBE_MAP_ARRAY with 6 layer-faces. + + + If target is GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_RECTANGLE, or + GL_TEXTURE_2D_MULTISAMPLE, numlayers must equal 1. + + + The dimensions of the original texture must be less than or equal to the maximum + supported dimensions of the new target. For example, if the original texture has a GL_TEXTURE_2D_ARRAY + target and its width is greater than GL_MAX_CUBE_MAP_TEXTURE_SIZE, an error + will be generated if glTextureView is called to create a GL_TEXTURE_CUBE_MAP + view. + + + Texture commands that take a level or layer parameter, such as + glTexSubImage2D, interpret that parameter to be relative to the view of the + texture. i.e. the mipmap level of the data store that would be updated via + TexSubImage2D would be the sum of level and the value of + GL_TEXTURE_VIEW_MIN_LEVEL. + + + Errors + + GL_INVALID_VALUE is generated if minlayer or minlevel + are larger than the greatest layer or level of origtexture. + + + GL_INVALID_OPERATION is generated if target is not compatible + with the target of origtexture. + + + GL_INVALID_OPERATION is generated if the dimensions of origtexture + are greater than the maximum supported dimensions for target. + + + GL_INVALID_OPERATION is generated if internalformat is not compatible + with the internal format of origtexture. + + + GL_INVALID_OPERATION is generated if texture has already been bound + or otherwise given a target. + + + GL_INVALID_OPERATION is generated if the value of GL_TEXTURE_IMMUTABLE_FORMAT + for origtexture is not GL_TRUE. + + + GL_INVALID_OPERATION is generated if origtexture is not the name of an + existing texture object. + + + GL_INVALID_VALUE is generaged if target is GL_TEXTURE_CUBE_MAP + and numlayers is not 6, or if target is GL_TEXTURE_CUBE_MAP_ARRAY + and numlayers is not an integer multiple of 6. + + + GL_INVALID_VALUE is generated if target is GL_TEXTURE_1D, + GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_RECTANGLE, or + GL_TEXTURE_2D_MULTISAMPLE and numlayers does not equal 1. + + + GL_INVALID_VALUE is generated if texture zero or is not the name of a texture previously + returned from a successful call to glGenTextures. + + + Associated Gets + + glTexParameter with arguments GL_TEXTURE_VIEW_MIN_LEVEL, + GL_TEXTURE_VIEW_NUM_LEVELS, GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_NUM_LAYERS, or GL_TEXTURE_IMMUTABLE_LEVELS. + + + See Also + + glTexStorage1D, + glTexStorage2D, + glTexStorage3D, + glGetTexParameter. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glTransformFeedbackVaryings.xml b/upstream-man-pages/man4/glTransformFeedbackVaryings.xml new file mode 100644 index 0000000..ef3f5ca --- /dev/null +++ b/upstream-man-pages/man4/glTransformFeedbackVaryings.xml @@ -0,0 +1,157 @@ + + + + + + + 2010 + Khronos Group + + + glTransformFeedbackVaryings + 3G + + + glTransformFeedbackVaryings + specify values to record in transform feedback buffers + + C Specification + + + void glTransformFeedbackVaryings + GLuintprogram + GLsizeicount + const char **varyings + GLenumbufferMode + + + + Parameters + + + program + + + The name of the target program object. + + + + + count + + + The number of varying variables used for transform feedback. + + + + + varyings + + + An array of count zero-terminated strings specifying the + names of the varying variables to use for transform feedback. + + + + + bufferMode + + + Identifies the mode used to capture the varying variables when transform feedback is active. + bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. + + + + + + Description + + The names of the vertex or geometry shader outputs to be recorded in transform feedback mode + are specified using glTransformFeedbackVaryings. When a geometry shader + is active, transform feedback records the values of selected geometry shader output variables + from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are + recorded. + + + The state set by glTranformFeedbackVaryings is stored and takes effect + next time glLinkProgram is called + on program. When glLinkProgram + is called, program is linked so that the values of the specified varying variables + for the vertices of each primitive generated by the GL are written to a single buffer + object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple + buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. + + + In addition to the errors generated by glTransformFeedbackVaryings, the + program program will fail to link if: + + + + The count specified by glTransformFeedbackVaryings is non-zero, but the + program object has no vertex or geometry shader. + + + + + Any variable name specified in the varyings array is not declared as an output + in the vertex shader (or the geometry shader, if active). + + + + + Any two entries in the varyings array specify the same varying variable. + + + + + The total number of components to capture in any varying variable in varyings + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is GL_SEPARATE_ATTRIBS. + + + + + The total number of components to capture is greater than the constant + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer + mode is GL_INTERLEAVED_ATTRIBS. + + + + + + Notes + + glGetTransformFeedbackVarying is available only if the GL version is 3.0 or greater. + + + Errors + + GL_INVALID_VALUE is generated if program is not + the name of a program object. + + + GL_INVALID_VALUE is generated if bufferMode is GL_SEPARATE_ATTRIBS + and count is greater than the implementation-dependent limit GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS. + + + Associated Gets + + glGetTransformFeedbackVarying + + + See Also + + glBeginTransformFeedback, + glEndTransformFeedback, + glGetTransformFeedbackVarying + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glUniform.xml b/upstream-man-pages/man4/glUniform.xml new file mode 100644 index 0000000..9dfc334 --- /dev/null +++ b/upstream-man-pages/man4/glUniform.xml @@ -0,0 +1,560 @@ + + + + + glUniform + 3G + + + glUniform + glUniform1f + glUniform2f + glUniform3f + glUniform4f + glUniform1i + glUniform2i + glUniform3i + glUniform4i + glUniform1ui + glUniform2ui + glUniform3ui + glUniform4ui + glUniform1fv + glUniform2fv + glUniform3fv + glUniform4fv + glUniform1iv + glUniform2iv + glUniform3iv + glUniform4iv + glUniform1uiv + glUniform2uiv + glUniform3uiv + glUniform4uiv + glUniformMatrix2fv + glUniformMatrix3fv + glUniformMatrix4fv + glUniformMatrix2x3fv + glUniformMatrix3x2fv + glUniformMatrix2x4fv + glUniformMatrix4x2fv + glUniformMatrix3x4fv + glUniformMatrix4x3fv + Specify the value of a uniform variable for the current program object + + C Specification + + + void glUniform1f + GLint location + GLfloat v0 + + + void glUniform2f + GLint location + GLfloat v0 + GLfloat v1 + + + void glUniform3f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glUniform4f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glUniform1i + GLint location + GLint v0 + + + void glUniform2i + GLint location + GLint v0 + GLint v1 + + + void glUniform3i + GLint location + GLint v0 + GLint v1 + GLint v2 + + + void glUniform4i + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glUniform1ui + GLint location + GLuint v0 + + + void glUniform2ui + GLint location + GLuint v0 + GLuint v1 + + + void glUniform3ui + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + + + void glUniform4ui + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + + Parameters + + + location + + Specifies the location of the uniform variable + to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified uniform variable. + + + + + C Specification + + + void glUniform1fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform2fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform3fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform4fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform1iv + GLint location + GLsizei count + const GLint *value + + + void glUniform2iv + GLint location + GLsizei count + const GLint *value + + + void glUniform3iv + GLint location + GLsizei count + const GLint *value + + + void glUniform4iv + GLint location + GLsizei count + const GLint *value + + + void glUniform1uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform2uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform3uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform4uiv + GLint location + GLsizei count + const GLuint *value + + + + Parameters + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + C Specification + + + void glUniformMatrix2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + Parameters + + + location + + Specifies the location of the uniform value to + be modified. + + + + count + + Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices. + + + + transpose + + Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable. + + + + value + + Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable. + + + + + Description + glUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glUniform operates on the program object + that was made part of current state by calling + glUseProgram. + + The commands glUniform{1|2|3|4}{f|i|ui} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, unsigned int, bool; + 2 for vec2, ivec2, uvec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed; the suffix ui indicates that + unsigned integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The + ui variants of this function should be used + to provide values for uniform variables defined as unsigned int, uvec2, + uvec3, uvec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i, ui or f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise. + + All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0. + + The commands glUniform{1|2|3|4}{f|i|ui}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glUniform{1|2|3|4}{f|i|ui}. + + For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glUniform3f or + glUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count + + The commands + glUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices. + + Notes + glUniform1i and + glUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error. + + If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged. + + Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged. + + If location is a value other than + -1 and it does not represent a valid uniform variable location + in the current program object, an error will be generated, and + no changes will be made to the uniform variable storage of the + current program object. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed. + + Errors + GL_INVALID_OPERATION is generated if there + is no current program object. + + GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glUniform + command. + + GL_INVALID_OPERATION is generated if one of + the signed or unsigned integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, + ivec4, unsigned int, uvec2, uvec3, + uvec4, or an array of these. + + GL_INVALID_OPERATION is generated if one of + the signed integer variants of this function is used to load a uniform + variable of type unsigned int, uvec2, uvec3, + uvec4, or an array of these. + + GL_INVALID_OPERATION is generated if one of + the unsigned integer variants of this function is used to load a uniform + variable of type int, ivec2, ivec3, + ivec4, or an array of these. + + GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for the current program object and + location is not equal to -1. + + GL_INVALID_VALUE is generated if + count is less than 0. + + GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable. + + GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glUniform1i and + glUniform1iv. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveUniform + with the handle of a program object and the index of an active uniform variable + + glGetUniform + with the handle of a program object and the location of a + uniform variable + + glGetUniformLocation + with the handle of a program object and the name of a uniform + variable + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glUniformBlockBinding.xml b/upstream-man-pages/man4/glUniformBlockBinding.xml new file mode 100644 index 0000000..e7c90e8 --- /dev/null +++ b/upstream-man-pages/man4/glUniformBlockBinding.xml @@ -0,0 +1,110 @@ + + + + + + + 2010 + Khronos Group + + + glUniformBlockBinding + 3G + + + glUniformBlockBinding + assign a binding point to an active uniform block + + C Specification + + + void glUniformBlockBinding + GLuint program + GLuint uniformBlockIndex + GLuint uniformBlockBinding + + + + Parameters + + + program + + + The name of a program object containing the active uniform block whose binding to assign. + + + + + uniformBlockIndex + + + The index of the active uniform block within program whose binding to assign. + + + + + uniformBlockBinding + + + Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program. + + + + + + Description + + Binding points for active uniform blocks are assigned using glUniformBlockBinding. Each of a program's active uniform + blocks has a corresponding uniform buffer binding point. program is the name of a program object for which the command + glLinkProgram has been issued in the past. + + + If successful, glUniformBlockBinding specifies that program will use the data store of the + buffer object bound to the binding point uniformBlockBinding to extract the values of the uniforms in the + uniform block identified by uniformBlockIndex. + + + When a program object is linked or re-linked, the uniform buffer object binding point assigned to each of its active uniform blocks is reset to zero. + + + Errors + + GL_INVALID_VALUE is generated if uniformBlockIndex is not an active uniform block index of program. + + + GL_INVALID_VALUE is generated if uniformBlockBinding is greater than or equal to the value of GL_MAX_UNIFORM_BUFFER_BINDINGS. + + + GL_INVALID_VALUE is generated program is not the name of a program object generated by the GL. + + + Notes + + glUniformBlockBinding is available only if the GL version is 3.1 or greater. + + + Associated Gets + + glGetActiveUniformBlock with argument GL_UNIFORM_BLOCK_BINDING + + + See Also + + glLinkProgram, + glBindBufferBase, + glBindBufferRange, + glGetActiveUniformBlock + + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glUniformSubroutines.xml b/upstream-man-pages/man4/glUniformSubroutines.xml new file mode 100644 index 0000000..d33de5c --- /dev/null +++ b/upstream-man-pages/man4/glUniformSubroutines.xml @@ -0,0 +1,115 @@ + + + + + + + 2010 + Khronos Group. + + + glUniformSubroutines + 3G + + + glUniformSubroutines + load active subroutine uniforms + + C Specification + + + void glUniformSubroutinesuiv + GLenum shadertype + GLsizei count + const GLuint *indices + + + + + Parameters + + + shadertype + + + Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. + + + + + count + + + Specifies the number of uniform indices stored in indices. + + + + + indices + + + Specifies the address of an array holding the indices to load into the shader subroutine variables. + + + + + + Description + + glUniformSubroutines loads all active subroutine uniforms for shader stage + shadertype of the current program with subroutine indices from indices, + storing indices[i] into the uniform at location i. + count must be equal to the value of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS + for the program currently in use at shader stage shadertype. Furthermore, all values in + indices must be less than the value of GL_ACTIVE_SUBROUTINES + for the shader stage. + + + Errors + + GL_INVALID_OPERATION is generated if no program object is current. + + + GL_INVALID_VALUE is generated if count is not equal to the value + of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader stage shadertype + of the current program. + + + GL_INVALID_VALUE is generated if any value in indices is geater + than or equal to the value of GL_ACTIVE_SUBROUTINES for the shader stage shadertype + of the current program. + + + GL_INVALID_ENUM is generated if shadertype is not one of the accepted values. + + + Associated Gets + + glGetProgramStage with argument GL_ACTIVE_SUBROUTINES + + + glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS + + + See Also + + glGetProgram, + glGetActiveSubroutineUniform, + glGetActiveSubroutineUniformName, + glGetProgramStage + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glUseProgram.xml b/upstream-man-pages/man4/glUseProgram.xml new file mode 100644 index 0000000..698e079 --- /dev/null +++ b/upstream-man-pages/man4/glUseProgram.xml @@ -0,0 +1,168 @@ + + + + + glUseProgram + 3G + + + glUseProgram + Installs a program object as part of current rendering state + + C Specification + + + void glUseProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object + whose executables are to be used as part of current + rendering state. + + + + + Description + glUseProgram installs the program + object specified by program as part of + current rendering state. One or more executables are created in + a program object by successfully attaching shader objects to it + with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + + + A program object will contain an executable that will run + on the vertex processor if it contains one or more shader + objects of type GL_VERTEX_SHADER that have + been successfully compiled and linked. A program object will contain an + executable that will run on the geometry processor if it contains one or + more shader objects of type GL_GEOMETRY_SHADER that + have been successfully compiled and linked. + Similarly, a program object will contain an executable that will run on the + fragment processor if it contains one or more shader objects of type + GL_FRAGMENT_SHADER that have been + successfully compiled and linked. + + While a program object is in use, applications are free to + modify attached shader objects, compile attached shader objects, + attach additional shader objects, and detach or delete shader + objects. None of these operations will affect the executables + that are part of the current state. However, relinking the + program object that is currently in use will install the program + object as part of the current rendering state if the link + operation was successful (see + glLinkProgram + ). If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE, but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked. + + If program is zero, then the current rendering + state refers to an invalid program object and the + results of shader execution are undefined. However, this is not an error. + + If program does not + contain shader objects of type GL_FRAGMENT_SHADER, an + executable will be installed on the vertex, and possibly geometry processors, + but the results of fragment shader execution will be undefined. + + Notes + Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well. + + Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads. + + + Errors + GL_INVALID_VALUE is generated if + program is neither 0 nor a value + generated by OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + GL_INVALID_OPERATION is generated if + program could not be made part of current + state. + + GL_INVALID_OPERATION is generated if + transform feedback mode is active. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with a valid program object and the index of an active attribute + variable + + glGetActiveUniform + with a valid program object and the index of an active uniform + variable + + glGetAttachedShaders + with a valid program object + + glGetAttribLocation + with a valid program object and the name of an attribute + variable + + glGetProgram + with a valid program object and the parameter to be queried + + glGetProgramInfoLog + with a valid program object + + glGetUniform + with a valid program object and the location of a uniform + variable + + glGetUniformLocation + with a valid program object and the name of a uniform + variable + + glIsProgram + + See Also + glAttachShader, + glBindAttribLocation, + glCompileShader, + glCreateProgram, + glDeleteProgram, + glDetachShader, + glLinkProgram, + glUniform, + glValidateProgram, + glVertexAttrib + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glUseProgramStages.xml b/upstream-man-pages/man4/glUseProgramStages.xml new file mode 100644 index 0000000..a48b360 --- /dev/null +++ b/upstream-man-pages/man4/glUseProgramStages.xml @@ -0,0 +1,123 @@ + + + + + + + 2010 + Khronos Group + + + glUseProgramStages + 3G + + + glUseProgramStages + bind stages of a program object to a program pipeline + + C Specification + + + void glUseProgramStages + GLuint pipeline + GLbitfield stages + GLuint program + + + + Parameters + + + pipeline + + + Specifies the program pipeline object to which to bind stages from program. + + + + + stages + + + Specifies a set of program stages to bind to the program pipeline object. + + + + + program + + + Specifies the program object containing the shader executables to use in pipeline. + + + + + + Description + + glUseProgramStages binds executables from a program object + associated with a specified set of shader stages to the program pipeline object given + by pipeline. + pipeline specifies the program pipeline object to which to bind + the executables. stages contains a logical combination of bits + indicating the shader stages to use within program with the program + pipeline object pipeline. stages must be + a logical combination of GL_VERTEX_SHADER_BIT, + GL_TESS_CONTROL_SHADER_BIT, GL_TESS_EVALUATION_SHADER_BIT, + GL_GEOMETRY_SHADER_BIT, GL_FRAGMENT_SHADER_BIT and GL_COMPUTE_SHADER_BIT. + Additionally, the special value GL_ALL_SHADER_BITS may be specified to + indicate that all executables contained in program should be + installed in pipeline. + + + If program refers to a program object with a valid shader attached for + an indicated shader stage, glUseProgramStages installs the executable + code for that stage in the indicated program pipeline object pipeline. + If program is zero, or refers to a program object with no valid shader + executable for a given stage, it is as if the pipeline object has no programmable stage configured + for the indicated shader stages. If stages contains bits other than those + listed above, and is not equal to GL_ALL_SHADER_BITS, an error is generated. + + + Notes + + The GL_COMPUTE_SHADER_BIT bit is available only if the GL version is 4.3 or greater. + + + Errors + + GL_INVALID_VALUE is generated if shaders contains + set bits that are not recognized, and is not the reserved value GL_ALL_SHADER_BITS. + + + GL_INVALID_OPERATION is generated if program refers + to a program object that was not linked with its GL_PROGRAM_SEPARABLE status set. + + + GL_INVALID_OPERATION is generated if program refers + to a program object that has not been successfully linked. + + + GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. + + + See Also + + glGenProgramPipelines, + glDeleteProgramPipelines, + glIsProgramPipeline + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glValidateProgram.xml b/upstream-man-pages/man4/glValidateProgram.xml new file mode 100644 index 0000000..6e02901 --- /dev/null +++ b/upstream-man-pages/man4/glValidateProgram.xml @@ -0,0 +1,119 @@ + + + + + glValidateProgram + 3G + + + glValidateProgram + Validates a program object + + C Specification + + + void glValidateProgram + GLuint program + + + + Parameters + + + program + + Specifies the handle of the program object to + be validated. + + + + + Description + glValidateProgram checks to see + whether the executables contained in + program can execute given the current + OpenGL state. The information generated by the validation + process will be stored in program's + information log. The validation information may consist of an + empty string, or it may be a string containing information about + how the current program object interacts with the rest of + current OpenGL state. This provides a way for OpenGL + implementers to convey more information about why the current + program is inefficient, suboptimal, failing to execute, and so + on. + + The status of the validation operation will be stored as + part of the program object's state. This value will be set to + GL_TRUE if the validation succeeded, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_VALIDATE_STATUS. If validation is + successful, program is guaranteed to + execute given the current state. Otherwise, + program is guaranteed to not execute. + + This function is typically useful only during application + development. The informational string stored in the information + log is completely implementation dependent; therefore, an + application should not expect different OpenGL implementations + to produce identical information strings. + + Notes + This function mimics the validation operation that OpenGL + implementations must perform when rendering commands are issued + while programmable shaders are part of current state. The error + GL_INVALID_OPERATION will be generated by + any command that triggers the rendering of geometry if: + + + + any two active samplers in the current program + object are of different types, but refer to the same + texture image unit, + + + the number of active samplers in the program exceeds the maximum + number of texture image units allowed. + + + + It may be difficult or cause a performance degradation for + applications to catch these errors when rendering commands are + issued. Therefore, applications are advised to make calls to + glValidateProgram to detect these issues + during application development. + + Errors + GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL. + + GL_INVALID_OPERATION is generated if + program is not a program object. + + Associated Gets + glGetProgram + with arguments program and + GL_VALIDATE_STATUS + + glGetProgramInfoLog + with argument program + + glIsProgram + + See Also + glLinkProgram, + glUseProgram + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glValidateProgramPipeline.xml b/upstream-man-pages/man4/glValidateProgramPipeline.xml new file mode 100644 index 0000000..e45c42c --- /dev/null +++ b/upstream-man-pages/man4/glValidateProgramPipeline.xml @@ -0,0 +1,91 @@ + + + + + + + 2010 + Khronos Group + + + glValidateProgramPipeline + 3G + + + glValidateProgramPipeline + validate a program pipeline object against current GL state + + C Specification + + + void glValidateProgramPipeline + GLuint pipeline + + + + Parameters + + + pipeline + + + Specifies the name of a program pipeline object to validate. + + + + + + Description + + glValidateProgramPipeline instructs the implementation to validate the + shader executables contained in pipeline against the current GL state. + The implementation may use this as an opportunity to perform any internal shader modifications + that may be required to ensure correct operation of the installed shaders given the + current GL state. + + + After a program pipeline has been validated, its validation status is set to GL_TRUE. + The validation status of a program pipeline object may be queried by calling + glGetProgramPipeline with + parameter GL_VALIDATE_STATUS. + + + If pipeline is a name previously returned from a call to + glGenProgramPipelines but + that has not yet been bound by a call to glBindProgramPipeline, + a new program pipeline object is created with name pipeline and + the default state vector. + + + Errors + + GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. + + + Associated Gets + + glGetProgramPipeline + with parameter GL_VALIDATE_STATUS. + + + + See Also + + glGenProgramPipelines, + glBindProgramPipeline, + glDeleteProgramPipelines + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glVertexAttrib.xml b/upstream-man-pages/man4/glVertexAttrib.xml new file mode 100644 index 0000000..5fee857 --- /dev/null +++ b/upstream-man-pages/man4/glVertexAttrib.xml @@ -0,0 +1,660 @@ + + + + + glVertexAttrib + 3G + + + glVertexAttrib + Specifies the value of a generic vertex attribute + + C Specification + + + void glVertexAttrib1f + GLuint index + GLfloat v0 + + + void glVertexAttrib1s + GLuint index + GLshort v0 + + + void glVertexAttrib1d + GLuint index + GLdouble v0 + + + void glVertexAttribI1i + GLuint index + GLint v0 + + + void glVertexAttribI1ui + GLuint index + GLuint v0 + + + void glVertexAttrib2f + GLuint index + GLfloat v0 + GLfloat v1 + + + void glVertexAttrib2s + GLuint index + GLshort v0 + GLshort v1 + + + void glVertexAttrib2d + GLuint index + GLdouble v0 + GLdouble v1 + + + void glVertexAttribI2i + GLuint index + GLint v0 + GLint v1 + + + void glVertexAttribI2ui + GLuint index + GLuint v0 + GLuint v1 + + + void glVertexAttrib3f + GLuint index + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glVertexAttrib3s + GLuint index + GLshort v0 + GLshort v1 + GLshort v2 + + + void glVertexAttrib3d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + + + void glVertexAttribI3i + GLuint index + GLint v0 + GLint v1 + GLint v2 + + + void glVertexAttribI3ui + GLuint index + GLuint v0 + GLuint v1 + GLuint v2 + + + void glVertexAttrib4f + GLuint index + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glVertexAttrib4s + GLuint index + GLshort v0 + GLshort v1 + GLshort v2 + GLshort v3 + + + void glVertexAttrib4d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + GLdouble v3 + + + void glVertexAttrib4Nub + GLuint index + GLubyte v0 + GLubyte v1 + GLubyte v2 + GLubyte v3 + + + void glVertexAttribI4i + GLuint index + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glVertexAttribI4ui + GLuint index + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + void glVertexAttribL1d + GLuint index + GLdouble v0 + + + void glVertexAttribL2d + GLuint index + GLdouble v0 + GLdouble v1 + + + void glVertexAttribL3d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + + + void glVertexAttribL4d + GLuint index + GLdouble v0 + GLdouble v1 + GLdouble v2 + GLdouble v3 + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + + v0, + v1, + v2, + v3 + + + Specifies the new values to be used for the + specified vertex attribute. + + + + + C Specification + + + void glVertexAttrib1fv + GLuint index + const GLfloat *v + + + void glVertexAttrib1sv + GLuint index + const GLshort *v + + + void glVertexAttrib1dv + GLuint index + const GLdouble *v + + + void glVertexAttribI1iv + GLuint index + const GLint *v + + + void glVertexAttribI1uiv + GLuint index + const GLuint *v + + + void glVertexAttrib2fv + GLuint index + const GLfloat *v + + + void glVertexAttrib2sv + GLuint index + const GLshort *v + + + void glVertexAttrib2dv + GLuint index + const GLdouble *v + + + void glVertexAttribI2iv + GLuint index + const GLint *v + + + void glVertexAttribI2uiv + GLuint index + const GLuint *v + + + void glVertexAttrib3fv + GLuint index + const GLfloat *v + + + void glVertexAttrib3sv + GLuint index + const GLshort *v + + + void glVertexAttrib3dv + GLuint index + const GLdouble *v + + + void glVertexAttribI3iv + GLuint index + const GLint *v + + + void glVertexAttribI3uiv + GLuint index + const GLuint *v + + + void glVertexAttrib4fv + GLuint index + const GLfloat *v + + + void glVertexAttrib4sv + GLuint index + const GLshort *v + + + void glVertexAttrib4dv + GLuint index + const GLdouble *v + + + void glVertexAttrib4iv + GLuint index + const GLint *v + + + void glVertexAttrib4bv + GLuint index + const GLbyte *v + + + void glVertexAttrib4ubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4usv + GLuint index + const GLushort *v + + + void glVertexAttrib4uiv + GLuint index + const GLuint *v + + + void glVertexAttrib4Nbv + GLuint index + const GLbyte *v + + + void glVertexAttrib4Nsv + GLuint index + const GLshort *v + + + void glVertexAttrib4Niv + GLuint index + const GLint *v + + + void glVertexAttrib4Nubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4Nusv + GLuint index + const GLushort *v + + + void glVertexAttrib4Nuiv + GLuint index + const GLuint *v + + + void glVertexAttribI4bv + GLuint index + const GLbyte *v + + + void glVertexAttribI4ubv + GLuint index + const GLubyte *v + + + void glVertexAttribI4sv + GLuint index + const GLshort *v + + + void glVertexAttribI4usv + GLuint index + const GLushort *v + + + void glVertexAttribI4iv + GLuint index + const GLint *v + + + void glVertexAttribI4uiv + GLuint index + const GLuint *v + + + void glVertexAttribL1dv + GLuint index + const GLdouble *v + + + void glVertexAttribL2dv + GLuint index + const GLdouble *v + + + void glVertexAttribL3dv + GLuint index + const GLdouble *v + + + void glVertexAttribL4dv + GLuint index + const GLdouble *v + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + v + + Specifies a pointer to an array of values to + be used for the generic vertex attribute. + + + + + C Specification + + + void glVertexAttribP1ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP2ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP3ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP4ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + type + + Type of packing used on the data. This parameter must be + GL_INT_10_10_10_2 or GL_UNSIGNED_INT_10_10_10_2 + to specify signed or unsigned data, respectively. + + + + normalized + + If GL_TRUE, then the values are to be + converted to floating point values by normalizing. Otherwise, + they are converted directly to floating point values. + + + + + value + + + Specifies the new packed value to be used for the + specified vertex attribute. + + + + + Description + The glVertexAttrib family of entry points + allows an application to pass generic vertex attributes in + numbered locations. + + Generic attributes are defined as four-component values + that are organized into an array. The first entry of this array + is numbered 0, and the size of the array is specified by the + implementation-dependent constant + GL_MAX_VERTEX_ATTRIBS. Individual elements + of this array can be modified with a + glVertexAttrib call that specifies the + index of the element to be modified and a value for that + element. + + These commands can be used to specify one, two, three, or + all four components of the generic vertex attribute specified by + index. A 1 in the + name of the command indicates that only one value is passed, and + it will be used to modify the first component of the generic + vertex attribute. The second and third components will be set to + 0, and the fourth component will be set to 1. Similarly, a + 2 in the name of the command indicates that + values are provided for the first two components, the third + component will be set to 0, and the fourth component will be set + to 1. A 3 in the name of the command + indicates that values are provided for the first three + components and the fourth component will be set to 1, whereas a + 4 in the name indicates that values are + provided for all four components. + + The letters s, + f, i, + d, ub, + us, and ui indicate + whether the arguments are of type short, float, int, double, + unsigned byte, unsigned short, or unsigned int. When + v is appended to the name, the commands can + take a pointer to an array of such values. + + Additional capitalized letters can indicate further alterations + to the default behavior of the glVertexAttrib function: + + + The commands containing N indicate that + the arguments will be passed as fixed-point values that are + scaled to a normalized range according to the component + conversion rules defined by the OpenGL specification. Signed + values are understood to represent fixed-point values in the + range [-1,1], and unsigned values are understood to represent + fixed-point values in the range [0,1]. + + + + The commands containing I indicate that + the arguments are extended to full signed or unsigned integers. + + + + The commands containing P indicate that + the arguments are stored as packed components within a larger + natural type. + + + + The commands containing L indicate that + the arguments are full 64-bit quantities and should be passed directly + to shader inputs declared as 64-bit double precision types. + + + OpenGL Shading Language attribute variables are allowed to + be of type mat2, mat3, or mat4. Attributes of these types may be + loaded using the glVertexAttrib entry + points. Matrices must be loaded into successive generic + attribute slots in column major order, with one column of the + matrix in each generic attribute slot. + + A user-defined attribute variable declared in a vertex + shader can be bound to a generic attribute index by calling + glBindAttribLocation. + This allows an application to use more descriptive variable + names in a vertex shader. A subsequent change to the specified + generic vertex attribute will be immediately reflected as a + change to the corresponding attribute variable in the vertex + shader. + + The binding between a generic vertex attribute index and a + user-defined attribute variable in a vertex shader is part of + the state of a program object, but the current value of the + generic vertex attribute is not. The value of each generic + vertex attribute is part of current state, just like standard + vertex attributes, and it is maintained even if a different + program object is used. + + An application may freely modify generic vertex attributes + that are not bound to a named vertex shader attribute variable. + These values are simply maintained as part of current state and + will not be accessed by the vertex shader. If a generic vertex + attribute bound to an attribute variable in a vertex shader is + not updated while the vertex shader is executing, the vertex + shader will repeatedly use the current value for the generic + vertex attribute. + + Notes + Generic vertex attributes can be updated at any time. + + It is possible for an application to bind more than one + attribute name to the same generic vertex attribute index. This + is referred to as aliasing, and it is allowed only if just one + of the aliased attribute variables is active in the vertex + shader, or if no path through the vertex shader consumes more + than one of the attributes aliased to the same location. OpenGL + implementations are not required to do error checking to detect + aliasing, they are allowed to assume that aliasing will not + occur, and they are allowed to employ optimizations that work + only in the absence of aliasing. + + There is no provision for binding standard vertex + attributes; therefore, it is not possible to alias generic + attributes with standard attributes. + + + glVertexAttribL versions are available only if the GL version is 4.1 or higher. + + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_ENUM is generated if + glVertexAttribP is used with a + type other than + GL_INT_10_10_10_2 or + GL_UNSIGNED_INT_10_10_10_2. + + GL_INVALID_ENUM is generated if + glVertexAttribL is used with a + type other than + GL_DOUBLE. + + + Associated Gets + glGet + with the argument GL_CURRENT_PROGRAM + + glGetActiveAttrib + with argument program and the index of an active + attribute variable + + glGetAttribLocation + with argument program and an attribute + variable name + + glGetVertexAttrib + with arguments GL_CURRENT_VERTEX_ATTRIB and + index + + See Also + glBindAttribLocation, + glVertexAttribPointer + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glVertexAttribBinding.xml b/upstream-man-pages/man4/glVertexAttribBinding.xml new file mode 100644 index 0000000..30efe82 --- /dev/null +++ b/upstream-man-pages/man4/glVertexAttribBinding.xml @@ -0,0 +1,92 @@ + + + + + + + 2012 + Khronos Group + + + glVertexAttribBinding + 3G + + + glVertexAttribBinding + associate a vertex attribute and a vertex buffer binding + + C Specification + + + void glVertexAttribBinding + GLuint attribindex + GLuint bindingindex + + + + Parameters + + + attribindex + + + The index of the attribute to associate with a vertex buffer binding. + + + + + bindingindex + + + The index of the vertex buffer binding with which to associate the generic vertex attribute. + + + + + + Description + + glVertexAttribBinding, establishes an association between the generic vertex + attribute whose index is given by attribindex and a vertex buffer binding + whose index is given by bindingindex. attribindex + must be less than the value of GL_MAX_VERTEX_ATTRIBS and bindingindex + must be less than the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. + + + Errors + + GL_INVALID_VALUE is generated if attribindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIBS. + + + GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. + + + GL_INVALID_OPERATION is generated if no vertex array object is bound. + + + Associated Gets + + glGet with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, + GL_VERTEX_BINDING_DIVISOR. + + + See Also + + glBindVertexBuffer, + glVertexAttribFormat, + glVertexBindingDivisor, + glVertexAttribPointer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glVertexAttribDivisor.xml b/upstream-man-pages/man4/glVertexAttribDivisor.xml new file mode 100644 index 0000000..72ffc28 --- /dev/null +++ b/upstream-man-pages/man4/glVertexAttribDivisor.xml @@ -0,0 +1,86 @@ + + + + + + + 2010 + Khronos Group + + + glVertexAttribDivisor + 3G + + + glVertexAttribDivisor + modify the rate at which generic vertex attributes advance during instanced rendering + + C Specification + + + void glVertexAttribDivisor + GLuint index + GLuint divisor + + + + Parameters + + + index + + + Specify the index of the generic vertex attribute. + + + + + divisor + + + Specify the number of instances that will pass between updates of the generic attribute at slot index. + + + + + + Description + + glVertexAttribDivisor modifies the rate at which generic vertex attributes advance when rendering + multiple instances of primitives in a single draw call. If divisor is zero, the attribute at slot + index advances once per vertex. If divisor is non-zero, the attribute advances + once per divisor instances of the set(s) of vertices being rendered. An attribute + is referred to as instanced if its GL_VERTEX_ATTRIB_ARRAY_DIVISOR value is non-zero. + + + index must be less than the value of GL_MAX_VERTEX_ATTRIBUTES. + + + Notes + + glVertexAttribDivisor is available only if the GL version is 3.3 or higher. + + + Errors + + GL_INVALID_VALUE is generated if index is greater + than or equal to the value of GL_MAX_VERTEX_ATTRIBUTES. + + + See Also + + glVertexAttribPointer, + glEnableVertexAttribArray, + glDisableVertexAttribArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glVertexAttribFormat.xml b/upstream-man-pages/man4/glVertexAttribFormat.xml new file mode 100644 index 0000000..2286e0d --- /dev/null +++ b/upstream-man-pages/man4/glVertexAttribFormat.xml @@ -0,0 +1,193 @@ + + + + + + + 2012 + Khronos Group + + + glVertexAttribFormat + 3G + + + glVertexAttribFormat + specify the organization of vertex arrays + + C Specification + + + void glVertexAttribFormat + GLuint attribindex + GLint size + GLenum type + GLboolean normalized + GLuint relativeoffset + + + + + void glVertexAttribIFormat + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + + + void glVertexAttribLFormat + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + + Parameters + + + attribindex + + + The generic vertex attribute array being described. + + + + + size + + + The number of values per vertex that are stored in the array. + + + + + type + + + The type of the data stored in the array. + + + + + normalized + + + The distance between elements within the buffer. + + + + + relativeoffset + + + The distance between elements within the buffer. + + + + + + Description + + glVertexAttribFormat, glVertexAttribIFormat and + glVertexAttribLFormat specify the organization of data in vertex arrays. + attribindex specifies the index of the generic vertex attribute + array whose data layout is being described, and must be less + than the value of GL_MAX_VERTEX_ATTRIBS. + + + size determines the number of components per vertex are allocated + to the specifed attribute and must be 1, 2, 3 or 4. type indicates + the type of the data. If type is one of GL_BYTE, + GL_SHORT, GL_INT, GL_FIXED, + GL_FLOAT, GL_HALF_FLOAT, and + GL_DOUBLE indicate types GLbyte, GLshort, + GLint, GLfixed, GLfloat, GLhalf, and + GLdouble, respectively; the values GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, and GL_UNSIGNED_INT indicate types + GLubyte, GLushort, and GLuint, + respectively; and the values GL_INT_2_10_10_10_REV and + GL_UNSIGNED_INT_2_10_10_10_REV indicating respectively four signed or + unsigned elements packed into a single GLuint. + + + glVertexAttribLFormat is used to specify layout for + data associated with a generic attribute variable declared as 64-bit double precision + components. For glVertexAttribLFormat, type + must be GL_DOUBLE. In contrast to glVertexAttribFormat, + which will cause data declared as GL_DOUBLE to be converted to 32-bit + representation, glVertexAttribLFormat causes such data to be left + in its natural, 64-bit representation. + + + For glVertexAttribFormat, if normalized is + GL_TRUE, then integer data is normalized to the range [-1, 1] or + [0, 1] if it is signed or unsigned, respectively. If noramlized is + GL_FALSE then integer data is directly converted to floating point. + + + relativeoffset is the offset, measured in basic machine units + of the first element relative to the start of the vertex buffer binding this attribute + fetches from. + + + glVertexAttribFormat should be used to describe vertex attribute + layout for floating-point vertex attributes, glVertexAttribIFormat + should be used to describe vertex attribute layout for integer vertex attribute + and glVertexAttribLFormat should be used to describe the layout + for 64-bit vertex attributes. Data for an array specified by + glVertexAttribIFormat will always be left as integer values; + such data are referred to as pure integers. + + + Errors + + GL_INVAILD_VALUE is generated if attribindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIBS. + + + GL_INVALID_VALUE is generated if size is not + one of the accepted values. + + + GL_INVALID_VALUE is generated if relativeoffset is greater + than the value of GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET. + + + GL_INVALID_ENUM is generated if type is not + one of the accepted tokens. + + + GL_INVALID_OPERATION is generated if no vertex array object is bound. + + + Associated Gets + + glGet with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, + or GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET. + + + glGetVertexAttrib with argument GL_VERTEX_ATTRIB_RELATIVE_OFFSET. + + + See Also + + glBindVertexBuffer, + glVertexAttribBinding, + glVertexAttribPointer, + glVertexBindingDivisor, + glVertexAttribPointer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glVertexAttribPointer.xml b/upstream-man-pages/man4/glVertexAttribPointer.xml new file mode 100644 index 0000000..6fede1d --- /dev/null +++ b/upstream-man-pages/man4/glVertexAttribPointer.xml @@ -0,0 +1,256 @@ + + + + + glVertexAttribPointer + 3G + + + glVertexAttribPointer + define an array of generic vertex attribute data + + C Specification + + + void glVertexAttribPointer + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + const GLvoid * pointer + + + void glVertexAttribIPointer + GLuint index + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + void glVertexAttribLPointer + GLuint index + GLint size + GLenum type + GLsizei stride + const GLvoid * pointer + + + + Parameters + + + index + + Specifies the index of the generic vertex + attribute to be modified. + + + + size + + Specifies the number of components per + generic vertex attribute. Must + be 1, 2, 3, 4. Additionally, the symbolic constant GL_BGRA + is accepted by glVertexAttribPointer. The initial value is 4. + + + + type + + Specifies the data type of each component in + the array. The symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, and + GL_UNSIGNED_INT are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally + GL_HALF_FLOAT, + GL_FLOAT, + GL_DOUBLE, + GL_FIXED, + GL_INT_2_10_10_10_REV, and + GL_UNSIGNED_INT_2_10_10_10_REV are accepted by glVertexAttribPointer. + GL_DOUBLE is also accepted by glVertexAttribLPointer and is + the only token accepted by the type parameter for that function. + The initial value is GL_FLOAT. + + + + normalized + + For glVertexAttribPointer, specifies whether fixed-point data values + should be normalized (GL_TRUE) + or converted directly as fixed-point values + (GL_FALSE) when they are + accessed. + + + + stride + + Specifies the byte offset between consecutive + generic vertex attributes. If stride + is 0, the generic vertex attributes are + understood to be tightly packed in the + array. The initial value is 0. + + + + pointer + + Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the + buffer currently bound to the GL_ARRAY_BUFFER target. The initial value is 0. + + + + + Description + + glVertexAttribPointer, glVertexAttribIPointer and glVertexAttribLPointer + specify the + location and data format of the array of generic vertex attributes at index index + to use when rendering. size specifies the number of components per attribute and + must be 1, 2, 3, 4, or GL_BGRA. type specifies the data type + of each component, and stride specifies the byte stride from one attribute to the next, + allowing vertices and attributes to be packed into a single array or stored in separate arrays. + + + For glVertexAttribPointer, if normalized is set to GL_TRUE, + it indicates that values stored in an integer format are to be mapped to the range [-1,1] (for signed values) or [0,1] (for + unsigned values) when they are accessed and converted to floating point. Otherwise, values will + be converted to floats directly without normalization. + + + For glVertexAttribIPointer, only the integer types GL_BYTE, + GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, + GL_INT, GL_UNSIGNED_INT are accepted. Values are always left as integer values. + + + glVertexAttribLPointer specifies state for a generic vertex attribute array associated + with a shader attribute variable declared with 64-bit double precision components. type + must be GL_DOUBLE. index, size, and + stride behave as described for glVertexAttribPointer and + glVertexAttribIPointer. + + + If pointer is not NULL, a non-zero named buffer object must be bound to the + GL_ARRAY_BUFFER target (see glBindBuffer), + otherwise an error is generated. pointer is treated as a byte offset into the buffer object's data store. + The buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array + state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index. + + + When a generic vertex attribute array is specified, + size, type, + normalized, + stride, and + pointer are saved as vertex array + state, in addition to the current vertex array buffer object binding. + + + + To enable and disable a generic vertex attribute array, call + glEnableVertexAttribArray and + glDisableVertexAttribArray with index. + If enabled, the generic vertex attribute array is used when glDrawArrays, + glMultiDrawArrays, glDrawElements, + glMultiDrawElements, or glDrawRangeElements + is called. + + + Notes + + Each generic vertex attribute array is initially disabled and isn't accessed when + glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. + + + + Errors + GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS. + + GL_INVALID_VALUE is generated if + size is not 1, 2, 3, 4 or (for glVertexAttribPointer), + GL_BGRA. + + GL_INVALID_ENUM is generated if + type is not an accepted value. + + GL_INVALID_VALUE is generated if + stride is negative. + + GL_INVALID_OPERATION is generated if size + is GL_BGRA and type is not GL_UNSIGNED_BYTE, + GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV. + + GL_INVALID_OPERATION is generated if type + is GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV + and size is not 4 or GL_BGRA. + + GL_INVALID_OPERATION is generated by glVertexAttribPointer + if size is GL_BGRA and noramlized + is GL_FALSE. + + GL_INVALID_OPERATION is generated if zero is bound to the + GL_ARRAY_BUFFER buffer object binding point and the + pointer argument is not NULL. + + Associated Gets + glGet + with argument GL_MAX_VERTEX_ATTRIBS + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_ENABLED + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_SIZE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_TYPE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_NORMALIZED + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_STRIDE + + glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING + + glGet with argument + GL_ARRAY_BUFFER_BINDING + + glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER + + See Also + + glBindAttribLocation, + glBindBuffer, + glDisableVertexAttribArray, + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glEnableVertexAttribArray, + glMultiDrawArrays, + glMultiDrawElements, + glVertexAttrib + + + Copyright + + Copyright 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glVertexBindingDivisor.xml b/upstream-man-pages/man4/glVertexBindingDivisor.xml new file mode 100644 index 0000000..abb4907 --- /dev/null +++ b/upstream-man-pages/man4/glVertexBindingDivisor.xml @@ -0,0 +1,91 @@ + + + + + + + 2012 + Khronos Group + + + glVertexBindingDivisor + 3G + + + glVertexBindingDivisor + modify the rate at which generic vertex attributes advance + + C Specification + + + void glVertexBindingDivisor + GLuint bindingindex + GLuint divisor + + + + Parameters + + + bindingindex + + + The index of the binding whose divisor to modify. + + + + + divisor + + + The new value for the instance step rate to apply. + + + + + + Description + + glVertexBindingDivisor, modifies the rate at which generic vertex attributes advance when + rendering multiple instances of primitives in a single draw command. If + divisor is zero, the attributes using the buffer bound to bindingindex + advance once per vertex. If divisor is non-zero, the attributes advance + once per divisor instances of the set(s) of vertices being rendered. An + attribute is referred to as instanced if the corresponding divisor + value is non-zero. + + + Errors + + GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. + + + GL_INVALID_OPERATION is generated if no vertex array object is bound. + + + Associated Gets + + glGet with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, + GL_VERTEX_BINDING_DIVISOR. + + + See Also + + glBindVertexBuffer, + glVertexAttribBinding, + glVertexAttribPointer, + glVertexBindingDivisor, + glVertexAttribPointer. + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glViewport.xml b/upstream-man-pages/man4/glViewport.xml new file mode 100644 index 0000000..935b9f1 --- /dev/null +++ b/upstream-man-pages/man4/glViewport.xml @@ -0,0 +1,188 @@ + + + + + + + 1991-2006 + Silicon Graphics, Inc. + + + glViewport + 3G + + + glViewport + set the viewport + + C Specification + + + void glViewport + GLint x + GLint y + GLsizei width + GLsizei height + + + + + Parameters + + + x + y + + + Specify the lower left corner of the viewport rectangle, + in pixels. The initial value is (0,0). + + + + + width + height + + + Specify the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + + Description + + glViewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: + + + + + + x + w + + = + + + + x + nd + + + + 1 + + + + + + width + 2 + + + + + x + + + + + + + + + y + w + + = + + + + y + nd + + + + 1 + + + + + + height + 2 + + + + + y + + + + + + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. + + + Errors + + GL_INVALID_VALUE is generated if either width or height is negative. + + + Associated Gets + + glGet with argument GL_VIEWPORT + + + glGet with argument GL_MAX_VIEWPORT_DIMS + + + See Also + + glDepthRange + + + Copyright + + Copyright 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. + + + diff --git a/upstream-man-pages/man4/glViewportArray.xml b/upstream-man-pages/man4/glViewportArray.xml new file mode 100644 index 0000000..d64d5a2 --- /dev/null +++ b/upstream-man-pages/man4/glViewportArray.xml @@ -0,0 +1,233 @@ + + + + + + + 2010 + Khronos Group + + + glViewportArray + 3G + + + glViewportArray + set multiple viewports + + C Specification + + + void glViewportArrayv + GLuint first + GLsizei count + const GLfloat *v + + + + + Parameters + + + first + + + Specify the first viewport to set. + + + + + count + + + Specify the number of viewports to set. + + + + + v + + + Specify the address of an array containing the viewport parameters. + + + + + + Description + + glViewportArrayv specifies the parameters for multiple viewports + simulataneously. first specifies the index of the first viewport + to modify and count specifies the number of viewports to modify. + first must be less than the value of GL_MAX_VIEWPORTS, + and first + count must be less than or equal to + the value of GL_MAX_VIEWPORTS. Viewports whose indices lie outside + the range [first, first + count) + are not modified. v contains the address of an array of floating + point values specifying the + left (x), + bottom (y), + width (w), + and height (h) + of each viewport, in that order. x + and y give + the location of the viewport's lower left corner, and + w + and h + give the width and height of the viewport, respectively. + The viewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: + + + + + + x + w + + = + + + + x + nd + + + + 1 + + + + + + width + 2 + + + + + x + + + + + + + + + y + w + + = + + + + y + nd + + + + 1 + + + + + + height + 2 + + + + + y + + + + + + The location of the viewport's bottom left corner, given by + (x, y) + is clamped to be within the implementaiton-dependent viewport bounds range. + The viewport bounds range [min, max] + can be determined by calling glGet with argument + GL_VIEWPORT_BOUNDS_RANGE. + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. + + + The precision with which the GL interprets the floating point viewport bounds is implementation-dependent + and may be determined by querying the impementation-defined constant GL_VIEWPORT_SUBPIXEL_BITS. + + + Errors + + GL_INVALID_VALUE is generated if first is greater than or equal to + the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if first + count + is greater than or equal to the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + Associated Gets + + glGet with argument GL_VIEWPORT + + + glGet with argument GL_MAX_VIEWPORT_DIMS + + + glGet with argument GL_VIEWPORT_BOUNDS_RANGE + + + glGet with argument GL_VIEWPORT_SUBPIXEL_BITS + + + See Also + + glDepthRange, + glViewport, + glViewportIndexed + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glViewportIndexed.xml b/upstream-man-pages/man4/glViewportIndexed.xml new file mode 100644 index 0000000..003091d --- /dev/null +++ b/upstream-man-pages/man4/glViewportIndexed.xml @@ -0,0 +1,265 @@ + + + + + + + 2010 + Khronos Group + + + glViewportIndexed + 3G + + + glViewportIndexed + set a specified viewport + + C Specification + + + void glViewportIndexedf + GLuint index + GLfloat x + GLfloat y + GLfloat w + GLfloat h + + + + + void glViewportIndexedfv + GLuint index + const GLfloat *v + + + + + Parameters + + + index + + + Specify the first viewport to set. + + + + + x + y + + + For glViewportIndexedf, specifies the lower left corner of + the viewport rectangle, in pixels. The initial value is (0,0). + + + + + width + height + + + For glViewportIndexedf, specifies the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. + + + + + v + + + For glViewportIndexedfv, specifies the address of an array containing the viewport parameters. + + + + + + Description + + glViewportIndexedf and glViewportIndexedfv + specify the parameters for a single viewport. + index specifies the index of the viewport + to modify. + index must be less than the value of GL_MAX_VIEWPORTS. + For glViewportIndexedf, x, y, + w, and h specify the left, bottom, width and height + of the viewport in pixels, respectively. + For glViewportIndexedfv, v contains the address of an array of floating + point values specifying the + left (x), + bottom (y), + width (w), + and height (h) + of each viewport, in that order. x + and y give + the location of the viewport's lower left corner, and + w + and h + give the width and height of the viewport, respectively. + The viewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: + + + + + + x + w + + = + + + + x + nd + + + + 1 + + + + + + width + 2 + + + + + x + + + + + + + + + y + w + + = + + + + y + nd + + + + 1 + + + + + + height + 2 + + + + + y + + + + + + The location of the viewport's bottom left corner, given by + (x, y) + is clamped to be within the implementaiton-dependent viewport bounds range. + The viewport bounds range [min, max] + can be determined by calling glGet with argument + GL_VIEWPORT_BOUNDS_RANGE. + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. + + + The precision with which the GL interprets the floating point viewport bounds is implementation-dependent + and may be determined by querying the impementation-defined constant GL_VIEWPORT_SUBPIXEL_BITS. + + + Calling glViewportIndexedfv is equivalent to calling glViewportArray + with first set to index, count set to + 1 and v passsed directly. glViewportIndexedf is equivalent + to: + + + + Errors + + GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_MAX_VIEWPORTS. + + + GL_INVALID_VALUE is generated if either width or height is negative. + + + Associated Gets + + glGet with argument GL_VIEWPORT + + + glGet with argument GL_MAX_VIEWPORT_DIMS + + + glGet with argument GL_VIEWPORT_BOUNDS_RANGE + + + glGet with argument GL_VIEWPORT_SUBPIXEL_BITS + + + See Also + + glDepthRange, + glViewport, + glViewportArray + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/glWaitSync.xml b/upstream-man-pages/man4/glWaitSync.xml new file mode 100644 index 0000000..c7cdb25 --- /dev/null +++ b/upstream-man-pages/man4/glWaitSync.xml @@ -0,0 +1,102 @@ + + + + + + + 2010 + Khronos Group + + + glWaitSync + 3G + + + glWaitSync + instruct the GL server to block until the specified sync object becomes signaled + + C Specification + + + void glWaitSync + GLsync sync + GLbitfield flags + GLuint64 timeout + + + + Parameters + + + sync + + + Specifies the sync object whose status to wait on. + + + + + flags + + + A bitfield controlling the command flushing behavior. flags may be zero. + + + + + timeout + + + Specifies the timeout that the server should wait before continuing. timeout must be GL_TIMEOUT_IGNORED. + + + + + + Description + + glWaitSync causes the GL server to block and wait until sync becomes signaled. sync + is the name of an existing sync object upon which to wait. flags and timeout are currently not used and + must be set to zero and the special value GL_TIMEOUT_IGNORED, respectivelyflags and + timeout are placeholders for anticipated future extensions of sync object capabilities. They must have these reserved values in + order that existing code calling glWaitSync operate properly in the presence of such extensions.. glWaitSync will always wait no longer than an implementation-dependent timeout. The + duration of this timeout in nanoseconds may be queried by calling glGet with the + parameter GL_MAX_SERVER_WAIT_TIMEOUT. There is currently no way to determine whether glWaitSync unblocked + because the timeout expired or because the sync object being waited on was signaled. + + + If an error occurs, glWaitSync does not cause the GL server to block. + + + Notes + + glWaitSync is available only if the GL version is 3.2 or higher. + + + Errors + + GL_INVALID_OPERATION is generated if sync is not the name of a sync object. + + + GL_INVALID_VALUE is generated if flags is not zero. + + + GL_INVALID_VALUE is generated if timeout is not GL_TIMEOUT_IGNORED. + + + See Also + + glFenceSync, + glClientWaitSync + + + Copyright + + Copyright 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/index.php b/upstream-man-pages/man4/index.php new file mode 100644 index 0000000..479d711 --- /dev/null +++ b/upstream-man-pages/man4/index.php @@ -0,0 +1,9 @@ + + +OpenGL 4 Reference Pages + + + + + + diff --git a/upstream-man-pages/man4/internalformattable.xml b/upstream-man-pages/man4/internalformattable.xml new file mode 100644 index 0000000..c1f02ae --- /dev/null +++ b/upstream-man-pages/man4/internalformattable.xml @@ -0,0 +1,590 @@ + + +Sized Internal Formats + + + + + + + + + + + + Sized Internal Format + + + Base Internal Format + + + Red Bits + + + Green Bits + + + Blue Bits + + + Alpha Bits + + + Shared Bits + + + + + + GL_R8 + GL_RED + 8 + + + + + + + GL_R8_SNORM + GL_RED + s8 + + + + + + + GL_R16 + GL_RED + 16 + + + + + + + GL_R16_SNORM + GL_RED + s16 + + + + + + + GL_RG8 + GL_RG + 8 + 8 + + + + + + GL_RG8_SNORM + GL_RG + s8 + s8 + + + + + + GL_RG16 + GL_RG + 16 + 16 + + + + + + GL_RG16_SNORM + GL_RG + s16 + s16 + + + + + + GL_R3_G3_B2 + GL_RGB + 3 + 3 + 2 + + + + + GL_RGB4 + GL_RGB + 4 + 4 + 4 + + + + + GL_RGB5 + GL_RGB + 5 + 5 + 5 + + + + + GL_RGB8 + GL_RGB + 8 + 8 + 8 + + + + + GL_RGB8_SNORM + GL_RGB + s8 + s8 + s8 + + + + + GL_RGB10 + GL_RGB + 10 + 10 + 10 + + + + + GL_RGB12 + GL_RGB + 12 + 12 + 12 + + + + + GL_RGB16_SNORM + GL_RGB + 16 + 16 + 16 + + + + + GL_RGBA2 + GL_RGB + 2 + 2 + 2 + 2 + + + + GL_RGBA4 + GL_RGB + 4 + 4 + 4 + 4 + + + + GL_RGB5_A1 + GL_RGBA + 5 + 5 + 5 + 1 + + + + GL_RGBA8 + GL_RGBA + 8 + 8 + 8 + 8 + + + + GL_RGBA8_SNORM + GL_RGBA + s8 + s8 + s8 + s8 + + + + GL_RGB10_A2 + GL_RGBA + 10 + 10 + 10 + 2 + + + + GL_RGB10_A2UI + GL_RGBA + ui10 + ui10 + ui10 + ui2 + + + + GL_RGBA12 + GL_RGBA + 12 + 12 + 12 + 12 + + + + GL_RGBA16 + GL_RGBA + 16 + 16 + 16 + 16 + + + + GL_SRGB8 + GL_RGB + 8 + 8 + 8 + + + + + GL_SRGB8_ALPHA8 + GL_RGBA + 8 + 8 + 8 + 8 + + + + GL_R16F + GL_RED + f16 + + + + + + + GL_RG16F + GL_RG + f16 + f16 + + + + + + GL_RGB16F + GL_RGB + f16 + f16 + f16 + + + + + GL_RGBA16F + GL_RGBA + f16 + f16 + f16 + f16 + + + + GL_R32F + GL_RED + f32 + + + + + + + GL_RG32F + GL_RG + f32 + f32 + + + + + + GL_RGB32F + GL_RGB + f32 + f32 + f32 + + + + + GL_RGBA32F + GL_RGBA + f32 + f32 + f32 + f32 + + + + GL_R11F_G11F_B10F + GL_RGB + f11 + f11 + f10 + + + + + GL_RGB9_E5 + GL_RGB + 9 + 9 + 9 + + 5 + + + GL_R8I + GL_RED + i8 + + + + + + + GL_R8UI + GL_RED + ui8 + + + + + + + GL_R16I + GL_RED + i16 + + + + + + + GL_R16UI + GL_RED + ui16 + + + + + + + GL_R32I + GL_RED + i32 + + + + + + + GL_R32UI + GL_RED + ui32 + + + + + + + GL_RG8I + GL_RG + i8 + i8 + + + + + + GL_RG8UI + GL_RG + ui8 + ui8 + + + + + + GL_RG16I + GL_RG + i16 + i16 + + + + + + GL_RG16UI + GL_RG + ui16 + ui16 + + + + + + GL_RG32I + GL_RG + i32 + i32 + + + + + + GL_RG32UI + GL_RG + ui32 + ui32 + + + + + + GL_RGB8I + GL_RGB + i8 + i8 + i8 + + + + + GL_RGB8UI + GL_RGB + ui8 + ui8 + ui8 + + + + + GL_RGB16I + GL_RGB + i16 + i16 + i16 + + + + + GL_RGB16UI + GL_RGB + ui16 + ui16 + ui16 + + + + + GL_RGB32I + GL_RGB + i32 + i32 + i32 + + + + + GL_RGB32UI + GL_RGB + ui32 + ui32 + ui32 + + + + + GL_RGBA8I + GL_RGBA + i8 + i8 + i8 + i8 + + + + GL_RGBA8UI + GL_RGBA + ui8 + ui8 + ui8 + ui8 + + + + GL_RGBA16I + GL_RGBA + i16 + i16 + i16 + i16 + + + + GL_RGBA16UI + GL_RGBA + ui16 + ui16 + ui16 + ui16 + + + + GL_RGBA32I + GL_RGBA + i32 + i32 + i32 + i32 + + + + GL_RGBA32UI + GL_RGBA + ui32 + ui32 + ui32 + ui32 + + + + +
diff --git a/upstream-man-pages/man4/removedTypes.xml b/upstream-man-pages/man4/removedTypes.xml new file mode 100644 index 0000000..3d235ac --- /dev/null +++ b/upstream-man-pages/man4/removedTypes.xml @@ -0,0 +1,58 @@ + + + + + + + 2012 + Khronos Group + + + removedTypes + 3G + + + removedTypes + Describes types removed and replaced in the OpenGL API in OpenGL 4.2 + + Description + + In the May, 2012 update of the OpenGL 4.2 Specification, all + APIs using the types GLclampf and GLclampd were modified to + use GLfloat and GLdouble, respectively, instead. Language + was added to the Specification requiring that these + parameters be clamped, when required, at use time rather + than at specification time. + + + This change allows specifying parameters in ranges + appropriate for non-fixed-point framebuffers (integer and + floating-point formats). The change does not require any + changes to user code calling these functions, because the + actual underlying types are identical, the behavior is + externally unchanged, and the header files continue to + define the old types for compatibility with older code. + + + See Also + + glBlendColor, + glClearColor, + glClearDepth, + glDepthRange, + glDepthRangeArray, + glDepthRangeIndexed, + glMinSampleShading, + glSampleCoverage + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/man4/top.php b/upstream-man-pages/man4/top.php new file mode 100644 index 0000000..b861d9c --- /dev/null +++ b/upstream-man-pages/man4/top.php @@ -0,0 +1,10 @@ + + +OpenGL SDK + + + + + + + diff --git a/upstream-man-pages/man4/usr/include/make/commondefs b/upstream-man-pages/man4/usr/include/make/commondefs new file mode 100644 index 0000000..6fd9717 --- /dev/null +++ b/upstream-man-pages/man4/usr/include/make/commondefs @@ -0,0 +1,407 @@ +# Copyright (c) 1991-2000 Silicon Graphics, Inc. +# This document is licensed under the SGI Free Software B license. +# For details, see +# +# http://oss.sgi.com/projects/FreeB +# +# $Date$ $Revision$ +# $Header: //depot/main/tools/include/commondefs#43 $ + +COMMONRULES=$(ROOT)/usr/include/make/commonrules + +# what OS are we running on +OS=$(shell uname) +ifeq ($(subst 64,,$(OS)), IRIX) +OS=IRIX +endif +ifeq (CYGWIN,$(findstring CYGWIN,$(OS))) +OS=Linux +endif + +# various source-level directories +TOOLSSRC = $(TOPDIR)/tools +GFXINCLUDESRC = $(TOPDIR)/gfx/include +OGLLIBSRC = $(TOPDIR)/gfx/lib/opengl +GLXLIBSRC = $(TOPDIR)/glx + +# SGI Free Software B license +OSSCOPYRIGHT = $(TOPDIR)/doc/release/OSSCOPYRIGHT + +# shell-related defs +SHELL = /bin/sh +AWK = awk +ifeq ($(OS),IRIX) +ECHO = /bin/echo +endif +ifeq ($(OS),Linux) +ECHO = /bin/echo -e +endif +RM = rm -f +MV = mv +PERL = perl +SED = sed +UNIQ = uniq + +# M4 options - run GNU M4 in compatibility mode +# rdist options - Red Hat 5.2 must have daemon location specified +ifeq ($(OS),IRIX) +M4OPTS = +endif +ifeq ($(OS),Linux) +M4OPTS = -G +RDIST_OPTS = -p /usr/sbin/rdistd +endif + +# override default gmake CXX with what we have +ifeq ($(OS),IRIX) +CXX = CC +endif + +# what language are we using? Default to ansi with extended defines +ifeq ($(OS),IRIX) +CVERSION = -xansi +endif +ifeq ($(OS),Linux) +CVERSION= -ansi -include $(ROOT)/usr/include/make/linuxdefs +endif + +# WARN is the warning option +ifeq ($(OS),IRIX) +# +# Turn of explicitly some warnings on IRIX. Specifically: +# 1155: unrecognized #pragma +# 1174: parameter/variable "???" was declared but never referenced +# 1201: trailing comma is nonstandard (last element in struct assnment) +# 1209: controlling expression is constant +# 1506: implicit conversion from "???" to "???": rounding, sign +# extension, or loss of accuracy may result +# 3170: "???" not marked as intrinsic because it is not declared +# as a function +# +WARN = -fullwarn \ + -woff 1155,1174,1506,1201,1209,3170 +endif +ifeq ($(OS),Linux) +WARN = -Wimplicit \ + -Wreturn-type \ + -Wswitch \ + -Wcomment \ + -Wformat \ + -Wchar-subscripts \ + -Wparentheses \ + -Wpointer-arith \ + -Wcast-qual \ + -Wmissing-prototypes \ + -Wmissing-declarations \ + $(NULL) +endif + +# default optimization +ifeq ($(subst y,1,$(GLDEBUG)),1) +OPTIMIZER=-g +else +OPTIMIZER=-O2 +ifeq ($(OS),Linux) +WARN += -Wuninitialized +endif +endif + +# how to make dependencies +ifeq ($(OS),IRIX) +MKDEPOPT = -MDupdate Makedepend +endif +ifeq ($(OS),Linux) +MKDEPOPT = -MD +endif + +override GCOPTS = $(OPTIMIZER) $(MKDEPOPT) $(WARN) +override GCXXOPTS = $(OPTIMIZER) $(MKDEPOPT) $(WARN) + +# where is the default include directory? +# (we don't grab it off $ROOT, to avoid populating $ROOT with system +# includes. Yes, I know... You don't like the idea. +INCLDIR = /usr/include + +# where to install include files? +INCLUDE_LOCATION = $(ROOT)/usr/include + +# we would like to use nostdinc on Linux, but unfortunately, it also +# removes include directories with no well-known fixed path (ie. the +# gcc install directory). +ifeq ($(OS),IRIX) +override GCINCS = -nostdinc -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +override GCXXINCS = -nostdinc -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +endif +ifeq ($(OS),Linux) +override GCINCS = -I$(ROOT)$(INCLDIR) +override GCXXINCS = -I$(ROOT)$(INCLDIR) -I$(INCLDIR) +endif + +ifeq ($(GLDEBUG),1) +override GCDEFS = -DDEBUG -UNDEBUG +override GCXXDEFS = -DDEBUG -UNDEBUG +else +override GCDEFS = -UDEBUG -DNDEBUG +override GCXXDEFS = -UDEBUG -DNDEBUG +endif + +# +# Cc flags, composed of: +# variable (V*) (set on the command line) +# local (L*) (set in the makefile) +# global (G*) (defined in this file, not overrideable) +# in that order. This is done so that the locally defined includes +# are searched before the globally defined ones. +# +CFLAGS = $(CVERSION) $(VCFLAGS) $(LCFLAGS) $(GCFLAGS) + +# +# Each of these three components is divided into defines (-D's and -U's), +# includes (-I's), and other options. By segregating the different +# classes of flag to cc, the defines (CDEFS) and includes (CINCS) can be +# easily given to other programs, e.g., lint. +# +# Notes: +# - The local assignments should be to LCOPTS, LCDEFS, and LCINCS, not to +# LCFLAGS, although CFLAGS will be correctly set if this is done. +# - If a program cannot be optimized, it should override the setting of +# OPTIMIZER with a line such as "OPTIMIZER=" in its make file. +# - If a program cannot be compiled with ANSI C, its makefile +# should set CVERSION=-cckr +# +VCFLAGS = $(VCDEFS) $(VCINCS) $(VCOPTS) +LCFLAGS = $(LCDEFS) $(LCINCS) $(LCOPTS) +GCFLAGS = $(GCDEFS) $(GCINCS) $(GCOPTS) + +COPTS = $(VCOPTS) $(LCOPTS) $(GCOPTS) +CDEFS = $(VCDEFS) $(LCDEFS) $(GCDEFS) +CINCS = $(VCINCS) $(LCINCS) $(GCINCS) + +# +# CXX flags are decomposed using the same hierarchy as C flags. +# +CXXFLAGS = $(CVERSION) $(VCXXFLAGS) $(LCXXFLAGS) $(GCXXFLAGS) + +VCXXFLAGS = $(VCXXDEFS) $(VCXXINCS) $(VCXXOPTS) +LCXXFLAGS = $(LCXXDEFS) $(LCXXINCS) $(LCXXOPTS) +GCXXFLAGS = $(GCXXDEFS) $(GCXXINCS) $(GCXXOPTS) + +CXXOPTS = $(VCXXOPTS) $(LCXXOPTS) $(GCXXOPTS) +CXXDEFS = $(VCXXDEFS) $(LCXXDEFS) $(GCXXDEFS) +CXXINCS = $(VCXXINCS) $(LCXXINCS) $(GCXXINCS) + +# +# Do something for the linker +# +# +# Library paths (-L's) are part of LDOPTS. +# Libraries (-l's) are part of LDLIBS. +# This is done so that there is a guarantee that all library paths are +# included before the libraries. +# +override GLDOPTS= +override GLDDSOOPTS= +ifeq ($(OS),IRIX) +override GLDOPTS += -L$(ROOT)/usr/lib32 +override GLDDSOOPTS += -L$(ROOT)/usr/lib32 +endif +ifeq ($(OS),Linux) +override GLDOPTS += -L$(ROOT)/usr/lib -L$(XTOPDIR)/xc/exports/lib +override GLDDSOOPTS += -L$(ROOT)/usr/lib -L$(XTOPDIR)/xc/exports/lib +endif + +# options used for DSO's. +ifeq ($(OS),IRIX) +DSONAMEOPT = -soname $(DSONAME) +ifneq ($(DSOEXPORTS),) +DSOEXPORTSOPT = -exports_file $(DSOEXPORTS) +endif +override GLDDSOOPTS += -elf -shared -all $(DSOEXPORTSOPT) $(DSONAMEOPT) +endif + +ifeq ($(OS),Linux) +DSONAMEOPT = -soname=$(DSONAME) +ifneq ($(DSOEXPORTS),) +DSOEXPORTSOPT = $(addprefix -u ,$(shell cat $(DSOEXPORTS))) +else +DSOEXPORTSOPT = --whole-archive +endif +override GLDDSOOPTS += -shared $(DSOEXPORTSOPT) $(DSONAMEOPT) +endif + +LDDSOOPTS = $(VLDDSOOPTS) $(LLDDSOOPTS) $(GLDDSOOPTS) +LDDSOLIBS = $(VLDDSOLIBS) $(LLDDSOLIBS) $(GLDDSOLIBS) +LDDSOFLAGS = $(LDDSOOPTS) $(LDDSOLIBS) $(ENDIAN) + +LDOPTS = $(VLDOPTS) $(LLDOPTS) $(GLDOPTS) +LDLIBS = $(VLDLIBS) $(LLDLIBS) $(GLDLIBS) +LDFLAGS = $(LDOPTS) $(LDLIBS) $(ENDIAN) + +# where to install libraries +ifeq ($(OS),IRIX) +OBJECT_STYLE = N32 +LIB_LOCATION = $(ROOT)/usr/lib32 +endif +ifeq ($(OS),Linux) +LIB_LOCATION = $(ROOT)/usr/lib +endif + +# +# as flags are just like cc flags. +# By default, ASTYLE is the same as CSTYLE, but some may need to make +# the asm more aggressive than 'C' and can set ASTYLE. Users of 'make' +# always get ASTYLE == CSTYLE +# +ASFLAGS = $(VASFLAGS) $(LASFLAGS) $(GASFLAGS) + +VASFLAGS = $(VASDEFS) $(VASINCS) $(VASOPTS) +LASFLAGS = $(LASDEFS) $(LASINCS) $(LASOPTS) +GASFLAGS = $(GASDEFS) $(GASINCS) $(GASOPTS) + +ASOPTS = $(VASOPTS) $(LASOPTS) $(GASOPTS) +ASDEFS = $(VASDEFS) $(LASDEFS) $(GASDEFS) +ASINCS = $(VASINCS) $(LASINCS) $(GASINCS) + +override GASOPTS = $(OPTIMIZER) $(MKDEPOPT) +override GASDEFS = $(GCDEFS) +override GASINCS = $(GCINCS) + +# +# the install command to use +# +INSTALL = $(ROOT)/usr/bin/gfxinstall +INSTALLFLAGS = -v -m 0444 + +# +# Convenient command macros that include the flags macros. +# +# You should always invoke make in makefiles via $(MAKE), as make passes +# all command-line variables through the environment to sub-makes. +# +# Never use just $(CCF), etc. in rules that link executables; LDFLAGS +# needs to be included after your objects in the command line. +# +ASF = $(AS) $(ASFLAGS) +CXXF = $(CXX) $(CXXFLAGS) +C++F = $(CXXF) +CCF = $(CC) $(CFLAGS) +LDF = $(LD) $(LDFLAGS) +LEXF = $(LEX) $(LFLAGS) +YACCF = $(YACC) $(YFLAGS) + +# Targets + +COMMONTARGS = clobber clean rmtargets + +ALLTARGS = headers headers_install libs libs_install install apps distsi \ + $(COMMONTARGS) + +# +# Rule macros for nonterminal makefiles that iterate over subdirectories, +# making the current target. Set *SUBDIRS to the relevant list of kids. +# +# Set NOSUBMESG to any value to suppress a warning that subdirectories +# are not present. This is useful with mandefs/rules +# +SUBDIR_MAKERULE= \ + if test ! -d $$d; then \ + if test "$(NOSUBMESG)" = "" ; then \ + echo "SKIPPING $$d: No such directory."; \ + fi \ + else \ + $(ECHO) "\t$(MAKE) -C $$d $${RULE:=$@}"; \ + $(MAKE) -C $$d $${RULE:=$@}; \ + fi + +SUBDIRS_MAKERULE= \ + +@for d in $(SUBDIRS); do $(SUBDIR_MAKERULE); done + +# +# One problem with the above rules is that if a make fails, and -k is +# set, the entire for loop might stop. This is because make still can +# (and XPG requires it) exit with an error status if the -k option is set. +# This is an alternate rule for SUBDIRS when it is desired that -k keep +# working on the next SUBDIR if the previous one failed. Its not quite +# as compact a rule as the previous ones. +# A standard usage would be: +# default install $(COMMONTARGS): $(_FORCE) +# $(MAKE) __DORULE=$@ $(SUBDIRS) +# $(SUBDIRS): $(_FORCE) +# @$(NSUBDIR_MAKERULE) + +NSUBDIR_MAKERULE= \ + if test ! -d $@; then \ + if test "$(NOSUBMESG)" = "" ; then \ + echo "SKIPPING $@: No such directory."; \ + fi \ + else \ + echo "\t(cd $@; $(MAKE) $(__DORULE))"; \ + (cd $@; ${MAKE} $(__DORULE)); \ + fi + +# +# Convenience file list macros: +# - Commondefs defines the following lists: SOURCES, enumerating all +# source files; OBJECTS, the .o files derived from compilable source; +# and DIRT, which lists intermediates and temporary files to be +# removed by clean. +# - The including (parent) makefile may define source file lists for +# the standard suffixes: CFILES for .c, ASFILES for .s, YFILES for +# .y, etc. We combine all such lists into SOURCES. The including +# makefile need not define CFILES &c before including commondefs. +# +SOURCES=$(HFILES) $(ASFILES) $(CCFILES) $(C++FILES) $(CXXFILES) $(CFILES) \ + $(EFILES) $(FFILES) $(LFILES) $(PFILES) $(RFILES) $(SHFILES) $(YFILES) + +CXXO1=$(CXXFILES:.c++=.o) $(C++FILES:.c++=.o) $(CCFILES:.c++=.o) +CXXO2=$(CXXO1:.cxx=.o) +CXXO3=$(CXXO2:.C=.o) +CXXO4=$(CXXO3:.cc=.o) +CXXOALL=$(CXXO4) +YO1=$(YFILES:.y=.o) +YO2=$(YO1:.yxx=.o) +YO3=$(YO2:.Y=.o) +YOALL=$(YO3) +LO1=$(LFILES:.l=.o) +LO2=$(LO1:.lxx=.o) +LO3=$(LO2:.L=.o) +LOALL=$(LO3) +OBJECTS=$(ASFILES:.s=.o) $(CXXOALL) $(CFILES:.c=.o) $(EFILES:.e=.o) \ + $(FFILES:.f=.o) $(LOALL) $(PFILES:.p=.o) $(RFILES:.r=.o) \ + $(YOALL) + +# +# dependency file(s) +# +ifeq ($(OS),IRIX) +MKDEPFILE = Makedepend +endif +ifeq ($(OS),Linux) +MKDEPFILE = $(OBJECTS:.o=.d) +endif + +# +# distribution file +# +DISTFILE_EXT = Distfile +DISTFILE_INT = Distfile.int +ifeq ($(OS),IRIX) +DISTFILE = $(DISTFILE_EXT) +else +ifeq ($(OS),Linux) +DISTFILE = $(DISTFILE_EXT) +else +DISTFILE = $(DISTFILE_EXT) $(DISTFILE_INT) +endif +endif + +# +# dirt stuff +# +DIRT=$(GDIRT) $(VDIRT) $(LDIRT) +override GDIRT=*.o a.out core lex.yy.[co] y.tab.[cho] ar.tmp.* so_locations + +LOCALDEFS = ./localdefs +LOCALRULES = ./localrules + +-include $(LOCALDEFS) diff --git a/upstream-man-pages/man4/usr/include/make/commonrules b/upstream-man-pages/man4/usr/include/make/commonrules new file mode 100644 index 0000000..95f42d6 --- /dev/null +++ b/upstream-man-pages/man4/usr/include/make/commonrules @@ -0,0 +1,96 @@ +# Copyright (c) 1991-2000 Silicon Graphics, Inc. +# This document is licensed under the SGI Free Software B license. +# For details, see +# +# http://oss.sgi.com/projects/FreeB +# +# $Date$ $Revision$ +# $Header: //depot/main/tools/include/commonrules#21 $ + +# +# Notes: +# - After including $(ROOT)/usr/include/make/commondefs, a makefile may +# say ``include $(COMMONRULES)'' to get this file. +# - It is up to the including makefile to define a default rule before +# including $(COMMONRULES). +# - The parent makefile must define TARGETS in order for clobber to work. +# - If the parent makefile must overload the common targets with special +# rules (e.g. to perform recursive or subdirectory makes), then set +# COMMONPREF to some unique prefix before including $(COMMONRULES), +# and make sure that each common target depends on its prefixed name. +# For example, a makefile which passes common targets and install on +# to makes in subdirectories listed in DIRS might say +# +# COMMONPREF=xxx +# include $(COMMONRULES) +# +# $(COMMONTARGS) install: $(COMMONPREF)$$@ +# @for d in $(DIRS); do \ +# $(ECHO) "\tcd $$d; $(MAKE) $@"; \ +# cd $$d; $(MAKE) $@; cd ..; \ +# done +# +# Thus, all of the common rules plus install are passed to sub-makes +# *and* executed in the current makefile (as xxxclean, xxxclobber, +# xxxinstall, etc). SUBDIRS_MAKERULE in commondefs is a convenience +# macro that expands to the above loop. +# + + +# +# cleaning targets +# +$(COMMONPREF)clobber: $(COMMONPREF)clean $(COMMONPREF)rmtargets +ifdef MKDEPFILE + $(RM) -r $(MKDEPFILE) +endif + +$(COMMONPREF)clean: +ifdef DIRT + $(RM) -r $(DIRT) +endif + +$(COMMONPREF)rmtargets: +ifdef TARGETS + $(RM) -r $(TARGETS) +endif + +# +# targets to build distributions +# +-include $(DISTFILE) + +# build SI distribution +$(COMMONPREF)distsi: + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)/$(DISTDIR_SI) $(DISTFILES_SI) + @$(ECHO) "" + +# build OSS distribution +$(COMMONPREF)distoss: + @$(INSTALL) $(INSTALLFLAGS_OSS) -F $(DIST)/$(DISTDIR_OSS) $(DISTFILES_OSS) + @$(ECHO) "" + +# +# additional target for .cxx files. (gmake only likes .C and .cc) +# +%.o : %.cxx + $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@ + +# +# preprocessor only target +# +%.i : %.c + $(CC) -E $(CPPFLAGS) $(CFLAGS) $< | $(SED) -e 's/^ $$//' | $(UNIQ) > $@ + +%.i : %.cc %.C %.cxx + $(CXX) -E $(CPPFLAGS) $(CXXFLAGS) $< | $(SED) -e 's/^ $$//' | $(UNIQ) > $@ + +# +# include the make dependency file(s), if they exist +# +-include $(MKDEPFILE) + +# +# Local make rules +# +-include $(LOCALRULES) diff --git a/upstream-man-pages/man4/usr/include/make/commonrules.win32 b/upstream-man-pages/man4/usr/include/make/commonrules.win32 new file mode 100644 index 0000000..118b10c --- /dev/null +++ b/upstream-man-pages/man4/usr/include/make/commonrules.win32 @@ -0,0 +1,109 @@ + + +.SUFFIXES: .l .y .o + +# +# targets for lex and yacc +# +.l.c: + $(RM) $@ + $(LEX) $(LFLAGS) $< + $(MV) lex.yy.c $@ + +.y.c: + $(RM) $@ + $(YACC) $(YFLAGS) $< + $(MV) y.tab.c $@ + +.o.obj: + ; + +# +# target to create preprocessor output file from .c file (for debugging) +# +.c.i: + $(RM) $@ + $(CC) $(USER_C_FLAGS) -E $< > $*.i + +# +# main target (first) resolves to makefile.def's main target +# +default: all + +# +# This has to be here, for dependencies +# +INCLUDES = $(VCINCS); $(LCINCS); $(GCINCS) + + +# +# cleaning targets +# +$(COMMONPREF)clobber: $(COMMONPREF)clobber_subdirs + $(RM) $(DIRT) $(TARGETS) obj$(BUILD_ALT_DIR) + +$(COMMONPREF)clean: $(COMMONPREF)clean_subdirs + $(RM) $(DIRT) + +$(COMMONPREF)rmtargets: $(COMMONPREF)rmtargets_subdirs + $(RM) $(TARGETS) + +# +# targets to build distributions +# +!IF EXIST($(DISTFILE)) +!INCLUDE $(DISTFILE) +!ENDIF + +$(COMMONPREF)distddk: $(COMMONPREF)distddk_subdirs + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)$(DISTDIR_DDK) $(DISTFILES_DDK) + @$(INSTALL) $(INSTALLFLAGS) -F $(DIST)$(DISTDIR_DDK) $(DISTFILES_DDK2) + @$(ECHO) "" + +$(COMMONPREF)clobber_subdirs: + +!IFDEF DIRS +# +# DIRS defined. We have to do subdirectories +# +CLOBBER_SUBDIRS=$(DIRS:.dir=.clobber) +CLEAN_SUBDIRS=$(DIRS:.dir=.clean) +RMTARGETS_SUBDIRS=$(DIRS:.dir=.rmtargets) +DISTDDK_SUBDIRS=$(DIRS:.dir=.distddk) + +$(COMMONPREF)clobber_subdirs: $(CLOBBER_SUBDIRS) + +$(COMMONPREF)clean_subdirs: $(CLEAN_SUBDIRS) + +$(COMMONPREF)rmtargets_subdirs: $(RMTARGETS_SUBDIRS) + +$(COMMONPREF)distddk_subdirs: $(DISTDDK_SUBDIRS) + +$(CLOBBER_SUBDIRS): + @cd $* + @echo === clobbering $* === + @$(MAKE) -nologo -f Makefile.win32 clobber + @cd .. + +$(CLEAN_SUBDIRS): + @cd $* + @echo === cleaning $* === + @$(MAKE) -nologo -f Makefile.win32 clean + @cd .. + +$(RMTARGETS_SUBDIRS): + @cd $* + @echo === removing targets in $* === + @$(MAKE) -nologo -f Makefile.win32 rmtargets + @cd .. + +$(DISTDDK_SUBDIRS): + @cd $* + @echo === making DDK distribution in $* === + @$(MAKE) -nologo -f Makefile.win32 distddk + @cd .. +!ELSE + +$(COMMONPREF)clobber_subdirs $(COMMONPREF)clean_subdirs $(COMMONPREF)rmtargets_subdirs $(COMMONPREF)distddk_subdirs: + +!ENDIF diff --git a/upstream-man-pages/man4/usr/include/make/linuxdefs b/upstream-man-pages/man4/usr/include/make/linuxdefs new file mode 100644 index 0000000..a0670dc --- /dev/null +++ b/upstream-man-pages/man4/usr/include/make/linuxdefs @@ -0,0 +1,31 @@ + +/* + * ident "$Header$" + * + * Copyright (c) 1991-2000 Silicon Graphics, Inc. + * This document is licensed under the SGI Free Software B license. + * For details, see + * + * http://oss.sgi.com/projects/FreeB + * + */ + +/* + * defines to make gcc's -ansi more-or-less equivalent to SGI's -xansi + */ + +#if defined(__i386__) +#define i386 1 +#endif + +#if defined(__linux__) +#define linux 1 +#endif + +#if defined(__unix__) +#define unix 1 +#endif + +#if !defined(_BSD_SOURCE) +#define _BSD_SOURCE 1 +#endif diff --git a/upstream-man-pages/man4/xhtml/Makefile b/upstream-man-pages/man4/xhtml/Makefile new file mode 100644 index 0000000..a248e75 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/Makefile @@ -0,0 +1,475 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc --nonet +SED = sed + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and specifically the +# stylesheet to convert Docbook+MathML => XHTML+MathML +DB2XHTML = opengl-man.xsl +# ../../mancommon/opengl-man.xsl + +PREPROCESSOR = preproc.sed + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +# ../../mancommon/opengl-man.xsl + +%.xml: ../%.xml $(DB2XHTML) $(PREPROCESSOR) + $(XSLT) --xinclude -o $@.tmp $(DB2XHTML) $< + $(SED) -f $(PREPROCESSOR) $@.tmp > $@ + $(RM) $@.tmp + +GL_ARB_draw_indirect_entries = \ + glDrawArraysIndirect.xml \ + glDrawElementsIndirect.xml + +GL_ARB_shader_subroutine_entries = \ + glGetActiveSubroutineName.xml \ + glGetActiveSubroutineUniform.xml \ + glGetActiveSubroutineUniformName.xml \ + glGetProgramStage.xml \ + glGetSubroutineIndex.xml \ + glGetSubroutineUniformLocation.xml \ + glGetUniformSubroutine.xml \ + glUniformSubroutines.xml + +GL_ARB_tessellation_shader_entries = \ + glPatchParameter.xml + +GL_ARB_transform_feedback2_entries = \ + glBindTransformFeedback.xml \ + glDeleteTransformFeedbacks.xml \ + glGenTransformFeedbacks.xml \ + glIsTransformFeedback.xml \ + glPauseTransformFeedback.xml \ + glResumeTransformFeedback.xml \ + glDrawTransformFeedback.xml + +GL_ARB_transform_feedback3_entries = \ + glDrawTransformFeedbackStream.xml \ + glBeginQueryIndexed.xml \ + glGetQueryIndexed.xml + +GL_ARB_viewport_array_entries = \ + glDepthRangeArray.xml \ + glDepthRangeIndexed.xml \ + glScissorArray.xml \ + glScissorIndexed.xml \ + glViewportArray.xml \ + glViewportIndexed.xml + +GL_ARB_get_program_binary_entries = \ + glGetProgramBinary.xml \ + glProgramBinary.xml \ + glProgramParameter.xml + +GL_ARB_ES2_compatibility_entries = \ + glReleaseShaderCompiler.xml \ + glShaderBinary.xml \ + glGetShaderPrecisionFormat.xml + +GL_ARB_separate_shader_objects_entries = \ + glUseProgramStages.xml \ + glActiveShaderProgram.xml \ + glCreateShaderProgram.xml \ + glBindProgramPipeline.xml \ + glGenProgramPipelines.xml \ + glDeleteProgramPipelines.xml \ + glIsProgramPipeline.xml \ + glGetProgramPipeline.xml \ + glValidateProgramPipeline.xml \ + glGetProgramPipelineInfoLog.xml \ + glProgramUniform.xml + +GL_ARB_sample_shading_entries = \ + glMinSampleShading.xml + +GL_ARB_base_instance_entries = \ + glDrawArraysInstancedBaseInstance.xml \ + glDrawElementsInstancedBaseInstance.xml \ + glDrawElementsInstancedBaseVertexBaseInstance.xml + +GL_EXT_texture_storage_entries = \ + glTexStorage1D.xml \ + glTexStorage2D.xml \ + glTexStorage3D.xml + +GL_XXX_internal_format_query_entries = \ + glGetInternalFormativ.xml + +GL_ARB_transform_feedback_instanced_entries = \ + glDrawTransformFeedbackInstanced.xml \ + glDrawTransformFeedbackStreamInstanced.xml + +GL_ARB_shader_atomic_counters_entries = \ + glGetActiveAtomicCounterBufferiv.xml + +GL_ARB_shader_image_load_store_entries = \ + glBindImageTexture.xml \ + glMemoryBarrier.xml + +# START OF OPENGL 4.3 EXTENSIONS + +# GL_ARB_arrays_of_arrays has no new entry points +GL_ARB_arrays_of_arrays_entries = + +GL_ARB_multi_draw_indirect_entries = \ + glMultiDrawArraysIndirect.xml \ + glMultiDrawElementsIndirect.xml + +# ES3_compatibility does not have any new entry points +GL_ARB_ES3_compatibility_enries = + +GL_ARB_clear_buffer_object_entries = \ + glClearBufferData.xml \ + glClearBufferSubData.xml + +GL_ARB_compute_shader_entries = \ + glDispatchCompute.xml \ + glDispatchComputeIndirect.xml + +GL_ARB_copy_image_entries = \ + glCopyImageSubData.xml + +GL_ARB_debug_group_entries = \ + glPushDebugGroup.xml \ + glPopDebugGroup.xml + +GL_ARB_debug_label_entries = \ + glObjectLabel.xml \ + glObjectPtrLabel.xml \ + glGetObjectLabel.xml \ + glGetObjectPtrLabel.xml + +# GL_ARB_debug_output2 has no new entry points +GL_ARB_debug_output2_entries = + +GL_ARB_debug_output_entries = \ + glDebugMessageControl.xml \ + glDebugMessageInsert.xml \ + glDebugMessageCallback.xml \ + glGetDebugMessageLog.xml +# Add glGetPointerv to glGet.xml + +# GL_ARB_explicit_uniform_location has no new entry points +GL_ARB_explicit_uniform_location_entries = + +# GL_ARB_fragment_layer_viewport has no new entry points +GL_ARB_fragment_layer_viewport_entries = + +GL_ARB_framebuffer_no_attachments_entries = \ + glFramebufferParameteri.xml \ + glGetFramebufferParameter.xml + +# GL_ARB_internalformat_query2 adds glGetInternalFormati64v to glGetInternalFormativ +GL_ARB_internalformat_query2_entries = + +GL_ARB_invalidate_subdata_entries = \ + glInvalidateTexSubImage.xml \ + glInvalidateTexImage.xml \ + glInvalidateBufferSubData.xml \ + glInvalidateBufferData.xml \ + glInvalidateFramebuffer.xml \ + glInvalidateSubFramebuffer.xml + +GL_ARB_program_interface_query_entries = \ + glGetProgramInterface.xml \ + glGetProgramResourceIndex.xml \ + glGetProgramResourceName.xml \ + glGetProgramResource.xml \ + glGetProgramResourceLocation.xml \ + glGetProgramResourceLocationIndex.xml + +# GL_ARB_robust_buffer_access_behavior does not define any new entry points +GL_ARB_robust_buffer_access_behavior_entries = + +# GL_ARB_shader_image_size does not define any new entry points +GL_ARB_shader_image_size_entries = + +GL_ARB_shader_storage_buffer_object_entries = \ + glShaderStorageBlockBinding.xml + +# GL_ARB_stencil_texturing does not define any new entry points +GL_ARB_stencil_texturing_entries = + +GL_ARB_texture_buffer_range_entries = \ + glTexBufferRange.xml + +# GL_ARB_texture_query_levels does not define any new entry points +GL_ARB_texture_query_levels = + +GL_ARB_texture_storage_multisample_entries = \ + glTexStorage2DMultisample.xml \ + glTexStorage3DMultisample.xml + +GL_ARB_texture_view_entries = \ + glTextureView.xml + +GL_ARB_vertex_attrib_binding_entries = \ + glVertexAttribBinding.xml \ + glVertexAttribFormat.xml \ + glVertexBindingDivisor.xml \ + glBindVertexBuffer.xml + +MODIFIEDFORGL4XML = \ + glClearDepth.xml \ + glCreateShader.xml \ + glDepthRange.xml \ + glDrawArrays.xml \ + glGetVertexAttrib.xml \ + glVertexAttrib.xml \ + glVertexAttribPointer.xml + +GL4XML = \ + $(GL_ARB_draw_indirect_entries) \ + $(GL_ARB_shader_subroutine_entries) \ + $(GL_ARB_tessellation_shader_entries) \ + $(GL_ARB_transform_feedback2_entries) \ + $(GL_ARB_transform_feedback3_entries) \ + $(GL_ARB_sample_shading_entries) + +GL41XML = \ + $(GL_ARB_viewport_array_entries) \ + $(GL_ARB_get_program_binary_entries) \ + $(GL_ARB_ES2_compatibility_entries) \ + $(GL_ARB_separate_shader_objects_entries) + +GL42XML = \ + $(GL_ARB_base_instance_entries) \ + $(GL_EXT_texture_storage_entries) \ + $(GL_XXX_internal_format_query_entries) \ + $(GL_ARB_transform_feedback_instanced_entries) \ + $(GL_ARB_shader_atomic_counters_entries) \ + $(GL_ARB_shader_image_load_store_entries) \ + removedTypes.xml + +GL43XML = \ + $(GL_ARB_multi_draw_indirect_entries) \ + $(GL_ARB_ES3_compatibility_enries) \ + $(GL_ARB_clear_buffer_object_entries) \ + $(GL_ARB_compute_shader_entries) \ + $(GL_ARB_copy_image_entries) \ + $(GL_ARB_invalidate_subdata_entries) \ + $(GL_ARB_texture_buffer_range_entries) \ + $(GL_ARB_texture_storage_multisample_entries) \ + $(GL_ARB_vertex_attrib_binding_entries) \ + $(GL_ARB_shader_storage_buffer_object_entries) \ + $(GL_ARB_debug_group_entries) \ + $(GL_ARB_debug_label_entries) \ + $(GL_ARB_framebuffer_no_attachments_entries) \ + $(GL_ARB_program_interface_query_entries) \ + $(GL_ARB_debug_output_entries) \ + $(GL_ARB_texture_view_entries) + +UNMODIFIEDXML = \ + glActiveTexture.xml \ + glAttachShader.xml \ + glBeginConditionalRender.xml \ + glBeginQuery.xml \ + glBeginTransformFeedback.xml \ + glBindAttribLocation.xml \ + glBindBuffer.xml \ + glBindBufferBase.xml \ + glBindBufferRange.xml \ + glBindFragDataLocation.xml \ + glBindFragDataLocationIndexed.xml \ + glBindFramebuffer.xml \ + glBindRenderbuffer.xml \ + glBindSampler.xml \ + glBindTexture.xml \ + glBindVertexArray.xml \ + glBlendColor.xml \ + glBlendEquation.xml \ + glBlendEquationSeparate.xml \ + glBlendFunc.xml \ + glBlendFuncSeparate.xml \ + glBlitFramebuffer.xml \ + glBufferData.xml \ + glBufferSubData.xml \ + glCheckFramebufferStatus.xml \ + glClampColor.xml \ + glClear.xml \ + glClearColor.xml \ + glClearBuffer.xml \ + glClearStencil.xml \ + glClientWaitSync.xml \ + glColorMask.xml \ + glCompileShader.xml \ + glCompressedTexImage1D.xml \ + glCompressedTexImage2D.xml \ + glCompressedTexImage3D.xml \ + glCompressedTexSubImage1D.xml \ + glCompressedTexSubImage2D.xml \ + glCompressedTexSubImage3D.xml \ + glCopyBufferSubData.xml \ + glCopyTexImage1D.xml \ + glCopyTexImage2D.xml \ + glCopyTexSubImage1D.xml \ + glCopyTexSubImage2D.xml \ + glCopyTexSubImage3D.xml \ + glCreateProgram.xml \ + glCreateShader.xml \ + glCullFace.xml \ + glDeleteBuffers.xml \ + glDeleteFramebuffers.xml \ + glDeleteProgram.xml \ + glDeleteQueries.xml \ + glDeleteRenderbuffers.xml \ + glDeleteSamplers.xml \ + glDeleteShader.xml \ + glDeleteSync.xml \ + glDeleteTextures.xml \ + glDeleteVertexArrays.xml \ + glDepthFunc.xml \ + glDepthMask.xml \ + glDetachShader.xml \ + glDrawArrays.xml \ + glDrawArraysInstanced.xml \ + glDrawBuffer.xml \ + glDrawBuffers.xml \ + glDrawElements.xml \ + glDrawElementsBaseVertex.xml \ + glDrawElementsInstanced.xml \ + glDrawElementsInstancedBaseVertex.xml \ + glDrawRangeElements.xml \ + glDrawRangeElementsBaseVertex.xml \ + glEnable.xml \ + glEnableVertexAttribArray.xml \ + glFenceSync.xml \ + glFinish.xml \ + glFlush.xml \ + glFlushMappedBufferRange.xml \ + glFramebufferRenderbuffer.xml \ + glFramebufferTexture.xml \ + glFramebufferTextureLayer.xml \ + glFrontFace.xml \ + glGenBuffers.xml \ + glGenerateMipmap.xml \ + glGenFramebuffers.xml \ + glGenQueries.xml \ + glGenRenderbuffers.xml \ + glGenSamplers.xml \ + glGenTextures.xml \ + glGenVertexArrays.xml \ + glGet.xml \ + glGetActiveAttrib.xml \ + glGetActiveUniform.xml \ + glGetActiveUniformBlock.xml \ + glGetActiveUniformBlockName.xml \ + glGetActiveUniformName.xml \ + glGetActiveUniformsiv.xml \ + glGetAttachedShaders.xml \ + glGetAttribLocation.xml \ + glGetBufferParameter.xml \ + glGetBufferPointerv.xml \ + glGetBufferSubData.xml \ + glGetCompressedTexImage.xml \ + glGetError.xml \ + glGetFragDataIndex.xml \ + glGetFragDataLocation.xml \ + glGetFramebufferAttachmentParameter.xml \ + glGetMultisample.xml \ + glGetProgram.xml \ + glGetProgramInfoLog.xml \ + glGetQueryObject.xml \ + glGetQueryiv.xml \ + glGetRenderbufferParameter.xml \ + glGetSamplerParameter.xml \ + glGetShader.xml \ + glGetShaderInfoLog.xml \ + glGetShaderSource.xml \ + glGetString.xml \ + glGetSync.xml \ + glGetTexImage.xml \ + glGetTexLevelParameter.xml \ + glGetTexParameter.xml \ + glGetTransformFeedbackVarying.xml \ + glGetUniform.xml \ + glGetUniformBlockIndex.xml \ + glGetUniformIndices.xml \ + glGetUniformLocation.xml \ + glGetVertexAttribPointerv.xml \ + glHint.xml \ + glIsBuffer.xml \ + glIsEnabled.xml \ + glIsFramebuffer.xml \ + glIsProgram.xml \ + glIsRenderbuffer.xml \ + glIsQuery.xml \ + glIsSampler.xml \ + glIsShader.xml \ + glIsSync.xml \ + glIsTexture.xml \ + glIsVertexArray.xml \ + glLineWidth.xml \ + glLinkProgram.xml \ + glLogicOp.xml \ + glMapBuffer.xml \ + glMapBufferRange.xml \ + glMultiDrawArrays.xml \ + glMultiDrawElements.xml \ + glMultiDrawElementsBaseVertex.xml \ + glPixelStore.xml \ + glPointParameter.xml \ + glPointSize.xml \ + glPolygonMode.xml \ + glPolygonOffset.xml \ + glPrimitiveRestartIndex.xml \ + glProvokingVertex.xml \ + glQueryCounter.xml \ + glReadBuffer.xml \ + glReadPixels.xml \ + glRenderbufferStorage.xml \ + glRenderbufferStorageMultisample.xml \ + glSampleCoverage.xml \ + glSampleMaski.xml \ + glSamplerParameter.xml \ + glScissor.xml \ + glShaderSource.xml \ + glStencilFunc.xml \ + glStencilFuncSeparate.xml \ + glStencilMask.xml \ + glStencilMaskSeparate.xml \ + glStencilOp.xml \ + glStencilOpSeparate.xml \ + glTexBuffer.xml \ + glTexImage1D.xml \ + glTexImage2D.xml \ + glTexImage2DMultisample.xml \ + glTexImage3D.xml \ + glTexImage3DMultisample.xml \ + glTexParameter.xml \ + glTexSubImage1D.xml \ + glTexSubImage2D.xml \ + glTexSubImage3D.xml \ + glTransformFeedbackVaryings.xml \ + glUniform.xml \ + glUniformBlockBinding.xml \ + glUseProgram.xml \ + glValidateProgram.xml \ + glVertexAttribDivisor.xml \ + glViewport.xml \ + glWaitSync.xml + +MODIFIEDXML = \ + +XML = $(GL4XML) $(GL41XML) $(GL42XML) $(GL43XML) $(MODIFIEDFORGL4XML) $(UNMODIFIEDXML) + +glTexImage1D.xml \ +glTexImage2D.xml \ +glTexImage3D.xml \ +glTexStorage1D.xml \ +glTexStorage2D.xml \ +glTexStorage3D.xml \ + : ../internalformattable.xml ../baseformattable.xml ../compressedformattable.xml + +default: $(XML) + +clean: + $(RM) $(TEX_FILES) *.log *.aux *.toc *.dvi *.out + +clobber: clean + $(RM) $(XML) $(PDF_FILES) diff --git a/upstream-man-pages/man4/xhtml/ctop.xsl b/upstream-man-pages/man4/xhtml/ctop.xsl new file mode 100644 index 0000000..6f4b7c1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/ctop.xsl @@ -0,0 +1,1319 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + e + + i + + + + + + + + + E + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (-1) + + + + + + + + + + + + + + + + + λ + + . + + + + + + + + + + + + + + + + + + + + +id + + + + +domain + + + + +codomain + + + + +image + + + + + + + + + + +{ + + + + +   if   + + + + + + + + + + + + + +/ + + + + + + + + + + + + + +! + + + + + + + + + / + + + + + + + + + + max + + + + + + + max + + + + + + + + + + + + + + + + + + + + + + + + + + + + ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + + mod + + + + + + + + + + + ( + + + + + × + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + +gcd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + xor + + + + + + + +¬ + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + . + + + + + + + + + + +| + +| + + + + + + + + + +¯ + + + + + + arg + + + + + + + + + + + + + + + + lcm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + = + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + + < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | + + + + + + + + + + + + + + + d + + + + + + + + + + + + + + + + d + + d + + + + d + d + + + + + + + + + + D + + +, + + + + + + + + + + + + + + + + + ++ + + ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + + + + + +div + + + + +grad + + + + +curl + + + + + +2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +| + +| + + + + + + + + + + × + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + limit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +e + + + + + + + + + + + + +log + + + +log + + + + + + + + + + + + + + + + + + , + + + + + + + + +σ + + + + + + +σ +( + +) + +2 + + + + + + +median + + + + + +mode + + + + + + + + + + + + + + + + + + + + +( + + + + + +) + + + + + + +( + + + +) + + + + + + + + + + + + + + + +det + + + + + + + + +| + + + +| + + + + + + + + + +T + + + + + + + + + + + + + , + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + +Z + + + + +R + + + + +Q + + + + +N + + + + +C + + + + +P + + + + + e + + + + + i + + + + + NaN + + + + + true + + + + + false + + + + + + + + + + + π + + + + + γ + + + + + + + + + + + + + + + ( + + + + + + + + + ) + + + + + + + + + ( + + + + + + + + ) + + + + + + + + + + + + | + + + + + + , + + + + + + + + + diff --git a/upstream-man-pages/man4/xhtml/glActiveShaderProgram.xml b/upstream-man-pages/man4/xhtml/glActiveShaderProgram.xml new file mode 100644 index 0000000..fde11c7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glActiveShaderProgram.xml @@ -0,0 +1,32 @@ + + + +glActiveShaderProgram - OpenGL 4 Reference Pages

Name

glActiveShaderProgram — set the active program object for a program pipeline object

C Specification

void glActiveShaderProgram(GLuint  pipeline,
 GLuint  program);

Parameters

pipeline

+ Specifies the program pipeline object to set the active program object for. +

program

+ Specifies the program object to set as the active program pipeline object pipeline. +

Description

+ glActiveShaderProgram sets the linked program named by program + to be the active program for the program pipeline object pipeline. The active + program in the active program pipeline object is the target of calls to glUniform + when no program has been made current through a call to glUseProgram. +

Errors

+ GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. +

+ GL_INVALID_OPERATION is generated if program refers + to a program object that has not been successfully linked. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glActiveTexture.xml b/upstream-man-pages/man4/xhtml/glActiveTexture.xml new file mode 100644 index 0000000..5e3d26f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glActiveTexture.xml @@ -0,0 +1,52 @@ + + + +glActiveTexture - OpenGL 4 Reference Pages

Name

glActiveTexture — select active texture unit

C Specification

void glActiveTexture(GLenum texture);

Parameters

texture

+ Specifies which texture unit to make active. The number + of texture units is implementation dependent, but must be at least + 80. texture must be one of + GL_TEXTUREi, + where + i ranges from 0 (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). + The initial value is GL_TEXTURE0. +

Description

+ glActiveTexture selects which texture unit subsequent texture state calls will + affect. The number of texture units an implementation supports is + implementation dependent, but must be at least 80. +

Errors

+ GL_INVALID_ENUM is generated if texture is not one of + GL_TEXTUREi, + where i ranges from 0 to (GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1). +

Associated Gets

+ glGet with argument GL_ACTIVE_TEXTURE, or GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glAttachShader.xml b/upstream-man-pages/man4/xhtml/glAttachShader.xml new file mode 100644 index 0000000..a455976 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glAttachShader.xml @@ -0,0 +1,56 @@ + + + +glAttachShader - OpenGL 4 Reference Pages

Name

glAttachShader — Attaches a shader object to a program object

C Specification

void glAttachShader(GLuint  program,
 GLuint  shader);

Parameters

program

Specifies the program object to which a shader + object will be attached.

shader

Specifies the shader object that is to be attached.

Description

In order to create a complete shader program, there must be a way to + specify the list of things that will be linked together. Program + objects provide this mechanism. Shaders that are to be linked + together in a program object must first be attached to that + program object. glAttachShader attaches the + shader object specified by shader to the + program object specified by program. This + indicates that shader will be included in + link operations that will be performed on + program.

All operations that can be performed on a shader object + are valid whether or not the shader object is attached to a + program object. It is permissible to attach a shader object to a + program object before source code has been loaded into the + shader object or before the shader object has been compiled. It + is permissible to attach multiple shader objects of the same + type because each may contain a portion of the complete shader. + It is also permissible to attach a shader object to more than + one program object. If a shader object is deleted while it is + attached to a program object, it will be flagged for deletion, + and deletion will not occur until + glDetachShader + is called to detach it from all program objects to which it is + attached.

Errors

GL_INVALID_VALUE is generated if either + program or shader + is not a value generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + shader is already attached to + program.

Associated Gets

+ glGetAttachedShaders + with the handle of a valid program object +

+ glGetShaderInfoLog +

+ glGetShaderSource +

+ glIsProgram +

+ glIsShader +

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBeginConditionalRender.xml b/upstream-man-pages/man4/xhtml/glBeginConditionalRender.xml new file mode 100644 index 0000000..d0277cd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBeginConditionalRender.xml @@ -0,0 +1,54 @@ + + + +glBeginConditionalRender - OpenGL 4 Reference Pages

Name

glBeginConditionalRender — start conditional rendering

C Specification

void glBeginConditionalRender(GLuint  id,
 GLenum  mode);

Parameters

id

+ Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded. +

mode

+ Specifies how glBeginConditionalRender interprets the results of the occlusion query. +

C Specification

void glEndConditionalRender(void);

Description

+ Conditional rendering is started using glBeginConditionalRender and ended using glEndConditionalRender. + During conditional rendering, all vertex array commands, as well as glClear and + glClearBuffer have no effect if the (GL_SAMPLES_PASSED) result + of the query object id is zero, or if the (GL_ANY_SAMPLES_PASSED) result is GL_FALSE. + The results of commands setting the current vertex state, such as glVertexAttrib are + undefined. If the (GL_SAMPLES_PASSED) result is non-zero or if the (GL_ANY_SAMPLES_PASSED) result is + GL_TRUE, such commands are not discarded. The id parameter to glBeginConditionalRender + must be the name of a query object previously returned from a call to glGenQueries. + mode specifies how the results of the query object are to be interpreted. If mode is + GL_QUERY_WAIT, the GL waits for the results of the query to be available and then uses the results to determine if subsequent + rendering commands are discarded. If mode is GL_QUERY_NO_WAIT, the GL may choose to unconditionally + execute the subsequent rendering commands without waiting for the query to complete. +

+ If mode is GL_QUERY_BY_REGION_WAIT, the GL will also wait for occlusion query results and discard + rendering commands if the result of the occlusion query is zero. If the query result is non-zero, subsequent rendering commands are executed, + but the GL may discard the results of the commands for any region of the framebuffer that did not contribute to the sample count in the specified + occlusion query. Any such discarding is done in an implementation-dependent manner, but the rendering command results may not be discarded for + any samples that contributed to the occlusion query sample count. If mode is GL_QUERY_BY_REGION_NO_WAIT, + the GL operates as in GL_QUERY_BY_REGION_WAIT, but may choose to unconditionally execute the subsequent rendering commands + without waiting for the query to complete. +

Notes

+ glBeginConditionalRender and glEndConditionalRender are available only if the GL version is 3.0 or greater. +

+ The GL_ANY_SAMPLES_PASSED query result is available only if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_VALUE is generated if id is not the name of an existing query object. +

+ GL_INVALID_ENUM is generated if mode is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if glBeginConditionalRender is called while conditional rendering is active, + or if glEndConditionalRender is called while conditional rendering is inactive. +

+ GL_INVALID_OPERATION is generated if id is the name of a query object with a target other than + GL_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED. +

+ GL_INVALID_OPERATION is generated if id is the name of a query currently in progress. +

Copyright

+ Copyright © 2009 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBeginQuery.xml b/upstream-man-pages/man4/xhtml/glBeginQuery.xml new file mode 100644 index 0000000..f42c9df --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBeginQuery.xml @@ -0,0 +1,123 @@ + + + +glBeginQuery - OpenGL 4 Reference Pages

Name

glBeginQuery — delimit the boundaries of a query object

C Specification

void glBeginQuery(GLenum target, GLuint id);

Parameters

target

+ Specifies the target type of query object established between + glBeginQuery and the subsequent glEndQuery. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. +

id

+ Specifies the name of a query object. +

C Specification

void glEndQuery(GLenum target);

Parameters

target

+ Specifies the target type of query object to be concluded. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. +

Description

+ glBeginQuery and glEndQuery delimit the + boundaries of a query object. query must be a name previously returned from a call to + glGenQueries. If a query object with name id + does not yet exist it is created with the type determined by target. target must + be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query + object depends on its type and is as follows. +

+ If target is GL_SAMPLES_PASSED, id must be an unused name, + or the name of an existing occlusion query object. + When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS + is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS + is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their + discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment + is covered. When glEndQuery + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_ANY_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + id must be an unused name, or the name of an existing boolean occlusion query object. + When glBeginQuery is executed, the query object's samples-passed flag is reset to GL_FALSE. + Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test in the case of GL_ANY_SAMPLES_PASSED, + or if the implementation determines that any sample might pass the depth test in the case of GL_ANY_SAMPLES_PASSED_CONSERVATIVE. + The implementation may be able to provide a more efficient test in the case of GL_ANY_SAMPLES_PASSED_CONSERVATIVE + if some false positives are acceptable to the application. When + glEndQuery is executed, the samples-passed flag is assigned to the query object's result value. This value can + be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_PRIMITIVES_GENERATED, id must be an unused + name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. + When glBeginQuery is executed, the query object's primitives-generated counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if + no geometry shader is present. When glEndQuery is executed, the primitives-generated counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be + an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN + query binding. When glBeginQuery is executed, the query object's primitives-written counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback + mode is not activated between the call to glBeginQuery and glEndQuery, the counter will not be + incremented. When glEndQuery is executed, the primitives-written counter is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ If target is GL_TIME_ELAPSED, id must be + an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED + query binding. When glBeginQuery is executed, the query object's time counter is reset to 0. When glEndQuery + is executed, the elapsed server time that has passed since the call to glBeginQuery is written into the query object's + time counter. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. +

+ Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. +

Notes

+ If the query target's count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with target set to the + appropriate query target and pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. +

+ An implementation may support 0 bits in its counter, in which case query results are always undefined + and essentially useless. +

+ When GL_SAMPLE_BUFFERS is 0, the samples-passed counter of an occlusion query will increment once for each + fragment that passes the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment + the samples-passed counter individually for each sample of a fragment that passes the depth test, or it may choose to increment + the counter for all samples of a fragment if any one of them passes the depth test. +

+ The query targets GL_ANY_SAMPLES_PASSED, and GL_TIME_ELAPSED are availale only if + the GL version is 3.3 or higher. +

+ The query target GL_ANY_SAMPLES_PASSED_CONSERVATIVE is available only of the GL version is 4.3 or higher. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if glBeginQuery is executed while + a query object of the same target is already active. +

+ GL_INVALID_OPERATION is generated if glEndQuery + is executed when a query object of the same target is not active. +

+ GL_INVALID_OPERATION is generated if id is 0. +

+ GL_INVALID_OPERATION is generated if id is the name of an already active query object. +

+ GL_INVALID_OPERATION is generated if id refers to an existing query object whose type + does not does not match target. +

Copyright

+ Copyright © 2005 Addison-Wesley. + Copyright © 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBeginQueryIndexed.xml b/upstream-man-pages/man4/xhtml/glBeginQueryIndexed.xml new file mode 100644 index 0000000..b40c6b0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBeginQueryIndexed.xml @@ -0,0 +1,139 @@ + + + +glBeginQueryIndexed, glEndQueryIndexed - OpenGL 4 Reference Pages

Name

glBeginQueryIndexed, glEndQueryIndexed — delimit the boundaries of a query object on an indexed target

C Specification

void glBeginQueryIndexed(GLenum  target,
 GLuint  index,
 GLuint  id);

Parameters

target

+ Specifies the target type of query object established between + glBeginQueryIndexed and the subsequent glEndQueryIndexed. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. +

index

+ Specifies the index of the query target upon which to begin the query. +

id

+ Specifies the name of a query object. +

C Specification

void glEndQueryIndexed(GLenum  target,
 GLuint  index);

Parameters

target

+ Specifies the target type of query object to be concluded. + The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or + GL_TIME_ELAPSED. +

index

+ Specifies the index of the query target upon which to end the query. +

Description

+ glBeginQueryIndexed and glEndQueryIndexed delimit the + boundaries of a query object. query must be a name previously returned from a call to + glGenQueries. If a query object with name id + does not yet exist it is created with the type determined by target. target must + be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query + object depends on its type and is as follows. +

+ index specifies the index of the query target and must be between a target-specific + maximum. +

+ If target is GL_SAMPLES_PASSED, id must be an unused name, + or the name of an existing occlusion query object. + When glBeginQueryIndexed is executed, the query object's samples-passed counter is reset to 0. Subsequent + rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS + is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS + is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their + discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment + is covered. When glEndQueryIndexed + is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by + calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_SAMPLES_PASSED, index must be zero. +

+ If target is GL_ANY_SAMPLES_PASSED, id must be an unused name, + or the name of an existing boolean occlusion query object. + When glBeginQueryIndexed is executed, the query object's samples-passed flag is reset to GL_FALSE. + Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test. When + glEndQueryIndexed is executed, the samples-passed flag is assigned to the query object's result value. This value can + be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_ANY_SAMPLES_PASSED, index must be zero. +

+ If target is GL_PRIMITIVES_GENERATED, id must be an unused + name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. + When glBeginQueryIndexed is executed, the query object's primitives-generated counter is reset to 0. Subsequent + rendering will increment the counter once for every vertex that is emitted from the geometry shader to the stream given by index, + or from the vertex shader if index is zero and no geometry shader is present. + When glEndQueryIndexed is executed, the primitives-generated counter for stream index is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject + with pname GL_QUERY_RESULT. + When target is GL_PRIMITIVES_GENERATED, index must be + less than the value of GL_MAX_VERTEX_STREAMS. +

+ If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be + an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN + query binding. When glBeginQueryIndexed is executed, the query object's primitives-written counter for the stream specified by + index is reset to 0. Subsequent rendering will increment the counter once for every vertex that is written into the bound + transform feedback buffer(s) for stream index. If transform feedback + mode is not activated between the call to glBeginQueryIndexed and glEndQueryIndexed, the counter will not be + incremented. When glEndQueryIndexed is executed, the primitives-written counter for stream index is assigned to + the query object's result value. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, index must be + less than the value of GL_MAX_VERTEX_STREAMS. +

+ If target is GL_TIME_ELAPSED, id must be + an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED + query binding. When glBeginQueryIndexed is executed, the query object's time counter is reset to 0. When glEndQueryIndexed + is executed, the elapsed server time that has passed since the call to glBeginQueryIndexed is written into the query object's + time counter. This value can be queried by calling glGetQueryObject with pname + GL_QUERY_RESULT. + When target is GL_TIME_ELAPSED, index must be zero. +

+ Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the + query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to + determine if the result is immediately available or if the rendering is not yet complete. +

Notes

+ If the query target's count exceeds the maximum value representable in the number of available bits, as reported by + glGetQueryiv with target set to the + appropriate query target and pname + GL_QUERY_COUNTER_BITS, the count becomes undefined. +

+ An implementation may support 0 bits in its counter, in which case query results are always undefined + and essentially useless. +

+ When GL_SAMPLE_BUFFERS is 0, the samples-passed counter of an occlusion query will increment once for each + fragment that passes the depth test. When GL_SAMPLE_BUFFERS is 1, an implementation may either increment + the samples-passed counter individually for each sample of a fragment that passes the depth test, or it may choose to increment + the counter for all samples of a fragment if any one of them passes the depth test. +

+ Calling glBeginQuery or + glEndQuery is equivalent to + calling glBeginQueryIndexed or + glEndQueryIndexed with + index set to zero, respectively. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_VALUE is generated if index is greater than the + query target-specific maximum. +

+ GL_INVALID_OPERATION is generated if glBeginQueryIndexed is executed while + a query object of the same target is already active. +

+ GL_INVALID_OPERATION is generated if glEndQueryIndexed + is executed when a query object of the same target is not active. +

+ GL_INVALID_OPERATION is generated if id is 0. +

+ GL_INVALID_OPERATION is generated if id is the name of an already active query object. +

+ GL_INVALID_OPERATION is generated if id refers to an existing query object whose type + does not does not match target. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBeginTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glBeginTransformFeedback.xml new file mode 100644 index 0000000..4fa2758 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBeginTransformFeedback.xml @@ -0,0 +1,83 @@ + + + +glBeginTransformFeedback - OpenGL 4 Reference Pages

Name

glBeginTransformFeedback — start transform feedback operation

C Specification

void glBeginTransformFeedback(GLenum  primitiveMode);

Parameters

primitiveMode

+ Specify the output type of the primitives that will be recorded into the + buffer objects that are bound for transform feedback. +

C Specification

void glEndTransformFeedback(void);

Description

+ Transform feedback mode captures the values of varying variables written by the vertex shader (or, if active, the geometry shader). + Transform feedback is said to be active after a call to glBeginTransformFeedback + until a subsequent call to glEndTransformFeedback. + Transform feedback commands must be paired. +

+ If no geometry shader is present, while transform feedback is active the mode parameter to + glDrawArrays must match those specified + in the following table: +

+ Transform Feedback primitiveMode + + Allowed Render Primitive modes +
+ GL_POINTS + + GL_POINTS +
+ GL_LINES + + GL_LINES, GL_LINE_LOOP, GL_LINE_STRIP, + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY +
+ GL_TRIANGLES + + GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY +

+ If a geometry shader is present, the output primitive type from the geometry shader must match those + provided in the following table: +

+ Transform Feedback primitiveMode + + Allowed Geometry Shader Output Primitive Type +
+ GL_POINTS + + points +
+ GL_LINES + + line_strip +
+ GL_TRIANGLES + + triangle_strip +

+

Notes

+ Geometry shaders, and the GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY and GL_LINE_STRIP_ADJACENCY primtive modes are available + only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if glBeginTransformFeedback is executed + while transform feedback is active. +

+ GL_INVALID_OPERATION is generated if glEndTransformFeedback is executed + while transform feedback is not active. +

+ GL_INVALID_OPERATION is generated by glDrawArrays + if no geometry shader is present, transform feedback is active and mode is not one of the allowed modes. +

+ GL_INVALID_OPERATION is generated by glDrawArrays + if a geometry shader is present, transform feedback is active and the output primitive type of the geometry shader does not + match the transform feedback primitiveMode. +

+ GL_INVALID_OPERATION is generated by glEndTransformFeedback if any binding + point used in transform feedback mode does not have a buffer object bound. +

+ GL_INVALID_OPERATION is generated by glEndTransformFeedback if no binding + points would be used, either because no program object is active of because the active program object has specified + no varying variables to record. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindAttribLocation.xml b/upstream-man-pages/man4/xhtml/glBindAttribLocation.xml new file mode 100644 index 0000000..edb2321 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindAttribLocation.xml @@ -0,0 +1,98 @@ + + + +glBindAttribLocation - OpenGL 4 Reference Pages

Name

glBindAttribLocation — Associates a generic vertex attribute index with a named attribute variable

C Specification

void glBindAttribLocation(GLuint  program,
 GLuint  index,
 const GLchar * name);

Parameters

program

Specifies the handle of the program object in + which the association is to be made.

index

Specifies the index of the generic vertex + attribute to be bound.

name

Specifies a null terminated string containing + the name of the vertex shader attribute variable to + which index is to be + bound.

Description

glBindAttribLocation is used to + associate a user-defined attribute variable in the program + object specified by program with a + generic vertex attribute index. The name of the user-defined + attribute variable is passed as a null terminated string in + name. The generic vertex attribute index + to be bound to this variable is specified by + index. When + program is made part of current state, + values provided via the generic vertex attribute + index will modify the value of the + user-defined attribute variable specified by + name.

If name refers to a matrix + attribute variable, index refers to the + first column of the matrix. Other matrix columns are then + automatically bound to locations index+1 + for a matrix of type mat2; index+1 and + index+2 for a matrix of type mat3; and + index+1, index+2, + and index+3 for a matrix of type + mat4.

This command makes it possible for vertex shaders to use + descriptive names for attribute variables rather than generic + variables that are numbered from 0 to + GL_MAX_VERTEX_ATTRIBS -1. The values sent + to each generic attribute index are part of current state. + If a different program object is made current by calling + glUseProgram, + the generic vertex attributes are tracked in such a way that the + same values will be observed by attributes in the new program + object that are also bound to + index.

Attribute variable + name-to-generic attribute index bindings for a program object + can be explicitly assigned at any time by calling + glBindAttribLocation. Attribute bindings do + not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for generic attributes remain fixed (and their + values can be queried) until the next link command + occurs.

Any attribute binding that occurs after the program object has been linked will not take effect + until the next time the program object is linked.

Notes

glBindAttribLocation can be called + before any vertex shader objects are bound to the specified + program object. It is also permissible to bind a generic + attribute index to an attribute variable name that is never used + in a vertex shader.

If name was bound previously, that + information is lost. Thus you cannot bind one user-defined + attribute variable to multiple indices, but you can bind + multiple user-defined attribute variables to the same + index.

Applications are allowed to bind more than one + user-defined attribute variable to the same generic vertex + attribute index. This is called aliasing, + and it is allowed only if just one of the aliased attributes is + active in the executable program, or if no path through the + shader consumes more than one attribute of a set of attributes + aliased to the same location. The compiler and linker are + allowed to assume that no aliasing is done and are free to + employ optimizations that work only in the absence of aliasing. + OpenGL implementations are not required to do error checking to + detect aliasing.

Active attributes that are not explicitly bound will be + bound by the linker when + glLinkProgram + is called. The locations assigned can be queried by calling + glGetAttribLocation.

OpenGL copies the name string when + glBindAttribLocation is called, so an + application may free its copy of the name + string immediately after the function returns.

Generic attribute locations may be specified in the shader source + text using a location layout qualifier. In this case, + the location of the attribute specified in the shader's source takes precedence + and may be queried by calling glGetAttribLocation. +

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_OPERATION is generated if + name starts with the reserved prefix + "gl_".

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetActiveAttrib + with argument program

glGetAttribLocation + with arguments program and + name

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindBuffer.xml b/upstream-man-pages/man4/xhtml/glBindBuffer.xml new file mode 100644 index 0000000..1e97781 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindBuffer.xml @@ -0,0 +1,171 @@ + + + +glBindBuffer - OpenGL 4 Reference Pages

Name

glBindBuffer — bind a named buffer object

C Specification

void glBindBuffer(GLenum  target,
 GLuint  buffer);

Parameters

target

+ Specifies the target to which the buffer object is bound. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

buffer

+ Specifies the name of a buffer object. +

Description

+ glBindBuffer binds a buffer object to the specified buffer binding point. Calling glBindBuffer with + target set to one of the accepted symbolic constants and buffer set to the name + of a buffer object binds that buffer object name to the target. If no buffer object with name buffer + exists, one is created with that name. When a buffer object is bound to a target, the previous binding for that + target is automatically broken. +

+ Buffer object names are unsigned integers. The value zero is reserved, but + there is no default buffer object for each buffer object target. Instead, buffer set to zero + effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target (if supported for that target). + Buffer object names and the corresponding buffer object contents are local to + the shared object space of the current + GL rendering context; + two rendering contexts share buffer object names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. +

+ glGenBuffers must be used to generate a set of unused buffer object names. +

+ The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with + GL_READ_WRITE access and GL_STATIC_DRAW usage. +

+ While a non-zero buffer object name is bound, GL operations on the target to which it is + bound affect the bound buffer object, and queries of the target to which it is bound return state + from the bound buffer object. While buffer object name zero is bound, as in the initial state, + attempts to modify or query state on the target to which it is bound generates an + GL_INVALID_OPERATION error. +

+ When a non-zero buffer object is bound to the GL_ARRAY_BUFFER target, + the vertex array pointer parameter is interpreted as an offset within the + buffer object measured in basic machine units. +

+ When a non-zero buffer object is bound to the GL_DRAW_INDIRECT_BUFFER target, + parameters for draws issued through glDrawArraysIndirect + and glDrawElementsIndirect are sourced + from the specified offset in that buffer object's data store. +

+ When a non-zero buffer object is bound to the GL_DISPATCH_INDIRECT_BUFFER target, + the parameters for compute dispatches issued through glDispatchComputeIndirect + are sourced from the specified offset in that buffer object's data store. +

+ While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, + the indices parameter of glDrawElements, + glDrawElementsInstanced, + glDrawElementsBaseVertex, + glDrawRangeElements, + glDrawRangeElementsBaseVertex, + glMultiDrawElements, or + glMultiDrawElementsBaseVertex is interpreted as an + offset within the buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, + the following commands are affected: glGetCompressedTexImage, + glGetTexImage, and + glReadPixels. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. +

+ While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, + the following commands are affected: + glCompressedTexImage1D, + glCompressedTexImage2D, + glCompressedTexImage3D, + glCompressedTexSubImage1D, + glCompressedTexSubImage2D, + glCompressedTexSubImage3D, + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D. The pointer parameter is + interpreted as an offset within the buffer object measured in basic machine units. +

+ The buffer targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER + are provided to allow glCopyBufferSubData + to be used without disturbing the state of other bindings. However, glCopyBufferSubData + may be used with any pair of buffer binding points. +

+ The GL_TRANSFORM_FEEDBACK_BUFFER buffer binding point may be passed to glBindBuffer, + but will not directly affect transform feedback state. Instead, the indexed GL_TRANSFORM_FEEDBACK_BUFFER + bindings must be used through a call to glBindBufferBase + or glBindBufferRange. This will affect the generic + GL_TRANSFORM_FEEDABCK_BUFFER binding. +

+ Likewise, the GL_UNIFORM_BUFFER, GL_ATOMIC_COUNTER_BUFFER and GL_SHADER_STORAGE_BUFFER + buffer binding points may + be used, but do not directly affect uniform buffer, atomic counter buffer or shader storage buffer state, respectively. + glBindBufferBase + or glBindBufferRange must be used to bind a buffer to + an indexed uniform buffer, atomic counter buffer or shader storage buffer binding point. +

+ A buffer object binding created with glBindBuffer remains active until a different + buffer object name is bound to the same target, or until the bound buffer object is + deleted with glDeleteBuffers. +

+ Once created, a named buffer object may be re-bound to any target as often as needed. However, + the GL implementation may make choices about how to optimize the storage of a buffer object based + on its initial binding target. +

Notes

+ The GL_COPY_READ_BUFFER, GL_UNIFORM_BUFFER and + GL_TEXTURE_BUFFER targets are available only if the GL version is 3.1 or greater. +

+ The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if buffer is not a name previously returned + from a call to glGenBuffers. +

Associated Gets

+ glGet with argument GL_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_ATOMIC_COUNTER_BUFFER_BINDING +

+ glGet with argument GL_COPY_READ_BUFFER_BINDING +

+ glGet with argument GL_COPY_WRITE_BUFFER_BINDING +

+ glGet with argument GL_DRAW_INDIRECT_BUFFER_BINDING +

+ glGet with argument GL_DISPATCH_INDIRECT_BUFFER_BINDING +

+ glGet with argument GL_ELEMENT_ARRAY_BUFFER_BINDING +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGet with argument GL_SHADER_STORAGE_BUFFER_BINDING +

+ glGet with argument GL_TRANSFORM_FEEDBACK_BUFFER_BINDING +

+ glGet with argument GL_UNIFORM_BUFFER_BINDING +

Copyright

+ Copyright © 2005 Addison-Wesley. + Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindBufferBase.xml b/upstream-man-pages/man4/xhtml/glBindBufferBase.xml new file mode 100644 index 0000000..a2cfe59 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindBufferBase.xml @@ -0,0 +1,53 @@ + + + +glBindBufferBase - OpenGL 4 Reference Pages

Name

glBindBufferBase — bind a buffer object to an indexed buffer target

C Specification

void glBindBufferBase(GLenum  target,
 GLuint  index,
 GLuint  buffer);

Parameters

target

+ Specify the target of the bind operation. target must be + one of GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or + GL_SHADER_STORAGE_BUFFER. +

index

+ Specify the index of the binding point within the array specified by target. +

buffer

+ The name of a buffer object to bind to the specified binding point. +

Description

+ glBindBufferBase binds the buffer object buffer + to the binding point at index index of the array of targets specified + by target. Each target represents an indexed + array of buffer binding points, as well as a single general binding point that can be used by + other buffer manipulation functions such as glBindBuffer + or glMapBuffer. In addition to binding + buffer to the indexed buffer binding target, glBindBufferBase + also binds buffer to the generic buffer binding point specified by target. +

Notes

+ Calling glBindBufferBase is equivalent to calling + glBindBufferRange with offset + zero and size equal to the size of the buffer. +

+ The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. +

+ The GL_SHADER_STORAGE_BUFFER target is available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or + GL_SHADER_STORAGE_BUFFER. +

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. +

+ GL_INVALID_VALUE is generated if buffer does + not have an associated data store, or if the size of that store is zero. +

Copyright

+ Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindBufferRange.xml b/upstream-man-pages/man4/xhtml/glBindBufferRange.xml new file mode 100644 index 0000000..fac01f2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindBufferRange.xml @@ -0,0 +1,62 @@ + + + +glBindBufferRange - OpenGL 4 Reference Pages

Name

glBindBufferRange — bind a range within a buffer object to an indexed buffer target

C Specification

void glBindBufferRange(GLenum target,
 GLuint index,
 GLuint buffer,
 GLintptr offset,
 GLsizeiptr size);

Parameters

target

+ Specify the target of the bind operation. target must be + one of GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER, + or GL_SHADER_STORAGE_BUFFER. +

index

+ Specify the index of the binding point within the array specified by target. +

buffer

+ The name of a buffer object to bind to the specified binding point. +

offset

+ The starting offset in basic machine units into the buffer object buffer. +

size

+ The amount of data in machine units that can be read from the buffet object while used as an indexed target. +

Description

+ glBindBufferRange binds a range the buffer object buffer + represented by offset and size to the + binding point at index index of the array of targets specified by target. + Each target represents an indexed array of buffer binding points, as well + as a single general binding point that can be used by other buffer manipulation functions such as + glBindBuffer or + glMapBuffer. In addition to binding + a range of buffer to the indexed buffer binding target, glBindBufferRange + also binds the range to the generic buffer binding point specified by target. +

+ offset specifies the offset in basic machine units into the buffer object + buffer and size specifies the amount of data that + can be read from the buffer object while used as an indexed target. +

Notes

+ The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. +

+ The GL_SHADER_STORAGE_BUFFER target is available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of GL_ATOMIC_COUNTER_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or + GL_SHADER_STORAGE_BUFFER. +

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the number of target-specific indexed binding points. +

+ GL_INVALID_VALUE is generated if size is less than + or equal to zero, or if offset + size is greater + than the value of GL_BUFFER_SIZE. +

+ Additional errors may be generated if offset violates any + target-specific alignmemt restrictions. +

Copyright

+ Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindFragDataLocation.xml b/upstream-man-pages/man4/xhtml/glBindFragDataLocation.xml new file mode 100644 index 0000000..f454218 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindFragDataLocation.xml @@ -0,0 +1,51 @@ + + + +glBindFragDataLocation - OpenGL 4 Reference Pages

Name

glBindFragDataLocation — bind a user-defined varying out variable to a fragment shader color number

C Specification

void glBindFragDataLocation(GLuint  program,
 GLuint  colorNumber,
 const char *  name);

Parameters

program

+ The name of the program containing varying out variable whose binding to modify +

colorNumber

+ The color number to bind the user-defined varying out variable to +

name

+ The name of the user-defined varying out variable whose binding to modify +

Description

+ glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable + name to fragment shader color number colorNumber for program + program. If name was bound previously, its assigned binding is replaced + with colorNumber. name must be a null-terminated string. colorNumber + must be less than GL_MAX_DRAW_BUFFERS. +

+ The bindings specified by glBindFragDataLocation have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. +

+ In addition to the errors generated by glBindFragDataLocation, the + program program will fail to link if: +

  • + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. +

  • + More than one varying out variable is bound to the same color number. +

+

Notes

+ Varying out varyings may have indexed locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. +

Errors

+ GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. +

+ GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. +

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Associated Gets

+ glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindFragDataLocationIndexed.xml b/upstream-man-pages/man4/xhtml/glBindFragDataLocationIndexed.xml new file mode 100644 index 0000000..a5ab252 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindFragDataLocationIndexed.xml @@ -0,0 +1,68 @@ + + + +glBindFragDataLocationIndexed - OpenGL 4 Reference Pages

Name

glBindFragDataLocationIndexed — bind a user-defined varying out variable to a fragment shader color number and index

C Specification

void glBindFragDataLocationIndexed(GLuint  program,
 GLuint  colorNumber,
 GLuint  index,
 const char * name);

Parameters

program

+ The name of the program containing varying out variable whose binding to modify +

colorNumber

+ The color number to bind the user-defined varying out variable to +

index

+ The index of the color input to bind the user-defined varying out variable to +

name

+ The name of the user-defined varying out variable whose binding to modify +

Description

+ glBindFragDataLocationIndexed specifies that the varying out variable name in + program should be bound to fragment color colorNumber when the program is next + linked. index may be zero or one to specify that the color be used as either the first or second color + input to the blend equation, respectively. +

+ The bindings specified by glBindFragDataLocationIndexed have no effect until program + is next linked. Bindings may be specified at any time after program has been created. Specifically, + they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, + including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are + reserved by the GL. +

+ If name was bound previously, its assigned binding is replaced with colorNumber and + index. name must be a null-terminated string. index must be less than or equal to one, + and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index + is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. +

+ In addition to the errors generated by glBindFragDataLocationIndexed, the + program program will fail to link if: +

  • + The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. +

  • + More than one varying out variable is bound to the same color number. +

+

Notes

+ Varying out varyings may have locations assigned explicitly in the shader text using a location + layout qualifier. If a shader statically assigns a location to a varying out variable in the shader text, + that location is used and any location assigned with glBindFragDataLocation is ignored. +

Errors

+ GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DRAW_BUFFERS. +

+ GL_INVALID_VALUE is generated if colorNumber is greater than or equal to GL_MAX_DUAL_SOURCE_DRAW_BUFERS + and index is greater than or equal to one. +

+ GL_INVALID_VALUE is generated if index is greater than one. +

+ GL_INVALID_OPERATION is generated if name starts with the reserved gl_ prefix. +

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Associated Gets

+ glGetFragDataLocation with a valid program object + and the the name of a user-defined varying out variable +

+ glGetFragDataIndex with a valid program object + and the the name of a user-defined varying out variable +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindFramebuffer.xml b/upstream-man-pages/man4/xhtml/glBindFramebuffer.xml new file mode 100644 index 0000000..f5850b8 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindFramebuffer.xml @@ -0,0 +1,40 @@ + + + +glBindFramebuffer - OpenGL 4 Reference Pages

Name

glBindFramebuffer — bind a framebuffer to a framebuffer target

C Specification

void glBindFramebuffer(GLenum  target,
 GLuint  framebuffer);

Parameters

target

+ Specifies the framebuffer target of the binding operation. +

framebuffer

+ Specifies the name of the framebuffer object to bind. +

Description

+ glBindFramebuffer binds the framebuffer object with name framebuffer to the framebuffer target specified + by target. target must be either GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. If a framebuffer object is bound to + GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER, it becomes the target for + rendering or readback operations, respectively, until it is deleted or another framebuffer is bound to the corresponding bind point. + Calling glBindFramebuffer with target set to GL_FRAMEBUFFER binds + framebuffer to both the read and draw framebuffer targets. framebuffer is the name of a framebuffer + object previously returned from a call to glGenFramebuffers, or zero to break the existing + binding of a framebuffer object to target. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. +

+ GL_INVALID_OPERATION is generated if framebuffer is not zero or the name of a framebuffer + previously returned from a call to glGenFramebuffers. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindImageTexture.xml b/upstream-man-pages/man4/xhtml/glBindImageTexture.xml new file mode 100644 index 0000000..beccc0f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindImageTexture.xml @@ -0,0 +1,96 @@ + + + +glBindImageTexture - OpenGL 4 Reference Pages

Name

glBindImageTexture — bind a level of a texture to an image unit

C Specification

void glBindImageTexture(GLuint  unit,
 GLuint  texture,
 GLint  level,
 GLboolean  layered,
 GLint  layer,
 GLenum  access,
 GLenum  format);

Parameters

unit

+ Specifies the index of the image unit to which to bind the texture +

texture

+ Specifies the name of the texture to bind to the image unit. +

level

+ Specifies the level of the texture that is to be bound. +

layered

+ Specifies whether a layered texture binding is to be established. +

layer

+ If layered is GL_FALSE, specifies the layer of texture to be bound to the image unit. Ignored otherwise. +

access

+ Specifies a token indicating the type of access that will be performed on the image. +

format

+ Specifies the format that the elements of the image will be treated as for the purposes of formatted stores. +

Description

+ glBindImageTexture binds a single level of a texture to an image unit for the purpose of + reading and writing it from shaders. unit specifies the zero-based index of the image + unit to which to bind the texture level. texture specifies the name of an existing texture + object to bind to the image unit. If texture is zero, then any existing binding to + the image unit is broken. level specifies the level of the texture to bind to the image + unit. +

+ If texture is the name of a one-, two-, or three-dimensional array texture, a cube map + or cube map array texture, or a two-dimensional multisample array texture, then it is possible to bind either + the entire array, or only a single layer of the array to the image unit. In such cases, if layered + is GL_TRUE, the entire array is attached to the image unit and layer + is ignored. However, if layered is GL_FALSE then layer + specifies the layer of the array to attach to the image unit. +

+ access specifies the access types to be performed by shaders and may be set to + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE + to indicate read-only, write-only or read-write access, respectively. Violation of the access type specified in access + (for example, if a shader writes to an image bound with access set to GL_READ_ONLY) + will lead to undefined results, possibly including program termination. +

+ format specifies the format that is to be used when performing formatted stores into the + image from shaders. format must be compatible with the texture's internal format and must + be one of the formats listed in the following table. +

+

Table 1. Internal Image Formats

+ Image Unit Format + + Format Qualifier +
GL_RGBA32Frgba32f
GL_RGBA16Frgba16f
GL_RG32Frg32f
GL_RG16Frg16f
GL_R11F_G11F_B10Fr11f_g11f_b10f
GL_R32Fr32f
GL_R16Fr16f
GL_RGBA32UIrgba32ui
GL_RGBA16UIrgba16ui
GL_RGB10_A2UIrgb10_a2ui
GL_RGBA8UIrgba8ui
GL_RG32UIrg32ui
GL_RG16UIrg16ui
GL_RG8UIrg8ui
GL_R32UIr32ui
GL_R16UIr16ui
GL_R8UIr8ui
GL_RGBA32Irgba32i
GL_RGBA16Irgba16i
GL_RGBA8Irgba8i
GL_RG32Irg32i
GL_RG16Irg16i
GL_RG8Irg8i
GL_R32Ir32i
GL_R16Ir16i
GL_R8Ir8i
GL_RGBA16rgba16
GL_RGB10_A2rgb10_a2
GL_RGBA8rgba8
GL_RG16rg16
GL_RG8rg8
GL_R16r16
GL_R8r8
GL_RGBA16_SNORMrgba16_snorm
GL_RGBA8_SNORMrgba8_snorm
GL_RG16_SNORMrg16_snorm
GL_RG8_SNORMrg8_snorm
GL_R16_SNORMr16_snorm
GL_R8_SNORMr8_snorm

+

+ When a texture is bound to an image unit, the format parameter for the image + unit need not exactly match the texture internal format as long as the formats are + considered compatible as defined in the OpenGL Specification. The matching criterion used + for a given texture may be determined by calling glGetTexParameter + with value + set to GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, with return values of GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE + and GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS, specifying matches by size and class, respectively. +

Notes

+ The glBindImageTexture is available only if the GL version is 4.2 or greater. +

Errors

+ GL_INVALID_VALUE is generated if unit greater than or equal to the + value of GL_MAX_IMAGE_UNITS. +

+ GL_INVALID_VALUE is generated if texture is not the name of + an existing texture object. +

+ GL_INVALID_VALUE is generated if level or layer + is less than zero. +

+ GL_INVALID_ENUM is generated if access or format + is not one of the supported tokens. +

Associated Gets

+ glGet with argument GL_IMAGE_BINDING_NAME. +

+ glGet with argument GL_IMAGE_BINDING_LEVEL. +

+ glGet with argument GL_IMAGE_BINDING_LAYERED. +

+ glGet with argument GL_IMAGE_BINDING_LAYER. +

+ glGet with argument GL_IMAGE_BINDING_ACCESS. +

+ glGet with argument GL_IMAGE_BINDING_FORMAT. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindProgramPipeline.xml b/upstream-man-pages/man4/xhtml/glBindProgramPipeline.xml new file mode 100644 index 0000000..fdbdbe4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindProgramPipeline.xml @@ -0,0 +1,39 @@ + + + +glBindProgramPipeline - OpenGL 4 Reference Pages

Name

glBindProgramPipeline — bind a program pipeline to the current context

C Specification

void glBindProgramPipeline(GLuint  pipeline);

Parameters

pipeline

+ Specifies the name of the pipeline object to bind to the context. +

Description

+ glBindProgramPipeline binds a program pipeline object to the current + context. pipeline must be a name previously returned from a call + to glGenProgramPipelines. If + no program pipeline exists with name pipeline then a new pipeline object + is created with that name and initialized to the default state vector. +

+ When a program pipeline object is bound using glBindProgramPipeline, any previous + binding is broken and is replaced with a binding to the specified pipeline object. If pipeline + is zero, the previous binding is broken and is not replaced, leaving no pipeline object bound. + If no current program object has been established by glUseProgram, + the program objects used for each stage and for uniform updates are taken from the bound program + pipeline object, if any. If there is a current program object established by glUseProgram, + the bound program pipeline object has no effect on rendering or uniform updates. When a bound program + pipeline object is used for rendering, individual shader executables are taken from its program objects. +

Errors

+ GL_INVALID_OPERATION is generated if pipeline is not zero or + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindRenderbuffer.xml b/upstream-man-pages/man4/xhtml/glBindRenderbuffer.xml new file mode 100644 index 0000000..773431d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindRenderbuffer.xml @@ -0,0 +1,29 @@ + + + +glBindRenderbuffer - OpenGL 4 Reference Pages

Name

glBindRenderbuffer — bind a renderbuffer to a renderbuffer target

C Specification

void glBindRenderbuffer(GLenum  target,
 GLuint  renderbuffer);

Parameters

target

+ Specifies the renderbuffer target of the binding operation. target must be GL_RENDERBUFFER. +

renderbuffer

+ Specifies the name of the renderbuffer object to bind. +

Description

+ glBindRenderbuffer binds the renderbuffer object with name renderbuffer to the renderbuffer target specified + by target. target must be GL_RENDERBUFFER. renderbuffer + is the name of a renderbuffer object previously returned from a call to glGenRenderbuffers, + or zero to break the existing binding of a renderbuffer object to target. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. +

+ GL_INVALID_OPERATION is generated if renderbuffer is not zero or the name of a renderbuffer + previously returned from a call to glGenRenderbuffers. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindSampler.xml b/upstream-man-pages/man4/xhtml/glBindSampler.xml new file mode 100644 index 0000000..27855eb --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindSampler.xml @@ -0,0 +1,43 @@ + + + +glBindSampler - OpenGL 4 Reference Pages

Name

glBindSampler — bind a named sampler to a texturing target

C Specification

void glBindSampler(GLuint  unit,
 GLuint  sampler);

Parameters

unit

+ Specifies the index of the texture unit to which the sampler is bound. +

sampler

+ Specifies the name of a sampler. +

Description

+ glBindSampler binds sampler to the texture unit at index unit. + sampler must be zero or the name of a sampler object previously returned from a call to + glGenSamplers. unit must be less than the value + of GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. +

+ When a sampler object is bound to a texture unit, its state supersedes that of + the texture object bound to that texture unit. If the sampler name zero is bound to + a texture unit, the currently bound texture's sampler state becomes active. A single + sampler object may be bound to multiple texture units simultaneously. +

Notes

+ glBindSampler is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if unit is greater than or equal to the value of + GL_MAX_COMBIED_TEXTURE_IMAGE_UNITS. +

+ GL_INVALID_OPERATION is generated if sampler is not zero or a name previously + returned from a call to glGenSamplers, or if such a name has + been deleted by a call to glDeleteSamplers. +

Associated Gets

+ glGet with argument GL_SAMPLER_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindTexture.xml b/upstream-man-pages/man4/xhtml/glBindTexture.xml new file mode 100644 index 0000000..8b18f42 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindTexture.xml @@ -0,0 +1,115 @@ + + + +glBindTexture - OpenGL 4 Reference Pages

Name

glBindTexture — bind a named texture to a texturing target

C Specification

void glBindTexture(GLenum  target,
 GLuint  texture);

Parameters

target

+ Specifies the target to which the texture is bound. + Must be one of + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_ARRAY, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY. +

texture

+ Specifies the name of a texture. +

Description

+ glBindTexture lets you create or use a named texture. Calling glBindTexture with + target set to + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_ARRAY, + GL_TEXTURE_BUFFER, + GL_TEXTURE_2D_MULTISAMPLE or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY + and texture set to the name of the new texture binds the texture name to the target. + When a texture is bound to a target, the previous binding for that target is automatically broken. +

+ Texture names are unsigned integers. The value zero is reserved to + represent the default texture for each texture target. + Texture names and the corresponding texture contents are local to + the shared object space of the current GL rendering context; + two rendering contexts share texture names only if they + explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. +

+ You must use glGenTextures to generate a set of new texture names. +

+ When a texture is first bound, it assumes the specified target: + A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a + texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a + texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, a + texture first bound to GL_TEXTURE_1D_ARRAY becomes one-dimensional array texture, a + texture first bound to GL_TEXTURE_2D_ARRAY becomes two-dimensional arary texture, a + texture first bound to GL_TEXTURE_RECTANGLE becomes rectangle texture, a + texture first bound to GL_TEXTURE_CUBE_MAP becomes a cube-mapped texture, a + texture first bound to GL_TEXTURE_CUBE_MAP_ARRAY becomes a cube-mapped array texture, a + texture first bound to GL_TEXTURE_BUFFER becomes a buffer texture, a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE becomes a two-dimensional multisampled texture, and a + texture first bound to GL_TEXTURE_2D_MULTISAMPLE_ARRAY becomes a two-dimensional multisampled array texture. + The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the + default GL_TEXTURE_1D at GL initialization, and similarly for the other texture types. +

+ While a texture is bound, GL operations on the target to which it is + bound affect the bound texture, and queries of the target to which it + is bound return state from the bound texture. + In effect, the texture targets become aliases for the textures currently + bound to them, and the texture name zero refers to the default textures + that were bound to them at initialization. +

+ A texture binding created with glBindTexture remains active until a different + texture is bound to the same target, or until the bound texture is + deleted with glDeleteTextures. +

+ Once created, a named texture may be re-bound to its same original target as often as needed. + It is usually much faster to use glBindTexture to bind an existing named + texture to one of the texture targets than it is to reload the texture image + using glTexImage1D, glTexImage2D, + glTexImage3D or another similar function. +

Notes

+ The GL_TEXTURE_2D_MULTISAMPLE and GL_TEXTURE_2D_MULTISAMPLE_ARRAY targets are available + only if the GL version is 3.2 or higher. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable + values. +

+ GL_INVALID_VALUE is generated if target is not a name returned from + a previous call to glGenTextures. +

+ GL_INVALID_OPERATION is generated if texture was previously created with a target + that doesn't match that of target. +

Associated Gets

+ glGet with argument GL_TEXTURE_BINDING_1D, + GL_TEXTURE_BINDING_2D, GL_TEXTURE_BINDING_3D, GL_TEXTURE_BINDING_1D_ARRAY, + GL_TEXTURE_BINDING_2D_ARRAY, GL_TEXTURE_BINDING_RECTANGLE, + GL_TEXTURE_BINDING_BUFFER, GL_TEXTURE_BINDING_CUBE_MAP, GL_TEXTURE_BINDING_CUBE_MAP, + GL_TEXTURE_BINDING_CUBE_MAP_ARRAY, + GL_TEXTURE_BINDING_2D_MULTISAMPLE, + or GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glBindTransformFeedback.xml new file mode 100644 index 0000000..7e877a5 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindTransformFeedback.xml @@ -0,0 +1,52 @@ + + + +glBindTransformFeedback - OpenGL 4 Reference Pages

Name

glBindTransformFeedback — bind a transform feedback object

C Specification

void glBindTransformFeedback(GLenum  target,
 GLuint  id);

Parameters

target

+ Specifies the target to which to bind the transform feedback object id. target + must be GL_TRANSFORM_FEEDBACK. +

id

+ Specifies the name of a transform feedback object reserved by glGenTransformFeedbacks. +

Description

+ glBindTransformFeedback binds the transform feedback object with name id to the current + GL state. id must be a name previously returned from a call to + glGenTransformFeedbacks. If id has not + previously been bound, a new transform feedback object with name id and initialized with with the + default transform state vector is created. +

+ In the initial state, a default transform feedback object is bound and treated as + a transform feedback object with a name of zero. If the name zero is subsequently bound, the default + transform feedback object is again bound to the GL state. +

+ While a transform feedback buffer object is bound, GL operations on the target + to which it is bound affect the bound transform feedback object, and queries of the + target to which a transform feedback object is bound return state from the bound + object. When buffer objects are bound for transform feedback, they are attached to + the currently bound transform feedback object. Buffer objects are used for trans- + form feedback only if they are attached to the currently bound transform feedback + object. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TRANSFORM_FEEDBACK. +

+ GL_INVALID_OPERATION is generated if the transform feedback operation is + active on the currently bound transform feedback object, and that operation is not paused. +

+ GL_INVALID_OPERATION is generated if id is not + zero or the name of a transform feedback object returned from a previous call to + glGenTransformFeedbacks, or + if such a name has been deleted by glDeleteTransformFeedbacks. +

Associated Gets

+ glGet with argument GL_TRANSFORM_FEEDBACK_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindVertexArray.xml b/upstream-man-pages/man4/xhtml/glBindVertexArray.xml new file mode 100644 index 0000000..04b5a25 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindVertexArray.xml @@ -0,0 +1,26 @@ + + + +glBindVertexArray - OpenGL 4 Reference Pages

Name

glBindVertexArray — bind a vertex array object

C Specification

void glBindVertexArray(GLuint array);

Parameters

array

+ Specifies the name of the vertex array to bind. +

Description

+ glBindVertexArray binds the vertex array object with name array. array + is the name of a vertex array object previously returned from a call to glGenVertexArrays, + or zero to break the existing vertex array object binding. +

+ If no vertex array object with name array exists, one is created when array is first bound. If the bind + is successful no change is made to the state of the vertex array object, and any previous vertex array object binding is broken. +

Errors

+ GL_INVALID_OPERATION is generated if array is not zero or the name of a vertex array object + previously returned from a call to glGenVertexArrays. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBindVertexBuffer.xml b/upstream-man-pages/man4/xhtml/glBindVertexBuffer.xml new file mode 100644 index 0000000..ca5a36a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBindVertexBuffer.xml @@ -0,0 +1,44 @@ + + + +glBindVertexBuffer - OpenGL 4 Reference Pages

Name

glBindVertexBuffer — bind a buffer to a vertex buffer bind point

C Specification

void glBindVertexBuffer(GLuint  bindingindex,
 GLuint  buffer,
 GLintptr  offset,
 GLintptr  stride);

Parameters

bindingindex

+ The index of the vertex buffer binding point to which to bind the buffer. +

buffer

+ The name of an existing buffer to bind to the vertex buffer binding point. +

offset

+ The offset of the first element of the buffer. +

stride

+ The distance between elements within the buffer. +

Description

+ glBindVertexBuffer binds the buffer named buffer + to the vertex buffer binding point whose index is given by bindingindex. + offset and stride specify the offset of the first + element within the buffer and the distance between elements within the buffer, respectively, and + are both measured in basic machine units. bindingindex must be less than + the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. offset + and stride must be greater than or equal to zero. If buffer + is zero, then any buffer currently bound to the specified binding point is unbound. +

Errors

+ GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. +

+ GL_INVALID_VALUE is generated if offset or stride + is less than zero. +

+ GL_INVALID_VALUE is generated if buffer is not the name of an + existing buffer object. +

+ GL_INVALID_OPERATION is generated if no vertex array object is bound. +

Associated Gets

+ glGet with argument GL_MAX_VERTEX_ATTRIB_BINDINGS. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBlendColor.xml b/upstream-man-pages/man4/xhtml/glBlendColor.xml new file mode 100644 index 0000000..f88caee --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBlendColor.xml @@ -0,0 +1,39 @@ + + + +glBlendColor - OpenGL 4 Reference Pages

Name

glBlendColor — set the blend color

C Specification

void glBlendColor(GLfloat  red,
 GLfloat  green,
 GLfloat  blue,
 GLfloat  alpha);

Parameters

red, green, blue, alpha

+ specify the components of GL_BLEND_COLOR +

Description

+ The GL_BLEND_COLOR may be used to calculate the source and destination + blending factors. The color components are clamped to the range + + + + 0 + 1 + + + before being stored. See glBlendFunc for a complete description of the + blending operations. + Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). +

Notes

+ The type of the red, + green, blue, + and alpha parameters was changed from + GLclampf to GLfloat. This change is transparent to user code + and is described in detail on the + removedTypes + page. +

Associated Gets

+ glGet with an argument of GL_BLEND_COLOR +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glBlendEquation.xml b/upstream-man-pages/man4/xhtml/glBlendEquation.xml new file mode 100644 index 0000000..bc0ece1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBlendEquation.xml @@ -0,0 +1,668 @@ + + + +glBlendEquation - OpenGL 4 Reference Pages

Name

glBlendEquation — specify the equation used for both the RGB blend equation and the Alpha blend equation

C Specification

void glBlendEquation(GLenum mode);

void glBlendEquationi(GLuint  buf,
 GLenum  mode);

Parameters

buf

+ for glBlendEquationi, specifies the index of the draw buffer + for which to set the blend equation. +

mode

+ specifies how source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

Description

+ The blend equations determine how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). This function sets both the RGB blend equation and the alpha + blend equation to a single equation. glBlendEquationi + specifies the blend equation for a single draw buffer whereas glBlendEquation + sets the blend equation for all draw buffers. +

+ These equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. +

+ In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + +

+ Mode + + RGB Components + + Alpha Component +
+ GL_FUNC_ADD + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_SUBTRACT + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + - + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + - + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + - + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + - + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_REVERSE_SUBTRACT + +
+ + + Rr + = + + R + d + + ⁢ + d + R + + - + R + s + + ⁢ + s + R + + + +
+
+ + + Gr + = + + G + d + + ⁢ + d + G + + - + G + s + + ⁢ + s + G + + + +
+
+ + + Br + = + + B + d + + ⁢ + d + B + + - + B + s + + ⁢ + s + B + + + +
+
+
+ + + Ar + = + + A + d + + ⁢ + d + A + + - + A + s + + ⁢ + s + A + + + +
+
+ GL_MIN + +
+ + + Rr + = + + min + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + min + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + min + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + min + ⁡ + + + A + s + + + + A + d + + + + + +
+
+ GL_MAX + +
+ + + Rr + = + + max + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + max + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + max + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + max + ⁡ + + + A + s + + + + A + d + + + + + +
+

+

+ The results of these equations are clamped to the range + + + + 0 + 1 + + . +

+ The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. +

+ Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. +

+

Notes

+ The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. +

+ GL_INVALID_VALUE is generated by glBlendEquationi if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. +

Associated Gets

+ glGet with an argument of GL_BLEND_EQUATION_RGB +

+ glGet with an argument of GL_BLEND_EQUATION_ALPHA +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glBlendEquationSeparate.xml b/upstream-man-pages/man4/xhtml/glBlendEquationSeparate.xml new file mode 100644 index 0000000..2919817 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBlendEquationSeparate.xml @@ -0,0 +1,673 @@ + + + +glBlendEquationSeparate - OpenGL 4 Reference Pages

Name

glBlendEquationSeparate — set the RGB blend equation and the alpha blend equation separately

C Specification

void glBlendEquationSeparate(GLenum  modeRGB,
 GLenum  modeAlpha);
void glBlendEquationSeparatei(GLuint  buf,
 GLenum  modeRGB,
 GLenum  modeAlpha);

Parameters

buf

+ for glBlendEquationSeparatei, specifies the index of the draw buffer for which + to set the blend equations. +

modeRGB

+ specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

modeAlpha

+ specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. + It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. +

Description

+ The blend equations determines how a new pixel (the ''source'' color) + is combined with a pixel already in the framebuffer (the ''destination'' + color). These functions specifie one blend equation for the RGB-color + components and one blend equation for the alpha component. glBlendEquationSeparatei + specifies the blend equations for a single draw buffer whereas glBlendEquationSeparate + sets the blend equations for all draw buffers. +

+ The blend equations use the source and destination blend factors + specified by either glBlendFunc or + glBlendFuncSeparate. + See glBlendFunc or glBlendFuncSeparate + for a description of the various blend factors. +

+ In the equations that follow, source and destination + color components are referred to as + + + + R + s + + G + s + + B + s + + A + s + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , + respectively. + The result color is referred to as + + + + R + r + + G + r + + B + r + + A + r + + + . + The source and destination blend factors are denoted + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + , + respectively. + For these equations all color components are understood to have values + in the range + + + + 0 + 1 + + . + +

+ Mode + + RGB Components + + Alpha Component +
+ GL_FUNC_ADD + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_SUBTRACT + +
+ + + Rr + = + + R + s + + ⁢ + s + R + + - + R + d + + ⁢ + d + R + + + +
+
+ + + Gr + = + + G + s + + ⁢ + s + G + + - + G + d + + ⁢ + d + G + + + +
+
+ + + Br + = + + B + s + + ⁢ + s + B + + - + B + d + + ⁢ + d + B + + + +
+
+
+ + + Ar + = + + A + s + + ⁢ + s + A + + - + A + d + + ⁢ + d + A + + + +
+
+ GL_FUNC_REVERSE_SUBTRACT + +
+ + + Rr + = + + R + d + + ⁢ + d + R + + - + R + s + + ⁢ + s + R + + + +
+
+ + + Gr + = + + G + d + + ⁢ + d + G + + - + G + s + + ⁢ + s + G + + + +
+
+ + + Br + = + + B + d + + ⁢ + d + B + + - + B + s + + ⁢ + s + B + + + +
+
+
+ + + Ar + = + + A + d + + ⁢ + d + A + + - + A + s + + ⁢ + s + A + + + +
+
+ GL_MIN + +
+ + + Rr + = + + min + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + min + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + min + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + min + ⁡ + + + A + s + + + + A + d + + + + + +
+
+ GL_MAX + +
+ + + Rr + = + + max + ⁡ + + + R + s + + + + R + d + + + + + +
+
+ + + Gr + = + + max + ⁡ + + + G + s + + + + G + d + + + + + +
+
+ + + Br + = + + max + ⁡ + + + B + s + + + + B + d + + + + + +
+
+
+ + + Ar + = + + max + ⁡ + + + A + s + + + + A + d + + + + + +
+

+

+ The results of these equations are clamped to the range + + + + 0 + 1 + + . +

+ The GL_MIN and GL_MAX equations are useful for applications + that analyze image data (image thresholding against a constant color, + for example). + The GL_FUNC_ADD equation is useful + for antialiasing and transparency, among other things. +

+ Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. +

+

Notes

+ The GL_MIN, and GL_MAX equations do not use + the source or destination factors, only the source and destination colors. +

Errors

+ GL_INVALID_ENUM is generated if either modeRGB or modeAlpha is not one of + GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, + GL_MAX, or GL_MIN. +

+ GL_INVALID_VALUE is generated by glBlendEquationSeparatei if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. +

Associated Gets

+ glGet with an argument of GL_BLEND_EQUATION_RGB +

+ glGet with an argument of GL_BLEND_EQUATION_ALPHA +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBlendFunc.xml b/upstream-man-pages/man4/xhtml/glBlendFunc.xml new file mode 100644 index 0000000..c14f921 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBlendFunc.xml @@ -0,0 +1,1288 @@ + + + +glBlendFunc - OpenGL 4 Reference Pages

Name

glBlendFunc — specify pixel arithmetic

C Specification

void glBlendFunc(GLenum  sfactor,
 GLenum  dfactor);
void glBlendFunci(GLuint  buf,
 GLenum  sfactor,
 GLenum  dfactor);

Parameters

buf

+ For glBlendFunci, specifies the index of the draw + buffer for which to set the blend function. +

sfactor

+ Specifies how the red, green, blue, + and alpha source blending factors are computed. + The initial value is GL_ONE. +

dfactor

+ Specifies how the red, green, blue, + and alpha destination blending factors are computed. + The following symbolic constants are accepted: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA. + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, and + GL_ONE_MINUS_CONSTANT_ALPHA. + The initial value is GL_ZERO. +

Description

+ Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. +

+ glBlendFunc defines the operation of blending for all draw buffers when it is enabled. + glBlendFunci defines the operation of blending for a single draw buffer + specified by buf when enabled for that draw buffer. + sfactor specifies which method is used to scale the + source color components. + dfactor specifies which method is used to scale the + destination color components. + Both parameters must be one of the following symbolic constants: + GL_ZERO, + GL_ONE, + GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR, + GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA, + GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA, + GL_SRC_ALPHA_SATURATE, + GL_SRC1_COLOR, + GL_ONE_MINUS_SRC1_COLOR, + GL_SRC1_ALPHA, and + GL_ONE_MINUS_SRC1_ALPHA. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. + In the table and in subsequent equations, first source, second source + and destination color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where +

+

+ + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + +

+

+ and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. +

+ Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + The scale factors described in the table, + denoted + + + + f + R + + f + G + + f + B + + f + A + + + , + represent either source or destination factors. + All scale factors have range + + + + 0 + 1 + + . +

+

+ Parameter + + + + + f + R + + f + G + + f + B + + f + A + + + +
+ GL_ZERO + + + + + 0 + 0 + 0 + 0 + + +
+ GL_ONE + + + + + 1 + 1 + 1 + 1 + + +
+ GL_SRC_COLOR + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + A + s0 + + k + A + + + + + +
+ GL_DST_COLOR + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + +
+ GL_ONE_MINUS_DST_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + A + d + + k + A + + + + + +
+ GL_SRC_ALPHA + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + +
+ GL_DST_ALPHA + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + +
+ GL_ONE_MINUS_DST_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + +
+ GL_CONSTANT_COLOR + + + + + R + c + + G + c + + B + c + + A + c + + + +
+ GL_ONE_MINUS_CONSTANT_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + A + c + + + + +
+ GL_CONSTANT_ALPHA + + + + + A + c + + A + c + + A + c + + A + c + + + +
+ GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + A + c + + + + +
+ GL_SRC_ALPHA_SATURATE + + + + + i + i + i + 1 + + +
+ GL_SRC1_COLOR + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + +
+ GL_ONE_MINUS_SRC1_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + A + s1 + + k + A + + + + + +
+ GL_SRC1_ALPHA + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + +
+ GL_ONE_MINUS_SRC1_ALPHA + + + + + + 1 + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + +

+ In the table, +

+

+ + + + i + = + + + min + ⁡ + + A + s + + + k + A + + - + A + d + + + + + k + A + + + + +

+

+ To determine the blended RGBA values of a pixel, + the system uses the following equations: +

+

+ + + + R + d + + = + + min + ⁡ + + k + R + + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + + + + + + + + G + d + + = + + min + ⁡ + + k + G + + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + + + + + + + + B + d + + = + + min + ⁡ + + k + B + + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + + + + + + + + A + d + + = + + min + ⁡ + + k + A + + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + + + + +

+

+ Despite the apparent precision of the above equations, + blending arithmetic is not exactly specified, + because blending operates with imprecise integer color values. + However, + a blend factor that should be equal to 1 + is guaranteed not to modify its multiplicand, + and a blend factor equal to 0 reduces its multiplicand to 0. + For example, + when sfactor is GL_SRC_ALPHA, + dfactor is GL_ONE_MINUS_SRC_ALPHA, + and + + + A + s + + + is equal to + + + k + A + + , + the equations reduce to simple replacement: +

+

+ + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + +

+

+

Examples

+

+ Transparency is best implemented using blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + with primitives sorted from farthest to nearest. + Note that this transparency calculation does not require + the presence of alpha bitplanes in the frame buffer. +

+ Blend function + (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) + is also useful for rendering antialiased points and lines + in arbitrary order. +

+ Polygon antialiasing is optimized using blend function + (GL_SRC_ALPHA_SATURATE, GL_ONE) + with polygons sorted from nearest to farthest. + (See the glEnable, glDisable reference page and the + GL_POLYGON_SMOOTH argument for information on polygon antialiasing.) + Destination alpha bitplanes, + which must be present for this blend function to operate correctly, + store the accumulated coverage. +

Notes

+ Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. +

+ When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) +

+ When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. +

Errors

+ GL_INVALID_ENUM is generated if either sfactor + or dfactor is not an accepted value. +

+ GL_INVALID_VALUE is generated by glBlendFunci if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. +

Associated Gets

+ glGet with argument GL_BLEND_SRC +

+ glGet with argument GL_BLEND_DST +

+ glIsEnabled with argument GL_BLEND +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glBlendFuncSeparate.xml b/upstream-man-pages/man4/xhtml/glBlendFuncSeparate.xml new file mode 100644 index 0000000..26fa331 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBlendFuncSeparate.xml @@ -0,0 +1,1304 @@ + + + +glBlendFuncSeparate - OpenGL 4 Reference Pages

Name

glBlendFuncSeparate — specify pixel arithmetic for RGB and alpha components separately

C Specification

void glBlendFuncSeparate(GLenum  srcRGB,
 GLenum  dstRGB,
 GLenum  srcAlpha,
 GLenum  dstAlpha);
void glBlendFuncSeparatei(GLuint  buf,
 GLenum  srcRGB,
 GLenum  dstRGB,
 GLenum  srcAlpha,
 GLenum  dstAlpha);

Parameters

buf

+ For glBlendFuncSeparatei, specifies the index of the draw + buffer for which to set the blend functions. +

srcRGB

+ Specifies how the red, green, and blue blending factors are computed. + The initial value is GL_ONE. +

dstRGB

+ Specifies how the red, green, and blue destination blending factors are + computed. + The initial value is GL_ZERO. +

srcAlpha

+ Specified how the alpha source blending factor is computed. + The initial value is GL_ONE. +

dstAlpha

+ Specified how the alpha destination blending factor is computed. + The initial value is GL_ZERO. +

Description

+ Pixels can be drawn using a function that blends + the incoming (source) RGBA values with the RGBA values + that are already in the frame buffer (the destination values). + Blending is initially disabled. + Use glEnable and glDisable with argument GL_BLEND + to enable and disable blending. +

+ glBlendFuncSeparate defines the operation of blending for all draw buffers when it is enabled. + glBlendFuncSeparatei defines the operation of blending for a single draw buffer + specified by buf when enabled for that draw buffer. + srcRGB specifies which method is used to scale the + source RGB-color components. + dstRGB specifies which method is used to scale the + destination RGB-color components. + Likewise, srcAlpha specifies which method is used to scale the source alpha + color component, and dstAlpha specifies which method is used to scale the + destination alpha component. + The possible methods are described in the following table. + Each method defines four scale factors, + one each for red, green, blue, and alpha. +

+ In the table and in subsequent equations, first source, second source and destination + color components are referred to as + + + + R + s0 + + G + s0 + + B + s0 + + A + s0 + + + , + + + + R + s1 + + G + s1 + + B + s1 + + A + s1 + + + , + and + + + + R + d + + G + d + + B + d + + A + d + + + , respectively. + The color specified by glBlendColor is referred to as + + + + R + c + + G + c + + B + c + + A + c + + + . + They are understood to have integer values between 0 and + + + + k + R + + k + G + + k + B + + k + A + + + , + where +

+

+ + + + k + c + + = + + 2 + + m + c + + + + - + 1 + + + +

+

+ and + + + + m + R + + m + G + + m + B + + m + A + + + + is the number of red, + green, + blue, + and alpha bitplanes. +

+ Source and destination scale factors are referred to as + + + + s + R + + s + G + + s + B + + s + A + + + + and + + + + d + R + + d + G + + d + B + + d + A + + + . + All scale factors have range + + + + 0 + 1 + + . +

+

+ Parameter + + RGB Factor + + Alpha Factor +
+ GL_ZERO + + + + + 0 + 0 + 0 + + + + + + 0 + +
+ GL_ONE + + + + + 1 + 1 + 1 + + + + + + 1 + +
+ GL_SRC_COLOR + + + + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + A + s0 + + k + A + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s0 + + k + R + + + + G + s0 + + k + G + + + + B + s0 + + k + B + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + +
+ GL_DST_COLOR + + + + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + A + d + + k + A + + + +
+ GL_ONE_MINUS_DST_COLOR + + + + + + 1 + 1 + 1 + + - + + + R + d + + k + R + + + + G + d + + k + G + + + + B + d + + k + B + + + + + + + + + + 1 + - + + A + d + + k + A + + + + +
+ GL_SRC_ALPHA + + + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + A + s0 + + k + A + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + A + s0 + + k + A + + + + + + + + + + 1 + - + + A + s0 + + k + A + + + + +
+ GL_DST_ALPHA + + + + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + A + d + + k + A + + + +
+ GL_ONE_MINUS_DST_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + d + + k + A + + + + A + d + + k + A + + + + A + d + + k + A + + + + + + + + + + 1 + - + + A + d + + k + A + + + + +
+ GL_CONSTANT_COLOR + + + + + R + c + + G + c + + B + c + + + + + + + A + c + + +
+ GL_ONE_MINUS_CONSTANT_COLOR + + + + + + 1 + 1 + 1 + + - + + R + c + + G + c + + B + c + + + + + + + + + 1 + - + A + c + + + +
+ GL_CONSTANT_ALPHA + + + + + A + c + + A + c + + A + c + + + + + + + A + c + + +
+ GL_ONE_MINUS_CONSTANT_ALPHA + + + + + + 1 + 1 + 1 + + - + + A + c + + A + c + + A + c + + + + + + + + + 1 + - + A + c + + + +
+ GL_SRC_ALPHA_SATURATE + + + + + i + i + i + + + + + + 1 + +
+ GL_SRC1_COLOR + + + + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + A + s1 + + k + A + + + +
+ GL_ONE_MINUS_SRC_COLOR + + + + + + 1 + 1 + 1 + 1 + + - + + + R + s1 + + k + R + + + + G + s1 + + k + G + + + + B + s1 + + k + B + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + +
+ GL_SRC1_ALPHA + + + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + A + s1 + + k + A + + + +
+ GL_ONE_MINUS_SRC_ALPHA + + + + + + 1 + 1 + 1 + + - + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + A + s1 + + k + A + + + + + + + + + + 1 + - + + A + s1 + + k + A + + + + +

+ In the table, +

+

+ + + + i + = + + min + ⁡ + + A + s + + + 1 + - + + A + d + + + + + + + +

+

+ To determine the blended RGBA values of a pixel, + the system uses the following equations: +

+

+ + + + R + d + + = + + min + ⁡ + + k + R + + + R + s + + ⁢ + s + R + + + + R + d + + ⁢ + d + R + + + + + + + + + + G + d + + = + + min + ⁡ + + k + G + + + G + s + + ⁢ + s + G + + + + G + d + + ⁢ + d + G + + + + + + + + + + B + d + + = + + min + ⁡ + + k + B + + + B + s + + ⁢ + s + B + + + + B + d + + ⁢ + d + B + + + + + + + + + + A + d + + = + + min + ⁡ + + k + A + + + A + s + + ⁢ + s + A + + + + A + d + + ⁢ + d + A + + + + + + +

+

+ Despite the apparent precision of the above equations, blending arithmetic + is not exactly specified, because blending operates with imprecise integer + color values. However, a blend factor that should be equal to 1 is + guaranteed not to modify its multiplicand, and a blend factor equal to 0 + reduces its multiplicand to 0. For example, when srcRGB is + GL_SRC_ALPHA, dstRGB is GL_ONE_MINUS_SRC_ALPHA, and + + + A + s + + + is + equal to + + + k + A + + , + the equations reduce to simple replacement: +

+

+ + + + R + d + + = + R + s + + + + + + + G + d + + = + G + s + + + + + + + B + d + + = + B + s + + + + + + + A + d + + = + A + s + + + +

+

+

Notes

+ Incoming (source) alpha is correctly thought of as a material opacity, + ranging from 1.0 + ( + + K + A + + ), + representing complete opacity, + to 0.0 (0), representing complete + transparency. +

+ When more than one color buffer is enabled for drawing, + the GL performs blending separately for each enabled buffer, + using the contents of that buffer for destination color. + (See glDrawBuffer.) +

+ When dual source blending is enabled (i.e., one of the blend factors requiring + the second color input is used), the maximum number of enabled draw buffers + is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may + be lower than GL_MAX_DRAW_BUFFERS. +

Errors

+ GL_INVALID_ENUM is generated if either srcRGB or dstRGB is not an + accepted value. +

+ GL_INVALID_VALUE is generated by glBlendFuncSeparatei if buf is greater + than or equal to the value of GL_MAX_DRAW_BUFFERS. +

Associated Gets

+ glGet with argument GL_BLEND_SRC_RGB +

+ glGet with argument GL_BLEND_SRC_ALPHA +

+ glGet with argument GL_BLEND_DST_RGB +

+ glGet with argument GL_BLEND_DST_ALPHA +

+ glIsEnabled with argument GL_BLEND +

+

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glBlitFramebuffer.xml b/upstream-man-pages/man4/xhtml/glBlitFramebuffer.xml new file mode 100644 index 0000000..8dc76e6 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBlitFramebuffer.xml @@ -0,0 +1,78 @@ + + + +glBlitFramebuffer - OpenGL 4 Reference Pages

Name

glBlitFramebuffer — copy a block of pixels from the read framebuffer to the draw framebuffer

C Specification

void glBlitFramebuffer(GLint  srcX0,
 GLint  srcY0,
 GLint  srcX1,
 GLint  srcY1,
 GLint  dstX0,
 GLint  dstY0,
 GLint  dstX1,
 GLint  dstY1,
 GLbitfield  mask,
 GLenum  filter);

Parameters

srcX0, srcY0, srcX1, srcY1

+ Specify the bounds of the source rectangle within the read buffer of the read framebuffer. +

dstX0, dstY0, dstX1, dstY1

+ Specify the bounds of the destination rectangle within the write buffer of the write framebuffer. +

mask

+ The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are + GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT and GL_STENCIL_BUFFER_BIT. +

filter

+ Specifies the interpolation to be applied if the image is stretched. Must be GL_NEAREST or GL_LINEAR. +

Description

+ glBlitFramebuffer transfers a rectangle of pixel values from one region of the read framebuffer to another region in + the draw framebuffer. mask is the bitwise OR of a number of values indicating which buffers are + to be copied. The values are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. The pixels corresponding to these buffers are copied from the source rectangle bounded by the + locations (srcX0; srcY0) and (srcX1; srcY1) + to the destination rectangle bounded by the locations (dstX0; dstY0) and + (dstX1; dstY1). The lower bounds of the rectangle are inclusive, while the upper + bounds are exclusive. +

+ The actual region taken from the read framebuffer is limited to the intersection of the source buffers being transferred, which may + include the color buffer selected by the read buffer, the depth buffer, and/or the stencil buffer depending on mask. The actual region + written to the draw framebuffer is limited to the intersection of the destination buffers being written, which may include multiple draw + buffers, the depth buffer, and/or the stencil buffer depending on mask. Whether or not the source or destination regions are altered due + to these limits, the scaling and offset applied to pixels being transferred is performed as though no such limits were present. +

+ If the sizes of the source and destination rectangles are not equal, filter specifies the interpolation method that + will be applied to resize the source image , and must be GL_NEAREST or GL_LINEAR. + GL_LINEAR is only a valid interpolation method for the color buffer. If filter is not + GL_NEAREST and mask includes GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT, no data is transferred and a GL_INVALID_OPERATION error is generated. +

+ If filter is GL_LINEAR and the source rectangle would require sampling outside the bounds of + the source framebuffer, values are read as if the GL_CLAMP_TO_EDGE texture wrapping mode were applied. +

+ When the color buffer is transferred, values are taken from the read buffer of the read framebuffer and written to each of the draw + buffers of the draw framebuffer. +

+ If the source and destination rectangles overlap or are the same, and the read and draw buffers are the same, the result of the operation + is undefined. +

Errors

+ GL_INVALID_OPERATION is generated if mask contains any of the GL_DEPTH_BUFFER_BIT + or GL_STENCIL_BUFFER_BIT and filter is not GL_NEAREST. +

+ GL_INVALID_OPERATION is generated if mask contains GL_COLOR_BUFFER_BIT + and any of the following conditions hold: +

  • The read buffer contains fixed-point or floating-point values and any draw buffer contains + neither fixed-point nor floating-point values.

  • The read buffer contains unsigned integer values and any draw buffer does not contain unsigned + integer values.

  • The read buffer contains signed integer values and any draw buffer does not contain signed integer values.

+

+ GL_INVALID_OPERATION is generated if mask contains GL_DEPTH_BUFFER_BIT or + GL_STENCIL_BUFFER_BIT and the source and destination depth and stencil formats do not match. +

+ GL_INVALID_OPERATION is generated if filter is GL_LINEAR and the read buffer + contains integer data. +

+ GL_INVALID_OPERATION is generated if the value of GL_SAMPLES for the read and draw buffers is + not identical. +

+ GL_INVALID_OPERATION is generated if GL_SAMPLE_BUFFERS for both read and draw buffers greater than + zero and the dimensions of the source and destination rectangles is not identical. +

+ GL_INVALID_FRAMEBUFFER_OPERATION is generated if the objects bound to GL_DRAW_FRAMEBUFFER_BINDING + or GL_READ_FRAMEBUFFER_BINDING are not framebuffer complete. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBufferData.xml b/upstream-man-pages/man4/xhtml/glBufferData.xml new file mode 100644 index 0000000..2cfe2ff --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBufferData.xml @@ -0,0 +1,103 @@ + + + +glBufferData - OpenGL 4 Reference Pages

Name

glBufferData — creates and initializes a buffer object's data store

C Specification

void glBufferData(GLenum  target,
 GLsizeiptr  size,
 const GLvoid *  data,
 GLenum  usage);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

size

+ Specifies the size in bytes of the buffer object's new data store. +

data

+ Specifies a pointer to data that will be copied into the data store for initialization, + or NULL if no data is to be copied. +

usage

+ Specifies the expected usage pattern of the data store. The symbolic constant must be + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. +

Description

+ glBufferData creates a new data store for the buffer object currently bound to + target. Any pre-existing data store is deleted. The new data store is created with the + specified size in bytes and usage. If data + is not NULL, the data store is initialized with data from this pointer. In its initial + state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access + is GL_READ_WRITE. +

+ usage is a hint to the GL implementation as to how a buffer object's data store will be + accessed. This enables the GL implementation to make more intelligent decisions that may significantly + impact buffer object performance. It does not, however, constrain the actual usage of the data store. + usage can be broken down into two parts: first, the frequency of access (modification + and usage), and second, the nature of that access. The frequency of access may be one of these: +

STREAM

+ The data store contents will be modified once and used at most a few times. +

STATIC

+ The data store contents will be modified once and used many times. +

DYNAMIC

+ The data store contents will be modified repeatedly and used many times. +

+ The nature of access may be one of these: +

DRAW

+ The data store contents are modified by the application, and used as the source for GL drawing and + image specification commands. +

READ

+ The data store contents are modified by reading data from the GL, and used to return that data + when queried by the application. +

COPY

+ The data store contents are modified by reading data from the GL, and used as the source for GL + drawing and image specification commands. +

Notes

+ If data is NULL, a data store of the specified size is still created, + but its contents remain uninitialized and thus undefined. +

+ Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. +

+ The GL_ATOMIC_COUNTER_BUFFER target is available only if the GL version + is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version + is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. +

+ GL_INVALID_ENUM is generated if usage is not + GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, + GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, + GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. +

+ GL_INVALID_VALUE is generated if size is negative. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store with the specified size. +

Associated Gets

+ glGetBufferSubData +

+ glGetBufferParameter with argument GL_BUFFER_SIZE or GL_BUFFER_USAGE +

Copyright

+ Copyright © 2005 Addison-Wesley. + Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glBufferSubData.xml b/upstream-man-pages/man4/xhtml/glBufferSubData.xml new file mode 100644 index 0000000..354c126 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glBufferSubData.xml @@ -0,0 +1,76 @@ + + + +glBufferSubData - OpenGL 4 Reference Pages

Name

glBufferSubData — updates a subset of a buffer object's data store

C Specification

void glBufferSubData(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  size,
 const GLvoid *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

offset

+ Specifies the offset into the buffer object's data store where data replacement will begin, + measured in bytes. +

size

+ Specifies the size in bytes of the data store region being replaced. +

data

+ Specifies a pointer to the new data that will be copied into the data store. +

Description

+ glBufferSubData redefines some or all of the data store for the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied to the data store from the memory pointed to by + data. An error is thrown if offset and size + together define a range beyond the bounds of the buffer object's data store. +

Notes

+ When replacing the entire data store, consider using glBufferSubData rather + than completely recreating the data store with glBufferData. This avoids the cost of + reallocating the data store. +

+ Consider using multiple buffer objects to avoid stalling the rendering pipeline during data store updates. + If any rendering in the pipeline makes reference to data in the buffer object being updated by + glBufferSubData, especially from the specific region being updated, that rendering must + drain from the pipeline before the data store can be updated. +

+ Clients must align data elements consistent with the requirements of the client + platform, with an additional base-level requirement that an offset within a buffer to + a datum comprising N bytes be a + multiple of N. +

+ The GL_ATOMIC_COUNTER_BUFFER target is available only if the GL version + is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version + is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted buffer targets. +

+ GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer object being updated is mapped. +

Associated Gets

+ glGetBufferSubData +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCheckFramebufferStatus.xml b/upstream-man-pages/man4/xhtml/glCheckFramebufferStatus.xml new file mode 100644 index 0000000..a7d244c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCheckFramebufferStatus.xml @@ -0,0 +1,56 @@ + + + +glCheckFramebufferStatus - OpenGL 4 Reference Pages

Name

glCheckFramebufferStatus — check the completeness status of a framebuffer

C Specification

GLenum glCheckFramebufferStatus(GLenum  target);

Parameters

target

+ Specify the target of the framebuffer completeness check. +

Description

+ glCheckFramebufferStatus queries the completeness status of the framebuffer object currently bound to target. + target must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. +

+ The return value is GL_FRAMEBUFFER_COMPLETE if the framebuffer bound to target is complete. Otherwise, + the return value is determined as follows: +

  • + GL_FRAMEBUFFER_UNDEFINED is returned if target is the default framebuffer, but the default framebuffer does not exist. +

  • + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT is returned if any of the framebuffer attachment points are framebuffer incomplete. +

  • + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT is returned if the framebuffer does not have at least one image attached to it. +

  • + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER is returned if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE + is GL_NONE for any color attachment point(s) named by GL_DRAWBUFFERi. +

  • + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER is returned if GL_READ_BUFFER is not GL_NONE + and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE for the color attachment point named + by GL_READ_BUFFER. +

  • + GL_FRAMEBUFFER_UNSUPPORTED is returned if the combination of internal formats of the attached images violates + an implementation-dependent set of restrictions. +

  • + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is returned if the value of GL_RENDERBUFFER_SAMPLES is not the same + for all attached renderbuffers; if the value of GL_TEXTURE_SAMPLES is the not same for all attached textures; or, if the attached + images are a mix of renderbuffers and textures, the value of GL_RENDERBUFFER_SAMPLES does not match the value of + GL_TEXTURE_SAMPLES. +

  • + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is also returned if the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS is + not the same for all attached textures; or, if the attached images are a mix of renderbuffers and textures, the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS + is not GL_TRUE for all attached textures. +

  • + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS is returned if any framebuffer attachment is layered, and any populated attachment is not layered, + or if all populated color attachments are not from textures of the same target. +

+

+ Additionally, if an error occurs, zero is returned. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glClampColor.xml b/upstream-man-pages/man4/xhtml/glClampColor.xml new file mode 100644 index 0000000..aa19cea --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClampColor.xml @@ -0,0 +1,26 @@ + + + +glClampColor - OpenGL 4 Reference Pages

Name

glClampColor — specify whether data read via glReadPixels should be clamped

C Specification

void glClampColor(GLenum  target,
 GLenum  clamp);

Parameters

target

+ Target for color clamping. target must be GL_CLAMP_READ_COLOR. +

clamp

+ Specifies whether to apply color clamping. clamp must be GL_TRUE or GL_FALSE. +

Description

+ glClampColor controls color clamping that is performed during glReadPixels. + target must be GL_CLAMP_READ_COLOR. If clamp is GL_TRUE, + read color clamping is enabled; if clamp is GL_FALSE, read color clamping is disabled. If + clamp is GL_FIXED_ONLY, read color clamping is enabled only if the selected read buffer has + fixed point components and disabled otherwise. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_CLAMP_READ_COLOR. +

+ GL_INVALID_ENUM is generated if clamp is not GL_TRUE or GL_FALSE. +

Associated Gets

+ glGet with argument GL_CLAMP_READ_COLOR. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glClear.xml b/upstream-man-pages/man4/xhtml/glClear.xml new file mode 100644 index 0000000..7c60e6d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClear.xml @@ -0,0 +1,68 @@ + + + +glClear - OpenGL 4 Reference Pages

Name

glClear — clear buffers to preset values

C Specification

void glClear(GLbitfield mask);

Parameters

mask

+ Bitwise OR of masks that indicate the buffers to be cleared. + The three masks are + GL_COLOR_BUFFER_BIT, + GL_DEPTH_BUFFER_BIT, and + GL_STENCIL_BUFFER_BIT. +

Description

+ glClear sets the bitplane area of the window to values previously selected + by glClearColor, glClearDepth, and + glClearStencil. + Multiple color buffers can be cleared simultaneously by selecting + more than one buffer at a time using glDrawBuffer. +

+ The pixel ownership test, + the scissor test, + dithering, and the buffer writemasks affect the operation of glClear. + The scissor box bounds the cleared region. + Alpha function, + blend function, + logical operation, + stenciling, + texture mapping, + and depth-buffering are ignored by glClear. +

+ glClear takes a single argument that is the bitwise OR of several + values indicating which buffer is to be cleared. +

+ The values are as follows: +

GL_COLOR_BUFFER_BIT

+ Indicates the buffers currently enabled for color + writing. +

GL_DEPTH_BUFFER_BIT

+ Indicates the depth buffer. +

GL_STENCIL_BUFFER_BIT

+ Indicates the stencil buffer. +

+ The value to which each buffer is cleared depends on the setting of the + clear value for that buffer. +

Notes

+ If a buffer is not present, + then a glClear directed at that buffer has no effect. +

Errors

+ GL_INVALID_VALUE is generated if any bit other than the three defined + bits is set in mask. +

Associated Gets

+ glGet with argument GL_DEPTH_CLEAR_VALUE +

+ glGet with argument GL_COLOR_CLEAR_VALUE +

+ glGet with argument GL_STENCIL_CLEAR_VALUE +

See Also

+ glClearColor, + glClearDepth, + glClearStencil, + glColorMask, + glDepthMask, + glDrawBuffer, + glScissor, + glStencilMask +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glClearBuffer.xml b/upstream-man-pages/man4/xhtml/glClearBuffer.xml new file mode 100644 index 0000000..b3b7cc5 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClearBuffer.xml @@ -0,0 +1,67 @@ + + + +glClearBuffer - OpenGL 4 Reference Pages

Name

glClearBuffer — clear individual buffers of the currently bound draw framebuffer

C Specification

void glClearBufferiv(GLenum  buffer,
 GLint  drawBuffer,
 const GLint *  value);
void glClearBufferuiv(GLenum  buffer,
 GLint  drawBuffer,
 const GLuint *  value);
void glClearBufferfv(GLenum  buffer,
 GLint  drawBuffer,
 const GLfloat *  value);
void glClearBufferfi(GLenum  buffer,
 GLint  drawBuffer,
 GLfloat  depth,
 GLint  stencil);

Parameters

buffer

+ Specify the buffer to clear. +

drawBuffer

+ Specify a particular draw buffer to clear. +

value

+ For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. + For depth buffers, a pointer to a single depth value to clear the buffer to. + For stencil buffers, a pointer to a single stencil value to clear the buffer to. +

depth

+ The value to clear a depth render buffer to. +

stencil

+ The value to clear a stencil render buffer to. +

Description

+ glClearBuffer* clears the specified buffer to the specified value(s). If buffer is + GL_COLOR, a particular draw buffer GL_DRAWBUFFERi is specified + by passing i as drawBuffer. In this case, value points to + a four-element vector specifying the R, G, B and A color to clear that draw buffer to. If buffer is + one of GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK, identifying multiple buffers, each selected buffer is cleared to the same value. + Clamping and conversion for fixed-point color buffers are performed in the same fashion as + glClearColor. +

+ If buffer is GL_DEPTH, drawBuffer must be zero, and value + points to a single value to clear the depth buffer to. Only glClearBufferfv should be used to clear + depth buffers. Clamping and conversion for fixed-point depth buffers are performed in the same fashion as + glClearDepth. +

+ If buffer is GL_STENCIL, drawBuffer must be zero, and value + points to a single value to clear the stencil buffer to. Only glClearBufferiv should be used to clear + stencil buffers. Masking and type conversion are performed in the same fashion as + glClearStencil. +

+ glClearBufferfi may be used to clear the depth and stencil buffers. buffer must be + GL_DEPTH_STENCIL and drawBuffer must be zero. depth and + stencil are the depth and stencil values, respectively. +

+ The result of glClearBuffer is undefined if no conversion between the type of value + and the buffer being cleared is defined. However, this is not an error. +

Errors

+ GL_INVALID_ENUM is generated by glClearBufferif, glClearBufferfv + and glClearBufferuiv if buffer is not GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + GL_FRONT_AND_BACK, GL_DEPTH or GL_STENCIL. +

+ GL_INVALID_ENUM is generated by glClearBufferfi if buffer + is not GL_DEPTH_STENCIL. +

+ GL_INVALID_VALUE is generated if buffer is GL_COLOR, + GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, + or GL_FRONT_AND_BACK and drawBuffer is greater than or equal to GL_MAX_DRAW_BUFFERS. +

+ GL_INVALID_VALUE is generated if buffer is GL_DEPTH, + GL_STENCIL or GL_DEPTH_STENCIL and drawBuffer is not zero. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glClearBufferData.xml b/upstream-man-pages/man4/xhtml/glClearBufferData.xml new file mode 100644 index 0000000..a85a6f6 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClearBufferData.xml @@ -0,0 +1,45 @@ + + + +glClearBufferData - OpenGL 4 Reference Pages

Name

glClearBufferData — fill a buffer object's data store with a fixed value

C Specification

void glClearBufferData(GLenum  target,
 GLenum  internalformat,
 GLenum  format,
 GLenum  type,
 const void *  data);

Parameters

target

+ Specify the target of the operation. target must be + one of the global buffer binding targets. +

internalformat

+ The internal format with which the data will be stored in the buffer object. +

size

+ The size, in basic machine units of the range of the data store to fill. +

format

+ The format of the data in memory addressed by data. +

type

+ The type of the data in memory addressed by data. +

data

+ The address of a memory location storing the data to be replicated into the + buffer's data store. +

Description

+ glClearBufferData fills the entirety of a buffer object's + data store with data from client memory. Data, initially supplied in a format + specified by format in data type type is + read from the memory address given by data and converted into + the internal representation given by internalforamt. + This converted data is then replicated throughout the buffer object's + data store. +

+ If data is NULL, then the buffer's data store + is filled with zeros. +

Errors

+ GL_INVALID_ENUM is generated if target not one of the generic buffer binding targets. +

+ GL_INVALID_VALUE is generated if no buffer is bound to target. +

+ GL_INVALID_ENUM is generated if internalformat is not a sized internal format. +

+ GL_INVALID_OPERATION is generated if any part of the buffer's data store is + mapped with glMapBufferRange or glMapBuffer. +

See Also

+ glClearBufferSubData. +

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glClearBufferSubData.xml b/upstream-man-pages/man4/xhtml/glClearBufferSubData.xml new file mode 100644 index 0000000..8e02946 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClearBufferSubData.xml @@ -0,0 +1,56 @@ + + + +glClearBufferSubData - OpenGL 4 Reference Pages

Name

glClearBufferSubData — fill all or part of buffer object's data store with a fixed value

C Specification

void glClearBufferSubData(GLenum  target,
 GLenum  internalformat,
 GLintptr  offset,
 GLsizeiptr  size,
 GLenum  format,
 GLenum  type,
 const void *  data);

Parameters

target

+ Specify the target of the operation. target must be + one of the global buffer binding targets. +

internalformat

+ The internal format with which the data will be stored in the buffer object. +

offset

+ The offset, in basic machine units into the buffer object's data store at which to start filling. +

size

+ The size, in basic machine units of the range of the data store to fill. +

format

+ The format of the data in memory addressed by data. +

type

+ The type of the data in memory addressed by data. +

data

+ The address of a memory location storing the data to be replicated into the + buffer's data store. +

Description

+ glClearBufferSubData fills a specified region of a buffer object's + data store with data from client memory. offset and size + demark the extent of the region within the data store of the buffer object bound to + target to fill with data. Data, initially supplied in a format + specified by format in data type type is + read from the memory address given by data and converted into + the internal representation given by internalforamt. + This converted data is then replicated throughout the specified region of the buffer object's + data store. +

+ If data is NULL, then the subrange of the buffer's data store + is filled with zeros. +

Errors

+ GL_INVALID_ENUM is generated if target not one of the generic buffer binding targets. +

+ GL_INVALID_VALUE is generated if no buffer is bound to target. +

+ GL_INVALID_ENUM is generated if internalformat is not a sized internal format. +

+ GL_INVALID_VALUE is generated if offset or range are not multiples of + the number of basic machine units per-element for the internal format specified by + internalformat. +

+ GL_INVALID_VALUE is generated if offset or size is less than zero, or if + offset + size is greater than the value of GL_BUFFER_SIZE for the buffer bound to target. +

+ GL_INVALID_OPERATION is generated if any part of the specified buffer range is + mapped with glMapBufferRange or glMapBuffer. +

See Also

+ glClearBufferData. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glClearColor.xml b/upstream-man-pages/man4/xhtml/glClearColor.xml new file mode 100644 index 0000000..35ced24 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClearColor.xml @@ -0,0 +1,39 @@ + + + +glClearColor - OpenGL 4 Reference Pages

Name

glClearColor — specify clear values for the color buffers

C Specification

void glClearColor(GLfloat  red,
 GLfloat  green,
 GLfloat  blue,
 GLfloat  alpha);

Parameters

red, green, blue, alpha

+ Specify the red, green, blue, and alpha values used when the + color buffers are cleared. + The initial values are all 0. +

Description

+ glClearColor specifies the red, + green, + blue, + and alpha values used by glClear to clear the color buffers. + Values specified by glClearColor are clamped to the range + + + + 0 + 1 + + . +

Notes

+ The type of the red, + green, blue, + and alpha parameters was changed from + GLclampf to GLfloat. This change is transparent to user code + and is described in detail on the + removedTypes + page. +

Associated Gets

+ glGet with argument GL_COLOR_CLEAR_VALUE +

See Also

+ glClear, + removedTypes +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glClearDepth.xml b/upstream-man-pages/man4/xhtml/glClearDepth.xml new file mode 100644 index 0000000..cb8a86c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClearDepth.xml @@ -0,0 +1,36 @@ + + + +glClearDepth - OpenGL 4 Reference Pages

Name

glClearDepth — specify the clear value for the depth buffer

C Specification

void glClearDepth(GLdouble depth);

void glClearDepthf(GLfloat depth);

Parameters

depth

+ Specifies the depth value used when the depth buffer is cleared. The + initial value is 1. +

Description

+ glClearDepth specifies the depth value used by glClear to clear the depth buffer. + Values specified by glClearDepth are clamped to the range + + + + 0 + 1 + + . +

Notes

+ The type of the depth parameter was + changed from GLclampf to GLfloat for + glClearDepthf and from GLclampd to + GLdouble for glClearDepth. This change + is transparent to user code and is described in detail on + the + removedTypes + page. +

Associated Gets

+ glGet with argument GL_DEPTH_CLEAR_VALUE +

See Also

+ glClear, + removedTypes +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glClearStencil.xml b/upstream-man-pages/man4/xhtml/glClearStencil.xml new file mode 100644 index 0000000..7675535 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClearStencil.xml @@ -0,0 +1,40 @@ + + + +glClearStencil - OpenGL 4 Reference Pages

Name

glClearStencil — specify the clear value for the stencil buffer

C Specification

void glClearStencil(GLint s);

Parameters

s

+ Specifies the index used when the stencil buffer is cleared. + The initial value is 0. +

Description

+ glClearStencil specifies the index used by glClear to clear the stencil buffer. + s is masked with + + + + 2 + m + + - + 1 + + , + where + m + is the number of bits in the stencil buffer. +

Associated Gets

+ glGet with argument GL_STENCIL_CLEAR_VALUE +

+ glGet with argument GL_STENCIL_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glClientWaitSync.xml b/upstream-man-pages/man4/xhtml/glClientWaitSync.xml new file mode 100644 index 0000000..4bcc637 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glClientWaitSync.xml @@ -0,0 +1,42 @@ + + + +glClientWaitSync - OpenGL 4 Reference Pages

Name

glClientWaitSync — block and wait for a sync object to become signaled

C Specification

GLenum glClientWaitSync(GLsync  sync,
 GLbitfield  flags,
 GLuint64  timeout);

Parameters

sync

+ The sync object whose status to wait on. +

flags

+ A bitfield controlling the command flushing behavior. flags may be GL_SYNC_FLUSH_COMMANDS_BIT. +

timeout

+ The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled. +

Description

+ glClientWaitSync causes the client to block and wait for the sync object specified by sync to become signaled. If + sync is signaled when glClientWaitSync is called, glClientWaitSync returns immediately, otherwise + it will block and wait for up to timeout nanoseconds for sync to become signaled. +

+ The return value is one of four status values: +

  • + GL_ALREADY_SIGNALED indicates that sync was signaled at the time that glClientWaitSync + was called. +

  • + GL_TIMEOUT_EXPIRED indicates that at least timeout nanoseconds passed and sync did not + become signaled. +

  • + GL_CONDITION_SATISFIED indicates that sync was signaled before the timeout expired. +

  • + GL_WAIT_FAILED indicates that an error occurred. Additionally, an OpenGL error will be generated. +

+

Notes

+ glClientWaitSync is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_VALUE is generated if sync is not the name of an existing sync object. +

+ GL_INVALID_VALUE is generated if flags contains any unsupported flag. +

See Also

+ glFenceSync, + glIsSync + glWaitSync +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glColorMask.xml b/upstream-man-pages/man4/xhtml/glColorMask.xml new file mode 100644 index 0000000..ec73439 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glColorMask.xml @@ -0,0 +1,38 @@ + + + +glColorMask - OpenGL 4 Reference Pages

Name

glColorMask, glColorMaski — enable and disable writing of frame buffer color components

C Specification

void glColorMask(GLboolean  red,
 GLboolean  green,
 GLboolean  blue,
 GLboolean  alpha);
void glColorMaski(GLuint  buf,
 GLboolean  red,
 GLboolean  green,
 GLboolean  blue,
 GLboolean  alpha);

Parameters

buf

+ For glColorMaski, specifies the index of the + draw buffer whose color mask to set. +

red, green, blue, alpha

+ Specify whether red, green, blue, and alpha are to be written + into the frame buffer. + The initial values are all GL_TRUE, + indicating that the color components are written. +

Description

+ glColorMask and glColorMaski specify whether the individual color components in the frame buffer + can or cannot be written. glColorMaski sets the mask for a specific draw buffer, whereas + glColorMask sets the mask for all draw buffers. + If red is GL_FALSE, + for example, + no change is made to the red component of any pixel in any of the + color buffers, + regardless of the drawing operation attempted. +

+ Changes to individual bits of components cannot be controlled. + Rather, + changes are either enabled or disabled for entire color components. +

Associated Gets

+ glGet with argument GL_COLOR_WRITEMASK +

See Also

+ glClear, + glDepthMask, + glStencilMask +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. + Copyright © 2010-2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glColorMaski.xml b/upstream-man-pages/man4/xhtml/glColorMaski.xml new file mode 100644 index 0000000..5ba754f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glColorMaski.xml @@ -0,0 +1,8 @@ + + + + + +glColorMaski + + diff --git a/upstream-man-pages/man4/xhtml/glCompileShader.xml b/upstream-man-pages/man4/xhtml/glCompileShader.xml new file mode 100644 index 0000000..b5d3334 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompileShader.xml @@ -0,0 +1,32 @@ + + + +glCompileShader - OpenGL 4 Reference Pages

Name

glCompileShader — Compiles a shader object

C Specification

void glCompileShader(GLuint shader);

Parameters

shader

Specifies the shader object to be + compiled.

Description

glCompileShader compiles the source + code strings that have been stored in the shader object + specified by shader.

The compilation status will be stored as part of the + shader object's state. This value will be set to + GL_TRUE if the shader was compiled without + errors and is ready for use, and GL_FALSE + otherwise. It can be queried by calling + glGetShader + with arguments shader and + GL_COMPILE_STATUS.

Compilation of a shader can fail for a number of reasons + as specified by the OpenGL Shading Language Specification. + Whether or not the compilation was successful, information about + the compilation can be obtained from the shader object's + information log by calling + glGetShaderInfoLog.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

Associated Gets

glGetShaderInfoLog + with argument shader

glGetShader + with arguments shader and + GL_COMPILE_STATUS

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCompressedTexImage1D.xml b/upstream-man-pages/man4/xhtml/glCompressedTexImage1D.xml new file mode 100644 index 0000000..1ac499e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompressedTexImage1D.xml @@ -0,0 +1,161 @@ + + + +glCompressedTexImage1D - OpenGL 4 Reference Pages

Name

glCompressedTexImage1D — specify a one-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage1D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image. + All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. +

border

+ This value must be 0. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexImage1D loads a previously defined, and retrieved, compressed + one-dimensional texture image if target is GL_TEXTURE_1D + (see glTexImage1D). +

+ If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. +

+ internalformat must be an extension-specified compressed-texture format. + When a texture is loaded with + glTexImage1D using a generic compressed texture format + (e.g., GL_COMPRESSED_RGB) the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and + format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ If the compressed data are arranged into fixed-size blocks of texels, the pixel + storage modes can be used to select a sub-rectangle from a larger containing rectangle. + These pixel storage modes operate in the same way as they do for glTexImage1D. + In the following description, denote by bs, + bw, + bh, and + bd, + the values of pixel storage modes GL_UNPACK_COMPRESSED_BLOCK_SIZE, + GL_UNPACK_COMPRESSED_BLOCK_WIDTH, GL_UNPACK_COMPRESSED_BLOCK_HEIGHT, + and GL_UNPACK_COMPRESSED_BLOCK_DEPTH, respectively. + bs is + the compressed block size in bytes; bw, + bh, + and bd are the compressed block width, height, and depth in pixels. +

+ By default the pixel storage modes GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_IMAGE_HEIGHT and GL_UNPACK_SKIP_IMAGES + are ignored for compressed images. To enable GL_UNPACK_SKIP_PIXELS + and GL_UNPACK_ROW_LENGTH, bs + and bw must both be non-zero. + To also enable GL_UNPACK_SKIP_ROWS and GL_UNPACK_IMAGE_HEIGHT, + bh must be non-zero. + To also enable GL_UNPACK_SKIP_IMAGES, bd + must be non-zero. All parameters must be consistent with the compressed format to produce the desired results. +

+ When selecting a sub-rectangle from a compressed image: +

  • the value of GL_UNPACK_SKIP_PIXELS must be a multiple of bw;

+

+ imageSize must be equal to: +

+ + + + b + s + + × + + + width + + b + w + + + + + +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not + a supported specific compressed internal formats, or is one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_NUM_COMPRESSED_TEXTURE_FORMATS +

+ glGet with argument GL_COMPRESSED_TEXTURE_FORMATS +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. © 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCompressedTexImage2D.xml b/upstream-man-pages/man4/xhtml/glCompressedTexImage2D.xml new file mode 100644 index 0000000..eb87bca --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompressedTexImage2D.xml @@ -0,0 +1,212 @@ + + + +glCompressedTexImage2D - OpenGL 4 Reference Pages

Name

glCompressedTexImage2D — specify a two-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage2D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image. + All implementations support 2D texture and cube map texture images that are at least 16384 texels wide. +

height

+ Specifies the height of the texture image. + All implementations support 2D texture and cube map texture images that are at least 16384 texels high. +

border

+ This value must be 0. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional + texture image if target is GL_TEXTURE_2D, or one of the + cube map faces such as GL_TEXTURE_CUBE_MAP_POSITIVE_X. + (see glTexImage2D). +

+ If target is GL_TEXTURE_1D_ARRAY, data + is treated as an array of compressed 1D textures. +

+ If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY + or GL_PROXY_CUBE_MAP, no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, + use an image array level greater than or equal to 1. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage2D, query the compressed texture image's + size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ If the compressed data are arranged into fixed-size blocks of texels, the pixel + storage modes can be used to select a sub-rectangle from a larger containing rectangle. + These pixel storage modes operate in the same way as they do for glTexImage2D. + In the following description, denote by bs, + bw, + bh, and + bd, + the values of pixel storage modes GL_UNPACK_COMPRESSED_BLOCK_SIZE, + GL_UNPACK_COMPRESSED_BLOCK_WIDTH, GL_UNPACK_COMPRESSED_BLOCK_HEIGHT, + and GL_UNPACK_COMPRESSED_BLOCK_DEPTH, respectively. + bs is + the compressed block size in bytes; bw, + bh, + and bd are the compressed block width, height, and depth in pixels. +

+ By default the pixel storage modes GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_IMAGE_HEIGHT and GL_UNPACK_SKIP_IMAGES + are ignored for compressed images. To enable GL_UNPACK_SKIP_PIXELS + and GL_UNPACK_ROW_LENGTH, bs + and bw must both be non-zero. + To also enable GL_UNPACK_SKIP_ROWS and GL_UNPACK_IMAGE_HEIGHT, + bh must be non-zero. + To also enable GL_UNPACK_SKIP_IMAGES, bd + must be non-zero. All parameters must be consistent with the compressed format to produce the desired results. +

+ When selecting a sub-rectangle from a compressed image: +

  • the value of GL_UNPACK_SKIP_PIXELS must be a multiple of bw;
  • the value of GL_UNPACK_SKIP_ROWS must be a multiple of bw.

+

+ imageSize must be equal to: +

+ + + + b + s + + × + + + width + + b + w + + + + × + + + height + + b + h + + + + + +

Notes

+ The specific compressed internal formats GL_COMPRESSED_RGB8_ETC2, + GL_COMPRESSED_SRGB8_ETC2, + GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_RGBA8_ETC2_EAC, + GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, + GL_COMPRESSED_R11_EAC, + GL_COMPRESSED_SIGNED_R11_EAC, + GL_COMPRESSED_RG11_EAC, and + GL_COMPRESSED_SIGNED_RG11_EAC are available only if the GL version + is 4.3 or higher. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not one of the specific + compressed internal formats: + GL_COMPRESSED_RED_RGTC1, + GL_COMPRESSED_SIGNED_RED_RGTC1, + GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2. + GL_COMPRESSED_RGBA_BPTC_UNORM, + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT, + GL_COMPRESSED_RGB8_ETC2, + GL_COMPRESSED_SRGB8_ETC2, + GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_RGBA8_ETC2_EAC, + GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, + GL_COMPRESSED_R11_EAC, + GL_COMPRESSED_SIGNED_R11_EAC, + GL_COMPRESSED_RG11_EAC, or + GL_COMPRESSED_SIGNED_RG11_EAC. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. © 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCompressedTexImage3D.xml b/upstream-man-pages/man4/xhtml/glCompressedTexImage3D.xml new file mode 100644 index 0000000..b176ec4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompressedTexImage3D.xml @@ -0,0 +1,191 @@ + + + +glCompressedTexImage3D - OpenGL 4 Reference Pages

Name

glCompressedTexImage3D — specify a three-dimensional texture image in a compressed format

C Specification

void glCompressedTexImage3D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLint  border,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the format of the compressed image data stored at address data. +

width

+ Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels wide. +

height

+ Specifies the height of the texture image. + All implementations support 3D texture images that are at least 16 texels + high. +

depth

+ Specifies the depth of the texture image. + All implementations support 3D texture images that are at least 16 texels + deep. +

border

+ This value must be 0. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional + texture image if target is GL_TEXTURE_3D (see glTexImage3D). +

+ If target is GL_TEXTURE_2D_ARRAY, data is + treated as an array of compressed 2D textures. +

+ If target is GL_PROXY_TEXTURE_3D or GL_PROXY_TEXTURE_2D_ARRAY, + no data is read from data, but + all of the texture image state is recalculated, checked for consistency, + and checked against the implementation's capabilities. If the + implementation cannot handle a texture of the requested texture size, it + sets all of the image state to 0, but does not generate an error (see + glGetError). To query for an entire mipmap array, use an image array level + greater than or equal to 1. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + When a texture is loaded with glTexImage2D using a generic compressed + texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of + its extensions supporting compressed textures. In order to load the + compressed texture image using glCompressedTexImage3D, query the compressed texture image's + size and format using glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ If the compressed data are arranged into fixed-size blocks of texels, the pixel + storage modes can be used to select a sub-rectangle from a larger containing rectangle. + These pixel storage modes operate in the same way as they do for glTexImage1D. + In the following description, denote by bs, + bw, + bh, and + bd, + the values of pixel storage modes GL_UNPACK_COMPRESSED_BLOCK_SIZE, + GL_UNPACK_COMPRESSED_BLOCK_WIDTH, GL_UNPACK_COMPRESSED_BLOCK_HEIGHT, + and GL_UNPACK_COMPRESSED_BLOCK_DEPTH, respectively. + bs is + the compressed block size in bytes; bw, + bh, + and bd are the compressed block width, height, and depth in pixels. +

+ By default the pixel storage modes GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_IMAGE_HEIGHT and GL_UNPACK_SKIP_IMAGES + are ignored for compressed images. To enable GL_UNPACK_SKIP_PIXELS + and GL_UNPACK_ROW_LENGTH, bs + and bw must both be non-zero. + To also enable GL_UNPACK_SKIP_ROWS and GL_UNPACK_IMAGE_HEIGHT, + bh must be non-zero. + To also enable GL_UNPACK_SKIP_IMAGES, bd + must be non-zero. All parameters must be consistent with the compressed format to produce the desired results. +

+ When selecting a sub-rectangle from a compressed image: +

  • the value of GL_UNPACK_SKIP_PIXELS must be a multiple of bw;
  • the value of GL_UNPACK_SKIP_ROWS must be a multiple of bw;
  • the value of GL_UNPACK_SKIP_IMAGES must be a multiple of bw.

+

+ imageSize must be equal to: +

+ + + + b + s + + × + + + width + + b + w + + + + × + + + height + + b + h + + + + × + + + depth + + b + d + + + + + +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image data. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if data is not encoded in a manner consistent with the extension specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. © 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCompressedTexSubImage1D.xml b/upstream-man-pages/man4/xhtml/glCompressedTexSubImage1D.xml new file mode 100644 index 0000000..ed1b9fc --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompressedTexSubImage1D.xml @@ -0,0 +1,114 @@ + + + +glCompressedTexSubImage1D - OpenGL 4 Reference Pages

Name

glCompressedTexSubImage1D — specify a one-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLsizei  width,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage1D), and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is not one of the generic + compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCompressedTexSubImage2D.xml b/upstream-man-pages/man4/xhtml/glCompressedTexSubImage2D.xml new file mode 100644 index 0000000..ab00290 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompressedTexSubImage2D.xml @@ -0,0 +1,135 @@ + + + +glCompressedTexSubImage2D - OpenGL 4 Reference Pages

Name

glCompressedTexSubImage2D — specify a two-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels + outside the range of the texture array as it was originally specified. It + is not an error to specify a subtexture with width of 0, but such a + specification has no effect. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage2D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCompressedTexSubImage3D.xml b/upstream-man-pages/man4/xhtml/glCompressedTexSubImage3D.xml new file mode 100644 index 0000000..93a4801 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCompressedTexSubImage3D.xml @@ -0,0 +1,141 @@ + + + +glCompressedTexSubImage3D - OpenGL 4 Reference Pages

Name

glCompressedTexSubImage3D — specify a three-dimensional texture subimage in a compressed format

C Specification

void glCompressedTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLsizei  imageSize,
 const GLvoid *  data);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

depth

+ Specifies the depth of the texture subimage. +

format

+ Specifies the format of the compressed image data stored at address data. +

imageSize

+ Specifies the number of unsigned bytes of image data starting at the + address specified by data. +

data

+ Specifies a pointer to the compressed image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ glCompressedTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + texture image. The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + and the y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + and the z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. This region may not include + any texels outside the range of the texture array as it was originally + specified. It is not an error to specify a subtexture with width of 0, + but such a specification has no effect. +

+ internalformat must be a known compressed image format (such as GL_RGTC) + or an extension-specified compressed-texture format. + The format of the compressed texture + image is selected by the GL implementation that compressed it (see + glTexImage3D) and should be queried at the time the texture was + compressed with glGetTexLevelParameter. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Errors

+ GL_INVALID_ENUM is generated if internalformat is one of the generic compressed internal formats: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, or + GL_COMPRESSED_SRGB_ALPHA. +

+ GL_INVALID_VALUE is generated if imageSize is not consistent with + the format, dimensions, and contents of the specified compressed image + data. +

+ GL_INVALID_OPERATION is generated if parameter combinations are not + supported by the specific compressed internal format as specified in the + specific texture compression extension. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ Undefined results, including abnormal program termination, are generated if + data is not encoded in a manner consistent with the extension + specification defining the internal compression format. +

Associated Gets

+ glGetCompressedTexImage +

+ glGet with argument GL_TEXTURE_COMPRESSED +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

+ glGetTexLevelParameter with arguments GL_TEXTURE_INTERNAL_FORMAT + and GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyBufferSubData.xml b/upstream-man-pages/man4/xhtml/glCopyBufferSubData.xml new file mode 100644 index 0000000..c1688be --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyBufferSubData.xml @@ -0,0 +1,61 @@ + + + +glCopyBufferSubData - OpenGL 4 Reference Pages

Name

glCopyBufferSubData — copy part of the data store of a buffer object to the data store of another buffer object

C Specification

void glCopyBufferSubData(GLenum  readtarget,
 GLenum  writetarget,
 GLintptr  readoffset,
 GLintptr  writeoffset,
 GLsizeiptr  size);

Parameters

readtarget

+ Specifies the target from whose data store data should be read. +

writetarget

+ Specifies the target to whose data store data should be written. +

readoffset

+ Specifies the offset, in basic machine units, within the data store of readtarget from which data should be read. +

writeoffset

+ Specifies the offset, in basic machine units, within the data store of writetarget to which data should be written. +

size

+ Specifies the size, in basic machine units, of the data to be copied from readtarget to writetarget. +

Description

+ glCopyBufferSubData copies part of the data store attached to readtarget to the + data store attached to writetarget. The number of basic machine units indicated by size + is copied from the source, at offset readoffset to the destination at writeoffset, + also in basic machine units. +

+ readtarget and writetarget must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or GL_UNIFORM_BUFFER. Any of these targets may be used, + although the targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER are provided + specifically to allow copies between buffers without disturbing other GL state. +

+ readoffset, writeoffset and size must all be greater than or equal to + zero. Furthermore, readoffset + size must not exceeed the size of the buffer + object bound to readtarget, and readoffset + size must not exceeed the + size of the buffer bound to writetarget. If the same buffer object is bound to both readtarget + and writetarget, then the ranges specified by readoffset, writeoffset + and size must not overlap. +

Notes

+ glCopyBufferSubData is available only if the GL version is 3.1 or greater. +

Errors

+ GL_INVALID_VALUE is generated if any of readoffset, writeoffset + or size is negative, if readoffset + size exceeds the + size of the buffer object bound to readtarget or if writeoffset + size + exceeds the size of the buffer object bound to writetarget. +

+ GL_INVALID_VALUE is generated if the same buffer object is bound to both readtarget + and writetarget and the ranges [readoffset, readoffset + + size) and [writeoffset, writeoffset + size) + overlap. +

+ GL_INVALID_OPERATION is generated if zero is bound to readtarget or writetarget. +

+ GL_INVALID_OPERATION is generated if the buffer object bound to either readtarget or writetarget + is mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyImageSubData.xml b/upstream-man-pages/man4/xhtml/glCopyImageSubData.xml new file mode 100644 index 0000000..4df3951 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyImageSubData.xml @@ -0,0 +1,170 @@ + + + +glCopyImageSubData - OpenGL 4 Reference Pages

Name

glCopyImageSubData — perform a raw data copy between two images

C Specification

void glCopyImageSubData(GLuint  srcName,
 GLenum  srcTarget,
 GLint  srcLevel,
 GLint  srcX,
 GLint  srcY,
 GLint  srcZ,
 GLuint  dstName,
 GLenum  dstTarget,
 GLint  dstLevel,
 GLint  dstX,
 GLint  dstY,
 GLint  dstZ,
 GLsizei  srcWidth,
 GLsizei  srcHeight,
 GLsizei  srcDepth);

Parameters

srcName

+ The name of a texture or renderbuffer object from which to copy. +

srcTarget

+ The target representing the namespace of the source name srcName. +

srcLevel

+ The mipmap level to read from the source. +

srcX

+ The X coordinate of the left edge of the souce region to copy. +

srcY

+ The Y coordinate of the top edge of the souce region to copy. +

srcZ

+ The Z coordinate of the near edge of the souce region to copy. +

dstName

+ The name of a texture or renderbuffer object to which to copy. +

dstTarget

+ The target representing the namespace of the destination name dstName. +

dstX

+ The X coordinate of the left edge of the destination region. +

dstY

+ The Y coordinate of the top edge of the destination region. +

dstZ

+ The Z coordinate of the near edge of the destination region. +

srcWidth

+ The width of the region to be copied. +

srcHeight

+ The height of the region to be copied. +

srcDepth

+ The depth of the region to be copied. +

Description

+ glCopyImageSubData may be used to copy data from + one image (i.e. texture or renderbuffer) to another. glCopyImageSubData + does not perform general-purpose conversions + such as scaling, resizing, blending, color-space, or format + conversions. It should be considered to operate in a manner + similar to a CPU memcpy. CopyImageSubData can copy between + images with different internal formats, provided + the formats are compatible. +

+ glCopyImageSubData also allows copying between certain + types of compressed and uncompressed internal formats. This copy does not perform on-the-fly compression + or decompression. When copying from an uncompressed internal format + to a compressed internal format, each texel of uncompressed data + becomes a single block of compressed data. When copying from a + compressed internal format to an uncompressed internal format, + a block of compressed data becomes a single texel of uncompressed + data. The texel size of the uncompressed format must be the same + size the block size of the compressed formats. Thus it is permitted + to copy between a 128-bit uncompressed format and a compressed + format which uses 8-bit 4x4 blocks, or between a 64-bit uncompressed + format and a compressed format which uses 4-bit 4x4 blocks. +

+ The source object is identified by srcName and + srcTarget and the destination object is identified + by dstName and dstTarget. + The interpretation of the name depends on the value + of the corresponding target parameter. + If target is + GL_RENDERBUFFER, the name is interpreted as the name of a + renderbuffer object. If the target parameter is a texture target, + the name is interpreted as a texture object. All non-proxy + texture targets are accepted, with the exception of GL_TEXTURE_BUFFER + and the cubemap face selectors. +

+ srcLevel and dstLevel identify the source and destination + level of detail. For textures, this must be a valid level of + detail in the texture object. For renderbuffers, this value must + be zero. +

+ srcX, srcY, and srcZ specify the lower left texel + coordinates of a srcWidth-wide by srcHeight-high by + srcDepth-deep rectangular subregion of the source texel array. + Similarly, dstX, dstY and dstZ specify the coordinates of a subregion of the + destination texel array. The source and destination subregions + must be contained entirely within the specified level of the + corresponding image objects. +

+ The dimensions are always specified in texels, even for compressed + texture formats. However, it should be noted that if only one of the + source and destination textures is compressed then the number of + texels touched in the compressed image will be a factor of the + block size larger than in the uncompressed image. +

+ Slices of a GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAY + GL_TEXTURE_3D and faces of GL_TEXTURE_CUBE_MAP are all compatible provided + they share a compatible internal format, and multiple slices or faces + may be copied between these objects with a single call by specifying the + starting slice with srcZ and dstZ, and the number of slices to + be copied with srcDepth. Cubemap textures always have six faces + which are selected by a zero-based face index. +

+ For the purposes of CopyImageSubData, two internal formats + are considered compatible if any of the following conditions are + met: + * the formats are the same, + * the formats are considered compatible according to the + compatibility rules used for texture views as defined in + section 3.9.X. In particular, if both internal formats are listed + in the same entry of Table 3.X.2, they are considered compatible, or + * one format is compressed and the other is uncompressed and + Table 4.X.1 lists the two formats in the same row. + If the formats are not compatible INVALID_OPERATION is generated. +

Table 1. Sized Internal Formats

+ Texel / Block Size + + Uncompressed Internal Format + + Compressed Internal Format(s) +
64-bitGL_RGBA32UI, GL_RGBA32I, GL_RGBA32FGL_COMPRESSED_RGBA_S3TC_DXT3_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, + GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, + GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2, + GL_COMPRESSED_RGBA_BPTC_UNORM, + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT
128-bitGL_RGBA16UI, + GL_RGBA16I, + GL_RGBA16F, + GL_RG32F, + GL_RG32UI, + GL_RG32I, + GL_RGBA16, + GL_RGBA16_SNORMGL_COMPRESSED_RGB_S3TC_DXT1_EXT, + COMPRESSED_SRGB_S3TC_DXT1_EXT, + COMPRESSED_RGBA_S3TC_DXT1_EXT, + COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, + COMPRESSED_RED_RGTC1, + COMPRESSED_SIGNED_RED_RGTC1

Errors

+ GL_INVALID_OPERATION is generated if the texel size of + the uncompressed image is not equal to the block size of the + compressed image. +

+ GL_INVALID_ENUM is generated if either target parameter is not GL_RENDERBUFFER, + a valid non-proxy texture target other than GL_TEXTURE_BUFFER, or is one + of the cubemap face selectors. +

+ GL_INVALID_ENUM is generated if target does not match the type of the object. +

+ GL_INVALID_OPERATION is generated if either object is a texture and the texture is + not complete. +

+ GL_INVALID_OPERATION is generated if the source and + destination internal formats are not compatible, or if the number of samples do not match. +

+ GL_INVALID_VALUE is generated if either name does not correspond to a + valid renderbuffer or texture object according to the corresponding + target parameter. +

+ GL_INVALID_VALUE is generated if the specified level of either the source or destination is not + a valid level for the corresponding image. +

+ GL_INVALID_VALUE is generated if the + dimensions of the either subregion exceeds the boundaries of the + corresponding image object, or if the image format is compressed + and the dimensions of the subregion fail to meet the alignment + constraints of the format. +

Associated Gets

+ glGet with argument GL_MAX_COMPUTE_WORK_GROUP_COUNT +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyTexImage1D.xml b/upstream-man-pages/man4/xhtml/glCopyTexImage1D.xml new file mode 100644 index 0000000..3ef2ab3 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyTexImage1D.xml @@ -0,0 +1,204 @@ + + + +glCopyTexImage1D - OpenGL 4 Reference Pages

Name

glCopyTexImage1D — copy pixels into a 1D texture image

C Specification

void glCopyTexImage1D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLint  border);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

x, y

+ Specify the window coordinates of the left corner + of the row of pixels to be copied. +

width

+ Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. + The height of the texture image is 1. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

Description

+ glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. +

+ The screen-aligned pixel row with left corner at + + + + x + y + + + and with a length of + + + + width + + + + 2 + ⁡ + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. +

+ The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ Pixel ordering is such that lower + x + screen coordinates correspond to + lower texture coordinates. +

+ If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ glCopyTexImage1D defines a one-dimensional texture image with pixels from the current + GL_READ_BUFFER. +

+ When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. +

Notes

+ 1, 2, 3, and 4 are not accepted values for internalformat. +

+ An image with 0 width indicates a NULL texture. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the allowable values. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁢ + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalformat is not an allowable value. +

+ GL_INVALID_VALUE is generated if width is less than 0 or greater than + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer value of n. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyTexImage2D.xml b/upstream-man-pages/man4/xhtml/glCopyTexImage2D.xml new file mode 100644 index 0000000..32476be --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyTexImage2D.xml @@ -0,0 +1,251 @@ + + + +glCopyTexImage2D - OpenGL 4 Reference Pages

Name

glCopyTexImage2D — copy pixels into a 2D texture image

C Specification

void glCopyTexImage2D(GLenum  target,
 GLint  level,
 GLenum  internalformat,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height,
 GLint  border);

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalformat

+ Specifies the internal format of the texture. + Must be one of the following symbolic constants: + GL_COMPRESSED_RED, + GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA. + GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA. + GL_DEPTH_COMPONENT, + GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, + GL_DEPTH_COMPONENT32, + GL_RED, + GL_RG, + GL_RGB, + GL_R3_G3_B2, + GL_RGB4, + GL_RGB5, + GL_RGB8, + GL_RGB10, + GL_RGB12, + GL_RGB16, + GL_RGBA, + GL_RGBA2, + GL_RGBA4, + GL_RGB5_A1, + GL_RGBA8, + GL_RGB10_A2, + GL_RGBA12, + GL_RGBA16, + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture image. + Must be 0 or + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer + n. +

height

+ Specifies the height of the texture image. + Must be 0 or + + + + 2 + m + + + + + 2 + ⁡ + + border + + + + + for some integer + m. +

border

+ Specifies the width of the border. + Must be either 0 or 1. +

Description

+ glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image + with pixels from the current + GL_READ_BUFFER. +

+ The screen-aligned pixel rectangle with lower left corner at (x, + y) and with a width of + + + + width + + + + 2 + ⁡ + + border + + + + + and a height of + + + + height + + + + 2 + ⁡ + + border + + + + + defines the texture array + at the mipmap level specified by level. + internalformat specifies the internal format of the texture array. +

+ The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ Pixel ordering is such that lower + x + and + y + screen coordinates correspond to + lower + s + and + t + texture coordinates. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ When internalformat is one of the sRGB types, the GL does not automatically convert the source pixels to the sRGB color space. In this case, the glPixelMap function can be used to accomplish the conversion. +

Notes

+ 1, 2, 3, and 4 are not accepted values for internalformat. +

+ An image with height or width of 0 indicates a NULL texture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁢ + max + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than + GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or depth cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some integer + k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_VALUE is generated if internalformat is not an + accepted format. +

+ GL_INVALID_OPERATION is generated if internalformat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth + buffer. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyTexSubImage1D.xml b/upstream-man-pages/man4/xhtml/glCopyTexSubImage1D.xml new file mode 100644 index 0000000..942fb81 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyTexSubImage1D.xml @@ -0,0 +1,157 @@ + + + +glCopyTexSubImage1D - OpenGL 4 Reference Pages

Name

glCopyTexSubImage1D — copy a one-dimensional texture subimage

C Specification

void glCopyTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  x,
 GLint  y,
 GLsizei  width);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies the texel offset within the texture array. +

x, y

+ Specify the window coordinates of the left corner + of the row of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

Description

+ glCopyTexSubImage1D replaces a portion of a one-dimensional + texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage1D). +

+ The screen-aligned pixel row with left corner at (x,\ y), and with + length width replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive. The destination in the texture array may not + include any texels outside the texture array as it was + originally specified. +

+ The pixels in the row are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ It is not an error to specify a subtexture with zero width, but + such a specification has no effect. + If any of the pixels within the specified row of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ The glPixelStore mode affects texture images. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_1D. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D or glCopyTexImage1D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. +

+

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyTexSubImage2D.xml b/upstream-man-pages/man4/xhtml/glCopyTexSubImage2D.xml new file mode 100644 index 0000000..09015be --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyTexSubImage2D.xml @@ -0,0 +1,238 @@ + + + +glCopyTexSubImage2D - OpenGL 4 Reference Pages

Name

glCopyTexSubImage2D — copy a two-dimensional texture subimage

C Specification

void glCopyTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_1D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

Description

+ glCopyTexSubImage2D replaces a rectangular portion of a two-dimensional texture image, + cube-map texture image or a linear portion of a number of slices of a one-dimensional array texture + with pixels from the current GL_READ_BUFFER + (rather than from main memory, as is the case for glTexSubImage2D). +

+ The screen-aligned pixel rectangle with lower left corner at + + + + x + y + + + and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at the mipmap level specified by level. +

+ The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ When target is GL_TEXTURE_1D_ARRAY + then the y coordinate and height are treated as the start slice and number + of slices to modify. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + height, or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glPixelStore modes affect texture images. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_1D_ARRAY. +

+ GL_INVALID_OPERATION is generated if the texture array has not been + defined by a previous glTexImage2D or glCopyTexImage2D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + and + h + include twice the border width. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2012 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCopyTexSubImage3D.xml b/upstream-man-pages/man4/xhtml/glCopyTexSubImage3D.xml new file mode 100644 index 0000000..43ce622 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCopyTexSubImage3D.xml @@ -0,0 +1,249 @@ + + + +glCopyTexSubImage3D - OpenGL 4 Reference Pages

Name

glCopyTexSubImage3D — copy a three-dimensional texture subimage

C Specification

void glCopyTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

zoffset

+ Specifies a texel offset in the z direction within the texture array. +

x, y

+ Specify the window coordinates of the lower left corner + of the rectangular region of pixels to be copied. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

Description

+ glCopyTexSubImage3D replaces a rectangular portion of a three-dimensional + or two-dimensional array texture image with pixels from the current GL_READ_BUFFER (rather + than from main memory, as is the case for glTexSubImage3D). +

+ The screen-aligned pixel rectangle with lower left corner at + (x, y) and with + width width and height height replaces the portion of the + texture array with x indices xoffset through + + + + xoffset + + + width + - + 1 + + , + inclusive, and y indices yoffset through + + + + yoffset + + + height + - + 1 + + , + inclusive, at z index zoffset and at the mipmap level specified by level. +

+ The pixels in the rectangle are processed exactly as if + glReadPixels had been called, but the process stops just before + final conversion. + At this point, all pixel component values are clamped to the range + + + + 0 + 1 + + + and then converted to the texture's internal format for storage in the texel + array. +

+ The destination rectangle in the texture array may not include any texels + outside the texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If any of the pixels within the specified rectangle of the current + GL_READ_BUFFER are outside the read window associated with the current + rendering context, then the values obtained for those pixels are undefined. +

+ No change is made to the internalformat, width, + height, depth, or border parameters of the specified texture + array or to texel values outside the specified subregion. +

Notes

+ glPixelStore modes affect texture images. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D operation. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if + + + + level + > + + log + 2 + + ⁡ + + max + + + + , + where + max + is the returned value of GL_MAX_3D_TEXTURE_SIZE if target + is GL_TEXTURE_3D or the returned value of GL_MAX_ARRAY_TEXTURE_LAYERS + if target is GL_TEXTURE_2D_ARRAY. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + 1 + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH, + and + b + is the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. +

Associated Gets

+ glGetTexImage +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glCreateProgram.xml b/upstream-man-pages/man4/xhtml/glCreateProgram.xml new file mode 100644 index 0000000..5cf0dd7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCreateProgram.xml @@ -0,0 +1,60 @@ + + + +glCreateProgram - OpenGL 4 Reference Pages

Name

glCreateProgram — Creates a program object

C Specification

GLuint glCreateProgram(void);

Description

glCreateProgram creates an empty + program object and returns a non-zero value by which it can be + referenced. A program object is an object to which shader + objects can be attached. This provides a mechanism to specify + the shader objects that will be linked to create a program. It + also provides a means for checking the compatibility of the + shaders that will be used to create a program (for instance, + checking the compatibility between a vertex shader and a + fragment shader). When no longer needed as part of a program + object, shader objects can be detached.

One or more executables are created in a program object by + successfully attaching shader objects to it with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. + These executables are made part of current state when + glUseProgram + is called. Program objects can be deleted by calling + glDeleteProgram. + The memory associated with the program object will be deleted + when it is no longer part of current rendering state for any + context.

Notes

Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

This function returns 0 if an error occurs creating the program object.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with a valid program object and the index of an active attribute + variable

glGetActiveUniform + with a valid program object and the index of an active uniform + variable

glGetAttachedShaders + with a valid program object

glGetAttribLocation + with a valid program object and the name of an attribute + variable

glGetProgram + with a valid program object and the parameter to be queried

glGetProgramInfoLog + with a valid program object

glGetUniform + with a valid program object and the location of a uniform + variable

glGetUniformLocation + with a valid program object and the name of a uniform + variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCreateShader.xml b/upstream-man-pages/man4/xhtml/glCreateShader.xml new file mode 100644 index 0000000..f5d2c2b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCreateShader.xml @@ -0,0 +1,52 @@ + + + +glCreateShader - OpenGL 4 Reference Pages

Name

glCreateShader — Creates a shader object

C Specification

GLuint glCreateShader(GLenum shaderType);

Parameters

shaderType

Specifies the type of shader to be created. + Must be one of GL_VERTEX_SHADER, + GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, + GL_GEOMETRY_SHADER, + or GL_FRAGMENT_SHADER.

Description

glCreateShader creates an empty + shader object and returns a non-zero value by which it can be + referenced. A shader object is used to maintain the source code + strings that define a shader. shaderType + indicates the type of shader to be created. Five types of shader + are supported. A shader of type + GL_VERTEX_SHADER is a shader that is + intended to run on the programmable vertex processor. + A shader of type GL_TESS_CONTROL_SHADER is a shader that + is intended to run on the programmable tessellation processor in the control stage. + A shader of type GL_TESS_EVALUATION_SHADER is a shader that + is intended to run on the programmable tessellation processor in the evaluation stage. + A shader of type + GL_GEOMETRY_SHADER is a shader that is intended to + run on the programmable geometry processor. A shader of + type GL_FRAGMENT_SHADER is a shader that is + intended to run on the programmable fragment processor.

When created, a shader object's + GL_SHADER_TYPE parameter is set to either + GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER + or GL_FRAGMENT_SHADER, depending on the value + of shaderType.

Notes

Like buffer and texture objects, the name space for + shader objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

This function returns 0 if an error occurs creating the + shader object.

GL_INVALID_ENUM is generated if + shaderType is not an accepted value.

Associated Gets

glGetShader + with a valid shader object and the parameter to be queried

glGetShaderInfoLog + with a valid shader object

glGetShaderSource + with a valid shader object

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCreateShaderProgram.xml b/upstream-man-pages/man4/xhtml/glCreateShaderProgram.xml new file mode 100644 index 0000000..3c513ec --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCreateShaderProgram.xml @@ -0,0 +1,60 @@ + + + +glCreateShaderProgram - OpenGL 4 Reference Pages

Name

glCreateShaderProgramv — create a stand-alone program from an array of null-terminated source code strings

C Specification

GLuint glCreateShaderProgramv(GLenum  type,
 GLsizei  count,
 const char ** strings);

Parameters

type

+ Specifies the type of shader to create. +

count

+ Specifies the number of source code strings in the array strings. +

strings

+ Specifies the address of an array of pointers to source code strings from which to create the program object. +

Description

+ glCreateShaderProgram creates a program object containing compiled and linked + shaders for a single stage specified by type. strings + refers to an array of count strings from which to create the shader executables. +

+ glCreateShaderProgram is equivalent (assuming no errors are generated) to: +

    const GLuint shader = glCreateShader(type);
+    if (shader) {
+        glShaderSource(shader, count, strings, NULL);
+        glCompileShader(shader);
+        const GLuint program = glCreateProgram();
+        if (program) {
+            GLint compiled = GL_FALSE;
+            glGetShaderiv(shader, GL_COMPILE_STATUS, &compiled);
+            glProgramParameteri(program, GL_PROGRAM_SEPARABLE, GL_TRUE);
+            if (compiled) {
+                glAttachShader(program, shader);
+                glLinkProgram(program);
+                glDetachShader(program, shader);
+            }
+            /* append-shader-info-log-to-program-info-log */
+        }
+        glDeleteShader(shader);
+        return program;
+    } else {
+        return 0;
+    }

+ The program object created by glCreateShaderProgram has its GL_PROGRAM_SEPARABLE + status set to GL_TRUE. +

Errors

+ GL_INVALID_ENUM is generated if if type is not + an accepted shader type. +

+ GL_INVALID_VALUE is generated if count is + negative. +

+ Other errors are generated if the supplied shader code fails to compile + and link, as described for the commands in the pseudocode sequence above, + but all such errors are generated without any side effects of executing those + commands. +

Copyright

+ Copyright © 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glCullFace.xml b/upstream-man-pages/man4/xhtml/glCullFace.xml new file mode 100644 index 0000000..033cbd7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glCullFace.xml @@ -0,0 +1,41 @@ + + + +glCullFace - OpenGL 4 Reference Pages

Name

glCullFace — specify whether front- or back-facing facets can be culled

C Specification

void glCullFace(GLenum mode);

Parameters

mode

+ Specifies whether front- or back-facing facets are candidates for culling. + Symbolic constants + GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. + The initial value is GL_BACK. +

Description

+ glCullFace specifies whether front- or back-facing facets are culled + (as specified by mode) when facet culling is enabled. Facet + culling is initially disabled. + To enable and disable facet culling, call the + glEnable and glDisable commands + with the argument GL_CULL_FACE. + Facets include triangles, + quadrilaterals, + polygons, and + rectangles. +

+ glFrontFace specifies which of the clockwise and counterclockwise facets + are front-facing and back-facing. + See glFrontFace. +

Notes

+ If mode is GL_FRONT_AND_BACK, no facets are drawn, but other + primitives such as points and lines are drawn. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

Associated Gets

+ glIsEnabled with argument GL_CULL_FACE +

+ glGet with argument GL_CULL_FACE_MODE +

See Also

+ glEnable, + glFrontFace +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDebugMessageCallback.xml b/upstream-man-pages/man4/xhtml/glDebugMessageCallback.xml new file mode 100644 index 0000000..34624c4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDebugMessageCallback.xml @@ -0,0 +1,42 @@ + + + +glDebugMessageCallback - OpenGL 4 Reference Pages

Name

glDebugMessageCallback — specify a callback to receive debugging messages from the GL

C Specification

void glDebugMessageCallback(DEBUGPROC  callback,
 void *  userParam);

Parameters

callback

+ The address of a callback function that will be called when a debug message is generated. +

userParam

+ A user supplied pointer that will be passed on each invocation of callback. +

Description

+ glDebugMessageInsert sets the current debug output callback function to + the function whose address is given in callback. The callback function + should have the following prototype (in C), or be otherwise compatible with such a prototype: +

        typedef void (APIENTRY *DEBUGPROC)(GLenum source,
+                                           GLenum type,
+                                           GLuint id,
+                                           GLenum severity,
+                                           GLsizei length,
+                                           const GLchar* message,
+                                           void* userParam);

+ This function is defined to have the same calling convention as the GL API functions. In + most cases this is defined as APIENTRY, although it will vary depending + on platform, language and compiler. +

+ Each time a debug message is generated the debug callback function will be invoked + with source, type, id, and + severity associated with the message, and length set to + the length of debug message whose character string is in the array pointed to by message + userParam will be set to the value passed in the + userParam parameter to the most recent call to glDebugMessageInsert. +

Notes

+ When the GL is in use remotely, the server may not be able to call functions in the client's address space. + In such cases, the callback function may not be invoked and the user should retrieve debug messages from + the context's debug message log by calling glGetDebugMessageLog. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDebugMessageControl.xml b/upstream-man-pages/man4/xhtml/glDebugMessageControl.xml new file mode 100644 index 0000000..fa9b144 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDebugMessageControl.xml @@ -0,0 +1,70 @@ + + + +glDebugMessageControl - OpenGL 4 Reference Pages

Name

glDebugMessageControl — control the reporting of debug messages in a debug context

C Specification

void glDebugMessageControl(GLenum  source,
 GLenum  type,
 GLenum  severity,
 GLsizei  count,
 const GLuint * ids,
 GLboolean  enabled);

Parameters

source

+ The source of debug messages to enable or disable. +

type

+ The type of debug messages to enable or disable. +

severity

+ The severity of debug messages to enable or disable. +

count

+ The length of the array ids. +

ids

+ The address of an array of unsigned integers contianing the ids of the messages to enable or disable. +

enabled

+ A Boolean flag determining whether the selected messages should be enabled or disabled. +

Description

+ glDebugMessageControl controls the reporting of debug messages generated by a debug + context. The parameters source, type and severity + form a filter to select messages from the pool of potential messages generated by the GL. +

+ source may be GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_WINDOW_SYSTEM_, + GL_DEBUG_SOURCE_SHADER_COMPILER, GL_DEBUG_SOURCE_THIRD_PARTY, + GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_SOURCE_OTHER to select messages generated by + usage of the GL API, the window system, the shader compiler, third party tools or libraries, explicitly by the application + or by some other source, respectively. It may also take the value GL_DONT_CARE. If source + is not GL_DONT_CARE then only messages whose source matches source will be referenced. +

+ type may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, + GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_OTHER to indicate the type of messages describing + GL errors, attempted use of deprecated features, triggering of undefined behavior, portability issues, performance notifications and other + types of messages. It may also take the value GL_DONT_CARE. If type is not GL_DONT_CARE + then only messages whose type matches type will be referenced. +

+ severity may be one of GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, + or GL_DEBUG_SEVERITY_HIGH to select messages of low, medium or high severity messages. It may also take the + value GL_DONT_CARE. If severity is not GL_DONT_CARE then only + messages whose severity matches severity will be referenced. +

+ ids contains a list of count message identifiers to select specific messages from the pool + of available messages. If count is zero then the value of ids is ignored. Otherwise, + only messages appearing in this list are selected. In this case, source and type + may not be GL_DONT_CARE and severity must be GL_DONT_CARE. +

+ If enabled is GL_TRUE then messages that match the filter formed by + source, type, severity and ids + are enabled. Otherwise, those messages are disabled. +

Notes

+ Although debug messages may be enabled in a non-debug context, the quantity and detail of such messages may be substantially + inferior to those in a debug context. In particular, a valid implementation of the debug message queue in a non-debug context + may produce no messages at all. +

Errors

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_ENUM is generated if any of source, type + or severity is not one of the accepted interface types. +

+ GL_INVALID_OPERATION is generated if count is non-zero + and either source or type is GL_DONT_CARE + or if severity is not GL_DONT_CARE. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDebugMessageInsert.xml b/upstream-man-pages/man4/xhtml/glDebugMessageInsert.xml new file mode 100644 index 0000000..4f03472 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDebugMessageInsert.xml @@ -0,0 +1,50 @@ + + + +glDebugMessageInsert - OpenGL 4 Reference Pages

Name

glDebugMessageInsert — inject an application-supplied message into the debug message queue

C Specification

void glDebugMessageInsert(GLenum  source,
 GLenum  type,
 GLuint  id,
 GLenum  severity,
 GLsizei  length,
 const char * message);

Parameters

source

+ The source of the debug message to insert. +

type

+ The type of the debug message insert. +

id

+ The user-supplied identifier of the message to insert. +

severity

+ The severity of the debug messages to insert. +

length

+ The length string contained in the character array whose address is given by message. +

message

+ The address of a character array containing the message to insert. +

Description

+ glDebugMessageInsert inserts a user-supplied message into the + debug output queue. source specifies the source that will be + used to classify the message and must be GL_DEBUG_SOURCE_APPLICATION + or GL_DEBUG_SOURCE_THIRD_PARTY. All other sources are reserved for + use by the GL implementation. type indicates the type of the message + to be inserted and may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, + GL_DEBUG_TYPE_PERFORMANCE, or GL_DEBUG_TYPE_OTHER. + severity indicates the severity of the message and may be GL_DEBUG_SEVERITY_LOW, + GL_DEBUG_SEVERITY_MEDIUM, or GL_DEBUG_SEVERITY_HIGH. + id is available for application defined use and may be any value. This value + will be recorded and used to identify the message. +

+ length contains a count of the characters in the character array + whose address is given in message. If length + is negative then message is treated as a null-terminated string. + The length of the message, whether specified explicitly or implicitly, must be less than + or equal to the implementation defined constant GL_MAX_DEBUG_MESSAGE_LENGTH. +

Errors

+ GL_INVALID_ENUM is generated if any of source, type + or severity is not one of the accepted interface types. +

+ GL_INVALID_VALUE is generated if the length of the message is greater than the + value of GL_MAX_DEBUG_MESSAGE_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteBuffers.xml b/upstream-man-pages/man4/xhtml/glDeleteBuffers.xml new file mode 100644 index 0000000..8c3c89a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteBuffers.xml @@ -0,0 +1,30 @@ + + + +glDeleteBuffers - OpenGL 4 Reference Pages

Name

glDeleteBuffers — delete named buffer objects

C Specification

void glDeleteBuffers(GLsizei  n,
 const GLuint *  buffers);

Parameters

n

+ Specifies the number of buffer objects to be deleted. +

buffers

+ Specifies an array of buffer objects to be deleted. +

Description

+ glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. + After a buffer object is deleted, it has no contents, + and its name is free for reuse (for example by glGenBuffers). + If a buffer object that is currently bound is deleted, the binding reverts + to 0 (the absence of any buffer object). +

+ glDeleteBuffers silently ignores 0's and names that do not correspond to + existing buffer objects. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsBuffer +

See Also

+ glBindBuffer, + glGenBuffers, + glGet +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteFramebuffers.xml b/upstream-man-pages/man4/xhtml/glDeleteFramebuffers.xml new file mode 100644 index 0000000..d8468da --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteFramebuffers.xml @@ -0,0 +1,26 @@ + + + +glDeleteFramebuffers - OpenGL 4 Reference Pages

Name

glDeleteFramebuffers — delete framebuffer objects

C Specification

void glDeleteFramebuffers(GLsizei  n,
 GLuint * framebuffers);

Parameters

n

+ Specifies the number of framebuffer objects to be deleted. +

framebuffers

+ A pointer to an array containing n framebuffer objects to be deleted. +

Description

+ glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in + the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again + unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER + or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer + had been executed with the corresponding target and framebuffer zero. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteProgram.xml b/upstream-man-pages/man4/xhtml/glDeleteProgram.xml new file mode 100644 index 0000000..b82802c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteProgram.xml @@ -0,0 +1,35 @@ + + + +glDeleteProgram - OpenGL 4 Reference Pages

Name

glDeleteProgram — Deletes a program object

C Specification

void glDeleteProgram(GLuint program);

Parameters

program

Specifies the program object to be + deleted.

Description

glDeleteProgram frees the memory and + invalidates the name associated with the program object + specified by program. This command + effectively undoes the effects of a call to + glCreateProgram.

If a program object is in use as part of current rendering + state, it will be flagged for deletion, but it will not be + deleted until it is no longer part of current state for any + rendering context. If a program object to be deleted has shader + objects attached to it, those shader objects will be + automatically detached but not deleted unless they have already + been flagged for deletion by a previous call to + glDeleteShader. + A value of 0 for program will be silently + ignored.

To determine whether a program object has been flagged for + deletion, call + glGetProgram + with arguments program and + GL_DELETE_STATUS.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

Associated Gets

glGet + with argument GL_CURRENT_PROGRAM

glGetProgram + with arguments program and + GL_DELETE_STATUS

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteProgramPipelines.xml b/upstream-man-pages/man4/xhtml/glDeleteProgramPipelines.xml new file mode 100644 index 0000000..cc00557 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteProgramPipelines.xml @@ -0,0 +1,27 @@ + + + +glDeleteProgramPipelines - OpenGL 4 Reference Pages

Name

glDeleteProgramPipelines — delete program pipeline objects

C Specification

void glDeleteProgramPipelines(GLsizei  n,
 const GLuint * pipelines);

Parameters

n

+ Specifies the number of program pipeline objects to delete. +

pipelines

+ Specifies an array of names of program pipeline objects to delete. +

Description

+ glDeleteProgramPipelines deletes the n program pipeline objects + whose names are stored in the array pipelines. Unused names in pipelines are + ignored, as is the name zero. After a program pipeline object is deleted, its name is again unused and it + has no contents. If program pipeline object that is currently bound is deleted, the binding for that object reverts to + zero and no program pipeline object becomes current. +

Associated Gets

+ glGet with argument GL_PROGRAM_PIPELINE_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteQueries.xml b/upstream-man-pages/man4/xhtml/glDeleteQueries.xml new file mode 100644 index 0000000..9ca5a47 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteQueries.xml @@ -0,0 +1,30 @@ + + + +glDeleteQueries - OpenGL 4 Reference Pages

Name

glDeleteQueries — delete named query objects

C Specification

void glDeleteQueries(GLsizei  n,
 const GLuint *  ids);

Parameters

n

+ Specifies the number of query objects to be deleted. +

ids

+ Specifies an array of query objects to be deleted. +

Description

+ glDeleteQueries deletes n query objects named by the elements of the array ids. + After a query object is deleted, it has no contents, + and its name is free for reuse (for example by glGenQueries). +

+ glDeleteQueries silently ignores 0's and names that do not correspond to + existing query objects. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteRenderbuffers.xml b/upstream-man-pages/man4/xhtml/glDeleteRenderbuffers.xml new file mode 100644 index 0000000..a2df3e7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteRenderbuffers.xml @@ -0,0 +1,33 @@ + + + +glDeleteRenderbuffers - OpenGL 4 Reference Pages

Name

glDeleteRenderbuffers — delete renderbuffer objects

C Specification

void glDeleteRenderbuffers(GLsizei  n,
 GLuint * renderbuffers);

Parameters

n

+ Specifies the number of renderbuffer objects to be deleted. +

renderbuffers

+ A pointer to an array containing n renderbuffer objects to be deleted. +

Description

+ glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in + the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it + occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again + unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER + is deleted, it is as though glBindRenderbuffer + had been executed with a target of GL_RENDERBUFFER and a name of zero. +

+ If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if + glFramebufferRenderbuffer had been called, with a renderbuffer + of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, + this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer + image is specifically not detached from any non-bound framebuffers. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteSamplers.xml b/upstream-man-pages/man4/xhtml/glDeleteSamplers.xml new file mode 100644 index 0000000..432cb9d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteSamplers.xml @@ -0,0 +1,29 @@ + + + +glDeleteSamplers - OpenGL 4 Reference Pages

Name

glDeleteSamplers — delete named sampler objects

C Specification

void glDeleteSamplers(GLsizei  n,
 const GLuint *  samplers);

Parameters

n

+ Specifies the number of sampler objects to be deleted. +

samplers

+ Specifies an array of sampler objects to be deleted. +

Description

+ glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. + After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as + though glBindSampler is called with unit set to the unit the sampler is bound to and + sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. +

Notes

+ glDeleteSamplers is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsSampler +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteShader.xml b/upstream-man-pages/man4/xhtml/glDeleteShader.xml new file mode 100644 index 0000000..6957144 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteShader.xml @@ -0,0 +1,31 @@ + + + +glDeleteShader - OpenGL 4 Reference Pages

Name

glDeleteShader — Deletes a shader object

C Specification

void glDeleteShader(GLuint shader);

Parameters

shader

Specifies the shader object to be deleted.

Description

glDeleteShader frees the memory and + invalidates the name associated with the shader object specified + by shader. This command effectively + undoes the effects of a call to + glCreateShader.

If a shader object to be deleted is attached to a program + object, it will be flagged for deletion, but it will not be + deleted until it is no longer attached to any program object, + for any rendering context (i.e., it must be detached from + wherever it was attached before it will be deleted). A value of + 0 for shader will be silently + ignored.

To determine whether an object has been flagged for + deletion, call + glGetShader + with arguments shader and + GL_DELETE_STATUS.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

Associated Gets

glGetAttachedShaders + with the program object to be queried

glGetShader + with arguments shader and + GL_DELETE_STATUS

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteSync.xml b/upstream-man-pages/man4/xhtml/glDeleteSync.xml new file mode 100644 index 0000000..e10df61 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteSync.xml @@ -0,0 +1,31 @@ + + + +glDeleteSync - OpenGL 4 Reference Pages

Name

glDeleteSync — delete a sync object

C Specification

void glDeleteSync(GLsync sync);

Parameters

sync

+ The sync object to be deleted. +

Description

+ glDeleteSync deletes the sync object specified by sync. If the fence command + corresponding to the specified sync object has completed, or if no glWaitSync + or glClientWaitSync commands are blocking on sync, + the object is deleted immediately. Otherwise, sync is flagged for deletion and will be deleted when + it is no longer associated with any fence command and is no longer blocking any glWaitSync + or glClientWaitSync command. In either case, after + glDeleteSync returns, the name sync is invalid and can no longer be used to + refer to the sync object. +

+ glDeleteSync will silently ignore a sync value of zero. +

Notes

+ glSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. +

Errors

+ GL_INVALID_VALUE is generated if sync is neither zero or the name of a sync object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteTextures.xml b/upstream-man-pages/man4/xhtml/glDeleteTextures.xml new file mode 100644 index 0000000..a9462b1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteTextures.xml @@ -0,0 +1,36 @@ + + + +glDeleteTextures - OpenGL 4 Reference Pages

Name

glDeleteTextures — delete named textures

C Specification

void glDeleteTextures(GLsizei  n,
 const GLuint *  textures);

Parameters

n

+ Specifies the number of textures to be deleted. +

textures

+ Specifies an array of textures to be deleted. +

Description

+ glDeleteTextures deletes n textures named by the elements of the array textures. + After a texture is deleted, it has no contents or dimensionality, + and its name is free for reuse (for example by glGenTextures). + If a texture that is currently bound is deleted, the binding reverts + to 0 (the default texture). +

+ glDeleteTextures silently ignores 0's and names that do not correspond to + existing textures. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsTexture +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteTransformFeedbacks.xml b/upstream-man-pages/man4/xhtml/glDeleteTransformFeedbacks.xml new file mode 100644 index 0000000..03aa5a0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteTransformFeedbacks.xml @@ -0,0 +1,29 @@ + + + +glDeleteTransformFeedbacks - OpenGL 4 Reference Pages

Name

glDeleteTransformFeedbacks — delete transform feedback objects

C Specification

void glDeleteTransformFeedbacks(GLsizei  n,
 const GLuint * ids);

Parameters

n

+ Specifies the number of transform feedback objects to delete. +

ids

+ Specifies an array of names of transform feedback objects to delete. +

Description

+ glDeleteTransformFeedbacks deletes the n transform feedback objects + whose names are stored in the array ids. Unused names in ids are + ignored, as is the name zero. After a transform feedback object is deleted, its name is again unused and it + has no contents. If an active transform feedback object is deleted, its name immediately becomes unused, but + the underlying object is not deleted until it is no longer active. +

Associated Gets

+ glGet with argument GL_TRANSFORM_FEEDBACK_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDeleteVertexArrays.xml b/upstream-man-pages/man4/xhtml/glDeleteVertexArrays.xml new file mode 100644 index 0000000..3fddb19 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDeleteVertexArrays.xml @@ -0,0 +1,24 @@ + + + +glDeleteVertexArrays - OpenGL 4 Reference Pages

Name

glDeleteVertexArrays — delete vertex array objects

C Specification

void glDeleteVertexArrays(GLsizei  n,
 const GLuint * arrays);

Parameters

n

+ Specifies the number of vertex array objects to be deleted. +

arrays

+ Specifies the address of an array containing the n names of the objects to be deleted. +

Description

+ glDeleteVertexArrays deletes n vertex array objects whose names are stored in the + array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is + again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero + and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDepthFunc.xml b/upstream-man-pages/man4/xhtml/glDepthFunc.xml new file mode 100644 index 0000000..f8346eb --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDepthFunc.xml @@ -0,0 +1,66 @@ + + + +glDepthFunc - OpenGL 4 Reference Pages

Name

glDepthFunc — specify the value used for depth buffer comparisons

C Specification

void glDepthFunc(GLenum func);

Parameters

func

+ Specifies the depth comparison function. + Symbolic constants + GL_NEVER, + GL_LESS, + GL_EQUAL, + GL_LEQUAL, + GL_GREATER, + GL_NOTEQUAL, + GL_GEQUAL, and + GL_ALWAYS are accepted. + The initial value is GL_LESS. +

Description

+ glDepthFunc specifies the function used to compare each incoming pixel depth value + with the depth value present in the depth buffer. + The comparison is performed only if depth testing is enabled. + (See glEnable and glDisable of GL_DEPTH_TEST.) +

+ func specifies the conditions under which the pixel will be drawn. + The comparison functions are as follows: +

GL_NEVER

+ Never passes. +

GL_LESS

+ Passes if the incoming depth value is less than the stored depth value. +

GL_EQUAL

+ Passes if the incoming depth value is equal to the stored depth value. +

GL_LEQUAL

+ Passes if the incoming depth value is less than or equal to + the stored depth value. +

GL_GREATER

+ Passes if the incoming depth value is greater than the stored depth value. +

GL_NOTEQUAL

+ Passes if the incoming depth value is not equal to the stored depth value. +

GL_GEQUAL

+ Passes if the incoming depth value is greater than or equal to + the stored depth value. +

GL_ALWAYS

+ Always passes. +

+ The initial value of func is GL_LESS. + Initially, depth testing is disabled. If depth testing is disabled or if no + depth buffer exists, it is as if the depth test always passes. +

Notes

+ Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS. +

Errors

+ GL_INVALID_ENUM is generated if func is not an accepted value. +

Associated Gets

+ glGet with argument GL_DEPTH_FUNC +

+ glIsEnabled with argument GL_DEPTH_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDepthMask.xml b/upstream-man-pages/man4/xhtml/glDepthMask.xml new file mode 100644 index 0000000..a3e703d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDepthMask.xml @@ -0,0 +1,36 @@ + + + +glDepthMask - OpenGL 4 Reference Pages

Name

glDepthMask — enable or disable writing into the depth buffer

C Specification

void glDepthMask(GLboolean flag);

Parameters

flag

+ Specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. +

Description

+ glDepthMask specifies whether the depth buffer is enabled for writing. + If flag is GL_FALSE, + depth buffer writing is disabled. + Otherwise, it is enabled. + Initially, depth buffer writing is enabled. +

Associated Gets

+ glGet with argument GL_DEPTH_WRITEMASK +

Notes

+ Even if the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. In order to + unconditionally write to the depth buffer, the depth test should be enabled + and set to GL_ALWAYS (see glDepthFunc). +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. + Copyright © 2012 + Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDepthRange.xml b/upstream-man-pages/man4/xhtml/glDepthRange.xml new file mode 100644 index 0000000..7faa1d9 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDepthRange.xml @@ -0,0 +1,74 @@ + + + +glDepthRange - OpenGL 4 Reference Pages

Name

glDepthRange — specify mapping of depth values from normalized device coordinates to window coordinates

C Specification

void glDepthRange(GLdouble  nearVal,
 GLdouble  farVal);
void glDepthRangef(GLfloat  nearVal,
 GLfloat  farVal);

Parameters

nearVal

+ Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. +

farVal

+ Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. +

Description

+ After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + glDepthRange specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + Thus, + the values accepted by glDepthRange are both clamped to this range + before they are accepted. +

+ The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. +

Notes

+ It is not necessary that nearVal be less than farVal. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. +

+ The type of the nearVal and + farVal parameters was changed from + GLclampf to GLfloat for glDepthRangef + and from GLclampd to GLdouble for + glDepthRange. This change is + transparent to user code and is described in detail on the + removedTypes + page. +

Associated Gets

+ glGet with argument GL_DEPTH_RANGE +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDepthRangeArray.xml b/upstream-man-pages/man4/xhtml/glDepthRangeArray.xml new file mode 100644 index 0000000..11abe83 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDepthRangeArray.xml @@ -0,0 +1,92 @@ + + + +glDepthRangeArray - OpenGL 4 Reference Pages

Name

glDepthRangeArray — specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports

C Specification

void glDepthRangeArrayv(GLuint  first,
 GLsizei  count,
 const GLdouble * v);

Parameters

first

+ Specifies the index of the first viewport whose depth range to update. +

count

+ Specifies the number of viewports whose depth range to update. +

v

+ Specifies the address of an array containing the near and far values for the + depth range of each modified viewport. +

Description

+ After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + Each viewport has an independent depth range specified as a linear mapping of the normalized + depth coordinates in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + glDepthRangeArray specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates for each viewport in the range [first, + first + count). + Thus, + the values accepted by glDepthRangeArray are both clamped to this range + before they are accepted. +

+ The first parameter specifies the index of the first viewport whose depth + range to modify and must be less than the value of GL_MAX_VIEWPORTS. + count specifies the number of viewports whose depth range to modify. + first + count must be less than or equal to + the value of GL_MAX_VIEWPORTS. v specifies the address of an + array of pairs of double precision floating point values representing the near and far values of the + depth range for each viewport, in that order. +

+ The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. +

Notes

+ It is not necessary that the near plane distance be less than the far plane distance. + Reverse mappings such as + + + + near + = + 1 + + , + and + + + + far + = + 0 + + + are acceptable. +

+ The type of the v parameter was + changed from GLclampd to GLdouble. This change is + transparent to user code and is described in detail on the + removedTypes + page. +

Errors

+ GL_INVALID_VALUE is generated if first is greater than or equal to + the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if first + count + is greater than or equal to the value of GL_MAX_VIEWPORTS. +

Associated Gets

+ glGet with argument GL_DEPTH_RANGE +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDepthRangeIndexed.xml b/upstream-man-pages/man4/xhtml/glDepthRangeIndexed.xml new file mode 100644 index 0000000..552e8c9 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDepthRangeIndexed.xml @@ -0,0 +1,87 @@ + + + +glDepthRangeIndexed - OpenGL 4 Reference Pages

Name

glDepthRangeIndexed — specify mapping of depth values from normalized device coordinates to window coordinates for a specified viewport

C Specification

void glDepthRangeIndexed(GLuint  index,
 GLdouble  nearVal,
 GLdouble  farVal);

Parameters

index

+ Specifies the index of the viewport whose depth range to update. +

nearVal

+ Specifies the mapping of the near clipping plane to window coordinates. + The initial value is 0. +

farVal

+ Specifies the mapping of the far clipping plane to window coordinates. + The initial value is 1. +

Description

+ After clipping and division by w, + depth coordinates range from + + + -1 + + to 1, + corresponding to the near and far clipping planes. + Each viewport has an independent depth range specified as a linear mapping of the normalized + depth coordinates in this range to window depth coordinates. + Regardless of the actual depth buffer implementation, + window coordinate depth values are treated as though they range + from 0 through 1 (like color components). + glDepthRangeIndexed specifies a linear mapping of the normalized depth coordinates + in this range to window depth coordinates for a specified viewport. + Thus, + the values accepted by glDepthRangeIndexed are both clamped to this range + before they are accepted. +

+ The index parameter specifies the index of first viewport whose depth + range to modify and must be less than the value of GL_MAX_VIEWPORTS. + nearVal and farVal specify near and far values of the + depth range for the specified viewport, respectively. +

+ The setting of (0,1) maps the near plane to 0 and + the far plane to 1. + With this mapping, + the depth buffer range is fully utilized. +

Notes

+ It is not necessary that the near plane distance be less than the far plane distance. + Reverse mappings such as + + + + nearVal + = + 1 + + , + and + + + + farVal + = + 0 + + + are acceptable. +

+ The type of the nearVal and + farVal parameters was changed from + GLclampd to GLdouble. This change is transparent to user + code and is described in detail on the + removedTypes + page. +

Errors

+ GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_MAX_VIEWPORTS. +

Associated Gets

+ glGet with argument GL_DEPTH_RANGE +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDetachShader.xml b/upstream-man-pages/man4/xhtml/glDetachShader.xml new file mode 100644 index 0000000..ab59a49 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDetachShader.xml @@ -0,0 +1,28 @@ + + + +glDetachShader - OpenGL 4 Reference Pages

Name

glDetachShader — Detaches a shader object from a program object to which it is attached

C Specification

void glDetachShader(GLuint  program,
 GLuint  shader);

Parameters

program

Specifies the program object from which to + detach the shader object.

shader

Specifies the shader object to be + detached.

Description

glDetachShader detaches the shader + object specified by shader from the + program object specified by program. This + command can be used to undo the effect of the command + glAttachShader.

If shader has already been flagged + for deletion by a call to + glDeleteShader + and it is not attached to any other program object, it will be + deleted after it has been detached.

Errors

GL_INVALID_VALUE is generated if either + program or shader + is a value that was not generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_OPERATION is generated if + shader is not attached to + program.

Associated Gets

glGetAttachedShaders + with the handle of a valid program object

glGetShader + with arguments shader and + GL_DELETE_STATUS

glIsProgram

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDisable.xml b/upstream-man-pages/man4/xhtml/glDisable.xml new file mode 100644 index 0000000..2e26c1f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDisable.xml @@ -0,0 +1,4 @@ + + + +glDisable diff --git a/upstream-man-pages/man4/xhtml/glDisableVertexAttribArray.xml b/upstream-man-pages/man4/xhtml/glDisableVertexAttribArray.xml new file mode 100644 index 0000000..7603fc7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDisableVertexAttribArray.xml @@ -0,0 +1,12 @@ + + + + + + + +glDisableVertexAttribArray + + + + diff --git a/upstream-man-pages/man4/xhtml/glDispatchCompute.xml b/upstream-man-pages/man4/xhtml/glDispatchCompute.xml new file mode 100644 index 0000000..9f58a26 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDispatchCompute.xml @@ -0,0 +1,34 @@ + + + +glDispatchCompute - OpenGL 4 Reference Pages

Name

glDispatchCompute — launch one or more compute work groups

C Specification

void glDispatchCompute(GLuint  num_groups_x,
 GLuint  num_groups_y,
 GLuint  num_groups_z);

Parameters

num_groups_x

+ The number of work groups to be launched in the X dimension. +

num_groups_y

+ The number of work groups to be launched in the Y dimension. +

num_groups_z

+ The number of work groups to be launched in the Z dimension. +

Description

+ glDispatchCompute launches one or more compute + work groups. Each work group is processed by the active program object for the compute + shader stage. While the individual shader invocations within a work group are + executed as a unit, work groups are executed completely independently and in + unspecified order. num_groups_x, num_groups_y + and num_groups_z specify the number of local + work groups that will be dispatched in the X, Y and Z dimensions, respectively. +

Errors

+ GL_INVALID_OPERATION is generated if there is no active program + for the compute shader stage. +

+ GL_INVALID_VALUE is generated if any of num_groups_x, + num_groups_y, or num_groups_z is greater than or + equal to the maximum work-group count for the corresponding dimension. +

Associated Gets

+ glGet with argument GL_MAX_COMPUTE_WORK_GROUP_COUNT +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDispatchComputeIndirect.xml b/upstream-man-pages/man4/xhtml/glDispatchComputeIndirect.xml new file mode 100644 index 0000000..34e811e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDispatchComputeIndirect.xml @@ -0,0 +1,59 @@ + + + +glDispatchComputeIndirect - OpenGL 4 Reference Pages

Name

glDispatchComputeIndirect — launch one or more compute work groups using parameters stored in a buffer

C Specification

void glDispatchComputeIndirect(GLintptr  indirect);

Parameters

indirect

+ The offset into the buffer object currently bound to the + GL_DISPATCH_INDIRECT_BUFFER buffer target at + which the dispatch parameters are stored. +

Description

+ glDispatchComputeIndirect launches one or more compute + work groups using parameters stored in the buffer object currently bound + to the GL_DISPATCH_INDIRECT_BUFFER target. + Each work group is processed by the active program object for the compute + shader stage. While the individual shader invocations within a work group are + executed as a unit, work groups are executed completely independently and in + unspecified order. indirect contains the offset + into the data store of the buffer object bound to the GL_DISPATCH_INDIRECT_BUFFER + target at which the parameters are stored. +

+ The parameters addressed by indirect are packed a structure, + which takes the form (in C): +

    typedef  struct {
+        uint  num_groups_x;
+        uint  num_groups_y;
+        uint  num_groups_z;
+    } DispatchIndirectCommand;

+

+ A call to glDispatchComputeIndirect is equivalent, assuming no + errors are generated, to: +

    cmd = (const DispatchIndirectCommand  *)indirect;
+    glDispatchComputeIndirect(cmd->num_groups_x, cmd->num_groups_y, cmd->num_groups_z);
+    }

+

+ Unlike glDispatchCompute, + no error is generated if any of the num_groups_x, + num_groups_y or num_groups_z members + of the DispatchIndirectCommand is larger than the + value of GL_MAX_COMPUTE_WORK_GROUP_COUNT for the + corresponding dimension. In such circumstances, behavior is undefined and + may lead to application termination. +

Errors

+ GL_INVALID_OPERATION is generated if there is no active program + for the compute shader stage. +

+ GL_INVALID_VALUE is generated if indirect is + less than zero or not a multiple of four. +

+ GL_INVALID_OPERATION is generated if no buffer is bound to the + GL_DISPATCH_INDIRECT_BUFFER target or if the command would + source data beyond the end of the buffer object's data store. +

Associated Gets

+ glGet with argument GL_MAX_COMPUTE_WORK_GROUP_COUNT +

See Also

+ glDispatchCompute. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawArrays.xml b/upstream-man-pages/man4/xhtml/glDrawArrays.xml new file mode 100644 index 0000000..af3295e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawArrays.xml @@ -0,0 +1,66 @@ + + + +glDrawArrays - OpenGL 4 Reference Pages

Name

glDrawArrays — render primitives from array data

C Specification

void glDrawArrays(GLenum  mode,
 GLint  first,
 GLsizei  count);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

first

+ Specifies the starting index in the enabled arrays. +

count

+ Specifies the number of indices to be rendered. +

Description

+ glDrawArrays specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glDrawArrays. +

+ When glDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed and how the array elements + construct those primitives. +

+ Vertex attributes that are modified by glDrawArrays have an + unspecified value after glDrawArrays returns. Attributes that aren't + modified remain well defined. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawArraysIndirect.xml b/upstream-man-pages/man4/xhtml/glDrawArraysIndirect.xml new file mode 100644 index 0000000..88baff2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawArraysIndirect.xml @@ -0,0 +1,79 @@ + + + +glDrawArraysIndirect - OpenGL 4 Reference Pages

Name

glDrawArraysIndirect — render primitives from array data, taking parameters from memory

C Specification

void glDrawArraysIndirect(GLenum  mode,
 const void * indirect);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

indirect

+ Specifies the address of a structure containing the draw parameters. +

Description

+ glDrawArraysIndirect specifies multiple geometric primitives + with very few subroutine calls. glDrawArraysIndirect behaves + similarly to glDrawArraysInstancedBaseInstance, + execept that the parameters to glDrawArraysInstancedBaseInstance + are stored in memory at the address given by indirect. +

+ The parameters addressed by indirect are packed into a structure + that takes the form (in C): +

    typedef  struct {
+        uint  count;
+        uint  primCount;
+        uint  first;
+        uint  baseInstance;
+    } DrawArraysIndirectCommand;
+
+    const DrawArraysIndirectCommand  *cmd  = (const DrawArraysIndirectCommand  *)indirect;
+    glDrawArraysInstancedBaseInstance(mode,  cmd->first,  cmd->count,  cmd->primCount, cmd->baseInstance);

+

+ If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glDrawArraysIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. +

+ In contrast to glDrawArraysInstancedBaseInstance, + the first member of the parameter structure is unsigned, and out-of-range indices + do not generate an error. +

+ Vertex attributes that are modified by glDrawArraysIndirect have an + unspecified value after glDrawArraysIndirect returns. Attributes that aren't + modified remain well defined. +

Notes

+ The baseInstance member of the DrawArraysIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawArraysInstanced.xml b/upstream-man-pages/man4/xhtml/glDrawArraysInstanced.xml new file mode 100644 index 0000000..6bb1bfe --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawArraysInstanced.xml @@ -0,0 +1,52 @@ + + + +glDrawArraysInstanced - OpenGL 4 Reference Pages

Name

glDrawArraysInstanced — draw multiple instances of a range of elements

C Specification

void glDrawArraysInstanced(GLenum  mode,
 GLint  first,
 GLsizei  count,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. Symbolic constants GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES + are accepted. +

first

+ Specifies the starting index in the enabled arrays. +

count

+ Specifies the number of indices to be rendered. +

primcount

+ Specifies the number of instances of the specified range of indices to be rendered. +

Description

+ glDrawArraysInstanced behaves identically to glDrawArrays + except that primcount instances of the range of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. +

+ glDrawArraysInstanced has the same effect as: +

    if ( mode or count is invalid )
+        generate appropriate error
+    else {
+        for (int i = 0; i < primcount ; i++) {
+            instanceID = i;
+            glDrawArrays(mode, first, count);
+        }
+        instanceID = 0;
+    }

+

Errors

+ GL_INVALID_ENUM is generated if mode is not one of + the accepted values. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_VALUE is generated if count or primcount are negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawArraysInstancedBaseInstance.xml b/upstream-man-pages/man4/xhtml/glDrawArraysInstancedBaseInstance.xml new file mode 100644 index 0000000..9bf3bdc --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawArraysInstancedBaseInstance.xml @@ -0,0 +1,75 @@ + + + +glDrawArraysInstancedBaseInstance - OpenGL 4 Reference Pages

Name

glDrawArraysInstancedBaseInstance — draw multiple instances of a range of elements with offset applied to instanced attributes

C Specification

void glDrawArraysInstancedBaseInstance(GLenum  mode,
 GLint  first,
 GLsizei  count,
 GLsizei  primcount,
 GLuint  baseinstance);

Parameters

mode

+ Specifies what kind of primitives to render. Symbolic constants GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES + GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES + are accepted. +

first

+ Specifies the starting index in the enabled arrays. +

count

+ Specifies the number of indices to be rendered. +

primcount

+ Specifies the number of instances of the specified range of indices to be rendered. +

baseinstance

+ Specifies the base instance for use in fetching instanced vertex attributes. +

Description

+ glDrawArraysInstancedBaseInstance behaves identically to glDrawArrays + except that primcount instances of the range of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. +

+ glDrawArraysInstancedBaseInstance has the same effect as: +

    if ( mode or count is invalid )
+        generate appropriate error
+    else {
+        for (int i = 0; i < primcount ; i++) {
+            instanceID = i;
+            glDrawArrays(mode, first, count);
+        }
+        instanceID = 0;
+    }

+

+ Specific vertex attributes may be classified as instanced through the use of + glVertexAttribDivisor. Instanced vertex attributes + supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex + attribute arrays is calculated as: + + + + + + gl + _ + InstanceID + + divisor + + + + + baseInstance + +. Note that baseinstance does not affect the shader-visible value of gl_InstanceID. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of + the accepted values. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_VALUE is generated if count or primcount are negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawBuffer.xml b/upstream-man-pages/man4/xhtml/glDrawBuffer.xml new file mode 100644 index 0000000..6087570 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawBuffer.xml @@ -0,0 +1,98 @@ + + + +glDrawBuffer - OpenGL 4 Reference Pages

Name

glDrawBuffer — specify which color buffers are to be drawn into

C Specification

void glDrawBuffer(GLenum mode);

Parameters

mode

+ Specifies up to four color buffers to be drawn into. + Symbolic constants + GL_NONE, + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK + are accepted. + The initial value is GL_FRONT for single-buffered contexts, + and GL_BACK for double-buffered contexts. +

Description

+ When colors are written to the frame buffer, + they are written into the color buffers specified by glDrawBuffer. + The specifications are as follows: +

GL_NONE

+ No color buffers are written. +

GL_FRONT_LEFT

+ Only the front left color buffer is written. +

GL_FRONT_RIGHT

+ Only the front right color buffer is written. +

GL_BACK_LEFT

+ Only the back left color buffer is written. +

GL_BACK_RIGHT

+ Only the back right color buffer is written. +

GL_FRONT

+ Only the front left and front right color buffers are written. + If there is no front right color buffer, + only the front left color buffer is written. +

GL_BACK

+ Only the back left and back right color buffers are written. + If there is no back right color buffer, + only the back left color buffer is written. +

GL_LEFT

+ Only the front left and back left color buffers are written. + If there is no back left color buffer, + only the front left color buffer is written. +

GL_RIGHT

+ Only the front right and back right color buffers are written. + If there is no back right color buffer, + only the front right color buffer is written. +

GL_FRONT_AND_BACK

+ All the front and back color buffers + (front left, front right, back left, back right) + are written. + If there are no back color buffers, + only the front left and front right color buffers are written. + If there are no right color buffers, + only the front left and back left color buffers are written. + If there are no right or back color buffers, + only the front left color buffer is written. +

+ If more than one color buffer is selected for drawing, + then blending or logical operations are computed and applied independently + for each color buffer and can produce different results in each buffer. +

+ Monoscopic contexts include only + left + buffers, and stereoscopic contexts include both + left + and + right + buffers. + Likewise, single-buffered contexts include only + front + buffers, and double-buffered contexts include both + front + and + back + buffers. + The context is selected at GL initialization. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if none of the buffers indicated + by mode exists. +

Associated Gets

+ glGet with argument GL_DRAW_BUFFER +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawBuffers.xml b/upstream-man-pages/man4/xhtml/glDrawBuffers.xml new file mode 100644 index 0000000..1d9a883 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawBuffers.xml @@ -0,0 +1,71 @@ + + + +glDrawBuffers - OpenGL 4 Reference Pages

Name

glDrawBuffers — Specifies a list of color buffers to be drawn into

C Specification

void glDrawBuffers(GLsizei  n,
 const GLenum * bufs);

Parameters

n

Specifies the number of buffers in + bufs.

bufs

Points to an array of symbolic constants + specifying the buffers into which fragment colors or + data values will be written.

Description

glDrawBuffers defines an array of + buffers into which outputs from the fragment shader data will + be written. If a fragment shader writes a value + to one or more user defined output + variables, then the value of each variable will be written into the + buffer specified at a location within bufs + corresponding to the location assigned to that user defined output. + The draw buffer used for user defined outputs assigned to locations + greater than or equal to n is implicitly set + to GL_NONE and any data written to such an output + is discarded.

The symbolic constants contained in + bufs may be any of the following:

GL_NONE

The fragment shader output value is not written into + any color buffer.

GL_FRONT_LEFT

The fragment shader output value is written into the + front left color buffer.

GL_FRONT_RIGHT

The fragment shader output value is written into the + front right color buffer.

GL_BACK_LEFT

The fragment shader output value is written into the + back left color buffer.

GL_BACK_RIGHT

The fragment shader output value is written into the + back right color buffer.

GL_COLOR_ATTACHMENTn

The fragment shader output value is written into the + nth color attachment of the current framebuffer. + n may range from 0 to the value of + GL_MAX_COLOR_ATTACHMENTS.

Except for GL_NONE, the preceding + symbolic constants may not appear more than once in + bufs. The maximum number of draw buffers + supported is implementation dependent and can be queried by + calling + glGet + with the argument GL_MAX_DRAW_BUFFERS.

Notes

The symbolic constants GL_FRONT, + GL_BACK, GL_LEFT, + GL_RIGHT, and + GL_FRONT_AND_BACK are not allowed in the + bufs array since they may refer to + multiple buffers.

If a fragment shader does not write to a user defined output variable, + the values of the fragment + colors following shader execution are undefined. For each + fragment generated in this situation, a different value may be + written into each of the buffers specified by + bufs.

Errors

GL_INVALID_ENUM is generated if one of the + values in bufs is not an accepted + value.

GL_INVALID_ENUM is generated if the GL is bound + to the default framebuffer and one or more of the values in + bufs is one of the GL_COLOR_ATTACHMENTn + tokens.

GL_INVALID_ENUM is generated if the GL is bound + to a framebuffer object and one or more of the values in bufs + is anything other than GL_NONE or one of the + GL_COLOR_ATTACHMENTSn tokens.

GL_INVALID_ENUM is generated if + n is less than 0.

GL_INVALID_OPERATION is generated if a + symbolic constant other than GL_NONE + appears more than once in bufs.

GL_INVALID_OPERATION is generated if any of + the entries in bufs (other than + GL_NONE ) indicates a color buffer that + does not exist in the current GL context.

GL_INVALID_VALUE is generated if + n is greater than + GL_MAX_DRAW_BUFFERS.

Associated Gets

glGet + with argument GL_MAX_DRAW_BUFFERS

glGet + with argument GL_DRAW_BUFFERi where + i indicates the number of the draw buffer + whose value is to be queried

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElements.xml b/upstream-man-pages/man4/xhtml/glDrawElements.xml new file mode 100644 index 0000000..cee5956 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElements.xml @@ -0,0 +1,71 @@ + + + +glDrawElements - OpenGL 4 Reference Pages

Name

glDrawElements — render primitives from array data

C Specification

void glDrawElements(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 const GLvoid *  indices);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

Description

+ glDrawElements specifies multiple geometric primitives + with very few subroutine calls. Instead of calling a GL function + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to + construct a sequence of primitives with a single + call to glDrawElements. +

+ When glDrawElements is called, it uses count sequential elements from an + enabled array, starting at indices to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed and how the array elements construct these primitives. If + more than one array is enabled, each is used. +

+ Vertex attributes that are modified by glDrawElements have an + unspecified value after glDrawElements returns. Attributes that aren't + modified maintain their previous values. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElementsBaseVertex.xml b/upstream-man-pages/man4/xhtml/glDrawElementsBaseVertex.xml new file mode 100644 index 0000000..4758446 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElementsBaseVertex.xml @@ -0,0 +1,51 @@ + + + +glDrawElementsBaseVertex - OpenGL 4 Reference Pages

Name

glDrawElementsBaseVertex — render primitives from array data with a per-element offset

C Specification

void glDrawElementsBaseVertex(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLint  basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

Description

+ glDrawElementsBaseVertex behaves identically to + glDrawElements except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. +

Notes

glDrawElementsBaseVertex is only supported if the GL version is 3.2 or greater, or if + the ARB_draw_elements_base_vertex extension is supported. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElementsIndirect.xml b/upstream-man-pages/man4/xhtml/glDrawElementsIndirect.xml new file mode 100644 index 0000000..0aab39b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElementsIndirect.xml @@ -0,0 +1,99 @@ + + + +glDrawElementsIndirect - OpenGL 4 Reference Pages

Name

glDrawElementsIndirect — render indexed primitives from array data, taking parameters from memory

C Specification

void glDrawElementsIndirect(GLenum  mode,
 GLenum  type,
 const void * indirect);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

type

+ Specifies the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. +

indirect

+ Specifies the address of a structure containing the draw parameters. +

Description

+ glDrawElementsIndirect specifies multiple indexed geometric primitives + with very few subroutine calls. glDrawElementsIndirect behaves + similarly to glDrawElementsInstancedBaseVertexBaseInstance, + execpt that the parameters to glDrawElementsInstancedBaseVertexBaseInstance + are stored in memory at the address given by indirect. +

+ The parameters addressed by indirect are packed into a structure + that takes the form (in C): +

    typedef  struct {
+        uint  count;
+        uint  primCount;
+        uint  firstIndex;
+        uint  baseVertex;
+        uint  baseInstance;
+    } DrawElementsIndirectCommand;

+

+ glDrawElementsIndirect is equivalent to: +

+

    void glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect)
+    {
+        const DrawElementsIndirectCommand *cmd  = (const DrawElementsIndirectCommand *)indirect;
+        glDrawElementsInstancedBaseVertexBaseInstance(mode,
+                                                      cmd->count,
+                                                      type,
+                                                      cmd->firstIndex + size-of-type,
+                                                      cmd->primCount,
+                                                      cmd->baseVertex,
+                                                      cmd->baseInstance);
+    }

+

+ If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glDrawElementsIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. +

+ Note that indices stored in client memory are not supported. If no buffer is bound to the + GL_ELEMENT_ARRAY_BUFFER binding, an error will be generated. +

+ The results of the operation are undefined if the reservedMustBeZero member + of the parameter structure is non-zero. However, no error is generated in this case. +

+ Vertex attributes that are modified by glDrawElementsIndirect have an + unspecified value after glDrawElementsIndirect returns. Attributes that aren't + modified remain well defined. +

Notes

+ The baseInstance member of the DrawElementsIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_OPERATION is generated if no buffer is bound to the GL_ELEMENT_ARRAY_BUFFER + binding, or if such a buffer's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElementsInstanced.xml b/upstream-man-pages/man4/xhtml/glDrawElementsInstanced.xml new file mode 100644 index 0000000..a00c6df --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElementsInstanced.xml @@ -0,0 +1,72 @@ + + + +glDrawElementsInstanced - OpenGL 4 Reference Pages

Name

glDrawElementsInstanced — draw multiple instances of a set of elements

C Specification

void glDrawElementsInstanced(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 const void *  indices,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the number of instances of the specified range of indices to be rendered. +

Description

+ glDrawElementsInstanced behaves identically to glDrawElements + except that primcount instances of the set of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. +

+ glDrawElementsInstanced has the same effect as: +

    if (mode, count, or type is invalid )
+        generate appropriate error
+    else {
+        for (int i = 0; i < primcount ; i++) {
+            instanceID = i;
+            glDrawElements(mode, count, type, indices);
+        }
+        instanceID = 0;
+    }

+

Notes

+ glDrawElementsInstanced is available only if the GL version is 3.1 or greater. +

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES. +

+ GL_INVALID_VALUE is generated if count or primcount are negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseInstance.xml b/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseInstance.xml new file mode 100644 index 0000000..ea84172 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseInstance.xml @@ -0,0 +1,95 @@ + + + +glDrawElementsInstancedBaseInstance - OpenGL 4 Reference Pages

Name

glDrawElementsInstancedBaseInstance — draw multiple instances of a set of elements with offset applied to instanced attributes

C Specification

void glDrawElementsInstancedBaseInstance(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 const void *  indices,
 GLsizei  primcount,
 GLuitn  baseinstance);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the number of instances of the specified range of indices to be rendered. +

baseinstance

+ Specifies the base instance for use in fetching instanced vertex attributes. +

Description

+ glDrawElementsInstancedBaseInstance behaves identically to glDrawElements + except that primcount instances of the set of elements are executed and the value of the internal counter + instanceID advances for each iteration. instanceID is an internal 32-bit integer counter + that may be read by a vertex shader as gl_InstanceID. +

+ glDrawElementsInstancedBaseInstance has the same effect as: +

    if (mode, count, or type is invalid )
+        generate appropriate error
+    else {
+        for (int i = 0; i < primcount ; i++) {
+            instanceID = i;
+            glDrawElements(mode, count, type, indices);
+        }
+        instanceID = 0;
+    }

+

+ Specific vertex attributes may be classified as instanced through the use of + glVertexAttribDivisor. Instanced vertex attributes + supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex + attribute arrays is calculated as + + + + + + gl + _ + InstanceID + + divisor + + + + + baseInstance + +. Note that baseinstance does not affect the shader-visible value of gl_InstanceID. +

Notes

+ glDrawElementsInstancedBaseInstance is available only if the GL version is 4.2 or greater. +

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, + GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, + GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES. +

+ GL_INVALID_VALUE is generated if count or primcount are negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertex.xml b/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertex.xml new file mode 100644 index 0000000..00cfedd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertex.xml @@ -0,0 +1,52 @@ + + + +glDrawElementsInstancedBaseVertex - OpenGL 4 Reference Pages

Name

glDrawElementsInstancedBaseVertex — render multiple instances of a set of primitives from array data with a per-element offset

C Specification

void glDrawElementsInstancedBaseVertex(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLsizei  primcount,
 GLint  basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the number of instances of the indexed geometry that should be drawn. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

Description

+ glDrawElementsInstancedBaseVertex behaves identically to + glDrawElementsInstanced except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. +

Notes

glDrawElementsInstancedBaseVertex is only supported if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count or primcount is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertexBaseInstance.xml b/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertexBaseInstance.xml new file mode 100644 index 0000000..b15057e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawElementsInstancedBaseVertexBaseInstance.xml @@ -0,0 +1,76 @@ + + + +glDrawElementsInstancedBaseVertexBaseInstance - OpenGL 4 Reference Pages

Name

glDrawElementsInstancedBaseVertexBaseInstance — render multiple instances of a set of primitives from array data with a per-element offset

C Specification

void glDrawElementsInstancedBaseVertexBaseInstance(GLenum  mode,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLsizei  primcount,
 GLint  basevertex,
 GLuint  baseinstance);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the number of instances of the indexed geometry that should be drawn. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

baseinstance

+ Specifies the base instance for use in fetching instanced vertex attributes. +

Description

+ glDrawElementsInstancedBaseVertexBaseInstance behaves identically to + glDrawElementsInstanced except that the ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex + of each enabled array. If the resulting value is larger than the maximum value representable by type, + it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). + The operation is undefined if the sum would be negative. The basevertex has no effect on the + shader-visible value of gl_VertexID. +

+ Specific vertex attributes may be classified as instanced through the use of + glVertexAttribDivisor. Instanced vertex attributes + supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex + attribute arrays is calculated as + + + + + + gl + _ + InstanceID + + divisor + + + + + baseInstance + +. Note that baseinstance does not affect the shader-visible value of gl_InstanceID. +

Notes

glDrawElementsInstancedBaseVertex is only supported if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count or primcount is negative. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawRangeElements.xml b/upstream-man-pages/man4/xhtml/glDrawRangeElements.xml new file mode 100644 index 0000000..6164336 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawRangeElements.xml @@ -0,0 +1,126 @@ + + + +glDrawRangeElements - OpenGL 4 Reference Pages

Name

glDrawRangeElements — render primitives from array data

C Specification

void glDrawRangeElements(GLenum  mode,
 GLuint  start,
 GLuint  end,
 GLsizei  count,
 GLenum  type,
 const GLvoid *  indices);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

start

+ Specifies the minimum array index contained in indices. +

end

+ Specifies the maximum array index contained in indices. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

Description

+ glDrawRangeElements is a restricted form of glDrawElements. mode, start, end, + and count match the corresponding arguments to glDrawElements, with + the additional constraint that all values in the arrays count must lie + between start and end, inclusive. +

+ Implementations denote recommended maximum amounts of vertex and + index data, + which may be queried by calling glGet with argument + GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. + If + + + + end + - + start + + + 1 + + + is greater than the value of + GL_MAX_ELEMENTS_VERTICES, or if count is greater than the value of + GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced + performance. There is no requirement that all vertices in the range + + + + start + end + + + be referenced. However, the implementation may + partially process unused vertices, reducing performance from what could + be achieved with an optimal index set. +

+ When glDrawRangeElements is called, it uses count sequential elements from an + enabled array, starting at start to construct a sequence of + geometric primitives. mode specifies what kind of primitives are + constructed, and how the array elements construct these primitives. If + more than one array is enabled, each is used. +

+ Vertex attributes that are modified by glDrawRangeElements have an + unspecified value after glDrawRangeElements returns. Attributes that aren't + modified maintain their previous values. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ It is an error for indices to lie outside the range + + + + start + end + + , + but implementations may not check for this situation. Such indices + cause implementation-dependent behavior. +

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_VALUE is generated if + + + + end + < + start + + . +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Associated Gets

+ glGet with argument GL_MAX_ELEMENTS_VERTICES +

+ glGet with argument GL_MAX_ELEMENTS_INDICES +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawRangeElementsBaseVertex.xml b/upstream-man-pages/man4/xhtml/glDrawRangeElementsBaseVertex.xml new file mode 100644 index 0000000..41521c1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawRangeElementsBaseVertex.xml @@ -0,0 +1,59 @@ + + + +glDrawRangeElementsBaseVertex - OpenGL 4 Reference Pages

Name

glDrawRangeElementsBaseVertex — render primitives from array data with a per-element offset

C Specification

void glDrawRangeElementsBaseVertex(GLenum  mode,
 GLuint  start,
 GLuint  end,
 GLsizei  count,
 GLenum  type,
 GLvoid * indices,
 GLint  basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, + GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, + GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. +

start

+ Specifies the minimum array index contained in indices. +

end

+ Specifies the maximum array index contained in indices. +

count

+ Specifies the number of elements to be rendered. +

type

+ Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

basevertex

+ Specifies a constant that should be added to each element of indices + when chosing elements from the enabled vertex arrays. +

Description

+ glDrawRangeElementsBaseVertex is a restricted form of + glDrawElementsBaseVertex. mode, + start, end, count and basevertex match + the corresponding arguments to glDrawElementsBaseVertex, with the additional + constraint that all values in the array indices must lie between start and end, + inclusive, prior to adding basevertex. Index values lying outside the range [start, end] + are treated in the same way as glDrawElementsBaseVertex. The ith element + transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled + array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to + 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if count is negative. +

+ GL_INVALID_VALUE is generated if end < start. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glDrawTransformFeedback.xml new file mode 100644 index 0000000..1eaa445 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawTransformFeedback.xml @@ -0,0 +1,56 @@ + + + +glDrawTransformFeedback - OpenGL 4 Reference Pages

Name

glDrawTransformFeedback — render primitives using a count derived from a transform feedback object

C Specification

void glDrawTransformFeedback(GLenum  mode,
 GLuint  id);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

id

+ Specifies the name of a transform feedback object from which to retrieve a primitive count. +

Description

+ glDrawTransformFeedback draws primitives of a type specified by mode using + a count retrieved from the transform feedback specified by id. Calling glDrawTransformFeedback + is equivalent to calling glDrawArrays with mode + as specified, first set to zero, and count set to the number of vertices captured + on vertex stream zero the last time transform feedback was active on the transform feedback object named by id. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

+ GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackInstanced.xml b/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackInstanced.xml new file mode 100644 index 0000000..15623c3 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackInstanced.xml @@ -0,0 +1,67 @@ + + + +glDrawTransformFeedbackInstanced - OpenGL 4 Reference Pages

Name

glDrawTransformFeedbackInstanced — render multiple instances of primitives using a count derived from a transform feedback object

C Specification

void glDrawTransformFeedbackInstanced(GLenum  mode,
 GLuint  id,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

id

+ Specifies the name of a transform feedback object from which to retrieve a primitive count. +

primcount

+ Specifies the number of instances of the geometry to render. +

Description

+ glDrawTransformFeedbackInstanced draws multiple copies of a range of primitives of a type specified by mode using + a count retrieved from the transform feedback stream specified by stream of the transform feedback object + specified by id. Calling glDrawTransformFeedbackInstanced + is equivalent to calling glDrawArraysInstanced with mode + and primcount as specified, first set to zero, and count set to the number of vertices captured + on vertex stream zero the last time transform feedback was active on the transform feedback object named + by id. +

+ Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawTransformFeedbackStreamInstanced + with stream set to zero. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. +

+ GL_INVALID_VALUE is generated if stream is greater than or equal to + the value of GL_MAX_VERTEX_STREAMS. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

+ GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. +

Copyright

+ Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStream.xml b/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStream.xml new file mode 100644 index 0000000..cc99449 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStream.xml @@ -0,0 +1,66 @@ + + + +glDrawTransformFeedbackStream - OpenGL 4 Reference Pages

Name

glDrawTransformFeedbackStream — render primitives using a count derived from a specifed stream of a transform feedback object

C Specification

void glDrawTransformFeedbackStream(GLenum  mode,
 GLuint  id,
 GLuint  stream);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

id

+ Specifies the name of a transform feedback object from which to retrieve a primitive count. +

stream

+ Specifies the index of the transform feedback stream from which to retrieve a primitive count. +

Description

+ glDrawTransformFeedbackStream draws primitives of a type specified by mode using + a count retrieved from the transform feedback stream specified by stream of the transform feedback object + specified by id. Calling glDrawTransformFeedbackStream + is equivalent to calling glDrawArrays with mode + as specified, first set to zero, and count set to the number of vertices captured + on vertex stream stream the last time transform feedback was active on the transform feedback object named + by id. +

+ Calling glDrawTransformFeedback is equivalent to calling glDrawTransformFeedbackStream + with stream set to zero. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. +

+ GL_INVALID_VALUE is generated if stream is greater than or equal to + the value of GL_MAX_VERTEX_STREAMS. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

+ GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStreamInstanced.xml b/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStreamInstanced.xml new file mode 100644 index 0000000..86b4261 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glDrawTransformFeedbackStreamInstanced.xml @@ -0,0 +1,69 @@ + + + +glDrawTransformFeedbackStreamInstanced - OpenGL 4 Reference Pages

Name

glDrawTransformFeedbackStreamInstanced — render multiple instances of primitives using a count derived from a specifed stream of a transform feedback object

C Specification

void glDrawTransformFeedbackStreamInstanced(GLenum  mode,
 GLuint  id,
 GLuint  stream,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

id

+ Specifies the name of a transform feedback object from which to retrieve a primitive count. +

stream

+ Specifies the index of the transform feedback stream from which to retrieve a primitive count. +

primcount

+ Specifies the number of instances of the geometry to render. +

Description

+ glDrawTransformFeedbackStreamInstanced draws multiple copies of a range of primitives of a type specified by mode using + a count retrieved from the transform feedback stream specified by stream of the transform feedback object + specified by id. Calling glDrawTransformFeedbackStreamInstanced + is equivalent to calling glDrawArraysInstanced with mode + and primcount as specified, first set to zero, and count set to the number of vertices captured + on vertex stream stream the last time transform feedback was active on the transform feedback object named + by id. +

+ Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawTransformFeedbackStreamInstanced + with stream set to zero. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if id is not the name of a transform feedback + object. +

+ GL_INVALID_VALUE is generated if stream is greater than or equal to + the value of GL_MAX_VERTEX_STREAMS. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

+ GL_INVALID_OPERATION is generated if glEndTransformFeedback + has never been called while the transform feedback object named by id was bound. +

Copyright

+ Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glEnable.xml b/upstream-man-pages/man4/xhtml/glEnable.xml new file mode 100644 index 0000000..b6d0684 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glEnable.xml @@ -0,0 +1,242 @@ + + + +glEnable - OpenGL 4 Reference Pages

Name

glEnable — enable or disable server-side GL capabilities

C Specification

void glEnable(GLenum cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

C Specification

void glDisable(GLenum cap);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

C Specification

void glEnablei(GLenum cap, GLuint index);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

index

+ Specifies the index of the swtich to enable. +

C Specification

void glDisablei(GLenum cap, GLuint index);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

index

+ Specifies the index of the swtich to disable. +

Description

+ glEnable and glDisable enable and disable various capabilities. + Use glIsEnabled or glGet to determine the current setting + of any capability. The initial value for each capability with the + exception of GL_DITHER and GL_MULTISAMPLE is + GL_FALSE. The initial value for + GL_DITHER and GL_MULTISAMPLE is GL_TRUE. +

+ Both glEnable and glDisable take a single argument, cap, + which can assume one of the following values: +

+ Some of the GL's capabilities are indexed. glEnablei and glDisablei enable and disable + indexed capabilities. +

GL_BLEND

+

+ If enabled, + blend the computed fragment color values with the values in the color + buffers. See glBlendFunc. +

GL_CLIP_DISTANCEi

+

+ If enabled, clip geometry against user-defined half space i. +

GL_COLOR_LOGIC_OP

+

+ If enabled, + apply the currently selected logical operation to the computed fragment + color and color buffer values. See glLogicOp. +

GL_CULL_FACE

+

+ If enabled, + cull polygons based on their winding in window coordinates. + See glCullFace. +

GL_DEBUG_OUTPUT

+

+ If enabled, debug messages are produced by a debug context. When disabled, + the debug message log is silenced. Note that in a non-debug context, very + few, if any messages might be produced, even when GL_DEBUG_OUTPUT + is enabled. +

GL_DEBUG_OUTPUT_SYNCHRONOUS

+

+ If enabled, debug messages are produced synchronously by a debug context. If disabled, + debug messages may be produced asynchronously. In particular, they may be delayed relative + to the execution of GL commands, and the debug callback function may be called from + a thread other than that in which the commands are executed. + See glDebugMessageCallback. +

GL_DEPTH_CLAMP

+

+ If enabled, + the + + + -wc≤zc≤wc + + plane equation is ignored by view volume clipping (effectively, there is no near or + far plane clipping). + See glDepthRange. +

GL_DEPTH_TEST

+

+ If enabled, + do depth comparisons and update the depth buffer. Note that even if + the depth buffer exists and the depth mask is non-zero, the + depth buffer is not updated if the depth test is disabled. See + glDepthFunc and + glDepthRange. +

GL_DITHER

+

+ If enabled, + dither color components or indices before they are written to the + color buffer. +

GL_FRAMEBUFFER_SRGB

+

+ If enabled + and the value of GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING for the + framebuffer attachment corresponding to the destination buffer is GL_SRGB, + the R, G, and B destination color values (after conversion from fixed-point to floating-point) + are considered to be encoded for the sRGB color space and hence are linearized prior to + their use in blending. +

GL_LINE_SMOOTH

+

+ If enabled, + draw lines with correct filtering. + Otherwise, + draw aliased lines. + See glLineWidth. +

GL_MULTISAMPLE

+

+ If enabled, + use multiple fragment samples in computing the final color of a pixel. + See glSampleCoverage. +

GL_POLYGON_OFFSET_FILL

+

+ If enabled, and if the polygon is rendered in + GL_FILL mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. +

GL_POLYGON_OFFSET_LINE

+

+ If enabled, and if the polygon is rendered in + GL_LINE mode, an offset is added to depth values of a polygon's + fragments before the depth comparison is performed. + See glPolygonOffset. +

GL_POLYGON_OFFSET_POINT

+

+ If enabled, an offset is added to depth values of a polygon's fragments + before the depth comparison is performed, if the polygon is rendered in + GL_POINT mode. See glPolygonOffset. +

GL_POLYGON_SMOOTH

+

+ If enabled, draw polygons with proper filtering. + Otherwise, draw aliased polygons. For correct antialiased polygons, + an alpha buffer is needed and the polygons must be sorted front to + back. +

GL_PRIMITIVE_RESTART

+

+ Enables primitive restarting. If enabled, any one of the draw commands + which transfers a set of generic attribute array elements to the GL will restart + the primitive when the index of the vertex is equal to the primitive restart index. + See glPrimitiveRestartIndex. +

GL_PRIMITIVE_RESTART_FIXED_INDEX

+

+ Enables primitive restarting with a fixed index. If enabled, any one of the + draw commands which transfers a set of generic attribute array elements to the GL will + restart the primitive when the index of the vertex is equal to the fixed primitive + index for the specified index type. The fixed index is equal to + 2n−1 + where n is equal to 8 for GL_UNSIGNED_BYTE, + 16 for GL_UNSIGNED_SHORT and 32 for GL_UNSIGNED_INT. +

GL_SAMPLE_ALPHA_TO_COVERAGE

+

+ If enabled, + compute a temporary coverage value where each bit is determined by the + alpha value at the corresponding sample location. The temporary coverage + value is then ANDed with the fragment coverage value. +

GL_SAMPLE_ALPHA_TO_ONE

+

+ If enabled, + each sample alpha value is replaced by the maximum representable alpha value. +

GL_SAMPLE_COVERAGE

+

+ If enabled, + the fragment's coverage is ANDed with the temporary coverage value. If + GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage + value. + See glSampleCoverage. +

GL_SAMPLE_SHADING

+

+ If enabled, the active fragment shader is run once for each covered sample, or at + fraction of this rate as determined by the current value of GL_MIN_SAMPLE_SHADING_VALUE. + See glMinSampleShading. +

GL_SAMPLE_MASK

+

+ If enabled, the sample coverage mask generated for a fragment during rasterization + will be ANDed with the value of GL_SAMPLE_MASK_VALUE before + shading occurs. + See glSampleMaski. +

GL_SCISSOR_TEST

+

+ If enabled, + discard fragments that are outside the scissor rectangle. + See glScissor. +

GL_STENCIL_TEST

+

+ If enabled, + do stencil testing and update the stencil buffer. + See glStencilFunc and glStencilOp. +

GL_TEXTURE_CUBE_MAP_SEAMLESS

+

+ If enabled, cubemap textures are sampled such that when linearly sampling from the border + between two adjacent faces, texels from both faces are used to generate the final sample + value. When disabled, texels from only a single face are used to construct the final + sample value. +

GL_PROGRAM_POINT_SIZE

+

+ If enabled + and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin + gl_PointSize and clamped to the implementation-dependent point size range. +

Errors

+ GL_INVALID_ENUM is generated if cap is not one of the values + listed previously. +

+ GL_INVALID_VALUE is generated by glEnablei and glDisablei + if index is greater than or equal to the number of indexed capabilities for cap. +

Notes

+ GL_PRIMITIVE_RESTART is available only if the GL version is 3.1 or greater. +

+ GL_TEXTURE_CUBE_MAP_SEAMLESS is available only if the GL version is 3.2 or greater. +

+ GL_PRIMITIVE_RESTART_FIXED_INDEX is available only if the GL version is 4.3 or greater. +

+ GL_DEBUG_OUTPUT and GL_DEBUG_OUTPUT_SYNCHRONOUS are available only if the GL version is 4.3 or greater. +

+ Any token accepted by glEnable or glDisable is also accepted by + glEnablei and glDisablei, but if the capability is not indexed, + the maximum value that index may take is zero. +

+ In general, passing an indexed capability to glEnable or glDisable + will enable or disable that capability for all indices, resepectively. +

Associated Gets

+ glIsEnabled +

+ glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010-2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glEnableVertexAttribArray.xml b/upstream-man-pages/man4/xhtml/glEnableVertexAttribArray.xml new file mode 100644 index 0000000..d3257ee --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glEnableVertexAttribArray.xml @@ -0,0 +1,41 @@ + + + +glEnableVertexAttribArray - OpenGL 4 Reference Pages

Name

glEnableVertexAttribArray — Enable or disable a generic vertex attribute array

C Specification

void glEnableVertexAttribArray(GLuint  index);
void glDisableVertexAttribArray(GLuint  index);

Parameters

index

Specifies the index of the generic vertex + attribute to be enabled or disabled.

Description

glEnableVertexAttribArray enables the + generic vertex attribute array specified by + index. + glDisableVertexAttribArray disables the + generic vertex attribute array specified by + index. By default, all client-side + capabilities are disabled, including all generic vertex + attribute arrays. If enabled, the values in the generic vertex + attribute array will be accessed and used for rendering when + calls are made to vertex array commands such as + glDrawArrays, + glDrawElements, + glDrawRangeElements, + glMultiDrawElements, + or + glMultiDrawArrays.

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttrib + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_ENABLED +

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glEndConditionalRender.xml b/upstream-man-pages/man4/xhtml/glEndConditionalRender.xml new file mode 100644 index 0000000..673961a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glEndConditionalRender.xml @@ -0,0 +1,12 @@ + + + + + + + +glEndConditionalRender + + + + diff --git a/upstream-man-pages/man4/xhtml/glEndQuery.xml b/upstream-man-pages/man4/xhtml/glEndQuery.xml new file mode 100644 index 0000000..1a05fc0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glEndQuery.xml @@ -0,0 +1,12 @@ + + + + + + + +glEndQuery + + + + diff --git a/upstream-man-pages/man4/xhtml/glEndQueryIndexed.xml b/upstream-man-pages/man4/xhtml/glEndQueryIndexed.xml new file mode 100644 index 0000000..c7eb5e2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glEndQueryIndexed.xml @@ -0,0 +1,12 @@ + + + + + + + +glEndQueryIndexed + + + + diff --git a/upstream-man-pages/man4/xhtml/glEndTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glEndTransformFeedback.xml new file mode 100644 index 0000000..d3c1764 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glEndTransformFeedback.xml @@ -0,0 +1,12 @@ + + + + + + + +glEndTransformFeedback + + + + diff --git a/upstream-man-pages/man4/xhtml/glFenceSync.xml b/upstream-man-pages/man4/xhtml/glFenceSync.xml new file mode 100644 index 0000000..cda8e27 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFenceSync.xml @@ -0,0 +1,46 @@ + + + +glFenceSync - OpenGL 4 Reference Pages

Name

glFenceSync — create a new sync object and insert it into the GL command stream

C Specification

GLsync glFenceSync(GLenum  condition,
 GLbitfield  flags);

Parameters

condition

+ Specifies the condition that must be met to set the sync object's state to signaled. condition + must be GL_SYNC_GPU_COMMANDS_COMPLETE. +

flags

+ Specifies a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined + for this operation and flags must be zero.[1] +

Description

+ glFenceSync creates a new fence sync object, inserts a fence command into the GL command stream and + associates it with that sync object, and returns a non-zero name corresponding to the sync object. +

+ When the specified condition of the sync object is satisfied by the fence command, the sync object + is signaled by the GL, causing any glWaitSync, + glClientWaitSync commands blocking in sync + to unblock. No other state is affected by glFenceSync or by the execution + of the associated fence command. +

+ condition must be GL_SYNC_GPU_COMMANDS_COMPLETE. This condition is satisfied by + completion of the fence command corresponding to the sync object and all preceding commands in the same command stream. + The sync object will not be signaled until all effects from these commands on GL client and server state and the + framebuffer are fully realized. Note that completion of the fence command occurs once the state of the corresponding sync + object has been changed, but commands waiting on that sync object may not be unblocked until after the fence command completes. +

Notes

glFenceSync is only supported if the GL version is 3.2 or greater, or if + the ARB_sync extension is supported. +

Errors

+ GL_INVALID_ENUM is generated if condition is not + GL_SYNC_GPU_COMMANDS_COMPLETE. +

+ GL_INVALID_VALUE is generated if flags is not zero. +

+ Additionally, if glFenceSync fails, it will return zero. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +



[1] + flags is a placeholder for anticipated future extensions of fence sync object capabilities. +

diff --git a/upstream-man-pages/man4/xhtml/glFinish.xml b/upstream-man-pages/man4/xhtml/glFinish.xml new file mode 100644 index 0000000..5738261 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFinish.xml @@ -0,0 +1,19 @@ + + + +glFinish - OpenGL 4 Reference Pages

Name

glFinish — block until all GL execution is complete

C Specification

void glFinish( void);

Description

+ glFinish does not return until the effects of all previously + called GL commands are complete. + Such effects include all changes to GL state, + all changes to connection state, + and all changes to the frame buffer contents. +

Notes

+ glFinish requires a round trip to the server. +

See Also

+ glFlush +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glFlush.xml b/upstream-man-pages/man4/xhtml/glFlush.xml new file mode 100644 index 0000000..d907066 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFlush.xml @@ -0,0 +1,32 @@ + + + +glFlush - OpenGL 4 Reference Pages

Name

glFlush — force execution of GL commands in finite time

C Specification

void glFlush( void);

Description

+ Different GL implementations buffer commands in several different locations, + including network buffers and the graphics accelerator itself. + glFlush empties all of these buffers, + causing all issued commands to be executed as quickly as + they are accepted by the actual rendering engine. + Though this execution may not be completed in any particular + time period, + it does complete in finite time. +

+ Because any GL program might be executed over a network, + or on an accelerator that buffers commands, + all programs should call glFlush whenever they count on having + all of their previously issued commands completed. + For example, + call glFlush before waiting for user input that depends on + the generated image. +

Notes

+ glFlush can return at any time. + It does not wait until the execution of all previously + issued GL commands is complete. +

See Also

+ glFinish +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glFlushMappedBufferRange.xml b/upstream-man-pages/man4/xhtml/glFlushMappedBufferRange.xml new file mode 100644 index 0000000..ac459e6 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFlushMappedBufferRange.xml @@ -0,0 +1,36 @@ + + + +glFlushMappedBufferRange - OpenGL 4 Reference Pages

Name

glFlushMappedBufferRange — indicate modifications to a range of a mapped buffer

C Specification

void glFlushMappedBufferRange(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  length);

Parameters

target

+ Specifies the target of the flush operation. target must be GL_ARRAY_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER. +

offset

+ Specifies the start of the buffer subrange, in basic machine units. +

length

+ Specifies the length of the buffer subrange, in basic machine units. +

Description

+ glFlushMappedBufferRange indicates that modifications have been made to a range of a mapped buffer. + The buffer must previously have been mapped with the GL_MAP_FLUSH_EXPLICIT flag. offset + and length indicate the modified subrange of the mapping, in basic units. The specified subrange to flush + is relative to the start of the currently mapped range of the buffer. glFlushMappedBufferRange may be called + multiple times to indicate distinct subranges of the mapping which require flushing. +

Errors

+ GL_INVALID_VALUE is generated if offset or length + is negative, or if offset + length exceeds the size of the mapping. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer bound to target is not + mapped, or is mapped without the GL_MAP_FLUSH_EXPLICIT flag. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glFramebufferParameteri.xml b/upstream-man-pages/man4/xhtml/glFramebufferParameteri.xml new file mode 100644 index 0000000..afe1058 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFramebufferParameteri.xml @@ -0,0 +1,79 @@ + + + +glFramebufferParameteri - OpenGL 4 Reference Pages

Name

glFramebufferParameteri — set a named parameter of a framebuffer

C Specification

void glFramebufferParameteri(GLenum  target,
 GLenum  pname,
 GLint  param);

Parameters

target

+ The target of the operation, which must be GL_READ_FRAMEBUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. +

pname

+ A token indicating the parameter to be modified. +

param

+ The new value for the parameter named pname. +

Description

+ glFramebufferParameteri modifies the current value of the parameter + named pname in the framebuffer bound to target. + target must be GL_READ_FRAMEBFUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. The + token GL_FRAMEBUFFER is treated as GL_DRAW_FRAMEBUFFER. + A non-default framebuffer must be bound to target. +

+ pname specifies the parameter to be modified. The following symbols + are accepted in pname: +

GL_FRAMEBUFFER_DEFAULT_WIDTH

+ param specifies the assumed with for a framebuffer object with no attachments. If a + framebuffer has attachments then the width of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_WIDTH is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_WIDTH. +

GL_FRAMEBUFFER_DEFAULT_HEIGHT

+ param specifies the assumed height for a framebuffer object with no attachments. If a + framebuffer has attachments then the height of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_HEIGHT is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_HEIGHT. +

GL_FRAMEBUFFER_DEFAULT_LAYERS

+ param specifies the assumed number of layers for a framebuffer object with no attachments. If a + framebuffer has attachments then the layer count of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_LAYERS is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_LAYERS. +

GL_FRAMEBUFFER_DEFAULT_SAMPLES

+ param specifies the assumed number of samples in a framebuffer object with no attachments. If a + framebuffer has attachments then the sample count of those attachments is used, otherwise + the value of GL_FRAMEBUFFER_DEFAULT_SAMPLES is used for the + framebuffer. param must be greater than or equal to zero and less than + or equal to the value of GL_MAX_FRAMEBUFFER_SAMPLE. +

GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS

+ param specifies whether the framebuffer should assume identical sample locations and + the same number of samples for all texels in the virtual image. If param is zero, + then the implementation may vary the position or the count of samples within the virtual image from + pixel to pixel, otherwise it will use the same sample position and count for all pixels in the virtual image. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted + framebuffer targets. +

+ GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_WIDTH + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_WIDTH. +

+ GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_HEIGHT + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_HEIGHT. +

+ GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_LAYERS + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_LAYERS. +

+ GL_INVAILD_VALUE is generated if pname is GL_FRAMEBUFFER_DEFAULT_SAMPLES + and param is less than zero or greater than the value of GL_MAX_FRAMEBUFFER_SAMPLES. +

+ GL_INVALID_OPERATION is generated if the default framebuffer is bound to target. +

Associated Gets

+ glGetFramebufferParameteriv. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glFramebufferRenderbuffer.xml b/upstream-man-pages/man4/xhtml/glFramebufferRenderbuffer.xml new file mode 100644 index 0000000..5f0049c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFramebufferRenderbuffer.xml @@ -0,0 +1,55 @@ + + + +glFramebufferRenderbuffer - OpenGL 4 Reference Pages

Name

glFramebufferRenderbuffer — attach a renderbuffer as a logical buffer to the currently bound framebuffer object

C Specification

void glFramebufferRenderbuffer(GLenum  target,
 GLenum  attachment,
 GLenum  renderbuffertarget,
 GLuint  renderbuffer);

Parameters

target

+ Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. +

attachment

+ Specifies the attachment point of the framebuffer. +

renderbuffertarget

+ Specifies the renderbuffer target and must be GL_RENDERBUFFER. +

renderbuffer

+ Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach. +

Description

+ glFramebufferRenderbuffer attaches a renderbuffer as one of the logical buffers of the + currently bound framebuffer object. renderbuffer is the name of the renderbuffer object + to attach and must be either zero, or the name of an existing renderbuffer object of type renderbuffertarget. + If renderbuffer is not zero and if glFramebufferRenderbuffer is + successful, then the renderbuffer name renderbuffer will be used as the logical buffer + identified by attachment of the framebuffer currently bound to target. +

+ The value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE for the specified attachment point is + set to GL_RENDERBUFFER and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + is set to renderbuffer. All other state values of the attachment point specified by + attachment are set to their default values. No change is made to the state of the renderbuuffer + object and any previous attachment to the attachment logical buffer of the framebuffer + target is broken. +

+ Calling glFramebufferRenderbuffer with the renderbuffer name zero will detach the image, if any, + identified by attachment, in the framebuffer currently bound to target. + All state values of the attachment point specified by attachment in the object bound to target are set to their default values. +

+ Setting attachment to the value GL_DEPTH_STENCIL_ATTACHMENT is a special + case causing both the depth and stencil attachments of the framebuffer object to be set to renderbuffer, + which should have the base internal format GL_DEPTH_STENCIL. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glFramebufferTexture.xml b/upstream-man-pages/man4/xhtml/glFramebufferTexture.xml new file mode 100644 index 0000000..02ab3b2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFramebufferTexture.xml @@ -0,0 +1,97 @@ + + + +glFramebufferTexture - OpenGL 4 Reference Pages

Name

glFramebufferTexture — attach a level of a texture object as a logical buffer to the currently bound framebuffer object

C Specification

void glFramebufferTexture(GLenum  target,
 GLenum  attachment,
 GLuint  texture,
 GLint  level);
void glFramebufferTexture1D(GLenum  target,
 GLenum  attachment,
 GLenum  textarget,
 GLuint  texture,
 GLint  level);
void glFramebufferTexture2D(GLenum  target,
 GLenum  attachment,
 GLenum  textarget,
 GLuint  texture,
 GLint  level);
void glFramebufferTexture3D(GLenum  target,
 GLenum  attachment,
 GLenum  textarget,
 GLuint  texture,
 GLint  level,
 GLint  layer);

Parameters

target

+ Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. +

attachment

+ Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. +

textarget

+ For glFramebufferTexture1D, glFramebufferTexture2D and + glFramebufferTexture3D, specifies what type of texture is expected + in the texture parameter, or for cube map textures, which face is to be attached. +

texture

+ Specifies the texture object to attach to the framebuffer attachment point named by attachment. +

level

+ Specifies the mipmap level of texture to attach. +

Description

+ glFramebufferTexture, glFramebufferTexture1D, glFramebufferTexture2D, + and glFramebufferTexture attach a selected mipmap level or image of a texture object as one of the + logical buffers of the framebuffer object currently bound to target. target must + be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. + GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. +

+ attachment specifies the logical attachment of the framebuffer and must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. + i in GL_COLOR_ATTACHMENTi may range from zero to + the value of GL_MAX_COLOR_ATTACHMENTS - 1. Attaching a level of a texture to + GL_DEPTH_STENCIL_ATTACHMENT is equivalent to attaching that level to both the + GL_DEPTH_ATTACHMENT and the GL_STENCIL_ATTACHMENT + attachment points simultaneously. +

+ textarget specifies what type of texture is named by texture, and for + cube map textures, specifies the face that is to be attached. If texture is not zero, it + must be the name of an existing texture with type textarget, unless it is a cube map + texture, in which case textarget must be GL_TEXTURE_CUBE_MAP_POSITIVE_X + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ If texture is non-zero, the specified level of the texture object named + texture is attached to the framebfufer attachment point named by attachment. + For glFramebufferTexture1D, glFramebufferTexture2D, and + glFramebufferTexture3D, texture must be zero or the name of an existing + texture with a target of textarget, or texture must be the name + of an existing cube-map texture and textarget must be one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ If textarget is GL_TEXTURE_RECTANGLE, GL_TEXTURE_2D_MULTISAMPLE, + or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, then level must be zero. If textarget + is GL_TEXTURE_3D, then level must be greater than or equal to zero and less than or equal to log2 + of the value of GL_MAX_3D_TEXTURE_SIZE. If textarget is one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, then level must be greater + than or equal to zero and less than or equal to log2 of the value of GL_MAX_CUBE_MAP_TEXTURE_SIZE. For all other + values of textarget, level must be greater than or equal to zero and no larger than log2 + of the value of GL_MAX_TEXTURE_SIZE. +

+ layer specifies the layer of a 2-dimensional image within a 3-dimensional texture. +

+ For glFramebufferTexture1D, if texture is not zero, then textarget must + be GL_TEXTURE_1D. For glFramebufferTexture2D, if texture is not zero, + textarget must be one of GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_2D_MULTISAMPLE. For glFramebufferTexture3D, if texture is + not zero, then textarget must be GL_TEXTURE_3D. +

Notes

+ glFramebufferTexture is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if renderbuffertarget is not GL_RENDERBUFFER. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

+ GL_INVALID_OPERATION is generated if textarget and texture + are not compatible. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glFramebufferTextureLayer.xml b/upstream-man-pages/man4/xhtml/glFramebufferTextureLayer.xml new file mode 100644 index 0000000..5e001dd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFramebufferTextureLayer.xml @@ -0,0 +1,49 @@ + + + +glFramebufferTextureLayer - OpenGL 4 Reference Pages

Name

glFramebufferTextureLayer — attach a single layer of a texture to a framebuffer

C Specification

void glFramebufferTextureLayer(GLenum  target,
 GLenum  attachment,
 GLuint  texture,
 GLint  level,
 GLint  layer);

Parameters

target

+ Specifies the framebuffer target. target must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER + is equivalent to GL_DRAW_FRAMEBUFFER. +

attachment

+ Specifies the attachment point of the framebuffer. attachment must be + GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMMENT. +

texture

+ Specifies the texture object to attach to the framebuffer attachment point named by attachment. +

level

+ Specifies the mipmap level of texture to attach. +

layer

+ Specifies the layer of texture to attach. +

Description

+ glFramebufferTextureLayer operates like glFramebufferTexture, + except that only a single layer of the texture level, given by layer, is attached to the attachment point. + If texture is not zero, layer must be greater than or equal to zero. + texture must either be zero or the name of an existing three-dimensional texture, one- or two-dimensional array texture, + or multisample array texture. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if attachment is not one of the accepted tokens. +

+ GL_INVALID_VALUE is generated if texture is not zero or the name of an existing + texture object. +

+ GL_INVALID_VALUE is generated if texture is not zero and layer + is negative. +

+ GL_INVALID_OPERATION is generated if zero is bound to target. +

+ GL_INVALID_OPERATION is generated if texture is not zero or the name of an existing cube map texture. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glFrontFace.xml b/upstream-man-pages/man4/xhtml/glFrontFace.xml new file mode 100644 index 0000000..79b999b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glFrontFace.xml @@ -0,0 +1,45 @@ + + + +glFrontFace - OpenGL 4 Reference Pages

Name

glFrontFace — define front- and back-facing polygons

C Specification

void glFrontFace(GLenum mode);

Parameters

mode

+ Specifies the orientation of front-facing polygons. + GL_CW and GL_CCW are accepted. + The initial value is GL_CCW. +

Description

+ In a scene composed entirely of opaque closed surfaces, + back-facing polygons are never visible. + Eliminating these invisible polygons has the obvious benefit + of speeding up the rendering of the image. + To enable and disable elimination of back-facing polygons, call glEnable + and glDisable with argument GL_CULL_FACE. +

+ The projection of a polygon to window coordinates is said to have + clockwise winding if an imaginary object following the path + from its first vertex, + its second vertex, + and so on, + to its last vertex, + and finally back to its first vertex, + moves in a clockwise direction about the interior of the polygon. + The polygon's winding is said to be counterclockwise if the imaginary + object following the same path moves in a counterclockwise direction + about the interior of the polygon. + glFrontFace specifies whether polygons with clockwise winding in window coordinates, + or counterclockwise winding in window coordinates, + are taken to be front-facing. + Passing GL_CCW to mode selects counterclockwise polygons as + front-facing; + GL_CW selects clockwise polygons as front-facing. + By default, counterclockwise polygons are taken to be front-facing. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

Associated Gets

+ glGet with argument GL_FRONT_FACE +

See Also

+ glCullFace, +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenBuffers.xml b/upstream-man-pages/man4/xhtml/glGenBuffers.xml new file mode 100644 index 0000000..1111b2d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenBuffers.xml @@ -0,0 +1,33 @@ + + + +glGenBuffers - OpenGL 4 Reference Pages

Name

glGenBuffers — generate buffer object names

C Specification

void glGenBuffers(GLsizei  n,
 GLuint *  buffers);

Parameters

n

+ Specifies the number of buffer object names to be generated. +

buffers

+ Specifies an array in which the generated buffer object names are stored. +

Description

+ glGenBuffers returns n buffer object names in buffers. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenBuffers. +

+ Buffer object names returned by a call to glGenBuffers are not returned by + subsequent calls, unless they are first deleted with + glDeleteBuffers. +

+ No buffer objects are associated with the returned buffer object names until they are first bound by calling + glBindBuffer. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsBuffer +

See Also

+ glBindBuffer, + glDeleteBuffers, + glGet +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenFramebuffers.xml b/upstream-man-pages/man4/xhtml/glGenFramebuffers.xml new file mode 100644 index 0000000..e81e353 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenFramebuffers.xml @@ -0,0 +1,28 @@ + + + +glGenFramebuffers - OpenGL 4 Reference Pages

Name

glGenFramebuffers — generate framebuffer object names

C Specification

void glGenFramebuffers(GLsizei  n,
 GLuint * ids);

Parameters

n

+ Specifies the number of framebuffer object names to generate. +

ids

+ Specifies an array in which the generated framebuffer object names are stored. +

Description

+ glGenFramebuffers returns n framebuffer object names in ids. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenFramebuffers. +

+ Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteFramebuffers. +

+ The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, + but they acquire state and type only when they are first bound. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenProgramPipelines.xml b/upstream-man-pages/man4/xhtml/glGenProgramPipelines.xml new file mode 100644 index 0000000..4937627 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenProgramPipelines.xml @@ -0,0 +1,28 @@ + + + +glGenProgramPipelines - OpenGL 4 Reference Pages

Name

glGenProgramPipelines — reserve program pipeline object names

C Specification

void glGenProgramPipelines(GLsizei  n,
 GLuint * pipelines);

Parameters

n

+ Specifies the number of program pipeline object names to reserve. +

pipelines

+ Specifies an array of into which the reserved names will be written. +

Description

+ glGenProgramPipelines returns n previously unused + program pipeline object names in pipelines. These names are marked as used, + for the purposes of glGenProgramPipelines only, but they + acquire program pipeline state only when they are first bound. +

Associated Gets

+ glGet with argument GL_PROGRAM_PIPELINE_BINDING +

+ glIsProgramPipeline +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenQueries.xml b/upstream-man-pages/man4/xhtml/glGenQueries.xml new file mode 100644 index 0000000..6af8e12 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenQueries.xml @@ -0,0 +1,33 @@ + + + +glGenQueries - OpenGL 4 Reference Pages

Name

glGenQueries — generate query object names

C Specification

void glGenQueries(GLsizei n, GLuint * ids);

Parameters

n

+ Specifies the number of query object names to be generated. +

ids

+ Specifies an array in which the generated query object names are stored. +

Description

+ glGenQueries returns n query object names in ids. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenQueries. +

+ Query object names returned by a call to glGenQueries are not returned by + subsequent calls, unless they are first deleted with + glDeleteQueries. +

+ No query objects are associated with the returned query object names until they are first used by calling + glBeginQuery. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenRenderbuffers.xml b/upstream-man-pages/man4/xhtml/glGenRenderbuffers.xml new file mode 100644 index 0000000..8eda126 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenRenderbuffers.xml @@ -0,0 +1,28 @@ + + + +glGenRenderbuffers - OpenGL 4 Reference Pages

Name

glGenRenderbuffers — generate renderbuffer object names

C Specification

void glGenRenderbuffers(GLsizei  n,
 GLuint * renderbuffers);

Parameters

n

+ Specifies the number of renderbuffer object names to generate. +

renderbuffers

+ Specifies an array in which the generated renderbuffer object names are stored. +

Description

+ glGenRenderbuffers returns n renderbuffer object names in renderbuffers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenRenderbuffers. +

+ Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless + they are first deleted with glDeleteRenderbuffers. +

+ The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, + but they acquire state and type only when they are first bound. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenSamplers.xml b/upstream-man-pages/man4/xhtml/glGenSamplers.xml new file mode 100644 index 0000000..fbe7db0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenSamplers.xml @@ -0,0 +1,31 @@ + + + +glGenSamplers - OpenGL 4 Reference Pages

Name

glGenSamplers — generate sampler object names

C Specification

void glGenSamplers(GLsizei  n,
 GLuint * samplers);

Parameters

n

+ Specifies the number of sampler object names to generate. +

samplers

+ Specifies an array in which the generated sampler object names are stored. +

Description

+ glGenSamplers returns n sampler object names in samplers. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenSamplers. +

+ Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless + they are first deleted with glDeleteSamplers. +

+ The names returned in samplers are marked as used, for the purposes of glGenSamplers only, + but they acquire state and type only when they are first bound. +

Notes

+ glGenSamplers is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenTextures.xml b/upstream-man-pages/man4/xhtml/glGenTextures.xml new file mode 100644 index 0000000..8d14963 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenTextures.xml @@ -0,0 +1,41 @@ + + + +glGenTextures - OpenGL 4 Reference Pages

Name

glGenTextures — generate texture names

C Specification

void glGenTextures(GLsizei  n,
 GLuint *  textures);

Parameters

n

+ Specifies the number of texture names to be generated. +

textures

+ Specifies an array in which the generated texture names are stored. +

Description

+ glGenTextures returns n texture names in textures. + There is no guarantee that the names form a contiguous set of integers; + however, it is guaranteed that none of the returned names was in use + immediately before the call to glGenTextures. +

+ The generated textures have no dimensionality; they assume the dimensionality + of the texture target to which they are first bound + (see glBindTexture). +

+ Texture names returned by a call to glGenTextures are not returned by + subsequent calls, unless they are first deleted with + glDeleteTextures. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Associated Gets

+ glIsTexture +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenTransformFeedbacks.xml b/upstream-man-pages/man4/xhtml/glGenTransformFeedbacks.xml new file mode 100644 index 0000000..92fe44d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenTransformFeedbacks.xml @@ -0,0 +1,30 @@ + + + +glGenTransformFeedbacks - OpenGL 4 Reference Pages

Name

glGenTransformFeedbacks — reserve transform feedback object names

C Specification

void glGenTransformFeedbacks(GLsizei  n,
 GLuint * ids);

Parameters

n

+ Specifies the number of transform feedback object names to reserve. +

ids

+ Specifies an array of into which the reserved names will be written. +

Description

+ glGenTransformFeedbacks returns n previously unused + transform feedback object names in ids. These names are marked as used, + for the purposes of glGenTransformFeedbacks only, but they + acquire transform feedback state only when they are first bound. +

Associated Gets

+ glGet with argument GL_TRANSFORM_FEEDBACK_BINDING +

+ glIsTransformFeedback +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenVertexArrays.xml b/upstream-man-pages/man4/xhtml/glGenVertexArrays.xml new file mode 100644 index 0000000..52d3453 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenVertexArrays.xml @@ -0,0 +1,28 @@ + + + +glGenVertexArrays - OpenGL 4 Reference Pages

Name

glGenVertexArrays — generate vertex array object names

C Specification

void glGenVertexArrays(GLsizei  n,
 GLuint * arrays);

Parameters

n

+ Specifies the number of vertex array object names to generate. +

arrays

+ Specifies an array in which the generated vertex array object names are stored. +

Description

+ glGenVertexArrays returns n vertex array object names in arrays. + There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names + was in use immediately before the call to glGenVertexArrays. +

+ Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless + they are first deleted with glDeleteVertexArrays. +

+ The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, + but they acquire state and type only when they are first bound. +

Errors

+ GL_INVALID_VALUE is generated if n is negative. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGenerateMipmap.xml b/upstream-man-pages/man4/xhtml/glGenerateMipmap.xml new file mode 100644 index 0000000..d3a00ae --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGenerateMipmap.xml @@ -0,0 +1,95 @@ + + + +glGenerateMipmap - OpenGL 4 Reference Pages

Name

glGenerateMipmap — generate mipmaps for a specified texture target

C Specification

void glGenerateMipmap(GLenum target);

Parameters

target

+ Specifies the target to which the texture whose mimaps to generate is bound. target must + be GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY or + GL_TEXTURE_CUBE_MAP. +

Description

+ glGenerateMipmap generates mipmaps for the texture attached + to target of the active texture unit. For cube map textures, + a GL_INVALID_OPERATION error is generated if the texture + attached to target is not cube complete. +

+ Mipmap generation replaces texel array levels + + + + + level + base + + + + 1 + + + through + + + q + + + with arrays derived from the + + + + + level + base + + + + array, regardless of their previous contents. All other mimap arrays, + including the + + + + + level + base + + + + array, are left unchanged by this computation. +

+ The internal formats of the derived mipmap arrays all match those of the + + + + + level + base + + + + array. The contents of the derived arrays are computed by repeated, filtered + reduction of the + + + + + level + base + + + + array. For one- and two-dimensional texture arrays, each layer is filtered + independently. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted texture targets. +

+ GL_INVALID_OPERATION is generated if target is + GL_TEXTURE_CUBE_MAP and the texture bound to the GL_TEXTURE_CUBE_MAP + target of the active texture unit is not cube complete. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGet.xml b/upstream-man-pages/man4/xhtml/glGet.xml new file mode 100644 index 0000000..e992d92 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGet.xml @@ -0,0 +1,1450 @@ + + + +glGet - OpenGL 4 Reference Pages

Name

glGet — return the value or values of a selected parameter

C Specification

void glGetBooleanv(GLenum  pname,
 GLboolean *  params);

C Specification

void glGetDoublev(GLenum  pname,
 GLdouble *  params);

C Specification

void glGetFloatv(GLenum  pname,
 GLfloat *  params);

C Specification

void glGetIntegerv(GLenum  pname,
 GLint *  params);

C Specification

void glGetInteger64v(GLenum  pname,
 GLint64 *  params);

Parameters

pname

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

params

+ Returns the value or values of the specified parameter. +

C Specification

void glGetBooleani_v(GLenum  pname,
 GLuint  index,
 GLboolean *  data);

C Specification

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

C Specification

void glGetFloati_v(GLenum  pname,
 GLuint  index,
 GLfloat *  data);

C Specification

void glGetDoublei_v(GLenum  pname,
 GLuint  index,
 GLdouble *  data);

C Specification

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

Parameters

pname

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

index

+ Specifies the index of the particular element being queried. +

data

+ Returns the value or values of the specified parameter. +

Description

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

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

+ The following symbolic constants are accepted by pname: +

GL_ACTIVE_TEXTURE

+

+ params returns a single value indicating the active multitexture unit. + The initial value is GL_TEXTURE0. + See glActiveTexture. +

GL_ALIASED_LINE_WIDTH_RANGE

+

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

GL_ARRAY_BUFFER_BINDING

+

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

GL_BLEND

+

+ params returns a single boolean value indicating whether blending is + enabled. The initial value is GL_FALSE. + See glBlendFunc. +

GL_BLEND_COLOR

+

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

GL_BLEND_DST_ALPHA

+

+ params returns one value, + the symbolic constant identifying the alpha destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_DST_RGB

+

+ params returns one value, + the symbolic constant identifying the RGB destination blend + function. The initial value is GL_ZERO. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_EQUATION_RGB

+

+ params returns one value, a symbolic constant indicating whether + the RGB blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. +

GL_BLEND_EQUATION_ALPHA

+

+ params returns one value, a symbolic constant indicating whether + the Alpha blend equation is GL_FUNC_ADD, GL_FUNC_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT, GL_MIN or GL_MAX. + See glBlendEquationSeparate. +

GL_BLEND_SRC_ALPHA

+

+ params returns one value, + the symbolic constant identifying the alpha source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. +

GL_BLEND_SRC_RGB

+

+ params returns one value, + the symbolic constant identifying the RGB source blend function. The initial + value is GL_ONE. + See glBlendFunc and glBlendFuncSeparate. +

GL_COLOR_CLEAR_VALUE

+

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

GL_COLOR_LOGIC_OP

+

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

GL_COLOR_WRITEMASK

+

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

GL_COMPRESSED_TEXTURE_FORMATS

+

+ params returns a list of symbolic + constants of length GL_NUM_COMPRESSED_TEXTURE_FORMATS + indicating which compressed texture formats are available. + See glCompressedTexImage2D. +

GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum number of active shader storage blocks that may be accessed by a compute shader. +

GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum total number of active shader storage blocks that may be accessed by all active shaders. +

GL_MAX_COMPUTE_UNIFORM_BLOCKS

+

+ params returns one value, + the maximum number of uniform blocks per compute shader. The value must be at least 14. + See glUniformBlockBinding. +

GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS

+

+ params 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 glActiveTexture. +

GL_MAX_COMPUTE_UNIFORM_COMPONENTS

+

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

GL_MAX_COMPUTE_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to compute shaders. +

GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS

+

+ params returns a single value, the maximum number of atomic counter buffers that may be accessed by a compute shader. +

GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS

+

+ params 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 glUniform. +

GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS

+

+ params 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. +

GL_MAX_COMPUTE_WORK_GROUP_COUNT

+

+ Accepted by the indexed versions of glGet. + params 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. +

GL_MAX_COMPUTE_WORK_GROUP_SIZE

+

+ Accepted by the indexed versions of glGet. + params 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. +

GL_DISPATCH_INDIRECT_BUFFER_BINDING

+

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

GL_MAX_DEBUG_GROUP_STACK_DEPTH

+

+ params returns a single value, the maximum depth of the + debug message group stack. +

GL_DEBUG_GROUP_STACK_DEPTH

+

+ params returns a single value, the current depth of the + debug message group stack. +

GL_CONTEXT_FLAGS

+

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

GL_CULL_FACE

+

+ params returns a single boolean value indicating whether polygon culling + is enabled. The initial value is GL_FALSE. + See glCullFace. +

GL_CURRENT_PROGRAM

+

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

GL_DEPTH_CLEAR_VALUE

+

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

GL_DEPTH_FUNC

+

+ params returns one value, + the symbolic constant that indicates the depth comparison + function. The initial value is GL_LESS. + See glDepthFunc. +

GL_DEPTH_RANGE

+

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

GL_DEPTH_TEST

+

+ params returns a single boolean value indicating whether depth testing + of fragments is enabled. The initial value is GL_FALSE. + See glDepthFunc and glDepthRange. +

GL_DEPTH_WRITEMASK

+

+ params returns a single boolean value indicating if the depth buffer + is enabled for writing. The initial value is GL_TRUE. + See glDepthMask. +

GL_DITHER

+

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

GL_DOUBLEBUFFER

+

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

GL_DRAW_BUFFER

+

+ params returns one value, + a symbolic constant indicating which buffers are being drawn to. + See glDrawBuffer. The initial value is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. +

GL_DRAW_BUFFERi

+

+ params returns one value, + a symbolic constant indicating which buffers are being drawn to by the corresponding output color. + See glDrawBuffers. + The initial value of GL_DRAW_BUFFER0 is GL_BACK if there + are back buffers, otherwise it is GL_FRONT. The + initial values of draw buffers for all other output colors is GL_NONE. +

GL_DRAW_FRAMEBUFFER_BINDING

+

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

GL_READ_FRAMEBUFFER_BINDING

+

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

GL_ELEMENT_ARRAY_BUFFER_BINDING

+

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

GL_FRAGMENT_SHADER_DERIVATIVE_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the derivative accuracy hint + for fragment shaders. The initial value + is GL_DONT_CARE. + See glHint. +

GL_IMPLEMENTATION_COLOR_READ_FORMAT

+

+ params returns a single GLenum value indicating + the implementation's preferred pixel data format. + See glReadPixels. +

GL_IMPLEMENTATION_COLOR_READ_TYPE

+

+ params returns a single GLenum value indicating + the implementation's preferred pixel data type. + See glReadPixels. +

GL_LINE_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + lines is enabled. The initial value is GL_FALSE. + See glLineWidth. +

GL_LINE_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the line antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_LINE_WIDTH

+

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

GL_LAYER_PROVOKING_VERTEX

+

+ params 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 GL_PROVOKING_VERTEX, then the vertex + selection follows the convention specified by + glProvokingVertex. + If the value returned is equivalent to GL_FIRST_VERTEX_CONVENTION, then the + selection is always taken from the first vertex in the primitive. + If the value returned is equivalent to GL_LAST_VERTEX_CONVENTION, then the + selection is always taken from the last vertex in the primitive. + If the value returned is equivalent to GL_UNDEFINED_VERTEX, then the + selection is not guaranteed to be taken from any specific vertex in the primitive. +

GL_LINE_WIDTH_GRANULARITY

+

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

GL_LINE_WIDTH_RANGE

+

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

GL_LOGIC_OP_MODE

+

+ params returns one value, + a symbolic constant indicating the selected logic operation + mode. The initial value is GL_COPY. + See glLogicOp. +

GL_MAJOR_VERSION

+

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

GL_MAX_3D_TEXTURE_SIZE

+

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

GL_MAX_ARRAY_TEXTURE_LAYERS

+

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

GL_MAX_CLIP_DISTANCES

+

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

GL_MAX_COLOR_TEXTURE_SAMPLES

+

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

GL_MAX_COMBINED_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to all active shaders. +

GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS

+

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

GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS

+

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

GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_COMBINED_UNIFORM_BLOCKS

+

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

GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS

+

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

GL_MAX_CUBE_MAP_TEXTURE_SIZE

+

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

GL_MAX_DEPTH_TEXTURE_SAMPLES

+

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

GL_MAX_DRAW_BUFFERS

+

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

GL_MAX_DUALSOURCE_DRAW_BUFFERS

+

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

GL_MAX_ELEMENTS_INDICES

+

+ params returns one value, + the recommended maximum number of vertex array indices. + See glDrawRangeElements. +

GL_MAX_ELEMENTS_VERTICES

+

+ params returns one value, + the recommended maximum number of vertex array vertices. + See glDrawRangeElements. +

GL_MAX_FRAGMENT_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to fragment shaders. +

GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum number of active shader storage blocks that may be accessed by a fragment shader. +

GL_MAX_FRAGMENT_INPUT_COMPONENTS

+

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

GL_MAX_FRAGMENT_UNIFORM_COMPONENTS

+

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

GL_MAX_FRAGMENT_UNIFORM_VECTORS

+

+ params 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 + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS divided by 4 and must be at least 256. + See glUniform. +

GL_MAX_FRAGMENT_UNIFORM_BLOCKS

+

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

GL_MAX_FRAMEBUFFER_WIDTH

+

+ params returns one value, + the maximum width for a framebuffer that has no attachments, which must be at least 16384. + See glFramebufferParameter. +

GL_MAX_FRAMEBUFFER_HEIGHT

+

+ params returns one value, + the maximum height for a framebuffer that has no attachments, which must be at least 16384. + See glFramebufferParameter. +

GL_MAX_FRAMEBUFFER_LAYERS

+

+ params returns one value, + the maximum number of layers for a framebuffer that has no attachments, which must be at least 2048. + See glFramebufferParameter. +

GL_MAX_FRAMEBUFFER_SAMPLES

+

+ params returns one value, + the maximum samples in a framebuffer that has no attachments, which must be at least 4. + See glFramebufferParameter. +

GL_MAX_GEOMETRY_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to geometry shaders. +

GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum number of active shader storage blocks that may be accessed by a geometry shader. +

GL_MAX_GEOMETRY_INPUT_COMPONENTS

+

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

GL_MAX_GEOMETRY_OUTPUT_COMPONENTS

+

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

GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_GEOMETRY_UNIFORM_BLOCKS

+

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

GL_MAX_GEOMETRY_UNIFORM_COMPONENTS

+

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

GL_MAX_INTEGER_SAMPLES

+

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

GL_MIN_MAP_BUFFER_ALIGNMENT

+

+ params returns one value, + the minimum alignment in basic machine units of pointers returned fromglMapBuffer + and glMapBufferRange. This value must be a power of two and must + be at least 64. +

GL_MAX_LABEL_LENGTH

+

+ params returns one value, + the maximum length of a label that may be assigned to an object. + See glObjectLabel and + glObjectPtrLabel. +

GL_MAX_PROGRAM_TEXEL_OFFSET

+

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

GL_MIN_PROGRAM_TEXEL_OFFSET

+

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

GL_MAX_RECTANGLE_TEXTURE_SIZE

+

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

GL_MAX_RENDERBUFFER_SIZE

+

+ params returns one value. + The value indicates the maximum supported size for renderbuffers. + See glFramebufferRenderbuffer. +

GL_MAX_SAMPLE_MASK_WORDS

+

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

GL_MAX_SERVER_WAIT_TIMEOUT

+

+ params returns one value, + the maximum glWaitSync timeout interval. +

GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS

+

+ params returns one value, + the maximum number of shader storage buffer binding points on the context, which must be at least 8. +

GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to tessellation control shaders. +

GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to tessellation evaluation shaders. +

GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum number of active shader storage blocks that may be accessed by a tessellation control shader. +

GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum number of active shader storage blocks that may be accessed by a tessellation evaluation shader. +

GL_MAX_TEXTURE_BUFFER_SIZE

+

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

GL_MAX_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_TEXTURE_LOD_BIAS

+

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

GL_MAX_TEXTURE_SIZE

+

+ params returns one value. + The value gives a rough estimate of the largest texture that + the GL can handle. The value must be at least 1024. + Use a proxy texture target such as GL_PROXY_TEXTURE_1D or GL_PROXY_TEXTURE_2D + to determine if a texture is too large. + See glTexImage1D and glTexImage2D. +

GL_MAX_UNIFORM_BUFFER_BINDINGS

+

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

GL_MAX_UNIFORM_BLOCK_SIZE

+

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

GL_MAX_UNIFORM_LOCATIONS

+

+ params returns one value, + the maximum number of explicitly assignable uniform locations, which must be at least 1024. +

GL_MAX_VARYING_COMPONENTS

+

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

GL_MAX_VARYING_VECTORS

+

+ params returns one value, + the number 4-vectors for varying variables, which is equal to the value of + GL_MAX_VARYING_COMPONENTS and must be at least 15. +

GL_MAX_VARYING_FLOATS

+

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

GL_MAX_VERTEX_ATOMIC_COUNTERS

+

+ params returns a single value, the maximum number of atomic counters available to vertex shaders. +

GL_MAX_VERTEX_ATTRIBS

+

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

GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS

+

+ params returns one value, + the maximum number of active shader storage blocks that may be accessed by a vertex shader. +

GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS

+

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

GL_MAX_VERTEX_UNIFORM_COMPONENTS

+

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

GL_MAX_VERTEX_UNIFORM_VECTORS

+

+ params returns one value, + the maximum number of 4-vectors that may be held in uniform variable storage for the vertex + shader. The value of GL_MAX_VERTEX_UNIFORM_VECTORS is equal to the + value of GL_MAX_VERTEX_UNIFORM_COMPONENTS and must be at least + 256. +

GL_MAX_VERTEX_OUTPUT_COMPONENTS

+

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

GL_MAX_VERTEX_UNIFORM_BLOCKS

+

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

GL_MAX_VIEWPORT_DIMS

+

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

GL_MAX_VIEWPORTS

+

+ params returns one value, the maximum number + of simultaneous viewports that are supported. + The value must be at least 16. + See glViewportIndexed. +

GL_MINOR_VERSION

+

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

GL_NUM_COMPRESSED_TEXTURE_FORMATS

+

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

GL_NUM_EXTENSIONS

+

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

GL_NUM_PROGRAM_BINARY_FORMATS

+

+ params returns one value, + the number of program binary formats supported by the implementation. +

GL_NUM_SHADER_BINARY_FORMATS

+

+ params 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. +

GL_PACK_ALIGNMENT

+

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

GL_PACK_IMAGE_HEIGHT

+

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

GL_PACK_LSB_FIRST

+

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

GL_PACK_ROW_LENGTH

+

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

GL_PACK_SKIP_IMAGES

+

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

GL_PACK_SKIP_PIXELS

+

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

GL_PACK_SKIP_ROWS

+

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

GL_PACK_SWAP_BYTES

+

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

GL_PIXEL_PACK_BUFFER_BINDING

+

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

GL_PIXEL_UNPACK_BUFFER_BINDING

+

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

GL_POINT_FADE_THRESHOLD_SIZE

+

+ params returns one value, + the point size threshold for determining the point size. + See glPointParameter. +

GL_PRIMITIVE_RESTART_INDEX

+

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

GL_PROGRAM_BINARY_FORMATS

+

+ params an array of GL_NUM_PROGRAM_BINARY_FORMATS values, + indicating the proram binary formats supported by the implementation. +

GL_PROGRAM_PIPELINE_BINDING

+

+ params a single value, the name of the currently bound program pipeline + object, or zero if no program pipeline object is bound. + See glBindProgramPipeline. +

GL_PROVOKING_VERTEX

+

+ params returns one value, + the currently selected provoking vertex convention. The initial value is GL_LAST_VERTEX_CONVENTION. + See glProvokingVertex. +

GL_POINT_SIZE

+

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

GL_POINT_SIZE_GRANULARITY

+

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

GL_POINT_SIZE_RANGE

+

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

GL_POLYGON_OFFSET_FACTOR

+

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

GL_POLYGON_OFFSET_UNITS

+

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

GL_POLYGON_OFFSET_FILL

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in fill mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_OFFSET_LINE

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in line mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_OFFSET_POINT

+

+ params returns a single boolean value indicating whether polygon offset + is enabled for polygons in point mode. The initial value is GL_FALSE. + See glPolygonOffset. +

GL_POLYGON_SMOOTH

+

+ params returns a single boolean value indicating whether antialiasing of + polygons is enabled. The initial value is GL_FALSE. + See glPolygonMode. +

GL_POLYGON_SMOOTH_HINT

+

+ params returns one value, + a symbolic constant indicating the mode of the polygon antialiasing + hint. The initial value is GL_DONT_CARE. + See glHint. +

GL_READ_BUFFER

+

+ params returns one value, + a symbolic constant indicating which color buffer is selected for + reading. The initial value is GL_BACK if there is a back buffer, + otherwise it is GL_FRONT. + See + glReadPixels. +

GL_RENDERBUFFER_BINDING

+

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

GL_SAMPLE_BUFFERS

+

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

GL_SAMPLE_COVERAGE_VALUE

+

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

GL_SAMPLE_COVERAGE_INVERT

+

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

GL_SAMPLER_BINDING

+

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

GL_SAMPLES

+

+ params returns a single integer value indicating the coverage mask size. + See glSampleCoverage. +

GL_SCISSOR_BOX

+

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

GL_SCISSOR_TEST

+

+ params returns a single boolean value indicating whether scissoring is + enabled. The initial value is GL_FALSE. + See glScissor. +

GL_SHADER_COMPILER

+

+ params 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 GL_SHADER_COMPILER + will always be GL_TRUE. +

GL_SHADER_STORAGE_BUFFER_BINDING

+

+ When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_SHADER_STORAGE_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params 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 glBindBuffer, glBindBufferBase, and + glBindBufferRange. +

GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT

+

+ params returns a single value, the minimum required alignment + for shader storage buffer sizes and offset. The initial value is 1. + See glShaderStorateBlockBinding. +

GL_SHADER_STORAGE_BUFFER_START

+

+ When used with indexed variants of glGet (such as glGetInteger64i_v), + params 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 glBindBufferRange. +

GL_SHADER_STORAGE_BUFFER_SIZE

+

+ When used with indexed variants of glGet (such as glGetInteger64i_v), + params 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 glBindBufferRange. +

GL_SMOOTH_LINE_WIDTH_RANGE

+

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

GL_SMOOTH_LINE_WIDTH_GRANULARITY

+

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

GL_STENCIL_BACK_FAIL

+

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

GL_STENCIL_BACK_FUNC

+

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

GL_STENCIL_BACK_PASS_DEPTH_FAIL

+

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

GL_STENCIL_BACK_PASS_DEPTH_PASS

+

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

GL_STENCIL_BACK_REF

+

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

GL_STENCIL_BACK_VALUE_MASK

+

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

GL_STENCIL_BACK_WRITEMASK

+

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

GL_STENCIL_CLEAR_VALUE

+

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

GL_STENCIL_FAIL

+

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

GL_STENCIL_FUNC

+

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

GL_STENCIL_PASS_DEPTH_FAIL

+

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

GL_STENCIL_PASS_DEPTH_PASS

+

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

GL_STENCIL_REF

+

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

GL_STENCIL_TEST

+

+ params returns a single boolean value indicating whether stencil testing + of fragments is enabled. The initial value is GL_FALSE. + See glStencilFunc and glStencilOp. +

GL_STENCIL_VALUE_MASK

+

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

GL_STENCIL_WRITEMASK

+

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

GL_STEREO

+

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

GL_SUBPIXEL_BITS

+

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

GL_TEXTURE_BINDING_1D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_1D_ARRAY

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_1D_ARRAY. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D_ARRAY

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_ARRAY. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D_MULTISAMPLE

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_2D_MULTISAMPLE_ARRAY. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_3D

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_3D. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_BUFFER

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_BUFFER. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_CUBE_MAP

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_CUBE_MAP. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_BINDING_RECTANGLE

+

+ params returns a single value, the name of the texture + currently bound to the target GL_TEXTURE_RECTANGLE. The initial value is 0. + See glBindTexture. +

GL_TEXTURE_COMPRESSION_HINT

+

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

GL_TEXTURE_BUFFER_BINDING

+

+ params returns a single value, the name of the buffer object + currently bound to the GL_TEXTURE_BUFFER buffer binding point. The initial value is 0. + See glBindBuffer. +

GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT

+

+ params returns a single value, the minimum required alignment + for texture buffer sizes and offset. The initial value is 1. + See glUniformBlockBinding. +

GL_TIMESTAMP

+

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

GL_TRANSFORM_FEEDBACK_BUFFER_BINDING

+

+ When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_TRANSFORM_FEEDBACK_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed transform feedback attribute stream. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. +

GL_TRANSFORM_FEEDBACK_BUFFER_START

+

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

GL_TRANSFORM_FEEDBACK_BUFFER_SIZE

+

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

GL_UNIFORM_BUFFER_BINDING

+

+ When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns a single value, the name of the buffer object + currently bound to the target GL_UNIFORM_BUFFER. If no buffer object + is bound to this target, 0 is returned. + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns a single value, the name of the buffer object + bound to the indexed uniform buffer binding point. The initial value is 0 for all targets. + See glBindBuffer, glBindBufferBase, and + glBindBufferRange. +

GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT

+

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

GL_UNIFORM_BUFFER_SIZE

+

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

GL_UNIFORM_BUFFER_START

+

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

GL_UNPACK_ALIGNMENT

+

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

GL_UNPACK_IMAGE_HEIGHT

+

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

GL_UNPACK_LSB_FIRST

+

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

GL_UNPACK_ROW_LENGTH

+

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

GL_UNPACK_SKIP_IMAGES

+

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

GL_UNPACK_SKIP_PIXELS

+

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

GL_UNPACK_SKIP_ROWS

+

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

GL_UNPACK_SWAP_BYTES

+

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

GL_VERTEX_PROGRAM_POINT_SIZE

+

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

GL_VERTEX_BINDING_DIVISOR

+

+ Accepted by the indexed forms. params 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 index. +

GL_VERTEX_BINDING_OFFSET

+

+ Accepted by the indexed forms. params 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 index. +

GL_VERTEX_BINDING_STRIDE

+

+ Accepted by the indexed forms. params 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 index. +

GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET

+

+ params returns a single integer value containing the maximum offset that may be added to a vertex binding + offset. +

GL_MAX_VERTEX_ATTRIB_BINDINGS

+

+ params returns a single integer value containing the maximum number of vertex buffers that may be bound. +

GL_VIEWPORT

+

+ When used with non-indexed variants of glGet (such as glGetIntegerv), + params returns four values: + the + x + and + y + window coordinates of the viewport, followed by its width and height. + Initially the + x + and + y + window coordinates are both set to 0, + and the width and height are set to the width and height of the window into + which the GL will do its rendering. + See glViewport. + + When used with indexed variants of glGet (such as glGetIntegeri_v), + params returns four values: + the + x + and + y + window coordinates of the indexed viewport, followed by its width and height. + Initially the + x + and + y + window coordinates are both set to 0, + and the width and height are set to the width and height of the window into + which the GL will do its rendering. + See glViewportIndexedf. +

GL_VIEWPORT_BOUNDS_RANGE

+

+ params returns two values, the minimum and maximum viewport bounds range. + The minimum range should be at least [-32768, 32767]. +

GL_VIEWPORT_INDEX_PROVOKING_VERTEX

+

+ params 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 GL_PROVOKING_VERTEX, then the vertex + selection follows the convention specified by + glProvokingVertex. + If the value returned is equivalent to GL_FIRST_VERTEX_CONVENTION, then the + selection is always taken from the first vertex in the primitive. + If the value returned is equivalent to GL_LAST_VERTEX_CONVENTION, then the + selection is always taken from the last vertex in the primitive. + If the value returned is equivalent to GL_UNDEFINED_VERTEX, then the + selection is not guaranteed to be taken from any specific vertex in the primitive. +

GL_VIEWPORT_SUBPIXEL_BITS

+

+ params 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. +

GL_MAX_ELEMENT_INDEX

+

+ params returns a single value, the maximum index that may be specified during the + transfer of generic vertex attributes to the GL. +

+ Many of the boolean parameters can also be queried more easily using + glIsEnabled. +

Notes

+ The following parameters return the associated value for the active texture unit: + GL_TEXTURE_1D, GL_TEXTURE_BINDING_1D, + GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D and GL_TEXTURE_BINDING_3D. +

+ GL_MAX_VIEWPORTS, GL_VIEWPORT_SUBPIXEL_BITS, + GL_VIEWPORT_BOUNDS_RANGE, GL_LAYER_PROVOKING_VERTEX, + and GL_VIEWPORT_INDEX_PROVOKING_VERTEX + are available only if the GL version is 4.1 or greater. +

+ GL_MAX_VERTEX_ATOMIC_COUNTERS, + GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS, + GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS, + GL_MAX_GEOMETRY_ATOMIC_COUNTERS, + GL_MAX_FRAMGENT_ATOMIC_COUNTERS, and + GL_MIN_MAP_BUFFER_ALIGNMENT are accepted by pname + only if the GL version is 4.2 or greater. +

+ GL_MAX_ELEMENT_INDEX is accepted by pname only + if the GL version is 4.3 or greater. +

+ GL_MAX_COMPUTE_UNIFORM_BLOCKS, GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS, + GL_MAX_COMPUTE_UNIFORM_COMPONENTS, GL_MAX_COMPUTE_ATOMIC_COUNTERS, + GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS, GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS, + GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS, GL_MAX_COMPUTE_WORK_GROUP_COUNT, and + GL_MAX_COMPUTE_WORK_GROUP_SIZE and GL_DISPATCH_INDIRECT_BUFFER_BINDING are available only if the GL version + is 4.3 or greater. +

+ GL_MAX_DEBUG_GROUP_STACK_DEPTH, GL_DEBUG_GROUP_STACK_DEPTH and GL_MAX_LABEL_LENGTH are accepted only if + the GL version is 4.3 or greater. +

+ GL_MAX_UNIFORM_LOCATIONS is accepted only if the GL version is 4.3 or greater. +

+ GL_MAX_FRAMEBUFFER_WIDTH, GL_MAX_FRAMEBUFFER_HEIGHT, GL_MAX_FRAMEBUFFER_LAYERS, + and GL_MAX_FRAMEBUFFER_SAMPLES are available only if the GL version is 4.3 or greater. +

+ GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, + GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, + GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, and GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS are available + only if the GL version is 4.3 or higher. +

+ GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT is available only if the GL version is 4.3 or greater. +

+ GL_VERTEX_BINDING_DIVISOR, GL_VERTEX_BINDING_OFFSET, GL_VERTEX_BINDING_STRIDE, + GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET and GL_MAX_VERTEX_ATTRIB_BINDINGS are available only if + the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_VALUE is generated on any of glGetBooleani_v, + glGetIntegeri_v, or glGetInteger64i_v if + index is outside of the valid range for the indexed state target. +

Copyright

+ Copyright © 1991-2006 Silicon Graphics, Inc. + Copyright © 2010-2011 Khronos Group. + This document is licensed under the SGI Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveAtomicCounterBufferiv.xml b/upstream-man-pages/man4/xhtml/glGetActiveAtomicCounterBufferiv.xml new file mode 100644 index 0000000..eb44647 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveAtomicCounterBufferiv.xml @@ -0,0 +1,77 @@ + + + +glGetActiveAtomicCounterBufferiv - OpenGL 4 Reference Pages

Name

glGetActiveAtomicCounterBufferiv — retrieve information about the set of active atomic counter buffers for a program

C Specification

void glGetActiveAtomicCounterBufferiv(Gluint  program,
 GLuint  bufferIndex,
 GLenum  pname,
 GLint * params);

Parameters

program

+ The name of a program object from which to retrieve information. +

bufferIndex

+ Specifies index of an active atomic counter buffer. +

pname

+ Specifies which parameter of the atomic counter buffer to retrieve. +

params

+ Specifies the address of a variable into which to write the retrieved information. +

Description

+ glGetActiveAtomicCounterBufferiv retrieves information about the set of active + atomic counter buffers for a program object. program is the name of a program + object for which the command glLinkProgram + has been issued in the past. It is not necessary for program to have been linked + successfully. The link may have failed because the number of active atomic counters exceeded the limits. +

+ bufferIndex specifies the index of an active atomic counter buffer and must be in + the range zero to the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS minus one. The value + of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program indicates the + number of active atomic counter buffer and can be queried with + glGetProgram. +

+ If no error occurs, the parameter(s) specified by pname are returned in params. + If an error is generated, the contents of params are not modified. +

+ If pname is GL_ATOMIC_COUNTER_BUFFER_BINDING, then the index of the + counter buffer binding point associated with the active atomic counter buffer bufferIndex + for program is returned. +

+ If pname is GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE, then the implementation-dependent + minimum total buffer object size, in baseic machine units, required to hold all active atomic counters in the + atomic counter binding point identified by bufferIndex is returned. +

+ If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS, then the number of active + atomic counters for the atomic counter buffer identified by bufferIndex is returned. +

+ If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES, + then a list of the active atomic counter indices for the atomic counter buffer identified by bufferIndex + is returned. The number of elements that will be written into params is the value of + GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS for bufferIndex. +

+ If pname is GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER then a boolean value indicating + whether the atomic counter buffer identified by bufferIndex is referenced by the vertex, + tessellation control, tessellation evaluation, geometry, fragment or compute processing stages of program, + respectively, is returned. +

Notes

+ glGetActiveAtomicCounterBufferiv is available only if the + GL version is 4.2 or higher. +

+ GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER is available + only of the GL version is 4.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if program is not the name of a program + object for which glLinkProgram has been called in the past. +

+ GL_INVALID_VALUE is generated if bufferIndex is greater than or equal to + the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program. +

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveAttrib.xml b/upstream-man-pages/man4/xhtml/glGetActiveAttrib.xml new file mode 100644 index 0000000..782f3f2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveAttrib.xml @@ -0,0 +1,129 @@ + + + +glGetActiveAttrib - OpenGL 4 Reference Pages

Name

glGetActiveAttrib — Returns information about an active attribute variable for the specified program object

C Specification

void glGetActiveAttrib(GLuint  program,
 GLuint  index,
 GLsizei  bufSize,
 GLsizei * length,
 GLint * size,
 GLenum * type,
 GLchar * name);

Parameters

program

Specifies the program object to be + queried.

index

Specifies the index of the attribute variable + to be queried.

bufSize

Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name.

length

Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed.

size

Returns the size of the attribute + variable.

type

Returns the data type of the attribute + variable.

name

Returns a null terminated string containing + the name of the attribute variable.

Description

glGetActiveAttrib returns information + about an active attribute variable in the program object + specified by program. The number of + active attributes can be obtained by calling + glGetProgram + with the value GL_ACTIVE_ATTRIBUTES. A + value of 0 for index selects the first + active attribute variable. Permissible values for + index range from 0 to the number of + active attribute variables minus 1.

A vertex shader may use either built-in attribute + variables, user-defined attribute variables, or both. Built-in + attribute variables have a prefix of "gl_" and + reference conventional OpenGL vertex attribtes (e.g., + gl_Vertex, + gl_Normal, etc., see the OpenGL Shading + Language specification for a complete list.) User-defined + attribute variables have arbitrary names and obtain their values + through numbered generic vertex attributes. An attribute + variable (either built-in or user-defined) is considered active + if it is determined during the link operation that it may be + accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully.

The size of the character buffer required to store the + longest attribute variable name in + program can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned attribute name. The size of this character buffer + is passed in bufSize, and a pointer to + this character buffer is passed in + name.

glGetActiveAttrib returns the name of + the attribute variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument.

The type argument specifies a + pointer to a variable into which the attribute variable's data type + will be written. The symbolic + constants GL_FLOAT, + GL_FLOAT_VEC2, + GL_FLOAT_VEC3, + GL_FLOAT_VEC4, + GL_FLOAT_MAT2, + GL_FLOAT_MAT3, + GL_FLOAT_MAT4, + GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3, + GL_INT, + GL_INT_VEC2, + GL_INT_VEC3, + GL_INT_VEC4, + GL_UNSIGNED_INT_VEC, + GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3, + GL_UNSIGNED_INT_VEC4, + DOUBLE, + DOUBLE_VEC2, + DOUBLE_VEC3, + DOUBLE_VEC4, + DOUBLE_MAT2, + DOUBLE_MAT3, + DOUBLE_MAT4, + DOUBLE_MAT2x3, + DOUBLE_MAT2x4, + DOUBLE_MAT3x2, + DOUBLE_MAT3x4, + DOUBLE_MAT4x2, or + DOUBLE_MAT4x3 + may be returned. The + size argument will return the size of the + attribute, in units of the type returned in + type.

The list of active attribute variables may include both + built-in attribute variables (which begin with the prefix + "gl_") as well as user-defined attribute variable + names.

This function will return as much information as it can + about the specified active attribute variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active attribute variables in + program.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS.

glGetProgram + with argument GL_ACTIVE_ATTRIBUTES or + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveSubroutineName.xml b/upstream-man-pages/man4/xhtml/glGetActiveSubroutineName.xml new file mode 100644 index 0000000..65bafe9 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveSubroutineName.xml @@ -0,0 +1,44 @@ + + + +glGetActiveSubroutineName - OpenGL 4 Reference Pages

Name

glGetActiveSubroutineName — query the name of an active shader subroutine

C Specification

void glGetActiveSubroutineName(GLuint  program,
 GLenum  shadertype,
 GLuint  index,
 GLsizei  bufsize,
 GLsizei * length,
 GLchar * name);

Parameters

program

+ Specifies the name of the program containing the subroutine. +

shadertype

+ Specifies the shader stage from which to query the subroutine name. +

index

+ Specifies the index of the shader subroutine uniform. +

bufsize

+ Specifies the size of the buffer whose address is given in name. +

length

+ Specifies the address of a variable which is to receive the length of the shader subroutine uniform name. +

name

+ Specifies the address of an array into which the name of the shader subroutine uniform will be written. +

Description

+ glGetActiveSubroutineName queries the name of an active shader subroutine uniform from the + program object given in program. index specifies the index of + the shader subroutine uniform within the shader stage given by stage, and must between + zero and the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. +

+ The name of the selected subroutine is returned as a null-terminated string in name. The + actual number of characters written into name, not including the null-terminator, is + is returned in length. If length is NULL, + no length is returned. The maximum number of characters that may be written into name, + including the null-terminator, is given in bufsize. +

Errors

+ GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_ACTIVE_SUBROUTINES. +

+ GL_INVALID_VALUE is generated if program is not the name of an + existing program object. +

Associated Gets

+ glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniform.xml b/upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniform.xml new file mode 100644 index 0000000..5a35dba --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniform.xml @@ -0,0 +1,59 @@ + + + +glGetActiveSubroutineUniform - OpenGL 4 Reference Pages

Name

glGetActiveSubroutineUniform — query a property of an active shader subroutine uniform

C Specification

void glGetActiveSubroutineUniformiv(GLuint  program,
 GLenum  shadertype,
 GLuint  index,
 GLenum  pname,
 GLint * values);

Parameters

program

+ Specifies the name of the program containing the subroutine. +

shadertype

+ Specifies the shader stage from which to query for the subroutine parameter. shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

index

+ Specifies the index of the shader subroutine uniform. +

pname

+ Specifies the parameter of the shader subroutine uniform to query. pname + must be GL_NUM_COMPATIBLE_SUBROUTINES, GL_COMPATIBLE_SUBROUTINES, + GL_UNIFORM_SIZE or GL_UNIFORM_NAME_LENGTH. +

values

+ Specifies the address of a into which the queried value or values will be placed. +

Description

+ glGetActiveSubroutineUniform queries a parameter of an active shader subroutine uniform. + program contains the name of the program containing the uniform. shadertype + specifies the stage which which the uniform location, given by index, is valid. index + must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the + shader stage. +

+ If pname is GL_NUM_COMPATIBLE_SUBROUTINES, a single integer indicating the number + of subroutines that can be assigned to the uniform is returned in values. +

+ If pname is GL_COMPATIBLE_SUBROUTINES, an array of integers is returned in + values, with each integer specifying the index of an active subroutine that can be assigned to + the selected subroutine uniform. The number of integers returned is the same as the value returned for + GL_NUM_COMPATIBLE_SUBROUTINES. +

+ If pname is GL_UNIFORM_SIZE, a single integer is returned in values. + If the selected subroutine uniform is an array, the declared size of the array is returned; otherwise, one is returned. +

+ If pname is GL_UNIFORM_NAME_LENGTH, a single integer specifying the length of + the subroutine uniform name (including the terminating null character) is returned in values. +

Errors

+ GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. +

+ GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_ACTIVE_SUBROUTINES. +

+ GL_INVALID_VALUE is generated if program is not the name of an + existing program object. +

Associated Gets

+ glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORMS +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniformName.xml b/upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniformName.xml new file mode 100644 index 0000000..8dbea99 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveSubroutineUniformName.xml @@ -0,0 +1,53 @@ + + + +glGetActiveSubroutineUniformName - OpenGL 4 Reference Pages

Name

glGetActiveSubroutineUniformName — query the name of an active shader subroutine uniform

C Specification

void glGetActiveSubroutineUniformName(GLuint  program,
 GLenum  shadertype,
 GLuint  index,
 GLsizei  bufsize,
 GLsizei * length,
 GLchar * name);

Parameters

program

+ Specifies the name of the program containing the subroutine. +

shadertype

+ Specifies the shader stage from which to query for the subroutine parameter. shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

index

+ Specifies the index of the shader subroutine uniform. +

bufsize

+ Specifies the size of the buffer whose address is given in name. +

length

+ Specifies the address of a variable into which is written the number of characters copied into name. +

name

+ Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform. +

Description

+ glGetActiveSubroutineUniformName retrieves the name of an active shader subroutine uniform. + program contains the name of the program containing the uniform. shadertype + specifies the stage for which which the uniform location, given by index, is valid. index + must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the + shader stage. +

+ The uniform name is returned as a null-terminated string in name. The actual number of characters + written into name, excluding the null terminator is returned in length. + If length is NULL, no length is returned. The maximum number of characters + that may be written into name, including the null terminator, is specified by bufsize. + The length of the longest subroutine uniform name in program and shadertype is given + by the value of GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, which can be queried with + glGetProgramStage. +

Errors

+ GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. +

+ GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_ACTIVE_SUBROUTINES. +

+ GL_INVALID_VALUE is generated if program is not the name of an + existing program object. +

Associated Gets

+ glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORMS +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveUniform.xml b/upstream-man-pages/man4/xhtml/glGetActiveUniform.xml new file mode 100644 index 0000000..1c99cd9 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveUniform.xml @@ -0,0 +1,590 @@ + + + +glGetActiveUniform - OpenGL 4 Reference Pages

Name

glGetActiveUniform — Returns information about an active uniform variable for the specified program object

C Specification

void glGetActiveUniform(GLuint  program,
 GLuint  index,
 GLsizei  bufSize,
 GLsizei * length,
 GLint * size,
 GLenum * type,
 GLchar * name);

Parameters

program

Specifies the program object to be + queried.

index

Specifies the index of the uniform variable to + be queried.

bufSize

Specifies the maximum number of characters + OpenGL is allowed to write in the character buffer + indicated by name.

length

Returns the number of characters actually + written by OpenGL in the string indicated by + name (excluding the null + terminator) if a value other than + NULL is passed.

size

Returns the size of the uniform + variable.

type

Returns the data type of the uniform + variable.

name

Returns a null terminated string containing + the name of the uniform variable.

Description

glGetActiveUniform returns + information about an active uniform variable in the program + object specified by program. The number + of active uniform variables can be obtained by calling + glGetProgram + with the value GL_ACTIVE_UNIFORMS. A value + of 0 for index selects the first active + uniform variable. Permissible values for + index range from 0 to the number of + active uniform variables minus 1.

Shaders may use either built-in uniform variables, + user-defined uniform variables, or both. Built-in uniform + variables have a prefix of "gl_" and reference + existing OpenGL state or values derived from such state (e.g., + gl_DepthRangeParameters, see the OpenGL + Shading Language specification for a complete list.) + User-defined uniform variables have arbitrary names and obtain + their values from the application through calls to + glUniform. + A uniform variable (either built-in or user-defined) is + considered active if it is determined during the link operation + that it may be accessed during program execution. Therefore, + program should have previously been the + target of a call to + glLinkProgram, + but it is not necessary for it to have been linked + successfully.

The size of the character buffer required to store the + longest uniform variable name in program + can be obtained by calling + glGetProgram + with the value + GL_ACTIVE_UNIFORM_MAX_LENGTH. This value + should be used to allocate a buffer of sufficient size to store + the returned uniform variable name. The size of this character + buffer is passed in bufSize, and a + pointer to this character buffer is passed in + name.

glGetActiveUniform returns the name + of the uniform variable indicated by + index, storing it in the character buffer + specified by name. The string returned + will be null terminated. The actual number of characters written + into this buffer is returned in length, + and this count does not include the null termination character. + If the length of the returned string is not required, a value of + NULL can be passed in the + length argument.

The type + argument will return a pointer to the uniform variable's data + type. The symbolic constants returned for uniform types are shown in the + table below. +

+ Returned Symbolic Contant + + Shader Uniform Type +
+ GL_FLOAT + + float +
+ GL_FLOAT_VEC2 + + vec2 +
+ GL_FLOAT_VEC3 + + vec3 +
+ GL_FLOAT_VEC4 + + vec4 +
+ GL_DOUBLE + + double +
+ GL_DOUBLE_VEC2 + + dvec2 +
+ GL_DOUBLE_VEC3 + + dvec3 +
+ GL_DOUBLE_VEC4 + + dvec4 +
+ GL_INT + + int +
+ GL_INT_VEC2 + + ivec2 +
+ GL_INT_VEC3 + + ivec3 +
+ GL_INT_VEC4 + + ivec4 +
+ GL_UNSIGNED_INT + + unsigned int +
+ GL_UNSIGNED_INT_VEC2 + + uvec2 +
+ GL_UNSIGNED_INT_VEC3 + + uvec3 +
+ GL_UNSIGNED_INT_VEC4 + + uvec4 +
+ GL_BOOL + + bool +
+ GL_BOOL_VEC2 + + bvec2 +
+ GL_BOOL_VEC3 + + bvec3 +
+ GL_BOOL_VEC4 + + bvec4 +
+ GL_FLOAT_MAT2 + + mat2 +
+ GL_FLOAT_MAT3 + + mat3 +
+ GL_FLOAT_MAT4 + + mat4 +
+ GL_FLOAT_MAT2x3 + + mat2x3 +
+ GL_FLOAT_MAT2x4 + + mat2x4 +
+ GL_FLOAT_MAT3x2 + + mat3x2 +
+ GL_FLOAT_MAT3x4 + + mat3x4 +
+ GL_FLOAT_MAT4x2 + + mat4x2 +
+ GL_FLOAT_MAT4x3 + + mat4x3 +
+ GL_DOUBLE_MAT2 + + dmat2 +
+ GL_DOUBLE_MAT3 + + dmat3 +
+ GL_DOUBLE_MAT4 + + dmat4 +
+ GL_DOUBLE_MAT2x3 + + dmat2x3 +
+ GL_DOUBLE_MAT2x4 + + dmat2x4 +
+ GL_DOUBLE_MAT3x2 + + dmat3x2 +
+ GL_DOUBLE_MAT3x4 + + dmat3x4 +
+ GL_DOUBLE_MAT4x2 + + dmat4x2 +
+ GL_DOUBLE_MAT4x3 + + dmat4x3 +
+ GL_SAMPLER_1D + + sampler1D +
+ GL_SAMPLER_2D + + sampler2D +
+ GL_SAMPLER_3D + + sampler3D +
+ GL_SAMPLER_CUBE + + samplerCube +
+ GL_SAMPLER_1D_SHADOW + + sampler1DShadow +
+ GL_SAMPLER_2D_SHADOW + + sampler2DShadow +
+ GL_SAMPLER_1D_ARRAY + + sampler1DArray +
+ GL_SAMPLER_2D_ARRAY + + sampler2DArray +
+ GL_SAMPLER_1D_ARRAY_SHADOW + + sampler1DArrayShadow +
+ GL_SAMPLER_2D_ARRAY_SHADOW + + sampler2DArrayShadow +
+ GL_SAMPLER_2D_MULTISAMPLE + + sampler2DMS +
+ GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + sampler2DMSArray +
+ GL_SAMPLER_CUBE_SHADOW + + samplerCubeShadow +
+ GL_SAMPLER_BUFFER + + samplerBuffer +
+ GL_SAMPLER_2D_RECT + + sampler2DRect +
+ GL_SAMPLER_2D_RECT_SHADOW + + sampler2DRectShadow +
+ GL_INT_SAMPLER_1D + + isampler1D +
+ GL_INT_SAMPLER_2D + + isampler2D +
+ GL_INT_SAMPLER_3D + + isampler3D +
+ GL_INT_SAMPLER_CUBE + + isamplerCube +
+ GL_INT_SAMPLER_1D_ARRAY + + isampler1DArray +
+ GL_INT_SAMPLER_2D_ARRAY + + isampler2DArray +
+ GL_INT_SAMPLER_2D_MULTISAMPLE + + isampler2DMS +
+ GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + isampler2DMSArray +
+ GL_INT_SAMPLER_BUFFER + + isamplerBuffer +
+ GL_INT_SAMPLER_2D_RECT + + isampler2DRect +
+ GL_UNSIGNED_INT_SAMPLER_1D + + usampler1D +
+ GL_UNSIGNED_INT_SAMPLER_2D + + usampler2D +
+ GL_UNSIGNED_INT_SAMPLER_3D + + usampler3D +
+ GL_UNSIGNED_INT_SAMPLER_CUBE + + usamplerCube +
+ GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + usampler2DMS +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + usampler2DMSArray +
+ GL_UNSIGNED_INT_SAMPLER_BUFFER + + usamplerBuffer +
+ GL_UNSIGNED_INT_SAMPLER_2D_RECT + + usampler2DRect +
+ GL_IMAGE_1D + + image1D +
+ GL_IMAGE_2D + + image2D +
+ GL_IMAGE_3D + + image3D +
+ GL_IMAGE_2D_RECT + + image2DRect +
+ GL_IMAGE_CUBE + + imageCube +
+ GL_IMAGE_BUFFER + + imageBuffer +
+ GL_IMAGE_1D_ARRAY + + image1DArray +
+ GL_IMAGE_2D_ARRAY + + image2DArray +
+ GL_IMAGE_2D_MULTISAMPLE + + image2DMS +
+ GL_IMAGE_2D_MULTISAMPLE_ARRAY + + image2DMSArray +
+ GL_INT_IMAGE_1D + + iimage1D +
+ GL_INT_IMAGE_2D + + iimage2D +
+ GL_INT_IMAGE_3D + + iimage3D +
+ GL_INT_IMAGE_2D_RECT + + iimage2DRect +
+ GL_INT_IMAGE_CUBE + + iimageCube +
+ GL_INT_IMAGE_BUFFER + + iimageBuffer +
+ GL_INT_IMAGE_1D_ARRAY + + iimage1DArray +
+ GL_INT_IMAGE_2D_ARRAY + + iimage2DArray +
+ GL_INT_IMAGE_2D_MULTISAMPLE + + iimage2DMS +
+ GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY + + iimage2DMSArray +
+ GL_UNSIGNED_INT_IMAGE_1D + + uimage1D +
+ GL_UNSIGNED_INT_IMAGE_2D + + uimage2D +
+ GL_UNSIGNED_INT_IMAGE_3D + + uimage3D +
+ GL_UNSIGNED_INT_IMAGE_2D_RECT + + uimage2DRect +
+ GL_UNSIGNED_INT_IMAGE_CUBE + + uimageCube +
+ GL_UNSIGNED_INT_IMAGE_BUFFER + + uimageBuffer +
+ GL_UNSIGNED_INT_IMAGE_1D_ARRAY + + uimage1DArray +
+ GL_UNSIGNED_INT_IMAGE_2D_ARRAY + + uimage2DArray +
+ GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE + + uimage2DMS +
+ GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY + + uimage2DMSArray +
+ GL_UNSIGNED_INT_ATOMIC_COUNTER + + atomic_uint +

+

If one or more elements of an array are active, the name + of the array is returned in name, the + type is returned in type, and the + size parameter returns the highest array + element index used, plus one, as determined by the compiler + and/or linker. Only one active uniform variable will be reported + for a uniform array.

Uniform variables that are declared as structures or + arrays of structures will not be returned directly by this + function. Instead, each of these uniform variables will be + reduced to its fundamental components containing the + "." and "[]" operators such that each of the + names is valid as an argument to + glGetUniformLocation. + Each of these reduced uniform variables is counted as one active + uniform variable and is assigned an index. A valid name cannot + be a structure, an array of structures, or a subcomponent of a + vector or matrix.

The size of the uniform variable will be returned in + size. Uniform variables other than arrays + will have a size of 1. Structures and arrays of structures will + be reduced as described earlier, such that each of the names + returned will be a data type in the earlier list. If this + reduction results in an array, the size returned will be as + described for uniform arrays; otherwise, the size returned will + be 1.

The list of active uniform variables may include both + built-in uniform variables (which begin with the prefix + "gl_") as well as user-defined uniform variable + names.

This function will return as much information as it can + about the specified active uniform variable. If no information + is available, length will be 0, and + name will be an empty string. This + situation could occur if this function is called after a link + operation that failed. If an error occurs, the return values + length, size, + type, and name + will be unmodified.

Notes

+ The double types, GL_DOUBLE, GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, + GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, + GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, + GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, + and GL_DOUBLE_MAT4x3 are only available if the GL + version is 4.1 or higher. +

+ The image types, + GL_IMAGE_1D, + GL_IMAGE_2D, + GL_IMAGE_3D, + GL_IMAGE_2D_RECT, + GL_IMAGE_CUBE, + GL_IMAGE_BUFFER, + GL_IMAGE_1D_ARRAY, + GL_IMAGE_2D_ARRAY, + GL_IMAGE_2D_MULTISAMPLE, + GL_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_INT_IMAGE_1D, + GL_INT_IMAGE_2D, + GL_INT_IMAGE_3D, + GL_INT_IMAGE_2D_RECT, + GL_INT_IMAGE_CUBE, + GL_INT_IMAGE_BUFFER, + GL_INT_IMAGE_1D_ARRAY, + GL_INT_IMAGE_2D_ARRAY, + GL_INT_IMAGE_2D_MULTISAMPLE, + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_IMAGE_1D, + GL_UNSIGNED_INT_IMAGE_2D, + GL_UNSIGNED_INT_IMAGE_3D, + GL_UNSIGNED_INT_IMAGE_2D_RECT, + GL_UNSIGNED_INT_IMAGE_CUBE, + GL_UNSIGNED_INT_IMAGE_BUFFER, + GL_UNSIGNED_INT_IMAGE_1D_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + and the atomic counter type, + GL_UNSIGNED_INT_ATOMIC_COUNTER + are only available if the GL + version is 4.2 or higher. +

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + index is greater than or equal to the + number of active uniform variables in + program.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS.

glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveUniformBlock.xml b/upstream-man-pages/man4/xhtml/glGetActiveUniformBlock.xml new file mode 100644 index 0000000..47ab011 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveUniformBlock.xml @@ -0,0 +1,75 @@ + + + +glGetActiveUniformBlock - OpenGL 4 Reference Pages

Name

glGetActiveUniformBlock — query information about an active uniform block

C Specification

void glGetActiveUniformBlockiv(GLuint  program,
 GLuint  uniformBlockIndex,
 GLenum  pname,
 GLint  params);

Parameters

program

+ Specifies the name of a program containing the uniform block. +

uniformBlockIndex

+ Specifies the index of the uniform block within program. +

pname

+ Specifies the name of the parameter to query. +

params

+ Specifies the address of a variable to receive the result of the query. +

Description

+ glGetActiveUniformBlockiv retrieves information about an active uniform block within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. +

+ Upon success, the uniform block parameter(s) specified by pname are returned in params. If an error + occurs, nothing will be written to params. +

+ If pname is GL_UNIFORM_BLOCK_BINDING, then the index of the uniform buffer binding point + last selected by the uniform block specified by uniformBlockIndex for program is returned. If + no uniform block has been previously specified, zero is returned. +

+ If pname is GL_UNIFORM_BLOCK_DATA_SIZE, then the implementation-dependent minimum total buffer + object size, in basic machine units, required to hold all active uniforms in the uniform block identified by uniformBlockIndex + is returned. It is neither guaranteed nor expected that a given implementation will arrange uniform values as tightly packed in a buffer + object. The exception to this is the std140 uniform block layout, which guarantees specific packing behavior and does not + require the application to query for offsets and strides. In this case the minimum size may still be queried, even though it is determined in + advance based only on the uniform block declaration. +

+ If pname is GL_UNIFORM_BLOCK_NAME_LENGTH, then the total length (including the nul terminator) of + the name of the uniform block identified by uniformBlockIndex is returned. +

+ If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS, then the number of active uniforms in the uniform + block identified by uniformBlockIndex is returned. +

+ If pname is GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES, then a list of the active uniform indices + for the uniform block identified by uniformBlockIndex is returned. The number of elements that will be written to + params is the value of GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS for uniformBlockIndex. +

+ If pname is GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER, GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER, GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER, or GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER + then a boolean value indicating whether the uniform block identified by + uniformBlockIndex is referenced by the vertex, tessellation control, tessellation evaluation, geometry, fragment or compute + programming stages of program, respectively, is returned. +

Errors

+ GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. +

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

Notes

+ glGetActiveUniformBlockiv is available only if the GL version is 3.1 or greater. +

+ GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER is accepted only if the GL version is 4.3 + or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveUniformBlockName.xml b/upstream-man-pages/man4/xhtml/glGetActiveUniformBlockName.xml new file mode 100644 index 0000000..20654fe --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveUniformBlockName.xml @@ -0,0 +1,50 @@ + + + +glGetActiveUniformBlockName - OpenGL 4 Reference Pages

Name

glGetActiveUniformBlockName — retrieve the name of an active uniform block

C Specification

void glGetActiveUniformBlockName(GLuint  program,
 GLuint  uniformBlockIndex,
 GLsizei  bufSize,
 GLsizei * length,
 GLchar * uniformBlockName);

Parameters

program

+ Specifies the name of a program containing the uniform block. +

uniformBlockIndex

+ Specifies the index of the uniform block within program. +

bufSize

+ Specifies the size of the buffer addressed by uniformBlockName. +

length

+ Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. +

uniformBlockName

+ Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. +

Description

+ glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex + within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformBlockIndex is an active uniform block index of program, and must be less than the value + of GL_ACTIVE_UNIFORM_BLOCKS. +

+ Upon success, the name of the uniform block identified by unifomBlockIndex is returned into + uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, + excluding the nul terminator, is returned in length. If length is NULL, no length is returned. +

+ bufSize contains the maximum number of characters (including the nul terminator) that will be written into + uniformBlockName. +

+ If an error occurs, nothing will be written to uniformBlockName or length. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

+ GL_INVALID_VALUE is generated if uniformBlockIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORM_BLOCKS or is not the index of an active uniform block in program. +

Notes

+ glGetActiveUniformBlockName is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveUniformName.xml b/upstream-man-pages/man4/xhtml/glGetActiveUniformName.xml new file mode 100644 index 0000000..af29912 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveUniformName.xml @@ -0,0 +1,50 @@ + + + +glGetActiveUniformName - OpenGL 4 Reference Pages

Name

glGetActiveUniformName — query the name of an active uniform

C Specification

void glGetActiveUniformName(GLuint  program,
 GLuint  uniformIndex,
 GLsizei  bufSize,
 GLsizei * length,
 GLchar * uniformName);

Parameters

program

+ Specifies the program containing the active uniform index uniformIndex. +

uniformIndex

+ Specifies the index of the active uniform whose name to query. +

bufSize

+ Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. +

length

+ Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. +

uniformName

+ Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. +

Description

+ glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. + If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into + the array whose address is specified by uniformName. If length is not NULL, the number of characters + that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address + is specified in length. If length is NULL, no length is returned. The length of the longest uniform + name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with + glGetProgram. +

+ If glGetActiveUniformName is not successful, nothing is written to length or uniformName. +

+ program must be the name of a program for which the command glLinkProgram + has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because + the number of active uniforms exceeded the limit. +

+ uniformIndex must be an active uniform index of the program program, in the range zero to + GL_ACTIVE_UNIFORMS - 1. The value of GL_ACTIVE_UNIFORMS can be queried with + glGetProgram. +

Errors

+ GL_INVALID_VALUE is generated if uniformIndex is greater than or equal to the value + of GL_ACTIVE_UNIFORMS. +

+ GL_INVALID_VALUE is generated if bufSize is negative. +

+ GL_INVALID_VALUE is generated if program is not the name of a program object for which + glLinkProgram has been issued. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetActiveUniformsiv.xml b/upstream-man-pages/man4/xhtml/glGetActiveUniformsiv.xml new file mode 100644 index 0000000..8557402 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetActiveUniformsiv.xml @@ -0,0 +1,403 @@ + + + +glGetActiveUniformsiv - OpenGL 4 Reference Pages

Name

glGetActiveUniformsiv — Returns information about several active uniform variables for the specified program object

C Specification

void glGetActiveUniformsiv(GLuint  program,
 GLsizei  uniformCount,
 const GLuint * uniformIndices,
 GLenum  pname,
 GLint * params);

Parameters

program

Specifies the program object to be queried.

uniformCount

Specifies both the number of elements in the array of indices uniformIndices and the + number of parameters written to params upon successful return.

uniformIndices

Specifies the address of an array of uniformCount integers containing the indices of + uniforms within program whose parameter pname pname.

pname

Specifies the property of the each uniform in uniformIndices that should be + written into the corresponding element of params.

params

Specifies the address of an array of uniformCount integers which are to + receive the value of pname for each uniform in uniformIndices.

Description

+ glGetActiveUniformsiv queries the value of the parameter named pname + for each of the uniforms within program whose indices are specified in the array of + uniformCount unsigned integers uniformIndices. Upon success, + the value of the parameter for each uniform is written into the corresponding entry in the array whose + address is given in params. If an error is generated, nothing is written into + params. +

+ If pname is GL_UNIFORM_TYPE, then an array identifying the types + of uniforms specified by the corresponding array of uniformIndices is returned. The + returned types can be any of the values from the following table: +

+ Returned Symbolic Contant + + Shader Uniform Type +
+ GL_FLOAT + + float +
+ GL_FLOAT_VEC2 + + vec2 +
+ GL_FLOAT_VEC3 + + vec3 +
+ GL_FLOAT_VEC4 + + vec4 +
+ GL_DOUBLE + + double +
+ GL_DOUBLE_VEC2 + + dvec2 +
+ GL_DOUBLE_VEC3 + + dvec3 +
+ GL_DOUBLE_VEC4 + + dvec4 +
+ GL_INT + + int +
+ GL_INT_VEC2 + + ivec2 +
+ GL_INT_VEC3 + + ivec3 +
+ GL_INT_VEC4 + + ivec4 +
+ GL_UNSIGNED_INT + + unsigned int +
+ GL_UNSIGNED_INT_VEC2 + + uvec2 +
+ GL_UNSIGNED_INT_VEC3 + + uvec3 +
+ GL_UNSIGNED_INT_VEC4 + + uvec4 +
+ GL_BOOL + + bool +
+ GL_BOOL_VEC2 + + bvec2 +
+ GL_BOOL_VEC3 + + bvec3 +
+ GL_BOOL_VEC4 + + bvec4 +
+ GL_FLOAT_MAT2 + + mat2 +
+ GL_FLOAT_MAT3 + + mat3 +
+ GL_FLOAT_MAT4 + + mat4 +
+ GL_FLOAT_MAT2x3 + + mat2x3 +
+ GL_FLOAT_MAT2x4 + + mat2x4 +
+ GL_FLOAT_MAT3x2 + + mat3x2 +
+ GL_FLOAT_MAT3x4 + + mat3x4 +
+ GL_FLOAT_MAT4x2 + + mat4x2 +
+ GL_FLOAT_MAT4x3 + + mat4x3 +
+ GL_DOUBLE_MAT2 + + dmat2 +
+ GL_DOUBLE_MAT3 + + dmat3 +
+ GL_DOUBLE_MAT4 + + dmat4 +
+ GL_DOUBLE_MAT2x3 + + dmat2x3 +
+ GL_DOUBLE_MAT2x4 + + dmat2x4 +
+ GL_DOUBLE_MAT3x2 + + dmat3x2 +
+ GL_DOUBLE_MAT3x4 + + dmat3x4 +
+ GL_DOUBLE_MAT4x2 + + dmat4x2 +
+ GL_DOUBLE_MAT4x3 + + dmat4x3 +
+ GL_SAMPLER_1D + + sampler1D +
+ GL_SAMPLER_2D + + sampler2D +
+ GL_SAMPLER_3D + + sampler3D +
+ GL_SAMPLER_CUBE + + samplerCube +
+ GL_SAMPLER_1D_SHADOW + + sampler1DShadow +
+ GL_SAMPLER_2D_SHADOW + + sampler2DShadow +
+ GL_SAMPLER_1D_ARRAY + + sampler1DArray +
+ GL_SAMPLER_2D_ARRAY + + sampler2DArray +
+ GL_SAMPLER_1D_ARRAY_SHADOW + + sampler1DArrayShadow +
+ GL_SAMPLER_2D_ARRAY_SHADOW + + sampler2DArrayShadow +
+ GL_SAMPLER_2D_MULTISAMPLE + + sampler2DMS +
+ GL_SAMPLER_2D_MULTISAMPLE_ARRAY + + sampler2DMSArray +
+ GL_SAMPLER_CUBE_SHADOW + + samplerCubeShadow +
+ GL_SAMPLER_BUFFER + + samplerBuffer +
+ GL_SAMPLER_2D_RECT + + sampler2DRect +
+ GL_SAMPLER_2D_RECT_SHADOW + + sampler2DRectShadow +
+ GL_INT_SAMPLER_1D + + isampler1D +
+ GL_INT_SAMPLER_2D + + isampler2D +
+ GL_INT_SAMPLER_3D + + isampler3D +
+ GL_INT_SAMPLER_CUBE + + isamplerCube +
+ GL_INT_SAMPLER_1D_ARRAY + + isampler1DArray +
+ GL_INT_SAMPLER_2D_ARRAY + + isampler2DArray +
+ GL_INT_SAMPLER_2D_MULTISAMPLE + + isampler2DMS +
+ GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + isampler2DMSArray +
+ GL_INT_SAMPLER_BUFFER + + isamplerBuffer +
+ GL_INT_SAMPLER_2D_RECT + + isampler2DRect +
+ GL_UNSIGNED_INT_SAMPLER_1D + + usampler1D +
+ GL_UNSIGNED_INT_SAMPLER_2D + + usampler2D +
+ GL_UNSIGNED_INT_SAMPLER_3D + + usampler3D +
+ GL_UNSIGNED_INT_SAMPLER_CUBE + + usamplerCube +
+ GL_UNSIGNED_INT_SAMPLER_1D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_ARRAY + + usampler2DArray +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + + usampler2DMS +
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + + usampler2DMSArray +
+ GL_UNSIGNED_INT_SAMPLER_BUFFER + + usamplerBuffer +
+ GL_UNSIGNED_INT_SAMPLER_2D_RECT + + usampler2DRect +

+

+ If pname is GL_UNIFORM_SIZE, then an array identifying the + size of the uniforms specified by the corresponding array of uniformIndices is + returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. + For active uniforms that are arrays, the size is the number of active elements in the array; + for all other uniforms, the size is one. +

+ If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the + length, including the terminating null character, of the uniform name strings specified by the corresponding + array of uniformIndices is returned. +

+ If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the + the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices + is returned. The uniform block index of a uniform associated with the default uniform block is -1. +

+ If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer + offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic + machine units, relative to the beginning of the uniform block in the buffer object data store. + For atomic counter uniforms, the returned value will be its offset relative to the beginning of its active + atomic counter buffer. + For all other uniforms, -1 will be returned. +

+ If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the + stride between elements of each of the uniforms specified by the corresponding array of + uniformIndices is returned. + For uniforms in named uniform blocks and for uniforms declared as atomic counters, the stride is the difference, + in basic machine units, of consecutive elements in an array, or zero for uniforms not declared as an array. + For all other uniforms, a stride of -1 will be returned. +

+ If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride + between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms + specified by the corresponding array of uniformIndices is returned. The matrix stride of a + uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms + that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of + zero is returned. +

+ If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each + of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A + value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default + uniform block, or a non-matrix. +

+ If pname is GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX, then an array + identifying the active atomic counter buffer index of each of the uniforms specified by the corresponding array + of uniformIndices is returned. For uniforms other than atomic counters, the returned buffer + index is -1. The returned indices may be passed to glGetActiveAtomicCounterBufferiv + to query the properties of the associated buffer, and not necessarily the binding point specified in the uniform declaration. +

Notes

+ The double types, GL_DOUBLE, GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, + GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, + GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, + GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, + and GL_DOUBLE_MAT4x3 are only available if the GL + version is 4.1 or higher. +

+ GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX is only accepted by pname + if the GL version is 4.2 or higher. +

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + uniformCount is greater than or equal to the + value of GL_ACTIVE_UNIFORMS for + program.

GL_INVALID_ENUM is generated if pname + is not an accepted token.

Associated Gets

glGet + with argument GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS, + GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, or + GL_MAX_COMBINED_UNIFORM_COMPONENTS.

glGetProgram + with argument GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH.

glIsProgram

Copyright

+ Copyright © 2011 Khronos Group + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetAttachedShaders.xml b/upstream-man-pages/man4/xhtml/glGetAttachedShaders.xml new file mode 100644 index 0000000..97e3bd2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetAttachedShaders.xml @@ -0,0 +1,39 @@ + + + +glGetAttachedShaders - OpenGL 4 Reference Pages

Name

glGetAttachedShaders — Returns the handles of the shader objects attached to a program object

C Specification

void glGetAttachedShaders(GLuint  program,
 GLsizei  maxCount,
 GLsizei * count,
 GLuint * shaders);

Parameters

program

Specifies the program object to be + queried.

maxCount

Specifies the size of the array for storing + the returned object names.

count

Returns the number of names actually returned + in objects.

shaders

Specifies an array that is used to return the + names of attached shader objects.

Description

glGetAttachedShaders returns the + names of the shader objects attached to + program. The names of shader objects that + are attached to program will be returned + in shaders. The actual number of shader + names written into shaders is returned in + count. If no shader objects are attached + to program, count + is set to 0. The maximum number of shader names that may be + returned in shaders is specified by + maxCount.

If the number of names actually returned is not required + (for instance, if it has just been obtained by calling + glGetProgram), + a value of NULL may be passed for count. If + no shader objects are attached to + program, a value of 0 will be returned in + count. The actual number of attached + shaders can be obtained by calling + glGetProgram + with the value GL_ATTACHED_SHADERS.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + maxCount is less than 0.

Associated Gets

glGetProgram + with argument GL_ATTACHED_SHADERS

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetAttribLocation.xml b/upstream-man-pages/man4/xhtml/glGetAttribLocation.xml new file mode 100644 index 0000000..f72cd29 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetAttribLocation.xml @@ -0,0 +1,46 @@ + + + +glGetAttribLocation - OpenGL 4 Reference Pages

Name

glGetAttribLocation — Returns the location of an attribute variable

C Specification

GLint glGetAttribLocation(GLuint  program,
 const GLchar * name);

Parameters

program

Specifies the program object to be + queried.

name

Points to a null terminated string containing + the name of the attribute variable whose location is + to be queried.

Description

glGetAttribLocation queries the + previously linked program object specified by + program for the attribute variable + specified by name and returns the index + of the generic vertex attribute that is bound to that attribute + variable. If name is a matrix attribute + variable, the index of the first column of the matrix is + returned. If the named attribute variable is not an active + attribute in the specified program object or if + name starts with the reserved prefix + "gl_", a value of -1 is returned.

The association between an attribute variable name and a + generic attribute index can be specified at any time by calling + glBindAttribLocation. + Attribute bindings do not go into effect until + glLinkProgram + is called. After a program object has been linked successfully, + the index values for attribute variables remain fixed until the + next link command occurs. The attribute values can only be + queried after a link if the link was successful. + glGetAttribLocation returns the binding + that actually went into effect the last time + glLinkProgram + was called for the specified program object. Attribute bindings + that have been specified since the last link operation are not + returned by glGetAttribLocation.

Errors

GL_INVALID_OPERATION is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

Associated Gets

glGetActiveAttrib + with argument program and the index of an + active attribute

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetBufferParameter.xml b/upstream-man-pages/man4/xhtml/glGetBufferParameter.xml new file mode 100644 index 0000000..24afadc --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetBufferParameter.xml @@ -0,0 +1,65 @@ + + + +glGetBufferParameteriv - OpenGL 4 Reference Pages

Name

glGetBufferParameteriv — return parameters of a buffer object

C Specification

void glGetBufferParameteriv(GLenum  target,
 GLenum  value,
 GLint *  data);
void glGetBufferParameteri64v(GLenum  target,
 GLenum  value,
 GLint64 *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

value

+ Specifies the symbolic name of a buffer object parameter. + Accepted values are GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, + GL_BUFFER_SIZE, or GL_BUFFER_USAGE. +

data

+ Returns the requested parameter. +

Description

+ glGetBufferParameteriv returns in data a selected parameter of the buffer object + specified by target. +

+ value names a specific buffer object parameter, as follows: +

GL_BUFFER_ACCESS

+ params returns the access policy set while mapping the buffer object. + The initial value is GL_READ_WRITE. +

GL_BUFFER_MAPPED

+ params returns a flag indicating whether the buffer object is currently + mapped. The initial value is GL_FALSE. +

GL_BUFFER_SIZE

+ params returns the size of the buffer object, measured in bytes. + The initial value is 0. +

GL_BUFFER_USAGE

+ params returns the buffer object's usage pattern. The initial value is + GL_STATIC_DRAW. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

+ The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or value is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetBufferPointerv.xml b/upstream-man-pages/man4/xhtml/glGetBufferPointerv.xml new file mode 100644 index 0000000..b565e76 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetBufferPointerv.xml @@ -0,0 +1,51 @@ + + + +glGetBufferPointerv - OpenGL 4 Reference Pages

Name

glGetBufferPointerv — return the pointer to a mapped buffer object's data store

C Specification

void glGetBufferPointerv(GLenum  target,
 GLenum  pname,
 GLvoid **  params);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

pname

+ Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER. +

params

+ Returns the pointer value specified by pname. +

Description

+ glGetBufferPointerv returns pointer information. pname is a symbolic constant + indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer + to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. + params is a pointer to a location in which to place the returned pointer value. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ The initial value for the pointer is NULL. +

+ The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

See Also

+ glBindBuffer, + glMapBuffer +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetBufferSubData.xml b/upstream-man-pages/man4/xhtml/glGetBufferSubData.xml new file mode 100644 index 0000000..b686075 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetBufferSubData.xml @@ -0,0 +1,63 @@ + + + +glGetBufferSubData - OpenGL 4 Reference Pages

Name

glGetBufferSubData — returns a subset of a buffer object's data store

C Specification

void glGetBufferSubData(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  size,
 GLvoid *  data);

Parameters

target

+ Specifies the target buffer object. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, or + GL_UNIFORM_BUFFER. +

offset

+ Specifies the offset into the buffer object's data store from which data will be returned, + measured in bytes. +

size

+ Specifies the size in bytes of the data store region being returned. +

data

+ Specifies a pointer to the location where buffer object data is returned. +

Description

+ glGetBufferSubData returns some or all of the data from the buffer object currently + bound to target. Data starting at byte offset offset and + extending for size bytes is copied from the data store to the memory pointed to by + data. An error is thrown if the buffer object is currently mapped, or if + offset and size together define a range beyond the bounds + of the buffer object's data store. +

Notes

+ If an error is generated, + no change is made to the contents of data. +

+ The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER target is available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER. +

+ GL_INVALID_VALUE is generated if offset or + size is negative, or if together they define a region of memory + that extends beyond the buffer object's allocated data store. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if the buffer object being queried is mapped. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetCompressedTexImage.xml b/upstream-man-pages/man4/xhtml/glGetCompressedTexImage.xml new file mode 100644 index 0000000..ce0d662 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetCompressedTexImage.xml @@ -0,0 +1,90 @@ + + + +glGetCompressedTexImage - OpenGL 4 Reference Pages

Name

glGetCompressedTexImage — return a compressed texture image

C Specification

void glGetCompressedTexImage(GLenum  target,
 GLint  lod,
 GLvoid *  img);

Parameters

target

+ Specifies which texture is to be obtained. + GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. +

lod

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

img

+ Returns the compressed texture image. +

Description

+ glGetCompressedTexImage returns the compressed texture image associated with target and lod + into img. img should be an array of + GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes. + target specifies whether the desired texture image was one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_2D or any of GL_TEXTURE_CUBE_MAP_*), or + glTexImage3D (GL_TEXTURE_3D). + lod specifies the level-of-detail number of the desired image. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. +

+ To minimize errors, first verify that the texture is compressed by calling + glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If + the texture is compressed, then determine the amount of memory required to + store the compressed texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the + internal format of the texture by calling glGetTexLevelParameter with + argument GL_TEXTURE_INTERNAL_FORMAT. + To store the texture for later use, associate the internal format and size + with the retrieved texture image. These data can be used by the respective + texture or subtexture loading routine used for loading target textures. +

Errors

+ GL_INVALID_VALUE is generated if lod is less than zero or greater + than the maximum number of LODs permitted by the implementation. +

+ GL_INVALID_OPERATION is generated if glGetCompressedTexImage is used to retrieve a + texture that is in an uncompressed internal format. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

Associated Gets

+ glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED +

+ glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE +

+ glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetDebugMessageLog.xml b/upstream-man-pages/man4/xhtml/glGetDebugMessageLog.xml new file mode 100644 index 0000000..07cb150 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetDebugMessageLog.xml @@ -0,0 +1,66 @@ + + + +glGetDebugMessageLog - OpenGL 4 Reference Pages

Name

glGetDebugMessageLog — retrieve messages from the debug message log

C Specification

GLuint glGetDebugMessageLog(GLuint  count,
 GLsizei  bufSize,
 GLenum * sources,
 Glenum * types,
 GLuint * ids,
 GLenum * severities,
 GLsizei * lengths,
 GLchar * messageLog);

Parameters

count

+ The number of debug messages to retrieve from the log. +

bufSize

+ The size of the buffer whose address is given by messageLog. +

sources

+ The address of an array of variables to receive the sources of the retrieved messages. +

types

+ The address of an array of variables to receive the types of the retrieved messages. +

ids

+ The address of an array of unsigned integers to receive the ids of the retrieved messages. +

severities

+ The address of an array of variables to receive the severites of the retrieved messages. +

lengths

+ The address of an array of variables to receive the lengths of the received messages. +

messageLog

+ The address of an array of characters that will receive the messages. +

Description

+ glGetDebugMessageLog retrieves messages from the debug message log. A maximum of + count messages are retrieved from the log. If sources + is not NULL then the source of each message is written into up to count elements + of the array. If types + is not NULL then the type of each message is written into up to count elements + of the array. If id + is not NULL then the identifier of each message is written into up to count elements + of the array. If severities + is not NULL then the severity of each message is written into up to count elements + of the array. If lengths + is not NULL then the length of each message is written into up to count elements + of the array. +

+ messageLog specifies the address of a character array into which the debug messages + will be written. Each message will be concatenated onto the array starting at the first element of messageLog. + bufSize specifies the size of the array messageLog. If a message will not + fit into the remaining space in messageLog then the function terminates and returns the number + of messages written so far, which may be zero. +

+ If glGetDebugMessageLog returns zero then no messages are present in the debug log, or there + was not enough space in messageLog to retrieve the first message in the queue. If messageLog + is NULL then no messages are written and the value of bufSize is ignored. +

Notes

+ Although debug messages may be enabled in a non-debug context, the quantity and detail of such messages may be substantially + inferior to those in a debug context. In particular, a valid implementation of the debug message queue in a non-debug context + may produce no messages at all. +

Errors

+ GL_INVALID_VALUE is generated if count or bufSize is negative. +

Associated Gets

+ glGet with argument GL_DEBUG_LOGGED_MESSAGES +

+ glGet with argument GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH +

+ glGet with argument GL_MAX_DEBUG_MESSAGE_LENGTH +

+ glGet with argument GL_MAX_DEBUG_LOGGED_MESSAGES +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetError.xml b/upstream-man-pages/man4/xhtml/glGetError.xml new file mode 100644 index 0000000..c900be1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetError.xml @@ -0,0 +1,77 @@ + + + +glGetError - OpenGL 4 Reference Pages

Name

glGetError — return error information

C Specification

GLenum glGetError( void);

Description

+ glGetError returns the value of the error flag. + Each detectable error is assigned a numeric code and symbolic name. + When an error occurs, + the error flag is set to the appropriate error code value. + No other errors are recorded until glGetError is called, + the error code is returned, + and the flag is reset to GL_NO_ERROR. + If a call to glGetError returns GL_NO_ERROR, + there has been no detectable error since the last call to glGetError, + or since the GL was initialized. +

+ To allow for distributed implementations, + there may be several error flags. + If any single error flag has recorded an error, + the value of that flag is returned + and that flag is reset to GL_NO_ERROR + when glGetError is called. + If more than one flag has recorded an error, + glGetError returns and clears an arbitrary error flag value. + Thus, glGetError should always be called in a loop, + until it returns GL_NO_ERROR, + if all error flags are to be reset. +

+ Initially, all error flags are set to GL_NO_ERROR. +

+ The following errors are currently defined: +

GL_NO_ERROR

+ No error has been recorded. + The value of this symbolic constant is guaranteed to be 0. +

GL_INVALID_ENUM

+ An unacceptable value is specified for an enumerated argument. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_VALUE

+ A numeric argument is out of range. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_OPERATION

+ The specified operation is not allowed in the current state. + The offending command is ignored + and has no other side effect than to set the error flag. +

GL_INVALID_FRAMEBUFFER_OPERATION

+ The framebuffer object is not complete. The offending command + is ignored and has no other side effect than to set the error flag. +

GL_OUT_OF_MEMORY

+ There is not enough memory left to execute the command. + The state of the GL is undefined, + except for the state of the error flags, + after this error is recorded. +

GL_STACK_UNDERFLOW

+ An attempt has been made to perform an operation that would + cause an internal stack to underflow. +

GL_STACK_OVERFLOW

+ An attempt has been made to perform an operation that would + cause an internal stack to overflow. +

+ When an error flag is set, + results of a GL operation are undefined only if GL_OUT_OF_MEMORY + has occurred. + In all other cases, + the command generating the error is ignored and has no effect on the GL state + or frame buffer contents. + If the generating command returns a value, it returns 0. + If glGetError itself generates an error, it returns 0. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. + Copyright © 2012 + Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetFragDataIndex.xml b/upstream-man-pages/man4/xhtml/glGetFragDataIndex.xml new file mode 100644 index 0000000..9dadd2b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetFragDataIndex.xml @@ -0,0 +1,26 @@ + + + +glGetFragDataIndex - OpenGL 4 Reference Pages

Name

glGetFragDataIndex — query the bindings of color indices to user-defined varying out variables

C Specification

GLint glGetFragDataIndex(GLuint  program,
 const char *  name);

Parameters

program

+ The name of the program containing varying out variable whose binding to query +

name

+ The name of the user-defined varying out variable whose index to query +

Description

+ glGetFragDataIndex returns the index of the fragment color to which the variable name + was bound when the program object program was last linked. If name is not a varying out + variable of program, or if an error occurs, -1 will be returned. +

Notes

+ glGetFragDataIndex is available only if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetFragDataLocation.xml b/upstream-man-pages/man4/xhtml/glGetFragDataLocation.xml new file mode 100644 index 0000000..803706f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetFragDataLocation.xml @@ -0,0 +1,24 @@ + + + +glGetFragDataLocation - OpenGL 4 Reference Pages

Name

glGetFragDataLocation — query the bindings of color numbers to user-defined varying out variables

C Specification

GLint glGetFragDataLocation(GLuint  program,
 const char *  name);

Parameters

program

+ The name of the program containing varying out variable whose binding to query +

name

+ The name of the user-defined varying out variable whose binding to query +

Description

+ glGetFragDataLocation retrieves the assigned color number binding for the user-defined + varying out variable name for program program. program + must have previously been linked. name must be a null-terminated string. If name + is not the name of an active user-defined varying out fragment shader variable within program, -1 will + be returned. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetFramebufferAttachmentParameter.xml b/upstream-man-pages/man4/xhtml/glGetFramebufferAttachmentParameter.xml new file mode 100644 index 0000000..2aa2814 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetFramebufferAttachmentParameter.xml @@ -0,0 +1,114 @@ + + + +glGetFramebufferAttachmentParameteriv - OpenGL 4 Reference Pages

Name

glGetFramebufferAttachmentParameteriv — retrieve information about attachments of a bound framebuffer object

C Specification

void glGetFramebufferAttachmentParameteriv(GLenum  target,
 GLenum  attachment,
 GLenum  pname,
 GLint * params);

Parameters

target

+ Specifies the target of the query operation. +

attachment

+ Specifies the attachment within target +

pname

+ Specifies the parameter of attachment to query. +

params

+ Specifies the address of a variable receive the value of pname for attachment. +

Description

+ glGetFramebufferAttachmentParameter returns information about attachments of a bound framebuffer + object. target specifies the framebuffer binding point and must be GL_DRAW_FRAMEBUFFER, + GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent + to GL_DRAW_FRAMEBUFFER. +

+ If the default framebuffer is bound to target then attachment must be one of + GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, or + GL_BACK_RIGHT, identifying a color buffer, GL_DEPTH, identifying the depth buffer, + or GL_STENCIL, identifying the stencil buffer. +

+ If a framebuffer object is bound, then attachment must be one of GL_COLOR_ATTACHMENTi, + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT, or GL_DEPTH_STENCIL_ATTACHMENT. + i in GL_COLOR_ATTACHMENTi must be in the range zero to the value of + GL_MAX_COLOR_ATTACHMENTS - 1. +

+ If attachment is GL_DEPTH_STENCIL_ATTACHMENT and different objects are bound + to the depth and stencil attachment points of target the query will fail. If the same object + is bound to both attachment points, information about that object will be returned. +

+ Upon successful return from glGetFramebufferAttachmentParameteriv, if pname is + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, then params will contain one of GL_NONE, + GL_FRAMEBUFFER_DEFAULT, GL_TEXTURE, or GL_RENDERBUFFER, identifying the type of + object which contains the attached image. Other values accepted for pname depend on the type of object, as described below. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE, no framebuffer is bound to + target. In this case querying pname GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME + will return zero, and all other queries will generate an error. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is not GL_NONE, these queries apply to all other + framebuffer types: +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE, GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE, GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE, + or GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE, then params will contain the number + of bits in the corresponding red, green, blue, alpha, depth, or stencil component of the specified attachment. Zero is returned + if the requested component is not present in attachment. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, params will + contain the format of components of the specified attachment, one of GL_FLOAT, GL_INT, + GL_UNSIGNED_INT, GL_SIGNED_NORMALIZED, or GL_UNSIGNED_NORMALIZED + for floating-point, signed integer, unsigned integer, signed normalized fixed-point, or unsigned normalized fixed-point components + respectively. Only color buffers may have integer components. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING, param will + contain the encoding of components of the specified attachment, one of GL_LINEAR or GL_SRGB + for linear or sRGB-encoded components, respectively. Only color buffer components may be sRGB-encoded; such components + are treated as described in sections 4.1.7 and 4.1.8. For the default framebuffer, color encoding is determined by the implementation. + For framebuffer objects, components are sRGB-encoded if the internal format of a color attachment is one of the color-renderable SRGB + formats. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_RENDERBUFFER, then: +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, params will contain + the name of the renderbuffer object which contains the attached image. +

+ If the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_TEXTURE, then: +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, then params will + contain the name of the texture object which contains the attached image. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL, then params + will contain the mipmap level of the texture object which contains the attached image. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a cube map texture, then params will contain the cube map + face of the cubemap texture object which contains the attached image. Otherwise params will contain the value + zero. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER and the texture object named + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a layer of a three-dimensional texture or a one-or two-dimensional + array texture, then params will contain the number of the texture layer which contains the attached image. + Otherwise params will contain the value zero. +

  • + If pname is GL_FRAMEBUFFER_ATTACHMENT_LAYERED, then params will + contain GL_TRUE if an entire level of a three-dimesional texture, cube map texture, or one-or two-dimensional + array texture is attached. Otherwise, params will contain GL_FALSE. +

+ Any combinations of framebuffer type and pname not described above will generate an error. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted tokens. +

+ GL_INVALID_ENUM is generated if pname is not valid for the value of + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE. +

+ GL_INVALID_OPERATION is generated if attachment is not the accepted values + for target. +

+ GL_INVALID_OPERATION is generated if attachment is GL_DEPTH_STENCIL_ATTACHMENT + and different objects are bound to the depth and stencil attachment points of target. +

+ GL_INVALID_OPERATION is generated if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is + GL_NONE and pname is not GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetFramebufferParameter.xml b/upstream-man-pages/man4/xhtml/glGetFramebufferParameter.xml new file mode 100644 index 0000000..610889f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetFramebufferParameter.xml @@ -0,0 +1,58 @@ + + + +glGetFramebufferParameter - OpenGL 4 Reference Pages

Name

glGetFramebufferParameter — retrieve a named parameter from a framebuffer

C Specification

void glGetFramebufferParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ The target of the operation, which must be GL_READ_FRAMEBUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. +

pname

+ A token indicating the parameter to be retrieved. +

params

+ The address of a variable to receive the value of the parameter named pname. +

Description

+ glGetFramebufferParameter retrieves the current value of the parameter + named pname from the framebuffer bound to target. + target must be GL_READ_FRAMEBFUFFER, + GL_DRAW_FRAMEBUFFER or GL_FRAMEBUFFER. The + token GL_FRAMEBUFFER is treated as GL_DRAW_FRAMEBUFFER. + A non-default framebuffer must be bound to target. +

+ pname specifies the parameter to be retrieved. The values retrieved from + the framebuffer are written into the variable whose address is given by params. + The following symbols are accepted in pname: +

GL_FRAMEBUFFER_DEFAULT_WIDTH

+ The value of GL_FRAMEBUFFER_DEFAULT_WIDTH for the framebuffer is written to the + single integer variable whose address is given by params. +

GL_FRAMEBUFFER_DEFAULT_HEIGHT

+ The value of GL_FRAMEBUFFER_DEFAULT_HEIGHT for the framebuffer is written to the + single integer variable whose address is given by params. +

GL_FRAMEBUFFER_DEFAULT_LAYERS

+ The value of GL_FRAMEBUFFER_DEFAULT_LAYERS for the framebuffer is written to the + single integer variable whose address is given by params. +

GL_FRAMEBUFFER_DEFAULT_SAMPLES

+ The value of GL_FRAMEBUFFER_DEFAULT_SAMPLES for the framebuffer is written to the + single integer variable whose address is given by params. +

GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS

+ If the value of GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS for the framebuffer is GL_TRUE + then the single integer variable whose address is in params is set to one, + otherwise it is set to zero. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the accepted + framebuffer targets. +

+ GL_INVALID_ENUM is generated if pname is not one of the accepted + parameter names. +

+ GL_INVALID_OPERATION is generated if the default framebuffer is bound to target. +

+ params should be the address of a variable to which the client has write access otherwise + undefined behavior, including process termination may occur. +

Associated Gets

+ glGetFramebufferParameteriv. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetInternalFormativ.xml b/upstream-man-pages/man4/xhtml/glGetInternalFormativ.xml new file mode 100644 index 0000000..1da1844 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetInternalFormativ.xml @@ -0,0 +1,312 @@ + + + +glGetInternalFormativ - OpenGL 4 Reference Pages

Name

glGetInternalFormativ — retrieve information about implementation-dependent support for internal formats

C Specification

void glGetInternalFormativ(GLenum  target,
 GLenum  internalformat,
 GLenum  pname,
 GLsizei  bufSize,
 GLint * params);
void glGetInternalFormati64v(GLenum  target,
 GLenum  internalformat,
 GLenum  pname,
 GLsizei  bufSize,
 GLint64 * params);

Parameters

target

+ Indicates the usage of the internal format. target must be GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_BUFFER, + GL_RENDERBUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. +

internalformat

+ Specifies the internal format about which to retrieve information. +

pname

+ Specifies the type of information to query. +

bufSize

+ Specifies the maximum number of basic machine units that may be written to params by the function. +

params

+ Specifies the address of a variable into which to write the retrieved information. +

Description

+ glGetInternalFormativ and glGetInternalFormati64v retrieve information about implementation-dependent support for + internal formats. target indicates the target with which the internal format will + be used and must be one of GL_RENDERBUFFER, GL_TEXTURE_2D_MULTISAMPLE, + or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, corresponding to usage as a renderbuffer, two-dimensional + multisample texture or two-dimensional multisample array texture, respectively. +

+ internalformat specifies the internal format about which to retrieve information and + must be a color-renderable, depth-renderable or stencil-renderable format. +

+ The information retrieved will be written to memory addressed by the pointer specified in params. No + more than bufSize basic machine units will be written to this memory. +

+ If pname is GL_NUM_SAMPLE_COUNTS, the number of sample counts that would be + returned by querying GL_SAMPLES will be returned in params. +

+ If pname is GL_SAMPLES, the sample counts supported for internalformat + and target are written into params in descending numeric order. Only positive values are returned. + Querying GL_SAMPLES with bufSize of one will return just the maximum supported number of + samples for this format. The maximum value in GL_SAMPLES is guaranteed to be at least the lowest of the following: +

  • The value of GL_MAX_INTEGER_SAMPLES if internalformat is a signed or unsigned integer format.
  • The value of GL_MAX_DEPTH_TEXTURE_SAMPLES if internalformat is a depth- or stencil-renderable format and + target is GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_2D_MULTISAMPLE_ARRAY.
  • The value of GL_MAX_COLOR_TEXTURE_SAMPLES if internalformat is a color-renderable format and + target is GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY.
  • The value of GL_MAX_SAMPLES.

+

+ If pname is GL_INTERNALFORMAT_SUPPORTED, params is set to GL_TRUE if internalFormat + is a supported internal format for target and to GL_FALSE otherwise. +

+ If pname is GL_INTERNALFORMAT_PREFERRED, params is set to GL_TRUE if internalFormat + is an format for target that is preferred by the implementation and to GL_FALSE otherwise. +

+ If pname is GL_INTERNALFORMAT_RED_SIZE, GL_INTERNALFORMAT_GREEN_SIZE, + GL_INTERNALFORMAT_BLUE_SIZE, GL_INTERNALFORMAT_ALPHA_SIZE, GL_INTERNALFORMAT_DEPTH_SIZE, + GL_INTERNALFORMAT_STENCIL_SIZE, or GL_INTERNALFORMAT_SHARED_SIZE then + params is set to the actual resolutions that would be used for storing image array components + for the resource for the red, green, blue, alpha, depth, stencil and shared channels respectively. If internalFormat + is a compressed internal format, then params is set to the component resolution of an uncompressed internal format that produces + an image of roughly the same quality as the compressed algorithm. If the internal format is unsupported, or if a particular component is + not present in the format, 0 is written to params. +

+ If pname is GL_INTERNALFORMAT_RED_TYPE, GL_INTERNALFORMAT_GREEN_TYPE, + GL_INTERNALFORMAT_BLUE_TYPE, GL_INTERNALFORMAT_ALPHA_TYPE, GL_INTERNALFORMAT_DEPTH_TYPE, + or GL_INTERNALFORMAT_STENCIL_TYPE then params is set to a token identifying the data type used + to store the respective component. If the internalFormat represents a compressed internal format then + the types returned specify how components are interpreted after decompression. +

+ If pname is GL_MAX_WIDTH, GL_MAX_HEIGHT, GL_MAX_DEPTH, + or GL_MAX_LAYERS then pname is filled with the maximum width, height, depth or layer count + for textures with internal format internalFormat, respectively. If pname is GL_MAX_COMBINED_DIMENSIONS + then pname is filled with the maximum combined dimensions of a texture of the specified internal format. +

+ If pname is GL_COLOR_COMPONENTS then params is set to the value GL_TRUE + if the internal format contains any color component (i.e., red, green, blue or alpha) and to GL_FALSE otherwise. If + pname is GL_DEPTH_COMPONENTS or GL_STENCIL_COMPONENTS then params + is set to GL_TRUE if the internal format contains a depth or stencil component, respectively, and to GL_FALSE + otherwise. +

+ If pname is GL_COLOR_RENDERABLE, GL_DEPTH_RENDERABLE or GL_STENCIL_RENDERABLE + then params is set to GL_TRUE if the specified internal format is color, depth or stencil renderable, respectively, + and to GL_FALSE otherwise. +

+ If pname is GL_FRAMEBUFFER_RENDERABLE or GL_FRAMEBUFFER_RENDERABLE_LAYERED + then params is set to one of GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT or GL_NONE to indicate that framebuffer attachments (layered attachments in the + case of GL_FRAMEBUFFER_RENDERABLE_LAYERED) with that internal format are either + renderable with no restrictions, renderable with some restrictions or not renderable at all. +

+ If pname is GL_FRAMEBUFFER_BLEND, params is set to GL_TRUE + to indicate that the internal format is supported for blending operations when attached to a framebuffer, and to GL_FALSE otherwise. +

+ If pname is GL_READ_PIXELS then params is set to GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT or GL_NONE to that either full support, limited support or no support at all is supplied + for reading pixels from framebuffer attachments in the specified internal format. +

+ If pname is GL_READ_PIXELS_FORMAT or GL_READ_PIXELS_TYPE then params + is filled with the format or type, respectively, most recommended to obtain the highest image quality and performance. For + GL_READ_PIXELS_FORMAT, the value returned in params is a token that is accepted for + the format argument to glReadPixels. For + GL_READ_PIXELS_TYPE, the value returned in params is a token that is accepted for + the type argument to glReadPixels. +

+ If pname is GL_TEXTURE_IMAGE_FORMAT or GL_TEXTURE_IMAGE_TYPE then + params is filled with the implementation-recommended format or type to be used in calls to + glTexImage2D and other similar functions. For GL_TEXTURE_IMAGE_FORMAT, + params is filled with a token suitable for use as the format argument to + glTexImage2D. For GL_TEXTURE_IMAGE_TYPE, + params is filled with a token suitable for use as the type argument to + glTexImage2D. +

+ If pname is GL_GET_TEXTURE_IMAGE_FORMAT or GL_GET_TEXTURE_IMAGE_TYPE then + params is filled with the implementation-recommended format or type to be used in calls to + glGetTexImage2D and other similar functions. For GL_GET_TEXTURE_IMAGE_FORMAT, + params is filled with a token suitable for use as the format argument to + glGetTexImage2D. For GL_GET_TEXTURE_IMAGE_TYPE, + params is filled with a token suitable for use as the type argument to + glGetTexImage2D. +

+ If pname is GL_MIPMAP then pname is set to GL_TRUE + to indicate that the specified internal format supports mipmaps and to GL_FALSE otherwise. +

+ If pname is GL_GENERATE_MIPMAP or GL_AUTO_GENERATE_MIPMAP then params + is indicates the level of support for manual or automatic mipmap generation for the specified internal format, respectively. Returned values + may be one of GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT and GL_NONE to indicate + either full support, limited support or no support at all. +

+ If pname is GL_COLOR_ENCODING then the color encoding for the resource is returned in + params. Possible values for color buffers are GL_LINEAR or GL_SRGB, + for linear or sRGB-encoded color components, respectively. For non-color + formats (such as depth or stencil), or for unsupported resources, + the value GL_NONE is returned. +

+ If pname is GL_SRGB_READ, or GL_SRGB_WRITE then params + indicates the level of support for reading and writing to sRGB encoded images, respectively. For GL_SRGB_READ, + support for converting from sRGB colorspace on read operations is returned in params and for GL_SRGB_WRITE, + support for converting to sRGB colorspace on write operations to the resource is returned in params. params may be + set to GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all, respecitively. +

+ If pname is GL_FILTER the params is set to either GL_TRUE + or GL_FALSE to indicate support or lack thereof for filter modes other than GL_NEAREST or GL_NEAREST_MIPMAP + for the specified internal format. +

+ If pname is GL_VERTEX_TEXTURE, GL_TESS_CONTROL_TEXTURE, GL_TESS_EVALUATION_TEXTURE, + GL_GEOMETRY_TEXTURE, GL_FRAGMENT_TEXTURE, or GL_COMPUTE_TEXTURE, then the value + written to params indicates support for use of the resource as a source of texturing in the vertex, tessellation control, + tessellation evaluation, geometry, fragment and compute shader stages, respectively. params may be set to + GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT or GL_NONE to indicate full support, + limited support or no support at all, respectively. +

+ If pname is GL_TEXTURE_SHADOW, GL_TEXTURE_GATHER or GL_TEXTURE_GATHER_SHADOW then the value written to + params indicates the level of support for using the resource with a shadow sampler, in gather operations or as a shadow sampler in gather operations, respectively. Returned values + may be GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT or GL_NONE to indicate full support, + limited support or no support at all, respectively. +

+ If pname is GL_SHADER_IMAGE_LOAD, GL_SHADER_IMAGE_STORE or GL_SHADER_IMAGE_ATOMIC + then the value returned in params indicates the level of support for image loads, stores and atomics for resources of the specified internal + format. Returned values + may be GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT or GL_NONE to indicate full support, + limited support or no support at all, respectively. +

+ If pname is GL_IMAGE_TEXEL_SIZE then the size of a texel when the resource when used as + an image texture is returned in params. If the resource is not supported for image + textures zero is returned. +

+ If pname is GL_IMAGE_COMPATIBILITY_CLASS then the compatibility class of the resource when + used as an image texture is returned in params. The possible values + returned are GL_IMAGE_CLASS_4_X_32, GL_IMAGE_CLASS_2_X_32, GL_IMAGE_CLASS_1_X_32, + GL_IMAGE_CLASS_4_X_16, GL_IMAGE_CLASS_2_X_16, GL_IMAGE_CLASS_1_X_16, + GL_IMAGE_CLASS_4_X_8, GL_IMAGE_CLASS_2_X_8, GL_IMAGE_CLASS_1_X_8, + GL_IMAGE_CLASS_11_11_10, and GL_IMAGE_CLASS_10_10_10_2, which correspond to + the 4x32, 2x32, 1x32, 4x16, 2x16, 1x16, 4x8, 2x8, 1x8, the class + (a) 11/11/10 packed floating-point format, and the class (b) + 10/10/10/2 packed formats, respectively. + If the resource is not supported for image textures, GL_NONE is returned. +

+ If pname is GL_IMAGE_PIXEL_FORMAT or GL_IMAGE_PIXEL_TYPE then + the pixel format or type of the resource when used as an image texture is returned in params, respectively. + In either case, the resource is not supported for image textures GL_NONE is returned. +

+ If pname is GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, the matching criteria use for the + resource when used as an image textures is returned in params. Possible values returned in params are + GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE or GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS. + If the resource is not supported for image textures, GL_NONE is returned. +

+ If pname is GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST or GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST, + support for using the resource both as a source for texture sampling while it is bound as a buffer for depth or stencil test, respectively, is written to params. + Possible values returned are GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all. If the resource or operation is not supported, GL_NONE is returned. +

+ If pname is GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE or GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE, + support for using the resource both as a source for texture sampling while performing depth or stencil writes to the resources, respectively, is written to params. + Possible values returned are GL_FULL_SUPPORT, GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all. If the resource or operation is not supported, GL_NONE is returned. +

+ If pname is GL_TEXTURE_COMPRESSED then GL_TRUE is returned in params + if internalformat is a compressed internal format. GL_FALSE is returned in params + otherwise. +

+ If pname is GL_TEXTURE_COMPRESSED_BLOCK_WIDTH, GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT or + GL_TEXTURE_COMPRESSED_BLOCK_SIZE then the width, height or total size, respectively of a block (in basic machine units) is returned in + params. If the internal format is not compressed, or the resource is not supported, 0 is returned. +

+ If pname is GL_CLEAR_BUFFER, the level of support for using the resource with glClearBufferData + and glClearBufferSubData is returned in params. Possible values returned are GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all, respectively. If the resource or operation is not supported, GL_NONE is returned. +

+ If pname is GL_TEXTURE_VIEW, the level of support for using the resource with the glTextureView + command is returned in params. Possible values returned are GL_FULL_SUPPORT, + GL_CAVEAT_SUPPORT, or GL_NONE to indicate + full support, limited support or no support at all, respectively. If the resource or operation is not supported, GL_NONE is returned. +

+ If pname is GL_VIEW_COMPATIBILITY_CLASS then the compatibility class of the resource when + used as a texture view is returned in params. The possible values + returned are GL_VIEW_CLASS_128_BITS, GL_VIEW_CLASS_96_BITS, + GL_VIEW_CLASS_64_BITS, GL_VIEW_CLASS_48_BITS, GL_VIEW_CLASS_32_BITS, + GL_VIEW_CLASS_24_BITS, GL_VIEW_CLASS_16_BITS, GL_VIEW_CLASS_8_BITS, + GL_VIEW_CLASS_S3TC_DXT1_RGB, GL_VIEW_CLASS_S3TC_DXT1_RGBA, + GL_VIEW_CLASS_S3TC_DXT3_RGBA, GL_VIEW_CLASS_S3TC_DXT5_RGBA, + GL_VIEW_CLASS_RGTC1_RED, GL_VIEW_CLASS_RGTC2_RG, GL_VIEW_CLASS_BPTC_UNORM, and + GL_VIEW_CLASS_BPTC_FLOAT. +

Notes

+ glGetInternalFormativ is available only if the + GL version is 4.2 or higher. +

+ The tokens + GL_INTERNALFORMAT_SUPPORTED, + GL_INTERNALFORMAT_PREFERRED, + GL_INTERNALFORMAT_RED_SIZE, + GL_INTERNALFORMAT_GREEN_SIZE, + GL_INTERNALFORMAT_BLUE_SIZE, + GL_INTERNALFORMAT_ALPHA_SIZE, + GL_INTERNALFORMAT_DEPTH_SIZE, + GL_INTERNALFORMAT_STENCIL_SIZE, + GL_INTERNALFORMAT_SHARED_SIZE, + GL_INTERNALFORMAT_RED_TYPE, + GL_INTERNALFORMAT_GREEN_TYPE, + GL_INTERNALFORMAT_BLUE_TYPE, + GL_INTERNALFORMAT_ALPHA_TYPE, + GL_INTERNALFORMAT_DEPTH_TYPE, + GL_INTERNALFORMAT_STENCIL_TYPE, + GL_MAX_WIDTH, + GL_MAX_HEIGHT, + GL_MAX_DEPTH, + GL_MAX_LAYERS, + GL_MAX_COMBINED_DIMENSIONS, + GL_COLOR_COMPONENTS, + GL_DEPTH_COMPONENTS, + GL_STENCIL_COMPONENTS, + GL_COLOR_RENDERABLE, + GL_DEPTH_RENDERABLE, + GL_STENCIL_RENDERABLE, + GL_FRAMEBUFFER_RENDERABLE, + GL_FRAMEBUFFER_RENDERABLE_LAYERED, + GL_FRAMEBUFFER_BLEND, + GL_READ_PIXELS, + GL_READ_PIXELS_FORMAT, + GL_READ_PIXELS_TYPE, + GL_TEXTURE_IMAGE_FORMAT, + GL_TEXTURE_IMAGE_TYPE, + GL_GET_TEXTURE_IMAGE_FORMAT, + GL_GET_TEXTURE_IMAGE_TYPE, + GL_MIPMAP, + GL_GENERATE_MIPMAP, + GL_AUTO_GENERATE_MIPMAP, + GL_COLOR_ENCODING, + GL_SRGB_READ, + GL_SRGB_WRITE, + GL_SRGB_DECODE_ARB, + GL_FILTER, + GL_VERTEX_TEXTURE, + GL_TESS_CONTROL_TEXTURE, + GL_TESS_EVALUATION_TEXTURE, + GL_GEOMETRY_TEXTURE, + GL_FRAGMENT_TEXTURE, + GL_COMPUTE_TEXTURE, + GL_TEXTURE_SHADOW, + GL_TEXTURE_GATHER, + GL_TEXTURE_GATHER_SHADOW, + GL_SHADER_IMAGE_LOAD, + GL_SHADER_IMAGE_STORE, + GL_SHADER_IMAGE_ATOMIC, + GL_IMAGE_TEXEL_SIZE, + GL_IMAGE_COMPATIBILITY_CLASS, + GL_IMAGE_PIXEL_FORMAT, + GL_IMAGE_PIXEL_TYPE, + GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST, + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST, + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE, + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE, + GL_TEXTURE_COMPRESSED, + GL_TEXTURE_COMPRESSED_BLOCK_WIDTH, + GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT, + GL_TEXTURE_COMPRESSED_BLOCK_SIZE, + GL_CLEAR_BUFFER, + GL_TEXTURE_VIEW, and + GL_VIEW_COMPATIBILITY_CLASS are supported only if the GL + version is 4.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if bufSize is negative. +

+ GL_INVALID_ENUM is generated if pname is not GL_SAMPLES or GL_NUM_SAMPLE_COUNTS. +

+ GL_INVALID_ENUM is generated if internalformat is not color-, depth-, or stencil-renderable. +

+ GL_INVALID_ENUM is generated if target is not one of GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_RENDERBUFFER. +

See Also

+ glGet +

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetMultisample.xml b/upstream-man-pages/man4/xhtml/glGetMultisample.xml new file mode 100644 index 0000000..66e6c73 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetMultisample.xml @@ -0,0 +1,33 @@ + + + +glGetMultisamplefv - OpenGL 4 Reference Pages

Name

glGetMultisamplefv — retrieve the location of a sample

C Specification

void glGetMultisamplefv(GLenum  pname,
 GLuint  index,
 GLfloat * val);

Parameters

pname

+ Specifies the sample parameter name. pname must be GL_SAMPLE_POSITION. +

index

+ Specifies the index of the sample whose position to query. +

val

+ Specifies the address of an array to receive the position of the sample. +

Description

+ glGetMultisamplefv queries the location of a given sample. pname + specifies the sample parameter to retrieve and must be GL_SAMPLE_POSITION. index + corresponds to the sample for which the location should be returned. The sample location is returned as two floating-point + values in val[0] and val[1], each between 0 and 1, corresponding to the x + and y locations respectively in the GL pixel space of that sample. (0.5, 0.5) this corresponds to the + pixel center. index must be between zero and the value of GL_SAMPLES - 1. +

+ If the multisample mode does not have fixed sample locations, the returned values may only reflect the locations of samples + within some pixels. +

Errors

+ GL_INVALID_ENUM is generated if pname is not one GL_SAMPLE_POSITION. +

+ GL_INVALID_VALUE is generated if index is greater than or equal to the value of + GL_SAMPLES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetObjectLabel.xml b/upstream-man-pages/man4/xhtml/glGetObjectLabel.xml new file mode 100644 index 0000000..c1f7739 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetObjectLabel.xml @@ -0,0 +1,55 @@ + + + +glGetObjectLabel - OpenGL 4 Reference Pages

Name

glGetObjectLabel — retrieve the label of a named object identified within a namespace

C Specification

void glGetObjectLabel(GLenum  identifier,
 GLuint  name,
 GLsizei  bifSize,
 GLsizei *  length,
 char *  label);

Parameters

identifier

+ The namespace from which the name of the object is allocated. +

name

+ The name of the object whose label to retrieve. +

bufSize

+ The length of the buffer whose address is in label. +

length

+ The address of a variable to receive the length of the object label. +

label

+ The address of a string that will receive the object label. +

Description

+ glGetObjectLabel retrieves the label of the object identified by + name within the namespace given by identifier. + identifier must be one of GL_BUFFER, GL_SHADER, + GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, + GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, + GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, + to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, + program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame + buffers, respectively. +

+ label is the address of a string that will be used to store the object label. + bufSize specifies the number of characters in the array identified by label. + length contains the address of a variable which will receive the the number of characters in the object label. + If length is NULL, then it is ignored and no data is written. Likewise, if label + is NULL, or if bufSize is zero then no data is written to label. +

Errors

+ GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. +

+ GL_INVALID_OPERATION is generated if name + is not the name of an existing object of the type specified by identifier. +

+ GL_INVALID_VALUE is generated if bufSize is + zero. +

+ If not NULL, length and label should be addresses + to which the client has write access, otherwise undefined behavior, including process termination + may occur. +

Associated Gets

+ glGet with argument GL_MAX_LABEL_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetObjectPtrLabel.xml b/upstream-man-pages/man4/xhtml/glGetObjectPtrLabel.xml new file mode 100644 index 0000000..aae71ab --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetObjectPtrLabel.xml @@ -0,0 +1,46 @@ + + + +glGetObjectPtrLabel - OpenGL 4 Reference Pages

Name

glGetObjectPtrLabel — retrieve the label of a sync object identified by a pointer

C Specification

void glGetObjectPtrLabel(void *  ptr,
 GLsizei  bifSize,
 GLsizei *  length,
 char *  label);

Parameters

ptr

+ The name of the sync object whose label to retrieve. +

bufSize

+ The length of the buffer whose address is in label. +

length

+ The address of a variable to receive the length of the object label. +

label

+ The address of a string that will receive the object label. +

Description

+ glGetObjectPtrLabel retrieves the label of the sync object identified by + ptr. +

+ label is the address of a string that will be used to store the object label. + bufSize specifies the number of characters in the array identified by label. + length contains the address of a variable which will receive the the number of characters in the object label. + If length is NULL, then it is ignored and no data is written. Likewise, if label + is NULL, or if bufSize is zero then no data is written to label. +

Errors

+ GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. +

+ GL_INVALID_VALUE is generated if ptr + is not the name of an existing sync object. +

+ GL_INVALID_VALUE is generated if bufSize is + zero. +

+ If not NULL, length and label should be addresses + to which the client has write access, otherwise undefined behavior, including process termination + may occur. +

Associated Gets

+ glGet with argument GL_MAX_LABEL_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgram.xml b/upstream-man-pages/man4/xhtml/glGetProgram.xml new file mode 100644 index 0000000..c746f9e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgram.xml @@ -0,0 +1,146 @@ + + + +glGetProgram - OpenGL 4 Reference Pages

Name

glGetProgramiv — Returns a parameter from a program object

C Specification

void glGetProgramiv(GLuint  program,
 GLenum  pname,
 GLint * params);

Parameters

program

Specifies the program object to be + queried.

pname

Specifies the object parameter. Accepted + symbolic names are + GL_DELETE_STATUS, + GL_LINK_STATUS, + GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS, + GL_ACTIVE_ATOMIC_COUNTER_BUFFERS, + GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_BLOCKS, + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH, + GL_ACTIVE_UNIFORM_MAX_LENGTH, + GL_COMPUTE_WORK_GROUP_SIZE + GL_PROGRAM_BINARY_LENGTH, + GL_TRANSFORM_FEEDBACK_BUFFER_MODE, + GL_TRANSFORM_FEEDBACK_VARYINGS, + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, and + GL_GEOMETRY_OUTPUT_TYPE.

params

Returns the requested object parameter.

Description

glGetProgram + returns in params + the value of a parameter for a specific program object. The following parameters are defined:

GL_DELETE_STATUS

+

params returns + GL_TRUE if + program is currently flagged + for deletion, and GL_FALSE + otherwise.

GL_LINK_STATUS

+

params returns + GL_TRUE if the last link + operation on program was + successful, and GL_FALSE + otherwise.

GL_VALIDATE_STATUS

+

params returns + GL_TRUE or if the last + validation operation on + program was successful, and + GL_FALSE + otherwise.

GL_INFO_LOG_LENGTH

+

params returns the + number of characters in the information log for + program including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If program has no + information log, a value of 0 is + returned.

GL_ATTACHED_SHADERS

+

params returns the + number of shader objects attached to + program.

GL_ACTIVE_ATOMIC_COUNTER_BUFFERS

+

params returns the + number of active attribute atomic counter buffers used by + program.

GL_ACTIVE_ATTRIBUTES

+

params returns the + number of active attribute variables for + program.

GL_ACTIVE_ATTRIBUTE_MAX_LENGTH

+

params returns the + length of the longest active attribute name for + program, including the null + termination character (i.e., the size of the + character buffer required to store the longest + attribute name). If no active attributes exist, 0 is + returned.

GL_ACTIVE_UNIFORMS

+

params returns the + number of active uniform variables for + program.

GL_ACTIVE_UNIFORM_MAX_LENGTH

+

params returns the + length of the longest active uniform variable name + for program, including the + null termination character (i.e., the size of the + character buffer required to store the longest + uniform variable name). If no active uniform + variables exist, 0 is returned.

GL_PROGRAM_BINARY_LENGTH

+

params returns the + length of the program binary, in bytes that will be returned by + a call to glGetProgramBinary. + When a progam's GL_LINK_STATUS is GL_FALSE, + its program binary length is zero. +

GL_COMPUTE_WORK_GROUP_SIZE

+

params returns an + array of three integers containing the local work group size of + the compute program as specified by its input layout qualifier(s). + program must be the name of a program object + that has been previously linked successfully and contains a binary + for the compute shader stage. +

GL_TRANSFORM_FEEDBACK_BUFFER_MODE

+

params returns a symbolic constant + indicating the buffer mode used when transform feedback is active. + This may be GL_SEPARATE_ATTRIBS or + GL_INTERLEAVED_ATTRIBS.

GL_TRANSFORM_FEEDBACK_VARYINGS

+

params returns the number of varying + variables to capture in transform feedback mode for the program.

GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH

+

params returns the length of the longest + variable name to be used for transform feedback, including the null-terminator.

GL_GEOMETRY_VERTICES_OUT

+

params returns the maximum number of vertices + that the geometry shader in program will output.

GL_GEOMETRY_INPUT_TYPE

+

params returns a symbolic constant indicating + the primitive type accepted as input to the geometry shader contained in + program.

GL_GEOMETRY_OUTPUT_TYPE

+

params returns a symbolic constant indicating + the primitive type that will be output by the geometry shader contained + in program.

Notes

+ GL_ACTIVE_UNIFORM_BLOCKS and + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH + are available only if the GL version 3.1 or greater. +

+ GL_GEOMETRY_VERTICES_OUT, GL_GEOMETRY_INPUT_TYPE + and GL_GEOMETRY_OUTPUT_TYPE are accepted only if the GL + version is 3.2 or greater. +

+ GL_COMPUTE_WORK_GROUP_SIZE is accepted only if the + GL version is 4.3 or greater. +

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL.

GL_INVALID_OPERATION + is generated if program + does not refer to a program object.

GL_INVALID_OPERATION is generated if + pname is GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE, or GL_GEOMETRY_OUTPUT_TYPE, + and program does not contain a geometry shader.

GL_INVALID_ENUM + is generated if pname + is not an accepted value.

GL_INVALID_OPERATION is generated if pname + is GL_COMPUTE_WORK_GROUP_SIZE and program + does not contain a binary for the compute shader stage.

Associated Gets

glGetActiveAttrib + with argument program

glGetActiveUniform + with argument program

glGetAttachedShaders + with argument program

glGetProgramInfoLog + with argument program

glIsProgram +

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramBinary.xml b/upstream-man-pages/man4/xhtml/glGetProgramBinary.xml new file mode 100644 index 0000000..39942e4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramBinary.xml @@ -0,0 +1,46 @@ + + + +glGetProgramBinary - OpenGL 4 Reference Pages

Name

glGetProgramBinary — return a binary representation of a program object's compiled and linked executable source

C Specification

void glGetProgramBinary(GLuint  program,
 GLsizei  bufsize,
 GLsizei * length,
 GLenum * binaryFormat,
 void * binary);

Parameters

program

+ Specifies the name of a program object whose binary representation to retrieve. +

bufSize

+ Specifies the size of the buffer whose address is given by binary. +

length

+ Specifies the address of a variable to receive the number of bytes written into binary. +

binaryFormat

+ Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL. +

binary

+ Specifies the address an array into which the GL will return program's binary representation. +

Description

+ glGetProgramBinary returns a binary representation of the compiled + and linked executable for program into the array of bytes whose + address is specified in binary. The maximum number of bytes that + may be written into binary is specified by bufSize. + If the program binary is greater in size than bufSize bytes, + then an error is generated, otherwise the actual number of bytes written into binary + is returned in the variable whose address is given by length. If + length is NULL, then no length is returned. +

+ The format of the program binary written into binary is returned in + the variable whose address is given by binaryFormat, and may be implementation dependent. The binary produced + by the GL may subsequently be returned to the GL by calling glProgramBinary, + with binaryFormat and length set to the values + returned by glGetProgramBinary, and passing the returned binary data + in the binary parameter. +

Errors

+ GL_INVALID_OPERATION is generated if bufSize is less than + the size of GL_PROGRAM_BINARY_LENGTH for program. +

+ GL_INVALID_OPERATION is generated if GL_LINK_STATUS for the + program object is false. +

Associated Gets

+ glGetProgram with argument GL_PROGRAM_BINARY_LENGTH +

See Also

+ glGetProgram, + glProgramBinary +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramInfoLog.xml b/upstream-man-pages/man4/xhtml/glGetProgramInfoLog.xml new file mode 100644 index 0000000..08afccd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramInfoLog.xml @@ -0,0 +1,49 @@ + + + +glGetProgramInfoLog - OpenGL 4 Reference Pages

Name

glGetProgramInfoLog — Returns the information log for a program object

C Specification

void glGetProgramInfoLog(GLuint  program,
 GLsizei  maxLength,
 GLsizei * length,
 GLchar * infoLog);

Parameters

program

Specifies the program object whose information + log is to be queried.

maxLength

Specifies the size of the character buffer for + storing the returned information log.

length

Returns the length of the string returned in + infoLog (excluding the null + terminator).

infoLog

Specifies an array of characters that is used + to return the information log.

Description

glGetProgramInfoLog returns the + information log for the specified program object. The + information log for a program object is modified when the + program object is linked or validated. The string that is + returned will be null terminated.

glGetProgramInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetProgram + with the value GL_INFO_LOG_LENGTH.

The information log for a program object is either an + empty string, or a string containing information about the last + link operation, or a string containing information about the + last validation operation. It may contain diagnostic messages, + warning messages, and other information. When a program object + is created, its information log will be a string of length + 0.

Notes

The information log for a program object is the OpenGL + implementer's primary mechanism for conveying information about + linking and validating. Therefore, the information log can be + helpful to application developers during the development + process, even when these operations are successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_VALUE is generated if + maxLength is less than 0.

Associated Gets

glGetProgram + with argument GL_INFO_LOG_LENGTH

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramInterface.xml b/upstream-man-pages/man4/xhtml/glGetProgramInterface.xml new file mode 100644 index 0000000..3df808a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramInterface.xml @@ -0,0 +1,104 @@ + + + +glGetProgramInterface - OpenGL 4 Reference Pages

Name

glGetProgramInterface — query a property of an interface in a program

C Specification

void glGetProgramInterfaceiv(GLuint  program,
 GLenum  programInterface,
 GLenum  pname,
 GLint *  params);

Parameters

program

+ The name of a program object whose interface to query. +

programInterface

+ A token identifying the interface within program to query. +

pname

+ The name of the parameter within programInterface to query. +

params

+ The address of a variable to retrieve the value of pname for the program interface. +

Description

+ glGetProgramInterfaceiv queries the property of the interface identifed + by programInterface in program, the property name of + which is given by pname. +

+ program must be the name of an existing program object. programInterface + is the name of the interface within program to query and must be one of the following + values: +

GL_UNIFORM

+ The query is targeted at the set of active uniforms within program. +

GL_UNIFORM_BLOCK

+ The query is targeted at the set of active uniform blocks within program. +

GL_ATOMIC_COUNTER_BUFFER

+ The query is targeted at the set of active atomic counter buffer binding points within program. +

GL_PROGRAM_INPUT

+ The query is targeted at the set of active input variables used by the first shader stage of program. + If program contains multiple shader stages then input variables from any stage other than the first + will not be enumerated. +

GL_PROGRAM_OUTPUT

+ The query is targeted at the set of active output variables produced by the last shader stage of program. + If program contains multiple shader stages then output variables from any stage other than the last + will not be enumerated. +

GL_VERTEX_SUBROUTINE, GL_TESS_CONTROL_SUBROUTINE, GL_TESS_EVALUATION_SUBROUTINE, GL_GEOMETRY_SUBROUTINE, GL_FRAGMENT_SUBROUTINE, GL_COMPUTE_SUBROUTINE

+ The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. +

GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM

+ The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. +

GL_TRANSFORM_FEEDBACK_VARYING

+ The query is targeted at the set of output variables from the last non-fragment stage of program that would be + captured if transform feedback were active. +

GL_BUFFER_VARIABLE

+ The query is targeted at the set of active buffer variables used by program. +

GL_SHADER_STORAGE_BLOCK

+ The query is targeted at the set of active shader storage blocks used by program. +

+ pname identifies the property of programInterface + to return in params. +

+ If pname is GL_ACTIVE_RESOURCES, the value returned is the number of + resources in the active resource list for programInterface. If the list + of active resources for programInterface is empty, zero is returned. +

+ If pname is GL_MAX_NAME_LENGTH, the value returned is the length of the + longest active name string for an active resource in programInterface. + This length includes an extra character for the null terminator. If the + list of active resources for programInterface is empty, zero is + returned. It is an error to specify GL_MAX_NAME_LENGTH when programInterface + is GL_ATOMIC_COUNTER_BUFFER, as active atomic counter buffer resources are + not assigned name strings. +

+ If pname is GL_MAX_NUM_ACTIVE_VARIABLES, the value returned is the number + of active variables belonging to the interface block or atomic counter + buffer resource in programInterface with the most active variables. If + the list of active resources for programInterface is empty, zero is + returned. When pname is GL_MAX_NUM_ACTIVE_VARIABLES, programInterface + must be GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, or GL_SHADER_STORAGE_BLOCK. +

+ If pname is GL_MAX_NUM_COMPATIBLE_SUBROUTINES, the value returned is the + number of compatible subroutines belonging to the active subroutine + uniform in programInterface with the most compatible subroutines. If + the list of active resources for programInterface is empty, zero is + returned. When pname is GL_MAX_NUM_COMPATIBLE_SUBROUTINES, + programInterface must be one of GL_VERTEX_SUBROUTINE_UNIFORM, + GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, + GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, or + GL_COMPUTE_SUBROUTINE_UNIFORM. +

Errors

+ GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. +

+ GL_INVALID_VALUE is generated if program + is not the name of an existing sync object. +

+ GL_INVALID_VALUE is generated if bufSize is + zero. +

+ If not NULL, length and label should be addresses + to which the client has write access, otherwise undefined behavior, including process termination + may occur. +

Associated Gets

+ glGet with argument GL_MAX_LABEL_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramPipeline.xml b/upstream-man-pages/man4/xhtml/glGetProgramPipeline.xml new file mode 100644 index 0000000..5f5b65d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramPipeline.xml @@ -0,0 +1,60 @@ + + + +glGetProgramPipeline - OpenGL 4 Reference Pages

Name

glGetProgramPipeline — retrieve properties of a program pipeline object

C Specification

void glGetProgramPipelineiv(GLuint  pipeline,
 GLenum  pname,
 GLint * params);

Parameters

pipeline

+ Specifies the name of a program pipeline object whose parameter retrieve. +

pname

+ Specifies the name of the parameter to retrieve. +

params

+ Specifies the address of a variable into which will be written the value or values + of pname for pipeline. +

Description

+ glGetProgramPipelineiv retrieves the value of a property of the program + pipeline object pipeline. pname specifies the + name of the parameter whose value to retrieve. The value of the parameter is written to + the variable whose address is given by params. +

+ If pname is GL_ACTIVE_PROGRAM, the name of the + active program object of the program pipeline object is returned in params. +

+ If pname is GL_VERTEX_SHADER, the name of the + current program object for the vertex shader type of the program pipeline object is + returned in params. +

+ If pname is GL_TESS_CONTROL_SHADER, the name of the + current program object for the tessellation control shader type of the program pipeline object is + returned in params. +

+ If pname is GL_TESS_EVALUATION_SHADER, the name of the + current program object for the tessellation evaluation shader type of the program pipeline object is + returned in params. +

+ If pname is GL_GEOMETRY_SHADER, the name of the + current program object for the geometry shader type of the program pipeline object is + returned in params. +

+ If pname is GL_FRAGMENT_SHADER, the name of the + current program object for the fragment shader type of the program pipeline object is + returned in params. +

+ If pname is GL_INFO_LOG_LENGTH, the length of the + info log, including the null terminator, is returned in params. If there + is no info log, zero is returned. +

Errors

+ GL_INVALID_OPERATION is generated if pipeline is not zero or + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. +

+ GL_INVALID_ENUM is generated if pname is not one + of the accepted values. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramPipelineInfoLog.xml b/upstream-man-pages/man4/xhtml/glGetProgramPipelineInfoLog.xml new file mode 100644 index 0000000..a4eb10e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramPipelineInfoLog.xml @@ -0,0 +1,43 @@ + + + +glGetProgramPipelineInfoLog - OpenGL 4 Reference Pages

Name

glGetProgramPipelineInfoLog — retrieve the info log string from a program pipeline object

C Specification

void glGetProgramPipelineInfoLog(GLuint  pipeline,
 GLsizei  bufSize,
 GLsizei * length,
 GLchar * infoLog);

Parameters

pipeline

+ Specifies the name of a program pipeline object from which to retrieve the info log. +

bufSize

+ Specifies the maximum number of characters, including the null terminator, that may be written into infoLog. +

length

+ Specifies the address of a variable into which will be written the number of characters written into infoLog. +

infoLog

+ Specifies the address of an array of characters into which will be written the info log for pipeline. +

Description

+ glGetProgramPipelineInfoLog retrieves the info log for the program + pipeline object pipeline. The info log, including its null terminator, + is written into the array of characters whose address is given by infoLog. + The maximum number of characters that may be written into infoLog + is given by bufSize, and the actual number of characters written + into infoLog is returned in the integer whose address is given + by length. If length is NULL, + no length is returned. +

+ The actual length of the info log for the program pipeline may be determined by calling + glGetProgramPipeline with + pname set to GL_INFO_LOG_LENGTH. +

Errors

+ GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. +

Associated Gets

+ glGetProgramPipeline + with parameter GL_INFO_LOG_LENGTH. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramResource.xml b/upstream-man-pages/man4/xhtml/glGetProgramResource.xml new file mode 100644 index 0000000..063f856 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramResource.xml @@ -0,0 +1,186 @@ + + + +glGetProgramResource - OpenGL 4 Reference Pages

Name

glGetProgramResource — retrieve values for multiple properties of a single active resource within a program object

C Specification

void glGetProgramResourceiv(GLuint  program,
 GLenum  programInterface,
 GLuint  index,
 GLsizei  propCount,
 const Glenum *  props,
 GLsizei  bufSize,
 GLsizei *  length,
 GLint *  params);

Parameters

program

+ The name of a program object whose resources to query. +

programInterface

+ A token identifying the interface within program containing the resource named name. +

Description

+ glGetProgramResourceiv returns values for multiple properties of a single active resource with an + index of index in the interface programInterface of program object + program. For each resource, values for propCount properties specified + by the array props are returned. propCount may not be zero. + An error is generated if any value + in props is not one of the properties described immediately belowor if any value in props is not + allowed for programInterface. The set of allowed programInterface + values for each property can be found in the following table: +

PropertySupported Interfaces
GL_NAME_LENGTHAny except GL_ATOMIC_COUNTER_BUFFER
GL_TYPEGL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, GL_TRANSFORM_FEEDBACK_VARYING, GL_BUFFER_VARIABLE
GL_ARRAY_SIZEGL_UNIFORM, GL_BUFFER_VARIABLE, GL_PROGRAM_INPUT, + GL_PROGRAM_OUTPUT, VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM, GL_TRANSFORM_FEEDBACK_VARYING
GL_OFFSETGL_UNIFORM, GL_BUFFER_VARIABLE
GL_BLOCK_INDEXGL_UNIFORM, GL_BUFFER_VARIABLE
GL_ARRAY_STRIDEGL_UNIFORM, GL_BUFFER_VARIABLE
GL_MATRIX_STRIDEGL_UNIFORM, GL_BUFFER_VARIABLE
GL_IS_ROW_MAJORGL_UNIFORM, GL_BUFFER_VARIABLE
GL_ATOMIC_COUNTER_BUFFER_INDEXGL_UNIFORM
GL_TEXTURE_BUFFER<emph>none</emph>
GL_BUFFER_BINDINGGL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK
GL_BUFFER_DATA_SIZEGL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK
GL_NUM_ACTIVE_VARIABLESGL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK
GL_ACTIVE_VARIABLESGL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_BUFFER, GL_SHADER_STORAGE_BLOCK
GL_REFERENCED_BY_VERTEX_SHADERGL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT
GL_REFERENCED_BY_TESS_CONTROL_SHADERGL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT
GL_REFERENCED_BY_TESS_EVALUATION_SHADERGL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT
GL_REFERENCED_BY_GEOMETRY_SHADERGL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT
GL_REFERENCED_BY_FRAGMENT_SHADERGL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT
GL_REFERENCED_BY_COMPUTE_SHADERGL_UNIFORM, GL_UNIFORM_BLOCK, GL_ATOMIC_COUNTER_SHADER, + GL_BUFFER, GL_SHADER_STORAGE_BLOCK, GL_BUFFER_VARIABLE, + GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT
GL_NUM_COMPATIBLE_SUBROUTINESGL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM
GL_COMPATIBLE_SUBROUTINESGL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM
GL_TOP_LEVEL_ARRAY_SIZEGL_BUFFER_VARIABLE
GL_TOP_LEVEL_ARRAY_STRIDEGL_BUFFER_VARIABLE
GL_LOCATIONGL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, + GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM
GL_LOCATION_INDEXGL_PROGRAM_OUTPUT
GL_IS_PER_PATCHGL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT

+ For the property GL_NAME_LENGTH, a single integer identifying the length of + the name string associated with an active variable, interface block, or + subroutine is written to params. The name length includes a terminating + null character. + + For the property GL_TYPE, a single integer identifying the type of an active + variable is written to params. The integer returned is one of the + values found in table 2.16. + + For the property GL_ARRAY_SIZE, a single integer identifying the number of + active array elements of an active variable is written to params. The + array size returned is in units of the type associated with the property + TYPE. For active variables not corresponding to an array of basic types, + the value zero is written to params. + + For the property GL_BLOCK_INDEX, a single integer identifying the index of + the active interface block containing an active variable is written to + params. If the variable is not the member of an interface block, the + value -1 is written to params. + + For the property GL_OFFSET, a single integer identifying the offset of an + active variable is written to params. For active variables backed by a + buffer object, the value written is the offset, in basic machine units, + relative to the base of buffer range holding the values of the variable. + For active variables not backed by a buffer object, an offset of -1 is + written to params. + + For the property GL_ARRAY_STRIDE, a single integer identifying the stride + between array elements in an active variable is written to params. For + active variables declared as an array of basic types, the value written is + the difference, in basic machine units, between the offsets of consecutive + elements in an array. For active variables not declared as an array of + basic types, zero is written to params. For active variables not backed + by a buffer object, -1 is written to params, regardless of the variable + type. + + For the property GL_MATRIX_STRIDE, a single integer identifying the stride + between columns of a column-major matrix or rows of a row-major matrix is + written to params. For active variables declared a single matrix or + array of matrices, the value written is the difference, in basic machine + units, between the offsets of consecutive columns or rows in each matrix. + For active variables not declared as a matrix or array of matrices, zero + is written to params. For active variables not backed by a buffer + object, -1 is written to params, regardless of the variable type. + + For the property GL_IS_ROW_MAJOR, a single integer identifying whether an + active variable is a row-major matrix is written to params. For active + variables backed by a buffer object, declared as a single matrix or array + of matrices, and stored in row-major order, one is written to params. + For all other active variables, zero is written to params. + + For the property GL_ATOMIC_COUNTER_BUFFER_INDEX, a single integer identifying + the index of the active atomic counter buffer containing an active + variable is written to params. If the variable is not an atomic counter + uniform, the value -1 is written to params. + + For the property GL_BUFFER_BINDING, to index of the buffer binding point + associated with the active uniform block, shader storage block, or atomic + counter buffer is written to params. + + For the property GL_BUFFER_DATA_SIZE, then the implementation-dependent + minimum total buffer object size, in basic machine units, required to hold + all active variables associated with an active uniform block, shader + storage block, or atomic counter buffer is written to params. If the + final member of an active shader storage block is array with no declared + size, the minimum buffer size is computed assuming the array was declared + as an array with one element. + + For the property GL_NUM_ACTIVE_VARIABLES, the number of active variables + associated with an active uniform block, shader storage block, or atomic + counter buffer is written to params. + + For the property GL_of ACTIVE_VARIABLES, an array of active variable indices + associated with an active uniform block, shader storage block, or atomic + counter buffer is written to params. The number of values written to + params for an active resource is given by the value of the property + GL_NUM_ACTIVE_VARIABLES for the resource. + + For the properties GL_REFERENCED_BY_VERTEX_SHADER, + GL_REFERENCED_BY_TESS_CONTROL_SHADER, GL_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_REFERENCED_BY_GEOMETRY_SHADER, GL_REFERENCED_BY_FRAGMENT_SHADER, and + GL_REFERENCED_BY_COMPUTE_SHADER, a single integer is written to params, + identifying whether the active resource is referenced by the vertex, + tessellation control, tessellation evaluation, geometry, or fragment + shaders, respectively, in the program object. The value one is written to + params if an active variable is referenced by the corresponding shader, + or if an active uniform block, shader storage block, or atomic counter + buffer contains at least one variable referenced by the corresponding + shader. Otherwise, the value zero is written to params. + + For the property GL_TOP_LEVEL_ARRAY_SIZE, a single integer identifying the + number of active array elements of the top-level shader storage block + member containing to the active variable is written to params. If the + top-level block member is not declared as an array, the value one is + written to params. If the top-level block member is an array with no + declared size, the value zero is written to params. + + For the property GL_TOP_LEVEL_ARRAY_STRIDE, a single integer identifying the + stride between array elements of the top-level shader storage block member + containing the active variable is written to params. For top-level + block members declared as arrays, the value written is the difference, in + basic machine units, between the offsets of the active variable for + consecutive elements in the top-level array. For top-level block members + not declared as an array, zero is written to params. + + For the property GL_LOCATION, a single integer identifying the assigned + location for an active uniform, input, output, or subroutine uniform + variable is written to params. For input, output, or uniform variables + with locations specified by a layout qualifier, the specified location is + used. For vertex shader input or fragment shader output variables without + a layout qualifier, the location assigned when a program is linked is + written to params. For all other input and output variables, the value + -1 is written to params. For uniforms in uniform blocks, the value -1 + is written to params. + + For the property GL_LOCATION_INDEX, a single integer identifying the fragment + color index of an active fragment shader output variable is written to + params. If the active variable is an output for a non-fragment shader, + the value -1 will be written to params. + + For the property GL_IS_PER_PATCH, a single integer identifying whether the + input or output is a per-patch attribute. If the active variable is a + per-patch attribute (declared with the patch qualifier), the value one + is written to params; otherwise, the value zero is written to params. +

Errors

+ GL_INVALID_VALUE is generated if program is + not the name of an existing program object. +

+ GL_INVALID_VALUE is generated if propCount is + zero. +

+ GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. +

+ GL_INVLALID_ENUM is generated if any value in props + is not one of the accepted tokens for the interface programInterface +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramResourceIndex.xml b/upstream-man-pages/man4/xhtml/glGetProgramResourceIndex.xml new file mode 100644 index 0000000..8f97673 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramResourceIndex.xml @@ -0,0 +1,72 @@ + + + +glGetProgramResourceIndex - OpenGL 4 Reference Pages

Name

glGetProgramResourceIndex — query the index of a named resource within a program

C Specification

GLuint glGetProgramResourceIndex(GLuint  program,
 GLenum  programInterface,
 const char *  name);

Parameters

program

+ The name of a program object whose resources to query. +

programInterface

+ A token identifying the interface within program containing the resource named name. +

name

+ The name of the resource to query the index of. +

Description

+ glGetProgramResourceIndex returns the unsigned + integer index assigned to a resource named name in + the interface type programInterface of program object program. +

+ program must be the name of an existing program object. programInterface + is the name of the interface within program which contains the resource named + nameand must be one of the following + values: +

GL_UNIFORM

+ The query is targeted at the set of active uniforms within program. +

GL_UNIFORM_BLOCK

+ The query is targeted at the set of active uniform blocks within program. +

GL_PROGRAM_INPUT

+ The query is targeted at the set of active input variables used by the first shader stage of program. + If program contains multiple shader stages then input variables from any stage other than the first + will not be enumerated. +

GL_PROGRAM_OUTPUT

+ The query is targeted at the set of active output variables produced by the last shader stage of program. + If program contains multiple shader stages then output variables from any stage other than the last + will not be enumerated. +

GL_VERTEX_SUBROUTINE, GL_TESS_CONTROL_SUBROUTINE, GL_TESS_EVALUATION_SUBROUTINE, GL_GEOMETRY_SUBROUTINE, GL_FRAGMENT_SUBROUTINE, GL_COMPUTE_SUBROUTINE

+ The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. +

GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM

+ The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. +

GL_TRANSFORM_FEEDBACK_VARYING

+ The query is targeted at the set of output variables from the last non-fragment stage of program that would be + captured if transform feedback were active. +

GL_BUFFER_VARIABLE

+ The query is targeted at the set of active buffer variables used by program. +

GL_SHADER_STORAGE_BLOCK

+ The query is targeted at the set of active shader storage blocks used by program. +

+ If name exactly matches the name string of one of the active resources + for programInterface, the index of the matched resource is returned. + Additionally, if name would exactly match the name string of an active + resource if "[0]" were appended to name, the index of the matched + resource is returned. Otherwise, name is considered not to be the name + of an active resource, and GL_INVALID_INDEX is returned. +

+ For the interface GL_TRANSFORM_FEEDBACK_VARYING, the value GL_INVALID_INDEX + should be returned when querying the index assigned to the special names + gl_NextBuffer, gl_SkipComponents1, gl_SkipComponents2, + gl_SkipComponents3, or gl_SkipComponents4. +

Errors

+ GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. +

+ Although not an error, GL_INVALID_INDEX is returned if name + is not the name of a resource within the interface identified by programInterface. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramResourceLocation.xml b/upstream-man-pages/man4/xhtml/glGetProgramResourceLocation.xml new file mode 100644 index 0000000..1ece261 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramResourceLocation.xml @@ -0,0 +1,66 @@ + + + +glGetProgramResourceLocation - OpenGL 4 Reference Pages

Name

glGetProgramResourceLocation — query the location of a named resource within a program

C Specification

GLint glGetProgramResourceLocation(GLuint  program,
 GLenum  programInterface,
 const char *  name);

Parameters

program

+ The name of a program object whose resources to query. +

programInterface

+ A token identifying the interface within program containing the resource named name. +

name

+ The name of the resource to query the location of. +

Description

+ glGetProgramResourceLocation returns the location assigned + to the variable named name in interface programInterface of program + object program. program must be the name of a program that has been + linked successfully. programInterface must + be one of GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, + GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM, or GL_COMPUTE_SUBROUTINE_UNIFORM. + The value -1 will be returned if an error occurs, if name does not identify an active variable on + programInterface, or if name identifies an active variable that does + not have a valid location assigned, as described above. The locations + returned by these commands are the same locations returned when querying + the GL_LOCATION and GL_LOCATION_INDEX resource properties. +

+ A string provided to glGetProgramResourceLocation is considered to match an active variable if: +

  • + the string exactly matches the name of the active variable +

  • + if the string identifies the base name of an active array, where the + string would exactly match the name of the variable if the suffix + "[0]" were appended to the string +

  • + if the string identifies an active element of the array, where the + string ends with the concatenation of the "[" character, an integer + with no "+" sign, extra leading zeroes, or whitespace identifying an + array element, and the "]" character, the integer is less than the + number of active elements of the array variable, and where the string + would exactly match the enumerated name of the array if the decimal + integer were replaced with zero. +

+ Any other string is considered not to identify an active variable. If the + string specifies an element of an array variable, + glGetProgramResourceLocation returns the + location assigned to that element. If it + specifies the base name of an array, it identifies the resources + associated with the first element of the array. +

Errors

+ GL_INVALID_VALUE is generated if program + is not the name of an existing program object. +

+ GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. +

+ GL_INVALID_OPERATION is generated if program + has not been linked successfully. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramResourceLocationIndex.xml b/upstream-man-pages/man4/xhtml/glGetProgramResourceLocationIndex.xml new file mode 100644 index 0000000..aa3deb6 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramResourceLocationIndex.xml @@ -0,0 +1,63 @@ + + + +glGetProgramResourceLocationIndex - OpenGL 4 Reference Pages

Name

glGetProgramResourceLocationIndex — query the fragment color index of a named variable within a program

C Specification

GLint glGetProgramResourceLocationIndex(GLuint  program,
 GLenum  programInterface,
 const char *  name);

Parameters

program

+ The name of a program object whose resources to query. +

programInterface

+ A token identifying the interface within program containing the resource named name. +

name

+ The name of the resource to query the location of. +

Description

+ glGetProgramResourceLocation returns the fragment color index assigned + to the variable named name in interface programInterface of program + object program. program must be the name of a program that has been + linked successfully. programInterface must + be one of PROGRAM_OUTPUT. + The value -1 will be returned if an error occurs, if name does not identify an active variable on + programInterface, or if name identifies an active variable that does + not have a valid location assigned, as described above. The locations + returned by these commands are the same locations returned when querying + the GL_LOCATION and GL_LOCATION_INDEX resource properties. +

+ A string provided to glGetProgramResourceLocationIndex is considered to match an active variable if: +

  • + the string exactly matches the name of the active variable +

  • + if the string identifies the base name of an active array, where the + string would exactly match the name of the variable if the suffix + "[0]" were appended to the string +

  • + if the string identifies an active element of the array, where the + string ends with the concatenation of the "[" character, an integer + with no "+" sign, extra leading zeroes, or whitespace identifying an + array element, and the "]" character, the integer is less than the + number of active elements of the array variable, and where the string + would exactly match the enumerated name of the array if the decimal + integer were replaced with zero. +

+ Any other string is considered not to identify an active variable. If the + string specifies an element of an array variable, + glGetProgramResourceLocation returns the + location assigned to that element. If it + specifies the base name of an array, it identifies the resources + associated with the first element of the array. +

Errors

+ GL_INVALID_VALUE is generated if program + is not the name of an existing program object. +

+ GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. +

+ GL_INVALID_OPERATION is generated if program + has not been linked successfully. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramResourceName.xml b/upstream-man-pages/man4/xhtml/glGetProgramResourceName.xml new file mode 100644 index 0000000..031b29b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramResourceName.xml @@ -0,0 +1,85 @@ + + + +glGetProgramResourceName - OpenGL 4 Reference Pages

Name

glGetProgramResourceName — query the name of an indexed resource within a program

C Specification

void glGetProgramResourceName(GLuint  program,
 GLenum  programInterface,
 GLuint  index,
 GLsizei  bufSize,
 GLsizei *  length,
 char *  name);

Parameters

program

+ The name of a program object whose resources to query. +

programInterface

+ A token identifying the interface within program containing the indexed resource. +

index

+ The index of the resource within programInterface of program. +

bufSize

+ The size of the character array whose address is given by name. +

length

+ The address of a variable which will receive the length of the resource name. +

name

+ The address of a character array into which will be written the name of the resource. +

Description

+ glGetProgramResourceName retrieves the name string + assigned to the single active resource with an index of index + in the interface programInterface of program object + program. index must be less than + the number of entries in the active resource list for programInterface. +

+ program must be the name of an existing program object. programInterface + is the name of the interface within program which contains the resource and must be one of the following + values: +

GL_UNIFORM

+ The query is targeted at the set of active uniforms within program. +

GL_UNIFORM_BLOCK

+ The query is targeted at the set of active uniform blocks within program. +

GL_PROGRAM_INPUT

+ The query is targeted at the set of active input variables used by the first shader stage of program. + If program contains multiple shader stages then input variables from any stage other than the first + will not be enumerated. +

GL_PROGRAM_OUTPUT

+ The query is targeted at the set of active output variables produced by the last shader stage of program. + If program contains multiple shader stages then output variables from any stage other than the last + will not be enumerated. +

GL_VERTEX_SUBROUTINE, GL_TESS_CONTROL_SUBROUTINE, GL_TESS_EVALUATION_SUBROUTINE, GL_GEOMETRY_SUBROUTINE, GL_FRAGMENT_SUBROUTINE, GL_COMPUTE_SUBROUTINE

+ The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. +

GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM

+ The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, + geometry, fragment and compute shader stages of program, respectively. +

GL_TRANSFORM_FEEDBACK_VARYING

+ The query is targeted at the set of output variables from the last non-fragment stage of program that would be + captured if transform feedback were active. +

GL_BUFFER_VARIABLE

+ The query is targeted at the set of active buffer variables used by program. +

GL_SHADER_STORAGE_BLOCK

+ The query is targeted at the set of active shader storage blocks used by program. +

+ The name string assigned to the active resource identified by index is + returned as a null-terminated string in the character array whose address is given in name. The actual number of + characters written into name, excluding the null terminator, is returned + in length. If length is NULL, no length is returned. The maximum + number of characters that may be written into name, including the null + terminator, is specified by bufSize. If the length of the name string + including the null terminator is greater than bufSize, the first + bufSize-1 characters of the name string will be written to name, + followed by a null terminator. If bufSize is zero, no error will be + generated but no characters will be written to name. The length of the + longest name string for programInterface>, including a null terminator, + can be queried by calling glGetProgramInterface with a pname of + GL_MAX_NAME_LENGTH. +

Errors

+ GL_INVALID_ENUM is generated if programInterface + is not one of the accepted interface types. +

+ GL_INVALID_VALUE is generated if progam is not + the name of an existing program. +

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the number of entries in the active resource list for + programInterface. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetProgramStage.xml b/upstream-man-pages/man4/xhtml/glGetProgramStage.xml new file mode 100644 index 0000000..97b9359 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetProgramStage.xml @@ -0,0 +1,58 @@ + + + +glGetProgramStage - OpenGL 4 Reference Pages

Name

glGetProgramStage — retrieve properties of a program object corresponding to a specified shader stage

C Specification

void glGetProgramStageiv(GLuint  program,
 GLenum  shadertype,
 GLenum  pname,
 GLint * values);

Parameters

program

+ Specifies the name of the program containing shader stage. +

shadertype

+ Specifies the shader stage from which to query for the subroutine parameter. shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

pname

+ Specifies the parameter of the shader to query. pname + must be GL_ACTIVE_SUBROUTINE_UNIFORMS, + GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS, + GL_ACTIVE_SUBROUTINES, + GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, + or GL_ACTIVE_SUBROUTINE_MAX_LENGTH. +

values

+ Specifies the address of a variable into which the queried value or values will be placed. +

Description

+ glGetProgramStage queries a parameter of a shader stage attached to a program object. + program contains the name of the program to which the shader is attached. shadertype + specifies the stage from which to query the parameter. pname specifies which parameter + should be queried. The value or values of the parameter to be queried is returned in the variable whose address + is given in values. +

+ If pname is GL_ACTIVE_SUBROUTINE_UNIFORMS, the number + of active subroutine variables in the stage is returned in values. +

+ If pname is GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS, + the number of active subroutine variable locations in the stage is returned in values. +

+ If pname is GL_ACTIVE_SUBROUTINES, + the number of active subroutines in the stage is returned in values. +

+ If pname is GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, + the length of the longest subroutine uniform for the stage is returned in values. +

+ If pname is GL_ACTIVE_SUBROUTINE_MAX_LENGTH, + the length of the longest subroutine name for the stage is returned in values. The + returned name length includes space for the null-terminator. +

+ If there is no shader present of type shadertype, the returned value will be consistent + with a shader containing no subroutines or subroutine uniforms. +

Errors

+ GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. +

+ GL_INVALID_VALUE is generated if program is not the name of an + existing program object. +

See Also

+ glGetProgram +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetQueryIndexed.xml b/upstream-man-pages/man4/xhtml/glGetQueryIndexed.xml new file mode 100644 index 0000000..dfbe19e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetQueryIndexed.xml @@ -0,0 +1,48 @@ + + + +glGetQueryIndexediv - OpenGL 4 Reference Pages

Name

glGetQueryIndexediv — return parameters of an indexed query object target

C Specification

void glGetQueryIndexediv(GLenum  target,
 GLuint  index,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies a query object target. + Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_TIME_ELAPSED, or GL_TIMESTAMP. +

index

+ Specifies the index of the query object target. +

pname

+ Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. +

params

+ Returns the requested data. +

Description

+ glGetQueryIndexediv returns in params a selected parameter of the indexed query object target + specified by target and index. index specifies the index of the + query object target and must be between zero and a target-specific maxiumum. +

+ pname names a specific query object target parameter. When pname is + GL_CURRENT_QUERY, the name of the currently active query for the specified index of target, + or zero if no query is active, will be placed in params. + If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number + of bits used to hold the result of queries for target is returned in params. +

Notes

+ The target GL_ANY_SAMPLES_PASSED_CONSERVATIVE is available only if the GL version is 4.3 or greater. +

+ If an error is generated, + no change is made to the contents of params. +

+ Calling glGetQueryiv is equivalent to calling + glGetQueryIndexediv with index set to zero. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_VALUE is generated if index is greater than or equal to the + target-specific maximum. +

See Also

+ glGetQueryObject, + glIsQuery +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetQueryObject.xml b/upstream-man-pages/man4/xhtml/glGetQueryObject.xml new file mode 100644 index 0000000..6d701ec --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetQueryObject.xml @@ -0,0 +1,55 @@ + + + +glGetQueryObject - OpenGL 4 Reference Pages

Name

glGetQueryObject — return parameters of a query object

C Specification

void glGetQueryObjectiv(GLuint  id,
 GLenum  pname,
 GLint *  params);
void glGetQueryObjectuiv(GLuint  id,
 GLenum  pname,
 GLuint *  params);
void glGetQueryObjecti64v(GLuint  id,
 GLenum  pname,
 GLint64 *  params);
void glGetQueryObjectui64v(GLuint  id,
 GLenum  pname,
 GLuint64 *  params);

Parameters

id

+ Specifies the name of a query object. +

pname

+ Specifies the symbolic name of a query object parameter. + Accepted values are GL_QUERY_RESULT or GL_QUERY_RESULT_AVAILABLE. +

params

+ Returns the requested data. +

Description

+ glGetQueryObject returns in params a selected parameter of the query object + specified by id. +

+ pname names a specific query object parameter. pname can be as follows: +

GL_QUERY_RESULT

+ params returns the value of the query object's passed samples counter. + The initial value is 0. +

GL_QUERY_RESULT_AVAILABLE

+ params returns whether the passed samples counter is immediately available. + If a delay would occur waiting for the query result, GL_FALSE is returned. + Otherwise, GL_TRUE is returned, which also indicates that the results of all + previous queries are available as well. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetQueryObject implicitly flushes the GL pipeline so that any incomplete rendering + delimited by the occlusion query completes in finite time. +

+ If multiple queries are issued using the same query object id before calling + glGetQueryObject, the results of the most recent query will be returned. In this case, + when issuing a new query, the results of the previous query are discarded. +

+ glGetQueryObjecti64v and glGetQueryObjectui64v are available only + if the GL version is 3.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_OPERATION is generated if id is not the name of a query object. +

+ GL_INVALID_OPERATION is generated if id is the name of a currently active + query object. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetQueryiv.xml b/upstream-man-pages/man4/xhtml/glGetQueryiv.xml new file mode 100644 index 0000000..5ed6cde --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetQueryiv.xml @@ -0,0 +1,39 @@ + + + +glGetQueryiv - OpenGL 4 Reference Pages

Name

glGetQueryiv — return parameters of a query object target

C Specification

void glGetQueryiv(GLenum  target,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies a query object target. + Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE + GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_TIME_ELAPSED, or GL_TIMESTAMP. +

pname

+ Specifies the symbolic name of a query object target parameter. + Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. +

params

+ Returns the requested data. +

Description

+ glGetQueryiv returns in params a selected parameter of the query object target + specified by target. +

+ pname names a specific query object target parameter. When pname is + GL_CURRENT_QUERY, the name of the currently active query for target, + or zero if no query is active, will be placed in params. + If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number + of bits used to hold the result of queries for target is returned in params. +

Notes

+ The target GL_ANY_SAMPLES_PASSED_CONSERVATIVE is available only if the GL version is 4.3 or greater. +

+ If an error is generated, + no change is made to the contents of params. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

See Also

+ glGetQueryObject, + glIsQuery +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetRenderbufferParameter.xml b/upstream-man-pages/man4/xhtml/glGetRenderbufferParameter.xml new file mode 100644 index 0000000..3a02779 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetRenderbufferParameter.xml @@ -0,0 +1,41 @@ + + + +glGetRenderbufferParameteriv - OpenGL 4 Reference Pages

Name

glGetRenderbufferParameteriv — retrieve information about a bound renderbuffer object

C Specification

void glGetRenderbufferParameteriv(GLenum  target,
 GLenum  pname,
 GLint * params);

Parameters

target

+ Specifies the target of the query operation. target must be GL_RENDERBUFFER. +

pname

+ Specifies the parameter whose value to retrieve from the renderbuffer bound to target. +

params

+ Specifies the address of an array to receive the value of the queried parameter. +

Description

+ glGetRenderbufferParameteriv retrieves information about a bound renderbuffer object. target + specifies the target of the query operation and must be GL_RENDERBUFFER. pname specifies + the parameter whose value to query and must be one of GL_RENDERBUFFER_WIDTH, GL_RENDERBUFFER_HEIGHT, + GL_RENDERBUFFER_INTERNAL_FORMAT, GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + GL_RENDERBUFFER_DEPTH_SIZE, GL_RENDERBUFFER_STENCIL_SIZE, or GL_RENDERBUFFER_SAMPLES. +

+ Upon a successful return from glGetRenderbufferParameteriv, if pname is GL_RENDERBUFFER_WIDTH, + GL_RENDERBUFFER_HEIGHT, GL_RENDERBUFFER_INTERNAL_FORMAT, or GL_RENDERBUFFER_SAMPLES, + then params will contain the width in pixels, the height in pixels, the internal format, or the number of samples, respectively, + of the image of the renderbuffer currently bound to target. +

+ If pname is GL_RENDERBUFFER_RED_SIZE, GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_BLUE_SIZE, GL_RENDERBUFFER_ALPHA_SIZE, GL_RENDERBUFFER_DEPTH_SIZE, + or GL_RENDERBUFFER_STENCIL_SIZE, then params will contain the actual resolutions (not the resolutions + specified when the image array was defined) for the red, green, blue, alpha depth, or stencil components, respectively, of the image of the + renderbuffer currently bound to target. +

Errors

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetSamplerParameter.xml b/upstream-man-pages/man4/xhtml/glGetSamplerParameter.xml new file mode 100644 index 0000000..5192b21 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetSamplerParameter.xml @@ -0,0 +1,103 @@ + + + +glGetSamplerParameter - OpenGL 4 Reference Pages

Name

glGetSamplerParameter — return sampler parameter values

C Specification

void glGetSamplerParameterfv(GLuint  sampler,
 GLenum  pname,
 GLfloat *  params);
void glGetSamplerParameteriv(GLuint  sampler,
 GLenum  pname,
 GLint *  params);
void glGetSamplerParameterIiv(GLuint  sampler,
 GLenum  pname,
 GLint *  params);
void glGetSamplerParameterIuiv(GLuint  sampler,
 GLenum  pname,
 GLuint *  params);

Parameters

sampler

+ Specifies name of the sampler object from which to retrieve parameters. +

pname

+ Specifies the symbolic name of a sampler parameter. + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, and + GL_TEXTURE_COMPARE_FUNC + are accepted. +

params

+ Returns the sampler parameters. +

Description

+ glGetSamplerParameter returns in params the value or values of the sampler parameter + specified as pname. + sampler defines the target sampler, and must be the name of an existing sampler object, returned from a previous call + to glGenSamplers. + pname accepts the same symbols as glSamplerParameter, + with the same interpretations: +

GL_TEXTURE_MAG_FILTER

+ Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. +

GL_TEXTURE_MIN_FILTER

+ Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MIN_LOD

+ Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . +

GL_TEXTURE_MAX_LOD

+ Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. +

GL_TEXTURE_WRAP_S

+ Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_T

+ Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). +

GL_TEXTURE_COMPARE_MODE

+ Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glSamplerParameter. +

GL_TEXTURE_COMPARE_FUNC

+ Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glSamplerParameter. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetSamplerParameter is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if sampler is not the name of a sampler object returned from + a previous call to glGenSamplers. +

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetShader.xml b/upstream-man-pages/man4/xhtml/glGetShader.xml new file mode 100644 index 0000000..8139a5c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetShader.xml @@ -0,0 +1,58 @@ + + + +glGetShader - OpenGL 4 Reference Pages

Name

glGetShaderiv — Returns a parameter from a shader object

C Specification

void glGetShaderiv(GLuint  shader,
 GLenum  pname,
 GLint * params);

Parameters

shader

Specifies the shader object to be + queried.

pname

Specifies the object parameter. Accepted + symbolic names are + GL_SHADER_TYPE, + GL_DELETE_STATUS, + GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH.

params

Returns the requested object parameter.

Description

glGetShader + returns in params + the value of a parameter for a specific shader object. The + following parameters are defined:

GL_SHADER_TYPE

params returns + GL_VERTEX_SHADER if + shader is a vertex shader + object, GL_GEOMETRY_SHADER if shader + is a geometry shader object, and GL_FRAGMENT_SHADER + if shader is a fragment + shader object.

GL_DELETE_STATUS

params returns + GL_TRUE if + shader is currently flagged + for deletion, and GL_FALSE + otherwise.

GL_COMPILE_STATUS

params returns + GL_TRUE if the last compile + operation on shader was + successful, and GL_FALSE + otherwise.

GL_INFO_LOG_LENGTH

params returns the + number of characters in the information log for + shader including the null + termination character (i.e., the size of the + character buffer required to store the information + log). If shader has no + information log, a value of 0 is returned.

GL_SHADER_SOURCE_LENGTH

params returns the + length of the concatenation of the source strings + that make up the shader source for the + shader, including the null + termination character. (i.e., the size of the + character buffer required to store the shader + source). If no source code exists, 0 is + returned.

Notes

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader does not refer to a shader + object.

GL_INVALID_ENUM is generated if + pname is not an accepted value.

Associated Gets

glGetShaderInfoLog + with argument shader

glGetShaderSource + with argument shader

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetShaderInfoLog.xml b/upstream-man-pages/man4/xhtml/glGetShaderInfoLog.xml new file mode 100644 index 0000000..c6fabc2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetShaderInfoLog.xml @@ -0,0 +1,46 @@ + + + +glGetShaderInfoLog - OpenGL 4 Reference Pages

Name

glGetShaderInfoLog — Returns the information log for a shader object

C Specification

void glGetShaderInfoLog(GLuint  shader,
 GLsizei  maxLength,
 GLsizei * length,
 GLchar * infoLog);

Parameters

shader

Specifies the shader object whose information + log is to be queried.

maxLength

Specifies the size of the character buffer for + storing the returned information log.

length

Returns the length of the string returned in + infoLog (excluding the null + terminator).

infoLog

Specifies an array of characters that is used + to return the information log.

Description

glGetShaderInfoLog returns the + information log for the specified shader object. The information + log for a shader object is modified when the shader is compiled. + The string that is returned will be null terminated.

glGetShaderInfoLog returns in + infoLog as much of the information log as + it can, up to a maximum of maxLength + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned information + log can be obtained by calling + glGetShader + with the value GL_INFO_LOG_LENGTH.

The information log for a shader object is a string that + may contain diagnostic messages, warning messages, and other + information about the last compile operation. When a shader + object is created, its information log will be a string of + length 0.

Notes

The information log for a shader object is the OpenGL + implementer's primary mechanism for conveying information about + the compilation process. Therefore, the information log can be + helpful to application developers during the development + process, even when compilation is successful. Application + developers should not expect different OpenGL implementations to + produce identical information logs.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + maxLength is less than 0.

Associated Gets

glGetShader + with argument GL_INFO_LOG_LENGTH

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetShaderPrecisionFormat.xml b/upstream-man-pages/man4/xhtml/glGetShaderPrecisionFormat.xml new file mode 100644 index 0000000..95b2248 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetShaderPrecisionFormat.xml @@ -0,0 +1,42 @@ + + + +glGetShaderPrecisionFormat - OpenGL 4 Reference Pages

Name

glGetShaderPrecisionFormat — retrieve the range and precision for numeric formats supported by the shader compiler

C Specification

void glGetShaderPrecisionFormat(GLenum  shaderType,
 GLenum  precisionType,
 GLint * range,
 GLint * precision);

Parameters

shaderType

+ Specifies the type of shader whose precision to query. shaderType + must be GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. +

precisionType

+ Specifies the numeric format whose precision and range to query. +

range

+ Specifies the address of array of two integers into which encodings of the implementation's + numeric range are returned. +

precision

+ Specifies the address of an integer into which the numeric precision of the implementation + is written. +

Description

+ glGetShaderPrecisionFormat retrieves the numeric range and precision for + the implementation's representation of quantities in different numeric formats in specified + shader type. shaderType specifies the type of shader for which the numeric + precision and range is to be retrieved and must be one of GL_VERTEX_SHADER + or GL_FRAGMENT_SHADER. precisionType specifies the + numeric format to query and must be one of GL_LOW_FLOAT, GL_MEDIUM_FLOAT + GL_HIGH_FLOAT, GL_LOW_INT, GL_MEDIUM_INT, + or GL_HIGH_INT. +

+ range points to an array of two integers into which the format's numeric range + will be returned. If min and max are the smallest values representable in the format, then the values + returned are defined to be: range[0] = floor(log2(|min|)) and + range[1] = floor(log2(|max|)). +

+ precision specifies the address of an integer into which will be written + the log2 value of the number of bits of precision of the format. If the smallest representable + value greater than 1 is 1 + eps, then the integer addressed by precision + will contain floor(-log2(eps)). +

Errors

+ GL_INVALID_ENUM is generated if shaderType or + precisionType is not an accepted value. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetShaderSource.xml b/upstream-man-pages/man4/xhtml/glGetShaderSource.xml new file mode 100644 index 0000000..5f8a53c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetShaderSource.xml @@ -0,0 +1,39 @@ + + + +glGetShaderSource - OpenGL 4 Reference Pages

Name

glGetShaderSource — Returns the source code string from a shader object

C Specification

void glGetShaderSource(GLuint  shader,
 GLsizei  bufSize,
 GLsizei * length,
 GLchar * source);

Parameters

shader

Specifies the shader object to be + queried.

bufSize

Specifies the size of the character buffer for + storing the returned source code string.

length

Returns the length of the string returned in + source (excluding the null + terminator).

source

Specifies an array of characters that is used + to return the source code string.

Description

glGetShaderSource returns the + concatenation of the source code strings from the shader object + specified by shader. The source code + strings for a shader object are the result of a previous call to + glShaderSource. + The string returned by the function will be null + terminated.

glGetShaderSource returns in + source as much of the source code string + as it can, up to a maximum of bufSize + characters. The number of characters actually returned, + excluding the null termination character, is specified by + length. If the length of the returned + string is not required, a value of NULL can + be passed in the length argument. The + size of the buffer required to store the returned source code + string can be obtained by calling + glGetShader + with the value + GL_SHADER_SOURCE_LENGTH.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + bufSize is less than 0.

Associated Gets

glGetShader + with argument + GL_SHADER_SOURCE_LENGTH

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetString.xml b/upstream-man-pages/man4/xhtml/glGetString.xml new file mode 100644 index 0000000..a4b4deb --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetString.xml @@ -0,0 +1,74 @@ + + + +glGetString - OpenGL 4 Reference Pages

Name

glGetString — return a string describing the current GL connection

C Specification

const GLubyte* glGetString(GLenum name);

C Specification

const GLubyte* glGetStringi(GLenum  name,
 GLuint  index);

Parameters

name

+ Specifies a symbolic constant, one of + GL_VENDOR, GL_RENDERER, + GL_VERSION, or GL_SHADING_LANGUAGE_VERSION. + Additionally, glGetStringi accepts the GL_EXTENSIONS token. +

index

+ For glGetStringi, specifies the index of the string to return. +

Description

+ glGetString returns a pointer to a static string + describing some aspect of the current GL connection. + name can be one of the following: +

GL_VENDOR

+

+ Returns the company responsible for this GL implementation. + This name does not change from release to release. +

GL_RENDERER

+

+ Returns the name of the renderer. + This name is typically specific to a particular configuration of a hardware + platform. + It does not change from release to release. +

GL_VERSION

+

+ Returns a version or release number. +

GL_SHADING_LANGUAGE_VERSION

+

+ Returns a version or release number for the shading language. +

+ glGetStringi returns a pointer to a static string + indexed by index. + name can be one of the following: +

GL_EXTENSIONS

+

+ For glGetStringi only, returns the extension string + supported by the implementation at index. +

+ Strings GL_VENDOR and GL_RENDERER together uniquely specify + a platform. They do not change from release to release and should be used + by platform-recognition algorithms. +

+ The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. + The version number uses one + of these forms: +

+ major_number.minor_number + major_number.minor_number.release_number +

+ Vendor-specific information may follow the version + number. Its format depends on the implementation, but + a space always separates the version number and + the vendor-specific information. +

+ All strings are null-terminated. +

Notes

+ If an error is generated, glGetString returns 0. +

+ The client and server may support different versions. + glGetString always returns a compatible version number. + The release number always describes the server. +

Errors

+ GL_INVALID_ENUM is generated if name is not an accepted value. +

+ GL_INVALID_VALUE is generated by glGetStringi if + index is outside the valid range for indexed state name. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetSubroutineIndex.xml b/upstream-man-pages/man4/xhtml/glGetSubroutineIndex.xml new file mode 100644 index 0000000..2b29b7b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetSubroutineIndex.xml @@ -0,0 +1,40 @@ + + + +glGetSubroutineIndex - OpenGL 4 Reference Pages

Name

glGetSubroutineIndex — retrieve the index of a subroutine uniform of a given shader stage within a program

C Specification

GLuint glGetSubroutineIndex(GLuint  program,
 GLenum  shadertype,
 const GLchar * name);

Parameters

program

+ Specifies the name of the program containing shader stage. +

shadertype

+ Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

name

+ Specifies the name of the subroutine uniform whose index to query. +

Description

+ glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage attached to a program object. + program contains the name of the program to which the shader is attached. shadertype + specifies the stage from which to query shader subroutine index. name contains the null-terminated + name of the subroutine uniform whose name to query. +

+ If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX + is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, + a value between zero and the value of GL_ACTIVE_SUBROUTINES minus one will be returned. Subroutine indices + are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINES minus + one for the shader stage. +

Errors

+ GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. +

+ GL_INVALID_VALUE is generated if program is not the name of an + existing program object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetSubroutineUniformLocation.xml b/upstream-man-pages/man4/xhtml/glGetSubroutineUniformLocation.xml new file mode 100644 index 0000000..6fea014 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetSubroutineUniformLocation.xml @@ -0,0 +1,42 @@ + + + +glGetSubroutineUniformLocation - OpenGL 4 Reference Pages

Name

glGetSubroutineUniformLocation — retrieve the location of a subroutine uniform of a given shader stage within a program

C Specification

GLint glGetSubroutineUniformLocation(GLuint  program,
 GLenum  shadertype,
 const GLchar * name);

Parameters

program

+ Specifies the name of the program containing shader stage. +

shadertype

+ Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

name

+ Specifies the name of the subroutine uniform whose index to query. +

Description

+ glGetSubroutineUniformLocation returns the location of the subroutine uniform variable + name in the shader stage of type shadertype attached to + program, with behavior otherwise identical to + glGetUniformLocation. +

+ If name is not the name of a subroutine uniform in the shader stage, -1 + is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, + a value between zero and the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one will be returned. + Subroutine locations are assigned using consecutive integers in the range from zero to the value + of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one for the shader stage. For active subroutine uniforms + declared as arrays, the declared array elements are assigned consecutive locations. +

Errors

+ GL_INVALID_ENUM is generated if shadertype or pname + is not one of the accepted values. +

+ GL_INVALID_VALUE is generated if program is not the name of an + existing program object. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetSync.xml b/upstream-man-pages/man4/xhtml/glGetSync.xml new file mode 100644 index 0000000..1aec798 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetSync.xml @@ -0,0 +1,49 @@ + + + +glGetSynciv - OpenGL 4 Reference Pages

Name

glGetSynciv — query the properties of a sync object

C Specification

void glGetSynciv(GLsync  sync,
 GLenum  pname,
 GLsizei  bufSize,
 GLsizei * length,
 GLint * values);

Parameters

sync

+ Specifies the sync object whose properties to query. +

pname

+ Specifies the parameter whose value to retrieve from the sync object specified in sync. +

bufSize

+ Specifies the size of the buffer whose address is given in values. +

length

+ Specifies the address of an variable to receive the number of integers placed in values. +

values

+ Specifies the address of an array to receive the values of the queried parameter. +

Description

+ glGetSynciv retrieves properties of a sync object. sync specifies the name of the sync + object whose properties to retrieve. +

+ On success, glGetSynciv replaces up to bufSize integers in values with the + corresponding property values of the object being queried. The actual number of integers replaced is returned in the variable whose address is + specified in length. If length is NULL, no length is returned. +

+ If pname is GL_OBJECT_TYPE, a single value representing the specific type of the sync object is + placed in values. The only type supported is GL_SYNC_FENCE. +

+ If pname is GL_SYNC_STATUS, a single value representing the status of the sync object + (GL_SIGNALED or GL_UNSIGNALED) is placed in values. +

+ If pname is GL_SYNC_CONDITION, a single value representing the condition of the sync object + is placed in values. The only condition supported is GL_SYNC_GPU_COMMANDS_COMPLETE. +

+ If pname is GL_SYNC_FLAGS, a single value representing the flags with which the sync object + was created is placed in values. No flags are currently supported[1]. +

+ If an error occurs, nothing will be written to values or length. +

Errors

+ GL_INVALID_VALUE is generated if sync is not the name of a sync object. +

+ GL_INVALID_ENUM is generated if pname is not one of the accepted tokens. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +



[1] flags is + expected to be used in future extensions to the sync objects.

diff --git a/upstream-man-pages/man4/xhtml/glGetTexImage.xml b/upstream-man-pages/man4/xhtml/glGetTexImage.xml new file mode 100644 index 0000000..922738e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetTexImage.xml @@ -0,0 +1,218 @@ + + + +glGetTexImage - OpenGL 4 Reference Pages

Name

glGetTexImage — return a texture image

C Specification

void glGetTexImage(GLenum  target,
 GLint  level,
 GLenum  format,
 GLenum  type,
 GLvoid *  img);

Parameters

target

+ Specifies which texture is to be obtained. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + are accepted. +

level

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

format

+ Specifies a pixel format for the returned data. + The supported formats are + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RG, + GL_RGB, + GL_RGBA, + GL_BGR, + GL_BGRA, + GL_RED_INTEGER, + GL_GREEN_INTEGER, + GL_BLUE_INTEGER, + GL_RG_INTEGER, + GL_RGB_INTEGER, + GL_RGBA_INTEGER, + GL_BGR_INTEGER, + GL_BGRA_INTEGER. +

type

+ Specifies a pixel type for the returned data. + The supported types are + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, and + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

img

+ Returns the texture image. + Should be a pointer to an array of the type specified by type. +

Description

+ glGetTexImage returns a texture image into img. + target specifies whether the desired texture image is one specified by + glTexImage1D (GL_TEXTURE_1D), + glTexImage2D (GL_TEXTURE_1D_ARRAY, GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D or any of + GL_TEXTURE_CUBE_MAP_*), + or + glTexImage3D (GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D). + level specifies the level-of-detail number of the desired image. + format and type specify the format and type of the desired image array. + See the reference page for glTexImage1D + for a description of the acceptable values for the format and type + parameters, respectively. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a texture image is + requested, img is treated as a byte offset into the buffer object's data store. +

+ To understand the operation of glGetTexImage, consider the selected internal + four-component texture image to be an RGBA color buffer the size of the image. + The semantics of glGetTexImage are then identical to those of glReadPixels, + with the exception that no pixel transfer operations are performed, + when called with the same format and type, + with x and y set to 0, + width set to the width of the texture image + and height set to 1 for 1D images, + or to the height of the texture image + for 2D images. +

+ If the selected texture image does not contain four components, + the following mappings are applied. + Single-component textures are treated as RGBA buffers with red set + to the single-component value, + green set to 0, blue set to 0, and alpha set to 1. + Two-component textures are treated as RGBA buffers with red set to + the value of component zero, + alpha set to the value of component one, + and green and blue set to 0. + Finally, + three-component textures are treated as RGBA buffers with red set to + component zero, + green set to component one, + blue set to component two, + and alpha set to 1. +

+ To determine the required size of img, + use glGetTexLevelParameter to determine the dimensions of the + internal texture image, + then scale the required number of pixels by the storage required for + each pixel, + based on format and type. + Be sure to take the pixel storage parameters into account, + especially GL_PACK_ALIGNMENT. +

Notes

+ If an error is generated, + no change is made to the contents of img. +

+ glGetTexImage returns the texture image for the active texture unit. +

Errors

+ GL_INVALID_ENUM is generated if target, format, or type is not + an accepted value. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + + log + 2 + + ⁡ + + max + + + , + where + max + is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV and format is not GL_RGB. +

+ GL_INVALID_OPERATION is returned if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV and format is neither GL_RGBA + or GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and img is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexLevelParameter with argument GL_TEXTURE_WIDTH +

+ glGetTexLevelParameter with argument GL_TEXTURE_HEIGHT +

+ glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT +

+ glGet with arguments GL_PACK_ALIGNMENT and others +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetTexLevelParameter.xml b/upstream-man-pages/man4/xhtml/glGetTexLevelParameter.xml new file mode 100644 index 0000000..894e998 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetTexLevelParameter.xml @@ -0,0 +1,199 @@ + + + +glGetTexLevelParameter - OpenGL 4 Reference Pages

Name

glGetTexLevelParameter — return texture parameter values for a specific level of detail

C Specification

void glGetTexLevelParameterfv(GLenum  target,
 GLint  level,
 GLenum  pname,
 GLfloat *  params);
void glGetTexLevelParameteriv(GLenum  target,
 GLint  level,
 GLenum  pname,
 GLint *  params);

Parameters

target

+ Specifies the symbolic name of the target texture, + one of + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or + GL_TEXTURE_BUFFER. +

level

+ Specifies the level-of-detail number of the desired image. + Level 0 is the base image level. + Level + n + is the + nth + mipmap reduction image. +

pname

+ Specifies the symbolic name of a texture parameter. + GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT, + GL_TEXTURE_DEPTH, + GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_BORDER, + GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_DEPTH_SIZE, + GL_TEXTURE_COMPRESSED, + GL_TEXTURE_COMPRESSED_IMAGE_SIZE, and + GL_TEXTURE_BUFFER_OFFSET + are accepted. +

params

+ Returns the requested data. +

Description

+ glGetTexLevelParameter returns in params texture parameter values for a specific + level-of-detail value, + specified as level. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, + GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_3D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

+ GL_MAX_TEXTURE_SIZE, and GL_MAX_3D_TEXTURE_SIZE are not really + descriptive enough. + It has to report the largest square texture image that can be + accommodated with mipmaps and borders, + but a long skinny texture, or a texture without mipmaps and borders, may + easily fit in texture memory. + The proxy targets allow the user to more accurately query + whether the GL can accommodate a texture of a given configuration. + If the texture cannot be accommodated, the texture state variables, which + may be queried with glGetTexLevelParameter, are set to 0. If the texture can be accommodated, + the texture state values will be set as they would be set for a + non-proxy target. +

+ pname specifies the texture parameter whose value or values + will be returned. +

+ The accepted parameter names are as follows: +

GL_TEXTURE_WIDTH

+

+ params returns a single value, + the width of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_HEIGHT

+

+ params returns a single value, + the height of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_DEPTH

+

+ params returns a single value, + the depth of the texture image. + This value includes the border of the texture image. The initial value is + 0. +

GL_TEXTURE_INTERNAL_FORMAT

+

+ params returns a single value, + the internal format of the texture image. +

GL_TEXTURE_RED_TYPE,
GL_TEXTURE_GREEN_TYPE,
GL_TEXTURE_BLUE_TYPE,
GL_TEXTURE_ALPHA_TYPE,
GL_TEXTURE_DEPTH_TYPE

+

+ The data type used to store the component. + The types GL_NONE, GL_SIGNED_NORMALIZED, + GL_UNSIGNED_NORMALIZED, GL_FLOAT, + GL_INT, and GL_UNSIGNED_INT may be returned + to indicate signed normalized fixed-point, unsigned normalized fixed-point, floating-point, integer unnormalized, and + unsigned integer unnormalized components, respectively. +

GL_TEXTURE_RED_SIZE,
GL_TEXTURE_GREEN_SIZE,
GL_TEXTURE_BLUE_SIZE,
GL_TEXTURE_ALPHA_SIZE,
GL_TEXTURE_DEPTH_SIZE

+

+ The internal storage resolution of an individual component. + The resolution chosen by the GL will be a close match for the resolution + requested by the user with the component argument of glTexImage1D, + glTexImage2D, glTexImage3D, glCopyTexImage1D, and + glCopyTexImage2D. The initial value is 0. +

GL_TEXTURE_COMPRESSED

+

+ params returns a single boolean value indicating if the texture image is + stored in a compressed internal format. The initiali value is GL_FALSE. +

GL_TEXTURE_COMPRESSED_IMAGE_SIZE

+

+ params returns a single integer value, the number of unsigned bytes of the + compressed texture image that would be returned from + glGetCompressedTexImage. +

GL_TEXTURE_BUFFER_OFFSET

+

+ params returns a single integer value, the offset into the + data store of the buffer bound to a buffer texture. + glTexBufferRange. +

GL_TEXTURE_BUFFER_SIZE

+

+ params returns a single integer value, the size of the range of a + data store of the buffer bound to a buffer texture. + glTexBufferRange. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ glGetTexLevelParameter returns the texture level parameters for the active texture unit. +

+ GL_TEXTURE_BUFFER_OFFSET and GL_TEXTURE_BUFFER_SIZE are available only + if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_BUFFER + and level is not zero. +

+ GL_INVALID_OPERATION is generated if + GL_TEXTURE_COMPRESSED_IMAGE_SIZE is queried on texture images with an + uncompressed internal format or on proxy targets. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010-2012 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetTexParameter.xml b/upstream-man-pages/man4/xhtml/glGetTexParameter.xml new file mode 100644 index 0000000..43f6c87 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetTexParameter.xml @@ -0,0 +1,177 @@ + + + +glGetTexParameter - OpenGL 4 Reference Pages

Name

glGetTexParameter — return texture parameter values

C Specification

void glGetTexParameterfv(GLenum  target,
 GLenum  pname,
 GLfloat *  params);
void glGetTexParameteriv(GLenum  target,
 GLenum  pname,
 GLint *  params);
void glGetTexParameterIiv(GLenum  target,
 GLenum  pname,
 GLint *  params);
void glGetTexParameterIuiv(GLenum  target,
 GLenum  pname,
 GLuint *  params);

Parameters

target

+ Specifies the symbolic name of the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_3D, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, and + GL_TEXTURE_CUBE_MAP_ARRAY + are accepted. +

pname

+ Specifies the symbolic name of a texture parameter. + GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_IMMUTABLE_FORMAT, + GL_TEXTURE_IMMUTABLE_LEVELS, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_MIN_LEVEL, + GL_TEXTURE_VIEW_NUM_LAYERS, + GL_TEXTURE_VIEW_NUM_LEVELS, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, and + GL_TEXTURE_WRAP_R + are accepted. +

params

+ Returns the texture parameters. +

Description

+ glGetTexParameter returns in params the value or values of the texture parameter + specified as pname. + target defines the target texture. + GL_TEXTURE_1D, + GL_TEXTURE_2D, + GL_TEXTURE_3D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_ARRAY + specify one-, two-, or three-dimensional, one-dimensional array, two-dimensional array, rectangle, cube-mapped or cube-mapped array texturing, respectively. + pname accepts the same symbols as glTexParameter, + with the same interpretations: +

GL_DEPTH_STENCIL_TEXTURE_MODE

+ Returns the single-value depth stencil texture mode, a symbolic constant. + The initial value is GL_DEPTH_COMPONENT. +

GL_TEXTURE_MAG_FILTER

+ Returns the single-valued texture magnification filter, + a symbolic constant. The initial value is GL_LINEAR. +

GL_TEXTURE_MIN_FILTER

+ Returns the single-valued texture minification filter, + a symbolic constant. The initial value is GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MIN_LOD

+ Returns the single-valued texture minimum level-of-detail value. The + initial value is + + + -1000 + . +

GL_TEXTURE_MAX_LOD

+ Returns the single-valued texture maximum level-of-detail value. The + initial value is 1000. +

GL_TEXTURE_BASE_LEVEL

+ Returns the single-valued base texture mipmap level. The initial value is 0. +

GL_TEXTURE_MAX_LEVEL

+ Returns the single-valued maximum texture mipmap array level. The initial + value is 1000. +

GL_TEXTURE_SWIZZLE_R

+ Returns the red component swizzle. The initial value is GL_RED. +

GL_TEXTURE_SWIZZLE_G

+ Returns the green component swizzle. The initial value is GL_GREEN. +

GL_TEXTURE_SWIZZLE_B

+ Returns the blue component swizzle. The initial value is GL_BLUE. +

GL_TEXTURE_SWIZZLE_A

+ Returns the alpha component swizzle. The initial value is GL_ALPHA. +

GL_TEXTURE_SWIZZLE_RGBA

+ Returns the component swizzle for all channels in a single query. +

GL_TEXTURE_WRAP_S

+ Returns the single-valued wrapping function for texture coordinate + s, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_T

+ Returns the single-valued wrapping function for texture coordinate + t, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Returns the single-valued wrapping function for texture coordinate + r, + a symbolic constant. The initial value is GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ Returns four integer or floating-point numbers that comprise the RGBA color + of the texture border. + Floating-point values are returned in the range + + + + 0 + 1 + + . + Integer values are returned as a linear mapping of the internal floating-point + representation such that 1.0 maps to the most positive representable + integer and + + + -1.0 + + maps to the most negative representable + integer. The initial value is (0, 0, 0, 0). +

GL_TEXTURE_COMPARE_MODE

+ Returns a single-valued texture comparison mode, a symbolic constant. The + initial value is GL_NONE. See glTexParameter. +

GL_TEXTURE_COMPARE_FUNC

+ Returns a single-valued texture comparison function, a symbolic constant. The + initial value is GL_LEQUAL. See glTexParameter. +

GL_TEXTURE_VIEW_MIN_LEVEL

+ Returns a single-valued base level of a texture view relative to its parent. The + initial value is 0. See glTextureView. +

GL_TEXTURE_VIEW_NUM_LEVELS

+ Returns a single-valued number of levels of detail of a texture view. + See glTextureView. +

GL_TEXTURE_VIEW_MIN_LAYER

+ Returns a single-valued first level of a texture array view relative to its parent. + See glTextureView. +

GL_TEXTURE_VIEW_NUM_LAYERS

+ Returns a single-valued number of layers in a texture array view. + See glTextureView. +

GL_TEXTURE_IMMUTABLE_LEVELS

+ Returns a single-valued number of immutable texture levels in a texture view. + See glTextureView. +

+ In addition to the parameters that may be set with glTexParameter, + glGetTexParameter accepts the following read-only parameters: +

GL_TEXTURE_IMMUTABLE_FORMAT

+ Returns non-zero if the texture has an immutable format. Textures become + immutable if their storage is specified with glTexStorage1D, + glTexStorage2D or glTexStorage3D. + The initial value is GL_FALSE. +

Notes

+ If an error is generated, + no change is made to the contents of params. +

+ GL_DEPTH_STENCIL_TEXTURE_MODE, GL_TEXTURE_VIEW_MIN_LEVEL, + GL_TEXTURE_VIEW_NUM_LEVELS, GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_NUM_LAYERS and GL_TEXTURE_IMMUTABLE_LEVELS are available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not an + accepted value. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010-2012 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetTransformFeedbackVarying.xml b/upstream-man-pages/man4/xhtml/glGetTransformFeedbackVarying.xml new file mode 100644 index 0000000..96c1dbb --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetTransformFeedbackVarying.xml @@ -0,0 +1,67 @@ + + + +glGetTransformFeedbackVarying - OpenGL 4 Reference Pages

Name

glGetTransformFeedbackVarying — retrieve information about varying variables selected for transform feedback

C Specification

void glGetTransformFeedbackVarying(GLuint program,
 GLuint index,
 GLsizei bufSize,
 GLsizei * length,
 GLsizei size,
 GLenum * type,
 char * name);

Parameters

program

+ The name of the target program object. +

index

+ The index of the varying variable whose information to retrieve. +

bufSize

+ The maximum number of characters, including the null terminator, that may be written into name. +

length

+ The address of a variable which will receive the number of characters written into name, + excluding the null-terminator. If length is NULL no length is returned. +

size

+ The address of a variable that will receive the size of the varying. +

type

+ The address of a variable that will recieve the type of the varying. +

name

+ The address of a buffer into which will be written the name of the varying. +

Description

+ Information about the set of varying variables in a linked program that will be captured + during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. + glGetTransformFeedbackVarying provides information about the varying + variable selected by index. An index of 0 selects + the first varying variable specified in the varyings array passed + to glTransformFeedbackVaryings, and + an index of GL_TRANSFORM_FEEDBACK_VARYINGS-1 selects + the last such variable. +

+ The name of the selected varying is returned as a null-terminated string in + name. The actual number of characters written into name, + excluding the null terminator, is returned in length. If length + is NULL, no length is returned. The maximum number of characters that may be written into name, + including the null terminator, is specified by bufSize. +

+ The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + which can be queried with glGetProgram. +

+ For the selected varying variable, its type is returned into type. The size of + the varying is returned into size. The value in size is + in units of the type returned in type. The type returned can be any of the + scalar, vector, or matrix attribute types returned by glGetActiveAttrib. + If an error occurred, the return parameters length, size, + type and name will be unmodified. This command will return as much + information about the varying variables as possible. If no information is available, length + will be set to zero and name will be an empty string. This situation could + arise if glGetTransformFeedbackVarying is called after a failed link. +

Errors

+ GL_INVALID_VALUE is generated if program is not + the name of a program object. +

+ GL_INVALID_VALUE is generated if index is greater or equal to + the value of GL_TRANSFORM_FEEDBACK_VARYINGS. +

+ GL_INVALID_OPERATION is generated program has not been linked. +

Associated Gets

+ glGetProgram with argument GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetUniform.xml b/upstream-man-pages/man4/xhtml/glGetUniform.xml new file mode 100644 index 0000000..6568e1b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetUniform.xml @@ -0,0 +1,55 @@ + + + +glGetUniform - OpenGL 4 Reference Pages

Name

glGetUniform — Returns the value of a uniform variable

C Specification

void glGetUniformfv(GLuint  program,
 GLint  location,
 GLfloat * params);
void glGetUniformiv(GLuint  program,
 GLint  location,
 GLint * params);
void glGetUniformuiv(GLuint  program,
 GLint  location,
 GLuint * params);
void glGetUniformdv(GLuint  program,
 GLint  location,
 GLdouble * params);

Parameters

program

Specifies the program object to be + queried.

location

Specifies the location of the uniform variable + to be queried.

params

Returns the value of the specified uniform + variable.

Description

glGetUniform returns in + params the value(s) of the specified + uniform variable. The type of the uniform variable specified by + location determines the number of values + returned. If the uniform variable is defined in the shader as a + boolean, int, or float, a single value will be returned. If it + is defined as a vec2, ivec2, or bvec2, two values will be + returned. If it is defined as a vec3, ivec3, or bvec3, three + values will be returned, and so on. To query values stored in + uniform variables declared as arrays, call + glGetUniform for each element of the array. + To query values stored in uniform variables declared as + structures, call glGetUniform for each + field in the structure. The values for uniform variables + declared as a matrix will be returned in column major + order.

The locations assigned to uniform variables are not known + until the program object is linked. After linking has occurred, + the command + glGetUniformLocation + can be used to obtain the location of a uniform variable. This + location value can then be passed to + glGetUniform in order to query the current + value of the uniform variable. After a program object has been + linked successfully, the index values for uniform variables + remain fixed until the next link command occurs. The uniform + variable values can only be queried after a link if the link was + successful.

Notes

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

GL_INVALID_OPERATION is generated if + location does not correspond to a valid + uniform variable location for the specified program object.

Associated Gets

glGetActiveUniform + with arguments program and the index of an active + uniform variable

glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH

glGetUniformLocation + with arguments program and the name of a + uniform variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetUniformBlockIndex.xml b/upstream-man-pages/man4/xhtml/glGetUniformBlockIndex.xml new file mode 100644 index 0000000..0e9869a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetUniformBlockIndex.xml @@ -0,0 +1,36 @@ + + + +glGetUniformBlockIndex - OpenGL 4 Reference Pages

Name

glGetUniformBlockIndex — retrieve the index of a named uniform block

C Specification

GLuint glGetUniformBlockIndex(GLuint  program,
 const GLchar * uniformBlockName);

Parameters

program

+ Specifies the name of a program containing the uniform block. +

uniformBlockName

+ Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. +

Description

+ glGetUniformBlockIndex retrieves the index of a uniform block within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. +

+ glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName + of program. If uniformBlockName does not identify an active uniform block of program, + glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform + blocks of a program are assigned in consecutive order, beginning with zero. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

Notes

+ glGetUniformBlockIndex is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetUniformIndices.xml b/upstream-man-pages/man4/xhtml/glGetUniformIndices.xml new file mode 100644 index 0000000..2b8a021 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetUniformIndices.xml @@ -0,0 +1,44 @@ + + + +glGetUniformIndices - OpenGL 4 Reference Pages

Name

glGetUniformIndices — retrieve the index of a named uniform block

C Specification

void glGetUniformIndices(GLuint  program,
 GLsizei  uniformCount,
 const GLchar ** uniformNames,
 GLuint * uniformIndices);

Parameters

program

+ Specifies the name of a program containing uniforms whose indices to query. +

uniformCount

+ Specifies the number of uniforms whose indices to query. +

uniformNames

+ Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. +

uniformIndices

+ Specifies the address of an array that will receive the indices of the uniforms. +

Description

+ glGetUniformIndices retrieves the indices of a number of uniforms within program. +

+ program must be the name of a program object for which the command + glLinkProgram must have been called in the past, although it is not required that + glLinkProgram must have succeeded. The link could have failed because the number + of active uniforms exceeded the limit. +

+ uniformCount indicates both the number of elements in the array of names uniformNames and the + number of indices that may be written to uniformIndices. +

+ uniformNames contains a list of uniformCount name strings identifying the uniform names to be + queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will + be written to the corresponding element of uniformIndices. If a string in uniformNames is not + the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of + uniformIndices. +

+ If an error occurs, nothing is written to uniformIndices. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the name of a program object for which + glLinkProgram has been called in the past. +

Notes

+ glGetUniformIndices is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetUniformLocation.xml b/upstream-man-pages/man4/xhtml/glGetUniformLocation.xml new file mode 100644 index 0000000..bf9c6b5 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetUniformLocation.xml @@ -0,0 +1,63 @@ + + + +glGetUniformLocation - OpenGL 4 Reference Pages

Name

glGetUniformLocation — Returns the location of a uniform variable

C Specification

GLint glGetUniformLocation(GLuint  program,
 const GLchar * name);

Parameters

program

Specifies the program object to be + queried.

name

Points to a null terminated string containing + the name of the uniform variable whose location is + to be queried.

Description

glGetUniformLocation returns an + integer that represents the location of a specific uniform + variable within a program object. name + must be a null terminated string that contains no white space. + name must be an active uniform variable + name in program that is not a structure, + an array of structures, or a subcomponent of a vector or a + matrix. This function returns -1 if name + does not correspond to an active uniform variable in + program, if name + starts with the reserved prefix "gl_", or if + name is associated with an atomic counter or + a named uniform block.

Uniform variables that are structures or arrays of + structures may be queried by calling + glGetUniformLocation for each field within + the structure. The array element operator "[]" and the + structure field operator "." may be used in + name in order to select elements within + an array or fields within a structure. The result of using these + operators is not allowed to be another structure, an array of + structures, or a subcomponent of a vector or a matrix. Except if + the last part of name indicates a uniform + variable array, the location of the first element of an array + can be retrieved by using the name of the array, or by using the + name appended by "[0]".

The actual locations assigned to uniform variables are not + known until the program object is linked successfully. After + linking has occurred, the command + glGetUniformLocation can be used to obtain + the location of a uniform variable. This location value can then + be passed to + glUniform + to set the value of the uniform variable or to + glGetUniform + in order to query the current value of the uniform variable. + After a program object has been linked successfully, the index + values for uniform variables remain fixed until the next link + command occurs. Uniform variable locations and values can only + be queried after a link if the link was successful.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program has not been successfully + linked.

Associated Gets

glGetActiveUniform + with arguments program and the index of + an active uniform variable

glGetProgram + with arguments program and + GL_ACTIVE_UNIFORMS or + GL_ACTIVE_UNIFORM_MAX_LENGTH

glGetUniform + with arguments program and the name of a + uniform variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetUniformSubroutine.xml b/upstream-man-pages/man4/xhtml/glGetUniformSubroutine.xml new file mode 100644 index 0000000..6593b95 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetUniformSubroutine.xml @@ -0,0 +1,39 @@ + + + +glGetUniformSubroutine - OpenGL 4 Reference Pages

Name

glGetUniformSubroutine — retrieve the value of a subroutine uniform of a given shader stage of the current program

C Specification

void glGetUniformSubroutineuiv(GLenum  shadertype,
 GLint  location,
 GLuint * values);

Parameters

shadertype

+ Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

location

+ Specifies the location of the subroutine uniform. +

values

+ Specifies the address of a variable to receive the value or values of the subroutine uniform. +

Description

+ glGetUniformSubroutine retrieves the value of the subroutine uniform at location + location for shader stage shadertype of the current + program. location must be less than the value of + GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader currently in use at + shader stage shadertype. The value of the subroutine uniform is returned in + values. +

Errors

+ GL_INVALID_ENUM is generated if shadertype is not one of the accepted values. +

+ GL_INVALID_VALUE is generated if location is greater than or equal to + the value of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader currently in use at + shader stage shadertype. +

+ GL_INVALID_OPERATION is generated if no program is active. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetVertexAttrib.xml b/upstream-man-pages/man4/xhtml/glGetVertexAttrib.xml new file mode 100644 index 0000000..c713cae --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetVertexAttrib.xml @@ -0,0 +1,112 @@ + + + +glGetVertexAttrib - OpenGL 4 Reference Pages

Name

glGetVertexAttrib — Return a generic vertex attribute parameter

C Specification

void glGetVertexAttribdv(GLuint  index,
 GLenum  pname,
 GLdouble * params);
void glGetVertexAttribfv(GLuint  index,
 GLenum  pname,
 GLfloat * params);
void glGetVertexAttribiv(GLuint  index,
 GLenum  pname,
 GLint * params);
void glGetVertexAttribIiv(GLuint  index,
 GLenum  pname,
 GLint * params);
void glGetVertexAttribIuiv(GLuint  index,
 GLenum  pname,
 GLuint * params);
void glGetVertexAttribLdv(GLuint  index,
 GLenum  pname,
 GLdouble * params);

Parameters

index

Specifies the generic vertex attribute + parameter to be queried.

pname

Specifies the symbolic name of the vertex + attribute parameter to be queried. Accepted values are + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR, or + GL_CURRENT_VERTEX_ATTRIB.

params

Returns the requested data.

Description

glGetVertexAttrib returns in + params the value of a generic vertex + attribute parameter. The generic vertex attribute to be queried + is specified by index, and the parameter + to be queried is specified by pname.

The accepted parameter names are as follows:

GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING

+

params returns a + single value, the name of the buffer object currently bound to + the binding point corresponding to generic vertex attribute array + index. If no buffer object is bound, + 0 is returned. The initial value is 0.

GL_VERTEX_ATTRIB_ARRAY_ENABLED

+

params returns a + single value that is non-zero (true) if the vertex + attribute array for index is + enabled and 0 (false) if it is disabled. The initial + value is GL_FALSE.

GL_VERTEX_ATTRIB_ARRAY_SIZE

+

params returns a + single value, the size of the vertex attribute array + for index. The size is the + number of values for each element of the vertex + attribute array, and it will be 1, 2, 3, or 4. The + initial value is 4.

GL_VERTEX_ATTRIB_ARRAY_STRIDE

+

params returns a + single value, the array stride for (number of bytes + between successive elements in) the vertex attribute + array for index. A value of 0 + indicates that the array elements are stored + sequentially in memory. The initial value is 0.

GL_VERTEX_ATTRIB_ARRAY_TYPE

+

params returns a + single value, a symbolic constant indicating the + array type for the vertex attribute array for + index. Possible values are + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, + GL_UNSIGNED_INT, + GL_FLOAT, and + GL_DOUBLE. The initial value is + GL_FLOAT.

GL_VERTEX_ATTRIB_ARRAY_NORMALIZED

+

params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index are normalized when + they are converted to floating point, and 0 (false) + otherwise. The initial value is + GL_FALSE.

GL_VERTEX_ATTRIB_ARRAY_INTEGER

+

params returns a + single value that is non-zero (true) if fixed-point + data types for the vertex attribute array indicated + by index have integer data types, and 0 (false) + otherwise. The initial value is + 0 (GL_FALSE).

GL_VERTEX_ATTRIB_ARRAY_DIVISOR

+

params returns a + single value that is the frequency divisor used for instanced + rendering. See glVertexAttribDivisor. + The initial value is 0.

GL_CURRENT_VERTEX_ATTRIB

+

params returns four + values that represent the current value for the + generic vertex attribute specified by index. Generic + vertex attribute 0 is unique in that it has no + current state, so an error will be generated if + index is 0. The initial value + for all other generic vertex attributes is + (0,0,0,1).

+ glGetVertexAttribdv and glGetVertexAttribfv + return the current attribute values as four single-precision floating-point values; + glGetVertexAttribiv reads them as floating-point values and + converts them to four integer values; glGetVertexAttribIiv and + glGetVertexAttribIuiv read and return them as signed or unsigned + integer values, respectively; glGetVertexAttribLdv reads and returns + them as four double-precision floating-point values. +

All of the parameters except GL_CURRENT_VERTEX_ATTRIB + represent state stored in the currently bound vertex array object.

Notes

If an error is generated, no change is made to the + contents of params.

Errors

GL_INVALID_OPERATION is generated if pname + is not GL_CURRENT_VERTEX_ATTRIB and there is no + currently bound vertex array object.

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM is generated if + pname is not an accepted value.

GL_INVALID_OPERATION is generated if + index is 0 and + pname is + GL_CURRENT_VERTEX_ATTRIB.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glGetVertexAttribPointerv.xml b/upstream-man-pages/man4/xhtml/glGetVertexAttribPointerv.xml new file mode 100644 index 0000000..a028504 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glGetVertexAttribPointerv.xml @@ -0,0 +1,27 @@ + + + +glGetVertexAttribPointerv - OpenGL 4 Reference Pages

Name

glGetVertexAttribPointerv — return the address of the specified generic vertex attribute pointer

C Specification

void glGetVertexAttribPointerv(GLuint  index,
 GLenum  pname,
 GLvoid ** pointer);

Parameters

index

Specifies the generic vertex attribute + parameter to be returned.

pname

Specifies the symbolic name of the generic + vertex attribute parameter to be returned. Must be + GL_VERTEX_ATTRIB_ARRAY_POINTER.

pointer

Returns the pointer value.

Description

glGetVertexAttribPointerv returns + pointer information. index is the generic + vertex attribute to be queried, pname is + a symbolic constant indicating the pointer to be returned, and + params is a pointer to a location in + which to place the returned data.

The pointer returned is a byte offset into the data store of the buffer object + that was bound to the GL_ARRAY_BUFFER target + (see glBindBuffer) when the desired pointer was previously specified. +

Notes

The state returned is retrieved from the currently bound vertex array object.

The initial value for each pointer is 0.

Errors

GL_INVALID_OPERATION is generated if no vertex array object is currently bound.

GL_INVALID_VALUE + is generated if index + is greater than or equal to GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM + is generated if pname + is not an accepted value.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glHint.xml b/upstream-man-pages/man4/xhtml/glHint.xml new file mode 100644 index 0000000..501604f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glHint.xml @@ -0,0 +1,77 @@ + + + +glHint - OpenGL 4 Reference Pages

Name

glHint — specify implementation-specific hints

C Specification

void glHint(GLenum target, GLenum mode);

Parameters

target

+ Specifies a symbolic constant indicating the behavior to be controlled. + GL_LINE_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT, + GL_TEXTURE_COMPRESSION_HINT, and + GL_FRAGMENT_SHADER_DERIVATIVE_HINT + are accepted. +

mode

+ Specifies a symbolic constant indicating the desired behavior. + GL_FASTEST, + GL_NICEST, and + GL_DONT_CARE are accepted. +

Description

+ Certain aspects of GL behavior, + when there is room for interpretation, + can be controlled with hints. + A hint is specified with two arguments. + target is a symbolic + constant indicating the behavior to be controlled, + and mode is another symbolic constant indicating the desired + behavior. The initial value for each target is GL_DONT_CARE. + mode can be one of the following: +

GL_FASTEST

+

+ The most efficient option should be chosen. +

GL_NICEST

+

+ The most correct, + or highest quality, + option should be chosen. +

GL_DONT_CARE

+

+ No preference. +

+ Though the implementation aspects that can be hinted are well defined, + the interpretation of the hints depends on the implementation. + The hint aspects that can be specified with target, + along with suggested semantics, + are as follows: +

GL_FRAGMENT_SHADER_DERIVATIVE_HINT

+

+ Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: + dFdx, dFdy, and fwidth. +

GL_LINE_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased lines. + If a larger filter function is applied, hinting GL_NICEST can + result in more pixel fragments being generated during rasterization. +

GL_POLYGON_SMOOTH_HINT

+

+ Indicates the sampling quality of antialiased polygons. + Hinting GL_NICEST can result in more pixel fragments being generated + during rasterization, + if a larger filter function is applied. +

GL_TEXTURE_COMPRESSION_HINT

+

+ Indicates the quality and performance of the compressing texture images. + Hinting GL_FASTEST indicates that texture images should be compressed + as quickly as possible, while GL_NICEST indicates that texture images + should be compressed with as little image quality loss as possible. + GL_NICEST should be selected if the texture is to be retrieved by + glGetCompressedTexImage for reuse. +

Notes

+ The interpretation of hints depends on the implementation. + Some implementations ignore glHint settings. +

Errors

+ GL_INVALID_ENUM is generated if either target or mode is not + an accepted value. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glInvalidateBufferData.xml b/upstream-man-pages/man4/xhtml/glInvalidateBufferData.xml new file mode 100644 index 0000000..0c17cdc --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glInvalidateBufferData.xml @@ -0,0 +1,29 @@ + + + +glInvalidateBufferData - OpenGL 4 Reference Pages

Name

glInvalidateBufferData — invalidate the content of a buffer object's data store

C Specification

void glInvalidateBufferData(GLuint buffer);

Parameters

buffer

+ The name of a buffer object whose data store to invalidate. +

Description

+ glInvalidateBufferData invalidates all of the + content of the data store of a buffer object. After invalidation, the content + of the buffer's data store becomes undefined. +

Errors

+ GL_INVALID_VALUE is generated if buffer is not the + name of an existing buffer object. +

+ GL_INVALID_OPERATION is generated if any part of buffer + is currently mapped. +

Associated Gets

+ glGetBufferParameter with argument GL_BUFFER_SIZE +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glInvalidateBufferSubData.xml b/upstream-man-pages/man4/xhtml/glInvalidateBufferSubData.xml new file mode 100644 index 0000000..06f38de --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glInvalidateBufferSubData.xml @@ -0,0 +1,40 @@ + + + +glInvalidateBufferSubData - OpenGL 4 Reference Pages

Name

glInvalidateBufferSubData — invalidate a region of a buffer object's data store

C Specification

void glInvalidateBufferSubData(GLuint  buffer,
 GLintptr  offset,
 GLsizeiptr  length);

Parameters

buffer

+ The name of a buffer object, a subrange of whose data store to invalidate. +

offset

+ The offset within the buffer's data store of the start of the range to be invalidated. +

length

+ The length of the range within the buffer's data store to be invalidated. +

Description

+ glInvalidateBufferSubData invalidates all or part of the + content of the data store of a buffer object. After invalidation, the content + of the specified range of the buffer's data store becomes undefined. The + start of the range is given by offset and its size + is given by length, both measured in basic machine units. +

Errors

+ GL_INVALID_VALUE is generated if offset or + length is negative, or if offset + + length is greater than the value of GL_BUFFER_SIZE + for buffer. +

+ GL_INVALID_VALUE is generated if buffer is not the + name of an existing buffer object. +

+ GL_INVALID_OPERATION is generated if any part of buffer + is currently mapped. +

Associated Gets

+ glGetBufferParameter with argument GL_BUFFER_SIZE +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glInvalidateFramebuffer.xml b/upstream-man-pages/man4/xhtml/glInvalidateFramebuffer.xml new file mode 100644 index 0000000..a65637a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glInvalidateFramebuffer.xml @@ -0,0 +1,58 @@ + + + +glInvalidateFramebuffer - OpenGL 4 Reference Pages

Name

glInvalidateFramebuffer — invalidate the content some or all of a framebuffer object's attachments

C Specification

void glInvalidateFramebuffer(GLenum  target,
 GLsizei  numAttachments,
 const GLenum *  attachments);

Parameters

target

+ The target to which the framebuffer is attached. target must be + GL_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER, or GL_READ_FRAMEBUFFER. +

numAttachments

+ The number of entries in the attachments array. +

attachments

+ The address of an array identifying the attachments to be invalidated. +

Description

+ glInvalidateFramebuffer invalidates the content + of a specified set of attachments of a framebuffer. The framebuffer + whose content to invalidate is indicated by setting target + to the target to which it is bound. target may be + GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or + GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER + is treated as if it were GL_DRAW_FRAMEBUFFER. +

+ The set of attachments whose content to invalidate are specified in an array whose address is given + by attachments and which contains numAttachments + elements. The elements of attachments must be + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT + GL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, + where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + Furthermore, if the default framebuffer is bound to target, then + attachments may contain GL_FRONT_LEFT, + GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, + GL_AUXi, GL_ACCUM, + GL_COLOR, GL_DEPTH, or GL_STENCIL, identifying that specific buffer. + GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and + GL_FRONT_LEFT for a single-buffered context. + After glInvalidateFramebuffer is executed, the contents + of the specified attachments become undefined. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the + accepted framebuffer target tokens. +

+ GL_INVALID_ENUM is generated if any element of attachments is + not one of the accepted framebuffer attachment tokens. +

+ GL_INVALID_OPERATION is generated if element of attachments is + GL_COLOR_ATTACHMENTi where i is greater than or equal + to the value of GL_MAX_COLOR_ATTACHMENTS. +

Associated Gets

+ glGet with argument GL_MAX_COLOR_ATTACHMENTS +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glInvalidateSubFramebuffer.xml b/upstream-man-pages/man4/xhtml/glInvalidateSubFramebuffer.xml new file mode 100644 index 0000000..9039207 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glInvalidateSubFramebuffer.xml @@ -0,0 +1,75 @@ + + + +glInvalidateSubFramebuffer - OpenGL 4 Reference Pages

Name

glInvalidateSubFramebuffer — invalidate the content of a region of some or all of a framebuffer object's attachments

C Specification

void glInvalidateSubFramebuffer(GLenum  target,
 GLsizei  numAttachments,
 const GLenum *  attachments,
 GLint  x,
 GLint  y,
 GLint  width,
 GLint  height);

Parameters

target

+ The target to which the framebuffer is attached. target must be + GL_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER, or GL_READ_FRAMEBUFFER. +

numAttachments

+ The number of entries in the attachments array. +

attachments

+ The address of an array identifying the attachments to be invalidated. +

x

+ The X offset of the region to be invalidated. +

y

+ The Y offset of the region to be invalidated. +

width

+ The width of the region to be invalidated. +

height

+ The height of the region to be invalidated. +

Description

+ glInvalidateSubFramebuffer invalidates the content of a region + of a specified set of attachments of a framebuffer. The framebuffer + whose content to invalidate is indicated by setting target + to the target to which it is bound. target may be + GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or + GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER + is treated as if it were GL_DRAW_FRAMEBUFFER. +

+ A region within a subset of the framebuffer's attachments may be invalidated. + This set of attachments are specified in an array whose address is given + by attachments and which contains numAttachments + elements. The elements of attachments must be + GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT + GL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, + where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + Furthermore, if the default framebuffer is bound to target, then + attachments may contain GL_FRONT_LEFT, + GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, + GL_AUXi, GL_ACCUM, + GL_COLOR, GL_DEPTH, or GL_STENCIL, identifying that specific buffer. + GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and + GL_FRONT_LEFT for a single-buffered context. +

+ The region of the framebuffer attachments to be invalidated is specified + by x, y, width and height + where x and y give the offset from the origin (with + lower-left corner at (0, 0)) and width and height + give the size. Any pixels lying outside of the window allocated + to the current GL context, or outside of the attachments of the currently + bound framebuffer object, are ignored. + After glInvalidateFramebuffer is executed, the contents + of the specified region of the specified attachments become undefined. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the + accepted framebuffer target tokens. +

+ GL_INVALID_ENUM is generated if any element of attachments is + not one of the accepted framebuffer attachment tokens. +

+ GL_INVALID_OPERATION is generated if element of attachments is + GL_COLOR_ATTACHMENTi where i is greater than or equal + to the value of GL_MAX_COLOR_ATTACHMENTS. +

Associated Gets

+ glGet with argument GL_MAX_COLOR_ATTACHMENTS +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glInvalidateTexImage.xml b/upstream-man-pages/man4/xhtml/glInvalidateTexImage.xml new file mode 100644 index 0000000..73cc88b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glInvalidateTexImage.xml @@ -0,0 +1,42 @@ + + + +glInvalidateTexImage - OpenGL 4 Reference Pages

Name

glInvalidateTexImage — invalidate the entirety a texture image

C Specification

void glInvalidateTexImage(GLuint  texture,
 GLint  level);

Parameters

texture

+ The name of a texture object to invalidate. +

level

+ The level of detail of the texture object to invalidate. +

Description

+ glInvalidateTexSubImage invalidates all of + a texture image. texture and level indicated + which texture image is being invalidated. After this command, data in the texture image has undefined + values. +

+ level must be greater than or equal to zero and be + less than the base 2 logarithm of the maximum texture width, height, or depth. +

+ For textures of targets GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, level must be zero. +

Errors

+ GL_INVALID_VALUE is generated if level is + less than zero or if it is greater or equal to the base 2 logarithm of the maximum texture width, height, or depth. +

+ GL_INVALID_VALUE is generated if the target of texture + is any of GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY and level is not zero. +

+ GL_INVALID_VALUE is generated if texture is not the + name of an existing texture object. +

Associated Gets

+ glGet with argument GL_MAX_TEXTURE_SIZE +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glInvalidateTexSubImage.xml b/upstream-man-pages/man4/xhtml/glInvalidateTexSubImage.xml new file mode 100644 index 0000000..f496c06 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glInvalidateTexSubImage.xml @@ -0,0 +1,71 @@ + + + +glInvalidateTexSubImage - OpenGL 4 Reference Pages

Name

glInvalidateTexSubImage — invalidate a region of a texture image

C Specification

void glInvalidateTexSubImage(GLuint  texture,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth);

Parameters

texture

+ The name of a texture object a subregion of which to invalidate. +

level

+ The level of detail of the texture object within which the region resides. +

xoffset

+ The X offset of the region to be invalidated. +

yoffset

+ The Y offset of the region to be invalidated. +

zoffset

+ The Z offset of the region to be invalidated. +

width

+ The width of the region to be invalidated. +

height

+ The height of the region to be invalidated. +

depth

+ The depth of the region to be invalidated. +

Description

+ glInvalidateTexSubImage invalidates all or part of + a texture image. texture and level indicated + which texture image is being invalidated. After this command, data in that subregion have undefined + values. xoffset, yoffset, zoffset, width, height, and depth + are interpreted as they are in glTexSubImage3D. For texture targets that + don't have certain dimensions, this command treats those dimensions as + having a size of 1. For example, to invalidate a portion of a two- + dimensional texture, the application would use zoffset equal to zero and + depth equal to one. Cube map textures are treated as an array of six + slices in the z-dimension, where a value of zoffset is interpreted as + specifying face TEXTURE_CUBE_MAP_POSITIVE_X + zoffset. +

+ level must be greater than or equal to zero and be + less than the base 2 logarithm of the maximum texture width, height, or depth. + xoffset, yoffset and zoffset + must be greater than or equal to zero and be less than the width, height or depth + of the image, respectively. Furthermore, xoffset + width, + yoffset + height, and + zoffset + depth must be less + than or equal to the width, height or depth of the image, respectively. +

+ For textures of targets GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY, level must be zero. +

Errors

+ GL_INVALID_VALUE is generated if xoffset, + yoffset or zoffset is less than zero, + or if any of them is greater than the size of the image in the corresponding dimension. +

+ GL_INVALID_VALUE is generated if level is + less than zero or if it is greater or equal to the base 2 logarithm of the maximum texture width, height, or depth. +

+ GL_INVALID_VALUE is generated if the target of texture + is any of GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or + GL_TEXTURE_2D_MULTISAMPLE_ARRAY and level is not zero. +

+ GL_INVALID_VALUE is generated if texture is not the + name of an existing texture object. +

Associated Gets

+ glGet with argument GL_MAX_TEXTURE_SIZE +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsBuffer.xml b/upstream-man-pages/man4/xhtml/glIsBuffer.xml new file mode 100644 index 0000000..8308592 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsBuffer.xml @@ -0,0 +1,23 @@ + + + +glIsBuffer - OpenGL 4 Reference Pages

Name

glIsBuffer — determine if a name corresponds to a buffer object

C Specification

GLboolean glIsBuffer(GLuint buffer);

Parameters

buffer

+ Specifies a value that may be the name of a buffer object. +

Description

+ glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. + If buffer is zero, or is a non-zero value that is not currently the + name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. +

+ A name returned by glGenBuffers, but not yet associated with a buffer object + by calling glBindBuffer, is not the name of a buffer object. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsEnabled.xml b/upstream-man-pages/man4/xhtml/glIsEnabled.xml new file mode 100644 index 0000000..d76b435 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsEnabled.xml @@ -0,0 +1,143 @@ + + + +glIsEnabled - OpenGL 4 Reference Pages

Name

glIsEnabled, glIsEnabledi — test whether a capability is enabled

C Specification

GLboolean glIsEnabled(GLenum cap);

GLboolean glIsEnabledi(GLenum  cap,
 GLuint  index);

Parameters

cap

+ Specifies a symbolic constant indicating a GL capability. +

index

+ Specifies the index of the capability. +

Description

+ glIsEnabled returns GL_TRUE if cap is an enabled capability + and returns GL_FALSE otherwise. Boolean states that are indexed may be tested with glIsEnabledi. + For glIsEnabledi, index specifies the index of the capability to test. index + must be between zero and the count of indexed capabilities for cap. + Initially all capabilities except GL_DITHER are disabled; + GL_DITHER is initially enabled. +

+ The following capabilities are accepted for cap: +

+

+ Constant + + See +
+ GL_BLEND + + glBlendFunc, glLogicOp +
+ GL_CLIP_DISTANCEi + + glEnable +
+ GL_COLOR_LOGIC_OP + + glLogicOp +
+ GL_CULL_FACE + + glCullFace +
+ GL_DEPTH_CLAMP + + glEnable +
+ GL_DEBUG_OUTPUT + + glEnable +
+ GL_DEBUG_OUTPUT_SYNCHRONOUS + + glEnable +
+ GL_DEPTH_TEST + + glDepthFunc, glDepthRange +
+ GL_DITHER + + glEnable +
+ GL_FRAMEBUFFER_SRGB + + glEnable +
+ GL_LINE_SMOOTH + + glLineWidth +
+ GL_MULTISAMPLE + + glSampleCoverage +
+ GL_POLYGON_SMOOTH + + glPolygonMode +
+ GL_POLYGON_OFFSET_FILL + + glPolygonOffset +
+ GL_POLYGON_OFFSET_LINE + + glPolygonOffset +
+ GL_POLYGON_OFFSET_POINT + + glPolygonOffset +
+ GL_PROGRAM_POINT_SIZE + + glEnable +
+ GL_PRIMITIVE_RESTART + + glEnable, glPrimitiveRestartIndex +
+ GL_SAMPLE_ALPHA_TO_COVERAGE + + glSampleCoverage +
+ GL_SAMPLE_ALPHA_TO_ONE + + glSampleCoverage +
+ GL_SAMPLE_COVERAGE + + glSampleCoverage +
+ GL_SAMPLE_MASK + + glEnable +
+ GL_SCISSOR_TEST + + glScissor +
+ GL_STENCIL_TEST + + glStencilFunc, glStencilOp +
+ GL_TEXTURE_CUBEMAP_SEAMLESS + + glEnable +

+

Notes

+ If an error is generated, + glIsEnabled and glIsEnabledi return GL_FALSE. +

+ GL_DEBUG_OUTPUT and GL_DEBUG_OUTPUT_SYNCHRONOUS are available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if cap is not an accepted value. +

+ GL_INVALID_VALUE is generated by glIsEnabledi if index is outside the + valid range for the indexed state cap. +

See Also

+ glEnable, + glDisable, + glGet +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010-2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsFramebuffer.xml b/upstream-man-pages/man4/xhtml/glIsFramebuffer.xml new file mode 100644 index 0000000..3091927 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsFramebuffer.xml @@ -0,0 +1,22 @@ + + + +glIsFramebuffer - OpenGL 4 Reference Pages

Name

glIsFramebuffer — determine if a name corresponds to a framebuffer object

C Specification

GLboolean glIsFramebuffer(GLuint  framebuffer);

Parameters

framebuffer

+ Specifies a value that may be the name of a framebuffer object. +

Description

+ glIsFramebuffer returns GL_TRUE if framebuffer is currently the name of a framebuffer + object. If framebuffer is zero, or if framebuffer is not the name of a framebuffer object, or if an error + occurs, glIsFramebuffer returns GL_FALSE. If framebuffer is a name returned by + glGenFramebuffers, by that has not yet been bound through a call to + glBindFramebuffer, then the name is not a framebuffer object and glIsFramebuffer + returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsProgram.xml b/upstream-man-pages/man4/xhtml/glIsProgram.xml new file mode 100644 index 0000000..c554b85 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsProgram.xml @@ -0,0 +1,42 @@ + + + +glIsProgram - OpenGL 4 Reference Pages

Name

glIsProgram — Determines if a name corresponds to a program object

C Specification

GLboolean glIsProgram(GLuint program);

Parameters

program

Specifies a potential program object.

Description

glIsProgram returns + GL_TRUE if program + is the name of a program object previously created with + glCreateProgram + and not yet deleted with glDeleteProgram. + If program is zero or a non-zero value that + is not the name of a program object, or if an error occurs, + glIsProgram returns GL_FALSE.

Notes

No error is generated if program is + not a valid program object name.

A program object marked for deletion with glDeleteProgram + but still in use as part of current rendering state is still considered + a program object and glIsProgram will return GL_TRUE.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with arguments program and the index of + an active attribute variable

glGetActiveUniform + with arguments program and the index of + an active uniform variable

glGetAttachedShaders + with argument program

glGetAttribLocation + with arguments program and the name of an + attribute variable

glGetProgram + with arguments program and the parameter + to be queried

glGetProgramInfoLog + with argument program

glGetUniform + with arguments program and the location + of a uniform variable

glGetUniformLocation + with arguments program and the name of a + uniform variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsProgramPipeline.xml b/upstream-man-pages/man4/xhtml/glIsProgramPipeline.xml new file mode 100644 index 0000000..a4f1cb3 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsProgramPipeline.xml @@ -0,0 +1,25 @@ + + + +glIsProgramPipeline - OpenGL 4 Reference Pages

Name

glIsProgramPipeline — determine if a name corresponds to a program pipeline object

C Specification

GLboolean glIsProgramPipeline(GLuint  pipeline);

Parameters

pipeline

+ Specifies a value that may be the name of a program pipeline object. +

Description

+ glIsProgramPipeline returns GL_TRUE if + pipeline is currently the name of a program pipeline object. + If pipeline is zero, or if pipeline is not the + name of a program pipeline object, or if an error occurs, glIsProgramPipeline + returns GL_FALSE. If pipeline is a name returned by + glGenProgramPipelines, but that + has not yet been bound through a call to glBindProgramPipeline, + then the name is not a program pipeline object and glIsProgramPipeline + returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsQuery.xml b/upstream-man-pages/man4/xhtml/glIsQuery.xml new file mode 100644 index 0000000..c7326e4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsQuery.xml @@ -0,0 +1,23 @@ + + + +glIsQuery - OpenGL 4 Reference Pages

Name

glIsQuery — determine if a name corresponds to a query object

C Specification

GLboolean glIsQuery(GLuint id);

Parameters

id

+ Specifies a value that may be the name of a query object. +

Description

+ glIsQuery returns GL_TRUE if id is currently the name of a query object. + If id is zero, or is a non-zero value that is not currently the + name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. +

+ A name returned by glGenQueries, but not yet associated with a query object + by calling glBeginQuery, is not the name of a query object. +

Copyright

+ Copyright © 2005 Addison-Wesley. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsRenderbuffer.xml b/upstream-man-pages/man4/xhtml/glIsRenderbuffer.xml new file mode 100644 index 0000000..7335a20 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsRenderbuffer.xml @@ -0,0 +1,23 @@ + + + +glIsRenderbuffer - OpenGL 4 Reference Pages

Name

glIsRenderbuffer — determine if a name corresponds to a renderbuffer object

C Specification

GLboolean glIsRenderbuffer(GLuint  renderbuffer);

Parameters

renderbuffer

+ Specifies a value that may be the name of a renderbuffer object. +

Description

+ glIsRenderbuffer returns GL_TRUE if renderbuffer is currently the name of a renderbuffer + object. If renderbuffer is zero, or if renderbuffer is not the name of a renderbuffer object, or if an error + occurs, glIsRenderbuffer returns GL_FALSE. If renderbuffer is a name returned by + glGenRenderbuffers, by that has not yet been bound through a call to + glBindRenderbuffer or glFramebufferRenderbuffer, + then the name is not a renderbuffer object and glIsRenderbuffer returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsSampler.xml b/upstream-man-pages/man4/xhtml/glIsSampler.xml new file mode 100644 index 0000000..f471f5d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsSampler.xml @@ -0,0 +1,23 @@ + + + +glIsSampler - OpenGL 4 Reference Pages

Name

glIsSampler — determine if a name corresponds to a sampler object

C Specification

GLboolean glIsSampler(GLuint id);

Parameters

id

+ Specifies a value that may be the name of a sampler object. +

Description

+ glIsSampler returns GL_TRUE if id is currently the name of a sampler object. + If id is zero, or is a non-zero value that is not currently the + name of a sampler object, or if an error occurs, glIsSampler returns GL_FALSE. +

+ A name returned by glGenSamplers, is the name of a sampler object. +

Notes

+ glIsSampler is available only if the GL version is 3.3 or higher. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsShader.xml b/upstream-man-pages/man4/xhtml/glIsShader.xml new file mode 100644 index 0000000..f78a8f1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsShader.xml @@ -0,0 +1,31 @@ + + + +glIsShader - OpenGL 4 Reference Pages

Name

glIsShader — Determines if a name corresponds to a shader object

C Specification

GLboolean glIsShader(GLuint shader);

Parameters

shader

Specifies a potential shader object.

Description

glIsShader returns + GL_TRUE if shader is + the name of a shader object previously created with + glCreateShader + and not yet deleted with glDeleteShader. + If shader is + zero or a non-zero value that is not the name of a shader + object, or if an error occurs, glIsShader returns + GL_FALSE.

Notes

No error is generated if shader is + not a valid shader object name.

A shader object marked for deletion with glDeleteShader + but still attached to a program object is still considered + a shader object and glIsShader will return GL_TRUE.

Associated Gets

glGetAttachedShaders + with a valid program object

glGetShader + with arguments shader and a parameter to + be queried

glGetShaderInfoLog + with argument object

glGetShaderSource + with argument object

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsSync.xml b/upstream-man-pages/man4/xhtml/glIsSync.xml new file mode 100644 index 0000000..1b7a53f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsSync.xml @@ -0,0 +1,22 @@ + + + +glIsSync - OpenGL 4 Reference Pages

Name

glIsSync — determine if a name corresponds to a sync object

C Specification

GLboolean glIsSync(GLsync sync);

Parameters

sync

+ Specifies a value that may be the name of a sync object. +

Description

+ glIsSync returns GL_TRUE if sync is currently the name of a sync object. + If sync is not the name of a sync object, or if an error occurs, glIsSync returns + GL_FALSE. Note that zero is not the name of a sync object. +

Notes

+ glIsSync is available only if the GL version is 3.2 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsTexture.xml b/upstream-man-pages/man4/xhtml/glIsTexture.xml new file mode 100644 index 0000000..2b33c5e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsTexture.xml @@ -0,0 +1,30 @@ + + + +glIsTexture - OpenGL 4 Reference Pages

Name

glIsTexture — determine if a name corresponds to a texture

C Specification

GLboolean glIsTexture(GLuint texture);

Parameters

texture

+ Specifies a value that may be the name of a texture. +

Description

+ glIsTexture returns GL_TRUE if texture is currently the name of a texture. + If texture is zero, or is a non-zero value that is not currently the + name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. +

+ A name returned by glGenTextures, but not yet associated with a texture + by calling glBindTexture, is not the name of a texture. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glIsTransformFeedback.xml new file mode 100644 index 0000000..5013613 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsTransformFeedback.xml @@ -0,0 +1,22 @@ + + + +glIsTransformFeedback - OpenGL 4 Reference Pages

Name

glIsTransformFeedback — determine if a name corresponds to a transform feedback object

C Specification

GLboolean glIsTransformFeedback(GLuint id);

Parameters

id

+ Specifies a value that may be the name of a transform feedback object. +

Description

+ glIsTransformFeedback returns GL_TRUE if id is currently the name of a transform feedback + object. If id is zero, or if id is not the name of a transform feedback object, or if an error + occurs, glIsTransformFeedback returns GL_FALSE. If id is a name returned by + glGenTransformFeedbacks, but that has not yet been bound through a call to + glBindTransformFeedback, then the name is not a transform feedback object and glIsTransformFeedback + returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glIsVertexArray.xml b/upstream-man-pages/man4/xhtml/glIsVertexArray.xml new file mode 100644 index 0000000..85c0f40 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glIsVertexArray.xml @@ -0,0 +1,22 @@ + + + +glIsVertexArray - OpenGL 4 Reference Pages

Name

glIsVertexArray — determine if a name corresponds to a vertex array object

C Specification

GLboolean glIsVertexArray(GLuint array);

Parameters

array

+ Specifies a value that may be the name of a vertex array object. +

Description

+ glIsVertexArray returns GL_TRUE if array is currently the name of a renderbuffer + object. If renderbuffer is zero, or if array is not the name of a renderbuffer object, or if an error + occurs, glIsVertexArray returns GL_FALSE. If array is a name returned by + glGenVertexArrays, by that has not yet been bound through a call to + glBindVertexArray, then the name is not a vertex array object and + glIsVertexArray returns GL_FALSE. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glLineWidth.xml b/upstream-man-pages/man4/xhtml/glLineWidth.xml new file mode 100644 index 0000000..4d90a15 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glLineWidth.xml @@ -0,0 +1,93 @@ + + + +glLineWidth - OpenGL 4 Reference Pages

Name

glLineWidth — specify the width of rasterized lines

C Specification

void glLineWidth(GLfloat width);

Parameters

width

+ Specifies the width of rasterized lines. + The initial value is 1. +

Description

+ glLineWidth specifies the rasterized width of both aliased and antialiased + lines. + Using a line width other than 1 has different effects, + depending on whether line antialiasing is enabled. + To enable and disable line antialiasing, call + glEnable and glDisable + with argument GL_LINE_SMOOTH. Line antialiasing is initially + disabled. +

+ If line antialiasing is disabled, + the actual width is determined by rounding the supplied width + to the nearest integer. + (If the rounding results in the value 0, + it is as if the line width were 1.) + If + + + + + + Δ + x + + + >= + + + Δ + y + + + + , + i pixels are filled in each column that is rasterized, + where i is the rounded value of width. + Otherwise, + i pixels are filled in each row that is rasterized. +

+ If antialiasing is enabled, + line rasterization produces a fragment for each pixel square + that intersects the region lying within the rectangle having width + equal to the current line width, + length equal to the actual length of the line, + and centered on the mathematical line segment. + The coverage value for each fragment is the window coordinate area + of the intersection of the rectangular region with the corresponding + pixel square. + This value is saved and used in the final rasterization step. +

+ Not all widths can be supported when line antialiasing is enabled. If an + unsupported width is requested, the nearest supported width is used. + Only width 1 is guaranteed to be supported; others depend on the + implementation. Likewise, there is a range for aliased line widths as well. + To query the range of supported widths and the size + difference between supported widths within the range, call glGet + with arguments GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. +

Notes

+ The line width specified by glLineWidth is always returned when GL_LINE_WIDTH + is queried. + Clamping and rounding for aliased and antialiased lines have no effect on the specified value. +

+ Nonantialiased line width may be clamped to an implementation-dependent maximum. Call glGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the maximum width. +

+ In OpenGL 1.2, the tokens GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY were replaced by GL_ALIASED_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. The old names are retained for backward compatibility, but should not be used in new code. +

Errors

+ GL_INVALID_VALUE is generated if width is less than or equal to 0. +

Associated Gets

+ glGet with argument GL_LINE_WIDTH +

+ glGet with argument GL_ALIASED_LINE_WIDTH_RANGE +

+ glGet with argument GL_SMOOTH_LINE_WIDTH_RANGE +

+ glGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY +

+ glIsEnabled with argument GL_LINE_SMOOTH +

See Also

+ glEnable +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glLinkProgram.xml b/upstream-man-pages/man4/xhtml/glLinkProgram.xml new file mode 100644 index 0000000..b146b9e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glLinkProgram.xml @@ -0,0 +1,136 @@ + + + +glLinkProgram - OpenGL 4 Reference Pages

Name

glLinkProgram — Links a program object

C Specification

void glLinkProgram(GLuint program);

Parameters

program

Specifies the handle of the program object to be linked.

Description

glLinkProgram links the program + object specified by program. If any + shader objects of type GL_VERTEX_SHADER are + attached to program, they will be used to + create an executable that will run on the programmable vertex + processor. If any shader objects of type GL_GEOMETRY_SHADER + are attached to program, they will be used to create + an executable that will run on the programmable geometry processor. + If any shader objects of type + GL_FRAGMENT_SHADER are attached to + program, they will be used to create an + executable that will run on the programmable fragment + processor.

The status of the link operation will be stored as part of + the program object's state. This value will be set to + GL_TRUE if the program object was linked + without errors and is ready for use, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_LINK_STATUS.

As a result of a successful link operation, all active + user-defined uniform variables belonging to + program will be initialized to 0, and + each of the program object's active uniform variables will be + assigned a location that can be queried by calling + glGetUniformLocation. + Also, any active user-defined attribute variables that have not + been bound to a generic vertex attribute index will be bound to + one at this time.

Linking of a program object can fail for a number of + reasons as specified in the OpenGL Shading Language + Specification. The following lists some of the + conditions that will cause a link error.

  • The number of active attribute variables supported + by the implementation has been exceeded.

  • The storage limit for uniform variables has been + exceeded.

  • The number of active uniform variables supported + by the implementation has been exceeded.

  • The main function is missing + for the vertex, geometry or fragment shader.

  • A varying variable actually used in the fragment + shader is not declared in the same way (or is not + declared at all) in the vertex shader, or geometry shader shader if present.

  • A reference to a function or variable name is + unresolved.

  • A shared global is declared with two different + types or two different initial values.

  • One or more of the attached shader objects has not + been successfully compiled.

  • Binding a generic attribute matrix caused some + rows of the matrix to fall outside the allowed maximum + of GL_MAX_VERTEX_ATTRIBS.

  • Not enough contiguous vertex attribute slots could + be found to bind attribute matrices.

  • The program object contains objects to form a fragment shader but + does not contain objects to form a vertex shader.

  • The program object contains objects to form a geometry shader + but does not contain objects to form a vertex shader.

  • The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is not specified in any compiled geometry shader + object.

  • The program object contains objects to form a geometry shader + and the input primitive type, output primitive type, or maximum output + vertex count is specified differently in multiple geometry shader + objects.

  • The number of active outputs in the fragment shader is greater + than the value of GL_MAX_DRAW_BUFFERS.

  • The program has an active output assigned to a location greater + than or equal to the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS + and has an active output assigned an index greater than or equal to one.

  • More than one varying out variable is bound to the same number and index.

  • The explicit binding assigments do not leave enough space for the linker + to automatically assign a location for a varying out array, which requires + multiple contiguous locations.

  • The count specified by glTransformFeedbackVaryings + is non-zero, but the program object has no vertex or geometry shader.

  • Any variable name specified to glTransformFeedbackVaryings + in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active).

  • Any two entries in the varyings array given + glTransformFeedbackVaryings + specify the same varying variable.

  • The total number of components to capture in any transform feedback varying variable + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is SEPARATE_ATTRIBS.

When a program object has been successfully linked, the + program object can be made part of current state by calling + glUseProgram. + Whether or not the link operation was successful, the program + object's information log will be overwritten. The information + log can be retrieved by calling + glGetProgramInfoLog.

glLinkProgram will also install the + generated executables as part of the current rendering state if + the link operation was successful and the specified program + object is already currently in use as a result of a previous + call to + glUseProgram. + If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE , but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked.

If program contains shader objects + of type GL_VERTEX_SHADER, and optionally of type GL_GEOMETRY_SHADER, + but does not contain shader objects of type + GL_FRAGMENT_SHADER, the vertex shader executable will + be installed on the programmable vertex processor, the geometry shader executable, if present, + will be installed on the programmable geometry processor, but no executable will + be installed on the fragment processor. The results of + rasterizing primitives with such a program will be undefined.

The program object's information log is updated and the + program is generated at the time of the link operation. After + the link operation, applications are free to modify attached + shader objects, compile attached shader objects, detach shader + objects, delete shader objects, and attach additional shader + objects. None of these operations affects the information log or + the program that is part of the program object.

Notes

If the link operation is unsuccessful, any information about a previous link operation on program + is lost (i.e., a failed link does not restore the old state of program + ). Certain information can still be retrieved from program + even after an unsuccessful link operation. See for instance glGetActiveAttrib + and glGetActiveUniform.

Errors

GL_INVALID_VALUE + is generated if program + is not a value generated by OpenGL.

GL_INVALID_OPERATION + is generated if program + is not a program object.

GL_INVALID_OPERATION + is generated if program is the currently active program + object and transform feedback mode is active.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with argument program + and the index of an active attribute variable

glGetActiveUniform + with argument program + and the index of an active uniform variable

glGetAttachedShaders + with argument program

glGetAttribLocation + with argument program + and an attribute variable name

glGetProgram + with arguments program + and GL_LINK_STATUS

glGetProgramInfoLog + with argument program

glGetUniform + with argument program + and a uniform variable location

glGetUniformLocation + with argument program + and a uniform variable name

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glLogicOp.xml b/upstream-man-pages/man4/xhtml/glLogicOp.xml new file mode 100644 index 0000000..7abadb4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glLogicOp.xml @@ -0,0 +1,136 @@ + + + +glLogicOp - OpenGL 4 Reference Pages

Name

glLogicOp — specify a logical pixel operation for rendering

C Specification

void glLogicOp(GLenum opcode);

Parameters

opcode

+ Specifies a symbolic constant that selects a logical operation. + The following symbols are accepted: + GL_CLEAR, + GL_SET, + GL_COPY, + GL_COPY_INVERTED, + GL_NOOP, + GL_INVERT, + GL_AND, + GL_NAND, + GL_OR, + GL_NOR, + GL_XOR, + GL_EQUIV, + GL_AND_REVERSE, + GL_AND_INVERTED, + GL_OR_REVERSE, and + GL_OR_INVERTED. The initial value is GL_COPY. +

Description

+ glLogicOp specifies a logical operation that, + when enabled, + is applied between the incoming RGBA color + and the RGBA color at the corresponding location in the + frame buffer. + To enable or disable the logical operation, call + glEnable and glDisable + using the symbolic constant GL_COLOR_LOGIC_OP. The initial value is + disabled. +

+

+ Opcode + + Resulting Operation +
+ GL_CLEAR + + 0 +
+ GL_SET + + 1 +
+ GL_COPY + + s +
+ GL_COPY_INVERTED + + ~s +
+ GL_NOOP + + d +
+ GL_INVERT + + ~d +
+ GL_AND + + s & d +
+ GL_NAND + + ~(s & d) +
+ GL_OR + + s | d +
+ GL_NOR + + ~(s | d) +
+ GL_XOR + + s ^ d +
+ GL_EQUIV + + ~(s ^ d) +
+ GL_AND_REVERSE + + s & ~d +
+ GL_AND_INVERTED + + ~s & d +
+ GL_OR_REVERSE + + s | ~d +
+ GL_OR_INVERTED + + ~s | d +

+ opcode is a symbolic constant chosen from the list above. + In the explanation of the logical operations, + s represents the incoming color and + d represents the color in the frame buffer. + Standard C-language operators are used. + As these bitwise operators suggest, + the logical operation is applied independently to each bit pair of the + source and destination colors. +

Notes

+ When more than one RGBA color buffer is enabled for drawing, + logical operations are performed separately for each enabled buffer, + using for the destination value the contents of that buffer + (see glDrawBuffer). +

+ Logic operations have no effect on floating point draw buffers. However, if + GL_COLOR_LOGIC_OP is enabled, blending is still disabled + in this case. +

Errors

+ GL_INVALID_ENUM is generated if opcode is not an accepted value. +

Associated Gets

+ glGet with argument GL_LOGIC_OP_MODE. +

+ glIsEnabled with argument GL_COLOR_LOGIC_OP. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glMapBuffer.xml b/upstream-man-pages/man4/xhtml/glMapBuffer.xml new file mode 100644 index 0000000..db2795b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMapBuffer.xml @@ -0,0 +1,117 @@ + + + +glMapBuffer - OpenGL 4 Reference Pages

Name

glMapBuffer — map a buffer object's data store

C Specification

void * glMapBuffer(GLenum  target,
 GLenum  access);

Parameters

target

+ Specifies the target buffer object being mapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. +

access

+ Specifies the access policy, indicating whether it will be possible to read from, write to, + or both read from and write to the buffer object's mapped data store. The symbolic constant must be + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. +

C Specification

GLboolean glUnmapBuffer(GLenum target);

Parameters

target

+ Specifies the target buffer object being unmapped. + The symbolic constant must be + GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, + GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER, + GL_SHADER_STORAGE_BUFFER, + GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER or + GL_UNIFORM_BUFFER. +

Description

+ glMapBuffer maps to the client's address space the entire data store of the buffer object + currently bound to target. The data can then be directly read and/or written relative to + the returned pointer, depending on the specified access policy. If the GL is unable to + map the buffer object's data store, glMapBuffer generates an error and returns + NULL. This may occur for system-specific reasons, such as low virtual memory availability. + If no error occurs, the returned pointer will have an alignment of at least GL_MIN_MAP_BUFFER_ALIGNMENT + basic machine units. The value of GL_MIN_MAP_BUFFER_ALIGNMENT can be retrieved by calling + glGet with pname set to + GL_MIN_MAP_BUFFER_ALIGNMENT and must be a power of two that is at least 64. +

+ If a mapped data store is accessed in a way inconsistent with the specified access policy, + no error is generated, but performance may be negatively impacted and system errors, including program + termination, may result. Unlike the usage parameter of glBufferData, + access is not a hint, and does in fact constrain the usage of the mapped data store on + some GL implementations. In order to achieve the highest performance available, a buffer object's data store + should be used in ways consistent with both its specified usage and + access parameters. +

+ A mapped data store must be unmapped with glUnmapBuffer before its buffer object is used. + Otherwise an error will be generated by any GL command that attempts to dereference the buffer object's data store. + When a data store is unmapped, the pointer to its data store becomes invalid. glUnmapBuffer + returns GL_TRUE unless the data store contents have become corrupt during the time + the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics + memory, such as screen mode changes. In such situations, GL_FALSE is returned and the + data store contents are undefined. An application must detect this rare condition and reinitialize the data store. +

+ A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store + is recreated with glBufferData. +

Notes

+ If an error is generated, glMapBuffer returns NULL, and + glUnmapBuffer returns GL_FALSE. +

+ Parameter values passed to GL commands may not be sourced from the returned pointer. No error will be generated, + but results will be undefined and will likely vary across GL implementations. +

+ Alignment of the returned pointer is guaranteed only if the version + of the GL version is 4.2 or greater. Also, the GL_ATOMIC_COUNTER_BUFFER + target is accepted only if the GL version is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version + is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target is not + one of the accepted targets. +

+ GL_INVALID_ENUM is generated if access is not + GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. +

+ GL_OUT_OF_MEMORY is generated when glMapBuffer is executed + if the GL is unable to map the buffer object's data store. This may occur for a variety of system-specific + reasons, such as the absence of sufficient remaining virtual memory. +

+ GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target. +

+ GL_INVALID_OPERATION is generated if glMapBuffer is executed for + a buffer object whose data store is already mapped. +

+ GL_INVALID_OPERATION is generated if glUnmapBuffer is executed for + a buffer object whose data store is not currently mapped. +

Associated Gets

+ glGetBufferPointerv with argument GL_BUFFER_MAP_POINTER +

+ glGetBufferParameter with argument GL_BUFFER_MAPPED, GL_BUFFER_ACCESS, or GL_BUFFER_USAGE +

Copyright

+ Copyright © 2005 Addison-Wesley. + Copyright © 2010-2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glMapBufferRange.xml b/upstream-man-pages/man4/xhtml/glMapBufferRange.xml new file mode 100644 index 0000000..0990cc7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMapBufferRange.xml @@ -0,0 +1,113 @@ + + + +glMapBufferRange - OpenGL 4 Reference Pages

Name

glMapBufferRange — map a section of a buffer object's data store

C Specification

void *glMapBufferRange(GLenum  target,
 GLintptr  offset,
 GLsizeiptr  length,
 GLbitfield  access);

Parameters

target

+ Specifies a binding to which the target buffer is bound. +

offset

+ Specifies a the starting offset within the buffer of the range to be mapped. +

length

+ Specifies a length of the range to be mapped. +

access

+ Specifies a combination of access flags indicating the desired access to the range. +

Description

+ glMapBufferRange maps all or part of the data store of a buffer object into the client's address + space. target specifies the target to which the buffer is bound and must be one of GL_ARRAY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER, + GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_DRAW_INDIRECT_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER, GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. offset and + length indicate the range of data in the buffer object htat is to be mapped, in terms of basic machine units. + access is a bitfield containing flags which describe the requested mapping. These flags are described below. +

+ If no error occurs, a pointer to the beginning of the mapped range is returned once all pending operations on that buffer have + completed, and may be used to modify and/or query the corresponding range of the buffer, according to the following flag bits set + in access: +

  • + GL_MAP_READ_BIT indicates that the returned pointer may be used to read + buffer object data. No GL error is generated if the pointer is used to query + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. +

  • + GL_MAP_WRITE_BIT indicates that the returned pointer may be used to modify + buffer object data. No GL error is generated if the pointer is used to modify + a mapping which excludes this flag, but the result is undefined and system + errors (possibly including program termination) may occur. +

+

+ Furthermore, the following optional flag bits in access may be used to modify the mapping: +

  • + GL_MAP_INVALIDATE_RANGE_BIT indicates that the previous contents of the + specified range may be discarded. Data within this range are undefined with + the exception of subsequently written data. No GL error is generated if sub- + sequent GL operations access unwritten data, but the result is undefined and + system errors (possibly including program termination) may occur. This flag + may not be used in combination with GL_MAP_READ_BIT. +

  • + GL_MAP_INVALIDATE_BUFFER_BIT indicates that the previous contents of the + entire buffer may be discarded. Data within the entire buffer are undefined + with the exception of subsequently written data. No GL error is generated if + subsequent GL operations access unwritten data, but the result is undefined + and system errors (possibly including program termination) may occur. This + flag may not be used in combination with GL_MAP_READ_BIT. +

  • + GL_MAP_FLUSH_EXPLICIT_BIT indicates that one or more discrete subranges + of the mapping may be modified. When this flag is set, modifications to + each subrange must be explicitly flushed by calling glFlushMappedBufferRange. + No GL error is set if a subrange of the mapping is modified and + not flushed, but data within the corresponding subrange of the buffer are undefined. + This flag may only be used in conjunction with GL_MAP_WRITE_BIT. + When this option is selected, flushing is strictly limited to regions that are + explicitly indicated with calls to glFlushMappedBufferRange + prior to unmap; if this option is not selected glUnmapBuffer + will automatically flush the entire mapped range when called. +

  • + GL_MAP_UNSYNCHRONIZED_BIT indicates that the GL should not attempt to + synchronize pending operations on the buffer prior to returning from glMapBufferRange. + No GL error is generated if pending operations which source or modify the buffer overlap the mapped region, + but the result of such previous and any subsequent operations is undefined. +

+

+ If an error occurs, glMapBufferRange returns a NULL pointer. + If no error occurs, the returned pointer will reflect an alignment of at least GL_MIN_MAP_BUFFER_ALIGNMENT + basic machine units. The value of GL_MIN_MAP_BUFFER_ALIGNMENT can be retrieved by calling + glGet with pname set to + GL_MIN_MAP_BUFFER_ALIGNMENT and must be a power of two that is at least 64. Subtracting offset + from this returned pointed will always produce a multiple of GL_MIN_MAP_BUFFER_ALINMENT. +

Notes

+ Alignment of the returned pointer is guaranteed only if the version + of the GL version is 4.2 or greater. Also, the GL_ATOMIC_COUNTER_BUFFER + target is accepted only if the GL version is 4.2 or greater. +

+ The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are accepted only if the + GL version is 4.3 or greater. +

Errors

+ GL_INVALID_VALUE is generated if either of offset or length is negative, + or if offset + length is greater than the value of GL_BUFFER_SIZE. +

+ GL_INVALID_VALUE is generated if access has any bits set other than those defined above. +

+ GL_INVALID_OPERATION is generated for any of the following conditions: +

  • + The buffer is already in a mapped state. +

  • + Neither GL_MAP_READ_BIT or GL_MAP_WRITE_BIT is set. +

  • + GL_MAP_READ_BIT is set and any of GL_MAP_INVALIDATE_RANGE_BIT, + GL_MAP_INVALIDATE_BUFFER_BIT, or GL_MAP_UNSYNCHRONIZED_BIT is set. +

  • + GL_MAP_FLUSH_EXPLICIT_BIT is set and GL_MAP_WRITE_BIT is not set. +

+

+ GL_OUT_OF_MEMORY is generated if glMapBufferRange fails because memory for the + mapping could not be obtained. +

Copyright

+ Copyright © 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glMemoryBarrier.xml b/upstream-man-pages/man4/xhtml/glMemoryBarrier.xml new file mode 100644 index 0000000..d5a3a79 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMemoryBarrier.xml @@ -0,0 +1,164 @@ + + + +glMemoryBarrier - OpenGL 4 Reference Pages

Name

glMemoryBarrier — defines a barrier ordering memory transactions

C Specification

void glMemoryBarrier(GLbitfield barriers);

Parameters

barriers

+ Specifies the barriers to insert. Must be a bitwise combination of GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, + GL_ELEMENT_ARRAY_BARRIER_BIT, GL_UNIFORM_BARRIER_BIT, GL_TEXTURE_FETCH_BARRIER_BIT, + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, GL_COMMAND_BARRIER_BIT, GL_PIXEL_BUFFER_BARRIER_BIT, + GL_TEXTURE_UPDATE_BARRIER_BIT, GL_BUFFER_UPDATE_BARRIER_BIT, + GL_FRAMEBUFFER_BARRIER_BIT, GL_TRANSFORM_FEEDBACK_BARRIER_BIT, GL_ATOMIC_COUNTER_BARRIER_BIT, + or GL_SHADER_STORAGE_BARRIER_BIT. + If the special value GL_ALL_BARRIER_BITS is specified, all supported barriers will be inserted. +

Description

+ glMemoryBarrier defines a barrier ordering the memory transactions issued prior to the + command relative to those issued after the barrier. For the purposes of + this ordering, memory transactions performed by shaders are considered to + be issued by the rendering command that triggered the execution of the + shader. barriers is a bitfield indicating the set of operations that + are synchronized with shader stores; the bits used in barriers are as + follows: +

+

GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT

+ If set, vertex data sourced from + buffer objects after the barrier will reflect data written by shaders + prior to the barrier. The set of buffer objects affected by this bit + is derived from the buffer object bindings used for + generic vertex attributes derived from the GL_VERTEX_ATTRIB_ARRAY_BUFFER bindings. +

GL_ELEMENT_ARRAY_BARRIER_BIT

+ If set, vertex array indices sourced from + buffer objects after the barrier will reflect data written by shaders + prior to the barrier. The buffer objects affected by this bit are + derived from the GL_ELEMENT_ARRAY_BUFFER binding. +

GL_UNIFORM_BARRIER_BIT

+ Shader uniforms sourced from buffer objects after the barrier will reflect data + written by shaders prior to the barrier. +

GL_TEXTURE_FETCH_BARRIER_BIT

+ Texture fetches from shaders, including + fetches from buffer object memory via buffer textures, after the + barrier will reflect data written by shaders prior to the barrier. +

GL_SHADER_IMAGE_ACCESS_BARRIER_BIT

+ Memory accesses using shader image + load, store, and atomic built-in functions issued after the barrier + will reflect data written by shaders prior to the barrier. + Additionally, image stores and atomics issued after the barrier will + not execute until all memory accesses (e.g., loads, stores, texture + fetches, vertex fetches) initiated prior to the barrier complete. +

GL_COMMAND_BARRIER_BIT

+ Command data sourced from buffer objects by + Draw*Indirect commands after the barrier will reflect data written by + shaders prior to the barrier. The buffer objects affected by this bit + are derived from the GL_DRAW_INDIRECT_BUFFER binding. +

GL_PIXEL_BUFFER_BARRIER_BIT

+ Reads and writes of buffer objects via the + GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER + bindings (via glReadPixels, + glTexSubImage, etc.) after the + barrier will reflect data written by shaders prior to the barrier. + Additionally, buffer object writes issued after the barrier will wait + on the completion of all shader writes initiated prior to the barrier. +

GL_TEXTURE_UPDATE_BARRIER_BIT

+ Writes to a texture via glTex(Sub)Image*, + glCopyTex(Sub)Image*, glCompressedTex(Sub)Image*, and reads via + glGetTexImage after the barrier will reflect data written by shaders + prior to the barrier. Additionally, texture writes from these + commands issued after the barrier will not execute until all shader + writes initiated prior to the barrier complete. +

GL_BUFFER_UPDATE_BARRIER_BIT

+ Reads or writes via glBufferSubData, + glCopyBufferSubData, + or glGetBufferSubData, or + to buffer object memory mapped by glMapBuffer + or glMapBufferRange after the barrier + will reflect data written by shaders prior to the barrier. + Additionally, writes via these commands issued after the barrier will + wait on the completion of any shader writes to the same memory + initiated prior to the barrier. +

GL_FRAMEBUFFER_BARRIER_BIT

+ Reads and writes via framebuffer object + attachments after the barrier will reflect data written by shaders + prior to the barrier. Additionally, framebuffer writes issued after + the barrier will wait on the completion of all shader writes issued + prior to the barrier. +

GL_TRANSFORM_FEEDBACK_BARRIER_BIT

+ Writes via transform feedback + bindings after the barrier will reflect data written by shaders prior + to the barrier. Additionally, transform feedback writes issued after + the barrier will wait on the completion of all shader writes issued + prior to the barrier. +

GL_ATOMIC_COUNTER_BARRIER_BIT

+ Accesses to atomic counters after the + barrier will reflect writes prior to the barrier. +

GL_SHADER_STORAGE_BARRIER_BIT

+ Accesses to shader storage blocks after the + barrier will reflect writes prior to the barrier. +

+

+ If barriers is GL_ALL_BARRIER_BITS, shader memory accesses + will be synchronized relative to all the operations described above. +

+ Implementations may cache buffer object and texture image memory that + could be written by shaders in multiple caches; for example, there may be + separate caches for texture, vertex fetching, and one or more caches for + shader memory accesses. Implementations are not required to keep these + caches coherent with shader memory writes. Stores issued by one + invocation may not be immediately observable by other pipeline stages or + other shader invocations because the value stored may remain in a cache + local to the processor executing the store, or because data overwritten by + the store is still in a cache elsewhere in the system. When glMemoryBarrier + is called, the GL flushes and/or invalidates any caches relevant to the + operations specified by the barriers parameter to ensure consistent + ordering of operations across the barrier. +

+ To allow for independent shader invocations to communicate by reads and + writes to a common memory address, image variables in the OpenGL Shading + Language may be declared as "coherent". Buffer object or texture image + memory accessed through such variables may be cached only if caches are + automatically updated due to stores issued by any other shader invocation. + If the same address is accessed using both coherent and non-coherent + variables, the accesses using variables declared as coherent will observe + the results stored using coherent variables in other invocations. Using + variables declared as "coherent" guarantees only that the results of + stores will be immediately visible to shader invocations using + similarly-declared variables; calling glMemoryBarrier is required to ensure + that the stores are visible to other operations. +

+ The following guidelines may be helpful in choosing when to use coherent + memory accesses and when to use barriers. +

+

  • Data that are read-only or constant may be accessed without using + coherent variables or calling MemoryBarrier(). Updates to the + read-only data via API calls such as BufferSubData will invalidate + shader caches implicitly as required.

  • Data that are shared between shader invocations at a fine granularity + (e.g., written by one invocation, consumed by another invocation) should + use coherent variables to read and write the shared data.

  • Data written by one shader invocation and consumed by other shader + invocations launched as a result of its execution ("dependent + invocations") should use coherent variables in the producing shader + invocation and call memoryBarrier() after the last write. The consuming + shader invocation should also use coherent variables.

  • Data written to image variables in one rendering pass and read by the + shader in a later pass need not use coherent variables or + memoryBarrier(). Calling MemoryBarrier() with the + SHADER_IMAGE_ACCESS_BARRIER_BIT set in barriers between passes is + necessary.

  • Data written by the shader in one rendering pass and read by another + mechanism (e.g., vertex or index buffer pulling) in a later pass need + not use coherent variables or memoryBarrier(). Calling + glMemoryBarrier with the appropriate bits set in barriers between + passes is necessary.

+

Notes

+ glMemoryBarrier is available only if the GL version is 4.2 or higher. +

+ GL_SHADER_STORAGE_BARRIER_BIT is available only if the GL version is 4.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if barriers contains any bits + other than those listed above, or is not the special value GL_ALL_BARRIER_BITS. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glMinSampleShading.xml b/upstream-man-pages/man4/xhtml/glMinSampleShading.xml new file mode 100644 index 0000000..8f57ede --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMinSampleShading.xml @@ -0,0 +1,40 @@ + + + +glMinSampleShading - OpenGL 4 Reference Pages

Name

glMinSampleShading — specifies minimum rate at which sample shaing takes place

C Specification

void glMinSampleShading(GLfloat value);

Parameters

value

+ Specifies the rate at which samples are shaded within each covered pixel. +

Description

+ glMinSampleShading specifies the rate at which samples are shaded within + a covered pixel. Sample-rate shading is enabled by calling glEnable + with the parameter GL_SAMPLE_SHADING. If GL_MULTISAMPLE + or GL_SAMPLE_SHADING is disabled, sample shading has no effect. + Otherwise, an implementation must provide at least as many unique color values for + each covered fragment as specified by value times samples where + samples is the value of GL_SAMPLES for the current + framebuffer. At least 1 sample for each covered fragment is generated. +

+ A value of 1.0 indicates that each sample in the framebuffer should be + indpendently shaded. A value of 0.0 effectively allows the GL to ignore + sample rate shading. Any value between 0.0 and 1.0 allows the GL to shade only a subset + of the total samples within each covered fragment. Which samples are shaded and the algorithm + used to select that subset of the fragment's samples is implementation dependent. +

Notes

+ The type of the value parameter was + changed from GLclampf to GLfloat. This change is transparent + to user code and is described in detail on the + removedTypes + page. +

Errors

+ None. +

Associated Gets

+ glGet with argument GL_MIN_SAMPLE_SHADING. +

+ glGet with argument GL_SAMPLES. +

See Also

+ removedTypes +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glMultiDrawArrays.xml b/upstream-man-pages/man4/xhtml/glMultiDrawArrays.xml new file mode 100644 index 0000000..f7c30d8 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMultiDrawArrays.xml @@ -0,0 +1,67 @@ + + + +glMultiDrawArrays - OpenGL 4 Reference Pages

Name

glMultiDrawArrays — render multiple sets of primitives from array data

C Specification

void glMultiDrawArrays(GLenum  mode,
 const GLint *  first,
 const GLsizei *  count,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

first

+ Points to an array of starting indices in the enabled arrays. +

count

+ Points to an array of the number of indices to be rendered. +

primcount

+ Specifies the size of the first and count +

Description

+ glMultiDrawArrays specifies multiple sets of geometric primitives + with very few subroutine calls. Instead of calling a GL procedure + to pass each individual vertex, normal, texture coordinate, edge + flag, or color, you can prespecify + separate arrays of vertices, normals, and colors and use them to + construct a sequence of primitives with a single + call to glMultiDrawArrays. +

+ glMultiDrawArrays behaves identically to glDrawArrays except that primcount + separate ranges of elements are specified instead. +

+ When glMultiDrawArrays is called, it uses count sequential elements from each + enabled array to construct a sequence of geometric primitives, + beginning with element first. mode specifies what kind of + primitives are constructed, and how the array elements + construct those primitives. +

+ Vertex attributes that are modified by glMultiDrawArrays have an + unspecified value after glMultiDrawArrays returns. Attributes that aren't + modified remain well defined. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glMultiDrawArraysIndirect.xml b/upstream-man-pages/man4/xhtml/glMultiDrawArraysIndirect.xml new file mode 100644 index 0000000..ef757ba --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMultiDrawArraysIndirect.xml @@ -0,0 +1,109 @@ + + + +glMultiDrawArraysIndirect - OpenGL 4 Reference Pages

Name

glMultiDrawArraysIndirect — render multiple sets of primitives from array data, taking parameters from memory

C Specification

void glMultiDrawArraysIndirect(GLenum  mode,
 const void * indirect,
 GLsizei  drawcount,
 GLsizei  stride);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

indirect

+ Specifies the address of an array of structures containing the draw parameters. +

drawcount

+ Specifies the the number of elements in the array of draw parameter structures. +

stride

+ Specifies the distance in basic machine units between elements of the draw parameter array. +

Description

+ glMultiDrawArraysIndirect specifies multiple geometric primitives + with very few subroutine calls. glMultiDrawArraysIndirect behaves + similarly to a multitude of calls to glDrawArraysInstancedBaseInstance, + execept that the parameters to each call to glDrawArraysInstancedBaseInstance + are stored in an array in memory at the address given by indirect, separated + by the stride, in basic machine units, specified by stride. If stride + is zero, then the array is assumed to be tightly packed in memory. +

+ The parameters addressed by indirect are packed into an array of structures, + each element of which takes the form (in C): +

    typedef  struct {
+        uint  count;
+        uint  primCount;
+        uint  first;
+        uint  baseInstance;
+    } DrawArraysIndirectCommand;

+

+ A single call to glMultiDrawArraysIndirect is equivalent, assuming no errors + are generated to: +

    GLsizei n;
+    for (n = 0; n < drawcount; n++)
+    {
+        const DrawArraysIndirectCommand  *cmd;
+        if (stride != 0)
+        {
+            cmd = (const DrawArraysIndirectCommand  *)((uintptr)indirect + n * stride);
+        }
+        else
+        {
+            cmd = (const DrawArraysIndirectCommand  *)indirect + n;
+        }
+
+        glDrawArraysInstancedBaseInstance(mode,  cmd->first,  cmd->count,  cmd->primCount, cmd->baseInstance);
+    }

+

+ If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glMultiDrawArraysIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. +

+ In contrast to glDrawArraysInstancedBaseInstance, + the first member of the parameter structure is unsigned, and out-of-range indices + do not generate an error. +

+ Vertex attributes that are modified by glMultiDrawArraysIndirect have an + unspecified value after glMultiDrawArraysIndirect returns. Attributes that aren't + modified remain well defined. +

Notes

+ The baseInstance member of the DrawArraysIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. +

+ glMultiDrawArraysIndirect is available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is not a multiple + of four. +

+ GL_INVALID_VALUE is generated if drawcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glMultiDrawElements.xml b/upstream-man-pages/man4/xhtml/glMultiDrawElements.xml new file mode 100644 index 0000000..997e34f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMultiDrawElements.xml @@ -0,0 +1,63 @@ + + + +glMultiDrawElements - OpenGL 4 Reference Pages

Name

glMultiDrawElements — render multiple sets of primitives by specifying indices of array data elements

C Specification

void glMultiDrawElements(GLenum  mode,
 const GLsizei *  count,
 GLenum  type,
 const GLvoid **  indices,
 GLsizei  primcount);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

count

+ Points to an array of the elements counts. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the size of the count array. +

Description

+ glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine + calls. Instead of calling a GL function to pass each individual vertex, + normal, texture coordinate, edge flag, or color, you can prespecify + separate arrays of vertices, normals, and so on, and use them to construct a + sequence of primitives with a single call to glMultiDrawElements. +

+ glMultiDrawElements is identical in operation to glDrawElements except that + primcount separate lists of elements are specified. +

+ Vertex attributes that are modified by glMultiDrawElements have an + unspecified value after glMultiDrawElements returns. Attributes that aren't + modified maintain their previous values. +

Notes

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glMultiDrawElementsBaseVertex.xml b/upstream-man-pages/man4/xhtml/glMultiDrawElementsBaseVertex.xml new file mode 100644 index 0000000..c21c8fd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMultiDrawElementsBaseVertex.xml @@ -0,0 +1,68 @@ + + + +glMultiDrawElementsBaseVertex - OpenGL 4 Reference Pages

Name

glMultiDrawElementsBaseVertex — render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index

C Specification

void glMultiDrawElementsBaseVertex(GLenum  mode,
 const GLsizei * count,
 GLenum  type,
 const GLvoid ** indices,
 GLsizei  primcount,
 GLint * basevertex);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY and GL_PATCHES + are accepted. +

count

+ Points to an array of the elements counts. +

type

+ Specifies the type of the values in indices. Must be one of + GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or + GL_UNSIGNED_INT. +

indices

+ Specifies a pointer to the location where the indices are stored. +

primcount

+ Specifies the size of the count array. +

basevertex

+ Specifies a pointer to the location where the base vertices are stored. +

Description

+ glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, + except that primcount separate lists of elements are specifried instead. +

+ It has the same effect as: +

    for (int i = 0; i < primcount; i++)
+        if (count[i] > 0)
+            glDrawElementsBaseVertex(mode,
+                                     count[i],
+                                     type,
+                                     indices[i],
+                                     basevertex[i]);

+

Notes

+ glMultiDrawElementsBaseVertex is available only if the GL version is 3.1 or greater. +

+ GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY and + GL_TRIANGLES_ADJACENCY + are available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if primcount is negative. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or the element array and the buffer object's data store is currently mapped. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glMultiDrawElementsIndirect.xml b/upstream-man-pages/man4/xhtml/glMultiDrawElementsIndirect.xml new file mode 100644 index 0000000..0ccd941 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glMultiDrawElementsIndirect.xml @@ -0,0 +1,122 @@ + + + +glMultiDrawElementsIndirect - OpenGL 4 Reference Pages

Name

glMultiDrawElementsIndirect — render indexed primitives from array data, taking parameters from memory

C Specification

void glMultiDrawElementsIndirect(GLenum  mode,
 GLenum  type,
 const void * indirect,
 GLsizei  drawcount,
 GLsizei  stride);

Parameters

mode

+ Specifies what kind of primitives to render. + Symbolic constants + GL_POINTS, + GL_LINE_STRIP, + GL_LINE_LOOP, + GL_LINES, + GL_LINE_STRIP_ADJACENCY, + GL_LINES_ADJACENCY, + GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN, + GL_TRIANGLES, + GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLES_ADJACENCY, and + GL_PATCHES + are accepted. +

type

+ Specifies the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. +

indirect

+ Specifies the address of a structure containing an array of draw parameters. +

drawcount

+ Specifies the number of elements in the array addressed by indirect. +

stride

+ Specifies the distance in basic machine units between elements of the draw parameter array. +

Description

+ glMultiDrawElementsIndirect specifies multiple indexed geometric primitives + with very few subroutine calls. glMultiDrawElementsIndirect behaves + similarly to a multitude of calls to glDrawElementsInstancedBaseVertexBaseInstance, + execpt that the parameters to glDrawElementsInstancedBaseVertexBaseInstance + are stored in an array in memory at the address given by indirect, separated + by the stride, in basic machine units, specified by stride. If stride + is zero, then the array is assumed to be tightly packed in memory. +

+ The parameters addressed by indirect are packed into a structure + that takes the form (in C): +

    typedef  struct {
+        uint  count;
+        uint  primCount;
+        uint  firstIndex;
+        uint  baseVertex;
+        uint  baseInstance;
+    } DrawElementsIndirectCommand;

+

+ A single call to glMultiDrawElementsIndirect is equivalent, assuming no errors + are generated to: +

    GLsizei n;
+    for (n = 0; n < drawcount; n++)
+    {
+        const DrawElementsIndirectCommand  *cmd;
+        if (stride != 0)
+        {
+            cmd = (const DrawElementsIndirectCommand  *)((uintptr)indirect + n * stride);
+        }
+        else
+        {
+            cmd = (const DrawElementsIndirectCommand  *)indirect + n;
+        }
+
+        glDrawElementsInstancedBaseVertexBaseInstance(mode,
+                                                      cmd->count,
+                                                      type,
+                                                      cmd->firstIndex + size-of-type,
+                                                      cmd->primCount,
+                                                      cmd->baseVertex,
+                                                      cmd->baseInstance);
+    }

+

+ If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time + of a call to glDrawElementsIndirect, indirect + is interpreted as an offset, in basic machine units, into that buffer and the parameter + data is read from the buffer rather than from client memory. +

+ Note that indices stored in client memory are not supported. If no buffer is bound to the + GL_ELEMENT_ARRAY_BUFFER binding, an error will be generated. +

+ The results of the operation are undefined if the reservedMustBeZero member + of the parameter structure is non-zero. However, no error is generated in this case. +

+ Vertex attributes that are modified by glDrawElementsIndirect have an + unspecified value after glDrawElementsIndirect returns. Attributes that aren't + modified remain well defined. +

Notes

+ The baseInstance member of the DrawElementsIndirectCommand + structure is defined only if the GL version is 4.2 or greater. For versions of the GL less than 4.2, + this parameter is present but is reserved and should be set to zero. On earlier versions of the GL, + behavior is undefined if it is non-zero. +

Errors

+ GL_INVALID_ENUM is generated if mode is not an accepted value. +

+ GL_INVALID_VALUE is generated if stride is not a multiple + of four. +

+ GL_INVALID_VALUE is generated if drawcount is negative. +

+ GL_INVALID_OPERATION is generated if no buffer is bound to the GL_ELEMENT_ARRAY_BUFFER + binding, or if such a buffer's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an + enabled array or to the GL_DRAW_INDIRECT_BUFFER binding and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a geometry shader is active and mode + is incompatible with the input primitive type of the geometry shader in the currently installed program object. +

+ GL_INVALID_OPERATION is generated if mode is GL_PATCHES + and no tessellation control shader is active. +

Copyright

+ Copyright © 2010-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glObjectLabel.xml b/upstream-man-pages/man4/xhtml/glObjectLabel.xml new file mode 100644 index 0000000..5816686 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glObjectLabel.xml @@ -0,0 +1,49 @@ + + + +glObjectLabel - OpenGL 4 Reference Pages

Name

glObjectLabel — label a named object identified within a namespace

C Specification

void glObjectLabel(GLenum  identifier,
 GLuint  name,
 GLsizei  length,
 const char *  label);

Parameters

identifier

+ The namespace from which the name of the object is allocated. +

name

+ The name of the object to label. +

length

+ The length of the label to be used for the object. +

label

+ The address of a string containing the label to assign to the object. +

Description

+ glObjectLabel labels the object identified by + name within the namespace given by identifier. + identifier must be one of GL_BUFFER, GL_SHADER, + GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, + GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, + GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, + to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, + program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame + buffers, respectively. +

+ label is the address of a string that will be used to label an object. + length contains the number of characters in label. + If length is negative, it is implied that + label contains a null-terminated string. If label + is NULL, any debug label is effectively removed from the object. +

Errors

+ GL_INVALID_ENUM is generated if identifier + is not one of the accepted object types. +

+ GL_INVALID_OPERATION is generated if name + is not the name of an existing object of the type specified by identifier. +

+ GL_INVALID_VALUE is generated if the number of characters in + label, excluding the null terminator when length + is negative, is greater than the value of GL_MAX_LABEL_LENGTH. +

Associated Gets

+ glGet with argument GL_MAX_LABEL_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glObjectPtrLabel.xml b/upstream-man-pages/man4/xhtml/glObjectPtrLabel.xml new file mode 100644 index 0000000..4e471ad --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glObjectPtrLabel.xml @@ -0,0 +1,37 @@ + + + +glObjectPtrLabel - OpenGL 4 Reference Pages

Name

glObjectPtrLabel — label a a sync object identified by a pointer

C Specification

void glObjectPtrLabel(void *  ptr,
 GLsizei  length,
 const char *  label);

Parameters

ptr

+ A pointer identifying a sync object. +

length

+ The length of the label to be used for the object. +

label

+ The address of a string containing the label to assign to the object. +

Description

+ glObjectPtrLabel labels the sync object identified by + ptr. +

+ label is the address of a string that will be used to label the object. + length contains the number of characters in label. + If length is negative, it is implied that + label contains a null-terminated string. If label + is NULL, any debug label is effectively removed from the object. +

Errors

+ GL_INVALID_VALUE is generated if ptr is not + a valid sync object. +

+ GL_INVALID_VALUE is generated if the number of characters in + label, excluding the null terminator when length + is negative, is greater than the value of GL_MAX_LABEL_LENGTH. +

Associated Gets

+ glGet with argument GL_MAX_LABEL_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glPatchParameter.xml b/upstream-man-pages/man4/xhtml/glPatchParameter.xml new file mode 100644 index 0000000..5c6c360 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPatchParameter.xml @@ -0,0 +1,43 @@ + + + +glPatchParameter - OpenGL 4 Reference Pages

Name

glPatchParameter — specifies the parameters for patch primitives

C Specification

void glPatchParameteri(GLenum  pname,
 GLint  value);
void glPatchParameterfv(GLenum  pname,
 const GLfloat * values);

Parameters

pname

+ Specifies the name of the parameter to set. The symbolc constants GL_PATCH_VERTICES, + GL_PATCH_DEFAULT_OUTER_LEVEL, and GL_PATCH_DEFAULT_INNER_LEVEL are accepted. +

value

+ Specifies the new value for the parameter given by pname. +

values

+ Specifies the address of an array containing the new values for the parameter given by pname. +

Description

+ glPatchParameter specifies the parameters that will be used for patch primitives. pname + specifies the parameter to modify and must be either GL_PATCH_VERTICES, GL_PATCH_DEFAULT_OUTER_LEVEL + or GL_PATCH_DEFAULT_INNER_LEVEL. For glPatchParameteri, value specifies + the new value for the parameter specified by pname. For glPatchParameterfv, values + specifies the address of an array containing the new values for the parameter specified by pname. +

+ When pname is GL_PATCH_VERTICES, value specifies the number + of vertices that will be used to make up a single patch primitive. Patch primitives are consumed by the tessellation control + shader (if present) and subsequently used for tessellation. When primitives are specified using + glDrawArrays or a similar function, each patch will be made + from parameter control points, each represented by a vertex taken from the enabeld vertex arrays. + parameter must be greater than zero, and less than or equal to the value of GL_MAX_PATCH_VERTICES. +

+ When pname is GL_PATCH_DEFAULT_OUTER_LEVEL or GL_PATCH_DEFAULT_INNER_LEVEL, + values contains the address of an array contiaining the default outer or inner tessellation levels, respectively, + to be used when no tessellation control shader is present. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_VALUE is generated if pname is GL_PATCH_VERTICES + and value is less than or equal to zero, or greater than the value of GL_MAX_PATCH_VERTICES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glPauseTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glPauseTransformFeedback.xml new file mode 100644 index 0000000..74d9aba --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPauseTransformFeedback.xml @@ -0,0 +1,23 @@ + + + +glPauseTransformFeedback - OpenGL 4 Reference Pages

Name

glPauseTransformFeedback — pause transform feedback operations

C Specification

void glPauseTransformFeedback(void);

Description

+ glPauseTransformFeedback pauses transform feedback operations on the currently active transform feedback + object. When transform feedback operations are paused, transform feedback is still considered active and changing most + transform feedback state related to the object results in an error. However, a new transform feedback object may be bound + while transform feedback is paused. +

Errors

+ GL_INVALID_OPERATION is generated if the currently bound transform feedback object is not active or is paused. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glPixelStore.xml b/upstream-man-pages/man4/xhtml/glPixelStore.xml new file mode 100644 index 0000000..26ebc15 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPixelStore.xml @@ -0,0 +1,1136 @@ + + + +glPixelStore - OpenGL 4 Reference Pages

Name

glPixelStore — set pixel storage modes

C Specification

void glPixelStoref(GLenum  pname,
 GLfloat  param);
void glPixelStorei(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies the symbolic name of the parameter to be set. + Six values affect the packing of pixel data into memory: + GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH, + GL_PACK_IMAGE_HEIGHT, + GL_PACK_SKIP_PIXELS, + GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_IMAGES, and + GL_PACK_ALIGNMENT. + Six more affect the unpacking of pixel data from memory: + GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH, + GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_IMAGES, and + GL_UNPACK_ALIGNMENT. +

param

+ Specifies the value that pname is set to. +

Description

+ glPixelStore sets pixel storage modes that affect the operation of subsequent + glReadPixels as well as the unpacking of + texture patterns (see glTexImage1D, + glTexImage2D, glTexImage3D, glTexSubImage1D, + glTexSubImage2D, glTexSubImage3D), + glCompressedTexImage1D, glCompressedTexImage2D, + glCompressedTexImage3D, glCompressedTexSubImage1D, + glCompressedTexSubImage2D or glCompressedTexSubImage1D. +

+ pname is a symbolic constant indicating the parameter to be set, and + param is the new value. Six of the twelve storage parameters affect + how pixel data is returned to client memory. + They are as follows: +

GL_PACK_SWAP_BYTES

+ If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is stored in memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_PACK_SWAP_BYTES is true. + GL_PACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_PACK_SWAP_BYTES. +

GL_PACK_LSB_FIRST

+ If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. +

GL_PACK_ROW_LENGTH

+ If greater than 0, + GL_PACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping +

+ + + + k + = + + 8 + ⁢ + a + ⁢ + + + + + n + ⁢ + l + + + + + 8 + ⁢ + a + + + + + + + +

+ components or indices. +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_PACK_IMAGE_HEIGHT

+ If greater than 0, + GL_PACK_IMAGE_HEIGHT defines the number of pixels in an image + three-dimensional texture volume, where ``image'' is defined by all pixels + sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + ⁢ + h + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + ⁢ + h + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, where + n + is the number of components or indices + in a pixel, + l + is the number of pixels in a row + (GL_PACK_ROW_LENGTH if it is greater than 0, the + width + argument to glTexImage3D otherwise), + h + is the number of + rows in a pixel image (GL_PACK_IMAGE_HEIGHT if it is greater than + 0, the + height + argument to the glTexImage3D routine otherwise), + a + is the value of + GL_PACK_ALIGNMENT, and + s + is the size, in bytes, of a single + component (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, and GL_PACK_SKIP_IMAGES

+ These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated simply by + incrementing the pointer passed to glReadPixels. + Setting GL_PACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + ⁢ + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_PACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + ⁢ + m + + + components or indices, + where + m + is the number of components or indices per row, + as just computed in the GL_PACK_ROW_LENGTH section. + Setting GL_PACK_SKIP_IMAGES to + k + is equivalent to incrementing + the pointer by + + + + k + ⁢ + p + + , + where + p + is the number of components or indices + per image, as computed in the GL_PACK_IMAGE_HEIGHT section. +

GL_PACK_ALIGNMENT

+ Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). +

+ The other six of the twelve storage parameters affect how pixel data is + read from client memory. + These values are significant for + glTexImage1D, + glTexImage2D, + glTexImage3D, + glTexSubImage1D, + glTexSubImage2D, and + glTexSubImage3D +

+ They are as follows: +

GL_UNPACK_SWAP_BYTES

+ If true, + byte ordering for multibyte color components, + depth components, + or stencil indices + is reversed. + That is, + if a four-byte component consists of bytes + + + b + 0 + + , + + + b + 1 + + , + + + b + 2 + + , + + + b + 3 + + , + it is taken from memory as + + + b + 3 + + , + + + b + 2 + + , + + + b + 1 + + , + + + b + 0 + + + if GL_UNPACK_SWAP_BYTES is true. + GL_UNPACK_SWAP_BYTES has no effect on the memory order of components + within a pixel, + only on the order of bytes within components or indices. + For example, + the three components of a GL_RGB format pixel are always stored with + red first, + green second, + and blue third, + regardless of the value of GL_UNPACK_SWAP_BYTES. +

GL_UNPACK_LSB_FIRST

+ If true, + bits are ordered within a byte from least significant to most significant; + otherwise, + the first bit in each byte is the most significant one. +

GL_UNPACK_ROW_LENGTH

+ If greater than 0, + GL_UNPACK_ROW_LENGTH defines the number of pixels in a row. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to the pixel routine otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). + In the case of 1-bit values, + the location of the next row is obtained by skipping +

+ + + + k + = + + 8 + ⁢ + a + ⁢ + + + + + n + ⁢ + l + + + + + 8 + ⁢ + a + + + + + + + +

+ components or indices. +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_UNPACK_IMAGE_HEIGHT

+ If greater than 0, + GL_UNPACK_IMAGE_HEIGHT defines the number of pixels in an image of + a three-dimensional texture volume. Where ``image'' is defined by all + pixel sharing the same third dimension index. + If the first pixel of a row is placed at location + p + in memory, + then the location of the first pixel of the next row is obtained by skipping +

+

+ + + k + = + + + + + + n + ⁢ + l + ⁢ + h + + + + + + + a + s + + + ⁢ + + + + + s + ⁢ + n + ⁢ + l + ⁢ + h + + + a + + + + + + ⁢ + + + + s + >= + a + + + + + s + < + a + + + + + + +

+

+ components or indices, + where + n + is the number of components or indices in a pixel, + l + is the number of pixels in a row + (GL_UNPACK_ROW_LENGTH if it is greater than 0, + the + width + argument to glTexImage3D otherwise), + h + is the number of rows in an image (GL_UNPACK_IMAGE_HEIGHT if + it is greater than 0, the + height + argument to glTexImage3D otherwise), + a + is the value of GL_UNPACK_ALIGNMENT, and + s + is the size, in bytes, of a single component + (if + + + + a + < + s + + , + then it is as if + + + + a + = + s + + ). +

+ The word component in this description refers to the nonindex values + red, + green, + blue, + alpha, + and depth. + Storage format GL_RGB, + for example, + has three components per pixel: + first red, + then green, + and finally blue. +

GL_UNPACK_SKIP_PIXELS and GL_UNPACK_SKIP_ROWS

+ These values are provided as a convenience to the programmer; + they provide no functionality that cannot be duplicated by + incrementing the pointer passed to + glTexImage1D, + glTexImage2D, + glTexSubImage1D or + glTexSubImage2D. + Setting GL_UNPACK_SKIP_PIXELS to + i + is equivalent to incrementing + the pointer by + + + + i + ⁢ + n + + + components or indices, + where + n + is the number of components or indices in each pixel. + Setting GL_UNPACK_SKIP_ROWS to + j + is equivalent to incrementing + the pointer by + + + + j + ⁢ + k + + + components or indices, + where + k + is the number of components or indices per row, + as just computed in the GL_UNPACK_ROW_LENGTH section. +

GL_UNPACK_ALIGNMENT

+ Specifies the alignment requirements for the start of each pixel row in memory. + The allowable values are + 1 (byte-alignment), + 2 (rows aligned to even-numbered bytes), + 4 (word-alignment), and + 8 (rows start on double-word boundaries). +

+ The following table gives the type, + initial value, + and range of valid values for each storage parameter + that can be set with glPixelStore. +

+

+ pname + + Type + + Initial Value + + Valid Range +
+ GL_PACK_SWAP_BYTES + + boolean + + false + + true or false +
+ GL_PACK_LSB_FIRST + + boolean + + false + + true or false +
+ GL_PACK_ROW_LENGTH + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_IMAGE_HEIGHT + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_ROWS + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_PIXELS + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_SKIP_IMAGES + + integer + + 0 + + + + + 0 + + + +
+ GL_PACK_ALIGNMENT + + integer + + 4 + + 1, 2, 4, or 8 +
+ GL_UNPACK_SWAP_BYTES + + boolean + + false + + true or false +
+ GL_UNPACK_LSB_FIRST + + boolean + + false + + true or false +
+ GL_UNPACK_ROW_LENGTH + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_IMAGE_HEIGHT + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_ROWS + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_PIXELS + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_SKIP_IMAGES + + integer + + 0 + + + + + 0 + + + +
+ GL_UNPACK_ALIGNMENT + + integer + + 4 + + 1, 2, 4, or 8 +

+ glPixelStoref can be used to set any pixel store parameter. + If the parameter type is boolean, + then if param is 0, + the parameter is false; + otherwise it is set to true. + If pname is a integer type parameter, + param is rounded to the nearest integer. +

+ Likewise, glPixelStorei can also be used to set any of the + pixel store parameters. + Boolean parameters are set to false if param is 0 and true otherwise. +

Errors

+ GL_INVALID_ENUM is generated if pname is not an accepted value. +

+ GL_INVALID_VALUE is generated if a negative row length, + pixel skip, + or row skip value is specified, + or if alignment is specified as other than 1, 2, 4, or 8. +

Associated Gets

+ glGet with argument GL_PACK_SWAP_BYTES +

+ glGet with argument GL_PACK_LSB_FIRST +

+ glGet with argument GL_PACK_ROW_LENGTH +

+ glGet with argument GL_PACK_IMAGE_HEIGHT +

+ glGet with argument GL_PACK_SKIP_ROWS +

+ glGet with argument GL_PACK_SKIP_PIXELS +

+ glGet with argument GL_PACK_SKIP_IMAGES +

+ glGet with argument GL_PACK_ALIGNMENT +

+ glGet with argument GL_UNPACK_SWAP_BYTES +

+ glGet with argument GL_UNPACK_LSB_FIRST +

+ glGet with argument GL_UNPACK_ROW_LENGTH +

+ glGet with argument GL_UNPACK_IMAGE_HEIGHT +

+ glGet with argument GL_UNPACK_SKIP_ROWS +

+ glGet with argument GL_UNPACK_SKIP_PIXELS +

+ glGet with argument GL_UNPACK_SKIP_IMAGES +

+ glGet with argument GL_UNPACK_ALIGNMENT +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. © 2011 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glPointParameter.xml b/upstream-man-pages/man4/xhtml/glPointParameter.xml new file mode 100644 index 0000000..c1f211f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPointParameter.xml @@ -0,0 +1,47 @@ + + + +glPointParameter - OpenGL 4 Reference Pages

Name

glPointParameter — specify point parameters

C Specification

void glPointParameterf(GLenum  pname,
 GLfloat  param);

void glPointParameteri(GLenum  pname,
 GLint  param);

Parameters

pname

+ Specifies a single-valued point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. +

param

+ Specifies the value that pname will be set to. +

C Specification

void glPointParameterfv(GLenum  pname,
 const GLfloat *  params);

void glPointParameteriv(GLenum  pname,
 const GLint *  params);

Parameters

pname

+ Specifies a point parameter. + GL_POINT_FADE_THRESHOLD_SIZE, and + GL_POINT_SPRITE_COORD_ORIGIN + are accepted. +

params

+ Specifies the value to be assigned to pname.. +

Description

+ The following values are accepted for pname: +

GL_POINT_FADE_THRESHOLD_SIZE

+

+ params is a single floating-point value that specifies the threshold value + to which point sizes are clamped if they exceed the specified value. The + default value is 1.0. +

GL_POINT_SPRITE_COORD_ORIGIN

+

+ params is a single enum specifying the point sprite texture coordinate origin, either GL_LOWER_LEFT or GL_UPPER_LEFT. + The default value is GL_UPPER_LEFT. +

Errors

+ GL_INVALID_VALUE is generated if the value specified for + GL_POINT_FADE_THRESHOLD_SIZE is less than zero. +

+ GL_INVALID_ENUM is generated If the value specified for + GL_POINT_SPRITE_COORD_ORIGIN is not GL_LOWER_LEFT or GL_UPPER_LEFT. +

Associated Gets

+ glGet with argument GL_POINT_FADE_THRESHOLD_SIZE +

+ glGet with argument GL_POINT_SPRITE_COORD_ORIGIN +

See Also

+ glPointSize +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. Copyright © 2010 + Khronos Group. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glPointSize.xml b/upstream-man-pages/man4/xhtml/glPointSize.xml new file mode 100644 index 0000000..99b49ff --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPointSize.xml @@ -0,0 +1,39 @@ + + + +glPointSize - OpenGL 4 Reference Pages

Name

glPointSize — specify the diameter of rasterized points

C Specification

void glPointSize(GLfloat size);

Parameters

size

+ Specifies the diameter of rasterized points. + The initial value is 1. +

Description

+ glPointSize specifies the rasterized diameter of points. If point size mode + is disabled (see glEnable with parameter + GL_PROGRAM_POINT_SIZE), this value will be used to rasterize points. Otherwise, + the value written to the shading language built-in variable gl_PointSize will be used. +

Notes

+ The point size specified by glPointSize is always returned when + GL_POINT_SIZE is queried. Clamping and rounding for points have no effect on the specified value. +

Errors

+ GL_INVALID_VALUE is generated if size is less than or equal to 0. +

Associated Gets

+ glGet with argument GL_POINT_SIZE_RANGE +

+ glGet with argument GL_POINT_SIZE_GRANULARITY +

+ glGet with argument GL_POINT_SIZE +

+ glGet with argument GL_POINT_SIZE_MIN +

+ glGet with argument GL_POINT_SIZE_MAX +

+ glGet with argument GL_POINT_FADE_THRESHOLD_SIZE +

+ glIsEnabled with argument GL_PROGRAM_POINT_SIZE +

See Also

+ glEnable, + glPointParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glPolygonMode.xml b/upstream-man-pages/man4/xhtml/glPolygonMode.xml new file mode 100644 index 0000000..6bed963 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPolygonMode.xml @@ -0,0 +1,65 @@ + + + +glPolygonMode - OpenGL 4 Reference Pages

Name

glPolygonMode — select a polygon rasterization mode

C Specification

void glPolygonMode(GLenum face, GLenum mode);

Parameters

face

+ Specifies the polygons that mode applies to. + Must be GL_FRONT_AND_BACK for front- and back-facing polygons. +

mode

+ Specifies how polygons will be rasterized. + Accepted values are + GL_POINT, + GL_LINE, and + GL_FILL. + The initial value is GL_FILL for both front- and back-facing polygons. +

Description

+ glPolygonMode controls the interpretation of polygons for rasterization. + face describes which polygons mode applies to: + both front and back-facing polygons (GL_FRONT_AND_BACK). + The polygon mode affects only the final rasterization of polygons. + In particular, + a polygon's vertices are lit and + the polygon is clipped and possibly culled before these modes are applied. +

+ Three modes are defined and can be specified in mode: +

GL_POINT

+ Polygon vertices that are marked as the start of a boundary edge + are drawn as points. + Point attributes such as + GL_POINT_SIZE and + GL_POINT_SMOOTH control + the rasterization of the points. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. +

GL_LINE

+ Boundary edges of the polygon are drawn as line segments. + Line attributes such as + GL_LINE_WIDTH and + GL_LINE_SMOOTH control + the rasterization of the lines. + Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. +

GL_FILL

+ The interior of the polygon is filled. + Polygon attributes such as GL_POLYGON_SMOOTH control the rasterization of the polygon. +

Examples

+ To draw a surface with outlined polygons, + call +

+glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
+            

+

Notes

+ Vertices are marked as boundary or nonboundary with an edge flag. + Edge flags are generated internally by the GL when it decomposes + triangle stips and fans. +

Errors

+ GL_INVALID_ENUM is generated if either face or mode is not + an accepted value. +

Associated Gets

+ glGet with argument GL_POLYGON_MODE +

See Also

+ glLineWidth, + glPointSize +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glPolygonOffset.xml b/upstream-man-pages/man4/xhtml/glPolygonOffset.xml new file mode 100644 index 0000000..f07e716 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPolygonOffset.xml @@ -0,0 +1,65 @@ + + + +glPolygonOffset - OpenGL 4 Reference Pages

Name

glPolygonOffset — set the scale and units used to calculate depth values

C Specification

void glPolygonOffset(GLfloat  factor,
 GLfloat  units);

Parameters

factor

+ Specifies a scale factor that is used to create a variable + depth offset for each polygon. The initial value is 0. +

units

+ Is multiplied by an implementation-specific value to + create a constant depth offset. The initial value is 0. +

Description

+ When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or + GL_POLYGON_OFFSET_POINT is enabled, each + fragment's depth value will be offset after it is interpolated + from the depth values of the appropriate vertices. + The value of the offset is + + + + + factor + × + DZ + + + + + r + × + units + + + , + where + + + DZ + + is a measurement of the change in depth relative to the screen + area of the polygon, and + r + is the smallest value that is guaranteed to + produce a resolvable offset for a given implementation. + The offset is added before the depth test is performed and before + the value is written into the depth buffer. +

+ glPolygonOffset is useful for rendering hidden-line images, for applying decals + to surfaces, and for rendering solids with highlighted edges. +

Associated Gets

+ glIsEnabled with argument + GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_LINE, + or GL_POLYGON_OFFSET_POINT. +

+ glGet with argument GL_POLYGON_OFFSET_FACTOR or + GL_POLYGON_OFFSET_UNITS. +

See Also

+ glDepthFunc, + glEnable, + glGet, + glIsEnabled +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glPopDebugGroup.xml b/upstream-man-pages/man4/xhtml/glPopDebugGroup.xml new file mode 100644 index 0000000..1105fa5 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPopDebugGroup.xml @@ -0,0 +1,29 @@ + + + +glPopDebugGroup - OpenGL 4 Reference Pages

Name

glPopDebugGroup — pop the active debug group

C Specification

void glPopDebugGroup(void);

Description

+ glPopDebugGroup pops the active debug group. + After popping a debug group, the GL will also generate a debug + output message describing its cause based on the message + string, the source source, and an ID id + submitted to the corresponding glPushDebugGroup + command. GL_DEBUG_TYPE_PUSH_GROUP and GL_DEBUG_TYPE_POP_GROUP + share a single namespace for message id. + severity has the value GL_DEBUG_SEVERITY_NOTIFICATION. The type + has the value GL_DEBUG_TYPE_POP_GROUP. Popping a debug group restores + the debug output volume control of the parent debug group. +

Errors

+ GL_STACK_UNDERFLOW is generated if an attempt is made to pop the default debug + group from the stack. +

Associated Gets

+ glGet with argument GL_MAX_DEBUG_MESSAGE_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glPrimitiveRestartIndex.xml b/upstream-man-pages/man4/xhtml/glPrimitiveRestartIndex.xml new file mode 100644 index 0000000..b3c7077 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPrimitiveRestartIndex.xml @@ -0,0 +1,33 @@ + + + +glPrimitiveRestartIndex - OpenGL 4 Reference Pages

Name

glPrimitiveRestartIndex — specify the primitive restart index

C Specification

void glPrimitiveRestartIndex(GLuint index);

Parameters

index

+ Specifies the value to be interpreted as the primitive restart index. +

Description

+ glPrimitiveRestartIndex specifies a vertex array element that is treated specially when + primitive restarting is enabled. This is known as the primitive restart index. +

+ When one of the Draw* commands transfers a set of generic attribute array elements to + the GL, if the index within the vertex arrays corresponding to that set is equal to the primitive restart + index, then the GL does not process those elements as a vertex. Instead, it is as if the drawing command + ended with the immediately preceding transfer, and another drawing command is immediately started with + the same parameters, but only transferring the immediately following element through the end of the + originally specified elements. +

+ When either glDrawElementsBaseVertex, + glDrawElementsInstancedBaseVertex or + glMultiDrawElementsBaseVertex is used, the primitive restart + comparison occurs before the basevertex offset is added to the array index. +

Notes

+ glPrimitiveRestartIndex is available only if the GL version is 3.1 or greater. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glProgramBinary.xml b/upstream-man-pages/man4/xhtml/glProgramBinary.xml new file mode 100644 index 0000000..b771fd2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glProgramBinary.xml @@ -0,0 +1,61 @@ + + + +glProgramBinary - OpenGL 4 Reference Pages

Name

glProgramBinary — load a program object with a program binary

C Specification

void glProgramBinary(GLuint  program,
 GLenum  binaryFormat,
 const void * binary,
 GLsizei  length);

Parameters

program

+ Specifies the name of a program object into which to load a program binary. +

binaryFormat

+ Specifies the format of the binary data in binary. +

binary

+ Specifies the address an array containing the binary to be loaded into program. +

length

+ Specifies the number of bytes contained in binary. +

Description

+ glProgramBinary loads a program object with a program binary previously + returned from glGetProgramBinary. + binaryFormat and binary must be those returned + by a previous call to glGetProgramBinary, + and length must be the length returned by + glGetProgramBinary, or by + glGetProgram when called with + pname set to GL_PROGRAM_BINARY_LENGTH. + If these conditions are not met, loading the program binary will fail and program's + GL_LINK_STATUS will be set to GL_FALSE. +

+ A program object's program binary is replaced by calls to + glLinkProgram or + glProgramBinary. When linking success or failure is concerned, glProgramBinary + can be considered to perform an implicit linking operation. + glLinkProgram and glProgramBinary + both set the program object's GL_LINK_STATUS to GL_TRUE + or GL_FALSE. +

+ A successful call to glProgramBinary will reset all uniform variables to their + initial values. The initial value is either the value of the variable's initializer as specified in the + original shader source, or zero if no initializer was present. Additionally, all vertex shader input + and fragment shader output assignments that were in effect when the program was linked before saving are + restored with glProgramBinary is called. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the + name of an existing program object. +

+ GL_INVALID_ENUM is generated if binaryFormat is not a + value recognized by the implementation. +

Notes

+ A program binary may fail to load if the implementation determines that there has been a + change in hardware or software configuration from when the program binary was produced such + as having been compiled with an incompatible or outdated version of the compiler. +

Associated Gets

+ glGetProgram with argument GL_PROGRAM_BINARY_LENGTH +

+ glGet with argument GL_NUM_PROGRAM_BINARY_FORMATS +

+ glGet with argument GL_PROGRAM_BINARY_FORMATS +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glProgramParameter.xml b/upstream-man-pages/man4/xhtml/glProgramParameter.xml new file mode 100644 index 0000000..e0c6231 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glProgramParameter.xml @@ -0,0 +1,52 @@ + + + +glProgramParameter - OpenGL 4 Reference Pages

Name

glProgramParameter — specify a parameter for a program object

C Specification

void glProgramParameteri(GLuint  program,
 GLenum  pname,
 GLint  value);

Parameters

program

+ Specifies the name of a program object whose parameter to modify. +

pname

+ Specifies the name of the parameter to modify. +

value

+ Specifies the new value of the parameter specified by pname for program. +

Description

+ glProgramParameter specifies a new value for the parameter nameed by + pname for the program object program. +

+ If pname is GL_PROGRAM_BINARY_RETRIEVABLE_HINT, + value should be GL_FALSE or GL_TRUE + to indicate to the implementation the intention of the application to retrieve the program's + binary representation with glGetProgramBinary. + The implementation may use this information to store information that may be useful for a future + query of the program's binary. It is recommended to set GL_PROGRAM_BINARY_RETRIEVABLE_HINT + for the program to GL_TRUE before calling + glLinkProgram, and + using the program at run-time if the binary is to be retrieved later. +

+ If pname is GL_PROGRAM_SEPARABLE, value + must be GL_TRUE or GL_FALSE and indicates whether + program can be bound to individual pipeline stages via + glUseProgramStages. A program's + GL_PROGRAM_SEPARABLE parameter must be set to GL_TRUE + before glLinkProgram + is called in order for it to be usable with a program pipeline object. The initial state of + GL_PROGRAM_SEPARABLE is GL_FALSE. +

Errors

+ GL_INVALID_OPERATION is generated if program is not the + name of an existing program object. +

+ GL_INVALID_ENUM is generated if pname is not one + of the accepted values. +

+ GL_INVALID_VALUE is generated if value is not a valid + value for the parameter named by pname. +

Associated Gets

+ glGetProgram. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glProgramUniform.xml b/upstream-man-pages/man4/xhtml/glProgramUniform.xml new file mode 100644 index 0000000..eda92f9 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glProgramUniform.xml @@ -0,0 +1,172 @@ + + + +glProgramUniform - OpenGL 4 Reference Pages

Name

glProgramUniform — Specify the value of a uniform variable for a specified program object

C Specification

void glProgramUniform1f(GLuint  program,
 GLint  location,
 GLfloat  v0);
void glProgramUniform2f(GLuint  program,
 GLint  location,
 GLfloat  v0,
 GLfloat  v1);
void glProgramUniform3f(GLuint  program,
 GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glProgramUniform4f(GLuint  program,
 GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);
void glProgramUniform1i(GLuint  program,
 GLint  location,
 GLint  v0);
void glProgramUniform2i(GLuint  program,
 GLint  location,
 GLint  v0,
 GLint  v1);
void glProgramUniform3i(GLuint  program,
 GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2);
void glProgramUniform4i(GLuint  program,
 GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLint  v3);
void glProgramUniform1ui(GLuint  program,
 GLint  location,
 GLuint  v0);
void glProgramUniform2ui(GLuint  program,
 GLint  location,
 GLint  v0,
 GLuint  v1);
void glProgramUniform3ui(GLuint  program,
 GLint  location,
 GLint  v0,
 GLint  v1,
 GLuint  v2);
void glProgramUniform4ui(GLuint  program,
 GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLuint  v3);

Parameters

program

Specifies the handle of the program containing the uniform + variable to be modified.

location

Specifies the location of the uniform variable + to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified uniform variable.

C Specification

void glProgramUniform1fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glProgramUniform2fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glProgramUniform3fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glProgramUniform4fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glProgramUniform1iv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLint * value);
void glProgramUniform2iv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLint * value);
void glProgramUniform3iv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLint * value);
void glProgramUniform4iv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLint * value);
void glProgramUniform1uiv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLuint * value);
void glProgramUniform2uiv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLuint * value);
void glProgramUniform3uiv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLuint * value);
void glProgramUniform4uiv(GLuint  program,
 GLint  location,
 GLsizei  count,
 const GLuint * value);

Parameters

program

Specifies the handle of the program containing the uniform + variable to be modified.

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

C Specification

void glProgramUniformMatrix2fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix3fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix4fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix2x3fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix3x2fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix2x4fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix4x2fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix3x4fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glProgramUniformMatrix4x3fv(GLuint  program,
 GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);

Parameters

program

Specifies the handle of the program containing the uniform + variable to be modified.

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices.

transpose

Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

Description

glProgramUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glProgramUniform operates on the program object + specified by program.

The commands glProgramUniform{1|2|3|4}{f|i|ui} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, unsigned int, bool; + 2 for vec2, ivec2, uvec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed; the suffix ui indicates that + unsigned integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The + ui variants of this function should be used + to provide values for uniform variables defined as unsigned int, uvec2, + uvec3, uvec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i, ui or f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise.

All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glProgramUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0.

The commands glProgramUniform{1|2|3|4}{f|i|ui}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glProgramUniform{1|2|3|4}{f|i|ui}.

For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glProgramUniform3f or + glProgramUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count

The commands + glProgramUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices.

Notes

glProgramUniform1i and + glProgramUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error.

If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged.

Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged.

If location is a value other than + -1 and it does not represent a valid uniform variable location + in within program, an error will be generated, and + no changes will be made to the uniform variable storage of + program. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed.

Errors

GL_INVALID_OPERATION is generated if + program does not refer to a program object owned + by the GL.

GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glProgramUniform + command.

GL_INVALID_OPERATION is generated if one of + the signed or unsigned integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, + ivec4, unsigned int, uvec2, uvec3, + uvec4, or an array of these.

GL_INVALID_OPERATION is generated if one of + the signed integer variants of this function is used to load a uniform + variable of type unsigned int, uvec2, uvec3, + uvec4, or an array of these.

GL_INVALID_OPERATION is generated if one of + the unsigned integer variants of this function is used to load a uniform + variable of type int, ivec2, ivec3, + ivec4, or an array of these.

GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for program and + location is not equal to -1.

GL_INVALID_VALUE is generated if + count is less than 0.

GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable.

GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glProgramUniform1i and + glProgramUniform1iv.

Associated Gets

glGetActiveUniform + with the handle of a program object and the index of an active uniform variable

glGetUniform + with the handle of a program object and the location of a + uniform variable

glGetUniformLocation + with the handle of a program object and the name of a uniform + variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glProvokingVertex.xml b/upstream-man-pages/man4/xhtml/glProvokingVertex.xml new file mode 100644 index 0000000..b57c19b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glProvokingVertex.xml @@ -0,0 +1,104 @@ + + + +glProvokingVertex - OpenGL 4 Reference Pages

Name

glProvokingVertex — specifiy the vertex to be used as the source of data for flat shaded varyings

C Specification

void glProvokingVertex(GLenum provokeMode);

Parameters

provokeMode

+ Specifies the vertex to be used as the source of data for flat shaded varyings. +

Description

+ Flatshading a vertex shader varying output means to assign all vetices of the primitive the same value + for that output. The vertex from which these values is derived is known as the provoking vertex and + glProvokingVertex specifies which vertex is to be used as the source of data for flat shaded varyings. +

+ provokeMode must be either GL_FIRST_VERTEX_CONVENTION or + GL_LAST_VERTEX_CONVENTION, and controls the selection of the vertex whose values are assigned to flatshaded + varying outputs. The interpretation of these values for the supported primitive types is: +

+ Primitive Type of Polygon i + + First Vertex Convention + + Last Vertex Convention +
+ point + + i + + i +
+ independent line + + 2i - 1 + + 2i +
+ line loop + + i + +

+ i + 1, if i < n +

+

+ 1, if i = n +

+
+ line strip + + i + + i + 1 +
+ independent triangle + + 3i - 2 + + 3i +
+ triangle strip + + i + + i + 2 +
+ triangle fan + + i + 1 + + i + 2 +
+ line adjacency + + 4i - 2 + + 4i - 1 +
+ line strip adjacency + + i + 1 + + i + 2 +
+ triangle adjacency + + 6i - 5 + + 6i - 1 +
+ triangle strip adjacency + + 2i - 1 + + 2i + 3 +

+

+ If a vertex or geometry shader is active, user-defined varying outputs may be flatshaded by using the + flat qualifier when declaring the output. +

Notes

+ glProvokingVertex is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_ENUM is generated if provokeMode is not an accepted value. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glPushDebugGroup.xml b/upstream-man-pages/man4/xhtml/glPushDebugGroup.xml new file mode 100644 index 0000000..4095588 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glPushDebugGroup.xml @@ -0,0 +1,45 @@ + + + +glPushDebugGroup - OpenGL 4 Reference Pages

Name

glPushDebugGroup — push a named debug group into the command stream

C Specification

void glPushDebugGroup(GLenum  source,
 GLuint  id,
 GLsizei  length,
 const char *  message);

Parameters

source

+ The source of the debug message. +

id

+ The identifier of the message. +

length

+ The length of the message to be sent to the debug output stream. +

message

+ The a string containing the message to be sent to the debug output stream. +

Description

+ glPushDebugGroup pushes a debug group described by the string + message into the command stream. The value of + id specifies the ID of messages generated. The parameter + length contains the number of characters in message. + If length is negative, it is implied that message + contains a null terminated string. The message has the specified source + and id, the type GL_DEBUG_TYPE_PUSH_GROUP, and severity + GL_DEBUG_SEVERITY_NOTIFICATION. The GL will put a new debug group + on top of the debug group stack which inherits the control of the + volume of debug output of the debug group previously residing on the + top of the debug group stack. Because debug groups are strictly + hierarchical, any additional control of the debug output volume will + only apply within the active debug group and the debug groups pushed + on top of the active debug group. +

Errors

+ GL_INVALID_ENUM is generated if the value of source is + neither GL_DEBUG_SOURCE_APPLICATION nor GL_DEBUG_SOURCE_THIRD_PARTY. +

+ GL_INVALID_VALUE is generated if length is negative + and the number of characters in message, excluding the null-terminator, + is not less than the value of GL_MAX_DEBUG_MESSAGE_LENGTH. +

Associated Gets

+ glGet with argument GL_MAX_DEBUG_MESSAGE_LENGTH. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glQueryCounter.xml b/upstream-man-pages/man4/xhtml/glQueryCounter.xml new file mode 100644 index 0000000..486bd9d --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glQueryCounter.xml @@ -0,0 +1,39 @@ + + + +glQueryCounter - OpenGL 4 Reference Pages

Name

glQueryCounter — record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed.

C Specification

void glQueryCounter(GLuint  id,
 GLenum  target);

Parameters

id

+ Specify the name of a query object into which to record the GL time. +

target

+ Specify the counter to query. target must be GL_TIMESTAMP. +

Description

+ glQueryCounter causes the GL to record the current time into the query object named id. + target must be GL_TIMESTAMP. The time is recorded after all previous commands on the + GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object + is marked available. glQueryCounter timer queries can be used within a glBeginQuery / + glEndQuery block where the target is GL_TIME_ELAPSED and it does + not affect the result of that query object. +

Notes

+ glQueryCounter is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_OPERATION is generated if id is the name + of a query object that is already in use within a glBeginQuery / + glEndQuery block. +

+ GL_INVALID_VALUE is generated if id is not the name of a query object returned + from a previous call to glGenQueries. +

+ GL_INVALID_ENUM is generated if target is not GL_TIMESTAMP. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glReadBuffer.xml b/upstream-man-pages/man4/xhtml/glReadBuffer.xml new file mode 100644 index 0000000..68b1d6e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glReadBuffer.xml @@ -0,0 +1,64 @@ + + + +glReadBuffer - OpenGL 4 Reference Pages

Name

glReadBuffer — select a color buffer source for pixels

C Specification

void glReadBuffer(GLenum mode);

Parameters

mode

+ Specifies a color buffer. + Accepted values are + GL_FRONT_LEFT, + GL_FRONT_RIGHT, + GL_BACK_LEFT, + GL_BACK_RIGHT, + GL_FRONT, + GL_BACK, + GL_LEFT, + GL_RIGHT, and the constants + GL_COLOR_ATTACHMENTi. +

Description

+ glReadBuffer specifies a color buffer as the source for subsequent + glReadPixels, glCopyTexImage1D, glCopyTexImage2D, + glCopyTexSubImage1D, glCopyTexSubImage2D, and + glCopyTexSubImage3D commands. + mode accepts one of twelve or more predefined values. + In a fully configured system, + GL_FRONT, + GL_LEFT, and + GL_FRONT_LEFT all name the front left buffer, + GL_FRONT_RIGHT and + GL_RIGHT name the front right buffer, and + GL_BACK_LEFT and + GL_BACK name the back left buffer. + Further more, the constants GL_COLOR_ATTACHMENTi may be used to indicate the + ith color attachment where i ranges from zero to the + value of GL_MAX_COLOR_ATTACHMENTS minus one. +

+ Nonstereo double-buffered configurations have only a front left and a + back left buffer. + Single-buffered configurations have a front left and a front right + buffer if stereo, and only a front left buffer if nonstereo. + It is an error to specify a nonexistent buffer to glReadBuffer. +

+ mode is initially GL_FRONT in single-buffered configurations + and GL_BACK in double-buffered configurations. +

Errors

+ GL_INVALID_ENUM is generated if mode is not one of the twelve + (or more) accepted values. +

+ GL_INVALID_OPERATION is generated if mode specifies a buffer + that does not exist. +

Associated Gets

+ glGet with argument GL_READ_BUFFER +

Copyright

+ Copyright © 1991-2006 Silicon Graphics, Inc. + Copyright © 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glReadPixels.xml b/upstream-man-pages/man4/xhtml/glReadPixels.xml new file mode 100644 index 0000000..228fc6e --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glReadPixels.xml @@ -0,0 +1,893 @@ + + + +glReadPixels - OpenGL 4 Reference Pages

Name

glReadPixels — read a block of pixels from the frame buffer

C Specification

void glReadPixels(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 GLvoid *  data);

Parameters

x, y

+ Specify the window coordinates of the first pixel + that is read from the frame buffer. + This location is the lower left corner of a rectangular block of pixels. +

width, height

+ Specify the dimensions of the pixel rectangle. + width and height of one correspond to a single pixel. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_DEPTH_STENCIL, + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + Must be one of + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_HALF_FLOAT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_24_8, + GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_UNSIGNED_INT_5_9_9_9_REV, or + GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

data

+ Returns the pixel data. +

Description

+ glReadPixels returns pixel data from the frame buffer, + starting with the pixel whose lower left corner + is at location (x, y), + into client memory starting at location data. + Several parameters control the processing of the pixel data before + it is placed into client memory. + These parameters are set with glPixelStore. + This reference page describes the effects on glReadPixels of most, + but not all of the parameters specified by these three commands. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target + (see glBindBuffer) while a block of pixels is + requested, data is treated as a byte offset into the buffer object's data store + rather than a pointer to client memory. +

+ glReadPixels returns values from each pixel with lower left corner at + + + + + x + + + i + + + y + + + j + + + + for + + + + 0 + <= + i + < + width + + + and + + + + 0 + <= + j + < + height + + . + This pixel is said to be the + ith + pixel in the + jth + row. + Pixels are returned in row order from the lowest to the highest row, + left to right in each row. +

+ format specifies the format for the returned pixel values; + accepted values are: +

GL_STENCIL_INDEX

+ Stencil values are read from the stencil buffer. + Each index is converted to fixed point, + shifted left or right depending on the value and sign of GL_INDEX_SHIFT, + and added to GL_INDEX_OFFSET. + If GL_MAP_STENCIL is GL_TRUE, + indices are replaced by their mappings in the table GL_PIXEL_MAP_S_TO_S. +

GL_DEPTH_COMPONENT

+ Depth values are read from the depth buffer. + Each component is converted to floating point such that the minimum depth + value maps to 0 and the maximum value maps to 1. + Each component is then multiplied by GL_DEPTH_SCALE, + added to GL_DEPTH_BIAS, + and finally clamped to the range + + + + 0 + 1 + + . +

GL_DEPTH_STENCIL

+ Values are taken from both the depth and stencil buffers. The type parameter + must be GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

GL_RED
GL_GREEN
GL_BLUE
GL_RGB
GL_BGR
GL_RGBA
GL_BGRA

+ Finally, the indices or components + are converted to the proper format, + as specified by type. + If format is GL_STENCIL_INDEX + and type is not GL_FLOAT, + each index is masked with the mask value given in the following table. + If type is GL_FLOAT, then each integer index is converted to + single-precision floating-point format. +

+ If format is + GL_RED, + GL_GREEN, + GL_BLUE, + GL_RGB, + GL_BGR, + GL_RGBA, or + GL_BGRA and type is not GL_FLOAT, + each component is multiplied by the multiplier shown in the following table. + If type is GL_FLOAT, then each component is passed as is + (or converted to the client's single-precision floating-point format if + it is different from the one used by the GL). +

+

+ type + + Index Mask + + Component Conversion +
+ GL_UNSIGNED_BYTE + + + + + 2 + 8 + + - + 1 + + + + + + + + + 2 + 8 + + - + 1 + + + ⁢ + c + + +
+ GL_BYTE + + + + + 2 + 7 + + - + 1 + + + + + + + + + + + 2 + 8 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_UNSIGNED_SHORT + + + + + 2 + 16 + + - + 1 + + + + + + + + + 2 + 16 + + - + 1 + + + ⁢ + c + + +
+ GL_SHORT + + + + + 2 + 15 + + - + 1 + + + + + + + + + + + 2 + 16 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_UNSIGNED_INT + + + + + 2 + 32 + + - + 1 + + + + + + + + + 2 + 32 + + - + 1 + + + ⁢ + c + + +
+ GL_INT + + + + + 2 + 31 + + - + 1 + + + + + + + + + + + 2 + 32 + + - + 1 + + + ⁢ + c + - + 1 + + + 2 + + +
+ GL_HALF_FLOAT + + none + + c +
+ GL_FLOAT + + none + + c +
+ GL_UNSIGNED_BYTE_3_3_2 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_BYTE_2_3_3_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_5_6_5 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_5_6_5_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_4_4_4_4 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_4_4_4_4_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_5_5_5_1 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_SHORT_1_5_5_5_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_8_8_8_8 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_8_8_8_8_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_10_10_10_2 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_2_10_10_10_REV + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_24_8 + + + + + 2 + N + + - + 1 + + + + + + + + + 2 + N + + - + 1 + + + ⁢ + c + + +
+ GL_UNSIGNED_INT_10F_11F_11F_REV + + -- + + Special +
+ GL_UNSIGNED_INT_5_9_9_9_REV + + -- + + Special +
+ GL_FLOAT_32_UNSIGNED_INT_24_8_REV + + none + + c (Depth Only) +

+ Return values are placed in memory as follows. + If format is + GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT, + GL_RED, + GL_GREEN, or + GL_BLUE, + a single value is returned and the data for the + ith + pixel in the + jth + row + is placed in location + + + + + j + + ⁢ + width + + + i + + . + GL_RGB and GL_BGR return three values, + GL_RGBA and GL_BGRA return four values for each pixel, + with all values corresponding to a single pixel occupying contiguous space + in data. + Storage parameters set by glPixelStore, + such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, + affect the way that data is written into memory. + See glPixelStore for a description. +

Notes

+ Values for pixels that lie outside the window + connected to the current GL context are undefined. +

+ If an error is generated, + no change is made to the contents of data. +

Errors

+ GL_INVALID_ENUM is generated if format or type is not an + accepted value. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

+ GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX + and there is no stencil buffer. +

+ GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT + and there is no depth buffer. +

+ GL_INVALID_OPERATION is generated if format is GL_DEPTH_STENCIL + and there is no depth buffer or if there is no stencil buffer. +

+ GL_INVALID_ENUM is generated if format is GL_DEPTH_STENCIL + and type is not GL_UNSIGNED_INT_24_8 or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and the data would be packed to the buffer + object such that the memory writes required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_PACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_OPERATION is generated if GL_READ_FRAMEBUFFER_BINDING + is non-zero, the read framebuffer is complete, and the value of GL_SAMPLE_BUFFERS + for the read framebuffer is greater than zero. +

Associated Gets

+ glGet with argument GL_INDEX_MODE +

+ glGet with argument GL_PIXEL_PACK_BUFFER_BINDING +

See Also

+ glPixelStore, + glReadBuffer +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glReleaseShaderCompiler.xml b/upstream-man-pages/man4/xhtml/glReleaseShaderCompiler.xml new file mode 100644 index 0000000..a79d21c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glReleaseShaderCompiler.xml @@ -0,0 +1,17 @@ + + + +glReleaseShaderCompiler - OpenGL 4 Reference Pages

Name

glReleaseShaderCompiler — release resources consumed by the implementation's shader compiler

C Specification

void glReleaseShaderCompiler(void);

Description

+ glReleaseShaderCompiler provides a hint to the implementation that it + may free internal resources associated with its shader compiler. glCompileShader + may subsequently be called and the implementation may at that time reallocate resources + previously freed by the call to glReleaseShaderCompiler. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glRenderbufferStorage.xml b/upstream-man-pages/man4/xhtml/glRenderbufferStorage.xml new file mode 100644 index 0000000..47b9682 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glRenderbufferStorage.xml @@ -0,0 +1,47 @@ + + + +glRenderbufferStorage - OpenGL 4 Reference Pages

Name

glRenderbufferStorage — establish data storage, format and dimensions of a renderbuffer object's image

C Specification

void glRenderbufferStorage(GLenum  target,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height);

Parameters

target

+ Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. +

internalformat

+ Specifies the internal format to use for the renderbuffer object's image. +

width

+ Specifies the width of the renderbuffer, in pixels. +

height

+ Specifies the height of the renderbuffer, in pixels. +

Description

+ glRenderbufferStorage is equivalent to calling + glRenderbufferStorageMultisample with the + samples set to zero. +

+ The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. +

+ Upon success, glRenderbufferStorage deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorage are undefined. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. +

+ GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. +

+ GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glRenderbufferStorageMultisample.xml b/upstream-man-pages/man4/xhtml/glRenderbufferStorageMultisample.xml new file mode 100644 index 0000000..888e6e4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glRenderbufferStorageMultisample.xml @@ -0,0 +1,56 @@ + + + +glRenderbufferStorageMultisample - OpenGL 4 Reference Pages

Name

glRenderbufferStorageMultisample — establish data storage, format, dimensions and sample count of a renderbuffer object's image

C Specification

void glRenderbufferStorageMultisample(GLenum  target,
 GLsizei  samples,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height);

Parameters

target

+ Specifies a binding to which the target of the allocation and must be GL_RENDERBUFFER. +

samples

+ Specifies the number of samples to be used for the renderbuffer object's storage. +

internalformat

+ Specifies the internal format to use for the renderbuffer object's image. +

width

+ Specifies the width of the renderbuffer, in pixels. +

height

+ Specifies the height of the renderbuffer, in pixels. +

Description

+ glRenderbufferStorageMultisample establishes the data storage, format, dimensions and number of + samples of a renderbuffer object's image. +

+ The target of the operation, specified by target must be GL_RENDERBUFFER. + internalformat specifies the internal format to be used for the renderbuffer object's storage and + must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height are the dimensions, in pixels, of the renderbuffer. + Both width and height must be less than or equal to the value of + GL_MAX_RENDERBUFFER_SIZE. samples specifies the number of samples to be used + for the renderbuffer object's image, and must be less than or equal to the value of GL_MAX_SAMPLES. + If internalformat is a signed or unsigned integer format then samples must be + less than or equal to the value of GL_MAX_INTEGER_SAMPLES. +

+ Upon success, glRenderbufferStorageMultisample deletes any existing data store for the renderbuffer + image and the contents of the data store after calling glRenderbufferStorageMultisample are undefined. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_RENDERBUFFER. +

+ GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. +

+ GL_INVALID_ENUM is generated if internalformat is not a color-renderable, depth-renderable, + or stencil-renderable format. +

+ GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format + and samples is greater than the value of GL_MAX_INTEGER_SAMPLES +

+ GL_INVALID_VALUE is generated if either of width or height is negative, + or greater than the value of GL_MAX_RENDERBUFFER_SIZE. +

+ GL_OUT_OF_MEMORY is generated if the GL is unable to create a data store of the requested size. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glResumeTransformFeedback.xml b/upstream-man-pages/man4/xhtml/glResumeTransformFeedback.xml new file mode 100644 index 0000000..4e344cf --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glResumeTransformFeedback.xml @@ -0,0 +1,23 @@ + + + +glResumeTransformFeedback - OpenGL 4 Reference Pages

Name

glResumeTransformFeedback — resume transform feedback operations

C Specification

void glResumeTransformFeedback(void);

Description

+ glResumeTransformFeedback resumes transform feedback operations on the currently active transform feedback + object. When transform feedback operations are paused, transform feedback is still considered active and changing most + transform feedback state related to the object results in an error. However, a new transform feedback object may be bound + while transform feedback is paused. +

Errors

+ GL_INVALID_OPERATION is generated if the currently bound transform feedback object is not active or is not paused. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glSampleCoverage.xml b/upstream-man-pages/man4/xhtml/glSampleCoverage.xml new file mode 100644 index 0000000..40ae495 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glSampleCoverage.xml @@ -0,0 +1,65 @@ + + + +glSampleCoverage - OpenGL 4 Reference Pages

Name

glSampleCoverage — specify multisample coverage parameters

C Specification

void glSampleCoverage(GLfloat  value,
 GLboolean  invert);

Parameters

value

+ Specify a single floating-point sample coverage value. The value is + clamped to the range + + + + 0 + 1 + + . + The initial value is 1.0. +

invert

+ Specify a single boolean value representing if the coverage masks should be + inverted. GL_TRUE and GL_FALSE are accepted. The initial value + is GL_FALSE. +

Description

+ Multisampling samples a pixel multiple times at various + implementation-dependent subpixel locations to generate antialiasing + effects. Multisampling transparently antialiases points, lines, polygons, + and images if it is enabled. +

+ value is used in constructing a temporary mask used in determining which + samples will be used in resolving the final fragment color. This mask is + bitwise-anded with the coverage mask generated from the multisampling + computation. If the invert flag is set, the temporary mask is inverted + (all bits flipped) and then the bitwise-and is computed. +

+ If an implementation does not have any multisample buffers available, or + multisampling is disabled, rasterization occurs with only a single sample + computing a pixel's final RGB color. +

+ Provided an implementation supports multisample buffers, and multisampling + is enabled, then a pixel's final color is generated by combining several + samples per pixel. Each sample contains color, depth, and stencil + information, allowing those operations to be performed on each sample. +

Notes

+ The type of the value parameter was + changed from GLclampf to GLfloat. This change is transparent + to user code and is described in detail on the + removedTypes + page. +

Associated Gets

+ glGet with argument GL_SAMPLE_COVERAGE_VALUE +

+ glGet with argument GL_SAMPLE_COVERAGE_INVERT +

+ glIsEnabled with argument GL_MULTISAMPLE +

+ glIsEnabled with argument GL_SAMPLE_ALPHA_TO_COVERAGE +

+ glIsEnabled with argument GL_SAMPLE_ALPHA_TO_ONE +

+ glIsEnabled with argument GL_SAMPLE_COVERAGE +

See Also

+ glEnable, + removedTypes +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glSampleMaski.xml b/upstream-man-pages/man4/xhtml/glSampleMaski.xml new file mode 100644 index 0000000..7285886 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glSampleMaski.xml @@ -0,0 +1,32 @@ + + + +glSampleMaski - OpenGL 4 Reference Pages

Name

glSampleMaski — set the value of a sub-word of the sample mask

C Specification

void glSampleMaski(GLuint  maskNumber,
 GLbitfield  mask);

Parameters

maskNumber

+ Specifies which 32-bit sub-word of the sample mask to update. +

mask

+ Specifies the new value of the mask sub-word. +

Description

+ glSampleMaski sets one 32-bit sub-word of the multi-word sample mask, GL_SAMPLE_MASK_VALUE. +

+ maskIndex specifies which 32-bit sub-word of the sample mask to update, and mask specifies + the new value to use for that sub-word. maskIndex must be less than the value of + GL_MAX_SAMPLE_MASK_WORDS. Bit B of mask word M corresponds to sample + 32 x M + B. +

Notes

+ glSampleMaski is available only if the GL version is 3.2 or greater, or if the ARB_texture_multisample + extension is supported. +

Errors

+ GL_INVALID_VALUE is generated if maskIndex is greater than or equal to the value + of GL_MAX_SAMPLE_MASK_WORDS. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glSamplerParameter.xml b/upstream-man-pages/man4/xhtml/glSamplerParameter.xml new file mode 100644 index 0000000..16cefaf --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glSamplerParameter.xml @@ -0,0 +1,823 @@ + + + +glSamplerParameter - OpenGL 4 Reference Pages

Name

glSamplerParameter — set sampler parameters

C Specification

void glSamplerParameterf(GLuint  sampler,
 GLenum  pname,
 GLfloat  param);
void glSamplerParameteri(GLuint  sampler,
 GLenum  pname,
 GLint  param);

Parameters

sampler

+ Specifies the sampler object whose parameter to modify. +

pname

+ Specifies the symbolic name of a single-valued sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. +

param

+ Specifies the value of pname. +

C Specification

void glSamplerParameterfv(GLuint  sampler,
 GLenum  pname,
 const GLfloat *  params);
void glSamplerParameteriv(GLuint  sampler,
 GLenum  pname,
 const GLint *  params);
void glSamplerParameterIiv(GLuint  sampler,
 GLenum  pname,
 const GLint * params);
void glSamplerParameterIuiv(GLuint  sampler,
 GLenum  pname,
 const GLuint * params);

Parameters

sampler

+ Specifies the sampler object whose parameter to modify. +

pname

+ Specifies the symbolic name of a sampler parameter. + pname can be one of the following: + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_LOD_BIAS + GL_TEXTURE_COMPARE_MODE, or + GL_TEXTURE_COMPARE_FUNC. +

params

+ Specifies a pointer to an array where the value or values of pname + are stored. +

Description

+ glSamplerParameter assigns the value or values in params to the sampler parameter + specified as pname. + sampler specifies the sampler object to be modified, and must be the name of a sampler object previously + returned from a call to glGenSamplers. + The following symbols are accepted in pname: +

GL_TEXTURE_MIN_FILTER

+ The texture minifying function is used whenever the pixel being textured + maps to an area greater than one texture element. + There are six defined minifying functions. + Two of them use the nearest one or nearest four texture elements + to compute the texture value. + The other four use mipmaps. +

+ A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + ⁡ + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + ⁡ + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. +

+ params supplies a function for minifying the texture as one of the + following: +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

GL_NEAREST_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value. +

GL_LINEAR_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value. +

GL_NEAREST_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element nearest to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

GL_LINEAR_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest + to the center of the pixel) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

+

+ As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or four texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. +

GL_TEXTURE_MAG_FILTER

+ The texture magnification function is used when the pixel being textured + maps to an area less than or equal to one texture element. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the center of the pixel being textured. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the center of the pixel being textured. + These can include border texture elements, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

+

+

+

+

GL_TEXTURE_MIN_LOD

+ Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. +

+

GL_TEXTURE_MAX_LOD

+ Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. +

+

GL_TEXTURE_WRAP_S

+ Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_BORDER causes the + s + coordinate to be clamped to the range + + + + + + + -1 + 2N + + + + + 1 + + + + + + 1 + 2N + + + + + + , + where + N + is the size of the texture in the direction of + clamping.GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + ⁡ + + s + + + + , + where + + + + frac + ⁡ + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_T

+ Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. +

GL_TEXTURE_WRAP_R

+ Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. +

GL_TEXTURE_BORDER_COLOR

+ The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . +

GL_TEXTURE_COMPARE_MODE

+ Specifies the texture comparison mode for currently bound textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: +

GL_COMPARE_REF_TO_TEXTURE

+ Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. +

GL_NONE

+ Specifies that the red channel should be assigned the + appropriate value from the currently bound texture. +

+

GL_TEXTURE_COMPARE_FUNC

+ Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: +

+ Texture Comparison Function + + Computed result +
+ GL_LEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + +
+
+ GL_GEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + +
+
+ GL_LESS + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + +
+
+ GL_GREATER + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + +
+
+ GL_EQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + ≠ + + D + t + + + + + + + + +
+
+ GL_NOTEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + ≠ + + D + t + + + + + + + r + = + + D + t + + + + + + + + +
+
+ GL_ALWAYS + +
+ + result + = + 1.0 + +
+
+ GL_NEVER + +
+ + result + = + 0.0 + +
+

+ where r + is the current interpolated texture coordinate, and + + + D + t + + + is the texture value sampled from the currently bound texture. + result + is assigned to + + + R + t + + . +

Notes

+ glSamplerParameter is available only if the GL version is 3.3 or higher. +

+ If a sampler object is bound to a texture unit and that unit is used to sample from a texture, the parameters in the sampler + are used to sample from the texture, rather than the equivalent parameters in the texture object bound to that unit. This + introduces the possibility of sampling from the same texture object with different sets of sampler state, which may lead to + a condition where a texture is incomplete with respect to one sampler object and not with respect to + another. Thus, completeness can be considered a function of a sampler object and a texture object bound to a single + texture unit, rather than a property of the texture object itself. +

Errors

+ GL_INVALID_VALUE is generated if sampler is not the name of a sampler object previously + returned from a call to glGenSamplers. +

+ GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. +

Associated Gets

+ glGetSamplerParameter +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glScissor.xml b/upstream-man-pages/man4/xhtml/glScissor.xml new file mode 100644 index 0000000..9869249 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glScissor.xml @@ -0,0 +1,47 @@ + + + +glScissor - OpenGL 4 Reference Pages

Name

glScissor — define the scissor box

C Specification

void glScissor(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

Parameters

x, y

+ Specify the lower left corner of the scissor box. + Initially (0, 0). +

width, height

+ Specify the width and height of the scissor box. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

Description

+ glScissor defines a rectangle, called the scissor box, + in window coordinates. + The first two arguments, + x and y, + specify the lower left corner of the box. + width and height specify the width and height of the box. +

+ To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. +

+ When the scissor test is disabled, + it is as though the scissor box includes the entire window. +

Errors

+ GL_INVALID_VALUE is generated if either width or height is negative. +

Associated Gets

+ glGet with argument GL_SCISSOR_BOX +

+ glIsEnabled with argument GL_SCISSOR_TEST +

See Also

+ glEnable, + glViewport +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glScissorArray.xml b/upstream-man-pages/man4/xhtml/glScissorArray.xml new file mode 100644 index 0000000..cc16035 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glScissorArray.xml @@ -0,0 +1,56 @@ + + + +glScissorArray - OpenGL 4 Reference Pages

Name

glScissorArray — define the scissor box for multiple viewports

C Specification

void glScissorArrayv(GLuint  first,
 GLsizei  count,
 const GLint * v);

Parameters

first

+ Specifies the index of the first viewport whose scissor box to modify. +

count

+ Specifies the number of scissor boxes to modify. +

v

+ Specifies the address of an array containing the left, bottom, width and height of each + scissor box, in that order. +

Description

+ glScissorArrayv defines rectangles, called scissor boxes, + in window coordinates for each viewport. + first specifies the index of the first scissor box to modify and + count specifies the number of scissor boxes to modify. first + must be less than the value of GL_MAX_VIEWPORTS, and first + + count must be less than or equal to the value of GL_MAX_VIEWPORTS. + v specifies the address of an array containing integers specifying the + lower left corner of the scissor boxes, and the width and height of the scissor boxes, in that order. +

+ To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled for all viewports. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. +

+ When the scissor test is disabled, + it is as though the scissor box includes the entire window. +

Errors

+ GL_INVALID_VALUE is generated if first is greater than or equal to + the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if first + count + is greater than or equal to the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if any width or height specified in the array v is negative. +

Associated Gets

+ glGet with argument GL_SCISSOR_BOX +

+ glIsEnabled with argument GL_SCISSOR_TEST +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glScissorIndexed.xml b/upstream-man-pages/man4/xhtml/glScissorIndexed.xml new file mode 100644 index 0000000..7e0f423 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glScissorIndexed.xml @@ -0,0 +1,55 @@ + + + +glScissorIndexed - OpenGL 4 Reference Pages

Name

glScissorIndexed — define the scissor box for a specific viewport

C Specification

void glScissorIndexed(GLuint  index,
 GLint  left,
 GLint  bottom,
 GLsizei  width,
 GLsizei  height);
void glScissorIndexedv(GLuint  index,
 const GLint * v);

Parameters

index

+ Specifies the index of the viewport whose scissor box to modify. +

left, bottom

+ Specify the coordinate of the bottom left corner of the scissor box, in pixels. +

width, height

+ Specify ths dimensions of the scissor box, in pixels. +

v

+ For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each + scissor box, in that order. +

Description

+ glScissorIndexed defines the scissor box for a specified viewport. + index specifies the index of scissor box to modify. + index must be less than the value of GL_MAX_VIEWPORTS. + For glScissorIndexed, left, bottom, + width and height specify the left, bottom, width + and height of the scissor box, in pixels, respectively. + For glScissorIndexedv, v specifies the address of an + array containing integers specifying the lower left corner of the scissor box, and the width and + height of the scissor box, in that order. +

+ To enable and disable the scissor test, call + glEnable and glDisable with argument + GL_SCISSOR_TEST. The test is initially disabled for all viewports. + While the test is enabled, only pixels that lie within the scissor box + can be modified by drawing commands. + Window coordinates have integer values at the shared corners of + frame buffer pixels. + glScissor(0,0,1,1) allows modification of only the lower left + pixel in the window, and glScissor(0,0,0,0) doesn't allow + modification of any pixels in the window. +

+ When the scissor test is disabled, + it is as though the scissor box includes the entire window. +

Errors

+ GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if any width or height specified in the array v is negative. +

Associated Gets

+ glGet with argument GL_SCISSOR_BOX +

+ glIsEnabled with argument GL_SCISSOR_TEST +

See Also

+ glEnable, + glScissor, + glScissorArray +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glShaderBinary.xml b/upstream-man-pages/man4/xhtml/glShaderBinary.xml new file mode 100644 index 0000000..80ce8ff --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glShaderBinary.xml @@ -0,0 +1,50 @@ + + + +glShaderBinary - OpenGL 4 Reference Pages

Name

glShaderBinary — load pre-compiled shader binaries

C Specification

void glShaderBinary(GLsizei  count,
 const GLuint * shaders,
 GLenum  binaryFormat,
 const void * binary,
 GLsizei  length);

Parameters

count

+ Specifies the number of shader object handles contained in shaders. +

shaders

+ Specifies the address of an array of shader handles into which to load pre-compiled shader binaries. +

binaryFormat

+ Specifies the format of the shader binaries contained in binary. +

binary

+ Specifies the address of an array of bytes containing pre-compiled binary shader code. +

length

+ Specifies the length of the array whose address is given in binary. +

Description

+ glShaderBinary loads pre-compiled shader binary code into the count + shader objects whose handles are given in shaders. binary + points to length bytes of binary shader code stored in client memory. + binaryFormat specifies the format of the pre-compiled code. +

+ The binary image contained in binary will be decoded according to the extension + specification defining the specified binaryFormat token. OpenGL + does not define any specific binary formats, but it does provide a mechanism to obtain token + vaues for such formats provided by such extensions. +

+ Depending on the types of the shader objects in shaders, glShaderBinary + will individually load binary vertex or fragment shaders, or load an executable binary that contains an optimized + pair of vertex and fragment shaders stored in the same binary. +

Errors

+ GL_INVALID_OPERATION is generated if more than one of the handles in + shaders refers to the same shader object. +

+ GL_INVALID_ENUM is generated if binaryFormat is not an + accepted value. +

+ GL_INVALID_VALUE is generated if the data pointed to by binary + does not match the format specified by binaryFormat. +

Associated Gets

+ glGet with parameter GL_NUM_SHADER_BINARY_FORMATS. +

+ glGet with parameter GL_SHADER_BINARY_FORMATS. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glShaderSource.xml b/upstream-man-pages/man4/xhtml/glShaderSource.xml new file mode 100644 index 0000000..74ebeb2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glShaderSource.xml @@ -0,0 +1,43 @@ + + + +glShaderSource - OpenGL 4 Reference Pages

Name

glShaderSource — Replaces the source code in a shader object

C Specification

void glShaderSource(GLuint  shader,
 GLsizei  count,
 const GLchar ** string,
 const GLint * length);

Parameters

shader

Specifies the handle of the shader object + whose source code is to be replaced.

count

Specifies the number of elements in the + string and + length + arrays.

string

Specifies an array of pointers to strings + containing the source code to be loaded into the + shader.

length

Specifies an array of string lengths.

Description

glShaderSource sets the source code + in shader to the source code in the array + of strings specified by string. Any + source code previously stored in the shader object is completely + replaced. The number of strings in the array is specified by + count. If length + is NULL, each string is assumed to be null + terminated. If length is a value other + than NULL, it points to an array containing + a string length for each of the corresponding elements of + string. Each element in the + length array may contain the length of + the corresponding string (the null character is not counted as + part of the string length) or a value less than 0 to indicate + that the string is null terminated. The source code strings are + not scanned or parsed at this time; they are simply copied into + the specified shader object.

Notes

OpenGL copies the shader source code strings when + glShaderSource is called, so an application + may free its copy of the source code strings immediately after + the function returns.

Errors

GL_INVALID_VALUE is generated if + shader is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + shader is not a shader object.

GL_INVALID_VALUE is generated if + count is less than 0.

Associated Gets

glGetShader + with arguments shader and + GL_SHADER_SOURCE_LENGTH

glGetShaderSource + with argument shader

glIsShader

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glShaderStorageBlockBinding.xml b/upstream-man-pages/man4/xhtml/glShaderStorageBlockBinding.xml new file mode 100644 index 0000000..9725de5 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glShaderStorageBlockBinding.xml @@ -0,0 +1,38 @@ + + + +glShaderStorageBlockBinding - OpenGL 4 Reference Pages

Name

glShaderStorageBlockBinding — change an active shader storage block binding

C Specification

void glShaderStorageBlockBinding(GLuint  program,
 GLuint  storageBlockIndex,
 GLuint  storageBlockBinding);

Parameters

program

+ The name of the program containing the block whose binding to change. +

storageBlockIndex

+ The index storage block within the program. +

storageBlockBinding

+ The index storage block binding to associate with the specified storage block. +

Description

+ glShaderStorageBlockBinding, changes the active + shader storage block with an assigned index of storageBlockIndex + in program object program. storageBlockIndex must be an active shader storage block + index in program. storageBlockBinding must be less than the value of GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS. + If successful, glShaderStorageBinding specifies that program will use the data store of + the buffer object bound to the binding point storageBlockBinding to read + and write the values of the buffer variables in the shader storage block identified by storageBlockIndex. +

Errors

+ GL_INVALID_VALUE is generated if attribindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIBS. +

+ GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. +

+ GL_INVALID_OPERATION is generated if no vertex array object is bound. +

Associated Gets

+ glGet with arguments GL_SHADER_STORAGE_BUFFER_BINDING, + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, + GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, + GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, + GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS or GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS, + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, or GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glStencilFunc.xml b/upstream-man-pages/man4/xhtml/glStencilFunc.xml new file mode 100644 index 0000000..083ab78 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glStencilFunc.xml @@ -0,0 +1,170 @@ + + + +glStencilFunc - OpenGL 4 Reference Pages

Name

glStencilFunc — set front and back function and reference value for stencil testing

C Specification

void glStencilFunc(GLenum  func,
 GLint  ref,
 GLuint  mask);

Parameters

func

+ Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. +

mask

+ Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + Stencil planes are first drawn into using GL drawing primitives, then + geometry and images are rendered using the stencil planes to mask out + portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. +

+ There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values. Use glStencilFuncSeparate + to set front and back stencil state to different values. +

+ func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. +

+ If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. +

+ The following values are accepted by func: +

GL_NEVER

+ Always fails. +

GL_LESS

+ Passes if ( ref & mask ) < ( stencil & mask ). +

GL_LEQUAL

+ Passes if ( ref & mask ) <= ( stencil & mask ). +

GL_GREATER

+ Passes if ( ref & mask ) > ( stencil & mask ). +

GL_GEQUAL

+ Passes if ( ref & mask ) >= ( stencil & mask ). +

GL_EQUAL

+ Passes if ( ref & mask ) = ( stencil & mask ). +

GL_NOTEQUAL

+ Passes if ( ref & mask ) != ( stencil & mask ). +

GL_ALWAYS

+ Always passes. +

Notes

+ Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. +

+ glStencilFunc is the same as + calling glStencilFuncSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glStencilFuncSeparate.xml b/upstream-man-pages/man4/xhtml/glStencilFuncSeparate.xml new file mode 100644 index 0000000..fbdf1b8 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glStencilFuncSeparate.xml @@ -0,0 +1,173 @@ + + + +glStencilFuncSeparate - OpenGL 4 Reference Pages

Name

glStencilFuncSeparate — set front and/or back function and reference value for stencil testing

C Specification

void glStencilFuncSeparate(GLenum  face,
 GLenum  func,
 GLint  ref,
 GLuint  mask);

Parameters

face

+ Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

func

+ Specifies the test function. + Eight symbolic constants are valid: + GL_NEVER, + GL_LESS, + GL_LEQUAL, + GL_GREATER, + GL_GEQUAL, + GL_EQUAL, + GL_NOTEQUAL, and + GL_ALWAYS. The initial value is GL_ALWAYS. +

ref

+ Specifies the reference value for the stencil test. + ref is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. The + initial value is 0. +

mask

+ Specifies a mask that is ANDed with both the reference value + and the stored stencil value when the test is done. The initial value + is all 1's. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the reference value + and the value in the stencil buffer. + To enable and disable the test, call glEnable and glDisable + with argument GL_STENCIL_TEST. + To specify actions based on the outcome of the stencil test, call + glStencilOp or + glStencilOpSeparate. +

+ There can be two separate sets of func, ref, and + mask parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilFunc sets both front + and back stencil state to the same values, as if + glStencilFuncSeparate were called + with face set to GL_FRONT_AND_BACK. +

+ func is a symbolic constant that determines the stencil comparison function. + It accepts one of eight values, + shown in the following list. + ref is an integer reference value that is used in the stencil comparison. + It is clamped to the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. + mask is bitwise ANDed with both the reference value + and the stored stencil value, + with the ANDed values participating in the comparison. +

+ If stencil represents the value stored in the corresponding + stencil buffer location, + the following list shows the effect of each comparison function + that can be specified by func. + Only if the comparison succeeds is the pixel passed through + to the next stage in the rasterization process + (see glStencilOp). + All tests treat stencil values as unsigned integers in the range + + + + 0 + + 2 + n + + - + 1 + + + , + where + n + is the number of bitplanes in the stencil buffer. +

+ The following values are accepted by func: +

GL_NEVER

+ Always fails. +

GL_LESS

+ Passes if ( ref & mask ) < ( stencil & mask ). +

GL_LEQUAL

+ Passes if ( ref & mask ) <= ( stencil & mask ). +

GL_GREATER

+ Passes if ( ref & mask ) > ( stencil & mask ). +

GL_GEQUAL

+ Passes if ( ref & mask ) >= ( stencil & mask ). +

GL_EQUAL

+ Passes if ( ref & mask ) = ( stencil & mask ). +

GL_NOTEQUAL

+ Passes if ( ref & mask ) != ( stencil & mask ). +

GL_ALWAYS

+ Always passes. +

Notes

+ Initially, the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur and it is as if + the stencil test always passes. +

Errors

+ GL_INVALID_ENUM is generated if func is not one of the eight + accepted values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FUNC, GL_STENCIL_VALUE_MASK, + GL_STENCIL_REF, GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_BACK_REF, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glStencilMask.xml b/upstream-man-pages/man4/xhtml/glStencilMask.xml new file mode 100644 index 0000000..a2ee8a7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glStencilMask.xml @@ -0,0 +1,49 @@ + + + +glStencilMask - OpenGL 4 Reference Pages

Name

glStencilMask — control the front and back writing of individual bits in the stencil planes

C Specification

void glStencilMask(GLuint mask);

Parameters

mask

+ Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. +

Description

+ glStencilMask controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. +

+ There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values. Use glStencilMaskSeparate + to set front and back stencil writemasks to different values. +

Notes

+ glStencilMask is the same as + calling glStencilMaskSeparate + with face set to GL_FRONT_AND_BACK. +

Associated Gets

+ glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glStencilMaskSeparate.xml b/upstream-man-pages/man4/xhtml/glStencilMaskSeparate.xml new file mode 100644 index 0000000..dc0dd63 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glStencilMaskSeparate.xml @@ -0,0 +1,54 @@ + + + +glStencilMaskSeparate - OpenGL 4 Reference Pages

Name

glStencilMaskSeparate — control the front and/or back writing of individual bits in the stencil planes

C Specification

void glStencilMaskSeparate(GLenum  face,
 GLuint  mask);

Parameters

face

+ Specifies whether the front and/or back stencil writemask is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

mask

+ Specifies a bit mask to enable and disable writing of individual bits + in the stencil planes. + Initially, the mask is all 1's. +

Description

+ glStencilMaskSeparate controls the writing of individual bits in the stencil planes. + The least significant + n + bits of mask, + where + n + is the number of bits in the stencil buffer, + specify a mask. + Where a 1 appears in the mask, + it's possible to write to the corresponding bit in the stencil buffer. + Where a 0 appears, + the corresponding bit is write-protected. + Initially, all bits are enabled for writing. +

+ There can be two separate mask writemasks; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilMask sets both front + and back stencil writemasks to the same values, as if + glStencilMaskSeparate were called + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if face is not one of the accepted tokens. +

Associated Gets

+ glGet with argument + GL_STENCIL_WRITEMASK, GL_STENCIL_BACK_WRITEMASK, + or GL_STENCIL_BITS +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glStencilOp.xml b/upstream-man-pages/man4/xhtml/glStencilOp.xml new file mode 100644 index 0000000..4feee90 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glStencilOp.xml @@ -0,0 +1,147 @@ + + + +glStencilOp - OpenGL 4 Reference Pages

Name

glStencilOp — set front and back stencil test actions

C Specification

void glStencilOp(GLenum  sfail,
 GLenum  dpfail,
 GLenum  dppass);

Parameters

sfail

+ Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. +

dpfail

+ Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

dppass

+ Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. +

+ There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values. Use glStencilOpSeparate + to set front and back stencil state to different values. +

+ glStencilOp takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. +

GL_KEEP

+ Keeps the current value. +

GL_ZERO

+ Sets the stencil buffer value to 0. +

GL_REPLACE

+ Sets the stencil buffer value to ref, + as specified by glStencilFunc. +

GL_INCR

+ Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. +

GL_INCR_WRAP

+ Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. +

GL_DECR

+ Decrements the current stencil buffer value. + Clamps to 0. +

GL_DECR_WRAP

+ Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. +

GL_INVERT

+ Bitwise inverts the current stencil buffer value. +

+ Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. +

+ The other two arguments to glStencilOp specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. +

Notes

+ Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil tests always pass, + regardless of any call to glStencilOp. +

+ glStencilOp is the same as + calling glStencilOpSeparate + with face set to GL_FRONT_AND_BACK. +

Errors

+ GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the defined constant values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glStencilOpSeparate.xml b/upstream-man-pages/man4/xhtml/glStencilOpSeparate.xml new file mode 100644 index 0000000..7775e8a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glStencilOpSeparate.xml @@ -0,0 +1,152 @@ + + + +glStencilOpSeparate - OpenGL 4 Reference Pages

Name

glStencilOpSeparate — set front and/or back stencil test actions

C Specification

void glStencilOpSeparate(GLenum  face,
 GLenum  sfail,
 GLenum  dpfail,
 GLenum  dppass);

Parameters

face

+ Specifies whether front and/or back stencil state is updated. + Three symbolic constants are valid: + GL_FRONT, + GL_BACK, and + GL_FRONT_AND_BACK. +

sfail

+ Specifies the action to take when the stencil test fails. + Eight symbolic constants are accepted: + GL_KEEP, + GL_ZERO, + GL_REPLACE, + GL_INCR, + GL_INCR_WRAP, + GL_DECR, + GL_DECR_WRAP, and + GL_INVERT. The initial value is GL_KEEP. +

dpfail

+ Specifies the stencil action when the stencil test passes, + but the depth test fails. + dpfail accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

dppass

+ Specifies the stencil action when both the stencil test and the depth + test pass, or when the stencil test passes and either there is no + depth buffer or depth testing is not enabled. + dppass accepts the same symbolic constants as sfail. The initial value + is GL_KEEP. +

Description

+ Stenciling, + like depth-buffering, + enables and disables drawing on a per-pixel basis. + You draw into the stencil planes using GL drawing primitives, + then render geometry and images, + using the stencil planes to mask out portions of the screen. + Stenciling is typically used in multipass rendering algorithms + to achieve special effects, + such as decals, + outlining, + and constructive solid geometry rendering. +

+ The stencil test conditionally eliminates a pixel based on the outcome + of a comparison between the value in the stencil buffer and a + reference value. To enable and disable the test, call glEnable + and glDisable with argument + GL_STENCIL_TEST; to control it, call + glStencilFunc or + glStencilFuncSeparate. +

+ There can be two separate sets of sfail, dpfail, and + dppass parameters; one affects back-facing polygons, and the other + affects front-facing polygons as well as other non-polygon primitives. + glStencilOp sets both front + and back stencil state to the same values, as if + glStencilOpSeparate were called + with face set to GL_FRONT_AND_BACK. +

+ glStencilOpSeparate takes three arguments that indicate what happens + to the stored stencil value while stenciling is enabled. + If the stencil test fails, + no change is made to the pixel's color or depth buffers, + and sfail specifies what happens to the stencil buffer contents. + The following eight actions are possible. +

GL_KEEP

+ Keeps the current value. +

GL_ZERO

+ Sets the stencil buffer value to 0. +

GL_REPLACE

+ Sets the stencil buffer value to ref, + as specified by glStencilFunc. +

GL_INCR

+ Increments the current stencil buffer value. + Clamps to the maximum representable unsigned value. +

GL_INCR_WRAP

+ Increments the current stencil buffer value. + Wraps stencil buffer value to zero when incrementing the maximum + representable unsigned value. +

GL_DECR

+ Decrements the current stencil buffer value. + Clamps to 0. +

GL_DECR_WRAP

+ Decrements the current stencil buffer value. + Wraps stencil buffer value to the maximum representable unsigned value when + decrementing a stencil buffer value of zero. +

GL_INVERT

+ Bitwise inverts the current stencil buffer value. +

+ Stencil buffer values are treated as unsigned integers. + When incremented and decremented, + values are clamped to 0 and + + + + 2 + n + + - + 1 + + , + where + n + is the value returned by querying GL_STENCIL_BITS. +

+ The other two arguments to glStencilOpSeparate specify stencil buffer actions + that depend on whether subsequent depth buffer tests succeed (dppass) + or fail (dpfail) (see + glDepthFunc). + The actions are specified using the same eight symbolic constants as sfail. + Note that dpfail is ignored when there is no depth buffer, + or when the depth buffer is not enabled. + In these cases, sfail and dppass specify stencil action when the + stencil test fails and passes, + respectively. +

Notes

+ Initially the stencil test is disabled. + If there is no stencil buffer, + no stencil modification can occur + and it is as if the stencil test always passes. +

Errors

+ GL_INVALID_ENUM is generated if face is any value + other than GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK. +

+ GL_INVALID_ENUM is generated if sfail, + dpfail, or dppass is any value other than the eight defined constant values. +

Associated Gets

+ glGet with argument + GL_STENCIL_FAIL, GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS, GL_STENCIL_BACK_PASS_DEPTH_FAIL, + or GL_STENCIL_BITS +

+ glIsEnabled with argument GL_STENCIL_TEST +

Copyright

+ Copyright © 2006 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexBuffer.xml b/upstream-man-pages/man4/xhtml/glTexBuffer.xml new file mode 100644 index 0000000..90221d9 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexBuffer.xml @@ -0,0 +1,61 @@ + + + +glTexBuffer - OpenGL 4 Reference Pages

Name

glTexBuffer — attach the storage for a buffer object to the active buffer texture

C Specification

void glTexBuffer(GLenum  target,
 GLenum  internalFormat,
 Gluint buffer);

Parameters

target

+ Specifies the target of the operation and must be GL_TEXTURE_BUFFER. +

internalFormat

+ Specifies the internal format of the data in the store belonging to buffer. +

buffer

+ Specifies the name of the buffer object whose storage to attach to the active buffer texture. +

Description

+ glTexBuffer attaches the storage for the buffer object named buffer to the active + buffer texture, and specifies the internal format for the texel array found in the attached buffer object. If buffer + is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer + is non-zero, it must be the name of an existing buffer object. target must be GL_TEXTURE_BUFFER. + internalformat specifies the storage format, and must be one of the following sized internal formats: +

     + Component +
Sized Internal FormatBase TypeComponentsNorm0123
GL_R8ubyte1YESR001
GL_R16ushort1YESR001
GL_R16Fhalf1NOR001
GL_R32Ffloat1NOR001
GL_R8Ibyte1NOR001
GL_R16Ishort1NOR001
GL_R32Iint1NOR001
GL_R8UIubyte1NOR001
GL_R16UIushort1NOR001
GL_R32UIuint1NOR001
GL_RG8ubyte2YESRG01
GL_RG16ushort2YESRG01
GL_RG16Fhalf2NORG01
GL_RG32Ffloat2NORG01
GL_RG8Ibyte2NORG01
GL_RG16Ishort2NORG01
GL_RG32Iint2NORG01
GL_RG8UIubyte2NORG01
GL_RG16UIushort2NORG01
GL_RG32UIuint2NORG01
GL_RGB32Ffloat3NORGB1
GL_RGB32Iint3NORGB1
GL_RGB32UIuint3NORGB1
GL_RGBA8uint4YESRGBA
GL_RGBA16short4YESRGBA
GL_RGBA16Fhalf4NORGBA
GL_RGBA32Ffloat4NORGBA
GL_RGBA8Ibyte4NORGBA
GL_RGBA16Ishort4NORGBA
GL_RGBA32Iint4NORGBA
GL_RGBA8UIubyte4NORGBA
GL_RGBA16UIushort4NORGBA
GL_RGBA32UIuint4NORGBA

+ When a buffer object is attached to a buffer texture, the buffer object's data store + is taken as the texture's texel array. The number of texels in the buffer texture's + texel array is given by +

+ + + buffer_size + + + components × sizeof(base_type) + + +

+ where buffer_size is the size of the buffer object, in basic machine units and + components and base type are the element count and base data type for elements, as specified in the table above. + The number of texels in the texel array is then clamped to the implementation-dependent limit GL_MAX_TEXTURE_BUFFER_SIZE. + When a buffer texture is accessed in a shader, the results of a texel fetch are undefined if the specified texel coordinate is negative, or + greater than or equal to the clamped number of texels in the texel array. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_BUFFER. +

+ GL_INVALID_ENUM is generated if internalFormat is not one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if buffer is not zero or the name of an existing buffer object. +

Notes

+ glTexBuffer is available only if the GL version is 3.1 or greater. +

Associated Gets

glGet + with argument GL_MAX_TEXTURE_BUFFER_SIZE

glGet + with argument GL_TEXTURE_BINDING_BUFFER

glGetTexLevelParameter + with argument GL_TEXTURE_BUFFER_DATA_STORE_BINDING

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexBufferRange.xml b/upstream-man-pages/man4/xhtml/glTexBufferRange.xml new file mode 100644 index 0000000..90fddbd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexBufferRange.xml @@ -0,0 +1,52 @@ + + + +glTexBufferRange - OpenGL 4 Reference Pages

Name

glTexBufferRange — bind a range of a buffer's data store to a buffer texture

C Specification

void glTexBufferRange(GLenum  target,
 GLenum  internalFormat,
 GLuint  buffer,
 GLintptr  offset,
 GLsizeiptr  size);

Parameters

target

+ Specifies the target of the operation and must be GL_TEXTURE_BUFFER. +

internalFormat

+ Specifies the internal format of the data in the store belonging to buffer. +

buffer

+ Specifies the name of the buffer object whose storage to attach to the active buffer texture. +

offset

+ Specifies the offset of the start of the range of the buffer's data store to attach. +

size

+ Specifies the size of the range of the buffer's data store to attach. +

Description

+ glTexBufferRange attaches the a range of the data store of the buffer object named buffer to the active + buffer texture, and specifies the internal format for the texel array found in the attached buffer object. If buffer + is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer + is non-zero, it must be the name of an existing buffer object. target must be GL_TEXTURE_BUFFER. + The start of the range is specified by offset and the size of the range is specified by size, + both measured in basic machine units. offset must be greater than or equal to zero, size must be greater + than zero, and the sum of offset and size not exceed the value + of GL_BUFFER_SIZE for buffer. Furthermore, offset must be + an integer multiple of the value of GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT. + internalformat specifies the storage format, and must be one of the following sized internal formats: +

     + Component +
Sized Internal FormatBase TypeComponentsNorm0123
GL_R8ubyte1YESR001
GL_R16ushort1YESR001
GL_R16Fhalf1NOR001
GL_R32Ffloat1NOR001
GL_R8Ibyte1NOR001
GL_R16Ishort1NOR001
GL_R32Iint1NOR001
GL_R8UIubyte1NOR001
GL_R16UIushort1NOR001
GL_R32UIuint1NOR001
GL_RG8ubyte2YESRG01
GL_RG16ushort2YESRG01
GL_RG16Fhalf2NORG01
GL_RG32Ffloat2NORG01
GL_RG8Ibyte2NORG01
GL_RG16Ishort2NORG01
GL_RG32Iint2NORG01
GL_RG8UIubyte2NORG01
GL_RG16UIushort2NORG01
GL_RG32UIuint2NORG01
GL_RGB32Ffloat3NORGB1
GL_RGB32Iint3NORGB1
GL_RGB32UIuint3NORGB1
GL_RGBA8uint4YESRGBA
GL_RGBA16short4YESRGBA
GL_RGBA16Fhalf4NORGBA
GL_RGBA32Ffloat4NORGBA
GL_RGBA8Ibyte4NORGBA
GL_RGBA16Ishort4NORGBA
GL_RGBA32Iint4NORGBA
GL_RGBA8UIubyte4NORGBA
GL_RGBA16UIushort4NORGBA
GL_RGBA32UIuint4NORGBA

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_BUFFER. +

+ GL_INVALID_VALUE is generated if offset is less than zero. +

+ GL_INVALID_VALUE is generated if size is less than or equal to zero. +

+ GL_INVALID_VALUE is generated if offset + size is + greater than the value of GL_BUFFER_SIZE for buffer. +

+ GL_INVALID_VALUE is generated if offset is not + an integer multiple of the value of GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT. +

Associated Gets

+ glGet with argument GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT +

+ glGetTexLevelParameter with arguments GL_TEXTURE_BUFFER_OFFSET + or GL_TEXTURE_BUFFER_SIZE. +

See Also

+ glTexBuffer. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexImage1D.xml b/upstream-man-pages/man4/xhtml/glTexImage1D.xml new file mode 100644 index 0000000..53255ab --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexImage1D.xml @@ -0,0 +1,435 @@ + + + +glTexImage1D - OpenGL 4 Reference Pages

Name

glTexImage1D — specify a one-dimensional texture image

C Specification

void glTexImage1D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. +

width

+ Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. The height of the 1D texture image is 1. +

border

+ This value must be 0. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. +

+ Texture images are defined with glTexImage1D. + The arguments describe the parameters of the texture image, + such as width, + width of the border, + level-of-detail number + (see glTexParameter), + and the internal resolution and format used to store the image. + The last three arguments describe how the image is represented in + memory. +

+ If target is GL_PROXY_TEXTURE_1D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked against the implementation's capabilities. + If the implementation cannot handle a texture of the + requested texture size, it sets all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_1D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the left end of the texture array. + Subsequent elements progress left-to-right through the remaining texels + in the texture array. + The final element corresponds to the right end of the texture array. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RG

+ Each element is a single red/green double + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_DEPTH_COMPONENT

+ Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, + GL_RGB and GL_RGBA must match exactly.) +

+ internalFormat may be one of the base internal formats shown in + Table 1, below +

+

Table 1. Base Internal Formats

+ Base Internal Format + + RGBA, Depth and Stencil Values + + Internal Components +
GL_DEPTH_COMPONENTDepthD
GL_DEPTH_STENCILDepth, StencilD, S
GL_REDRedR
GL_RGRed, GreenR, G
GL_RGBRed, Green, BlueR, G, B
GL_RGBARed, Green, Blue, AlphaR, G, B, A

+

+ internalFormat may also be one of the sized internal formats + shown in Table 2, below +

+

Table 2. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

+ Finally, internalFormat may also be one of the generic or compressed + compressed texture formats shown in Table 3 below +

+

Table 3. Compressed Internal Formats

+ Compressed Internal Format + + Base Internal Format + + Type +
GL_COMPRESSED_REDGL_REDGeneric
GL_COMPRESSED_RGGL_RGGeneric
GL_COMPRESSED_RGBGL_RGBGeneric
GL_COMPRESSED_RGBAGL_RGBAGeneric
GL_COMPRESSED_SRGBGL_RGBGeneric
GL_COMPRESSED_SRGB_ALPHAGL_RGBAGeneric
GL_COMPRESSED_RED_RGTC1GL_REDSpecific
GL_COMPRESSED_SIGNED_RED_RGTC1GL_REDSpecific
GL_COMPRESSED_RG_RGTC2GL_RGSpecific
GL_COMPRESSED_SIGNED_RG_RGTC2GL_RGSpecific
GL_COMPRESSED_RGBA_BPTC_UNORMGL_RGBASpecific
GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORMGL_RGBASpecific
GL_COMPRESSED_RGB_BPTC_SIGNED_FLOATGL_RGBSpecific
GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOATGL_RGBSpecific

+

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHAor + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_1D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

+ Image-based shadowing can be enabled by comparing texture r coordinates to depth texture values to generate a boolean result. See glTexParameter for details on texture comparison. +

Notes

+ glPixelStore modes affect texture images. +

+ data may be a null pointer. In this case texture memory is + allocated to accommodate a texture of width width. + You can then download subtextures to initialize the + texture memory. The image is undefined if the program tries to apply + an uninitialized portion of the texture image to a primitive. +

+ glTexImage1D specifies the one-dimensional texture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_1D + or GL_PROXY_TEXTURE_1D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX + are accepted. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not + one of the accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width cannot be represented as + + + + 2 + n + + + + + 2 + ⁡ + + border + + + + + for some integer value of n. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is + not GL_DEPTH_COMPONENT. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 Silicon Graphics, Inc. + Copyright © 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexImage2D.xml b/upstream-man-pages/man4/xhtml/glTexImage2D.xml new file mode 100644 index 0000000..6729629 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexImage2D.xml @@ -0,0 +1,489 @@ + + + +glTexImage2D - OpenGL 4 Reference Pages

Name

glTexImage2D — specify a two-dimensional texture image

C Specification

void glTexImage2D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_PROXY_TEXTURE_CUBE_MAP. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. + If target is GL_TEXTURE_RECTANGLE or + GL_PROXY_TEXTURE_RECTANGLE, level must be 0. +

internalFormat

+ Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. +

width

+ Specifies the width of the texture image. + All implementations support texture images that are at least 1024 texels + wide. +

height

+ Specifies the height of the texture image, or the number of layers in a texture + array, in the case of the GL_TEXTURE_1D_ARRAY and + GL_PROXY_TEXTURE_1D_ARRAY targets. + All implementations support 2D texture images that are at least 1024 texels + high, and texture arrays that are at least 256 layers deep. +

border

+ This value must be 0. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing allows elements of an image array to be read by shaders. +

+ To define texture images, call glTexImage2D. + The arguments describe the parameters of the texture image, + such as height, width, width of the border, level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. +

+ If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP, or GL_PROXY_TEXTURE_RECTANGLE, + no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to 1. +

+ If target is GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE + or one of the GL_TEXTURE_CUBE_MAP + targets, data is read from data as a sequence of signed or unsigned + bytes, shorts, or longs, or single-precision floating-point values, + depending on type. These values are grouped into sets of one, two, + three, or four values, depending on format, to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If target is GL_TEXTURE_1D_ARRAY, data is interpreted + as an array of one-dimensional images. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the lower left corner of the texture image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RG

+ Each element is a red/green double. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_DEPTH_COMPONENT

+ Each element is a single depth value. + The GL converts it to floating point, multiplies by the signed scale factor + GL_DEPTH_SCALE, adds the signed bias GL_DEPTH_BIAS, + and clamps to the range [0,1]. +

GL_DEPTH_STENCIL

+ Each element is a pair of depth and stencil values. The depth component of + the pair is interpreted as in GL_DEPTH_COMPONENT. The stencil + component is interpreted based on specified the depth + stencil internal format. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, + GL_RG, GL_RGB, + and GL_RGBA must match exactly.) +

+ internalFormat may be one of the base internal formats shown in + Table 1, below +

+

Table 1. Base Internal Formats

+ Base Internal Format + + RGBA, Depth and Stencil Values + + Internal Components +
GL_DEPTH_COMPONENTDepthD
GL_DEPTH_STENCILDepth, StencilD, S
GL_REDRedR
GL_RGRed, GreenR, G
GL_RGBRed, Green, BlueR, G, B
GL_RGBARed, Green, Blue, AlphaR, G, B, A

+

+ internalFormat may also be one of the sized internal formats + shown in Table 2, below +

+

Table 2. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

+ Finally, internalFormat may also be one of the generic or compressed + compressed texture formats shown in Table 3 below +

+

Table 3. Compressed Internal Formats

+ Compressed Internal Format + + Base Internal Format + + Type +
GL_COMPRESSED_REDGL_REDGeneric
GL_COMPRESSED_RGGL_RGGeneric
GL_COMPRESSED_RGBGL_RGBGeneric
GL_COMPRESSED_RGBAGL_RGBAGeneric
GL_COMPRESSED_SRGBGL_RGBGeneric
GL_COMPRESSED_SRGB_ALPHAGL_RGBAGeneric
GL_COMPRESSED_RED_RGTC1GL_REDSpecific
GL_COMPRESSED_SIGNED_RED_RGTC1GL_REDSpecific
GL_COMPRESSED_RG_RGTC2GL_RGSpecific
GL_COMPRESSED_SIGNED_RG_RGTC2GL_RGSpecific
GL_COMPRESSED_RGBA_BPTC_UNORMGL_RGBASpecific
GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORMGL_RGBASpecific
GL_COMPRESSED_RGB_BPTC_SIGNED_FLOATGL_RGBSpecific
GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOATGL_RGBSpecific

+

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_CUBE_MAP target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and G values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

+ Image-based shadowing can be enabled by comparing texture r coordinates to + depth texture values to generate a boolean result. + See glTexParameter for details on texture comparison. +

Notes

+ The glPixelStore mode affects texture images. +

+ data may be a null pointer. + In this case, texture memory is + allocated to accommodate a texture of width width and height height. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. +

+ glTexImage2D specifies the two-dimensional texture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. +

+ GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if width is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if target is not GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_1D_ARRAY or + GL_PROXY_TEXTURE_1D_ARRAY and height is less than 0 or greater than GL_MAX_ARRAY_TEXTURE_LAYERS. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width or height is less than 0 + or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width or height cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some + integer value of k. +

+ GL_INVALID_VALUE is generated if border is not 0. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, or + GL_UNSIGNED_INT_10F_11F_11F_REV, + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_2_10_10_10_REV, or + GL_UNSIGNED_INT_5_9_9_9_REV, + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if target is not + GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_RECTANGLE, + and internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. +

+ GL_INVALID_OPERATION is generated if format is + GL_DEPTH_COMPONENT and internalFormat is not + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. +

+ GL_INVALID_OPERATION is generated if internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F, and format is + not GL_DEPTH_COMPONENT. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_RECTANGLE + or GL_PROXY_TEXTURE_RECTANGLE and level is not 0. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 Silicon Graphics, Inc. + Copyright © 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexImage2DMultisample.xml b/upstream-man-pages/man4/xhtml/glTexImage2DMultisample.xml new file mode 100644 index 0000000..23456a4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexImage2DMultisample.xml @@ -0,0 +1,56 @@ + + + +glTexImage2DMultisample - OpenGL 4 Reference Pages

Name

glTexImage2DMultisample — establish the data storage, format, dimensions, and number of samples of a multisample texture's image

C Specification

void glTexImage2DMultisample(GLenum  target,
 GLsizei  samples,
 GLint  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLboolean  fixedsamplelocations);

Parameters

target

+ Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. +

samples

+ The number of samples in the multisample texture's image. +

internalformat

+ The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. +

width

+ The width of the multisample texture's image, in texels. +

height

+ The height of the multisample texture's image, in texels. +

fixedsamplelocations

+ Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. +

Description

+ glTexImage2DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. +

+ target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + width and height are the dimensions in texels of the texture, and must be in the range zero + to GL_MAX_TEXTURE_SIZE - 1. samples specifies the number of samples in the image and must be + in the range zero to GL_MAX_SAMPLES - 1. +

+ internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. +

+ If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. +

+ When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. +

Notes

+ glTexImage2DMultisample is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. +

+ GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexImage3D.xml b/upstream-man-pages/man4/xhtml/glTexImage3D.xml new file mode 100644 index 0000000..63841ac --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexImage3D.xml @@ -0,0 +1,454 @@ + + + +glTexImage3D - OpenGL 4 Reference Pages

Name

glTexImage3D — specify a three-dimensional texture image

C Specification

void glTexImage3D(GLenum  target,
 GLint  level,
 GLint  internalFormat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLint  border,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be one of GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level + n + is the + + + n + th + + + mipmap reduction image. +

internalFormat

+ Specifies the number of color components in the texture. + Must be one of base internal formats given in Table 1, + one of the sized internal formats given in Table 2, or one + of the compressed internal formats given in Table 3, below. +

width

+ Specifies the width of the texture image. + All implementations support 3D texture images that are at least 16 texels + wide. +

height

+ Specifies the height of the texture image. + All implementations support 3D texture images that are at least 256 texels + high. +

depth

+ Specifies the depth of the texture image, or the number of layers in a texture array. + All implementations support 3D texture images that are at least 256 texels + deep, and texture arrays that are at least 256 layers deep. +

border

+ This value must be 0. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable and disable three-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_3D. +

+ To define texture images, call glTexImage3D. + The arguments describe the parameters of the texture image, + such as height, + width, depth, + width of the border, + level-of-detail number + (see glTexParameter), + and number of color components provided. + The last three arguments describe how the image is represented in memory. +

+ If target is GL_PROXY_TEXTURE_3D, no data is read from data, but + all of the texture image state is recalculated, checked for + consistency, and checked + against the implementation's capabilities. If the implementation cannot + handle a texture of the requested texture size, it sets + all of the image state to 0, + but does not generate an error (see glGetError). To query for an + entire mipmap array, use an image array level greater than or equal to + 1. +

+ If target is GL_TEXTURE_3D, + data is read from data as a sequence of signed or unsigned bytes, + shorts, + or longs, + or single-precision floating-point values, + depending on type. + These values are grouped into sets of one, + two, + three, + or four values, + depending on format, + to form elements. + Each data byte is treated as eight 1-bit elements, + with bit ordering determined by GL_UNPACK_LSB_FIRST + (see glPixelStore). +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

+ The first element corresponds to the lower left corner of the texture + image. + Subsequent elements progress left-to-right through the remaining texels + in the lowest row of the texture image, and then in successively higher + rows of the texture image. + The final element corresponds to the upper right corner of the texture + image. +

+ format determines the composition of each element in data. + It can assume one of these symbolic values: +

GL_RED

+ Each element is a single red component. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 0 for green and blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RG

+ Each element is a red and green pair. + The GL converts each to floating point and assembles it into an RGBA element + by attaching 0 for blue, and 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGB
GL_BGR

+ Each element is an RGB triple. + The GL converts it to floating point and assembles it into an RGBA element + by attaching 1 for alpha. + Each component is then multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

GL_RGBA
GL_BGRA

+ Each element contains all four components. + Each component is multiplied by the signed scale factor GL_c_SCALE, + added to the signed bias GL_c_BIAS, + and clamped to the range [0,1]. +

+ If an application wants to store the texture at a certain + resolution or in a certain format, it can request the resolution + and format with internalFormat. The GL will choose an internal + representation that closely approximates that requested by internalFormat, but + it may not match exactly. + (The representations specified by GL_RED, GL_RG, GL_RGB, + and GL_RGBA must match exactly.) +

+ internalFormat may be one of the base internal formats shown in + Table 1, below +

+

Table 1. Base Internal Formats

+ Base Internal Format + + RGBA, Depth and Stencil Values + + Internal Components +
GL_DEPTH_COMPONENTDepthD
GL_DEPTH_STENCILDepth, StencilD, S
GL_REDRedR
GL_RGRed, GreenR, G
GL_RGBRed, Green, BlueR, G, B
GL_RGBARed, Green, Blue, AlphaR, G, B, A

+

+ internalFormat may also be one of the sized internal formats + shown in Table 2, below +

+

Table 2. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

+ Finally, internalFormat may also be one of the generic or compressed + compressed texture formats shown in Table 3 below +

+

Table 3. Compressed Internal Formats

+ Compressed Internal Format + + Base Internal Format + + Type +
GL_COMPRESSED_REDGL_REDGeneric
GL_COMPRESSED_RGGL_RGGeneric
GL_COMPRESSED_RGBGL_RGBGeneric
GL_COMPRESSED_RGBAGL_RGBAGeneric
GL_COMPRESSED_SRGBGL_RGBGeneric
GL_COMPRESSED_SRGB_ALPHAGL_RGBAGeneric
GL_COMPRESSED_RED_RGTC1GL_REDSpecific
GL_COMPRESSED_SIGNED_RED_RGTC1GL_REDSpecific
GL_COMPRESSED_RG_RGTC2GL_RGSpecific
GL_COMPRESSED_SIGNED_RG_RGTC2GL_RGSpecific
GL_COMPRESSED_RGBA_BPTC_UNORMGL_RGBASpecific
GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORMGL_RGBASpecific
GL_COMPRESSED_RGB_BPTC_SIGNED_FLOATGL_RGBSpecific
GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOATGL_RGBSpecific

+

+ If the internalFormat parameter is one of the generic compressed formats, + GL_COMPRESSED_RED, GL_COMPRESSED_RG, + GL_COMPRESSED_RGB, or + GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. +

+ If the internalFormat parameter is + GL_SRGB, + GL_SRGB8, + GL_SRGB_ALPHA, or + GL_SRGB8_ALPHA8, the texture is treated as if the red, green, blue, or luminance components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component + + c + s + + + to a linear component + + c + l + + + is: +

+ + + + c + l + + = + + { + + + + + + + c + s + + 12.92 + + + + + + if + + + + c + s + + ≤ + 0.04045 + + + + + + + ( + + + + c + s + + + + 0.055 + + 1.055 + + ) + + 2.4 + + + + + + if + + + + c + s + + > + 0.04045 + + + + + + +

+ Assume + + c + s + + + is the sRGB component in the range [0,1]. +

+ Use the GL_PROXY_TEXTURE_3D target to try out a resolution and + format. The implementation will + update and recompute its best match for the requested storage resolution + and format. To then query this state, call glGetTexLevelParameter. + If the texture cannot be accommodated, texture state is set to 0. +

+ A one-component texture image uses only the red component of the RGBA + color extracted from data. + A two-component image uses the R and A values. + A three-component image uses the R, G, and B values. + A four-component image uses all of the RGBA components. +

Notes

+ The glPixelStore mode affects texture images. +

+ data may be a null pointer. + In this case texture memory is + allocated to accommodate a texture of width width, height height, + and depth depth. + You can then download subtextures to initialize this + texture memory. + The image is undefined if the user tries to apply + an uninitialized portion of the texture image to a primitive. +

+ glTexImage3D specifies the three-dimensional texture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. Format constants other than GL_STENCIL_INDEX and GL_DEPTH_COMPONENT + are accepted. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater than + + + + log + 2 + + ⁡ + + max + + + , + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if internalFormat is not one of the + accepted resolution and format symbolic constants. +

+ GL_INVALID_VALUE is generated if width, height, or depth is less than 0 or greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if non-power-of-two textures are not supported and the width, height, or depth cannot be represented as + + + + 2 + k + + + + + 2 + ⁡ + + border + + + + + for some + integer value of k. +

+ GL_INVALID_VALUE is generated if border is not 0 or 1. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if format or internalFormat is + GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 Silicon Graphics, Inc. + Copyright © 2011 Khronos Group. + This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexImage3DMultisample.xml b/upstream-man-pages/man4/xhtml/glTexImage3DMultisample.xml new file mode 100644 index 0000000..4149c04 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexImage3DMultisample.xml @@ -0,0 +1,58 @@ + + + +glTexImage3DMultisample - OpenGL 4 Reference Pages

Name

glTexImage3DMultisample — establish the data storage, format, dimensions, and number of samples of a multisample texture's image

C Specification

void glTexImage3DMultisample(GLenum  target,
 GLsizei  samples,
 GLint  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLboolean  fixedsamplelocations);

Parameters

target

+ Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. +

samples

+ The number of samples in the multisample texture's image. +

internalformat

+ The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. +

width

+ The width of the multisample texture's image, in texels. +

height

+ The height of the multisample texture's image, in texels. +

fixedsamplelocations

+ Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. +

Description

+ glTexImage3DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. +

+ target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + width and heightare the dimensions in texels of the texture, and must + be in the range zero to GL_MAX_TEXTURE_SIZE - 1. depth is the number of array slices in the array texture's image. + samples specifies the number of samples in the image and must be in the range zero to GL_MAX_SAMPLES - 1. +

+ internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. +

+ If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same + number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. +

+ When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer + corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the + multisample texture targets. +

Notes

+ glTexImage2DMultisample is available only if the GL version is 3.2 or greater. +

Errors

+ GL_INVALID_OPERATION is generated if internalformat is a depth- or stencil-renderable format and samples + is greater than the value of GL_MAX_DEPTH_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a color-renderable format and samples is + greater than the value of GL_MAX_COLOR_TEXTURE_SAMPLES. +

+ GL_INVALID_OPERATION is generated if internalformat is a signed or unsigned integer format and samples + is greater than the value of GL_MAX_INTEGER_SAMPLES. +

+ GL_INVALID_VALUE is generated if either width or height negative or is greater than GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if depth is negative or is greater than GL_MAX_ARRAY_TEXTURE_LAYERS. +

+ GL_INVALID_VALUE is generated if samples is greater than GL_MAX_SAMPLES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexParameter.xml b/upstream-man-pages/man4/xhtml/glTexParameter.xml new file mode 100644 index 0000000..3c1a09b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexParameter.xml @@ -0,0 +1,974 @@ + + + +glTexParameter - OpenGL 4 Reference Pages

Name

glTexParameter — set texture parameters

C Specification

void glTexParameterf(GLenum  target,
 GLenum  pname,
 GLfloat  param);
void glTexParameteri(GLenum  target,
 GLenum  pname,
 GLint  param);

Parameters

target

+ Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. +

pname

+ Specifies the symbolic name of a single-valued texture parameter. + pname can be one of the following: + GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. +

param

+ Specifies the value of pname. +

C Specification

void glTexParameterfv(GLenum  target,
 GLenum  pname,
 const GLfloat *  params);
void glTexParameteriv(GLenum  target,
 GLenum  pname,
 const GLint *  params);
void glTexParameterIiv(GLenum  target,
 GLenum  pname,
 const GLint *  params);
void glTexParameterIuiv(GLenum  target,
 GLenum  pname,
 const GLuint *  params);

Parameters

target

+ Specifies the target texture, + which must be either GL_TEXTURE_1D, GL_TEXTURE_2D, + GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, + or GL_TEXTURE_CUBE_MAP. +

pname

+ Specifies the symbolic name of a texture parameter. + pname can be one of the following: + GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T, or + GL_TEXTURE_WRAP_R. +

params

+ Specifies a pointer to an array where the value or values of pname + are stored. +

Description

+ glTexParameter assigns the value or values in params to the texture parameter + specified as pname. + target defines the target texture, + either GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, or GL_TEXTURE_3D. + The following symbols are accepted in pname: +

GL_DEPTH_STENCIL_TEXTURE_MODE

+ Specifies the mode used to read from depth-stencil format textures. params + must be one of GL_DEPTH_COMPONENT or GL_STENCIL_COMPONENT. + If the depth stencil mode is GL_DEPTH_COMPONENT, then reads from depth-stencil + format textures will return the depth component of the texel in + Rt and the stencil component + will be discarded. If the depth stencil mode is GL_STENCIL_COMPONENT then + the stencil component is returned in Rt + and the depth component is discarded. The initial value is GL_DEPTH_COMPONENT. +

GL_TEXTURE_BASE_LEVEL

+ Specifies the index of the lowest defined mipmap level. This is an + integer value. The initial value is 0. +

+

GL_TEXTURE_BORDER_COLOR

+ The data in params specifies four values that define the border values that + should be used for border texels. If a texel is sampled from the border of the texture, the + values of GL_TEXTURE_BORDER_COLOR are interpreted as an RGBA color to match the + texture's internal format and substituted for the non-existent texel data. If the texture contains depth + components, the first component of GL_TEXTURE_BORDER_COLOR is interpreted as a depth value. + The initial value is + + + + + 0.0, 0.0, 0.0, 0.0 + + + + . +

+ If the values for GL_TEXTURE_BORDER_COLOR are specified with glTexParameterIiv + or glTexParameterIuiv, the values are stored unmodified with an internal data type of + integer. If specified with glTexParameteriv, they are converted to floating point with the following + equation: + + + f + = + + + 2 + c + + + + 1 + + + 2 + b + + - + 1 + + + + . + If specified with glTexParameterfv, they are stored unmodified as floating-point values. +

GL_TEXTURE_COMPARE_FUNC

+ Specifies the comparison operator used when GL_TEXTURE_COMPARE_MODE is + set to GL_COMPARE_REF_TO_TEXTURE. Permissible values are: +

+ Texture Comparison Function + + Computed result +
+ GL_LEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + <= + + D + t + + + + + + + r + > + + D + t + + + + + + + + +
+
+ GL_GEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + >= + + D + t + + + + + + + r + < + + D + t + + + + + + + + +
+
+ GL_LESS + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + < + + D + t + + + + + + + r + >= + + D + t + + + + + + + + +
+
+ GL_GREATER + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + > + + D + t + + + + + + + r + <= + + D + t + + + + + + + + +
+
+ GL_EQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + = + + D + t + + + + + + + r + ≠ + + D + t + + + + + + + + +
+
+ GL_NOTEQUAL + +
+ + + result + = + + + + + 1.0 + + + 0.0 + + + ⁢   + + + + r + ≠ + + D + t + + + + + + + r + = + + D + t + + + + + + + + +
+
+ GL_ALWAYS + +
+ + result + = + 1.0 + +
+
+ GL_NEVER + +
+ + result + = + 0.0 + +
+

+ where r + is the current interpolated texture coordinate, and + + + D + t + + + is the depth texture value sampled from the currently bound depth texture. + result + is assigned to the the red channel. +

GL_TEXTURE_COMPARE_MODE

+ Specifies the texture comparison mode for currently bound depth textures. + That is, a texture whose internal format is GL_DEPTH_COMPONENT_*; see + glTexImage2D) + Permissible values are: +

GL_COMPARE_REF_TO_TEXTURE

+ Specifies that the interpolated and clamped + r + texture coordinate should + be compared to the value in the currently bound depth texture. See the + discussion of GL_TEXTURE_COMPARE_FUNC for details of how the comparison + is evaluated. The result of the comparison is assigned to the red channel. +

GL_NONE

+ Specifies that the red channel should be assigned the + appropriate value from the currently bound depth texture. +

+

GL_TEXTURE_LOD_BIAS

+ params specifies a fixed bias value that is to be added to the level-of-detail + parameter for the texture before texture sampling. The specified value is added to the shader-supplied + bias value (if any) and subsequently clamped into the implementation-defined range + + + + + - + bias + max + + + + + + + bias + max + + + + + + , + where + + + bias + max + + + + is the value of the implementation defined constant GL_MAX_TEXTURE_LOD_BIAS. The initial value is 0.0. +

GL_TEXTURE_MIN_FILTER

+ The texture minifying function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be minified. + There are six defined minifying functions. + Two of them use either the nearest texture elements or a weighted average of multiple texture elements + to compute the texture value. + The other four use mipmaps. +

+ A mipmap is an ordered set of arrays representing the same image + at progressively lower resolutions. + If the texture has dimensions + + + + 2 + n + + × + 2 + m + + + , + there are + + + + + max + ⁡ + + n + m + + + + + 1 + + + mipmaps. + The first mipmap is the original texture, + with dimensions + + + + 2 + n + + × + 2 + m + + + . + Each subsequent mipmap has dimensions + + + + 2 + + + k + - + 1 + + + + × + 2 + + + l + - + 1 + + + + + , + where + + + + 2 + k + + × + 2 + l + + + + are the dimensions of the previous mipmap, + until either + + + + k + = + 0 + + + or + + + + l + = + 0 + + . + At that point, + subsequent mipmaps have dimension + + + + 1 + × + 2 + + + l + - + 1 + + + + + + or + + + + 2 + + + k + - + 1 + + + + × + 1 + + + until the final mipmap, + which has dimension + + + + 1 + × + 1 + + . + To define the mipmaps, call glTexImage1D, glTexImage2D, + glTexImage3D, + glCopyTexImage1D, or glCopyTexImage2D + with the level argument indicating the order of the mipmaps. + Level 0 is the original texture; + level + + + + max + ⁡ + + n + m + + + + is the final + + + + 1 + × + 1 + + + mipmap. +

+ params supplies a function for minifying the texture as one of the + following: +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. +

GL_LINEAR

+ Returns the weighted average of the four texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

GL_NEAREST_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates) + to produce a texture value. +

GL_LINEAR_MIPMAP_NEAREST

+ Chooses the mipmap that most closely matches the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the four texture elements that are closest to the specified texture coordinates) + to produce a texture value. +

GL_NEAREST_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_NEAREST criterion + (the texture element closest to the specified texture coordinates ) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

GL_LINEAR_MIPMAP_LINEAR

+ Chooses the two mipmaps that most closely match the size of the pixel + being textured and uses the GL_LINEAR criterion + (a weighted average of the texture elements that are closest to the specified texture coordinates) + to produce a texture value from each mipmap. + The final texture value is a weighted average of those two values. +

+

+ As more texture elements are sampled in the minification process, + fewer aliasing artifacts will be apparent. + While the GL_NEAREST and GL_LINEAR minification functions can be + faster than the other four, + they sample only one or multiple texture elements to determine the texture value + of the pixel being rendered and can produce moire patterns + or ragged transitions. + The initial value of GL_TEXTURE_MIN_FILTER is + GL_NEAREST_MIPMAP_LINEAR. +

+

GL_TEXTURE_MAG_FILTER

+ The texture magnification function is used whenever the level-of-detail function + used when sampling from the texture determines that the texture should be magified. + It sets the texture magnification function to either GL_NEAREST + or GL_LINEAR (see below). GL_NEAREST is generally faster + than GL_LINEAR, + but it can produce textured images with sharper edges + because the transition between texture elements is not as smooth. + The initial value of GL_TEXTURE_MAG_FILTER is GL_LINEAR. +

GL_NEAREST

+ Returns the value of the texture element that is nearest + (in Manhattan distance) + to the specified texture coordinates. +

GL_LINEAR

+ Returns the weighted average of the texture elements + that are closest to the specified texture coordinates. + These can include items wrapped or repeated from other parts of a texture, + depending on the values of GL_TEXTURE_WRAP_S and GL_TEXTURE_WRAP_T, + and on the exact mapping. +

+

+

+

+

GL_TEXTURE_MIN_LOD

+ Sets the minimum level-of-detail parameter. This floating-point value + limits the selection of highest resolution mipmap (lowest mipmap + level). The initial value is -1000. +

+

GL_TEXTURE_MAX_LOD

+ Sets the maximum level-of-detail parameter. This floating-point value + limits the selection of the lowest resolution mipmap (highest mipmap + level). The initial value is 1000. +

+

GL_TEXTURE_MAX_LEVEL

+ Sets the index of the highest defined mipmap level. This is an integer + value. The initial value is 1000. +

+

GL_TEXTURE_SWIZZLE_R

+ Sets the swizzle that will be applied to the r + component of a texel before it is returned to the shader. Valid values for param are GL_RED, + GL_GREEN, GL_BLUE, GL_ALPHA, GL_ZERO and + GL_ONE. + If GL_TEXTURE_SWIZZLE_R is GL_RED, the value for + r will be taken from the first + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_GREEN, the value for + r will be taken from the second + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_BLUE, the value for + r will be taken from the third + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ALPHA, the value for + r will be taken from the fourth + channel of the fetched texel. + If GL_TEXTURE_SWIZZLE_R is GL_ZERO, the value for + r will be subtituted with + 0.0. + If GL_TEXTURE_SWIZZLE_R is GL_ONE, the value for + r will be subtituted with + 1.0. + The initial value is GL_RED. +

+

GL_TEXTURE_SWIZZLE_G

+ Sets the swizzle that will be applied to the g + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_GREEN. +

+

GL_TEXTURE_SWIZZLE_B

+ Sets the swizzle that will be applied to the b + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_BLUE. +

+

GL_TEXTURE_SWIZZLE_A

+ Sets the swizzle that will be applied to the a + component of a texel before it is returned to the shader. Valid values for param and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R. + The initial value is GL_ALPHA. +

+

GL_TEXTURE_SWIZZLE_RGBA

+ Sets the swizzles that will be applied to the + r, + g, + b, and + a + components of a texel before they are returned to the shader. Valid values for params and their effects are similar to + those of GL_TEXTURE_SWIZZLE_R, except that all channels are specified simultaneously. + Setting the value of GL_TEXTURE_SWIZZLE_RGBA is equivalent (assuming no errors are generated) to + setting the parameters of each of GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B, and + GL_TEXTURE_SWIZZLE_A successively. +

+

GL_TEXTURE_WRAP_S

+ Sets the wrap parameter for texture coordinate + s + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. GL_CLAMP_TO_EDGE causes + s + coordinates to be clamped to the + range + + + + + + + 1 + 2N + + + + + 1 + - + + + + 1 + 2N + + + + + + , + where + N + is the size + of the texture in the direction of clamping. + GL_CLAMP_TO_BORDER evaluates s coordinates in a similar manner to GL_CLAMP_TO_EDGE. + However, in cases where clamping would have occurred in GL_CLAMP_TO_EDGE mode, the fetched texel data + is substituted with the values specified by GL_TEXTURE_BORDER_COLOR. + GL_REPEAT causes the + integer part of the + s + coordinate to be ignored; the GL uses only the + fractional part, thereby creating a repeating pattern. + GL_MIRRORED_REPEAT causes the + s + coordinate to be set to the + fractional part of the texture coordinate if the integer part of + s + is + even; if the integer part of + s + is odd, then the + s + texture coordinate is + set to + + + + 1 + - + + frac + ⁡ + + s + + + + , + where + + + + frac + ⁡ + + s + + + + represents the fractional part of + s. + Initially, GL_TEXTURE_WRAP_S is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_T

+ Sets the wrap parameter for texture coordinate + t + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_T is set to GL_REPEAT. +

+

GL_TEXTURE_WRAP_R

+ Sets the wrap parameter for texture coordinate + r + to either GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER, + GL_MIRRORED_REPEAT, or + GL_REPEAT. See the discussion under GL_TEXTURE_WRAP_S. + Initially, GL_TEXTURE_WRAP_R is set to GL_REPEAT. +

Notes

+ Suppose that a program attempts to sample from a texture and + has set GL_TEXTURE_MIN_FILTER to one of the functions that requires a + mipmap. If either the dimensions of the texture images currently defined + (with previous calls to glTexImage1D, glTexImage2D, + glTexImage3D, glCopyTexImage1D, or glCopyTexImage2D) do not + follow the proper sequence for mipmaps (described above), or there are + fewer texture images defined than are needed, or the set of texture images + have differing numbers of texture components, then the texture is considered incomplete. +

+ Linear filtering accesses the four nearest texture elements only in 2D + textures. In 1D textures, linear filtering accesses the two nearest + texture elements. In 3D textures, linear filtering accesses the eight nearest + texture elements. +

+ glTexParameter specifies the texture parameters for the active texture unit, specified + by calling glActiveTexture. +

+ GL_DEPTH_STENCIL_TEXTURE_MODE is available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_ENUM is generated if target or pname is not + one of the accepted defined values. +

+ GL_INVALID_ENUM is generated if params should have a defined + constant value (based on the value of pname) and does not. +

Associated Gets

+ glGetTexParameter +

+ glGetTexLevelParameter +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexStorage1D.xml b/upstream-man-pages/man4/xhtml/glTexStorage1D.xml new file mode 100644 index 0000000..382c11f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexStorage1D.xml @@ -0,0 +1,98 @@ + + + +glTexStorage1D - OpenGL 4 Reference Pages

Name

glTexStorage1D — simultaneously specify storage for all levels of a one-dimensional texture

C Specification

void glTexStorage1D(GLenum  target,
 GLsizei  levels,
 GLenum  internalformat,
 GLsizei  width);

Parameters

target

+ Specify the target of the operation. target must be + either GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. +

levels

+ Specify the number of texture levels. +

internalformat

+ Specifies the sized internal format to be used to store texture image data. +

width

+ Specifies the width of the texture, in texels. +

Description

+ glTexStorage1D specifies the storage requirements for all levels + of a one-dimensional texture simultaneously. Once a texture is specified with this + command, the format and dimensions of all levels become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. +

+ Calling glTexStorage1D is equivalent, assuming no errors are generated, + to executing the following pseudo-code: +

    for (i = 0; i < levels; i++)
+    {
+        glTexImage1D(target, i, internalformat, width, 0, format, type, NULL);
+        width = max(1, (width / 2));
+    }

+ Since no texture data is actually provided, the values used in the pseudo-code + for format and type are + irrelevant and may be considered to be any values that are legal for the + chosen internalformat enumerant. internalformat + must be one of the sized internal formats given in Table 1 below, one of the sized depth-component + formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or + GL_DEPTH_COMPONENT16, or one of the combined depth-stencil formats, + GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8. Upon success, + the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes + GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT + may be discovered by calling glGetTexParameter + with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. + No further changes to the dimensions or format of the texture object may be + made. Using any command that might alter the dimensions or format of the + texture object (such as glTexImage1D or + another call to glTexStorage1D) will result in the + generation of a GL_INVALID_OPERATION error, even if it + would not, in fact, alter the dimensions or format of the object. +

+

Table 1. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

Errors

+ GL_INVALID_ENUM is generated if internalformat is not a + valid sized internal format. +

+ GL_INVALID_ENUM is generated if target is not + GL_TEXTURE_1D or GL_TEXTURE_2D. +

+ GL_INVALID_VALUE is generated if width or levels + are less than 1. +

+ GL_INVALID_OPERATION is generated if levels is greater than + + + + + log + 2 + + + width + + + + + + 1 + +. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexStorage2D.xml b/upstream-man-pages/man4/xhtml/glTexStorage2D.xml new file mode 100644 index 0000000..bf2423f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexStorage2D.xml @@ -0,0 +1,155 @@ + + + +glTexStorage2D - OpenGL 4 Reference Pages

Name

glTexStorage2D — simultaneously specify storage for all levels of a two-dimensional or one-dimensional array texture

C Specification

void glTexStorage2D(GLenum  target,
 GLsizei  levels,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height);

Parameters

target

+ Specify the target of the operation. target must be + one of GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, + or GL_PROXY_TEXTURE_CUBE_MAP. +

levels

+ Specify the number of texture levels. +

internalformat

+ Specifies the sized internal format to be used to store texture image data. +

width

+ Specifies the width of the texture, in texels. +

height

+ Specifies the height of the texture, in texels. +

Description

+ glTexStorage2D specifies the storage requirements for all levels + of a two-dimensional texture or one-dimensional texture array simultaneously. Once a texture is specified with this + command, the format and dimensions of all levels become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. +

+ The behavior of glTexStorage2D depends on the target parameter. + When target is GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, + GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE or GL_PROXY_TEXTURE_CUBE_MAP, + calling glTexStorage2D is equivalent, assuming no errors are generated, + to executing the following pseudo-code: +

    for (i = 0; i < levels; i++)
+    {
+        glTexImage2D(target, i, internalformat, width, height, 0, format, type, NULL);
+        width = max(1, (width / 2));
+        height = max(1, (height / 2));
+    }

+ When target is GL_TEXTURE_CUBE_MAP, glTexStorage2D + is equivalent to: +

    for (i = 0; i < levels; i++)
+    {
+        for (face in (+X, -X, +Y, -Y, +Z, -Z))
+        {
+            glTexImage2D(face, i, internalformat, width, height, 0, format, type, NULL);
+        }
+        width = max(1, (width / 2));
+        height = max(1, (height / 2));
+    }

+ When target is GL_TEXTURE_1D or GL_TEXTURE_1D_ARRAY, + glTexStorage2D is equivalent to: +

    for (i = 0; i < levels; i++)
+    {
+        glTexImage2D(target, i, internalformat, width, height, 0, format, type, NULL);
+        width = max(1, (width / 2));
+    }

+ Since no texture data is actually provided, the values used in the pseudo-code + for format and type are + irrelevant and may be considered to be any values that are legal for the + chosen internalformat enumerant. internalformat + must be one of the sized internal formats given in Table 1 below, one of the sized depth-component + formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or + GL_DEPTH_COMPONENT16, or one of the combined depth-stencil formats, + GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8. Upon success, + the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes + GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT + may be discovered by calling glGetTexParameter + with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. + No further changes to the dimensions or format of the texture object may be + made. Using any command that might alter the dimensions or format of the + texture object (such as glTexImage2D or + another call to glTexStorage2D) will result in the + generation of a GL_INVALID_OPERATION error, even if it + would not, in fact, alter the dimensions or format of the object. +

+

Table 1. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

Errors

+ GL_INVALID_ENUM is generated if internalformat is not a + valid sized internal format. +

+ GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. +

+ GL_INVALID_VALUE is generated if width or levels + are less than 1. +

+ GL_INVALID_OPERATION is generated if target is GL_TEXTURE_1D_ARRAY + or GL_PROXY_TEXTURE_1D_ARRAY and levels is greater than + + + + + log + 2 + + + width + + + + + + 1 + +. +

+ GL_INVALID_OPERATION is generated if target is not GL_TEXTURE_1D_ARRAY + or GL_PROXY_TEXTURE_1D_ARRAY and levels is greater than + + + + + log + 2 + + + + max + + + width + , +   + height + + + + + + + + + 1 + +. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexStorage2DMultisample.xml b/upstream-man-pages/man4/xhtml/glTexStorage2DMultisample.xml new file mode 100644 index 0000000..4b4855c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexStorage2DMultisample.xml @@ -0,0 +1,74 @@ + + + +glTexStorage2DMultisample - OpenGL 4 Reference Pages

Name

glTexStorage2DMultisample — specify storage for a two-dimensional multisample texture

C Specification

void glTexStorage2DMultisample(GLenum  target,
 GLsizei  samples,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLboolean  fixedsamplelocations);

Parameters

target

+ Specify the target of the operation. target must be + GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. +

samples

+ Specify the number of samples in the texture. +

internalformat

+ Specifies the sized internal format to be used to store texture image data. +

width

+ Specifies the width of the texture, in texels. +

height

+ Specifies the height of the texture, in texels. +

fixedsamplelocations

+ Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. +

Description

+ glTexStorage2DMultisample specifies the storage requirements for + a two-dimensional multisample texture. Once a texture is specified with this + command, its format and dimensions become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. +

+ samples specifies the number of samples to be used for the texture + and must be greater than zero and less than or equal to the value of GL_MAX_SAMPLES. + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height specify the width and height, + respectively, of the texture. If fixedsamplelocations is GL_TRUE, + the image will use identical sample locations and the same number of samples for all texels in the image, + and the sample locations will not depend on the internal format or size of the image. +

+

Table 1. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

Errors

+ GL_INVALID_ENUM is generated if internalformat is not a + valid color-renderable, depth-renderable or stencil-renderable format. +

+ GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. +

+ GL_INVALID_VALUE is generated if width or height + are less than 1 or greater than the value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if samples is greater than the + value of GL_MAX_SAMPLES. +

+ GL_INVALID_OPERATION is generated if the value of GL_TEXTURE_IMMUTABLE_FORMAT + for the texture bound to target is not GL_FALSE. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexStorage3D.xml b/upstream-man-pages/man4/xhtml/glTexStorage3D.xml new file mode 100644 index 0000000..2662769 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexStorage3D.xml @@ -0,0 +1,161 @@ + + + +glTexStorage3D - OpenGL 4 Reference Pages

Name

glTexStorage3D — simultaneously specify storage for all levels of a three-dimensional, two-dimensional array or cube-map array texture

C Specification

void glTexStorage3D(GLenum  target,
 GLsizei  levels,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth);

Parameters

target

+ Specify the target of the operation. target must be + one of GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, + GL_TEXTURE_2D_ARRAY, GL_PROXY_TEXTURE_2D_ARRAY, + GL_TEXTURE_CUBE_ARRAY, or GL_PROXY_TEXTURE_CUBE_ARRAY. +

levels

+ Specify the number of texture levels. +

internalformat

+ Specifies the sized internal format to be used to store texture image data. +

width

+ Specifies the width of the texture, in texels. +

height

+ Specifies the height of the texture, in texels. +

depth

+ Specifies the depth of the texture, in texels. +

Description

+ glTexStorage3D specifies the storage requirements for all levels + of a three-dimensional, two-dimensional array or cube-map array texture simultaneously. Once a texture is specified with this + command, the format and dimensions of all levels become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. +

+ The behavior of glTexStorage3D depends on the target parameter. + When target is GL_TEXTURE_3D, or GL_PROXY_TEXTURE_3D, + calling glTexStorage3D is equivalent, assuming no errors are generated, + to executing the following pseudo-code: +

    for (i = 0; i < levels; i++)
+    {
+        glTexImage3D(target, i, internalformat, width, height, depth, 0, format, type, NULL);
+        width = max(1, (width / 2));
+        height = max(1, (height / 2));
+        depth = max(1, (depth / 2));
+    }

+ When target is GL_TEXTURE_2D_ARRAY, GL_PROXY_TEXTURE_2D_ARRAY, + GL_TEXTURE_CUBE_MAP_ARRAY, or GL_PROXY_TEXTURE_CUBE_MAP_ARRAY, glTexStorage3D + is equivalent to: +

    for (i = 0; i < levels; i++)
+    {
+        glTexImage3D(target, i, internalformat, width, height, depth, 0, format, type, NULL);
+        width = max(1, (width / 2));
+        height = max(1, (height / 2));
+    }

+ Since no texture data is actually provided, the values used in the pseudo-code + for format and type are + irrelevant and may be considered to be any values that are legal for the + chosen internalformat enumerant. internalformat + must be one of the sized internal formats given in Table 1 below, one of the sized depth-component + formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or + GL_DEPTH_COMPONENT16, or one of the combined depth-stencil formats, + GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8. Upon success, + the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes + GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT + may be discovered by calling glGetTexParameter + with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. + No further changes to the dimensions or format of the texture object may be + made. Using any command that might alter the dimensions or format of the + texture object (such as glTexImage3D or + another call to glTexStorage3D) will result in the + generation of a GL_INVALID_OPERATION error, even if it + would not, in fact, alter the dimensions or format of the object. +

+

Table 1. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

Errors

+ GL_INVALID_ENUM is generated if internalformat is not a + valid sized internal format. +

+ GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. +

+ GL_INVALID_VALUE is generated if width or levels + are less than 1. +

+ GL_INVALID_OPERATION is generated if target is GL_TEXTURE_3D + or GL_PROXY_TEXTURE_3D and levels is greater than + + + + + log + 2 + + + + max + + + width + , +   + height + , +   + depth + + + + + + + + + 1 + +. +

+ GL_INVALID_OPERATION is generated if target is GL_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY, GL_TEXURE_CUBE_ARRAY, or GL_PROXY_TEXTURE_CUBE_MAP_ARRAY + and levels is greater than + + + + + log + 2 + + + + max + + + width + , +   + height + + + + + + + + + 1 + +. +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexStorage3DMultisample.xml b/upstream-man-pages/man4/xhtml/glTexStorage3DMultisample.xml new file mode 100644 index 0000000..cc8c1ba --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexStorage3DMultisample.xml @@ -0,0 +1,85 @@ + + + +glTexStorage3DMultisample - OpenGL 4 Reference Pages

Name

glTexStorage3DMultisample — specify storage for a two-dimensional multisample array texture

C Specification

void glTexStorage3DMultisample(GLenum  target,
 GLsizei  samples,
 GLenum  internalformat,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLboolean  fixedsamplelocations);

Parameters

target

+ Specify the target of the operation. target must be + GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_MULTISAMPLE. +

samples

+ Specify the number of samples in the texture. +

internalformat

+ Specifies the sized internal format to be used to store texture image data. +

width

+ Specifies the width of the texture, in texels. +

height

+ Specifies the height of the texture, in texels. +

depth

+ Specifies the depth of the texture, in layers. +

fixedsamplelocations

+ Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + depend on the internal format or size of the image. +

Description

+ glTexStorage3DMultisample specifies the storage requirements for + a two-dimensional multisample array texture. Once a texture is specified with this + command, its format and dimensions become immutable unless it is a proxy + texture. The contents of the image may still be modified, however, its storage requirements + may not change. Such a texture is referred to as an immutable-format + texture. +

+ samples specifies the number of samples to be used for the texture + and must be greater than zero and less than or equal to the value of GL_MAX_SAMPLES. + internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + width and height specify the width and height, + respectively, of the texture and depth specifies the depth (or the number of layers) + of the texture. If fixedsamplelocations is GL_TRUE, + the image will use identical sample locations and the same number of samples for all texels in the image, + and the sample locations will not depend on the internal format or size of the image. +

+

Table 1. Sized Internal Formats

+ Sized Internal Format + + Base Internal Format + + Red Bits + + Green Bits + + Blue Bits + + Alpha Bits + + Shared Bits +
GL_R8GL_RED8    
GL_R8_SNORMGL_REDs8    
GL_R16GL_RED16    
GL_R16_SNORMGL_REDs16    
GL_RG8GL_RG88   
GL_RG8_SNORMGL_RGs8s8   
GL_RG16GL_RG1616   
GL_RG16_SNORMGL_RGs16s16   
GL_R3_G3_B2GL_RGB332  
GL_RGB4GL_RGB444  
GL_RGB5GL_RGB555  
GL_RGB8GL_RGB888  
GL_RGB8_SNORMGL_RGBs8s8s8  
GL_RGB10GL_RGB101010  
GL_RGB12GL_RGB121212  
GL_RGB16_SNORMGL_RGB161616  
GL_RGBA2GL_RGB2222 
GL_RGBA4GL_RGB4444 
GL_RGB5_A1GL_RGBA5551 
GL_RGBA8GL_RGBA8888 
GL_RGBA8_SNORMGL_RGBAs8s8s8s8 
GL_RGB10_A2GL_RGBA1010102 
GL_RGB10_A2UIGL_RGBAui10ui10ui10ui2 
GL_RGBA12GL_RGBA12121212 
GL_RGBA16GL_RGBA16161616 
GL_SRGB8GL_RGB888  
GL_SRGB8_ALPHA8GL_RGBA8888 
GL_R16FGL_REDf16    
GL_RG16FGL_RGf16f16   
GL_RGB16FGL_RGBf16f16f16  
GL_RGBA16FGL_RGBAf16f16f16f16 
GL_R32FGL_REDf32    
GL_RG32FGL_RGf32f32   
GL_RGB32FGL_RGBf32f32f32  
GL_RGBA32FGL_RGBAf32f32f32f32 
GL_R11F_G11F_B10FGL_RGBf11f11f10  
GL_RGB9_E5GL_RGB999 5
GL_R8IGL_REDi8    
GL_R8UIGL_REDui8    
GL_R16IGL_REDi16    
GL_R16UIGL_REDui16    
GL_R32IGL_REDi32    
GL_R32UIGL_REDui32    
GL_RG8IGL_RGi8i8   
GL_RG8UIGL_RGui8ui8   
GL_RG16IGL_RGi16i16   
GL_RG16UIGL_RGui16ui16   
GL_RG32IGL_RGi32i32   
GL_RG32UIGL_RGui32ui32   
GL_RGB8IGL_RGBi8i8i8  
GL_RGB8UIGL_RGBui8ui8ui8  
GL_RGB16IGL_RGBi16i16i16  
GL_RGB16UIGL_RGBui16ui16ui16  
GL_RGB32IGL_RGBi32i32i32  
GL_RGB32UIGL_RGBui32ui32ui32  
GL_RGBA8IGL_RGBAi8i8i8i8 
GL_RGBA8UIGL_RGBAui8ui8ui8ui8 
GL_RGBA16IGL_RGBAi16i16i16i16 
GL_RGBA16UIGL_RGBAui16ui16ui16ui16 
GL_RGBA32IGL_RGBAi32i32i32i32 
GL_RGBA32UIGL_RGBAui32ui32ui32ui32 

+

Errors

+ GL_INVALID_ENUM is generated if internalformat is not a + valid color-renderable, depth-renderable or stencil-renderable format. +

+ GL_INVALID_ENUM is generated if target is not + one of the accepted target enumerants. +

+ GL_INVALID_VALUE is generated if width or height + are less than 1 or greater than the value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if depth + is less than 1 or greater than the value of GL_MAX_ARRAY_TEXTURE_LAYERS. +

+ GL_INVALID_VALUE is generated if samples is greater than the + value of GL_MAX_SAMPLES. +

+ GL_INVALID_OPERATION is generated if the value of GL_TEXTURE_IMMUTABLE_FORMAT + for the texture bound to target is not GL_FALSE. +

Associated Gets

+ glGetInteger with arguments GL_MAX_TEXTURE_SIZE, + GL_MAX_ARRAY_TEXTURE_LEVELS, GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_NUM_LAYERS, or GL_TEXTURE_IMMUTABLE_LEVELS. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexSubImage1D.xml b/upstream-man-pages/man4/xhtml/glTexSubImage1D.xml new file mode 100644 index 0000000..d8ccc21 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexSubImage1D.xml @@ -0,0 +1,205 @@ + + + +glTexSubImage1D - OpenGL 4 Reference Pages

Name

glTexSubImage1D — specify a one-dimensional texture subimage

C Specification

void glTexSubImage1D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLsizei  width,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_1D. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. + To enable or disable one-dimensional texturing, call glEnable + and glDisable with argument GL_TEXTURE_1D. +

+ glTexSubImage1D redefines a contiguous subregion of an existing one-dimensional + texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with width of 0, but + such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glPixelStore modes affect texture images. +

+ glTexSubImage1D specifies a one-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not one of the + allowable values. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + or if + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, and + b + is + the width of the GL_TEXTURE_BORDER + of the texture image being modified. + Note that + w + includes twice the border width. +

+ GL_INVALID_VALUE is generated if width is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage1D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexSubImage2D.xml b/upstream-man-pages/man4/xhtml/glTexSubImage2D.xml new file mode 100644 index 0000000..53d3bba --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexSubImage2D.xml @@ -0,0 +1,266 @@ + + + +glTexSubImage2D - OpenGL 4 Reference Pages

Name

glTexSubImage2D — specify a two-dimensional texture subimage

C Specification

void glTexSubImage2D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLsizei  width,
 GLsizei  height,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + or GL_TEXTURE_1D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. +

+ glTexSubImage2D redefines a contiguous subregion of an existing two-dimensional + or one-dimensional arary texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + and y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width or height, but + such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ glPixelStore modes affect texture images. +

+ glTexSubImage2D specifies a two-dimensional subtexture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if target is not GL_TEXTURE_2D, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or + GL_TEXTURE_1D_ARRAY. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, and + b + is the border width + of the texture image being modified. + Note that + w + and + h + include twice the border width. +

+ GL_INVALID_VALUE is generated if width or height is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage2D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTexSubImage3D.xml b/upstream-man-pages/man4/xhtml/glTexSubImage3D.xml new file mode 100644 index 0000000..2f0751c --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTexSubImage3D.xml @@ -0,0 +1,309 @@ + + + +glTexSubImage3D - OpenGL 4 Reference Pages

Name

glTexSubImage3D — specify a three-dimensional texture subimage

C Specification

void glTexSubImage3D(GLenum  target,
 GLint  level,
 GLint  xoffset,
 GLint  yoffset,
 GLint  zoffset,
 GLsizei  width,
 GLsizei  height,
 GLsizei  depth,
 GLenum  format,
 GLenum  type,
 const GLvoid *  data);

+

Parameters

target

+ Specifies the target texture. + Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. +

level

+ Specifies the level-of-detail number. + Level 0 is the base image level. + Level n is the nth mipmap reduction image. +

xoffset

+ Specifies a texel offset in the x direction within the texture array. +

yoffset

+ Specifies a texel offset in the y direction within the texture array. +

zoffset

+ Specifies a texel offset in the z direction within the texture array. +

width

+ Specifies the width of the texture subimage. +

height

+ Specifies the height of the texture subimage. +

depth

+ Specifies the depth of the texture subimage. +

format

+ Specifies the format of the pixel data. + The following symbolic values are accepted: + GL_RED, + GL_RG, + GL_RGB, + GL_BGR, + GL_RGBA, and + GL_BGRA. +

type

+ Specifies the data type of the pixel data. + The following symbolic values are accepted: + GL_UNSIGNED_BYTE, + GL_BYTE, + GL_UNSIGNED_SHORT, + GL_SHORT, + GL_UNSIGNED_INT, + GL_INT, + GL_FLOAT, + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, + GL_UNSIGNED_SHORT_5_6_5_REV, + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, and + GL_UNSIGNED_INT_2_10_10_10_REV. +

data

+ Specifies a pointer to the image data in memory. +

Description

+ Texturing maps a portion of a specified texture image + onto each graphical primitive for which texturing is enabled. +

+ glTexSubImage3D redefines a contiguous subregion of an existing three-dimensional + or two-dimensioanl array texture image. + The texels referenced by data replace the portion of the + existing texture array with x indices xoffset and + + + + xoffset + + + width + - + 1 + + , + inclusive, + y indices yoffset and + + + + yoffset + + + height + - + 1 + + , + inclusive, + and z indices zoffset and + + + + zoffset + + + depth + - + 1 + + , + inclusive. + For three-dimensional textures, the z index refers to the third + dimension. For two-dimensional array textures, the z index refers to + the slice index. + This region may not include any texels outside the range of the + texture array as it was originally specified. + It is not an error to specify a subtexture with zero width, height, or + depth but such a specification has no effect. +

+ If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target + (see glBindBuffer) while a texture image is + specified, data is treated as a byte offset into the buffer object's data store. +

Notes

+ The glPixelStore modes affect texture images. +

+ glTexSubImage3D specifies a three-dimensional or two-dimenaional array subtexture for the current texture unit, + specified with glActiveTexture. +

Errors

+ GL_INVALID_ENUM is generated if /target is not GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. +

+ GL_INVALID_ENUM is generated if format is not an accepted + format constant. +

+ GL_INVALID_ENUM is generated if type is not a type constant. +

+ GL_INVALID_VALUE is generated if level is less than 0. +

+ GL_INVALID_VALUE may be generated if level is greater + than + + + log + 2 + + + max, + where max is the returned value of GL_MAX_TEXTURE_SIZE. +

+ GL_INVALID_VALUE is generated if + + + + xoffset + < + + - + b + + + , + + + + + + xoffset + + + width + + + > + + + w + - + b + + + + , + + + + yoffset + < + + - + b + + + , + or + + + + + + yoffset + + + height + + + > + + + h + - + b + + + + , + or + + + + zoffset + < + + - + b + + + , + or + + + + + + zoffset + + + depth + + + > + + + d + - + b + + + + , + where + w + is the GL_TEXTURE_WIDTH, + h + is the GL_TEXTURE_HEIGHT, + d + is the GL_TEXTURE_DEPTH + and + b + is the border width of the texture image being modified. + Note that + w, + h, + and + d + include twice the border width. +

+ GL_INVALID_VALUE is generated if width, height, or depth + is less than 0. +

+ GL_INVALID_OPERATION is generated if the texture array has not + been defined by a previous glTexImage3D + or glTexStorage3D operation. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_2_3_3_REV, + GL_UNSIGNED_SHORT_5_6_5, or + GL_UNSIGNED_SHORT_5_6_5_REV + and format is not GL_RGB. +

+ GL_INVALID_OPERATION is generated if type is one of + GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_REV, + GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_1_5_5_5_REV, + GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_REV, + GL_UNSIGNED_INT_10_10_10_2, or + GL_UNSIGNED_INT_2_10_10_10_REV + and format is neither GL_RGBA nor GL_BGRA. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer + object such that the memory reads required would exceed the data store size. +

+ GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the + GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible + into the number of bytes needed to store in memory a datum indicated by type. +

Associated Gets

+ glGetTexImage +

+ glGet with argument GL_PIXEL_UNPACK_BUFFER_BINDING +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glTextureView.xml b/upstream-man-pages/man4/xhtml/glTextureView.xml new file mode 100644 index 0000000..4ad7ef0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTextureView.xml @@ -0,0 +1,124 @@ + + + +glTextureView - OpenGL 4 Reference Pages

Name

glTextureView — initialize a texture as a data alias of another texture's data store

C Specification

void glTextureView(GLuint  texture,
 GLenum  target,
 GLuint  origtexture,
 GLenum  internalformat,
 GLuint  minlevel,
 GLuint  numlevels,
 GLuint  minlayer,
 GLuint  numlayers);

Parameters

texture

+ Specifies the texture object to be initialized as a view. +

target

+ Specifies the target to be used for the newly initialized texture. +

origtexture

+ Specifies the name of a texture object of which to make a view. +

internalFormat

+ Specifies the internal format for the newly created view. +

minlevel

+ Specifies lowest level of detail of the view. +

numlevels

+ Specifies the number of levels of detail to include in the view. +

minlayer

+ Specifies the index of the first layer to include in the view. +

numlayers

+ Specifies the number of layers to include in the view. +

Description

+ glTextureView initializes a texture object as an + alias, or view of another texture object, sharing some or all of the + parent texture's data store with the initialized texture. texture + specifies a name previously reserved by a successful call to glGenTextures + but that has not yet been bound or given a target. target + specifies the target for the newly initialized texture and must be compatible + with the target of the parent texture, given in origtexture + as specified in the following table: +

Original TargetCompatible New Targets
GL_TEXTURE_1DGL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY
GL_TEXTURE_2DGL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY
GL_TEXTURE_3DGL_TEXTURE_3D
GL_TEXTURE_CUBE_MAPGL_TEXTURE_CUBE_MAP, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTUER_CUBE_MAP_ARRAY
GL_TEXTURE_RECTANGLEGL_TEXTURE_RECTANGLE
GL_TEXTURE_BUFFERnone
GL_TEXTURE_1D_ARRAYGL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY
GL_TEXTURE_2D_ARRAYGL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY
GL_TEXTURE_CUBE_MAP_ARRAYGL_TEXTURE_CUBE_MAP, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTUER_CUBE_MAP_ARRAY
GL_TEXTURE_2D_MULTISAMPLEGL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MULTISAMPLE_ARRAY
GL_TEXTURE_2D_MULTISAMPLE_ARRAYGL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MULTISAMPLE_ARRAY

+ The value of GL_TEXTURE_IMMUTABLE_FORMAT for origtexture + must be GL_TRUE. + After initialization, texture inherits the data store of + the parent texture, origtexture and is usable as a normal + texture object with target target. Data in the shared store + is reinterpreted with the new internal format specified by internalformat. + internalformat must be compatible with the internal format + of the parent texture as specified in the following table: +

ClassInternal Formats
128-bitGL_RGBA32F, GL_RGBA32UI, GL_RGBA32I
96-bitGL_RGB32F, GL_RGB32UI, GL_RGB32I
64-bitGL_RGBA16F, GL_RG32F, GL_RGBA16UI, + GL_RG32UI, GL_RGBA16I, GL_RG32I, GL_RGBA16, GL_RGBA16_SNORM
48-bitGL_RGB16, GL_RGB16_SNORM, GL_RGB16F, GL_RGB16UI, GL_RGB16I
32-bitGL_RG16F, GL_R11F_G11F_B10F, GL_R32F, GL_RGB10_A2UI, + GL_RGBA8UI, GL_RG16UI, GL_R32UI, GL_RGBA8I, + GL_RG16I, GL_R32I, GL_RGB10_A2, GL_RGBA8, + GL_RG16, GL_RGBA8_SNORM, GL_RG16_SNORM, GL_SRGB8_ALPHA8, + GL_RGB9_E5
24-bitGL_RGB8, GL_RGB8_SNORM, GL_SRGB8, + GL_RGB8UI, GL_RGB8I
16-bitGL_R16F, GL_RG8UI, GL_R16UI, GL_RG8I, + GL_R16I, GL_RG8, GL_R16, GL_RG8_SNORM, GL_R16_SNORM
8-bitGL_R8UI, GL_R8I, GL_R8, GL_R8_SNORM
GL_RGTC1_REDGL_COMPRESSED_RED_RGTC1, GL_COMPRESSED_SIGNED_RED_RGTC1
GL_RGTC2_RGGL_COMPRESSED_RG_RGTC2, GL_COMPRESSED_SIGNED_RG_RGTC2
GL_BPTC_UNORMGL_COMPRESSED_RGBA_BPTC_UNORM, GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM
GL_BPTC_FLOATGL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT

+ If the original texture is an array or has multiple mipmap levels, + the parameters minlayer, numlayers, minlevel, and numlevels + control which of those slices and levels are considered part of the texture. + The minlevel and minlayer parameters are relative to the view of the + original texture. If numlayers or numlevels extend beyond the original + texture, they are clamped to the max extent of the original texture. +

+ If the new texture's target is GL_TEXTURE_CUBE_MAP, the clamped numlayers + must be equal to 6. If the new texture's target is GL_TEXTURE_CUBE_MAP_ARRAY, + then numlayers counts layer-faces rather than layers, and the clamped + numlayers must be a multiple of 6. If the new texture's target is GL_TEXTURE_CUBE_MAP or + GL_TEXTURE_CUBE_MAP_ARRAY, the width and height of the original texture's + levels must be equal. +

+ When the original texture's target is GL_TEXTURE_CUBE_MAP, the layer + parameters are interpreted in the same order as if it were a + GL_TEXTURE_CUBE_MAP_ARRAY with 6 layer-faces. +

+ If target is GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_RECTANGLE, or + GL_TEXTURE_2D_MULTISAMPLE, numlayers must equal 1. +

+ The dimensions of the original texture must be less than or equal to the maximum + supported dimensions of the new target. For example, if the original texture has a GL_TEXTURE_2D_ARRAY + target and its width is greater than GL_MAX_CUBE_MAP_TEXTURE_SIZE, an error + will be generated if glTextureView is called to create a GL_TEXTURE_CUBE_MAP + view. +

+ Texture commands that take a level or layer parameter, such as + glTexSubImage2D, interpret that parameter to be relative to the view of the + texture. i.e. the mipmap level of the data store that would be updated via + TexSubImage2D would be the sum of level and the value of + GL_TEXTURE_VIEW_MIN_LEVEL. +

Errors

+ GL_INVALID_VALUE is generated if minlayer or minlevel + are larger than the greatest layer or level of origtexture. +

+ GL_INVALID_OPERATION is generated if target is not compatible + with the target of origtexture. +

+ GL_INVALID_OPERATION is generated if the dimensions of origtexture + are greater than the maximum supported dimensions for target. +

+ GL_INVALID_OPERATION is generated if internalformat is not compatible + with the internal format of origtexture. +

+ GL_INVALID_OPERATION is generated if texture has already been bound + or otherwise given a target. +

+ GL_INVALID_OPERATION is generated if the value of GL_TEXTURE_IMMUTABLE_FORMAT + for origtexture is not GL_TRUE. +

+ GL_INVALID_OPERATION is generated if origtexture is not the name of an + existing texture object. +

+ GL_INVALID_VALUE is generaged if target is GL_TEXTURE_CUBE_MAP + and numlayers is not 6, or if target is GL_TEXTURE_CUBE_MAP_ARRAY + and numlayers is not an integer multiple of 6. +

+ GL_INVALID_VALUE is generated if target is GL_TEXTURE_1D, + GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_RECTANGLE, or + GL_TEXTURE_2D_MULTISAMPLE and numlayers does not equal 1. +

+ GL_INVALID_VALUE is generated if texture zero or is not the name of a texture previously + returned from a successful call to glGenTextures. +

Associated Gets

+ glTexParameter with arguments GL_TEXTURE_VIEW_MIN_LEVEL, + GL_TEXTURE_VIEW_NUM_LEVELS, GL_TEXTURE_VIEW_MIN_LAYER, + GL_TEXTURE_VIEW_NUM_LAYERS, or GL_TEXTURE_IMMUTABLE_LEVELS. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glTransformFeedbackVaryings.xml b/upstream-man-pages/man4/xhtml/glTransformFeedbackVaryings.xml new file mode 100644 index 0000000..c5a1b13 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glTransformFeedbackVaryings.xml @@ -0,0 +1,67 @@ + + + +glTransformFeedbackVaryings - OpenGL 4 Reference Pages

Name

glTransformFeedbackVaryings — specify values to record in transform feedback buffers

C Specification

void glTransformFeedbackVaryings(GLuint program,
 GLsizei count,
 const char ** varyings,
 GLenum bufferMode);

Parameters

program

+ The name of the target program object. +

count

+ The number of varying variables used for transform feedback. +

varyings

+ An array of count zero-terminated strings specifying the + names of the varying variables to use for transform feedback. +

bufferMode

+ Identifies the mode used to capture the varying variables when transform feedback is active. + bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. +

Description

+ The names of the vertex or geometry shader outputs to be recorded in transform feedback mode + are specified using glTransformFeedbackVaryings. When a geometry shader + is active, transform feedback records the values of selected geometry shader output variables + from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are + recorded. +

+ The state set by glTranformFeedbackVaryings is stored and takes effect + next time glLinkProgram is called + on program. When glLinkProgram + is called, program is linked so that the values of the specified varying variables + for the vertices of each primitive generated by the GL are written to a single buffer + object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple + buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. +

+ In addition to the errors generated by glTransformFeedbackVaryings, the + program program will fail to link if: +

  • + The count specified by glTransformFeedbackVaryings is non-zero, but the + program object has no vertex or geometry shader. +

  • + Any variable name specified in the varyings array is not declared as an output + in the vertex shader (or the geometry shader, if active). +

  • + Any two entries in the varyings array specify the same varying variable. +

  • + The total number of components to capture in any varying variable in varyings + is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS + and the buffer mode is GL_SEPARATE_ATTRIBS. +

  • + The total number of components to capture is greater than the constant + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer + mode is GL_INTERLEAVED_ATTRIBS. +

+

Notes

+ glGetTransformFeedbackVarying is available only if the GL version is 3.0 or greater. +

Errors

+ GL_INVALID_VALUE is generated if program is not + the name of a program object. +

+ GL_INVALID_VALUE is generated if bufferMode is GL_SEPARATE_ATTRIBS + and count is greater than the implementation-dependent limit GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS. +

Associated Gets

+ glGetTransformFeedbackVarying +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glUniform.xml b/upstream-man-pages/man4/xhtml/glUniform.xml new file mode 100644 index 0000000..6dec40a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glUniform.xml @@ -0,0 +1,170 @@ + + + +glUniform - OpenGL 4 Reference Pages

Name

glUniform — Specify the value of a uniform variable for the current program object

C Specification

void glUniform1f(GLint location, GLfloat v0);

void glUniform2f(GLint  location,
 GLfloat  v0,
 GLfloat  v1);
void glUniform3f(GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glUniform4f(GLint  location,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);

void glUniform1i(GLint location, GLint v0);

void glUniform2i(GLint  location,
 GLint  v0,
 GLint  v1);
void glUniform3i(GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2);
void glUniform4i(GLint  location,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLint  v3);

void glUniform1ui(GLint location, GLuint v0);

void glUniform2ui(GLint  location,
 GLuint  v0,
 GLuint  v1);
void glUniform3ui(GLint  location,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2);
void glUniform4ui(GLint  location,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2,
 GLuint  v3);

Parameters

location

Specifies the location of the uniform variable + to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified uniform variable.

C Specification

void glUniform1fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform2fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform3fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform4fv(GLint  location,
 GLsizei  count,
 const GLfloat * value);
void glUniform1iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform2iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform3iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform4iv(GLint  location,
 GLsizei  count,
 const GLint * value);
void glUniform1uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);
void glUniform2uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);
void glUniform3uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);
void glUniform4uiv(GLint  location,
 GLsizei  count,
 const GLuint * value);

Parameters

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of elements that are to + be modified. This should be 1 if the targeted + uniform variable is not an array, and 1 or more if it is + an array.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

C Specification

void glUniformMatrix2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix2x3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3x2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix2x4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4x2fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix3x4fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);
void glUniformMatrix4x3fv(GLint  location,
 GLsizei  count,
 GLboolean  transpose,
 const GLfloat * value);

Parameters

location

Specifies the location of the uniform value to + be modified.

count

Specifies the number of matrices that are to + be modified. This should be 1 if the targeted + uniform variable is not an array of matrices, and 1 or more if it is + an array of matrices.

transpose

Specifies whether to transpose the matrix as + the values are loaded into the uniform + variable.

value

Specifies a pointer to an array of + count values that will be + used to update the specified uniform + variable.

Description

glUniform modifies the value of a + uniform variable or a uniform variable array. The location of + the uniform variable to be modified is specified by + location, which should be a value + returned by + glGetUniformLocation. + glUniform operates on the program object + that was made part of current state by calling + glUseProgram.

The commands glUniform{1|2|3|4}{f|i|ui} + are used to change the value of the uniform variable specified + by location using the values passed as + arguments. The number specified in the command should match the + number of components in the data type of the specified uniform + variable (e.g., 1 for float, int, unsigned int, bool; + 2 for vec2, ivec2, uvec2, bvec2, etc.). The suffix + f indicates that floating-point values are + being passed; the suffix i indicates that + integer values are being passed; the suffix ui indicates that + unsigned integer values are being passed, and this type should also match + the data type of the specified uniform variable. The + i variants of this function should be used + to provide values for uniform variables defined as int, ivec2, + ivec3, ivec4, or arrays of these. The + ui variants of this function should be used + to provide values for uniform variables defined as unsigned int, uvec2, + uvec3, uvec4, or arrays of these. The f + variants should be used to provide values for uniform variables + of type float, vec2, vec3, vec4, or arrays of these. Either the + i, ui or f variants + may be used to provide values for uniform variables of type + bool, bvec2, bvec3, bvec4, or arrays of these. The uniform + variable will be set to false if the input value is 0 or 0.0f, + and it will be set to true otherwise.

All active uniform variables defined in a program object + are initialized to 0 when the program object is linked + successfully. They retain the values assigned to them by a call + to glUniform until the next successful + link operation occurs on the program object, when they are once + again initialized to 0.

The commands glUniform{1|2|3|4}{f|i|ui}v + can be used to modify a single uniform variable or a uniform + variable array. These commands pass a count and a pointer to the + values to be loaded into a uniform variable or a uniform + variable array. A count of 1 should be used if modifying the + value of a single uniform variable, and a count of 1 or greater + can be used to modify an entire array or part of an array. When + loading n elements starting at an arbitrary + position m in a uniform variable array, + elements m + n - 1 in + the array will be replaced with the new values. If + m + n - 1 is + larger than the size of the uniform variable array, values for + all array elements beyond the end of the array will be ignored. + The number specified in the name of the command indicates the + number of components for each element in + value, and it should match the number of + components in the data type of the specified uniform variable + (e.g., 1 for float, int, bool; + 2 for vec2, ivec2, bvec2, etc.). The data + type specified in the name of the command must match the data + type for the specified uniform variable as described previously + for glUniform{1|2|3|4}{f|i|ui}.

For uniform variable arrays, each element of the array is + considered to be of the type indicated in the name of the + command (e.g., glUniform3f or + glUniform3fv can be used to load a uniform + variable array of type vec3). The number of elements of the + uniform variable array to be modified is specified by + count

The commands + glUniformMatrix{2|3|4|2x3|3x2|2x4|4x2|3x4|4x3}fv + are used to modify a matrix or an array of matrices. The numbers in the + command name are interpreted as the dimensionality of the matrix. + The number 2 indicates a 2 × 2 matrix + (i.e., 4 values), the number 3 indicates a + 3 × 3 matrix (i.e., 9 values), and the number + 4 indicates a 4 × 4 matrix (i.e., 16 + values). Non-square matrix dimensionality is explicit, with the first + number representing the number of columns and the second number + representing the number of rows. For example, + 2x4 indicates a 2 × 4 matrix with 2 columns + and 4 rows (i.e., 8 values). + If transpose is + GL_FALSE, each matrix is assumed to be + supplied in column major order. If + transpose is + GL_TRUE, each matrix is assumed to be + supplied in row major order. The count + argument indicates the number of matrices to be passed. A count + of 1 should be used if modifying the value of a single matrix, + and a count greater than 1 can be used to modify an array of + matrices.

Notes

glUniform1i and + glUniform1iv are the only two functions + that may be used to load uniform variables defined as sampler + types. Loading samplers with any other function will result in a + GL_INVALID_OPERATION error.

If count is greater than 1 and the + indicated uniform variable is not an array, a + GL_INVALID_OPERATION error is generated and the + specified uniform variable will remain unchanged.

Other than the preceding exceptions, if the type and size + of the uniform variable as defined in the shader do not match + the type and size specified in the name of the command used to + load its value, a GL_INVALID_OPERATION error will + be generated and the specified uniform variable will remain + unchanged.

If location is a value other than + -1 and it does not represent a valid uniform variable location + in the current program object, an error will be generated, and + no changes will be made to the uniform variable storage of the + current program object. If location is + equal to -1, the data passed in will be silently ignored and the + specified uniform variable will not be changed.

Errors

GL_INVALID_OPERATION is generated if there + is no current program object.

GL_INVALID_OPERATION is generated if the + size of the uniform variable declared in the shader does not + match the size indicated by the glUniform + command.

GL_INVALID_OPERATION is generated if one of + the signed or unsigned integer variants of this function is used to load a uniform + variable of type float, vec2, vec3, vec4, or an array of these, + or if one of the floating-point variants of this function is + used to load a uniform variable of type int, ivec2, ivec3, + ivec4, unsigned int, uvec2, uvec3, + uvec4, or an array of these.

GL_INVALID_OPERATION is generated if one of + the signed integer variants of this function is used to load a uniform + variable of type unsigned int, uvec2, uvec3, + uvec4, or an array of these.

GL_INVALID_OPERATION is generated if one of + the unsigned integer variants of this function is used to load a uniform + variable of type int, ivec2, ivec3, + ivec4, or an array of these.

GL_INVALID_OPERATION is generated if + location is an invalid uniform location + for the current program object and + location is not equal to -1.

GL_INVALID_VALUE is generated if + count is less than 0.

GL_INVALID_OPERATION is generated if + count is greater than 1 and the indicated + uniform variable is not an array variable.

GL_INVALID_OPERATION is generated if a + sampler is loaded using a command other than + glUniform1i and + glUniform1iv.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveUniform + with the handle of a program object and the index of an active uniform variable

glGetUniform + with the handle of a program object and the location of a + uniform variable

glGetUniformLocation + with the handle of a program object and the name of a uniform + variable

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glUniformBlockBinding.xml b/upstream-man-pages/man4/xhtml/glUniformBlockBinding.xml new file mode 100644 index 0000000..3d9edfe --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glUniformBlockBinding.xml @@ -0,0 +1,40 @@ + + + +glUniformBlockBinding - OpenGL 4 Reference Pages

Name

glUniformBlockBinding — assign a binding point to an active uniform block

C Specification

void glUniformBlockBinding(GLuint  program,
 GLuint  uniformBlockIndex,
 GLuint  uniformBlockBinding);

Parameters

program

+ The name of a program object containing the active uniform block whose binding to assign. +

uniformBlockIndex

+ The index of the active uniform block within program whose binding to assign. +

uniformBlockBinding

+ Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program. +

Description

+ Binding points for active uniform blocks are assigned using glUniformBlockBinding. Each of a program's active uniform + blocks has a corresponding uniform buffer binding point. program is the name of a program object for which the command + glLinkProgram has been issued in the past. +

+ If successful, glUniformBlockBinding specifies that program will use the data store of the + buffer object bound to the binding point uniformBlockBinding to extract the values of the uniforms in the + uniform block identified by uniformBlockIndex. +

+ When a program object is linked or re-linked, the uniform buffer object binding point assigned to each of its active uniform blocks is reset to zero. +

Errors

+ GL_INVALID_VALUE is generated if uniformBlockIndex is not an active uniform block index of program. +

+ GL_INVALID_VALUE is generated if uniformBlockBinding is greater than or equal to the value of GL_MAX_UNIFORM_BUFFER_BINDINGS. +

+ GL_INVALID_VALUE is generated program is not the name of a program object generated by the GL. +

Notes

+ glUniformBlockBinding is available only if the GL version is 3.1 or greater. +

Associated Gets

+ glGetActiveUniformBlock with argument GL_UNIFORM_BLOCK_BINDING +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glUniformSubroutines.xml b/upstream-man-pages/man4/xhtml/glUniformSubroutines.xml new file mode 100644 index 0000000..c24dcc4 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glUniformSubroutines.xml @@ -0,0 +1,48 @@ + + + +glUniformSubroutines - OpenGL 4 Reference Pages

Name

glUniformSubroutines — load active subroutine uniforms

C Specification

void glUniformSubroutinesuiv(GLenum  shadertype,
 GLsizei  count,
 const GLuint * indices);

Parameters

shadertype

+ Specifies the shader stage from which to query for subroutine uniform index. + shadertype + must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, + GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or + GL_FRAGMENT_SHADER. +

count

+ Specifies the number of uniform indices stored in indices. +

indices

+ Specifies the address of an array holding the indices to load into the shader subroutine variables. +

Description

+ glUniformSubroutines loads all active subroutine uniforms for shader stage + shadertype of the current program with subroutine indices from indices, + storing indices[i] into the uniform at location i. + count must be equal to the value of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS + for the program currently in use at shader stage shadertype. Furthermore, all values in + indices must be less than the value of GL_ACTIVE_SUBROUTINES + for the shader stage. +

Errors

+ GL_INVALID_OPERATION is generated if no program object is current. +

+ GL_INVALID_VALUE is generated if count is not equal to the value + of GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS for the shader stage shadertype + of the current program. +

+ GL_INVALID_VALUE is generated if any value in indices is geater + than or equal to the value of GL_ACTIVE_SUBROUTINES for the shader stage shadertype + of the current program. +

+ GL_INVALID_ENUM is generated if shadertype is not one of the accepted values. +

Associated Gets

+ glGetProgramStage with argument GL_ACTIVE_SUBROUTINES +

+ glGetProgramStage with argument GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glUnmapBuffer.xml b/upstream-man-pages/man4/xhtml/glUnmapBuffer.xml new file mode 100644 index 0000000..c6c8249 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glUnmapBuffer.xml @@ -0,0 +1,12 @@ + + + + + + + +glUnmapBuffer + + + + diff --git a/upstream-man-pages/man4/xhtml/glUseProgram.xml b/upstream-man-pages/man4/xhtml/glUseProgram.xml new file mode 100644 index 0000000..90f7588 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glUseProgram.xml @@ -0,0 +1,87 @@ + + + +glUseProgram - OpenGL 4 Reference Pages

Name

glUseProgram — Installs a program object as part of current rendering state

C Specification

void glUseProgram(GLuint program);

Parameters

program

Specifies the handle of the program object + whose executables are to be used as part of current + rendering state.

Description

glUseProgram installs the program + object specified by program as part of + current rendering state. One or more executables are created in + a program object by successfully attaching shader objects to it + with + glAttachShader, + successfully compiling the shader objects with + glCompileShader, + and successfully linking the program object with + glLinkProgram. +

A program object will contain an executable that will run + on the vertex processor if it contains one or more shader + objects of type GL_VERTEX_SHADER that have + been successfully compiled and linked. A program object will contain an + executable that will run on the geometry processor if it contains one or + more shader objects of type GL_GEOMETRY_SHADER that + have been successfully compiled and linked. + Similarly, a program object will contain an executable that will run on the + fragment processor if it contains one or more shader objects of type + GL_FRAGMENT_SHADER that have been + successfully compiled and linked.

While a program object is in use, applications are free to + modify attached shader objects, compile attached shader objects, + attach additional shader objects, and detach or delete shader + objects. None of these operations will affect the executables + that are part of the current state. However, relinking the + program object that is currently in use will install the program + object as part of the current rendering state if the link + operation was successful (see + glLinkProgram + ). If the program object currently in use is relinked + unsuccessfully, its link status will be set to + GL_FALSE, but the executables and + associated state will remain part of the current state until a + subsequent call to glUseProgram removes it + from use. After it is removed from use, it cannot be made part + of current state until it has been successfully relinked.

If program is zero, then the current rendering + state refers to an invalid program object and the + results of shader execution are undefined. However, this is not an error.

If program does not + contain shader objects of type GL_FRAGMENT_SHADER, an + executable will be installed on the vertex, and possibly geometry processors, + but the results of fragment shader execution will be undefined.

Notes

Like buffer and texture objects, the name space for + program objects may be shared across a set of contexts, as long + as the server sides of the contexts share the same address + space. If the name space is shared across contexts, any attached + objects and the data associated with those attached objects are + shared as well.

Applications are responsible for providing the + synchronization across API calls when objects are accessed from + different execution threads.

Errors

GL_INVALID_VALUE is generated if + program is neither 0 nor a value + generated by OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

GL_INVALID_OPERATION is generated if + program could not be made part of current + state.

GL_INVALID_OPERATION is generated if + transform feedback mode is active.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with a valid program object and the index of an active attribute + variable

glGetActiveUniform + with a valid program object and the index of an active uniform + variable

glGetAttachedShaders + with a valid program object

glGetAttribLocation + with a valid program object and the name of an attribute + variable

glGetProgram + with a valid program object and the parameter to be queried

glGetProgramInfoLog + with a valid program object

glGetUniform + with a valid program object and the location of a uniform + variable

glGetUniformLocation + with a valid program object and the name of a uniform + variable

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glUseProgramStages.xml b/upstream-man-pages/man4/xhtml/glUseProgramStages.xml new file mode 100644 index 0000000..8f825c6 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glUseProgramStages.xml @@ -0,0 +1,57 @@ + + + +glUseProgramStages - OpenGL 4 Reference Pages

Name

glUseProgramStages — bind stages of a program object to a program pipeline

C Specification

void glUseProgramStages(GLuint  pipeline,
 GLbitfield  stages,
 GLuint  program);

Parameters

pipeline

+ Specifies the program pipeline object to which to bind stages from program. +

stages

+ Specifies a set of program stages to bind to the program pipeline object. +

program

+ Specifies the program object containing the shader executables to use in pipeline. +

Description

+ glUseProgramStages binds executables from a program object + associated with a specified set of shader stages to the program pipeline object given + by pipeline. + pipeline specifies the program pipeline object to which to bind + the executables. stages contains a logical combination of bits + indicating the shader stages to use within program with the program + pipeline object pipeline. stages must be + a logical combination of GL_VERTEX_SHADER_BIT, + GL_TESS_CONTROL_SHADER_BIT, GL_TESS_EVALUATION_SHADER_BIT, + GL_GEOMETRY_SHADER_BIT, GL_FRAGMENT_SHADER_BIT and GL_COMPUTE_SHADER_BIT. + Additionally, the special value GL_ALL_SHADER_BITS may be specified to + indicate that all executables contained in program should be + installed in pipeline. +

+ If program refers to a program object with a valid shader attached for + an indicated shader stage, glUseProgramStages installs the executable + code for that stage in the indicated program pipeline object pipeline. + If program is zero, or refers to a program object with no valid shader + executable for a given stage, it is as if the pipeline object has no programmable stage configured + for the indicated shader stages. If stages contains bits other than those + listed above, and is not equal to GL_ALL_SHADER_BITS, an error is generated. +

Notes

+ The GL_COMPUTE_SHADER_BIT bit is available only if the GL version is 4.3 or greater. +

Errors

+ GL_INVALID_VALUE is generated if shaders contains + set bits that are not recognized, and is not the reserved value GL_ALL_SHADER_BITS. +

+ GL_INVALID_OPERATION is generated if program refers + to a program object that was not linked with its GL_PROGRAM_SEPARABLE status set. +

+ GL_INVALID_OPERATION is generated if program refers + to a program object that has not been successfully linked. +

+ GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glValidateProgram.xml b/upstream-man-pages/man4/xhtml/glValidateProgram.xml new file mode 100644 index 0000000..e448d41 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glValidateProgram.xml @@ -0,0 +1,53 @@ + + + +glValidateProgram - OpenGL 4 Reference Pages

Name

glValidateProgram — Validates a program object

C Specification

void glValidateProgram(GLuint program);

Parameters

program

Specifies the handle of the program object to + be validated.

Description

glValidateProgram checks to see + whether the executables contained in + program can execute given the current + OpenGL state. The information generated by the validation + process will be stored in program's + information log. The validation information may consist of an + empty string, or it may be a string containing information about + how the current program object interacts with the rest of + current OpenGL state. This provides a way for OpenGL + implementers to convey more information about why the current + program is inefficient, suboptimal, failing to execute, and so + on.

The status of the validation operation will be stored as + part of the program object's state. This value will be set to + GL_TRUE if the validation succeeded, and + GL_FALSE otherwise. It can be queried by + calling + glGetProgram + with arguments program and + GL_VALIDATE_STATUS. If validation is + successful, program is guaranteed to + execute given the current state. Otherwise, + program is guaranteed to not execute.

This function is typically useful only during application + development. The informational string stored in the information + log is completely implementation dependent; therefore, an + application should not expect different OpenGL implementations + to produce identical information strings.

Notes

This function mimics the validation operation that OpenGL + implementations must perform when rendering commands are issued + while programmable shaders are part of current state. The error + GL_INVALID_OPERATION will be generated by + any command that triggers the rendering of geometry if:

  • any two active samplers in the current program + object are of different types, but refer to the same + texture image unit,

  • the number of active samplers in the program exceeds the maximum + number of texture image units allowed.

It may be difficult or cause a performance degradation for + applications to catch these errors when rendering commands are + issued. Therefore, applications are advised to make calls to + glValidateProgram to detect these issues + during application development.

Errors

GL_INVALID_VALUE is generated if + program is not a value generated by + OpenGL.

GL_INVALID_OPERATION is generated if + program is not a program object.

Associated Gets

glGetProgram + with arguments program and + GL_VALIDATE_STATUS

glGetProgramInfoLog + with argument program

glIsProgram

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glValidateProgramPipeline.xml b/upstream-man-pages/man4/xhtml/glValidateProgramPipeline.xml new file mode 100644 index 0000000..8e1bedd --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glValidateProgramPipeline.xml @@ -0,0 +1,40 @@ + + + +glValidateProgramPipeline - OpenGL 4 Reference Pages

Name

glValidateProgramPipeline — validate a program pipeline object against current GL state

C Specification

void glValidateProgramPipeline(GLuint  pipeline);

Parameters

pipeline

+ Specifies the name of a program pipeline object to validate. +

Description

+ glValidateProgramPipeline instructs the implementation to validate the + shader executables contained in pipeline against the current GL state. + The implementation may use this as an opportunity to perform any internal shader modifications + that may be required to ensure correct operation of the installed shaders given the + current GL state. +

+ After a program pipeline has been validated, its validation status is set to GL_TRUE. + The validation status of a program pipeline object may be queried by calling + glGetProgramPipeline with + parameter GL_VALIDATE_STATUS. +

+ If pipeline is a name previously returned from a call to + glGenProgramPipelines but + that has not yet been bound by a call to glBindProgramPipeline, + a new program pipeline object is created with name pipeline and + the default state vector. +

Errors

+ GL_INVALID_OPERATION is generated if pipeline is not + a name previously returned from a call to glGenProgramPipelines + or if such a name has been deleted by a call to + glDeleteProgramPipelines. +

Associated Gets

+ glGetProgramPipeline + with parameter GL_VALIDATE_STATUS. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glVertexAttrib.xml b/upstream-man-pages/man4/xhtml/glVertexAttrib.xml new file mode 100644 index 0000000..15fcb6f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glVertexAttrib.xml @@ -0,0 +1,133 @@ + + + +glVertexAttrib - OpenGL 4 Reference Pages

Name

glVertexAttrib — Specifies the value of a generic vertex attribute

C Specification

void glVertexAttrib1f(GLuint  index,
 GLfloat  v0);
void glVertexAttrib1s(GLuint  index,
 GLshort  v0);
void glVertexAttrib1d(GLuint  index,
 GLdouble  v0);
void glVertexAttribI1i(GLuint  index,
 GLint  v0);
void glVertexAttribI1ui(GLuint  index,
 GLuint  v0);
void glVertexAttrib2f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1);
void glVertexAttrib2s(GLuint  index,
 GLshort  v0,
 GLshort  v1);
void glVertexAttrib2d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1);
void glVertexAttribI2i(GLuint  index,
 GLint  v0,
 GLint  v1);
void glVertexAttribI2ui(GLuint  index,
 GLuint  v0,
 GLuint  v1);
void glVertexAttrib3f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2);
void glVertexAttrib3s(GLuint  index,
 GLshort  v0,
 GLshort  v1,
 GLshort  v2);
void glVertexAttrib3d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2);
void glVertexAttribI3i(GLuint  index,
 GLint  v0,
 GLint  v1,
 GLint  v2);
void glVertexAttribI3ui(GLuint  index,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2);
void glVertexAttrib4f(GLuint  index,
 GLfloat  v0,
 GLfloat  v1,
 GLfloat  v2,
 GLfloat  v3);
void glVertexAttrib4s(GLuint  index,
 GLshort  v0,
 GLshort  v1,
 GLshort  v2,
 GLshort  v3);
void glVertexAttrib4d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2,
 GLdouble  v3);
void glVertexAttrib4Nub(GLuint  index,
 GLubyte  v0,
 GLubyte  v1,
 GLubyte  v2,
 GLubyte  v3);
void glVertexAttribI4i(GLuint  index,
 GLint  v0,
 GLint  v1,
 GLint  v2,
 GLint  v3);
void glVertexAttribI4ui(GLuint  index,
 GLuint  v0,
 GLuint  v1,
 GLuint  v2,
 GLuint  v3);
void glVertexAttribL1d(GLuint  index,
 GLdouble  v0);
void glVertexAttribL2d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1);
void glVertexAttribL3d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2);
void glVertexAttribL4d(GLuint  index,
 GLdouble  v0,
 GLdouble  v1,
 GLdouble  v2,
 GLdouble  v3);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

+ v0, + v1, + v2, + v3 +

Specifies the new values to be used for the + specified vertex attribute.

C Specification

void glVertexAttrib1fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib1sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib1dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribI1iv(GLuint  index,
 const GLint * v);
void glVertexAttribI1uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib2fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib2sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib2dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribI2iv(GLuint  index,
 const GLint * v);
void glVertexAttribI2uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib3fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib3sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib3dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribI3iv(GLuint  index,
 const GLint * v);
void glVertexAttribI3uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib4fv(GLuint  index,
 const GLfloat * v);
void glVertexAttrib4sv(GLuint  index,
 const GLshort * v);
void glVertexAttrib4dv(GLuint  index,
 const GLdouble * v);
void glVertexAttrib4iv(GLuint  index,
 const GLint * v);
void glVertexAttrib4bv(GLuint  index,
 const GLbyte * v);
void glVertexAttrib4ubv(GLuint  index,
 const GLubyte * v);
void glVertexAttrib4usv(GLuint  index,
 const GLushort * v);
void glVertexAttrib4uiv(GLuint  index,
 const GLuint * v);
void glVertexAttrib4Nbv(GLuint  index,
 const GLbyte * v);
void glVertexAttrib4Nsv(GLuint  index,
 const GLshort * v);
void glVertexAttrib4Niv(GLuint  index,
 const GLint * v);
void glVertexAttrib4Nubv(GLuint  index,
 const GLubyte * v);
void glVertexAttrib4Nusv(GLuint  index,
 const GLushort * v);
void glVertexAttrib4Nuiv(GLuint  index,
 const GLuint * v);
void glVertexAttribI4bv(GLuint  index,
 const GLbyte * v);
void glVertexAttribI4ubv(GLuint  index,
 const GLubyte * v);
void glVertexAttribI4sv(GLuint  index,
 const GLshort * v);
void glVertexAttribI4usv(GLuint  index,
 const GLushort * v);
void glVertexAttribI4iv(GLuint  index,
 const GLint * v);
void glVertexAttribI4uiv(GLuint  index,
 const GLuint * v);
void glVertexAttribL1dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribL2dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribL3dv(GLuint  index,
 const GLdouble * v);
void glVertexAttribL4dv(GLuint  index,
 const GLdouble * v);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

v

Specifies a pointer to an array of values to + be used for the generic vertex attribute.

C Specification

void glVertexAttribP1ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);
void glVertexAttribP2ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);
void glVertexAttribP3ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);
void glVertexAttribP4ui(GLuint  index,
 GLenum  type,
 GLboolean  normalized,
 GLuint  value);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

type

Type of packing used on the data. This parameter must be + GL_INT_10_10_10_2 or GL_UNSIGNED_INT_10_10_10_2 + to specify signed or unsigned data, respectively.

normalized

If GL_TRUE, then the values are to be + converted to floating point values by normalizing. Otherwise, + they are converted directly to floating point values.

+ value +

Specifies the new packed value to be used for the + specified vertex attribute.

Description

The glVertexAttrib family of entry points + allows an application to pass generic vertex attributes in + numbered locations.

Generic attributes are defined as four-component values + that are organized into an array. The first entry of this array + is numbered 0, and the size of the array is specified by the + implementation-dependent constant + GL_MAX_VERTEX_ATTRIBS. Individual elements + of this array can be modified with a + glVertexAttrib call that specifies the + index of the element to be modified and a value for that + element.

These commands can be used to specify one, two, three, or + all four components of the generic vertex attribute specified by + index. A 1 in the + name of the command indicates that only one value is passed, and + it will be used to modify the first component of the generic + vertex attribute. The second and third components will be set to + 0, and the fourth component will be set to 1. Similarly, a + 2 in the name of the command indicates that + values are provided for the first two components, the third + component will be set to 0, and the fourth component will be set + to 1. A 3 in the name of the command + indicates that values are provided for the first three + components and the fourth component will be set to 1, whereas a + 4 in the name indicates that values are + provided for all four components.

The letters s, + f, i, + d, ub, + us, and ui indicate + whether the arguments are of type short, float, int, double, + unsigned byte, unsigned short, or unsigned int. When + v is appended to the name, the commands can + take a pointer to an array of such values.

Additional capitalized letters can indicate further alterations + to the default behavior of the glVertexAttrib function:

+ The commands containing N indicate that + the arguments will be passed as fixed-point values that are + scaled to a normalized range according to the component + conversion rules defined by the OpenGL specification. Signed + values are understood to represent fixed-point values in the + range [-1,1], and unsigned values are understood to represent + fixed-point values in the range [0,1]. +

+ The commands containing I indicate that + the arguments are extended to full signed or unsigned integers. +

+ The commands containing P indicate that + the arguments are stored as packed components within a larger + natural type. +

+ The commands containing L indicate that + the arguments are full 64-bit quantities and should be passed directly + to shader inputs declared as 64-bit double precision types. +

OpenGL Shading Language attribute variables are allowed to + be of type mat2, mat3, or mat4. Attributes of these types may be + loaded using the glVertexAttrib entry + points. Matrices must be loaded into successive generic + attribute slots in column major order, with one column of the + matrix in each generic attribute slot.

A user-defined attribute variable declared in a vertex + shader can be bound to a generic attribute index by calling + glBindAttribLocation. + This allows an application to use more descriptive variable + names in a vertex shader. A subsequent change to the specified + generic vertex attribute will be immediately reflected as a + change to the corresponding attribute variable in the vertex + shader.

The binding between a generic vertex attribute index and a + user-defined attribute variable in a vertex shader is part of + the state of a program object, but the current value of the + generic vertex attribute is not. The value of each generic + vertex attribute is part of current state, just like standard + vertex attributes, and it is maintained even if a different + program object is used.

An application may freely modify generic vertex attributes + that are not bound to a named vertex shader attribute variable. + These values are simply maintained as part of current state and + will not be accessed by the vertex shader. If a generic vertex + attribute bound to an attribute variable in a vertex shader is + not updated while the vertex shader is executing, the vertex + shader will repeatedly use the current value for the generic + vertex attribute.

Notes

Generic vertex attributes can be updated at any time.

It is possible for an application to bind more than one + attribute name to the same generic vertex attribute index. This + is referred to as aliasing, and it is allowed only if just one + of the aliased attribute variables is active in the vertex + shader, or if no path through the vertex shader consumes more + than one of the attributes aliased to the same location. OpenGL + implementations are not required to do error checking to detect + aliasing, they are allowed to assume that aliasing will not + occur, and they are allowed to employ optimizations that work + only in the absence of aliasing.

There is no provision for binding standard vertex + attributes; therefore, it is not possible to alias generic + attributes with standard attributes.

+ glVertexAttribL versions are available only if the GL version is 4.1 or higher. +

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_ENUM is generated if + glVertexAttribP is used with a + type other than + GL_INT_10_10_10_2 or + GL_UNSIGNED_INT_10_10_10_2.

GL_INVALID_ENUM is generated if + glVertexAttribL is used with a + type other than + GL_DOUBLE.

Associated Gets

glGet + with the argument GL_CURRENT_PROGRAM

glGetActiveAttrib + with argument program and the index of an active + attribute variable

glGetAttribLocation + with argument program and an attribute + variable name

glGetVertexAttrib + with arguments GL_CURRENT_VERTEX_ATTRIB and + index

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glVertexAttribBinding.xml b/upstream-man-pages/man4/xhtml/glVertexAttribBinding.xml new file mode 100644 index 0000000..9ba543f --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glVertexAttribBinding.xml @@ -0,0 +1,35 @@ + + + +glVertexAttribBinding - OpenGL 4 Reference Pages

Name

glVertexAttribBinding — associate a vertex attribute and a vertex buffer binding

C Specification

void glVertexAttribBinding(GLuint  attribindex,
 GLuint  bindingindex);

Parameters

attribindex

+ The index of the attribute to associate with a vertex buffer binding. +

bindingindex

+ The index of the vertex buffer binding with which to associate the generic vertex attribute. +

Description

+ glVertexAttribBinding, establishes an association between the generic vertex + attribute whose index is given by attribindex and a vertex buffer binding + whose index is given by bindingindex. attribindex + must be less than the value of GL_MAX_VERTEX_ATTRIBS and bindingindex + must be less than the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. +

Errors

+ GL_INVALID_VALUE is generated if attribindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIBS. +

+ GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. +

+ GL_INVALID_OPERATION is generated if no vertex array object is bound. +

Associated Gets

+ glGet with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, + GL_VERTEX_BINDING_DIVISOR. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glVertexAttribDivisor.xml b/upstream-man-pages/man4/xhtml/glVertexAttribDivisor.xml new file mode 100644 index 0000000..80abc30 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glVertexAttribDivisor.xml @@ -0,0 +1,30 @@ + + + +glVertexAttribDivisor - OpenGL 4 Reference Pages

Name

glVertexAttribDivisor — modify the rate at which generic vertex attributes advance during instanced rendering

C Specification

void glVertexAttribDivisor(GLuint  index,
 GLuint  divisor);

Parameters

index

+ Specify the index of the generic vertex attribute. +

divisor

+ Specify the number of instances that will pass between updates of the generic attribute at slot index. +

Description

+ glVertexAttribDivisor modifies the rate at which generic vertex attributes advance when rendering + multiple instances of primitives in a single draw call. If divisor is zero, the attribute at slot + index advances once per vertex. If divisor is non-zero, the attribute advances + once per divisor instances of the set(s) of vertices being rendered. An attribute + is referred to as instanced if its GL_VERTEX_ATTRIB_ARRAY_DIVISOR value is non-zero. +

+ index must be less than the value of GL_MAX_VERTEX_ATTRIBUTES. +

Notes

+ glVertexAttribDivisor is available only if the GL version is 3.3 or higher. +

Errors

+ GL_INVALID_VALUE is generated if index is greater + than or equal to the value of GL_MAX_VERTEX_ATTRIBUTES. +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glVertexAttribFormat.xml b/upstream-man-pages/man4/xhtml/glVertexAttribFormat.xml new file mode 100644 index 0000000..d04ebbb --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glVertexAttribFormat.xml @@ -0,0 +1,89 @@ + + + +glVertexAttribFormat - OpenGL 4 Reference Pages

Name

glVertexAttribFormat — specify the organization of vertex arrays

C Specification

void glVertexAttribFormat(GLuint  attribindex,
 GLint  size,
 GLenum  type,
 GLboolean  normalized,
 GLuint  relativeoffset);
void glVertexAttribIFormat(GLuint  attribindex,
 GLint  size,
 GLenum  type,
 GLuint  relativeoffset);
void glVertexAttribLFormat(GLuint  attribindex,
 GLint  size,
 GLenum  type,
 GLuint  relativeoffset);

Parameters

attribindex

+ The generic vertex attribute array being described. +

size

+ The number of values per vertex that are stored in the array. +

type

+ The type of the data stored in the array. +

normalized

+ The distance between elements within the buffer. +

relativeoffset

+ The distance between elements within the buffer. +

Description

+ glVertexAttribFormat, glVertexAttribIFormat and + glVertexAttribLFormat specify the organization of data in vertex arrays. + attribindex specifies the index of the generic vertex attribute + array whose data layout is being described, and must be less + than the value of GL_MAX_VERTEX_ATTRIBS. +

+ size determines the number of components per vertex are allocated + to the specifed attribute and must be 1, 2, 3 or 4. type indicates + the type of the data. If type is one of GL_BYTE, + GL_SHORT, GL_INT, GL_FIXED, + GL_FLOAT, GL_HALF_FLOAT, and + GL_DOUBLE indicate types GLbyte, GLshort, + GLint, GLfixed, GLfloat, GLhalf, and + GLdouble, respectively; the values GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT, and GL_UNSIGNED_INT indicate types + GLubyte, GLushort, and GLuint, + respectively; and the values GL_INT_2_10_10_10_REV and + GL_UNSIGNED_INT_2_10_10_10_REV indicating respectively four signed or + unsigned elements packed into a single GLuint. +

+ glVertexAttribLFormat is used to specify layout for + data associated with a generic attribute variable declared as 64-bit double precision + components. For glVertexAttribLFormat, type + must be GL_DOUBLE. In contrast to glVertexAttribFormat, + which will cause data declared as GL_DOUBLE to be converted to 32-bit + representation, glVertexAttribLFormat causes such data to be left + in its natural, 64-bit representation. +

+ For glVertexAttribFormat, if normalized is + GL_TRUE, then integer data is normalized to the range [-1, 1] or + [0, 1] if it is signed or unsigned, respectively. If noramlized is + GL_FALSE then integer data is directly converted to floating point. +

+ relativeoffset is the offset, measured in basic machine units + of the first element relative to the start of the vertex buffer binding this attribute + fetches from. +

+ glVertexAttribFormat should be used to describe vertex attribute + layout for floating-point vertex attributes, glVertexAttribIFormat + should be used to describe vertex attribute layout for integer vertex attribute + and glVertexAttribLFormat should be used to describe the layout + for 64-bit vertex attributes. Data for an array specified by + glVertexAttribIFormat will always be left as integer values; + such data are referred to as pure integers. +

Errors

+ GL_INVAILD_VALUE is generated if attribindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIBS. +

+ GL_INVALID_VALUE is generated if size is not + one of the accepted values. +

+ GL_INVALID_VALUE is generated if relativeoffset is greater + than the value of GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET. +

+ GL_INVALID_ENUM is generated if type is not + one of the accepted tokens. +

+ GL_INVALID_OPERATION is generated if no vertex array object is bound. +

Associated Gets

+ glGet with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, + or GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET. +

+ glGetVertexAttrib with argument GL_VERTEX_ATTRIB_RELATIVE_OFFSET. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glVertexAttribPointer.xml b/upstream-man-pages/man4/xhtml/glVertexAttribPointer.xml new file mode 100644 index 0000000..12cc854 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glVertexAttribPointer.xml @@ -0,0 +1,122 @@ + + + +glVertexAttribPointer - OpenGL 4 Reference Pages

Name

glVertexAttribPointer — define an array of generic vertex attribute data

C Specification

void glVertexAttribPointer(GLuint  index,
 GLint  size,
 GLenum  type,
 GLboolean  normalized,
 GLsizei  stride,
 const GLvoid *  pointer);
void glVertexAttribIPointer(GLuint  index,
 GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);
void glVertexAttribLPointer(GLuint  index,
 GLint  size,
 GLenum  type,
 GLsizei  stride,
 const GLvoid *  pointer);

Parameters

index

Specifies the index of the generic vertex + attribute to be modified.

size

Specifies the number of components per + generic vertex attribute. Must + be 1, 2, 3, 4. Additionally, the symbolic constant GL_BGRA + is accepted by glVertexAttribPointer. The initial value is 4.

type

Specifies the data type of each component in + the array. The symbolic constants + GL_BYTE, + GL_UNSIGNED_BYTE, + GL_SHORT, + GL_UNSIGNED_SHORT, + GL_INT, and + GL_UNSIGNED_INT are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally + GL_HALF_FLOAT, + GL_FLOAT, + GL_DOUBLE, + GL_FIXED, + GL_INT_2_10_10_10_REV, and + GL_UNSIGNED_INT_2_10_10_10_REV are accepted by glVertexAttribPointer. + GL_DOUBLE is also accepted by glVertexAttribLPointer and is + the only token accepted by the type parameter for that function. + The initial value is GL_FLOAT.

normalized

For glVertexAttribPointer, specifies whether fixed-point data values + should be normalized (GL_TRUE) + or converted directly as fixed-point values + (GL_FALSE) when they are + accessed.

stride

Specifies the byte offset between consecutive + generic vertex attributes. If stride + is 0, the generic vertex attributes are + understood to be tightly packed in the + array. The initial value is 0.

pointer

Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the + buffer currently bound to the GL_ARRAY_BUFFER target. The initial value is 0.

Description

+ glVertexAttribPointer, glVertexAttribIPointer and glVertexAttribLPointer + specify the + location and data format of the array of generic vertex attributes at index index + to use when rendering. size specifies the number of components per attribute and + must be 1, 2, 3, 4, or GL_BGRA. type specifies the data type + of each component, and stride specifies the byte stride from one attribute to the next, + allowing vertices and attributes to be packed into a single array or stored in separate arrays. +

+ For glVertexAttribPointer, if normalized is set to GL_TRUE, + it indicates that values stored in an integer format are to be mapped to the range [-1,1] (for signed values) or [0,1] (for + unsigned values) when they are accessed and converted to floating point. Otherwise, values will + be converted to floats directly without normalization. +

+ For glVertexAttribIPointer, only the integer types GL_BYTE, + GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, + GL_INT, GL_UNSIGNED_INT are accepted. Values are always left as integer values. +

+ glVertexAttribLPointer specifies state for a generic vertex attribute array associated + with a shader attribute variable declared with 64-bit double precision components. type + must be GL_DOUBLE. index, size, and + stride behave as described for glVertexAttribPointer and + glVertexAttribIPointer. +

+ If pointer is not NULL, a non-zero named buffer object must be bound to the + GL_ARRAY_BUFFER target (see glBindBuffer), + otherwise an error is generated. pointer is treated as a byte offset into the buffer object's data store. + The buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array + state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index. +

+ When a generic vertex attribute array is specified, + size, type, + normalized, + stride, and + pointer are saved as vertex array + state, in addition to the current vertex array buffer object binding. +

+ To enable and disable a generic vertex attribute array, call + glEnableVertexAttribArray and + glDisableVertexAttribArray with index. + If enabled, the generic vertex attribute array is used when glDrawArrays, + glMultiDrawArrays, glDrawElements, + glMultiDrawElements, or glDrawRangeElements + is called. +

Notes

+ Each generic vertex attribute array is initially disabled and isn't accessed when + glDrawElements, glDrawRangeElements, + glDrawArrays, glMultiDrawArrays, or glMultiDrawElements + is called. +

Errors

GL_INVALID_VALUE is generated if + index is greater than or equal to + GL_MAX_VERTEX_ATTRIBS.

GL_INVALID_VALUE is generated if + size is not 1, 2, 3, 4 or (for glVertexAttribPointer), + GL_BGRA.

GL_INVALID_ENUM is generated if + type is not an accepted value.

GL_INVALID_VALUE is generated if + stride is negative.

GL_INVALID_OPERATION is generated if size + is GL_BGRA and type is not GL_UNSIGNED_BYTE, + GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV.

GL_INVALID_OPERATION is generated if type + is GL_INT_2_10_10_10_REV or GL_UNSIGNED_INT_2_10_10_10_REV + and size is not 4 or GL_BGRA.

GL_INVALID_OPERATION is generated by glVertexAttribPointer + if size is GL_BGRA and noramlized + is GL_FALSE.

GL_INVALID_OPERATION is generated if zero is bound to the + GL_ARRAY_BUFFER buffer object binding point and the + pointer argument is not NULL.

Associated Gets

glGet + with argument GL_MAX_VERTEX_ATTRIBS

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_ENABLED

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_SIZE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_TYPE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_NORMALIZED

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_STRIDE

glGetVertexAttrib + with arguments index and GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING

glGet with argument + GL_ARRAY_BUFFER_BINDING

glGetVertexAttribPointerv + with arguments index and + GL_VERTEX_ATTRIB_ARRAY_POINTER

Copyright

+ Copyright © 2003-2005 3Dlabs Inc. Ltd. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glVertexBindingDivisor.xml b/upstream-man-pages/man4/xhtml/glVertexBindingDivisor.xml new file mode 100644 index 0000000..5b8e3e6 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glVertexBindingDivisor.xml @@ -0,0 +1,35 @@ + + + +glVertexBindingDivisor - OpenGL 4 Reference Pages

Name

glVertexBindingDivisor — modify the rate at which generic vertex attributes advance

C Specification

void glVertexBindingDivisor(GLuint  bindingindex,
 GLuint  divisor);

Parameters

bindingindex

+ The index of the binding whose divisor to modify. +

divisor

+ The new value for the instance step rate to apply. +

Description

+ glVertexBindingDivisor, modifies the rate at which generic vertex attributes advance when + rendering multiple instances of primitives in a single draw command. If + divisor is zero, the attributes using the buffer bound to bindingindex + advance once per vertex. If divisor is non-zero, the attributes advance + once per divisor instances of the set(s) of vertices being rendered. An + attribute is referred to as instanced if the corresponding divisor + value is non-zero. +

Errors

+ GL_INVAILD_VALUE is generated if bindingindex is greater than + or equal to the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. +

+ GL_INVALID_OPERATION is generated if no vertex array object is bound. +

Associated Gets

+ glGet with arguments GL_MAX_VERTEX_ATTRIB_BINDINGS, + GL_VERTEX_BINDING_DIVISOR. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glViewport.xml b/upstream-man-pages/man4/xhtml/glViewport.xml new file mode 100644 index 0000000..37c7c09 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glViewport.xml @@ -0,0 +1,124 @@ + + + +glViewport - OpenGL 4 Reference Pages

Name

glViewport — set the viewport

C Specification

void glViewport(GLint  x,
 GLint  y,
 GLsizei  width,
 GLsizei  height);

Parameters

x, y

+ Specify the lower left corner of the viewport rectangle, + in pixels. The initial value is (0,0). +

width, height

+ Specify the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

Description

+ glViewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: +

+

+ + + x + w + + = + + + + x + nd + + + + 1 + + + ⁢ + + + width + 2 + + + + + x + + +

+

+

+ + + y + w + + = + + + + y + nd + + + + 1 + + + ⁢ + + + height + 2 + + + + + y + + +

+

+ Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. +

Errors

+ GL_INVALID_VALUE is generated if either width or height is negative. +

Associated Gets

+ glGet with argument GL_VIEWPORT +

+ glGet with argument GL_MAX_VIEWPORT_DIMS +

See Also

+ glDepthRange +

Copyright

+ Copyright © 1991-2006 + Silicon Graphics, Inc. This document is licensed under the SGI + Free Software B License. For details, see + http://oss.sgi.com/projects/FreeB/. +

diff --git a/upstream-man-pages/man4/xhtml/glViewportArray.xml b/upstream-man-pages/man4/xhtml/glViewportArray.xml new file mode 100644 index 0000000..5437b62 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glViewportArray.xml @@ -0,0 +1,161 @@ + + + +glViewportArray - OpenGL 4 Reference Pages

Name

glViewportArray — set multiple viewports

C Specification

void glViewportArrayv(GLuint  first,
 GLsizei  count,
 const GLfloat * v);

Parameters

first

+ Specify the first viewport to set. +

count

+ Specify the number of viewports to set. +

v

+ Specify the address of an array containing the viewport parameters. +

Description

+ glViewportArrayv specifies the parameters for multiple viewports + simulataneously. first specifies the index of the first viewport + to modify and count specifies the number of viewports to modify. + first must be less than the value of GL_MAX_VIEWPORTS, + and first + count must be less than or equal to + the value of GL_MAX_VIEWPORTS. Viewports whose indices lie outside + the range [first, first + count) + are not modified. v contains the address of an array of floating + point values specifying the + left (x), + bottom (y), + width (w), + and height (h) + of each viewport, in that order. x + and y give + the location of the viewport's lower left corner, and + w + and h + give the width and height of the viewport, respectively. + The viewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: +

+

+ + + x + w + + = + + + + x + nd + + + + 1 + + + ⁢ + + + width + 2 + + + + + x + + +

+

+

+ + + y + w + + = + + + + y + nd + + + + 1 + + + ⁢ + + + height + 2 + + + + + y + + +

+

+ The location of the viewport's bottom left corner, given by + (x, y) + is clamped to be within the implementaiton-dependent viewport bounds range. + The viewport bounds range [min, max] + can be determined by calling glGet with argument + GL_VIEWPORT_BOUNDS_RANGE. + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. +

+ The precision with which the GL interprets the floating point viewport bounds is implementation-dependent + and may be determined by querying the impementation-defined constant GL_VIEWPORT_SUBPIXEL_BITS. +

Errors

+ GL_INVALID_VALUE is generated if first is greater than or equal to + the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if first + count + is greater than or equal to the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

Associated Gets

+ glGet with argument GL_VIEWPORT +

+ glGet with argument GL_MAX_VIEWPORT_DIMS +

+ glGet with argument GL_VIEWPORT_BOUNDS_RANGE +

+ glGet with argument GL_VIEWPORT_SUBPIXEL_BITS +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glViewportIndexed.xml b/upstream-man-pages/man4/xhtml/glViewportIndexed.xml new file mode 100644 index 0000000..2e86ac7 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glViewportIndexed.xml @@ -0,0 +1,175 @@ + + + +glViewportIndexed - OpenGL 4 Reference Pages

Name

glViewportIndexed — set a specified viewport

C Specification

void glViewportIndexedf(GLuint  index,
 GLfloat  x,
 GLfloat  y,
 GLfloat  w,
 GLfloat  h);
void glViewportIndexedfv(GLuint  index,
 const GLfloat * v);

Parameters

index

+ Specify the first viewport to set. +

x, y

+ For glViewportIndexedf, specifies the lower left corner of + the viewport rectangle, in pixels. The initial value is (0,0). +

width, height

+ For glViewportIndexedf, specifies the width and height + of the viewport. + When a GL context is first attached to a window, + width and height are set to the dimensions of that + window. +

v

+ For glViewportIndexedfv, specifies the address of an array containing the viewport parameters. +

Description

+ glViewportIndexedf and glViewportIndexedfv + specify the parameters for a single viewport. + index specifies the index of the viewport + to modify. + index must be less than the value of GL_MAX_VIEWPORTS. + For glViewportIndexedf, x, y, + w, and h specify the left, bottom, width and height + of the viewport in pixels, respectively. + For glViewportIndexedfv, v contains the address of an array of floating + point values specifying the + left (x), + bottom (y), + width (w), + and height (h) + of each viewport, in that order. x + and y give + the location of the viewport's lower left corner, and + w + and h + give the width and height of the viewport, respectively. + The viewport specifies the affine transformation of + x + and + y + from + normalized device coordinates to window coordinates. + Let + + + + x + nd + + y + nd + + + + be normalized device coordinates. + Then the window coordinates + + + + x + w + + y + w + + + + are computed as follows: +

+

+ + + x + w + + = + + + + x + nd + + + + 1 + + + ⁢ + + + width + 2 + + + + + x + + +

+

+

+ + + y + w + + = + + + + y + nd + + + + 1 + + + ⁢ + + + height + 2 + + + + + y + + +

+

+ The location of the viewport's bottom left corner, given by + (x, y) + is clamped to be within the implementaiton-dependent viewport bounds range. + The viewport bounds range [min, max] + can be determined by calling glGet with argument + GL_VIEWPORT_BOUNDS_RANGE. + Viewport width and height are silently clamped + to a range that depends on the implementation. + To query this range, call glGet with argument + GL_MAX_VIEWPORT_DIMS. +

+ The precision with which the GL interprets the floating point viewport bounds is implementation-dependent + and may be determined by querying the impementation-defined constant GL_VIEWPORT_SUBPIXEL_BITS. +

+ Calling glViewportIndexedfv is equivalent to calling glViewportArray + with first set to index, count set to + 1 and v passsed directly. glViewportIndexedf is equivalent + to: +

    void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+    {
+        const float v[4]  = { x, y, w, h };
+        glViewportArrayv(index, 1, v);
+    }

Errors

+ GL_INVALID_VALUE is generated if index is greater than or equal to + the value of GL_MAX_VIEWPORTS. +

+ GL_INVALID_VALUE is generated if either width or height is negative. +

Associated Gets

+ glGet with argument GL_VIEWPORT +

+ glGet with argument GL_MAX_VIEWPORT_DIMS +

+ glGet with argument GL_VIEWPORT_BOUNDS_RANGE +

+ glGet with argument GL_VIEWPORT_SUBPIXEL_BITS +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/glWaitSync.xml b/upstream-man-pages/man4/xhtml/glWaitSync.xml new file mode 100644 index 0000000..3a90c19 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/glWaitSync.xml @@ -0,0 +1,37 @@ + + + +glWaitSync - OpenGL 4 Reference Pages

Name

glWaitSync — instruct the GL server to block until the specified sync object becomes signaled

C Specification

void glWaitSync(GLsync  sync,
 GLbitfield  flags,
 GLuint64  timeout);

Parameters

sync

+ Specifies the sync object whose status to wait on. +

flags

+ A bitfield controlling the command flushing behavior. flags may be zero. +

timeout

+ Specifies the timeout that the server should wait before continuing. timeout must be GL_TIMEOUT_IGNORED. +

Description

+ glWaitSync causes the GL server to block and wait until sync becomes signaled. sync + is the name of an existing sync object upon which to wait. flags and timeout are currently not used and + must be set to zero and the special value GL_TIMEOUT_IGNORED, respectively[1]. glWaitSync will always wait no longer than an implementation-dependent timeout. The + duration of this timeout in nanoseconds may be queried by calling glGet with the + parameter GL_MAX_SERVER_WAIT_TIMEOUT. There is currently no way to determine whether glWaitSync unblocked + because the timeout expired or because the sync object being waited on was signaled. +

+ If an error occurs, glWaitSync does not cause the GL server to block. +

Notes

+ glWaitSync is available only if the GL version is 3.2 or higher. +

Errors

+ GL_INVALID_OPERATION is generated if sync is not the name of a sync object. +

+ GL_INVALID_VALUE is generated if flags is not zero. +

+ GL_INVALID_VALUE is generated if timeout is not GL_TIMEOUT_IGNORED. +

See Also

+ glFenceSync, + glClientWaitSync +

Copyright

+ Copyright © 2010 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +



[1] flags and + timeout are placeholders for anticipated future extensions of sync object capabilities. They must have these reserved values in + order that existing code calling glWaitSync operate properly in the presence of such extensions.

diff --git a/upstream-man-pages/man4/xhtml/index.html b/upstream-man-pages/man4/xhtml/index.html new file mode 100644 index 0000000..cd71969 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/index.html @@ -0,0 +1,413 @@ + + + +OpenGL Documentation + + + +

OpenGL 4 Reference Pages

+

+ +
A   B   C   D   E   F   G   H   I   L   M   O   P   Q   R   S   T   U   V   W  
+ + +


+ + + + + +
A
glActiveShaderProgram
glActiveTexture
glAttachShader
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
B
glBeginConditionalRender
glBeginQuery
glBeginQueryIndexed
glBeginTransformFeedback
glBindAttribLocation
glBindBuffer
glBindBufferBase
glBindBufferRange
glBindFragDataLocation
glBindFragDataLocationIndexed
glBindFramebuffer
glBindImageTexture
glBindProgramPipeline
glBindRenderbuffer
glBindSampler
glBindTexture
glBindTransformFeedback
glBindVertexArray
glBindVertexBuffer
glBlendColor
glBlendEquation
glBlendEquationSeparate
glBlendFunc
glBlendFuncSeparate
glBlitFramebuffer
glBufferData
glBufferSubData
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
C
glCheckFramebufferStatus
glClampColor
glClear
glClearBuffer
glClearBufferData
glClearBufferSubData
glClearColor
glClearDepth
glClearStencil
glClientWaitSync
glColorMask
glCompileShader
glCompressedTexImage1D
glCompressedTexImage2D
glCompressedTexImage3D
glCompressedTexSubImage1D
glCompressedTexSubImage2D
glCompressedTexSubImage3D
glCopyBufferSubData
glCopyImageSubData
glCopyTexImage1D
glCopyTexImage2D
glCopyTexSubImage1D
glCopyTexSubImage2D
glCopyTexSubImage3D
glCreateProgram
glCreateShader
glCreateShaderProgram
glCullFace
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
D
glDebugMessageCallback
glDebugMessageControl
glDebugMessageInsert
glDeleteBuffers
glDeleteFramebuffers
glDeleteProgram
glDeleteProgramPipelines
glDeleteQueries
glDeleteRenderbuffers
glDeleteSamplers
glDeleteShader
glDeleteSync
glDeleteTextures
glDeleteTransformFeedbacks
glDeleteVertexArrays
glDepthFunc
glDepthMask
glDepthRange
glDepthRangeArray
glDepthRangeIndexed
glDetachShader
glDisable
glDisableVertexAttribArray
glDispatchCompute
glDispatchComputeIndirect
glDrawArrays
glDrawArraysIndirect
glDrawArraysInstanced
glDrawArraysInstancedBaseInstance
glDrawBuffer
glDrawBuffers
glDrawElements
glDrawElementsBaseVertex
glDrawElementsIndirect
glDrawElementsInstanced
glDrawElementsInstancedBaseInstance
glDrawElementsInstancedBaseVertex
glDrawElementsInstancedBaseVertexBaseInstance
glDrawRangeElements
glDrawRangeElementsBaseVertex
glDrawTransformFeedback
glDrawTransformFeedbackInstanced
glDrawTransformFeedbackStream
glDrawTransformFeedbackStreamInstanced
Top
+ +

+ + + + + + + + +
E
glEnable
glEnableVertexAttribArray
glEndConditionalRender
glEndQuery
glEndQueryIndexed
glEndTransformFeedback
Top
+ +

+ + + + + + + + + + + +
F
glFenceSync
glFinish
glFlush
glFlushMappedBufferRange
glFramebufferParameteri
glFramebufferRenderbuffer
glFramebufferTexture
glFramebufferTextureLayer
glFrontFace
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
G
glGenBuffers
glGenFramebuffers
glGenProgramPipelines
glGenQueries
glGenRenderbuffers
glGenSamplers
glGenTextures
glGenTransformFeedbacks
glGenVertexArrays
glGenerateMipmap
glGet
glGetActiveAtomicCounterBufferiv
glGetActiveAttrib
glGetActiveSubroutineName
glGetActiveSubroutineUniform
glGetActiveSubroutineUniformName
glGetActiveUniform
glGetActiveUniformBlock
glGetActiveUniformBlockName
glGetActiveUniformName
glGetActiveUniformsiv
glGetAttachedShaders
glGetAttribLocation
glGetBufferParameter
glGetBufferPointerv
glGetBufferSubData
glGetCompressedTexImage
glGetDebugMessageLog
glGetError
glGetFragDataIndex
glGetFragDataLocation
glGetFramebufferAttachmentParameter
glGetFramebufferParameter
glGetInternalFormativ
glGetMultisample
glGetObjectLabel
glGetObjectPtrLabel
glGetProgram
glGetProgramBinary
glGetProgramInfoLog
glGetProgramInterface
glGetProgramPipeline
glGetProgramPipelineInfoLog
glGetProgramResource
glGetProgramResourceIndex
glGetProgramResourceLocation
glGetProgramResourceLocationIndex
glGetProgramResourceName
glGetProgramStage
glGetQueryIndexed
glGetQueryObject
glGetQueryiv
glGetRenderbufferParameter
glGetSamplerParameter
glGetShader
glGetShaderInfoLog
glGetShaderPrecisionFormat
glGetShaderSource
glGetString
glGetSubroutineIndex
glGetSubroutineUniformLocation
glGetSync
glGetTexImage
glGetTexLevelParameter
glGetTexParameter
glGetTransformFeedbackVarying
glGetUniform
glGetUniformBlockIndex
glGetUniformIndices
glGetUniformLocation
glGetUniformSubroutine
glGetVertexAttrib
glGetVertexAttribPointerv
Top
+ +

+ + + +
H
glHint
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + +
I
glInvalidateBufferData
glInvalidateBufferSubData
glInvalidateFramebuffer
glInvalidateSubFramebuffer
glInvalidateTexImage
glInvalidateTexSubImage
glIsBuffer
glIsEnabled
glIsFramebuffer
glIsProgram
glIsProgramPipeline
glIsQuery
glIsRenderbuffer
glIsSampler
glIsShader
glIsSync
glIsTexture
glIsTransformFeedback
glIsVertexArray
Top
+ +

+ + + + + +
L
glLineWidth
glLinkProgram
glLogicOp
Top
+ +

+ + + + + + + + + + + +
M
glMapBuffer
glMapBufferRange
glMemoryBarrier
glMinSampleShading
glMultiDrawArrays
glMultiDrawArraysIndirect
glMultiDrawElements
glMultiDrawElementsBaseVertex
glMultiDrawElementsIndirect
Top
+ +

+ + + + +
O
glObjectLabel
glObjectPtrLabel
Top
+ +

+ + + + + + + + + + + + + + + + +
P
glPatchParameter
glPauseTransformFeedback
glPixelStore
glPointParameter
glPointSize
glPolygonMode
glPolygonOffset
glPopDebugGroup
glPrimitiveRestartIndex
glProgramBinary
glProgramParameter
glProgramUniform
glProvokingVertex
glPushDebugGroup
Top
+ +

+ + + +
Q
glQueryCounter
Top
+ +

+ + + + + + + + +
R
glReadBuffer
glReadPixels
glReleaseShaderCompiler
glRenderbufferStorage
glRenderbufferStorageMultisample
glResumeTransformFeedback
Top
+ +

+ + + + + + + + + + + + + + + + + +
S
glSampleCoverage
glSampleMaski
glSamplerParameter
glScissor
glScissorArray
glScissorIndexed
glShaderBinary
glShaderSource
glShaderStorageBlockBinding
glStencilFunc
glStencilFuncSeparate
glStencilMask
glStencilMaskSeparate
glStencilOp
glStencilOpSeparate
Top
+ +

+ + + + + + + + + + + + + + + + + + + + +
T
glTexBuffer
glTexBufferRange
glTexImage1D
glTexImage2D
glTexImage2DMultisample
glTexImage3D
glTexImage3DMultisample
glTexParameter
glTexStorage1D
glTexStorage2D
glTexStorage2DMultisample
glTexStorage3D
glTexStorage3DMultisample
glTexSubImage1D
glTexSubImage2D
glTexSubImage3D
glTextureView
glTransformFeedbackVaryings
Top
+ +

+ + + + + + + + +
U
glUniform
glUniformBlockBinding
glUniformSubroutines
glUnmapBuffer
glUseProgram
glUseProgramStages
Top
+ +

+ + + + + + + + + + + + + +
V
glValidateProgram
glValidateProgramPipeline
glVertexAttrib
glVertexAttribBinding
glVertexAttribDivisor
glVertexAttribFormat
glVertexAttribPointer
glVertexBindingDivisor
glViewport
glViewportArray
glViewportIndexed
Top
+ +

+ + + +
W
glWaitSync
Top
+ + + + diff --git a/upstream-man-pages/man4/xhtml/makeindex.pl b/upstream-man-pages/man4/xhtml/makeindex.pl new file mode 100644 index 0000000..a909123 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/makeindex.pl @@ -0,0 +1,300 @@ +#!/usr/bin/perl + +sub Usage { +print +"Usage: makeindex xhtmldir xmldir + where xhtmldir contains a directory full of OpenGL .xml XHTML man pages -AND- + where xmldir contains a directory full of OpenGL .xml source XML man pages + + probably want to redirect output into a file like + ./makeindex.pl . .. > ./index.html +" +} + +sub PrintHeader { +print ' + + +OpenGL Documentation + + + +

OpenGL 4 Reference Pages

+

+ +'; +} + +sub PrintFooter { +print ' + + +'; +} + +sub TableElementForFilename { + my $name = shift; + + my $strippedname = $name; + $strippedname =~ s/\.xml//; + print "\t"; + print ''; + print "$strippedname"; + print "\n"; +} + +sub BeginTable { + my $letter = shift; + print "

\n"; + print ''; + print "\t\n"; +} + +sub EndTable { + print "\t"; + print ''; + print "\n
"; + print "$letter
Top
\n\n"; +} + + + +############## +# main +############## + +if (@ARGV != 2) +{ + Usage(); + die; +} + +# grab list of generated XHTML files +opendir(DIR,$ARGV[0]) or die "couldn't open directory"; + +@files = readdir(DIR); +close(DIR); +@files = sort @files; + +PrintHeader(); + +my @glX; +my @glut; +my @glu; +my @gl; + +my @realEntrypoints; +my @pageNames; + +#pre-create list of all true entrypoint names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + @funcs = ; + @funcs = grep(//, @funcs); + foreach (@funcs) + { + $func = $_; + $func =~ s/.*//; + $func =~ s/<\/function>.*\n//; + + push (@realEntrypoints, $func); + } + close(PARENT); + } + } +} + +#pre-create list of page names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + push (@pageNames, $entrypoint); + + close(PARENT); + } + } +} + +#sort the files into gl, glut, glu, and glX + +foreach (@files) +{ + if (/xml/) + { + # filter out entrypoint variations that don't have their own man pages + my $needIndexEntry = 0; + + # continue only if parent page exists (e.g. glColor) OR + # different parent page exists with matching entrypoint (e.g. glEnd) + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + foreach (@pageNames) + { + if ($_ eq $entrypoint) + { + # it has its own man page + $needIndexEntry = 1; + } + } + + if ($needIndexEntry == 0) + { + foreach (@realEntrypoints) + { + if ($_ eq $entrypoint) + { + # it's a real entrypoint, but make sure not a variation + $needIndexEntry = 1; + + foreach (@pageNames) + { + my $alteredEntrypoint = $entrypoint; + $alteredEntrypoint =~ s/$_//; + + if (!($alteredEntrypoint eq $entrypoint)) + { + $needIndexEntry = 0; + } + } + } + } + } + + if ($needIndexEntry) + { + if (/^glX/) + { + push (@glX, $_); + } + elsif (/^glut/) + { + push (@glut, $_); + } + elsif (/^glu/) + { + push (@glu, $_); + } + elsif (/^gl/) + { + push (@gl, $_); + } + } + } +} + + +#output the table of contents + +my @toc; + +if ($#gl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@gl) + { + $name = $_; + $name =~ s/^gl//; + $firstletter = substr($name, 0, 1); + if ($firstletter ne $currentletter) + { + push (@toc, $firstletter); + $currentletter = $firstletter; + } + } + if ($#glu > 0) { push (@toc, "glu"); } + if ($#glut > 0) { push (@toc, "glut"); } + if ($#glX > 0) { push (@toc, "glX"); } +} + + +print '
'; +print '
'; +foreach (@toc) +{ + print ' '; + print $_; + print "   "; +} +print "
\n\n\n"; +print '
'; + +# output the tables + +if ($#gl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@gl) + { + $name = $_; + $name =~ s/^gl//; + $firstletter = substr($name, 0, 1); + if ($firstletter ne $currentletter) + { + if ($opentable == 1) + { + EndTable(); + } + BeginTable($firstletter); + $opentable =1; + $currentletter = $firstletter; + } + TableElementForFilename($_); + } + if ($opentable) + { + EndTable(); + } +} + +if ($#glu > 0) +{ + BeginTable("glu"); + foreach (@glu) + { + TableElementForFilename($_); + } + EndTable(); +} + +if ($#glut > 0) +{ + BeginTable("glut"); + foreach (@glut) + { + TableElementForFilename($_); + } + EndTable(); +} + +if ($#glX > 0) +{ + BeginTable("glX"); + foreach (@glX) + { + TableElementForFilename($_); + } + EndTable(); +} + +PrintFooter(); diff --git a/upstream-man-pages/man4/xhtml/mathml.xsl b/upstream-man-pages/man4/xhtml/mathml.xsl new file mode 100644 index 0000000..e630f11 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/mathml.xsl @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man4/xhtml/opengl-man.css b/upstream-man-pages/man4/xhtml/opengl-man.css new file mode 100644 index 0000000..2cddbb0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/opengl-man.css @@ -0,0 +1,106 @@ +html, body, table +{ + color: #000; + padding: 4px 4px; + margin: 0px 0px 0 0px; + text-align: left; + font-family: Arial, Lucida, sans-serif; + font-size: 10pt; +} + +#container +{ + margin: 10px; + font-size: 14pt; + text-decoration:none; +} + +div.refnamediv p +{ + font-size: 12pt; + margin: 20px; +} + +div.funcsynopsis +{ + font-family: monospace; +} + +div.informaltable table +{ + border-width: 1px; + border-style: dotted; + border-collapse: collapse; + background-color: #F0F0F0; +} + +div.informaltable th +{ + border-width: 2px; + padding: 4px; +} + +div.informaltable td +{ + border-width: 2px; + padding: 4px; +} + +div.table table +{ + border-width: 1px; + border-style: dotted; + border-collapse: collapse; + background-color: #F0F0F0; +} + +div.table th +{ + border-width: 2px; + padding: 4px; +} + +div.table td +{ + border-width: 2px; + padding: 4px; +} + +code +{ + font-weight: bold; +} + +span.citerefentry +{ + font-family: monospace; + font-weight: bold; +} + +table.sample +{ + width: 100%; + text-align: left; + border-width: 1px; + border-spacing: 5px; + border-style: dotted; + border-color: black; + border-collapse: separate; + background-color: #F0F0F0; + font-family: sans-serif; +} + +table.sample th +{ + border-width: 1px; + padding: 1px; + border-style: none; + font-size: 16pt; +} + +table.sample td +{ + border-width: 1px; + padding: 1px; + border-style: none; +} diff --git a/upstream-man-pages/man4/xhtml/opengl-man.xsl b/upstream-man-pages/man4/xhtml/opengl-man.xsl new file mode 100644 index 0000000..f382773 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/opengl-man.xsl @@ -0,0 +1,50 @@ + + + + + +ansi + +.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + type="text/xsl" href="mathml.xsl" + + + + + diff --git a/upstream-man-pages/man4/xhtml/pmathml.xsl b/upstream-man-pages/man4/xhtml/pmathml.xsl new file mode 100644 index 0000000..56e9ec0 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/pmathml.xsl @@ -0,0 +1,615 @@ + + + + + + + + + + + '<!--' + + + + + + + + + + + + + + + + + + + + + + + + +in mpdialog mode, we just write out some JavaScript to display +dialog to the reader asking whether they want to install MathPlayer +Depending on the response we get, we then instantiate an XSL processor +and reprocess the doc, passing $secondpass according to the +reader response. + +Using d-o-e is fairly horrible, but this code is only for IE +anyway, and we need to force HTML semantics in this case. + + +var cookieName = "MathPlayerInstall="; +function MPInstall(){ + + if (typeof document.body.style.maxHeight != "undefined") return null; + var showDialog=true; + var c = document.cookie; + var i = c.indexOf(cookieName); + if (i >= 0) { + if ( c.substr(i + cookieName.length, 1) >= 2) { showDialog=false; } + } + if (showDialog) { + MPDialog(); + c = document.cookie; + i = c.indexOf(cookieName); + } + if (i >= 0) return c.substr(i + cookieName.length, 1); + else return null; +} + +function MPDialog() { + var vArgs=""; + var sFeatures="dialogWidth:410px;dialogHeight:190px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'function fnClose(v) { ' + text += 'var exp = new Date();' + text += 'var thirtyDays = exp.getTime() + (30 * 24 * 60 * 60 * 1000);' + text += 'exp.setTime(thirtyDays);' + text += 'var cookieProps = ";expires=" + exp.toGMTString();' + text += 'if (document.forms[0].dontask.checked) v+=2;' + text += 'document.cookie="' + cookieName + '"+v+cookieProps;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Install MathPlayer?</title></head>' + text += '<body bgcolor="#D4D0C8"><form>' + text += '<table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>This page requires Design Science\\\'s MathPlayer&trade;.<br>' + text += 'Do you want to download and install MathPlayer?</td></tr>'; + text += '<tr><td align=center><input type="checkbox" name="dontask">' + text += 'Don\\\'t ask me again</td></tr>' + text += '<tr><td align=center><input id=yes type="button" value=" Yes "' + text += ' onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value=" No " onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + window.showModalDialog( text , vArgs, sFeatures ); +} + +function WaitDialog() { + var vArgs=""; + var sFeatures="dialogWidth:510px;dialogHeight:150px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'window.onload=fnLoad;' + text += 'function fnLoad() {document.forms[0].yes.focus();}' + text += 'function fnClose(v) { ' + text += 'window.returnValue=v;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Wait for Installation?</title></head>' + text += '<body bgcolor="#D4D0C8" onload="fnLoad()"><form><' + text += 'table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>Click OK once MathPlayer is installed ' + text += 'to refresh the page.<br>' + text += 'Click Cancel to view the page immediately without MathPlayer.</td></tr>'; + text += '<tr><td align=center><input id=yes type="button" ' + text += 'value=" OK " onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value="Cancel" onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + return window.showModalDialog( text , vArgs, sFeatures ); +} + +var result = MPInstall(); + +var action = "fallthrough"; +if (result == 1 || result == 3) { + window.open("http://www.dessci.com/webmath/mathplayer"); + var wait = WaitDialog(); + if ( wait == 1) { + action = "install"; + document.location.reload(); + + } +} +if (action == "fallthrough") { +var xsl = new ActiveXObject("Microsoft.FreeThreadedXMLDOM"); +xsl.async = false; +xsl.validateOnParse = false; +xsl.load("pmathmlcss.xsl"); +var xslTemplate = new ActiveXObject("MSXML2.XSLTemplate.3.0"); +xslTemplate.stylesheet=xsl.documentElement; +var xslProc = xslTemplate.createProcessor(); +xslProc.input = document.XMLDocument; + +xslProc.transform(); +var str = xslProc.output; + +var repl = "replace"; +if (window.navigator.appVersion.match(/Windows NT 5.1/)) { repl = ""; } +var newDoc = document.open("text/html", repl); +newDoc.write(str); +document.close(); +} + + +mathplayer-dl + +techexplorer-plugin + + + + + + + + techexplorer-plugin + + + + + mathplayer-dl + + + + + + + + + + + + +IE5 hacks +This code will be ignored by an XSLT engine as a top level +element in a foreign namespace. It will be executed by an IE5XSL +engine and insert <!-- into the output stream, ie the start of a +comment. This will comment out all the XSLT code which will be copied +to the output. A similar clause below will close this comment, it is +then followed by the IE5XSL templates to be executed. +This trick is due to Jonathan Marsh of Microsoft, and used in +the stylesheet for +the XPath 2 data model draft. + + +XSLT stylesheet +MSXSL script block + +The following script block implements an extension function that +tests whether a specified ActiveX component is known to the client. +This is used below to test for the existence of MathML rendering +components. + + function isinstalled(ax) + { + try { + var ActiveX = new ActiveXObject(ax); + return "true"; + } catch (e) { + return "false"; + } +} + + +The main bulk of this stylesheet is an identity transformation so... + + + + + + + + + +XHTML elements are copied sans prefix (XHTML is default namespace +here, so these elements will still be in XHTML namespace + + + + + + + +IE's treatment of XHTML as HTML needs a little help here... + + + + + + > + + + + + + + + + + +This just ensures the mathml prefix declaration isn't copied from +the source at this stage, so that the system will use the mml prefix +coming from this stylesheet + + + + + + + +We modify the head element to add code to specify a Microsoft +"Behaviour" if the behaviour component is known to the system. +Test for MathPlayer (Design Science) +Test for Techexplorer (IBM) +Test for Microsoft. In this case we just +output a small HTML file that executes a script that will re-process +the source docuument with a different stylesheet. Doing things this +way avoids the need to xsl:import the second stylesheet, which would +very much increase the processing overhead of running this +stylesheet. +Further tests (eg for netscape/mozilla) could +be added here if necessary + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Somewhat bizarrely in an otherwise namespace aware system, +Microsoft behaviours are defined to trigger off the +prefix not the Namespace. In the code above +we associated a MathML rendering behaviour (if one was found) with the +prefix mml: so here we ensure that this is the prefix +that actually gets used in the output. + + + + + + + +Copy semantics element through in IE (so mathplayer gets to see +mathplayer annotations, otherwise use first child or a presentation annotation. + + + + + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + /> + + + + + + " + + + + + + " + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +IE5XSL stylesheet +In a rare fit of sympathy for users of +the-language-known-as-XSL-in-IE5 this file incorporates a +version of the above code designed to work in the Microsoft dialect. +This is needed otherwise users of a MathML rendering behaviour would +have to make a choice whether they wanted to use this stylesheet +(keeping their source documents conforming XHTML+MathML) or to use +the explicit Microsoft Object code, which is less portable, but would +work in at least IE5.5. + +This entire section of code, down to the end of the stylesheet is +contained within this ie5:if. Thus XSLT sees it as a top level element +from a foreign namespace and silently ignores it. IE5XSL sees it as +"if true" and so executes the code. + + +First close the comment started at the beginning. This ensures +that the bulk of the XSLT code, while being copied to the result tree +by the IE5XSL engine, will not be rendered in the browser. + +Lacking attribute value templates in +xsl:element, and the local-name() function, we resort to constructing +the start and end tags in strings in javascript, then using +no-entities attribute which is the IE5XSL equivalent of disable-output-encoding + + +'-->' + + + + + + function mpisinstalled() + { + try { + var ActiveX = new ActiveXObject("MathPlayer.Factory.1"); + return "true"; + } catch (e) { + return "false"; + } +} + + + + + + + + + + + + + + + + + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + +'<math>' + +'</math>' + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man4/xhtml/pmathmlcss.xsl b/upstream-man-pages/man4/xhtml/pmathmlcss.xsl new file mode 100644 index 0000000..a1f96da --- /dev/null +++ b/upstream-man-pages/man4/xhtml/pmathmlcss.xsl @@ -0,0 +1,873 @@ + + + + + + + + +Dictionary + + The following elements in the x: namespace form an +implementation of an "Operator Dictionary" for this MathML +Implementation. In the case of stretch operators, the element +specifies the symbol parts via the latin-1 equivalent character based +on the encoding in the symbol font. It is a clear "failure to comply +to the spec" that using latin 1 characters (or numeric character +references) in the latin 1 range access glyphs in teh symbol font via +font position, however most of these character parts are not in +Unicode (until 3.2), so there is no standard way to access these characters. + +{ +{ + +( +) + +[ +] + +[[ +]] + +| +|| + + + + +~ +_v_ + + +Remove these for now, as XML parser in IE6 is broken and doesn't +accept plane 1 characters. + + +Grab all of the above into a variable. + + +HTML elements + + +XHTML elements get passed straight through, sans namespace prefix. + + + + + + + + + + + + +Template for the head element copies the original content, aand in +addition adds a script element and CSS style element that implement +the core of the MathML renderer. + + + +The malign function first finds the left most item in the aligngroup, and +then modifies the left margin of each item to make them +align. (Currently only left alignment is supported.) + + + +The mrowStretch function implements stretchy brackets. It is called +repeatedly, once for each mo child,after a span corresponding to an +mrow. The arguments are the id of teh span and the characters to use +for the parts of the stretch operator. +constructed fence. The + + + +Inline CSS style block handles all font and size specification for the +various MathML operators. + + + + + + + + + + + + + + + + +Unimplemented MathML elements get copied literally, in red, mainly as +a debugging aid. + + +<> + +</> + + + +mi: set default font based on string length, otherwise behaviour based +on entries in the operator dictionary if one exists, or content is +copied through to the output unchanged. + + + + +mi1 + + + + + + + + + + + + + + + + +Handling of mathvariant attribute. +The choice of font families here (currently) avoids math-specific +fonts but does use several fionts coming with windows 9.x and/or +office 2000. + + +font-weight: bold; font-style: upright + + +font-style: upright; font-weight: bold; font-style: italic; + + +font-style: italic; + + +font-family: monospace; + + + +font-family: sans-serif; + + +font-family: sans-serif; font-weight: bold; + + + +font-family: old english text mt + + + + +doublestruck + + + + +font-family: brush script mt italic + + + + +mo: Generate a unique ID so that a script at the end of any +surrounding mrow may replace the conent by a suitably stretched +operator if need be. + + + + + + +mn: a simple span + + + + + + +munder: currently only supports underline, with a bottom border + + + + border-width: 0pt 0pt .1em 0pt; border-style: solid;" + + + + + +mover: currently only supports overline, with a top border + + + + border-width: .1em 0pt 0pt 0pt; border-style: solid;" + + + + + +munderover: + + + + + +
+
+ +mtext: a simple span + + + + + + +mstyle: not many attributes currently supported + + + + color: ; + background-color: ; + + + + + + +mglyph: Uses disable output escaping to construct a numeric +character reference. Uses IE's non conforming behaviour of using this +number to access the font encoding rather than unicode. + + +; + + + +ms: a simple span with left and right character added to the content. + + + " + + " + + + + + + + + + + + + + + + ( + + + + + + ) + + + + + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\ + + + + + +\ + + + + + + + + + + + + + + + + + +\ + + + + + + + + + + font-size: 75% ; + + + font-size: 100% ; + + + +
+ +
+ +
+
+ + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +left + + + + + + +
diff --git a/upstream-man-pages/man4/xhtml/preproc.sed b/upstream-man-pages/man4/xhtml/preproc.sed new file mode 100644 index 0000000..d272f7b --- /dev/null +++ b/upstream-man-pages/man4/xhtml/preproc.sed @@ -0,0 +1,3 @@ +s/\n# - OpenGL 4 Reference Pages#g \ No newline at end of file diff --git a/upstream-man-pages/man4/xhtml/removedTypes.xml b/upstream-man-pages/man4/xhtml/removedTypes.xml new file mode 100644 index 0000000..a44e27a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/removedTypes.xml @@ -0,0 +1,33 @@ + + + +removedTypes - OpenGL 4 Reference Pages

Name

removedTypes — Describes types removed and replaced in the OpenGL API in OpenGL 4.2

Description

+ In the May, 2012 update of the OpenGL 4.2 Specification, all + APIs using the types GLclampf and GLclampd were modified to + use GLfloat and GLdouble, respectively, instead. Language + was added to the Specification requiring that these + parameters be clamped, when required, at use time rather + than at specification time. +

+ This change allows specifying parameters in ranges + appropriate for non-fixed-point framebuffers (integer and + floating-point formats). The change does not require any + changes to user code calling these functions, because the + actual underlying types are identical, the behavior is + externally unchanged, and the header files continue to + define the old types for compatibility with older code. +

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/man4/xhtml/start.html b/upstream-man-pages/man4/xhtml/start.html new file mode 100644 index 0000000..3ee16d1 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/start.html @@ -0,0 +1,45 @@ + + +OpenGL 4 Reference Pages + + + +

OpenGL 4 Reference Pages

+ +

Use the index on the left to choose any OpenGL reference page for viewing. The reference pages +(also known as "man pages") include all of the important usage information for each command. This +information includes a description of all parameters, return values, error conditions, and related +commands.

+ +

Core Context Functionality

+ +

These man pages only document the core context. For compatibility context specific functionality, please +refer to the OpenGL 2.1 Reference Pages and/or the appropriate extension spec you are interested in +using.

+ +

Browser Compatibility

+ +

Please use the latest version of your brower to view this web-page to ensure the least amount of +compatibility issues.

+ +

Downloading Man Page Sources

+ +

The Docbook XML source for the man pages is available for anonymous + checkout in Khronos' Subversion server, and you can build a man page + distribution of your own using open source tools. See the OpenGL.org + technical Wiki pages describing the + XML Toolchain and Man Pages for more information.

+ +

Feedback

+ +

If you find any inaccuracies or typos in the reference pages, don't + hesitate to inform us via the feedback + form or using the + Khronos Bugzilla (you must first create a Bugzilla account, + however).

+ + + \ No newline at end of file diff --git a/upstream-man-pages/man4/xhtml/xhtml-lat1.ent b/upstream-man-pages/man4/xhtml/xhtml-lat1.ent new file mode 100644 index 0000000..ffee223 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/xhtml-lat1.ent @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man4/xhtml/xhtml-special.ent b/upstream-man-pages/man4/xhtml/xhtml-special.ent new file mode 100644 index 0000000..ca358b2 --- /dev/null +++ b/upstream-man-pages/man4/xhtml/xhtml-special.ent @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man4/xhtml/xhtml-symbol.ent b/upstream-man-pages/man4/xhtml/xhtml-symbol.ent new file mode 100644 index 0000000..63c2abf --- /dev/null +++ b/upstream-man-pages/man4/xhtml/xhtml-symbol.ent @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/man4/xhtml/xhtml1-transitional.dtd b/upstream-man-pages/man4/xhtml/xhtml1-transitional.dtd new file mode 100644 index 0000000..628f27a --- /dev/null +++ b/upstream-man-pages/man4/xhtml/xhtml1-transitional.dtd @@ -0,0 +1,1201 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/manglsl/EmitStreamVertex.xml b/upstream-man-pages/manglsl/EmitStreamVertex.xml new file mode 100644 index 0000000..a7405a2 --- /dev/null +++ b/upstream-man-pages/manglsl/EmitStreamVertex.xml @@ -0,0 +1,74 @@ + + + + + + + 2011 + Khronos Group + + + EmitStreamVertex + 3G + + + EmitStreamVertex + emit a vertex to a specified stream + + Declaration + + + void EmitStreamVertex + int stream + + + + Parameters + + + stream + + + Specifies the stream upon which the vertex will be emitted. + + + + + + Description + + Available only in the Geometry Shader, EmitStreamVertex emits the current + values of output variables to the current output primitive on stream stream. The argument + stream must be a constant integral expression. On return from this call, the value of all output variables + for all streams are undefined. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + EmitStreamVertex#newin40# + + + + + + See Also + + EmitVertex, + EndStreamPrimitive, + EndPrimitive + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/EmitVertex.xml b/upstream-man-pages/manglsl/EmitVertex.xml new file mode 100644 index 0000000..2daa849 --- /dev/null +++ b/upstream-man-pages/manglsl/EmitVertex.xml @@ -0,0 +1,62 @@ + + + + + + + 2011 + Khronos Group + + + EmitVertex + 3G + + + EmitVertex + emit a vertex to the first vertex stream + + Declaration + + + void EmitVertex + void + + + + Description + + Available only in the Geometry Shader, EmitVertex emits the current + values of output variables to the current output primitive on the first (and possibly only) primitive stream. + It is equivalent to calling EmitStreamVertex with + stream set to 0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + EmitVertex#newin15# + + + + + + See Also + + EmitStreamVertex, + EndStreamPrimitive, + EndPrimitive + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/EndPrimitive.xml b/upstream-man-pages/manglsl/EndPrimitive.xml new file mode 100644 index 0000000..3b84796 --- /dev/null +++ b/upstream-man-pages/manglsl/EndPrimitive.xml @@ -0,0 +1,62 @@ + + + + + + + 2011 + Khronos Group + + + EndPrimitive + 3G + + + EndPrimitive + complete the current output primitive on the first vertex stream + + Declaration + + + void EndPrimitive + void + + + + Description + + Available only in the Geometry Shader, EndPrimitive completes the + current output primitive on the first (and possibly only) vertex stream and starts a new one.No vertex is emitted. + Calling EndPrimitive is equivalent to calling EmitStreamVertex + with stream set to 0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + EndPrimitive#newin15# + + + + + + See Also + + EmitVertex, + EmitStreamVertex, + EndStreamPrimitive + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/EndStreamPrimitive.xml b/upstream-man-pages/manglsl/EndStreamPrimitive.xml new file mode 100644 index 0000000..54843c4 --- /dev/null +++ b/upstream-man-pages/manglsl/EndStreamPrimitive.xml @@ -0,0 +1,73 @@ + + + + + + + 2011 + Khronos Group + + + EndStreamPrimitive + 3G + + + EndStreamPrimitive + complete the current output primitive on a specified stream + + Declaration + + + void EndStreamPrimitive + int stream + + + + Parameters + + + stream + + + Specifies the stream upon which the current primitive will be ended. + + + + + + Description + + Available only in the Geometry Shader, EndStreamPrimitive completes the + current output primitive on stream stream and starts a new one. The argument to stream + must be a constant integral expression. No vertex is emitted. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + EndStreamPrimitive#newin40# + + + + + + See Also + + EmitVertex, + EmitStreamVertex, + EndPrimitive + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/Makefile b/upstream-man-pages/manglsl/Makefile new file mode 100644 index 0000000..b0828f3 --- /dev/null +++ b/upstream-man-pages/manglsl/Makefile @@ -0,0 +1,49 @@ +#!gmake +# +# License Applicability. Except to the extent portions of this file are +# made subject to an alternative license as permitted in the SGI Free +# Software License B, Version 1.1 (the "License"), the contents of this +# file are subject only to the provisions of the License. You may not use +# this file except in compliance with the License. You may obtain a copy +# of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +# Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +# +# http://oss.sgi.com/projects/FreeB +# +# Note that, as provided in the License, the Software is distributed on an +# "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +# DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +# CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +# PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +# +# Original Code. The Original Code is: OpenGL Sample Implementation, +# Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +# Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: The application programming interfaces +# established by SGI in conjunction with the Original Code are The +# OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +# April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +# 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +# Window System(R) (Version 1.3), released October 19, 1998. This software +# was created using the OpenGL(R) version 1.2.1 Sample Implementation +# published by SGI, but has not been independently verified as being +# compliant with the OpenGL(R) version 1.2.1 Specification. + +COMMONPREF = standard +include $(ROOT)/usr/include/make/commondefs + +SUBDIRS = \ + xhtml \ + $(NULL) + +default $(ALLTARGS): $(_FORCE) + $(SUBDIRS_MAKERULE) + +distoss: + $(MAKE) $(COMMONPREF)$@ + $(SUBDIRS_MAKERULE) + +include $(COMMONRULES) diff --git a/upstream-man-pages/manglsl/abs.xml b/upstream-man-pages/manglsl/abs.xml new file mode 100644 index 0000000..682e99d --- /dev/null +++ b/upstream-man-pages/manglsl/abs.xml @@ -0,0 +1,88 @@ + + + + + + + 2011 + Khronos Group + + + abs + 3G + + + abs + return the absolute value of the parameter + + Declaration + + + genType abs + genType x + + + + + genIType abs + genIType x + + + + + genDType abs + genDType x + + + + Parameters + + + x + + + Specify the value of which to return the absolute. + + + + + + Description + + abs returns the absolute value of x. + + + Version Support + + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + abs (genType)#newin11# + + + abs (genIType)#newin13# + + + abs (genDType)#newin41# + + + + + + See Also + + sign + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/acos.xml b/upstream-man-pages/manglsl/acos.xml new file mode 100644 index 0000000..3b89640 --- /dev/null +++ b/upstream-man-pages/manglsl/acos.xml @@ -0,0 +1,82 @@ + + + + + + + 2011 + Khronos Group + + + acos + 3G + + + acos + return the arccosine of the parameter + + Declaration + + + genType acos + genType x + + + + Parameters + + + x + + + Specify the value whose arccosine to return. + + + + + + Description + + atan returns the angle whose trigonometric cosine is + x. + The range of values returned by acos is + + + 0 + + + . + The result is undefined if + x1. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + acos#newin11# + + + + + + See Also + + sin, + cos, + asin, + tan + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/acosh.xml b/upstream-man-pages/manglsl/acosh.xml new file mode 100644 index 0000000..71bae2c --- /dev/null +++ b/upstream-man-pages/manglsl/acosh.xml @@ -0,0 +1,75 @@ + + + + + + + 2011 + Khronos Group + + + acosh + 3G + + + acosh + return the arc hyperbolic cosine of the parameter + + Declaration + + + genType acosh + genType x + + + + Parameters + + + x + + + Specify the value whose arc hyperbolic cosine to return. + + + + + + Description + + acosh returns the arc hyperbolic cosine of + x; + the non-negative inverse of cosh. Results + are undefined if x1. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + acosh#newin13# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/all.xml b/upstream-man-pages/manglsl/all.xml new file mode 100644 index 0000000..f8aa4dc --- /dev/null +++ b/upstream-man-pages/manglsl/all.xml @@ -0,0 +1,83 @@ + + + + + + + 2011 + Khronos Group + + + all + 3G + + + all + check whether all elements of a boolean vector are true + + Declaration + + + bool all + bvec x + + + + Parameters + + + x + + + Specifies the vector to be tested for truth. + + + + + + Description + + any returns true if all elements of x are true and false otherwise. + It is functionally equivalent to: + + + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + all#newin11# + + + + + + See Also + + any, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/any.xml b/upstream-man-pages/manglsl/any.xml new file mode 100644 index 0000000..15d9bbe --- /dev/null +++ b/upstream-man-pages/manglsl/any.xml @@ -0,0 +1,83 @@ + + + + + + + 2011 + Khronos Group + + + any + 3G + + + any + check whether any element of a boolean vector is true + + Declaration + + + bool any + bvec x + + + + Parameters + + + x + + + Specifies the vector to be tested for truth. + + + + + + Description + + any returns true if any element of x is true and false otherwise. + It is functionally equivalent to: + + + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + any#newin11# + + + + + + See Also + + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/asin.xml b/upstream-man-pages/manglsl/asin.xml new file mode 100644 index 0000000..594a496 --- /dev/null +++ b/upstream-man-pages/manglsl/asin.xml @@ -0,0 +1,91 @@ + + + + + + + 2011 + Khronos Group + + + asin + 3G + + + asin + return the arcsine of the parameter + + Declaration + + + genType asin + genType x + + + + Parameters + + + x + + + Specify the value whose arcsine to return. + + + + + + Description + + atan returns the angle whose trigonometric sine is + x. + The range of values returned by asin is + + + + + + + 2 + + + + + 2 + + + . + The result is undefined if + x1. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + asin#newin11# + + + + + + See Also + + sin, + cos, + acos, + tan + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/asinh.xml b/upstream-man-pages/manglsl/asinh.xml new file mode 100644 index 0000000..71db816 --- /dev/null +++ b/upstream-man-pages/manglsl/asinh.xml @@ -0,0 +1,74 @@ + + + + + + + 2011 + Khronos Group + + + asinh + 3G + + + asinh + return the arc hyperbolic sine of the parameter + + Declaration + + + genType asinh + genType x + + + + Parameters + + + x + + + Specify the value whose arc hyperbolic sine to return. + + + + + + Description + + asinh returns the arc hyperbolic sine of + x; + the inverse of sinh. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + asinh#newin13# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atan.xml b/upstream-man-pages/manglsl/atan.xml new file mode 100644 index 0000000..e620c51 --- /dev/null +++ b/upstream-man-pages/manglsl/atan.xml @@ -0,0 +1,134 @@ + + + + + + + 2011 + Khronos Group + + + atan + 3G + + + atan + return the arc-tangent of the parameters + + Declaration + + + genType atan + genType y + genType x + + + + + genType atan + genType y_over_x + + + + Parameters + + + y + + + Specify the numerator of the fraction whose arctangent to return. + + + + + x + + + Specify the denominator of the fraction whose arctangent to return. + + + + + y_over_x + + + Specify the fraction whose arctangent to return. + + + + + + Description + + atan returns the angle whose trigonometric arctangent is + + + + + y + + + x + + + or y_over_x, + depending on which overload is invoked. In the first overload, the signs of y + and x are used to determine the quadrant + that the angle lies in. The values returned by atan in this case are in the range + + + + + + . Results are undefined if x is zero. + + + For the second overload, atan returns the angle whose tangent is + y_over_x. Values + returned in this case are in the range + + + + + + + 2 + + + + + 2 + + + . + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atan#newin11# + + + + + + See Also + + sin, + cos, + tan + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atanh.xml b/upstream-man-pages/manglsl/atanh.xml new file mode 100644 index 0000000..1186f06 --- /dev/null +++ b/upstream-man-pages/manglsl/atanh.xml @@ -0,0 +1,75 @@ + + + + + + + 2011 + Khronos Group + + + atanh + 3G + + + atanh + return the arc hyperbolic tangent of the parameter + + Declaration + + + genType atanh + genType x + + + + Parameters + + + x + + + Specify the value whose arc hyperbolic tangent to return. + + + + + + Description + + atanh returns the arc hyperbolic tangent of + x; + the inverse of tanh. Results + are undefined if x1. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atanh#newin11# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicAdd.xml b/upstream-man-pages/manglsl/atomicAdd.xml new file mode 100644 index 0000000..03f9129 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicAdd.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomicAdd + 3G + + + atomicAdd + perform an atomic addition to a variable + + Declaration + + + int atomicAdd + inout int mem + int data + + + uint atomicAdd + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be added to mem. + + + + + + Description + + atomicAdd performs an atomic addition of data to the contents of + mem and returns the original contents of mem + from before the addition occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicAdd#newin43# + + + + + + See Also + + atomicAnd, + atomicOr, + atomicXor, + atomicMin, + atomicMax, + atomicExchange, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicAnd.xml b/upstream-man-pages/manglsl/atomicAnd.xml new file mode 100644 index 0000000..1768eeb --- /dev/null +++ b/upstream-man-pages/manglsl/atomicAnd.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomicAnd + 3G + + + atomicAnd + perform an atomic logical AND operation to a variable + + Declaration + + + int atomicAnd + inout int mem + int data + + + uint atomicAnd + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be logically ANDed with to mem. + + + + + + Description + + atomicAnd performs an atomic logical AND with data to the contents of + mem and returns the original contents of mem + from before the logical operation occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicAnd#newin43# + + + + + + See Also + + atomicAdd, + atomicOr, + atomicXor, + atomicMin, + atomicMax, + atomicExchange, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicCompSwap.xml b/upstream-man-pages/manglsl/atomicCompSwap.xml new file mode 100644 index 0000000..cac2dba --- /dev/null +++ b/upstream-man-pages/manglsl/atomicCompSwap.xml @@ -0,0 +1,104 @@ + + + + + + + 2012 + Khronos Group + + + atomicCompSwap + 3G + + + atomicCompSwap + perform an atomic compare-exchange operation to a variable + + Declaration + + + int atomicCompSwap + inout int mem + uint compare + uint data + + + uint atomicCompSwap + inout uint mem + uint compare + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be compared and potentially exchanged with mem. + + + + + + Description + + atomicCompSwap performs an atomic comparison of compare with the contents of + mem. If the content of mem is equal to compare, + then the content of data is written into mem and is returned from + the function. Otherwise, the original contents of mem + are returned. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicCompSwap#newin43# + + + + + + See Also + + atomicAdd, + atomicAnd, + atomicOr, + atomicXor, + atomicMin, + atomicMax, + atomicExchange + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicCounter.xml b/upstream-man-pages/manglsl/atomicCounter.xml new file mode 100644 index 0000000..75c1586 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicCounter.xml @@ -0,0 +1,71 @@ + + + + + + + 2011 + Khronos Group + + + atomicCounter + 3G + + + atomicCounter + return the current value of an atomic counter + + Declaration + + + uint atomicCounter + atomic_uint c + + + + Parameters + + + c + + + Specify the handle to the atomic counter whose value to return. + + + + + + Description + + atomicCounter returns the current value of + of the atomic counter c. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicCounter#newin42# + + + + + + See Also + + atomicCounterIncrement, + atomicCounterDecrement + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicCounterDecrement.xml b/upstream-man-pages/manglsl/atomicCounterDecrement.xml new file mode 100644 index 0000000..8243753 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicCounterDecrement.xml @@ -0,0 +1,71 @@ + + + + + + + 2011 + Khronos Group + + + atomicCounterDecrement + 3G + + + atomicCounterDecrement + atomically decrement a counter and return the prior value + + Declaration + + + uint atomicCounterDecrement + atomic_uint c + + + + Parameters + + + c + + + Specify the handle to the atomic counter to decrement. + + + + + + Description + + atomicCounterDecrement atomically decrements the value + of the atomic counter c and returns its new value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicCounterDecrement#newin42# + + + + + + See Also + + atomicCounterIncrement, + atomicCounter + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicCounterIncrement.xml b/upstream-man-pages/manglsl/atomicCounterIncrement.xml new file mode 100644 index 0000000..8f5ea67 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicCounterIncrement.xml @@ -0,0 +1,71 @@ + + + + + + + 2011 + Khronos Group + + + atomicCounterIncrement + 3G + + + atomicCounterIncrement + atomically increment a counter and return the prior value + + Declaration + + + uint atomicCounterIncrement + atomic_uint c + + + + Parameters + + + c + + + Specify the handle to the atomic counter to increment. + + + + + + Description + + atomicCounterIncrement atomically increments the value + of the atomic counter c and returns its prior value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicCounterIncrement#newin42# + + + + + + See Also + + atomicCounterDecrement, + atomicCounter + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicExchange.xml b/upstream-man-pages/manglsl/atomicExchange.xml new file mode 100644 index 0000000..2a16b83 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicExchange.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomicExchange + 3G + + + atomicExchange + perform an atomic exchange operation to a variable + + Declaration + + + int atomicExchange + inout int mem + int data + + + uint atomicExchange + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be exchanged with mem. + + + + + + Description + + atomicExchange performs an atomic exhange of data with the contents of + mem. The content of data is written into mem and the original contents of mem + are returned. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicExchange#newin43# + + + + + + See Also + + atomicAdd, + atomicAnd, + atomicOr, + atomicXor, + atomicMin, + atomicMax, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicMax.xml b/upstream-man-pages/manglsl/atomicMax.xml new file mode 100644 index 0000000..f67541d --- /dev/null +++ b/upstream-man-pages/manglsl/atomicMax.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomixMax + 3G + + + atomixMax + perform an atomic max operation to a variable + + Declaration + + + int atomixMax + inout int mem + int data + + + uint atomixMax + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be compared to mem. + + + + + + Description + + atomicMax performs an atomic comparison of data to the contents of + mem, writes the maximum value into mem and returns the original contents of mem + from before the comparison occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomixMax#newin43# + + + + + + See Also + + atomicAdd, + atomicAnd, + atomicOr, + atomicXor, + atomicMin, + atomicExchange, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicMin.xml b/upstream-man-pages/manglsl/atomicMin.xml new file mode 100644 index 0000000..219be36 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicMin.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomicMin + 3G + + + atomicMin + perform an atomic min operation to a variable + + Declaration + + + int atomicMin + inout int mem + int data + + + uint atomicMin + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be compared to mem. + + + + + + Description + + atomicMin performs an atomic comparison of data to the contents of + mem, writes the minimum value into mem and returns the original contents of mem + from before the comparison occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicMin#newin43# + + + + + + See Also + + atomicAdd, + atomicAnd, + atomicOr, + atomicXor, + atomicMax, + atomicExchange, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicOr.xml b/upstream-man-pages/manglsl/atomicOr.xml new file mode 100644 index 0000000..c8fa2e3 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicOr.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomicOr + 3G + + + atomicOr + perform an atomic logical OR operation to a variable + + Declaration + + + int atomicOr + inout int mem + int data + + + uint atomicOr + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be logically ORed with to mem. + + + + + + Description + + atomicOr performs an atomic logical OR with data to the contents of + mem and returns the original contents of mem + from before the logical operation occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicOr#newin43# + + + + + + See Also + + atomicAdd, + atomicAnd, + atomicXor, + atomicMin, + atomicMax, + atomicExchange, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/atomicXor.xml b/upstream-man-pages/manglsl/atomicXor.xml new file mode 100644 index 0000000..883e335 --- /dev/null +++ b/upstream-man-pages/manglsl/atomicXor.xml @@ -0,0 +1,100 @@ + + + + + + + 2012 + Khronos Group + + + atomicXor + 3G + + + atomicXor + perform an atomic logical exclusive OR operation to a variable + + Declaration + + + int atomicXor + inout int mem + int data + + + uint atomicXor + inout uint mem + uint data + + + + Parameters + + + mem + + + The variable to use as the target of the operation. + + + + + data + + + The data to be logically exclusive ORed with to mem. + + + + + + Description + + atomicXor performs an atomic logical exclusive OR with data to the contents of + mem and returns the original contents of mem + from before the logical operation occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. + + + Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + atomicXor#newin43# + + + + + + See Also + + atomicAdd, + atomicAnd, + atomicOr, + atomicMin, + atomicMax, + atomicExchange, + atomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/barrier.xml b/upstream-man-pages/manglsl/barrier.xml new file mode 100644 index 0000000..c8bb65f --- /dev/null +++ b/upstream-man-pages/manglsl/barrier.xml @@ -0,0 +1,67 @@ + + + + + + + 2011 + Khronos Group + + + barrier + 3G + + + barrier + synchronize execution of multiple shader invocations + + Declaration + + + void barrier + void + + + + Description + + Available only in the Tessellation Control and Compute Shaders, barrier provides + a partially defined order of execution between shader invocations. For any given static instance of barrier, + in a tessellation control shader, all invocations for a single input patch must enter it before any will be allowed + to continue beyond it. For any given static instance of barrier in a compute shader, all invocations + within a single work group must enter it before any are allowed to continue beyond it. + This ensures that values written by one invocation prior to a given static instance + of barrier can be safely read by other invocations after their call to the same static + instance of barrier. Because invocations may execute in undefined order between these + barrier calls, the values of a per-vertex or per-patch output variable, or any shared variable will be undefined + in a number of cases. + + + barrier may only be placed inside the function main() of the tessellation + control shader, but may be placed anywhere in a compute shader. Calls to barrier may not + be placed within any control flow. Barriers are also disallowed after a return + statement in the function main(). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + barrier#newin40# + + + + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/bitCount.xml b/upstream-man-pages/manglsl/bitCount.xml new file mode 100644 index 0000000..c17f41c --- /dev/null +++ b/upstream-man-pages/manglsl/bitCount.xml @@ -0,0 +1,73 @@ + + + + + + + 2011 + Khronos Group + + + bitCount + 3G + + + bitCount + counts the number of 1 bits in an integer + + Declaration + + + genIType bitCount + genIType value + + genIType bitCount + genUType value + + + + Parameters + + + value + + + Specifies the value whose bits to count. + + + + + + Description + + bitCount returns the number of bits that are set to 1 in the binary representation of value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + bitCount#newin40# + + + + + + See Also + + findLSB, + findMSB + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/bitfieldExtract.xml b/upstream-man-pages/manglsl/bitfieldExtract.xml new file mode 100644 index 0000000..2fc33d7 --- /dev/null +++ b/upstream-man-pages/manglsl/bitfieldExtract.xml @@ -0,0 +1,101 @@ + + + + + + + 2011 + Khronos Group + + + bitfieldExtract + 3G + + + bitfieldExtract + extract a range of bits from an integer + + Declaration + + + genIType bitfieldExtract + genIType value + int offset + int bits + + genUType bitfieldExtract + genUType value + int offset + int bits + + + + Parameters + + + value + + + Specifies the integer from which to extract bits. + + + + + offset + + + Specifies the index of the first bit to extract. + + + + + bits + + + Specifies the number of bits to extract. + + + + + + Description + + bitfieldExtract extracts a subset of the bits of value and returns + it in the least significant bits of the result. The range of bits extracted is [offset, offset + bits + 1]. + + + For unsigned data types, the most significant bits of the result will be set to zero. For signed data types, the most significant bits will be set to the value of + bit offset + base - 1 (i.e., it is sign extended to the width of the return type). + + + If bits is zero, the result will be zero. The result will be undefined if offset or bits is negative, + or if the sum of offset and bits is greater than the number of bits used to store the operand. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + bitfieldInsert#newin40# + + + + + + See Also + + bitfieldExtract + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/bitfieldInsert.xml b/upstream-man-pages/manglsl/bitfieldInsert.xml new file mode 100644 index 0000000..d4dfd0c --- /dev/null +++ b/upstream-man-pages/manglsl/bitfieldInsert.xml @@ -0,0 +1,108 @@ + + + + + + + 2011 + Khronos Group + + + bitfieldInsert + 3G + + + bitfieldInsert + insert a range of bits into an integer + + Declaration + + + genIType bitfieldInsert + genIType base + genIType insert + int offset + int bits + + genUType bitfieldInsert + genUType base + genUType insert + int offset + int bits + + + + Parameters + + + base + + + Specifies the integer into which to insert insert. + + + + + insert + + + Specifies the the value of the bits to insert. + + + + + offset + + + Specifies the index of the first bit to insert. + + + + + bits + + + Specifies the number of bits to insert. + + + + + + Description + + bitfieldInsert inserts the bits least significant bits of insert + into base at offset offset. The returned value will have bits + [offset, offset + bits + 1] taken from [0, bits - 1] + of insert and all other bits taken directly from the corresponding bits of base. If + bits is zero, the result will simply be the original value of base. The result will + be undefined if offset or bits is negative, or if the sum of offset + and bits is greater than the number of bits used to store the operand. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + bitfieldInsert#newin40# + + + + + + See Also + + bitfieldExtract + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/bitfieldReverse.xml b/upstream-man-pages/manglsl/bitfieldReverse.xml new file mode 100644 index 0000000..98877dd --- /dev/null +++ b/upstream-man-pages/manglsl/bitfieldReverse.xml @@ -0,0 +1,77 @@ + + + + + + + 2011 + Khronos Group + + + bitfieldReverse + 3G + + + bitfieldReverse + reverse the order of bits in an integer + + Declaration + + + genIType bitfieldReverse + genIType value + + genUType bitfieldReverse + genUType value + + + + Parameters + + + value + + + Specifies the value whose bits to reverse. + + + + + + Description + + bitfieldReverse returns the reversal of the bits of value. The bit + numbered n will be taken from bit (bits - 1) - n + of value, where bits is the total number of bits used to represent + value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + bitfieldReverse#newin40# + + + + + + See Also + + bitfieldExtract, + bitfieldInsert, + bitCount + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/bottom.php b/upstream-man-pages/manglsl/bottom.php new file mode 100644 index 0000000..c70047e --- /dev/null +++ b/upstream-man-pages/manglsl/bottom.php @@ -0,0 +1,9 @@ + + +OpenGL Shading Language (GLSL) Reference Pages + + + + + + diff --git a/upstream-man-pages/manglsl/ceil.xml b/upstream-man-pages/manglsl/ceil.xml new file mode 100644 index 0000000..87474ed --- /dev/null +++ b/upstream-man-pages/manglsl/ceil.xml @@ -0,0 +1,80 @@ + + + + + + + 2011 + Khronos Group + + + ceil + 3G + + + ceil + find the nearest integer that is greater than or equal to the parameter + + Declaration + + + genType ceil + genType x + + + + + genDType ceil + genDType x + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + ceil returns a value equal to the nearest integer that is + greater than or equal to x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + ceil (genType)#newin11# + + + ceil (genDType)#newin40# + + + + + + See Also + + floor, + round + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/clamp.xml b/upstream-man-pages/manglsl/clamp.xml new file mode 100644 index 0000000..708c37d --- /dev/null +++ b/upstream-man-pages/manglsl/clamp.xml @@ -0,0 +1,157 @@ + + + + + + + 2011 + Khronos Group + + + clamp + 3G + + + clamp + constrain a value to lie between two further values + + Declaration + + + genType clamp + genType x + genType minVal + genType maxVal + + + + + genType clamp + genType x + float minVal + float maxVal + + + + + genDType clamp + genDType x + genDType minVal + genDType maxVal + + + + + genDType clamp + genDType x + double minVal + double maxVal + + + + + genIType clamp + genIType x + genIType minVal + genIType maxVal + + + + + genIType clamp + genIType x + int minVal + int maxVal + + + + + genUType clamp + genUType x + genUType minVal + genUType maxVal + + + + + genUType clamp + genUType x + uint minVal + uint maxVal + + + + Parameters + + + x + + + Specify the value to constrain. + + + + + minVal + + + Specify the lower end of the range into which to constrain x. + + + + + maxVal + + + Specify the upper end of the range into which to constrain x. + + + + + + Description + + clamp returns the value of x constrained to the + range minVal to maxVal. The returned value is + computed as + min(max(x, + minVal), maxVal). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + clamp (genType)#newin11# + + + clamp (genIType)#newin13# + + + clamp (genUType)#newin13# + + + clamp (genDType)#newin40# + + + + + + See Also + + min, + max + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/cos.xml b/upstream-man-pages/manglsl/cos.xml new file mode 100644 index 0000000..e835d77 --- /dev/null +++ b/upstream-man-pages/manglsl/cos.xml @@ -0,0 +1,69 @@ + + + + + + + 2011 + Khronos Group + + + cos + 3G + + + cos + return the cosine of the parameter + + Declaration + + + genType cos + genType angle + + + + Parameters + + + angle + + + Specify the quantity, in radians, of which to return the cosine. + + + + + + Description + + cos returns the trigonometric cosine of angle. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + cos#newin11# + + + + + + See Also + + sin + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/cosh.xml b/upstream-man-pages/manglsl/cosh.xml new file mode 100644 index 0000000..b72eca7 --- /dev/null +++ b/upstream-man-pages/manglsl/cosh.xml @@ -0,0 +1,95 @@ + + + + + + + 2011 + Khronos Group + + + cosh + 3G + + + cosh + return the hyperbolic cosine of the parameter + + Declaration + + + genType cosh + genType x + + + + Parameters + + + x + + + Specify the value whose hyperbolic cosine to return. + + + + + + Description + + cosh returns the hyperbolic cosine of + x. + The hyperbolic cosine of x + is computed as + + + + + + e + x + + + + + e + + + x + + + + 2 + + + . + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + cosh#newin13# + + + + + + See Also + + sin, + cos, + sinh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/cross.xml b/upstream-man-pages/manglsl/cross.xml new file mode 100644 index 0000000..70beab9 --- /dev/null +++ b/upstream-man-pages/manglsl/cross.xml @@ -0,0 +1,155 @@ + + + + + + + 2011 + Khronos Group + + + cross + 3G + + + cross + calculate the cross product of two vectors + + Declaration + + + vec3 cross + vec3 x + vec3 y + + + dvec3 cross + dvec3 x + dvec3 y + + + + Parameters + + + x + + + Specifies the first of two vectors + + + + + y + + + Specifies the second of two vectors + + + + + + Description + + cross returns the cross product of two vectors, x and y. i.e., + + + + + + x + [ + 1 + ] + + y + [ + 2 + ] + + y + [ + 1 + ] + + x + [ + 2 + ] + + + x + [ + 2 + ] + + y + [ + 0 + ] + + y + [ + 2 + ] + + x + [ + 0 + ] + + + x + [ + 0 + ] + + y + [ + 1 + ] + + y + [ + 0 + ] + + x + [ + 1 + ] + + + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + cross (vec3)#newin11# + + + cross (dvec3)#newin40# + + + + + + See Also + + dot + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/dFdx.xml b/upstream-man-pages/manglsl/dFdx.xml new file mode 100644 index 0000000..bfb1257 --- /dev/null +++ b/upstream-man-pages/manglsl/dFdx.xml @@ -0,0 +1,81 @@ + + + + + + + 2011 + Khronos Group + + + dFdx, dFdy + 3G + + + dFdx, dFdy + return the partial derivative of an argument with respect to x or y + + Declaration + + + genType dFdx + genType p + + + genType dFdy + genType p + + + + Parameters + + + p + + + Specifies the expression of which to take the partial derivative. + + + + + + Description + + Available only in the fragment shader, dFdx and dFdy + return the partial derivative of expression p in x and y, respectively. Deviatives are calculated + using local differencing. Expressions that imply higher order derivatives such as dFdx(dFdx(n)) have undefined + results, as do mixed-order derivatives such as dFdx(dFdy(n)). + It is assumed that the expression p is continuous and therefore, expressions evaluated + via non-uniform control flow may be undefined. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + dFdx#newin11# + + + dFdy#newin11# + + + + + + See Also + + fwidth + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/degrees.xml b/upstream-man-pages/manglsl/degrees.xml new file mode 100644 index 0000000..e2f0722 --- /dev/null +++ b/upstream-man-pages/manglsl/degrees.xml @@ -0,0 +1,80 @@ + + + + + + + 2011 + Khronos Group + + + degrees + 3G + + + degrees + convert a quantity in radians to degrees + + Declaration + + + genType degrees + genType radians + + + + Parameters + + + radians + + + Specify the quantity, in radians, to be converted to degrees. + + + + + + Description + + degrees converts a quantity, specified in radians into degrees. That is, + the return value is + + + + + 180 + radians + + + + . + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + degrees#newin11# + + + + + + See Also + + radians + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/determinant.xml b/upstream-man-pages/manglsl/determinant.xml new file mode 100644 index 0000000..13d6221 --- /dev/null +++ b/upstream-man-pages/manglsl/determinant.xml @@ -0,0 +1,93 @@ + + + + + + + 2011 + Khronos Group + + + determinant + 3G + + + determinant + calculate the determinant of a matrix + + Declaration + + + float determinant + mat2 m + + + float determinant + mat3 m + + + float determinant + mat4 m + + + double determinant + dmat2 m + + + double determinant + dmat3 m + + + double determinant + dmat4 m + + + + Parameters + + + m + + + Specifies the matrix of which to take the determinant. + + + + + + Description + + determinant returns the determinant of the matrix m. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + determinant (float)#newin15# + + + determinant (double)#newin40# + + + + + + See Also + + transpose, + inverse + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/distance.xml b/upstream-man-pages/manglsl/distance.xml new file mode 100644 index 0000000..026e20e --- /dev/null +++ b/upstream-man-pages/manglsl/distance.xml @@ -0,0 +1,88 @@ + + + + + + + 2011 + Khronos Group + + + distance + 3G + + + distance + calculate the distance between two points + + Declaration + + + float distance + genType p0 + genType p1 + + + double distance + genDType p0 + genDType p1 + + + + Parameters + + + p0 + + + Specifies the first of two points + + + + + p1 + + + Specifies the second of two points + + + + + + Description + + distance returns the distance between the two points p0 and p1. i.e., + length(p0, p1); + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + distance (genType)#newin11# + + + distance (genDType)#newin40# + + + + + + See Also + + length, + normalize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/dot.xml b/upstream-man-pages/manglsl/dot.xml new file mode 100644 index 0000000..f66e5e9 --- /dev/null +++ b/upstream-man-pages/manglsl/dot.xml @@ -0,0 +1,109 @@ + + + + + + + 2011 + Khronos Group + + + dot + 3G + + + dot + calculate the dot product of two vectors + + Declaration + + + float dot + genType x + genType y + + + double dot + genDType x + genDType y + + + + Parameters + + + x + + + Specifies the first of two vectors + + + + + y + + + Specifies the second of two vectors + + + + + + Description + + dot returns the dot product of two vectors, x and y. i.e., + + x + [ + 0 + ] + + y + [ + 0 + ] + + + x + [ + 1 + ] + + y + [ + 1 + ] + + + ... + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + dot (genType)#newin11# + + + dot (genDType)#newin40# + + + + + + See Also + + cross + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/equal.xml b/upstream-man-pages/manglsl/equal.xml new file mode 100644 index 0000000..3aa1bfa --- /dev/null +++ b/upstream-man-pages/manglsl/equal.xml @@ -0,0 +1,96 @@ + + + + + + + 2011 + Khronos Group + + + equal + 3G + + + equal + perform a component-wise equal-to comparison of two vectors + + Declaration + + + bvec equal + vec x + vec y + + + bvec equal + ivec x + ivec y + + + bvec equal + uvec x + uvec y + + + + Parameters + + + x + + + Specifies the first vector to be used in the comparison operation. + + + + + x + + + Specifies the second vector to be used in the comparison operation. + + + + + + Description + + equal returns a boolean vector in which each element i is computed + as x[i] == y[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + equal#newin11# + + + + + + See Also + + lessThan, + lessThanEqual, + greaterThan, + greaterThanEqual, + notEqual, + any, + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/exp.xml b/upstream-man-pages/manglsl/exp.xml new file mode 100644 index 0000000..34e83e4 --- /dev/null +++ b/upstream-man-pages/manglsl/exp.xml @@ -0,0 +1,73 @@ + + + + + + + 2011 + Khronos Group + + + exp + 3G + + + exp + return the natural exponentiation of the parameter + + Declaration + + + genType exp + genType x + + + + Parameters + + + x + + + Specify the value to exponentiate. + + + + + + Description + + pow returns the natural exponentiation of x. i.e., + ex. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + exp#newin11# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/exp2.xml b/upstream-man-pages/manglsl/exp2.xml new file mode 100644 index 0000000..6c7cb0f --- /dev/null +++ b/upstream-man-pages/manglsl/exp2.xml @@ -0,0 +1,72 @@ + + + + + + + 2011 + Khronos Group + + + exp2 + 3G + + + exp2 + return 2 raised to the power of the parameter + + Declaration + + + genType exp2 + genType x + + + + Parameters + + + x + + + Specify the value of the power to which 2 will be raised. + + + + + + Description + + exp2 returns 2 raised to the power of x. i.e., + 2x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + exp2#newin11# + + + + + + See Also + + exp, + log, + log2 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/faceforward.xml b/upstream-man-pages/manglsl/faceforward.xml new file mode 100644 index 0000000..909dfe4 --- /dev/null +++ b/upstream-man-pages/manglsl/faceforward.xml @@ -0,0 +1,99 @@ + + + + + + + 2011 + Khronos Group + + + faceforward + 3G + + + faceforward + return a vector pointing in the same direction as another + + Declaration + + + genType faceforward + genType N + genType I + genType Nref + + + genDType faceforward + genDType N + genDType I + genDType Nref + + + + Parameters + + + N + + + Specifies the vector to orient. + + + + + I + + + Specifies the incident vector. + + + + + Nref + + + Specifies the reference vector. + + + + + + Description + + faceforward orients a vector to point away from a surface as defined by its normal. + If dot(Nref, I) < 0 + faceforward returns N, otherwise it returns -N. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + faceforward (genType)#newin11# + + + faceforward (genDType)#newin40# + + + + + + See Also + + reflect, + refract + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/findLSB.xml b/upstream-man-pages/manglsl/findLSB.xml new file mode 100644 index 0000000..221c487 --- /dev/null +++ b/upstream-man-pages/manglsl/findLSB.xml @@ -0,0 +1,73 @@ + + + + + + + 2011 + Khronos Group + + + findLSB + 3G + + + findLSB + find the index of the least significant bit set to 1 in an integer + + Declaration + + + genIType findLSB + genIType value + + genIType findLSB + genUType value + + + + Parameters + + + value + + + Specifies the value whose bits to scan. + + + + + + Description + + findLSB returns the bit number of the least significant bit that is set to 1 in the binary + representation of value. If value is zero, -1 will be returned. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + findLSB#newin40# + + + + + + See Also + + findMSB + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/findMSB.xml b/upstream-man-pages/manglsl/findMSB.xml new file mode 100644 index 0000000..53edeb1 --- /dev/null +++ b/upstream-man-pages/manglsl/findMSB.xml @@ -0,0 +1,75 @@ + + + + + + + 2011 + Khronos Group + + + findMSB + 3G + + + findMSB + find the index of the most significant bit set to 1 in an integer + + Declaration + + + genIType findMSB + genIType value + + genIType findMSB + genUType value + + + + Parameters + + + value + + + Specifies the value whose bits to scan. + + + + + + Description + + findMSB returns the bit number of the most significant bit that is set to 1 in the binary + representation of value. For positive integers, the result will be the bit number + of the most significant bit that is set to 1. For negative integers, the result will be the bit number of the + most significant bit set to 0. For a value of zero or negative 1, -1 will be returned. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + findMSB#newin40# + + + + + + See Also + + findLSB + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/floatBitsToInt.xml b/upstream-man-pages/manglsl/floatBitsToInt.xml new file mode 100644 index 0000000..54fcd4a --- /dev/null +++ b/upstream-man-pages/manglsl/floatBitsToInt.xml @@ -0,0 +1,79 @@ + + + + + + + 2011 + Khronos Group + + + floatBitsToInt + 3G + + + floatBitsToInt + produce the encoding of a floating point value as an integer + + Declaration + + + genIType floatBitsToInt + genType x + + + genUType floatBitsToUint + genType x + + + + Parameters + + + x + + + Specifies the value whose floating point encoding to return. + + + + + + Description + + floatBitsToInt and floatBitsToUint return the encoding + of their floating-point parameters as int or uint, respectively. The + floating-point bit-level representation is preserved. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + floatBitsToInt#newin33# + + + floatBitsToUInt#newin33# + + + + + + See Also + + intBitsToFloat, + uintBitsToFloat + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/floor.xml b/upstream-man-pages/manglsl/floor.xml new file mode 100644 index 0000000..f19c21b --- /dev/null +++ b/upstream-man-pages/manglsl/floor.xml @@ -0,0 +1,79 @@ + + + + + + + 2011 + Khronos Group + + + floor + 3G + + + floor + find the nearest integer less than or equal to the parameter + + Declaration + + + genType floor + genType x + + + + + genDType floor + genDType x + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + floor returns a value equal to the nearest integer that is less than or equal to x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + floor (genType)#newin11# + + + floor (genDType)#newin40# + + + + + + See Also + + trunc, + round + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/fma.xml b/upstream-man-pages/manglsl/fma.xml new file mode 100644 index 0000000..b6ce139 --- /dev/null +++ b/upstream-man-pages/manglsl/fma.xml @@ -0,0 +1,108 @@ + + + + + + + 2011 + Khronos Group + + + fma + 3G + + + fma + perform a fused multiply-add operation + + Declaration + + + genType fma + genType a + genType b + genType c + + + genDType fma + genDType a + genDType b + genDType c + + + + Parameters + + + a + + + Specifies the first multiplicand. + + + + + b + + + Specifies the second multiplicand. + + + + + c + + + Specifies the value to be added to the result. + + + + + + Description + + fma performs, where possible, a fused multiply-add operation, + returning a * b + c. + In use cases where the return value is eventually consumed by a variable declared as + precise: + + fma() is considered a single operation, whereas the + expression a * b + c consumed by a variable declared as precise + is considered two operations. + The precision of fma() can differ from the precision + of the expression a * b + c. + fma() will be computed with the same precision as any + other fma() consumed by a precise variable, + giving invariant results for the same input values of a, + b and c. + + Otherwise, in the absense of precise consumption, there are no + special constraints on the number of operations or difference in precision between + fma() and the expression a * b + c. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + fma (genType)#newin11# + + + fma (genDType)#newin40# + + + + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/fract.xml b/upstream-man-pages/manglsl/fract.xml new file mode 100644 index 0000000..2d75df1 --- /dev/null +++ b/upstream-man-pages/manglsl/fract.xml @@ -0,0 +1,80 @@ + + + + + + + 2011 + Khronos Group + + + fract + 3G + + + fract + compute the fractional part of the argument + + Declaration + + + genType fract + genType x + + + + + genDType fract + genDType x + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + fract returns the fractional part of x. This + is calculated as x - floor(x). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + fract (genType)#newin11# + + + fract (genDType)#newin40# + + + + + + See Also + + floor, + round + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/frexp.xml b/upstream-man-pages/manglsl/frexp.xml new file mode 100644 index 0000000..07929e1 --- /dev/null +++ b/upstream-man-pages/manglsl/frexp.xml @@ -0,0 +1,105 @@ + + + + + + + 2011 + Khronos Group + + + frexp + 3G + + + frexp + split a floating point number + + Declaration + + + genType frexp + genType x + out genIType exp + + + genDType frexp + genDType x + out genIType exp + + + + Parameters + + + x + + + Specifies the value from which significand and exponent are to be extracted. + + + + + out exp + + + Specifies the variable into which to place the exponent + + + + + + Description + + frexp extracts x into a floating-point significand + in the range [0.5, 1.0) and in integral exponent of two, such that: + + + + x + = + significand + + + 2 + exponent + + + + + The significand is returned by the function and the exponent is returned in the output + parameter exp. For a floating-point value of zero, the + significand and exponent are both zero. For a floating-point value that is an + infinity or a floating-point NaN, the results are undefined. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + frexp (genType)#newin40# + + + frexp (genDType)#newin40# + + + + + + See Also + + ldexp + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/fwidth.xml b/upstream-man-pages/manglsl/fwidth.xml new file mode 100644 index 0000000..c183ec6 --- /dev/null +++ b/upstream-man-pages/manglsl/fwidth.xml @@ -0,0 +1,72 @@ + + + + + + + 2011 + Khronos Group + + + fwidth + 3G + + + fwidth + return the sum of the absolute derivatives in x and y + + Declaration + + + genType fwidth + genType p + + + + Parameters + + + p + + + Specifies the expression of which to take the partial derivative. + + + + + + Description + + Available only in the fragment shader, fwidth returns the sum of + the absolute derivatives in x and y using local differencing for the input argument p. + It is equivalent to abs(dFdx(p)) + abs(dFdy(p)). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + fwidth#newin11# + + + + + + See Also + + dFdx, + dFdy + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_ClipDistance.xml b/upstream-man-pages/manglsl/gl_ClipDistance.xml new file mode 100644 index 0000000..d47f356 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_ClipDistance.xml @@ -0,0 +1,118 @@ + + + + + + + 2011 + Khronos Group + + + gl_ClipDistance + 3G + + + gl_ClipDistance + provides a forward-compatible mechanism for vertex clipping + + Declaration + + gl_ClipDistance is a member of the gl_PerVertex + named block: + + + + + + In the fragment language, it is intrinsically declared as: + + + in float gl_ClipDistance[]; + + + Description + + The gl_ClipDistance variable provides a forward compatible + mechanism for controlling user clipping. The element gl_ClipDistance[i] + specifies a clip distance for each user clip plane i. A distance of 0.0 means that + the vertex is on the plane, a positive distance means that the vertex is insider the clip plane, and a negative + distance means that the point is outside the clip plane. The clip distances will be linearly interpolated across + the primitive and the portion of the primitive with interpolated distances less than 0.0 will be clipped. + + + The gl_ClipDistance array is initially predeclared as unsized and must be + sized by the shader either by redeclaring it with an explicit size, or by indexing it + with only integral constant expressions. The array must be sized to include all + clip planes that are enabled via the OpenGL API; if the size does not include all enabled planes, + results are undefined. The size may be at most gl_MaxClipDistances. The number + of variing components consumed by gl_ClipDistance will match the size of the + array, no matter how many planes are enabled. The shader must also set all values in gl_ClipDistance + that have been enabled via the OpenGL API, or results are undefined. Values written into + gl_ClipDistance planes that are not enabled have no effect. + + + In the vertex, tessellation evaluation and geoemtry languages, a single + global instance of the gl_PerVertex named block is available and + its gl_ClipDistance member is an output that receives the + clip distances for the current vertex. It may be written at any time during shader execution. + The value written to gl_ClipDistance will be used by primitive assembly, + clipping, culling and other fixed functionality operations, if present, that operate on + primitives after vertex processing has occurred. + + + In the tessellation control language, the gl_PerVertex named block + is used to construct an array, gl_out[], whose gl_ClipDistance + members hold clip distances for each of the control points, which become available as inputs to the subsequent + tessellation evaluation shader. + + + The value of gl_ClipDistance (or the gl_ClipDistance member of the gl_out[] + array, in the case of the tessellation control shader) + is undefined after the vertex, tessellation control, and tessellation evaluation + shading stages if the corresponding shader executable does + not write to gl_ClipDistance. It is also undefined after the geometry processing stage if the geometry shader executable calls + EmitVertex without having + written gl_ClipDistance since the last call to EmitVertex + (or hasn't written it at all). + + + In the tessellation control, tessellation evaluation and geoemetry languages, + the gl_PerVertex named block is used to construct an array, gl_in[] + of per-vertex or per-control point inputs whose content represents the corresponding + outputs written by the previous stage. Only elements of the gl_ClipDistance + array that correspond to enabled clip planes have defined values. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_ClipDistance#newin13# + + + + + Versions 1.30 to 1.40 - vertex shader only. + Versions 1.50 to 3.30 - vertex and geometry shaders only. + + See Also + + gl_PointSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_FragCoord.xml b/upstream-man-pages/manglsl/gl_FragCoord.xml new file mode 100644 index 0000000..7d245d2 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_FragCoord.xml @@ -0,0 +1,79 @@ + + + + + + + 2011 + Khronos Group + + + gl_FragCoord + 3G + + + gl_FragCoord + contains the window-relative coordinates of the current fragment + + Declaration + + in vec4 gl_FragCoord; + + + Description + + Available only in the fragment language, gl_FragCoord is an input variable that contains the + window relative coordinate (x, y, z, 1/w) values for the fragment. If multi-sampling, + this value can be for any location within the pixel, or one of the fragment samples. + This value is the result of fixed functionality that interpolates primitives after vertex + processing to generate fragments. The z component is the depth value that would be used for the + fragment's depth if no shader contained any writes to gl_FragDepth. + + + gl_FragCoord may be redeclared with the additional layout qualifier identifiers + origin_upper_left or pixel_center_integer. By + default, gl_FragCoord assumes a lower-left origin for window coordinates + and assumes pixel centers are located at half-pixel centers. For example, the (x, y) location + (0.5, 0.5) is returned for the lower-left-most pixel in a window. The origin of + gl_FragCoord may be changed by redeclaring gl_FragCoord + with the origin_upper_left identifier. The values returned can also be + shifted by half a pixel in both x and y by pixel_center_integer so it + appears the pixels are centered at whole number pixel offsets. This moves the (x, y) value returned by + gl_FragCoord of (0.5, 0.5) by default to (0.0, 0.0) with + pixel_center_integer. + + + If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared + in all fragment shaders in that program that have static use of gl_FragCoord. Redeclaring + gl_FragCoord with any accepted qualifier affects only gl_FragCoord.x + and gl_FragCoord.y. It has no affect on rasterization, transformation or any other part + of the OpenGL pipline or language features. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_ClipDistance#newin11# + + + + + + See Also + + gl_FragCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_FragDepth.xml b/upstream-man-pages/manglsl/gl_FragDepth.xml new file mode 100644 index 0000000..accbc68 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_FragDepth.xml @@ -0,0 +1,62 @@ + + + + + + + 2011 + Khronos Group + + + gl_FragDepth + 3G + + + gl_FragDepth + establishes a depth value for the current fragment + + Declaration + + out float gl_FragDepth; + + + Description + + Available only in the fragment language, gl_FragDepth is an output variable + that is used to establish the depth value for the current fragment. If depth buffering is enabled + and no shader writes to gl_FragDepth, then the fixed function value for + depth will be used (this value is contained in the z component of gl_FragCoord) + otherwise, the value written to gl_FragDepth is used. + If a shader statically assigns to gl_FragDepth, then the value of the fragment's depth + may be undefined for executions of the shader that take that path. That is, if the set of linked fragment + shaders statically contain a write to gl_FragDepth, then it is responsible for always + writing it. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_FragDepth#newin11# + + + + + + See Also + + gl_FragCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_FrontFacing.xml b/upstream-man-pages/manglsl/gl_FrontFacing.xml new file mode 100644 index 0000000..c35c8bc --- /dev/null +++ b/upstream-man-pages/manglsl/gl_FrontFacing.xml @@ -0,0 +1,142 @@ + + + + + + + 2011 + Khronos Group + + + gl_FrontFacing + 3G + + + gl_FrontFacing + indicates whether a primitive is front or back facing + + Declaration + + in bool gl_FrontFacing; + + + Description + + Available only in the fragment language, gl_FrontFacing is an input variable + whose value is true if the fragment belongs to a front-facing primitive and + false otherwise. The determination of whether a triangle primitive is front-facing is made by + examining the sign of the area of the triangle, including a possible reversal of this sign + as controlled by glFrontFace. One way to compute this area is: + + + + a=12 + + j=0 + + + n-1 + + xwi + ywi+1 + - + xwi+1 + ywi + + + + where xwi and + ywi are + the x and y window coordinates of the ith vertex of the n-vertex polygon. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_FrontFacing + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_FragCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_GlobalInvocationID.xml b/upstream-man-pages/manglsl/gl_GlobalInvocationID.xml new file mode 100644 index 0000000..73b6a4e --- /dev/null +++ b/upstream-man-pages/manglsl/gl_GlobalInvocationID.xml @@ -0,0 +1,61 @@ + + + + + + + 2012 + Khronos Group + + + gl_GlobalInvocationID + 3G + + + gl_GlobalInvocationID + contains the global index of work item currently being operated on by a compute shader + + Declaration + + in uvec3 gl_GlobalInvocationID + + + Description + + In the compute language, gl_GlobalInvocationID + is a derived input variable containing the n-dimensional index of the + work invocation within the global work group that the current shader is + executing on. The value of gl_GlobalInvocationID is equal to + gl_WorkGroupID * gl_WorkGroupSize + gl_LocalInvocationID. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_GlobalInvocationID#newin43# + + + + + + See Also + + gl_NumWorkGroups, + gl_WorkGroupID, + gl_WorkGroupSize, + gl_LocalInvocationID + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_InstanceID.xml b/upstream-man-pages/manglsl/gl_InstanceID.xml new file mode 100644 index 0000000..14fadde --- /dev/null +++ b/upstream-man-pages/manglsl/gl_InstanceID.xml @@ -0,0 +1,121 @@ + + + + + + + 2011 + Khronos Group + + + gl_InstanceID + 3G + + + gl_InstanceID + contains the index of the current primitive in an instanced draw command + + Declaration + + in int gl_InstanceID; + + + Description + + gl_InstanceID is a vertex language input variable that + holds the integer index of the current primitive in an instanced draw + command such as glDrawArraysInstanced. If the current + primitive does not originate from an instanced draw command, the value + of gl_InstanceID is zero. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_InstanceID + + + - + + + - + + + - + + + Y + + + Y + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_VertexID + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_InvocationID.xml b/upstream-man-pages/manglsl/gl_InvocationID.xml new file mode 100644 index 0000000..5a89241 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_InvocationID.xml @@ -0,0 +1,127 @@ + + + + + + + 2011 + Khronos Group + + + gl_InvocationID + 3G + + + gl_InvocationID + contains the invocation index of the current shader + + Declaration + + in int gl_InvocationID; + + + Description + + In the tessellation control language, gl_InvocationID + contains the index of the output patch vertex assigned to the shader invocation. + It is assigned an integer value in the range [0, N-1] where N is the number of output + patch vertices. + + + In the geometry language, gl_InvocationID identifies + the invocation number assigned to the geometry shader invocation. It is assigned + an integer value in the range [0, N-1] where N is the number of geometry shader + invocations per primitive. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_InvocationID + + + - + + + - + + + - + + + - + + + Y1 + + + Y1 + + + Y + + + Y + + + + + + [1] Versions 1.50 to 3.30 - geometry shaders only. + + See Also + + gl_InstanceID + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_Layer.xml b/upstream-man-pages/manglsl/gl_Layer.xml new file mode 100644 index 0000000..77c4cfb --- /dev/null +++ b/upstream-man-pages/manglsl/gl_Layer.xml @@ -0,0 +1,155 @@ + + + + + + + 2012 + Khronos Group + + + gl_Layer + 3G + + + gl_Layer + contains the selected layer of a multi-layer framebuffer attachment + + Declaration + + out int gl_Layer; // Geometry stage + + + in int gl_Layer; // Fragment stage + + + Description + + In the geometry language, gl_Layer is used to select a specific + layer (or face and layer of cube map) in a multi-layer framebuffer attachment. The actual + layer used will come from one of the vertices in the primitive being shaded. Which vertex + the layer comes from is undefined and as such it is recommended to write the same value + to gl_Layer for all vertices in the primitive. If a shader statically + assigns a value to gl_Layer, layered rendering mode is enabled. + If a shader statically assigns a value to gl_Layer, and there is an execution path through + the shader that does not set gl_Layer, then the value of gl_Layer + is undefined for invocations of the shader that take that path. + + + When used with an array of cube map textures, the gl_Layer output variable + takes on a special value. Instead of referring to only the layer, it is used to select a cube map + face and a layer. Setting gl_Layer to the value + layer*6+face + will render to face + of the cube defined in layer. + The face values are as follows: + + + + + + + + Face Value + + + Resulting Target + + + + + 0 + + + GL_TEXTURE_CUBEMAP_POSITIVE_X + + + + + 1 + + + GL_TEXTURE_CUBEMAP_NEGATIVE_X + + + + + 2 + + + GL_TEXTURE_CUBEMAP_POSITIVE_Y + + + + + 3 + + + GL_TEXTURE_CUBEMAP_NEGATIVE_Y + + + + + 4 + + + GL_TEXTURE_CUBEMAP_POSITIVE_Z + + + + + 5 + + + GL_TEXTURE_CUBEMAP_NEGATIVE_Z + + + + + + + + For example, to render to the positive y cube map face located in the 5th layer of the + cube map array, gl_Layer should be set to + 5*6+2. + + + The input variable gl_Layer in the fragment language will have the same value that was written to the + output variable gl_Layer in the geometry language. If the geometry stage does not dynamically assign a + value to gl_Layer, the value of gl_Layer in the fragment stage will be undefined. If the geometry stage + makes no static assignment to gl_Layer, the input gl_Layer in the fragment stage will be zero. Otherwise, + the fragment stage will read the same value written by the geometry stage, even if that value is out of + range. If a fragment shader contains a static access to gl_Layer, it will count against the implementation + defined limit for the maximum number of inputs to the fragment stage. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + gl_Layer (geometry stage)#newin15# + + + gl_Layer (fragment stage)#newin43# + + + + + + See Also + + gl_ViewportIndex + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_LocalInvocationID.xml b/upstream-man-pages/manglsl/gl_LocalInvocationID.xml new file mode 100644 index 0000000..ad14946 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_LocalInvocationID.xml @@ -0,0 +1,62 @@ + + + + + + + 2012 + Khronos Group + + + gl_LocalInvocationID + 3G + + + gl_LocalInvocationID + contains the index of work item currently being operated on by a compute shader + + Declaration + + in uvec3 gl_LocalInvocationID + + + Description + + In the compute language, gl_LocalInvocationID + is an input variable containing the n-dimensional index of the local + work invocation within the work group that the current shader is + executing in. The possible values for this variable range across + the local work group size, i.e., (0,0,0) to (gl_WorkGroupSize.x - 1, + gl_WorkGroupSize.y - 1, gl_WorkGroupSize.z - 1). + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_LocalInvocationID#newin43# + + + + + + See Also + + gl_NumWorkGroups, + gl_WorkGroupID, + gl_WorkGroupSize, + gl_GlobalInvocationID + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_LocalInvocationIndex.xml b/upstream-man-pages/manglsl/gl_LocalInvocationIndex.xml new file mode 100644 index 0000000..0eb4811 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_LocalInvocationIndex.xml @@ -0,0 +1,63 @@ + + + + + + + 2012 + Khronos Group + + + gl_LocalInvocationIndex + 3G + + + gl_LocalInvocationIndex + contains the local linear index of work item currently being operated on by a compute shader + + Declaration + + in uint gl_LocalInvocationIndex + + + Description + + In the compute language, gl_LocalInvocationIndex + is a derived input variable containing the 1-dimensional linearized index of the + work invocation within the work group that the current shader is + executing on. The value of gl_LocalInvocationIndex is equal to + gl_LocalInvocationID.z * gl_WorkGroupSize.x * gl_WorkGroupSize.y + + gl_LocalInvocationID.y * gl_WorkGroupSize.x + + gl_LocalInvocationID.x. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_LocalInvocationIndex#newin43# + + + + + + See Also + + gl_NumWorkGroups, + gl_WorkGroupID, + gl_WorkGroupSize, + gl_LocalInvocationID + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_NumSamples.xml b/upstream-man-pages/manglsl/gl_NumSamples.xml new file mode 100644 index 0000000..a271854 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_NumSamples.xml @@ -0,0 +1,121 @@ + + + + + + + 2011 + Khronos Group + + + gl_NumSamples + 3G + + + gl_NumSamples + contains the total number of samples in the framebuffer + + Declaration + + in int gl_NumSamples; + + + Description + + gl_NumSamples is a fragment language input variable that contains + the number of samples in the framebuffer, or 1 if rendering to a non-multisample framebuffer. + gl_NumSamples is the sample count of the framebuffer regardless + of whether multisample rasterization is enabled or not. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_NumSamples + + + - + + + - + + + - + + + - + + + - + + + - + + + Y + + + Y + + + + + + + See Also + + gl_SamplePosition, + gl_SampleID + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_NumWorkGroups.xml b/upstream-man-pages/manglsl/gl_NumWorkGroups.xml new file mode 100644 index 0000000..709d835 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_NumWorkGroups.xml @@ -0,0 +1,60 @@ + + + + + + + 2012 + Khronos Group + + + gl_NumWorkGroups + 3G + + + gl_NumWorkGroups + contains the number of workgroups that have been dispatched to a compute shader + + Declaration + + in uvec3 gl_NumWorkGroups + + + Description + + In the compute language, gl_NumWorkGroups + contains the total number of work groups that will execute the compute + shader. The components of gl_NumWorkGroups are equal to the num_groups_x, + num_groups_y, and num_groups_z parameters passed to the + glDispatchCompute command. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_NumWorkGroups#newin43# + + + + + + See Also + + gl_WorkGroupSize, + gl_WorkGroupID, + gl_LocalInvocationID + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_PatchVerticesIn.xml b/upstream-man-pages/manglsl/gl_PatchVerticesIn.xml new file mode 100644 index 0000000..2da68bd --- /dev/null +++ b/upstream-man-pages/manglsl/gl_PatchVerticesIn.xml @@ -0,0 +1,59 @@ + + + + + + + 2011 + Khronos Group + + + gl_PatchVerticesIn + 3G + + + gl_PatchVerticesIn + contains the number of vertices in the current patch + + Declaration + + in int gl_PatchVerticesIn; + + + Description + + Available only in the tessellation control and evaluation languages, gl_PatchVerticesIn + contains the number of vertices in the input being processed by the shader. A single tessellation control or + evaluation shader can read patches of differing sizes, and so th value of gl_PatchVertexIn + may differ between patches. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_PatchVerticesIn#newin40# + + + + + + See Also + + gl_TessLevelOuter, + gl_TessLevelInner, + gl_TessCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_PointCoord.xml b/upstream-man-pages/manglsl/gl_PointCoord.xml new file mode 100644 index 0000000..993786c --- /dev/null +++ b/upstream-man-pages/manglsl/gl_PointCoord.xml @@ -0,0 +1,130 @@ + + + + + + + 2011 + Khronos Group + + + gl_PointCoord + 3G + + + gl_PointCoord + contains the coordinate of a fragment within a point + + Declaration + + in vec2 gl_PointCoord; + + + Description + + gl_PointCoord is a fragment language input variable that contains + the two-dimensional coordinates indicating where within a point primitive the current + fragment is located. If the current primitive is not a point, then values read + from gl_PointCoord are undefined. + + + gl_PointCoord.s ranges from 0.0 to 1.0 across the point horizontally + from left to right. If GL_POINT_SPRITE_COORD_ORIGIN is + GL_LOWER_LEFT, gl_PointCoord.t varies + from 0.0 to 1.0 vertically from bottom to top. Otherwise, if GL_POINT_SPRITE_COORD_ORIGIN + is GL_UPPER_LEFT then gl_PointCoord.t varies + from 0.0 to 1.0 vertically from top to bottom. The default value of GL_POINT_SPRITE_COORD_ORIGIN + is GL_UPPER_LEFT. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_PointCoord + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_FragCoord, + gl_FragDepth + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_PointSize.xml b/upstream-man-pages/manglsl/gl_PointSize.xml new file mode 100644 index 0000000..301e2ed --- /dev/null +++ b/upstream-man-pages/manglsl/gl_PointSize.xml @@ -0,0 +1,92 @@ + + + + + + + 2011 + Khronos Group + + + gl_PointSize + 3G + + + gl_PointSize + contains size of rasterized points, in pixels + + Declaration + + gl_PointSize is a member of the gl_PerVertex + named block: + + + + + + Description + + In the vertex, tessellation evaluation and geoemtry languages, a single + global instance of the gl_PerVertex named block is available and + its gl_PointSize member is an output that receives the + intended size of the point to be rasterized, in pixels. It may be written at any time + during shader execution. If GL_PROGRAM_POINT_SIZE is enabled, + gl_PointSize is used to determine the size of rasterized + points, otherwise it is ignored by the rasterization stage. + + + In the tessellation control language, the gl_PerVertex named block + is used to construct an array, gl_out[], whose members become + available as inputs to the subsequent tessellation evaluation shader. + + + The value of gl_PointSize (or the gl_PointSize member of the gl_out[] + array, in the case of the tessellation control shader) + is undefined after the vertex, tessellation control, and tessellation evaluation + shading stages if the corresponding shader executable does + not write to gl_PointSize. It is also undefined after the geometry processing stage if the geometry shader executable calls + EmitVertex without having + written gl_PointSize since the last call to EmitVertex + (or hasn't written it at all). + + + In the tessellation control, tessellation evaluation and geoemetry languages, + the gl_PerVertex named block is used to construct an array, gl_in[] + of per-vertex or per-control point inputs whose content represents the corresponding + outputs written by the previous stage. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_PointSize (vertex shader)#newin11# + + + gl_PointSize (geometry shader)#newin15# + + + + + + See Also + + gl_Position, gl_ClipDistance + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_Position.xml b/upstream-man-pages/manglsl/gl_Position.xml new file mode 100644 index 0000000..56b85d3 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_Position.xml @@ -0,0 +1,155 @@ + + + + + + + 2011 + Khronos Group + + + gl_Position + 3G + + + gl_Position + contains the position of the current vertex + + Declaration + + gl_Position is a member of the gl_PerVertex + named block: + + + + + + Description + + In the vertex, tessellation evaluation and geoemtry languages, a single + global instance of the gl_PerVertex named block is available and + its gl_Position member is an output that receives the + homogeneous vertex position. It may be written at any time during shader execution. + The value written to gl_Position will be used by primitive assembly, + clipping, culling and other fixed functionality operations, if present, that operate on + primitives after vertex processing has occurred. + + + In the tessellation control language, the gl_PerVertex named block + is used to construct an array, gl_out[], whose gl_Position + members hold the homogeneous control point position, which become available as inputs to the subsequent + tessellation evaluation shader. + + + The value of gl_Position (or the gl_Position member of the gl_out[] + array, in the case of the tessellation control shader) + is undefined after the vertex, tessellation control, and tessellation evaluation + shading stages if the corresponding shader executable does + not write to gl_Position. It is also undefined after the geometry processing stage if the geometry shader executable calls + EmitVertex without having + written gl_Position since the last call to EmitVertex + (or hasn't written it at all). + + + In the tessellation control, tessellation evaluation and geoemetry languages, + the gl_PerVertex named block is used to construct an array, gl_in[] + of per-vertex or per-control point inputs whose content represents the corresponding + outputs written by the previous stage. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_Position + + + Y1 + + + Y1 + + + Y1 + + + Y1 + + + Y2 + + + Y2 + + + Y + + + Y + + + + + + Versions 1.10 to 1.40 - vertex shader only. + Versions 1.50 to 3.30 - vertex and geometry shaders only. + + See Also + + gl_PointSize, gl_ClipDistance + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_PrimitiveID.xml b/upstream-man-pages/manglsl/gl_PrimitiveID.xml new file mode 100644 index 0000000..76a727e --- /dev/null +++ b/upstream-man-pages/manglsl/gl_PrimitiveID.xml @@ -0,0 +1,136 @@ + + + + + + + 2011 + Khronos Group + + + gl_PrimitiveID + 3G + + + gl_PrimitiveID + contains the index of the current primitive + + Declaration + + in int gl_PrimitiveID; (Tessellation control, tessellation evaluation and fragment languages) + out int gl_PrimitiveID; (Geometry language) + + + Description + + gl_PrimitiveID is a tessellation control, tessellation evaluation + and fragment language input variable. For the tessellation control and tessellation + evaluation languages, it holds the number of primitives processed by + the shader since the current set of rendering primitives was started. The first + primitive processed by the drawing command is numbered zero and the primitive ID counter is incremented after every individual point, line + or triangle primitive is processed. For triangles drawn in point or line mode, the + primitive ID counter is incremented only once, even through multiple points or lines + may actually be drawn. Restarting a primitive topology using the primitive restart + index has no effect on the primitive ID counter. + + + In the geometry language, gl_PrimitiveID is an output + variable that is passed to the corresponding gl_PrimitiveID input + variable in the fragment shader. If no geomery shader is present then gl_PrimitiveID + in the fragment language behaves identically as it would in the tessellation control and evaluation + languages. If a geometry shader is present but does not write to gl_PrimitiveID, + the value of gl_PrimitiveID in the fragment shader is undefined. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_PrimitiveID + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_InstanceID, + gl_VertexID, + gl_PrimitiveIDIn + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_PrimitiveIDIn.xml b/upstream-man-pages/manglsl/gl_PrimitiveIDIn.xml new file mode 100644 index 0000000..0ba5dbe --- /dev/null +++ b/upstream-man-pages/manglsl/gl_PrimitiveIDIn.xml @@ -0,0 +1,124 @@ + + + + + + + 2011 + Khronos Group + + + gl_PrimitiveIDIn + 3G + + + gl_PrimitiveIDIn + contains the index of the current primitive + + Declaration + + in int gl_PrimitiveIDIn; + + + Description + + gl_PrimitiveIDIn is a geometry language input variable that holds + the number of primitives processed by the shader since the current set of rendering + primitives was started. The first primitive processed by the drawing command is numbered + zero and the primitive ID counter is incremented after every individual point, line + or triangle primitive is processed. For triangles drawn in point or line mode, the + primitive ID counter is incremented only once, even through multiple points or lines + may actually be drawn. Restarting a primitive topology using the primitive restart + index has no effect on the primitive ID counter. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_PrimitiveIDIn + + + - + + + - + + + - + + + - + + + Y + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_InstanceID + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_SampleID.xml b/upstream-man-pages/manglsl/gl_SampleID.xml new file mode 100644 index 0000000..67a566f --- /dev/null +++ b/upstream-man-pages/manglsl/gl_SampleID.xml @@ -0,0 +1,67 @@ + + + + + + + 2011 + Khronos Group + + + gl_SampleID + 3G + + + gl_SampleID + contains the index of the sample currently being processed + + Declaration + + in int gl_SampleID; + + + Description + + gl_SampleID is a fragment language input variable that contains + the index of the sample currently being processed. This variable is in the range + 0 to gl_NumSamples - 1, where + gl_NumSamples + is the total number of samples in each fragment for the current framebuffer (and thus 1 if + rendering to a non-multisample buffer). Any static use of this variable in a fragment + shader causes the entire shader to be evaluated per-sample rather than per-fragment. + + + When rendering to a non-multisample buffer, or if multisample rasterization is disabled, + gl_SampleID will always be zero. gl_NumSamples + is the sample count of the framebuffer regardless of whether multisample rasterization is + enabled or not. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_SampleID#newin40# + + + + + + See Also + + gl_SamplePosition, + gl_NumSamples + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_SampleMask.xml b/upstream-man-pages/manglsl/gl_SampleMask.xml new file mode 100644 index 0000000..60e00a8 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_SampleMask.xml @@ -0,0 +1,142 @@ + + + + + + + 2011 + Khronos Group + + + gl_SampleMask + 3G + + + gl_SampleMask + specifies the sample coverage mask for the current fragment + + Declaration + + out int gl_SampleMask[]; + + + Description + + gl_SampleMask is a fragment language output array that may be + used to set the sample mask for the fragment being processed. Coverage for the current + fragment will become the logical AND of the coverage mask and the output gl_SampleMask. + That is, setting a bit in gl_SampleMask to zero will cause the + corresponding sample to be considered uncovered for the purposes of multisample fragment operations. However, + setting sample mask bits back to one will never enable samples not covered by the original primitive. + Bit B of mask gl_SampleMask[M] corresponds to sample + 32 * M + B. This array must be sized in the fragment shader + either implicitly or explicitly to be the same size as the implementation-dependent maximum + sample-mask (as an array of 32-bit elements), determined by the maximum number of samples. + If the fragment shader statically assigns a value to gl_SampleMask, the + sample mask will be undefined for any array elements of any fragment shader invocation that + fails to assign a value. If a shader does not statically assign a value to gl_SampleMask, + the sample mask has no effect on the processing of a fragment. + If the fragment shader is being evaluated at any frequency other than per-fragment, bits within + the sample mask not corresponding to the current fragment shader invocation are ignored. + + + Version Support + + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + Version 4.20 + + + + + gl_SampleMask + + + - + + + - + + + - + + + - + + + - + + + - + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_SampleMaskIn, + gl_SampleID, + gl_SamplePosition, + gl_FragCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_SampleMaskIn.xml b/upstream-man-pages/manglsl/gl_SampleMaskIn.xml new file mode 100644 index 0000000..e4141c8 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_SampleMaskIn.xml @@ -0,0 +1,78 @@ + + + + + + + 2011 + Khronos Group + + + gl_SampleMaskIn + 3G + + + gl_SampleMaskIn + contains the computed sample coverage mask for the current fragment + + Declaration + + in int gl_SampleMaskIn[]; + + + Description + + gl_SampleMaskIn is a fragment language that indicates the + set of samples covered by the primitive generating the fragment during + multisample rasterization. It has a sample bit set if and only if the sample + is considered covered for this fragment shader invocation. Bit + B of mask gl_SampleMask[M] + corresponds to sample 32 * M + B. + The array has ceil(s / 32) elements + where s is the maximum number of color samples supported + by the implementation. + + + Version Support + + + + + + + + + + + + + + #VARTABLEHEADER# + + + gl_SampleMaskIn + + #newin40# + + + + + + See Also + + gl_SampleMask, + gl_SampleID, + gl_SamplePosition, + gl_FragCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_SamplePosition.xml b/upstream-man-pages/manglsl/gl_SamplePosition.xml new file mode 100644 index 0000000..52b78c9 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_SamplePosition.xml @@ -0,0 +1,126 @@ + + + + + + + 2011 + Khronos Group + + + gl_SamplePosition + 3G + + + gl_SamplePosition + contains the location of the current sample within the current fragment + + Declaration + + in vec2 gl_SamplePosition; + + + Description + + gl_SamplePosition is a fragment language input variable that contains + the location within a fragment of the sample currently being processed. The x and y components + of gl_SamplePosition contain the sub-pixel coordinate of the current + sample and will have values in the range 0.0 to 1.0. The sub-pixel coordinates of the center + of the pixel are always (0.5, 0.5). Any static use of gl_SamplePosition + causes the entire fragment shader to be evaluated per-sample rather than per-fragment. When rendering + to a non-multisample buffer, or if multisample rasterization is disabled, gl_SamplePosition + will be (0.5, 0.5). + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_SamplePosition + + + - + + + - + + + - + + + - + + + - + + + - + + + Y + + + Y + + + + + + + See Also + + gl_SampleID, + gl_SampleMask, + gl_FragCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_TessCoord.xml b/upstream-man-pages/manglsl/gl_TessCoord.xml new file mode 100644 index 0000000..c132aee --- /dev/null +++ b/upstream-man-pages/manglsl/gl_TessCoord.xml @@ -0,0 +1,121 @@ + + + + + + + 2011 + Khronos Group + + + gl_TessCoord + 3G + + + gl_TessCoord + contains the coordinate of the vertex within the current patch + + Declaration + + in vec3 gl_TessCoord; + + + Description + + Available only in the tessellation cevaluation language, gl_TessCoord + specifies the three component (u, v, w) vector identifying the position of the vertex being + processed by the shader relative to the primitive being tessellated. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_TessCoord + + + - + + + - + + + - + + + - + + + - + + + - + + + Y + + + Y + + + + + + + See Also + + gl_TessLevelOuter, + gl_TessLevelInner, + gl_PatchVerticesIn + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_TessLevelInner.xml b/upstream-man-pages/manglsl/gl_TessLevelInner.xml new file mode 100644 index 0000000..ee7ff03 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_TessLevelInner.xml @@ -0,0 +1,127 @@ + + + + + + + 2011 + Khronos Group + + + gl_TessLevelInner + 3G + + + gl_TessLevelInner + contains the inner tessellation levels for the current patch + + Declaration + + patch out float gl_TessLevelInner[2]; (tessellation control language) + patch in float gl_TessLevelInner[2]; (tessellation evaluation languge) + + + Description + + Available only in the tessellation control and evaluation languages, gl_TessLevelInner + is used to assign values to the corresponding inner tesellation levels of the current patch. The values written + into gl_TessLevelInner by the tessellation control shader are used by the tessellation + primitive generator to control primitive tessellation and may be read by the subsequent tessellation evaluation shader. + + + As inputs to the tessellation evaluation shader, gl_TessLevelInner contains the values + written by the tessellation control shader, if present. If no tessellation control shader is present, it + contains the default tessellation level. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_TessLevelInner + + + - + + + - + + + - + + + - + + + - + + + - + + + Y + + + Y + + + + + + + See Also + + gl_TessLevelOuter, + gl_TessCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_TessLevelOuter.xml b/upstream-man-pages/manglsl/gl_TessLevelOuter.xml new file mode 100644 index 0000000..939a407 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_TessLevelOuter.xml @@ -0,0 +1,127 @@ + + + + + + + 2011 + Khronos Group + + + gl_TessLevelOuter + 3G + + + gl_TessLevelOuter + contains the outer tessellation levels for the current patch + + Declaration + + patch out float gl_TessLevelOuter[4]; (tessellation control language) + patch in float gl_TessLevelInner[4]; (tessellation evaluation languge) + + + Description + + Available only in the tessellation control and evaluation languages, gl_TessLevelOuter + is used to assign values to the corresponding outer tesellation levels of the current patch. The values written + into gl_TessLevelOuter by the tessellation control shader are used by the tessellation + primitive generator to control primitive tessellation and may be read by the subsequent tessellation evaluation shader. + + + As inputs to the tessellation evaluation shader, gl_TessLevelOuter contains the values + written by the tessellation control shader, if present. If no tessellation control shader is present, it + contains the default tessellation level. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_TessLevelOuter + + + - + + + - + + + - + + + - + + + - + + + - + + + Y + + + Y + + + + + + + See Also + + gl_TessLevelInner, + gl_TessCoord + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_VertexID.xml b/upstream-man-pages/manglsl/gl_VertexID.xml new file mode 100644 index 0000000..633f659 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_VertexID.xml @@ -0,0 +1,121 @@ + + + + + + + 2011 + Khronos Group + + + gl_VertexID + 3G + + + gl_VertexID + contains the index of the current vertex + + Declaration + + in int gl_VertexID; + + + Description + + gl_VertexID is a vertex language input variable that holds an + integer index for the vertex. The index is impliclty generated by glDrawArrays + and other commands that do not reference the content of the GL_ELEMENT_ARRAY_BUFFER, or + explicitly generated from the content of the GL_ELEMENT_ARRAY_BUFFER + by commands such as glDrawElements. + + + Version Support + + + + + + + + + + + + + + + Variable + + + Version 1.10 + + + Version 1.20 + + + Version 1.30 + + + Version 1.40 + + + Version 1.50 + + + Version 3.30 + + + Version 4.00 + + + Version 4.10 + + + + + gl_VertexID + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + Y + + + + + + + See Also + + gl_InstanceID + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_ViewportIndex.xml b/upstream-man-pages/manglsl/gl_ViewportIndex.xml new file mode 100644 index 0000000..26dda70 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_ViewportIndex.xml @@ -0,0 +1,80 @@ + + + + + + + 2011 + Khronos Group + + + gl_ViewportIndex + 3G + + + gl_ViewportIndex + contains the index of the viewport to be used in viewport transformation and scissoring + + Declaration + + out int gl_ViewportIndex; // Geometry stage + + + in int gl_ViewportIndex; // Fragment stage + + + Description + + In the geometry language, gl_ViewportIndex is used to specify the index + of the viewport to which the next primitive emitted from the shader should be drawn. Primitives generated + by the geometry shader will undergo viewport transformation and scissor testing using the viewport + transformation and scissor rectangle selected by the value of gl_ViewportIndex. + The viewport index used will come from one of the vertices in the primitive being shaded. However, which + vertex the viewport index comes from is implementation-defined, and so it is recommended to use the same + viewport index for all vertices of a primitive. If a geometry shader does not assign a value to + gl_ViewportIndex, viewport transform and scissor rectangle zero will be used. + If a geometry shader statically assigns a value to gl_ViewportIndex and there + is a path through the shader that does not assign a value to gl_ViewportIndex, + the value of gl_ViewportIndex is undefined for executions of the shader that take + that path. + + + In the fragment language, gl_ViewportIndex will have the same value that was written to the + output variable gl_ViewportIndex in the geometry stage. If the geometry stage does not dynamically + assign to gl_ViewportIndex, the value of gl_ViewportIndex in the fragment shader will be undefined. If + the geometry stage makes no static assignment to gl_ViewportIndex, the fragment stage will read zero. + Otherwise, the fragment stage will read the same value written by the geometry stage, even if that value is + out of range. If a fragment shader contains a static access to gl_ViewportIndex, it will count against the + implementation defined limit for the maximum number of inputs to the fragment stage. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + gl_ViewportIndex (geometry stage)#newin15# + + + gl_ViewportIndex (fragment stage)#newin43# + + + + + + See Also + + gl_Layer + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_WorkGroupID.xml b/upstream-man-pages/manglsl/gl_WorkGroupID.xml new file mode 100644 index 0000000..4a52e7e --- /dev/null +++ b/upstream-man-pages/manglsl/gl_WorkGroupID.xml @@ -0,0 +1,60 @@ + + + + + + + 2012 + Khronos Group + + + gl_WorkGroupID + 3G + + + gl_WorkGroupID + contains the index of the workgroup currently being operated on by a compute shader + + Declaration + + in uvec3 gl_WorkGroupID + + + Description + + In the compute language, gl_WorkGroupID + contains the 3-dimensional index of the global work group + that the current compute shader invocation is executing within. The possible values range + across the parameters passed into glDispatchCompute, i.e., from (0, 0, 0) to + (gl_NumWorkGroups.x - 1, gl_NumWorkGroups.y - 1, gl_NumWorkGroups.z - 1). + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_WorkGroupID#newin43# + + + + + + See Also + + gl_NumWorkGroups, + gl_WorkGroupID, + gl_LocalInvocationID + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/gl_WorkGroupSize.xml b/upstream-man-pages/manglsl/gl_WorkGroupSize.xml new file mode 100644 index 0000000..abc6432 --- /dev/null +++ b/upstream-man-pages/manglsl/gl_WorkGroupSize.xml @@ -0,0 +1,62 @@ + + + + + + + 2012 + Khronos Group + + + gl_WorkGroupSize + 3G + + + gl_WorkGroupSize + contains the size of the workgroup operated on by a compute shader + + Declaration + + const uvec3 gl_WorkGroupSize + + + Description + + In the compute language, gl_WorkGroupSize + contains the size of a workgroup declared by a compute + shader. The size of the work group in the X, Y, and Z dimensions is stored in the x, y, and z components of gl_WorkGroupSize. + The values stored in gl_WorkGroupSize match those specified in the + required local_size_x, local_size_y, and local_size_z layout + qualifiers for the current shader. This value is constant so that it can be used to size arrays of memory that can be shared within + the local work group. + + + Version Support + + #VARTABLECOLS# + + #VARTABLEHEADER# + + gl_WorkGroupSize#newin43# + + + + + + See Also + + gl_NumWorkGroups, + gl_WorkGroupID, + gl_LocalInvocationID + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/greaterThan.xml b/upstream-man-pages/manglsl/greaterThan.xml new file mode 100644 index 0000000..286bd36 --- /dev/null +++ b/upstream-man-pages/manglsl/greaterThan.xml @@ -0,0 +1,102 @@ + + + + + + + 2011 + Khronos Group + + + greaterThan + 3G + + + greaterThan + perform a component-wise greater-than comparison of two vectors + + Declaration + + + bvec greaterThan + vec x + vec y + + + bvec greaterThan + ivec x + ivec y + + + bvec greaterThan + uvec x + uvec y + + + + Parameters + + + x + + + Specifies the first vector to be used in the comparison operation. + + + + + y + + + Specifies the second vector to be used in the comparison operation. + + + + + + Description + + greaterThan returns a boolean vector in which each element i is computed + as x[i] > y[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + greaterThan (vec)#newin11# + + + greaterThan (ivec)#newin11# + + + greaterThan (uvec)#newin13# + + + + + + See Also + + lessThan, + lessThanEqual, + greaterThanEqual, + equal, + notEqual, + any, + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/greaterThanEqual.xml b/upstream-man-pages/manglsl/greaterThanEqual.xml new file mode 100644 index 0000000..3f6ef3a --- /dev/null +++ b/upstream-man-pages/manglsl/greaterThanEqual.xml @@ -0,0 +1,102 @@ + + + + + + + 2011 + Khronos Group + + + greaterThanEqual + 3G + + + greaterThanEqual + perform a component-wise greater-than-or-equal comparison of two vectors + + Declaration + + + bvec greaterThanEqual + vec x + vec y + + + bvec greaterThanEqual + ivec x + ivec y + + + bvec greaterThanEqual + uvec x + uvec y + + + + Parameters + + + x + + + Specifies the first vector to be used in the comparison operation. + + + + + y + + + Specifies the second vector to be used in the comparison operation. + + + + + + Description + + greaterThanEqual returns a boolean vector in which each element i is computed + as x[i] ≥ y[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + greaterThanEqual (vec)#newin11# + + + greaterThanEqual (ivec)#newin11# + + + greaterThanEqual (uvec)#newin13# + + + + + + See Also + + lessThan, + lessThanEqual, + greaterThan, + equal, + notEqual, + any, + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/groupMemoryBarrier.xml b/upstream-man-pages/manglsl/groupMemoryBarrier.xml new file mode 100644 index 0000000..4e719d1 --- /dev/null +++ b/upstream-man-pages/manglsl/groupMemoryBarrier.xml @@ -0,0 +1,62 @@ + + + + + + + 2012 + Khronos Group + + + groupMemoryBarrier + 3G + + + groupMemoryBarrier + controls the ordering of memory transaction issued shader invocation relative to a work group + + Declaration + + + void groupMemoryBarrier + void + + + + Description + + groupMemoryBarrier waits on the completion of all memory accesses performed + by an invocation of a compute shader relative to the same access performed by other invocations + in the same work group and then returns with no other effect. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + groupMemoryBarrier#newin43# + + + + + + See Also + + memoryBarrier, + memoryBarrierImage, + memoryBarrierBuffer, + memoryBarrierShared + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicAdd.xml b/upstream-man-pages/manglsl/imageAtomicAdd.xml new file mode 100644 index 0000000..7ad686e --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicAdd.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicAdd + 3G + + + imageAtomicAdd + atomically add a value to an existing value in memory and return the original value + + Declaration + + + uint imageAtomicAdd + gimage1D image + int P + uint data + + + uint imageAtomicAdd + gimage2D image + ivec2 P + uint data + + + uint imageAtomicAdd + gimage3D image + ivec3 P + uint data + + + uint imageAtomicAdd + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicAdd + gimageCube image + ivec3 P + uint data + + + uint imageAtomicAdd + gbufferImage image + int P + uint data + + + uint imageAtomicAdd + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicAdd + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicAdd + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicAdd + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicAdd + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicAdd + gimage1D image + int P + int data + + + int imageAtomicAdd + gimage2D image + ivec2 P + int data + + + int imageAtomicAdd + gimage3D image + ivec3 P + int data + + + int imageAtomicAdd + gimage2DRect image + ivec2 P + int data + + + int imageAtomicAdd + gimageCube image + ivec3 P + int data + + + int imageAtomicAdd + gbufferImage image + int P + int data + + + int imageAtomicAdd + gimage1DArray image + ivec2 P + int data + + + int imageAtomicAdd + gimage2DArray image + ivec3 P + int data + + + int imageAtomicAdd + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicAdd + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicAdd + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to add data. + + + + + P + + + Specify the coordinate at which to add the data. + + + + + sample + + + When present, specifies the sample within the image to add into. + + + + + data + + + Specifies the data to add into the image. + + + + + + Description + + imageAtomicAdd atomically computes a new value by adding the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicAdd#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicMin, + imageAtomicMax, + imageAtomicAnd, + imageAtomicOr, + imageAtomicXor, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicAnd.xml b/upstream-man-pages/manglsl/imageAtomicAnd.xml new file mode 100644 index 0000000..d33d595 --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicAnd.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicAnd + 3G + + + imageAtomicAnd + atomically compute the logical AND of a value with an existing value in memory, store that value and return the original value + + Declaration + + + uint imageAtomicAnd + gimage1D image + int P + uint data + + + uint imageAtomicAnd + gimage2D image + ivec2 P + uint data + + + uint imageAtomicAnd + gimage3D image + ivec3 P + uint data + + + uint imageAtomicAnd + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicAnd + gimageCube image + ivec3 P + uint data + + + uint imageAtomicAnd + gbufferImage image + int P + uint data + + + uint imageAtomicAnd + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicAnd + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicAnd + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicAnd + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicAnd + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicAnd + gimage1D image + int P + int data + + + int imageAtomicAnd + gimage2D image + ivec2 P + int data + + + int imageAtomicAnd + gimage3D image + ivec3 P + int data + + + int imageAtomicAnd + gimage2DRect image + ivec2 P + int data + + + int imageAtomicAnd + gimageCube image + ivec3 P + int data + + + int imageAtomicAnd + gbufferImage image + int P + int data + + + int imageAtomicAnd + gimage1DArray image + ivec2 P + int data + + + int imageAtomicAnd + gimage2DArray image + ivec3 P + int data + + + int imageAtomicAnd + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicAnd + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicAnd + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to store data. + + + + + P + + + Specify the coordinate at which to store the data. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data to logically AND into the image. + + + + + + Description + + imageAtomicAnd atomically computes a new value by logically ANDing the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicAnd#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicOr, + imageAtomicXor, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicCompSwap.xml b/upstream-man-pages/manglsl/imageAtomicCompSwap.xml new file mode 100644 index 0000000..f924eaf --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicCompSwap.xml @@ -0,0 +1,267 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicCompSwap + 3G + + + imageAtomicCompSwap + atomically compares supplied data with that in memory and conditionally stores it to memory + + Declaration + + + uint imageAtomicCompSwap + gimage1D image + int P + uint compare + uint data + + + uint imageAtomicCompSwap + gimage2D image + ivec2 P + uint compare + uint data + + + uint imageAtomicCompSwap + gimage3D image + ivec3 P + uint compare + uint data + + + uint imageAtomicCompSwap + gimage2DRect image + ivec2 P + uint compare + uint data + + + uint imageAtomicCompSwap + gimageCube image + ivec3 P + uint compare + uint data + + + uint imageAtomicCompSwap + gbufferImage image + int P + uint compare + uint data + + + uint imageAtomicCompSwap + gimage1DArray image + ivec2 P + uint compare + uint data + + + uint imageAtomicCompSwap + gimage2DArray image + ivec3 P + uint compare + uint data + + + uint imageAtomicCompSwap + gimageCubeArray image + ivec3 P + uint compare + uint data + + + uint imageAtomicCompSwap + gimage2DMS image + ivec2 P + int sample + uint compare + uint data + + + uint imageAtomicCompSwap + gimage2DMSArray image + ivec3 P + int sample + uint compare + uint data + + + int imageAtomicCompSwap + gimage1D image + int P + int compare + int data + + + int imageAtomicCompSwap + gimage2D image + ivec2 P + int compare + int data + + + int imageAtomicCompSwap + gimage3D image + ivec3 P + int compare + int data + + + int imageAtomicCompSwap + gimage2DRect image + ivec2 P + int compare + int data + + + int imageAtomicCompSwap + gimageCube image + ivec3 P + int compare + int data + + + int imageAtomicCompSwap + gbufferImage image + int P + int compare + int data + + + int imageAtomicCompSwap + gimage1DArray image + ivec2 P + int compare + int data + + + int imageAtomicCompSwap + gimage2DArray image + ivec3 P + int compare + int data + + + int imageAtomicCompSwap + gimageCubeArray image + ivec3 P + int compare + int data + + + int imageAtomicCompSwap + gimage2DMS image + ivec2 P + int sample + int compare + int data + + + int imageAtomicCompSwap + gimage2DMSArray image + ivec3 P + int sample + int compare + int data + + + + Parameters + + + image + + + Specify the image unit into which to compare and conditionally store data. + + + + + P + + + Specify the coordinate at which to compare and conditionally store the data. + + + + + sample + + + When present, specifies the sample within the image to compare and conditionally store into. + + + + + compare + + + Specifies the value to compare with the content of the image. + + + + + data + + + Specifies the value to store in the image if compare is equal to the existing image content. + + + + + + Description + + imageAtomicCompSwap atomically compares the value of compare + with that of the texel at coordinate P and sample (for multisampled forms) in the + image bound to uint image. If the values are equal, data is + stored into the texel, otherwise it is discarded. It returns the original value of the texel regardless of + the result of the comparison operation. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicCompSwap#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicXor, + imageAtomicOr, + imageAtomicAnd, + imageAtomicCompSwap + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicExchange.xml b/upstream-man-pages/manglsl/imageAtomicExchange.xml new file mode 100644 index 0000000..9b3d18a --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicExchange.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicExchange + 3G + + + imageAtomicExchange + atomically store supplied data into memory and return the original value from memory + + Declaration + + + uint imageAtomicExchange + gimage1D image + int P + uint data + + + uint imageAtomicExchange + gimage2D image + ivec2 P + uint data + + + uint imageAtomicExchange + gimage3D image + ivec3 P + uint data + + + uint imageAtomicExchange + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicExchange + gimageCube image + ivec3 P + uint data + + + uint imageAtomicExchange + gbufferImage image + int P + uint data + + + uint imageAtomicExchange + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicExchange + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicExchange + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicExchange + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicExchange + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicExchange + gimage1D image + int P + int data + + + int imageAtomicExchange + gimage2D image + ivec2 P + int data + + + int imageAtomicExchange + gimage3D image + ivec3 P + int data + + + int imageAtomicExchange + gimage2DRect image + ivec2 P + int data + + + int imageAtomicExchange + gimageCube image + ivec3 P + int data + + + int imageAtomicExchange + gbufferImage image + int P + int data + + + int imageAtomicExchange + gimage1DArray image + ivec2 P + int data + + + int imageAtomicExchange + gimage2DArray image + ivec3 P + int data + + + int imageAtomicExchange + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicExchange + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicExchange + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to store data. + + + + + P + + + Specify the coordinate at which to store the data. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data to exchange with that stored in the image. + + + + + + Description + + imageAtomicExchange atomically stores the value of data + into texel at coordinate P and sample in the + image bound to uint image, and returns the original value of the texel. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicExchange#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicXor, + imageAtomicOr, + imageAtomicAnd, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicMax.xml b/upstream-man-pages/manglsl/imageAtomicMax.xml new file mode 100644 index 0000000..6a56b2f --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicMax.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicMax + 3G + + + imageAtomicMax + atomically compute the minimum of a value with an existing value in memory, store that value and return the original value + + Declaration + + + uint imageAtomicMax + gimage1D image + int P + uint data + + + uint imageAtomicMax + gimage2D image + ivec2 P + uint data + + + uint imageAtomicMax + gimage3D image + ivec3 P + uint data + + + uint imageAtomicMax + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicMax + gimageCube image + ivec3 P + uint data + + + uint imageAtomicMax + gbufferImage image + int P + uint data + + + uint imageAtomicMax + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicMax + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicMax + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicMax + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicMax + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicMax + gimage1D image + int P + int data + + + int imageAtomicMax + gimage2D image + ivec2 P + int data + + + int imageAtomicMax + gimage3D image + ivec3 P + int data + + + int imageAtomicMax + gimage2DRect image + ivec2 P + int data + + + int imageAtomicMax + gimageCube image + ivec3 P + int data + + + int imageAtomicMax + gbufferImage image + int P + int data + + + int imageAtomicMax + gimage1DArray image + ivec2 P + int data + + + int imageAtomicMax + gimage2DArray image + ivec3 P + int data + + + int imageAtomicMax + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicMax + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicMax + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to store data. + + + + + P + + + Specify the coordinate at which to store the data. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data of which to take the minimum with that stored in the image. + + + + + + Description + + imageAtomicMax atomically computes a new value by finding the maximum of the value of data + and the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicMax#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicXor, + imageAtomicOr, + imageAtomicAnd, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicMin.xml b/upstream-man-pages/manglsl/imageAtomicMin.xml new file mode 100644 index 0000000..c5e1d9c --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicMin.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicMin + 3G + + + imageAtomicMin + atomically compute the minimum of a value with an existing value in memory, store that value and return the original value + + Declaration + + + uint imageAtomicMin + gimage1D image + int P + uint data + + + uint imageAtomicMin + gimage2D image + ivec2 P + uint data + + + uint imageAtomicMin + gimage3D image + ivec3 P + uint data + + + uint imageAtomicMin + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicMin + gimageCube image + ivec3 P + uint data + + + uint imageAtomicMin + gbufferImage image + int P + uint data + + + uint imageAtomicMin + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicMin + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicMin + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicMin + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicMin + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicMin + gimage1D image + int P + int data + + + int imageAtomicMin + gimage2D image + ivec2 P + int data + + + int imageAtomicMin + gimage3D image + ivec3 P + int data + + + int imageAtomicMin + gimage2DRect image + ivec2 P + int data + + + int imageAtomicMin + gimageCube image + ivec3 P + int data + + + int imageAtomicMin + gbufferImage image + int P + int data + + + int imageAtomicMin + gimage1DArray image + ivec2 P + int data + + + int imageAtomicMin + gimage2DArray image + ivec3 P + int data + + + int imageAtomicMin + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicMin + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicMin + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to store data. + + + + + P + + + Specify the coordinate at which to store the data. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data of which to take the minimum with that stored in the image. + + + + + + Description + + imageAtomicMin atomically computes a new value by finding the minimum of the value of data + and the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicMin#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMax, + imageAtomicXor, + imageAtomicOr, + imageAtomicAnd, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicOr.xml b/upstream-man-pages/manglsl/imageAtomicOr.xml new file mode 100644 index 0000000..b424b79 --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicOr.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicOr + 3G + + + imageAtomicOr + atomically compute the logical OR of a value with an existing value in memory, store that value and return the original value + + Declaration + + + uint imageAtomicOr + gimage1D image + int P + uint data + + + uint imageAtomicOr + gimage2D image + ivec2 P + uint data + + + uint imageAtomicOr + gimage3D image + ivec3 P + uint data + + + uint imageAtomicOr + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicOr + gimageCube image + ivec3 P + uint data + + + uint imageAtomicOr + gbufferImage image + int P + uint data + + + uint imageAtomicOr + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicOr + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicOr + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicOr + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicOr + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicOr + gimage1D image + int P + int data + + + int imageAtomicOr + gimage2D image + ivec2 P + int data + + + int imageAtomicOr + gimage3D image + ivec3 P + int data + + + int imageAtomicOr + gimage2DRect image + ivec2 P + int data + + + int imageAtomicOr + gimageCube image + ivec3 P + int data + + + int imageAtomicOr + gbufferImage image + int P + int data + + + int imageAtomicOr + gimage1DArray image + ivec2 P + int data + + + int imageAtomicOr + gimage2DArray image + ivec3 P + int data + + + int imageAtomicOr + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicOr + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicOr + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to store data. + + + + + P + + + Specify the coordinate at which to store the data. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data to logically OR into the image. + + + + + + Description + + imageAtomicOr atomically computes a new value by logically ORing the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicOr#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicAnd, + imageAtomicXor, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageAtomicXor.xml b/upstream-man-pages/manglsl/imageAtomicXor.xml new file mode 100644 index 0000000..d7af03a --- /dev/null +++ b/upstream-man-pages/manglsl/imageAtomicXor.xml @@ -0,0 +1,235 @@ + + + + + + + 2011 + Khronos Group + + + imageAtomicXor + 3G + + + imageAtomicXor + atomically compute the logical exclusive OR of a value with an existing value in memory, store that value and return the original value + + Declaration + + + uint imageAtomicXor + gimage1D image + int P + uint data + + + uint imageAtomicXor + gimage2D image + ivec2 P + uint data + + + uint imageAtomicXor + gimage3D image + ivec3 P + uint data + + + uint imageAtomicXor + gimage2DRect image + ivec2 P + uint data + + + uint imageAtomicXor + gimageCube image + ivec3 P + uint data + + + uint imageAtomicXor + gbufferImage image + int P + uint data + + + uint imageAtomicXor + gimage1DArray image + ivec2 P + uint data + + + uint imageAtomicXor + gimage2DArray image + ivec3 P + uint data + + + uint imageAtomicXor + gimageCubeArray image + ivec3 P + uint data + + + uint imageAtomicXor + gimage2DMS image + ivec2 P + int sample + uint data + + + uint imageAtomicXor + gimage2DMSArray image + ivec3 P + int sample + uint data + + + int imageAtomicXor + gimage1D image + int P + int data + + + int imageAtomicXor + gimage2D image + ivec2 P + int data + + + int imageAtomicXor + gimage3D image + ivec3 P + int data + + + int imageAtomicXor + gimage2DRect image + ivec2 P + int data + + + int imageAtomicXor + gimageCube image + ivec3 P + int data + + + int imageAtomicXor + gbufferImage image + int P + int data + + + int imageAtomicXor + gimage1DArray image + ivec2 P + int data + + + int imageAtomicXor + gimage2DArray image + ivec3 P + int data + + + int imageAtomicXor + gimageCubeArray image + ivec3 P + int data + + + int imageAtomicXor + gimage2DMS image + ivec2 P + int sample + int data + + + int imageAtomicXor + gimage2DMSArray image + ivec3 P + int sample + int data + + + + Parameters + + + image + + + Specify the image unit into which to store data. + + + + + P + + + Specify the coordinate at which to store the data. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data to logically XOR into the image. + + + + + + Description + + imageAtomicXor atomically computes a new value by logically XORing the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageAtomicXor#newin42# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicOr, + imageAtomicAnd, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageLoad.xml b/upstream-man-pages/manglsl/imageLoad.xml new file mode 100644 index 0000000..54636cc --- /dev/null +++ b/upstream-man-pages/manglsl/imageLoad.xml @@ -0,0 +1,150 @@ + + + + + + + 2011 + Khronos Group + + + imageLoad + 3G + + + imageLoad + load a single texel from an image + + Declaration + + + gvec4 imageLoad + gimage1D image + int P + + + gvec4 imageLoad + gimage2D image + ivec2 P + + + gvec4 imageLoad + gimage3D image + ivec3 P + + + gvec4 imageLoad + gimage2DRect image + ivec2 P + + + gvec4 imageLoad + gimageCube image + ivec3 P + + + gvec4 imageLoad + gbufferImage image + int P + + + gvec4 imageLoad + gimage1DArray image + ivec2 P + + + gvec4 imageLoad + gimage2DArray image + ivec3 P + + + gvec4 imageLoad + gimageCubeArray image + ivec3 P + + + gvec4 imageLoad + gimage2DMS image + ivec2 P + int sample + + + gvec4 imageLoad + gimage2DMSArray image + ivec3 P + int sample + + + + Parameters + + + image + + + Specify the image unit from which to load a texel. + + + + + P + + + Specify the coordinate from which to load the texel. + + + + + sample + + + When present, specifies the sample within the image to load + + + + + + Description + + imageLoad loads the texel at the coordinate P from the image + unit image. For multi-sample loads, the sample number is given by sample. When + image, P, sample identify a valid texel, the bits used + to represent the selected texel in memory are converted to a vec4, ivec4, or uvec4 in the manner described in the OpenGL + Specification and returned. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageLoad#newin42# + + + + + + See Also + + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicAnd, + imageAtomicOr, + imageAtomicXor, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageSize.xml b/upstream-man-pages/manglsl/imageSize.xml new file mode 100644 index 0000000..69e96d3 --- /dev/null +++ b/upstream-man-pages/manglsl/imageSize.xml @@ -0,0 +1,114 @@ + + + + + + + 2012 + Khronos Group + + + imageSize + 3G + + + imageSize + retrieve the dimensions of an image + + Declaration + + + int imageSize + gimage1D image + + + ivec2 imageSize + gimage2D image + + + ivec3 imageSize + gimage3D image + + + ivec2 imageSize + gimageCube image + + + ivec3 imageSize + gimageCubeArray image + + + ivec2 imageSize + gimageRect image + + + ivec2 imageSize + gimage1DArray image + + + ivec3 imageSize + gimage2DArray image + + + int imageSize + gimageBuffer image + + + ivec2 imageSize + gimage2DMS image + + + ivec3 imageSize + gimage2DMSArray image + + + + Parameters + + + image + + + Specifies the image to which the texture whose dimensions to retrieve is bound. + + + + + + Description + + imageSize returns the dimensions of the image bound to image. + The components in the return value are filled in, + in order, with the width, height and depth of the image. For the array forms, the last component of the + return value is the number of layers in the texture array. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageSize#newin43# + + + + + + See Also + + textureSize, + imageLoad, + imageStore + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/imageStore.xml b/upstream-man-pages/manglsl/imageStore.xml new file mode 100644 index 0000000..443831b --- /dev/null +++ b/upstream-man-pages/manglsl/imageStore.xml @@ -0,0 +1,169 @@ + + + + + + + 2011 + Khronos Group + + + imageStore + 3G + + + imageStore + write a single texel into an image + + Declaration + + + void imageStore + gimage1D image + int P + gvec4 data + + + void imageStore + gimage2D image + ivec2 P + gvec4 data + + + void imageStore + gimage3D image + ivec3 P + gvec4 data + + + void imageStore + gimage2DRect image + ivec2 P + gvec4 data + + + void imageStore + gimageCube image + ivec3 P + gvec4 data + + + void imageStore + gbufferImage image + int P + gvec4 data + + + void imageStore + gimage1DArray image + ivec2 P + gvec4 data + + + void imageStore + gimage2DArray image + ivec3 P + gvec4 data + + + void imageStore + gimageCubeArray image + ivec3 P + gvec4 data + + + void imageStore + gimage2DMS image + ivec2 P + int sample + gvec4 data + + + void imageStore + gimage2DMSArray image + ivec3 P + int sample + gvec4 data + + + + Parameters + + + image + + + Specify the image unit into which to store a texel. + + + + + P + + + Specify the coordinate at which to store the texel. + + + + + sample + + + When present, specifies the sample within the image to store into. + + + + + data + + + Specifies the data to store into the image. + + + + + + Description + + imageStore stores data into the texel at the coordinate P from + the image specified by image. For multi-sample stores, the sample number is given by sample. When + image, P, and sample identify a valid texel, the bits + used to represent data are converted to the format of the image unit in the manner described in of the OpenGL Specification and stored to + the specified texel. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + imageStore#newin42# + + + + + + See Also + + imageLoad, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicAnd, + imageAtomicOr, + imageAtomicXor, + imageAtomicExchange, + imageAtomicCompSwap + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/index.php b/upstream-man-pages/manglsl/index.php new file mode 100644 index 0000000..3102d98 --- /dev/null +++ b/upstream-man-pages/manglsl/index.php @@ -0,0 +1,9 @@ + + +OpenGL Shading Language (GLSL) Reference Pages + + + + + + diff --git a/upstream-man-pages/manglsl/intBitsToFloat.xml b/upstream-man-pages/manglsl/intBitsToFloat.xml new file mode 100644 index 0000000..06ede18 --- /dev/null +++ b/upstream-man-pages/manglsl/intBitsToFloat.xml @@ -0,0 +1,81 @@ + + + + + + + 2011 + Khronos Group + + + intBitsToFloat + 3G + + + intBitsToFloat, uintBitsToFloat + produce a floating point using an encoding supplied as an integer + + Declaration + + + genType intBitsToFloat + genIType x + + + genType uintBitsToFloat + genUType x + + + + Parameters + + + x + + + Specifies the bit encoding to return as a floating point value. + + + + + + Description + + intBitsToFloat and uintBitsToFloat return the encoding + passed in parameter x as a floating-point value. If the encoding of + a NaN is passed in x, it will not signal and the resulting value will + be undefined. If the encoding of a floating point infinity is passed in parameter x, + the resulting floating-point value is the corresponding (positive or negative) floating + point infinity. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + intBitsToFloat#newin33# + + + + + + See Also + + floatBitsToInt, + floatBitsToUint, + isnan, + isinf + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/interpolateAtCentroid.xml b/upstream-man-pages/manglsl/interpolateAtCentroid.xml new file mode 100644 index 0000000..bc2111c --- /dev/null +++ b/upstream-man-pages/manglsl/interpolateAtCentroid.xml @@ -0,0 +1,84 @@ + + + + + + + 2011 + Khronos Group + + + interpolateAtCentroid + 3G + + + interpolateAtCentroid + sample a varying at the centroid of a pixel + + Declaration + + + float interpolateAtCentroid + float interpolant + + + vec2 interpolateAtCentroid + vec2 interpolant + + + vec3 interpolateAtCentroid + vec3 interpolant + + + vec4 interpolateAtCentroid + vec4 interpolant + + + + Parameters + + + interpolant + + + Specifies the interpolant to be sampled at the pixel centroid. + + + + + + Description + + interpolateAtCentroid returns the value of the input varying interpolant + sampled at a location inside both the pixel and the primitive being processed. The value obtained would be the value + assigned to the input variable if declared with the centroid qualifier. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + interpolateAtCentroid#newin40# + + + + + + See Also + + interpolateAtSample, + interpolateAtOffset + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/interpolateAtOffset.xml b/upstream-man-pages/manglsl/interpolateAtOffset.xml new file mode 100644 index 0000000..b8a9403 --- /dev/null +++ b/upstream-man-pages/manglsl/interpolateAtOffset.xml @@ -0,0 +1,98 @@ + + + + + + + 2011 + Khronos Group + + + interpolateAtOffset + 3G + + + interpolateAtOffset + sample a varying at specified offset from the center of a pixel + + Declaration + + + float interpolateAtOffset + float interpolant + vec2 offset + + + vec2 interpolateAtOffset + vec2 interpolant + vec2 offset + + + vec3 interpolateAtOffset + vec3 interpolant + vec2 offset + + + vec4 interpolateAtOffset + vec4 interpolant + vec2 offset + + + + Parameters + + + interpolant + + + Specifies the interpolant to be sampled at the specified offset. + + + + + offset + + + Specifies the offset from the center of the pixel at which to sample interpolant. + + + + + + Description + + interpolateAtOffset returns the value of the input varying interpolant + sampled at an offset from the center of the pixel specified by offset. The two floating-point + components of offset give the offset in pixels in the x and y + directions from the center of the pixel, respectively. An offset of (0, 0) identifies the center of the pixel. The range and granularity of + offsets supported by this function is implementation-dependent. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + interpolateAtoOffset#newin40# + + + + + + See Also + + interpolateAtCentroid, + interpolateAtSample + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/interpolateAtSample.xml b/upstream-man-pages/manglsl/interpolateAtSample.xml new file mode 100644 index 0000000..85978a6 --- /dev/null +++ b/upstream-man-pages/manglsl/interpolateAtSample.xml @@ -0,0 +1,97 @@ + + + + + + + 2011 + Khronos Group + + + interpolateAtSample + 3G + + + interpolateAtSample + sample a varying at the location of a specified sample + + Declaration + + + float interpolateAtSample + float interpolant + int sample + + + vec2 interpolateAtSample + vec2 interpolant + int sample + + + vec3 interpolateAtSample + vec3 interpolant + int sample + + + vec4 interpolateAtSample + vec4 interpolant + int sample + + + + Parameters + + + interpolant + + + Specifies the interpolant to be sampled at the location of sample sample. + + + + + sample + + + Specifies the index of the sample whose location will be used to sample interpolant. + + + + + + Description + + interpolateAtSample returns the value of the input varying interpolant + sampled at the location of sample number sample. If multisample buffers are not available, + the input varying will be evaluated at the center of the pixel. If sample sample does not + exist, the position used to interpolate the input varying is undefined. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + interpolateAtSample#newin40# + + + + + + See Also + + interpolateAtCentroid, + interpolateAtOffset + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/inverse.xml b/upstream-man-pages/manglsl/inverse.xml new file mode 100644 index 0000000..fa3557c --- /dev/null +++ b/upstream-man-pages/manglsl/inverse.xml @@ -0,0 +1,94 @@ + + + + + + + 2011 + Khronos Group + + + inverse + 3G + + + inverse + calculate the inverse of a matrix + + Declaration + + + mat2 inverse + mat2 m + + + mat3 inverse + mat3 m + + + mat4 inverse + mat4 m + + + dmat2 inverse + dmat2 m + + + dmat3 inverse + dmat3 m + + + dmat4 inverse + dmat4 m + + + + Parameters + + + m + + + Specifies the matrix of which to take the inverse. + + + + + + Description + + inverse returns the inverse of the matrix m. The values in the + returned matrix are undefined if m is singular or poorly-conditioned (nearly singular). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + inverse (float)#newin14# + + + inverse (double)#newin40# + + + + + + See Also + + transpose, + determinant + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/inversesqrt.xml b/upstream-man-pages/manglsl/inversesqrt.xml new file mode 100644 index 0000000..0ec1588 --- /dev/null +++ b/upstream-man-pages/manglsl/inversesqrt.xml @@ -0,0 +1,81 @@ + + + + + + + 2011 + Khronos Group + + + inversesqrt + 3G + + + inversesqrt + return the inverse of the square root of the parameter + + Declaration + + + genType inversesqrt + genType x + + + + + genDType inversesqrt + genDType x + + + + Parameters + + + x + + + Specify the value of which to take the inverse of the square root. + + + + + + Description + + inversesqrt returns the inverse of the square root of x. + i.e., the value 1x. + Results are undefined if x0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + inversesqrt (genType)#newin13# + + + inversesqrt (genDType)#newin40# + + + + + + See Also + + pow, + sqrt + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/isinf.xml b/upstream-man-pages/manglsl/isinf.xml new file mode 100644 index 0000000..f7df0b1 --- /dev/null +++ b/upstream-man-pages/manglsl/isinf.xml @@ -0,0 +1,77 @@ + + + + + + + 2011 + Khronos Group + + + isinf + 3G + + + isinf + determine whether the parameter is positive or negative infinity + + Declaration + + + genBType isinf + genType x + + + genBType isinf + genDType x + + + + Parameters + + + x + + + Specifies the value to test for infinity. + + + + + + Description + + For each element element i of the result, isinf returns true if + x[i] is posititve or negative floating point infinity and false otherwise. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + isinf (genType)#newin11# + + + isinf (genDType)#newin40# + + + + + + See Also + + isnan + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/isnan.xml b/upstream-man-pages/manglsl/isnan.xml new file mode 100644 index 0000000..34971bb --- /dev/null +++ b/upstream-man-pages/manglsl/isnan.xml @@ -0,0 +1,77 @@ + + + + + + + 2011 + Khronos Group + + + isnan + 3G + + + isnan + determine whether the parameter is a number + + Declaration + + + genBType isnan + genType x + + + genBType isnan + genDType x + + + + Parameters + + + x + + + Specifies the value to test for NaN. + + + + + + Description + + For each element element i of the result, isinf returns true if + x[i] is posititve or negative floating point NaN (Not a Number) and false otherwise. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + isnan (genType)#newin13# + + + isnan (genDType)#newin40# + + + + + + See Also + + isinf + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/ldexp.xml b/upstream-man-pages/manglsl/ldexp.xml new file mode 100644 index 0000000..07940a1 --- /dev/null +++ b/upstream-man-pages/manglsl/ldexp.xml @@ -0,0 +1,101 @@ + + + + + + + 2011 + Khronos Group + + + ldexp + 3G + + + ldexp + assemble a floating point number from a value and exponent + + Declaration + + + genType ldexp + genType x + genIType exp + + + genDType ldexp + genDType x + genIType exp + + + + Parameters + + + x + + + Specifies the value to be used as a source of significand. + + + + + out exp + + + Specifies the value to be used as a source of exponent. + + + + + + Description + + ldexp builds a floating point number from x and + the corresponding integral exponent of two in exp, returning: + + + + significand + + + 2 + exponent + + + + + If this product is too large to be represented in the floating point type, the result + is undefined. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + ldexp (genType)#newin40# + + + ldexp (genDType)#newin40# + + + + + + See Also + + frexp + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/length.xml b/upstream-man-pages/manglsl/length.xml new file mode 100644 index 0000000..3ca5a88 --- /dev/null +++ b/upstream-man-pages/manglsl/length.xml @@ -0,0 +1,99 @@ + + + + + + + 2011 + Khronos Group + + + length + 3G + + + length + calculate the length of a vector + + Declaration + + + float length + genType x + + + double length + genDType x + + + + Parameters + + + x + + + Specifies a vector of which to calculate the length. + + + + + + Description + + length returns the length of the vector. i.e., + + + + + + + x[0] + + 2 + + + + + + x[1] + + 2 + + + + ... + + + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + length (genType)#newin11# + + + length (genDType)#newin40# + + + + + + See Also + + distance, + normalize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/lessThan.xml b/upstream-man-pages/manglsl/lessThan.xml new file mode 100644 index 0000000..d193923 --- /dev/null +++ b/upstream-man-pages/manglsl/lessThan.xml @@ -0,0 +1,102 @@ + + + + + + + 2011 + Khronos Group + + + lessThan + 3G + + + lessThan + perform a component-wise less-than comparison of two vectors + + Declaration + + + bvec lessThan + vec x + vec y + + + bvec lessThan + ivec x + ivec y + + + bvec lessThan + uvec x + uvec y + + + + Parameters + + + x + + + Specifies the first vector to be used in the comparison operation. + + + + + y + + + Specifies the second vector to be used in the comparison operation. + + + + + + Description + + lessThan returns a boolean vector in which each element i is computed + as x[i] < y[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + lessThan (vec)#newin11# + + + lessThan (ivec)#newin11# + + + lessThan (uvec)#newin13# + + + + + + See Also + + lessThanEqual, + greaterThan, + greaterThanEqual, + equal, + notEqual, + any, + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/lessThanEqual.xml b/upstream-man-pages/manglsl/lessThanEqual.xml new file mode 100644 index 0000000..cb30b69 --- /dev/null +++ b/upstream-man-pages/manglsl/lessThanEqual.xml @@ -0,0 +1,102 @@ + + + + + + + 2011 + Khronos Group + + + lessThanEqual + 3G + + + lessThanEqual + perform a component-wise less-than-or-equal comparison of two vectors + + Declaration + + + bvec lessThanEqual + vec x + vec y + + + bvec lessThanEqual + ivec x + ivec y + + + bvec lessThanEqual + uvec x + uvec y + + + + Parameters + + + x + + + Specifies the first vector to be used in the comparison operation. + + + + + y + + + Specifies the second vector to be used in the comparison operation. + + + + + + Description + + lessThanEqual returns a boolean vector in which each element i is computed + as x[i] ≤ y[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + lessThanEqual (vec)#newin11# + + + lessThanEqual (ivec)#newin11# + + + lessThanEqual (uvec)#newin13# + + + + + + See Also + + lessThan, + greaterThan, + greaterThanEqual, + equal, + notEqual, + any, + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/log.xml b/upstream-man-pages/manglsl/log.xml new file mode 100644 index 0000000..737aa8c --- /dev/null +++ b/upstream-man-pages/manglsl/log.xml @@ -0,0 +1,74 @@ + + + + + + + 2011 + Khronos Group + + + log + 3G + + + log + return the natural logarithm of the parameter + + Declaration + + + genType log + genType x + + + + Parameters + + + x + + + Specify the value of which to take the natural logarithm. + + + + + + Description + + log returns the natural logarithm of x. i.e., the value + y which satisfies + xey. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + log (genType)#newin11# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/log2.xml b/upstream-man-pages/manglsl/log2.xml new file mode 100644 index 0000000..268f9da --- /dev/null +++ b/upstream-man-pages/manglsl/log2.xml @@ -0,0 +1,74 @@ + + + + + + + 2011 + Khronos Group + + + log2 + 3G + + + log2 + return the base 2 logarithm of the parameter + + Declaration + + + genType log2 + genType x + + + + Parameters + + + x + + + Specify the value of which to take the base 2 logarithm. + + + + + + Description + + log2 returns the base 2 logarithm of x. i.e., the value + y which satisfies + x2y. + Results are undefined if x0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + log2#newin11# + + + + + + See Also + + exp, + log, + exp2 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/matrixCompMult.xml b/upstream-man-pages/manglsl/matrixCompMult.xml new file mode 100644 index 0000000..53c6aba --- /dev/null +++ b/upstream-man-pages/manglsl/matrixCompMult.xml @@ -0,0 +1,90 @@ + + + + + + + 2011 + Khronos Group + + + matrixCompMult + 3G + + + matrixCompMult + perform a component-wise multiplication of two matrices + + Declaration + + + mat matrixCompMult + mat x + mat y + + + dmat matrixCompMult + dmat x + dmat y + + + + Parameters + + + x + + + Specifies the first matrix multiplicand. + + + + + y + + + Specifies the second matrix multiplicand. + + + + + + Description + + matrixCompMult performs a component-wise multiplication of two + matrices, yielding a result matrix where each component, result[i][j] is + computed as the scalar product of x[i][j] and + y[i][j]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + matrixCompMult (genType)#newin11# + + + matrixCompMult (genDType)#newin40# + + + + + + See Also + + dot, + reflect + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/max.xml b/upstream-man-pages/manglsl/max.xml new file mode 100644 index 0000000..5dc0c45 --- /dev/null +++ b/upstream-man-pages/manglsl/max.xml @@ -0,0 +1,139 @@ + + + + + + + 2011 + Khronos Group + + + max + 3G + + + max + return the greater of two values + + Declaration + + + genType max + genType x + genType y + + + + + genType max + genType x + float y + + + + + genDType max + genDType x + genDType y + + + + + genDType max + genDType x + double y + + + + + genIType max + genIType x + genIType y + + + + + genIType max + genIType x + int y + + + + + genUType max + genUType x + genUType y + + + + + genUType max + genUType x + uint y + + + + Parameters + + + x + + + Specify the first value to compare. + + + + + y + + + Specify the second value to compare. + + + + + + Description + + max returns the maximum of the two parameters. It + returns y if y is greater than + x, otherwise it returns x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + max (genType)#newin11# + + + max (genIType)#newin13# + + + max (genUType)#newin13# + + + max (genDType)#newin40# + + + + + + See Also + + min, + abs + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/memoryBarrier.xml b/upstream-man-pages/manglsl/memoryBarrier.xml new file mode 100644 index 0000000..b383918 --- /dev/null +++ b/upstream-man-pages/manglsl/memoryBarrier.xml @@ -0,0 +1,74 @@ + + + + + + + 2011 + Khronos Group + + + memoryBarrier + 3G + + + memoryBarrier + controls the ordering of memory transactions issued by a single shader invocation + + Declaration + + + uint memoryBarrier + void + + + + Description + + memoryBarrier waits on the completion of all memory accesses resulting from the use of + image variables or atomic counters and then returns with no other effect. When this function returns, the + results of any memory stores performed using coherent variables performed prior to the call will be visible + to any future coherent memory access to the same addresses from other shader invocations. In particular, + the values written this way in one shader stage are guaranteed to be visible to coherent memory accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + memoryBarrier#newin40# + + + + + + See Also + + imageLoad, + imageStore, + imageAtomicAdd, + imageAtomicMin, + imageAtomicMax, + imageAtomicXor, + imageAtomicOr, + imageAtomicAnd, + imageAtomicExchange, + imageAtomicCompSwap, + memoryBarrier + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/memoryBarrierAtomicCounter.xml b/upstream-man-pages/manglsl/memoryBarrierAtomicCounter.xml new file mode 100644 index 0000000..939efe0 --- /dev/null +++ b/upstream-man-pages/manglsl/memoryBarrierAtomicCounter.xml @@ -0,0 +1,64 @@ + + + + + + + 2012 + Khronos Group + + + memoryBarrierAtomicCounter + 3G + + + memoryBarrierAtomicCounter + controls the ordering of operations on atomic counters issued by a single shader invocation + + Declaration + + + void memoryBarrierAtomicCounter + void + + + + Description + + memoryBarrierAtomicCounter waits on the completion of all accesses resulting from the use of + atomic counters and then returns with no other effect. When this function returns, the + results of any modifications to the value of atomic counters will be visible + to any access to the same counter from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + memoryBarrierAtomicCounter#newin43# + + + + + + See Also + + memoryBarrier + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/memoryBarrierBuffer.xml b/upstream-man-pages/manglsl/memoryBarrierBuffer.xml new file mode 100644 index 0000000..b55bcc5 --- /dev/null +++ b/upstream-man-pages/manglsl/memoryBarrierBuffer.xml @@ -0,0 +1,67 @@ + + + + + + + 2012 + Khronos Group + + + memoryBarrierBuffer + 3G + + + memoryBarrierBuffer + controls the ordering of operations on buffer variables issued by a single shader invocation + + Declaration + + + void memoryBarrierBuffer + void + + + + Description + + memoryBarrierBuffer waits on the completion of all memory accesses resulting + from the use of buffer variables and then returns with no other effect. When this function returns, the + results of any modifications to the content of buffer variables will be visible + to any access to the same buffer from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + memoryBarrierBuffer#newin43# + + + + + + See Also + + memoryBarrier, + memoryBarrierImage, + memoryBarrierShared, + groupMemoryBarrier + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/memoryBarrierImage.xml b/upstream-man-pages/manglsl/memoryBarrierImage.xml new file mode 100644 index 0000000..f119368 --- /dev/null +++ b/upstream-man-pages/manglsl/memoryBarrierImage.xml @@ -0,0 +1,67 @@ + + + + + + + 2012 + Khronos Group + + + memoryBarrierImage + 3G + + + memoryBarrierImage + controls the ordering of operations on image variables issued by a single shader invocation + + Declaration + + + void memoryBarrierImage + void + + + + Description + + memoryBarrierImage waits on the completion of all memory accesses resulting + from the use of image variables and then returns with no other effect. When this function returns, the + results of any modifications to the content of image variables will be visible + to any access to the same buffer from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + memoryBarrierImage#newin43# + + + + + + See Also + + memoryBarrier, + memoryBarrierShared, + memoryBarrierBuffer, + groupMemoryBarrier + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/memoryBarrierShared.xml b/upstream-man-pages/manglsl/memoryBarrierShared.xml new file mode 100644 index 0000000..2e2434a --- /dev/null +++ b/upstream-man-pages/manglsl/memoryBarrierShared.xml @@ -0,0 +1,70 @@ + + + + + + + 2012 + Khronos Group + + + memoryBarrierShared + 3G + + + memoryBarrierShared + controls the ordering of operations on shared variables issued by a single shader invocation + + Declaration + + + void memoryBarrierShared + void + + + + Description + + memoryBarrierShared waits on the completion of all memory accesses resulting + from the use of shared variables and then returns with no other effect. When this function returns, the + results of any modifications to the content of shared variables will be visible + to any access to the same buffer from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). + + + memoryBarrierShared is available only in the compute language. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + memoryBarrierShared#newin43# + + + + + + See Also + + memoryBarrier, + memoryBarrierImage, + memoryBarrierBuffer, + groupMemoryBarrier + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/min.xml b/upstream-man-pages/manglsl/min.xml new file mode 100644 index 0000000..bb95a14 --- /dev/null +++ b/upstream-man-pages/manglsl/min.xml @@ -0,0 +1,139 @@ + + + + + + + 2011 + Khronos Group + + + min + 3G + + + min + return the lesser of two values + + Declaration + + + genType min + genType x + genType y + + + + + genType min + genType x + float y + + + + + genDType min + genDType x + genDType y + + + + + genDType min + genDType x + double y + + + + + genIType min + genIType x + genIType y + + + + + genIType min + genIType x + int y + + + + + genUType min + genUType x + genUType y + + + + + genUType min + genUType x + uint y + + + + Parameters + + + x + + + Specify the first value to compare. + + + + + y + + + Specify the second value to compare. + + + + + + Description + + min returns the minimum of the two parameters. It + returns y if y is less than + x, otherwise it returns x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + min (genType)#newin11# + + + min (genIType)#newin13# + + + min (genUType)#newin13# + + + min (genDType)#newin40# + + + + + + See Also + + max, + abs + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/mix.xml b/upstream-man-pages/manglsl/mix.xml new file mode 100644 index 0000000..3315849 --- /dev/null +++ b/upstream-man-pages/manglsl/mix.xml @@ -0,0 +1,154 @@ + + + + + + + 2011 + Khronos Group + + + mix + 3G + + + mix + linearly interpolate between two values + + Declaration + + + genType mix + genType x + genType y + genType a + + + + + genType mix + genType x + genType y + float a + + + + + genDType mix + genDType x + genDType y + genDType a + + + + + genDType mix + genDType x + genDType y + double a + + + + + genType mix + genType x + genType y + genBType a + + + + + genDType mix + genDType x + genDType y + genBType a + + + + Parameters + + + x + + + Specify the start of the range in which to interpolate. + + + + + y + + + Specify the end of the range in which to interpolate. + + + + + a + + + Specify the value to use to interpolate between x and y. + + + + + + Description + + mix performs a linear interpolation between x + and y using a to weight between them. The return value + is computed as follows: + + + x + + ( + 1 + + a + ) + + + y + + a + + . + + + For the variants of mix where a is genBType, + elements for which a[i] is false, the result for that + element is taken from x, and where a[i] is + true, it will be taken from y. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + mix (genType)#newin11# + + + mix (genDType)#newin40# + + + + + + See Also + + min, + max + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/mod.xml b/upstream-man-pages/manglsl/mod.xml new file mode 100644 index 0000000..c7ce830 --- /dev/null +++ b/upstream-man-pages/manglsl/mod.xml @@ -0,0 +1,97 @@ + + + + + + + 2011 + Khronos Group + + + mod + 3G + + + mod + compute value of one parameter modulo another + + Declaration + + + genType mod + genType x + float y + + + + + genType mod + genType x + genType y + + + + + genDType mod + genDType x + double y + + + + + genDType mod + genDType x + genDType y + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + mod returns the value of x modulo + y. This is computed as x - y * + floor(x/y). + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + mod (genType)#newin11# + + + mod (genDType)#newin40# + + + + + + See Also + + modf, + floor + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/modf.xml b/upstream-man-pages/manglsl/modf.xml new file mode 100644 index 0000000..ef20f7c --- /dev/null +++ b/upstream-man-pages/manglsl/modf.xml @@ -0,0 +1,92 @@ + + + + + + + 2011 + Khronos Group + + + modf + 3G + + + modf + separate a value into its integer and fractional components + + Declaration + + + genType modf + genType x + out genType i + + + + + genDType modf + genDType x + out genDType i + + + + Parameters + + + x + + + Specify the value to separate. + + + + + out i + + + A variable that receives the integer part of the argument. + + + + + + Description + + modf separates a floating point value x + into its integer and fractional parts. The fractional part of the number is returned + from the function and the integer part (as a floating point quantity) is returned + in the output parameter i. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + modf (genType)#newin13# + + + modf (genDType)#newin40# + + + + + + See Also + + fract, + floor + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/noise.xml b/upstream-man-pages/manglsl/noise.xml new file mode 100644 index 0000000..f90f3ba --- /dev/null +++ b/upstream-man-pages/manglsl/noise.xml @@ -0,0 +1,100 @@ + + + + + + + 2011 + Khronos Group + + + noise + 3G + + + noise + generate values with a pseudo-random noise function + + Declaration + + + float noise1 + genType x + + + vec2 noise2 + genType x + + + vec3 noise3 + genType x + + + vec4 noise4 + genType x + + + + Parameters + + + x + + + Specifies the value to be used to seed the noise function. + + + + + + Description + + noise1, noise2, noise3 and noise4 return + noise values (vector or scalar) based on the input value x. The noise function is a stochastic function + that can be used to increase visual complexity. Values returned by the noise functions give the appearance of randomness, + but are not truly random. They are defined to have the following characteristics: + + + + The return value(s) are always in the range [-1.0,1.0], and cover at least the range [-0.6, 0.6], with a Gaussian-like distribution. + The return value(s) have an overall average of 0.0. + They are repeatable, in that a particular input value will always produce the same return value. + They are statistically invariant under rotation (i.e., no matter how the domain is rotated, it has the same statistical character). + They have a statistical invariance under translation (i.e., no matter how the domain is translated, it has the same statistical character). + They typically give different results under translation. + The spatial frequency is narrowly concentrated, centered somewhere between 0.5 to 1.0. + They are C1 continuous everywhere (i.e., the first derivative is continuous). + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + noise1#newin11# + + + noise2#newin11# + + + noise3#newin11# + + + noise4#newin11# + + + + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/normalize.xml b/upstream-man-pages/manglsl/normalize.xml new file mode 100644 index 0000000..445351f --- /dev/null +++ b/upstream-man-pages/manglsl/normalize.xml @@ -0,0 +1,76 @@ + + + + + + + 2011 + Khronos Group + + + normalize + 3G + + + normalize + calculate the normalize product of two vectors + + Declaration + + + genType normalize + genType v + + + genDType normalize + genDType v + + + + Parameters + + + v + + + Specifies the vector to normalize. + + + + + + Description + + normalize returns a vector with the same direction as its parameter, v, but with length 1. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + normalize (genType)#newin11# + + + normalize (genDType)#newin40# + + + + + + See Also + + length + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/not.xml b/upstream-man-pages/manglsl/not.xml new file mode 100644 index 0000000..3600a86 --- /dev/null +++ b/upstream-man-pages/manglsl/not.xml @@ -0,0 +1,71 @@ + + + + + + + 2011 + Khronos Group + + + not + 3G + + + not + logically invert a boolean vector + + Declaration + + + bvec not + bvec x + + + + Parameters + + + x + + + Specifies the vector to be inverted. + + + + + + Description + + not logically inverts the boolean vector x. It returns + a new boolean vector for which each element i is computed as !x[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + not#newin11# + + + + + + See Also + + any, + all + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/notEqual.xml b/upstream-man-pages/manglsl/notEqual.xml new file mode 100644 index 0000000..66e650c --- /dev/null +++ b/upstream-man-pages/manglsl/notEqual.xml @@ -0,0 +1,102 @@ + + + + + + + 2011 + Khronos Group + + + notEqual + 3G + + + notEqual + perform a component-wise not-equal-to comparison of two vectors + + Declaration + + + bvec notEqual + vec x + vec y + + + bvec notEqual + ivec x + ivec y + + + bvec notEqual + uvec x + uvec y + + + + Parameters + + + x + + + Specifies the first vector to be used in the comparison operation. + + + + + y + + + Specifies the second vector to be used in the comparison operation. + + + + + + Description + + notEqual returns a boolean vector in which each element i is computed + as x[i] != y[i]. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + notEqual (vec)#newin11# + + + notEqual (ivec)#newin13# + + + notEqual (uvec)#newin13# + + + + + + See Also + + lessThan, + lessThanEqual, + greaterThan, + greaterThanEqual, + equal, + any, + all, + not + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/outerProduct.xml b/upstream-man-pages/manglsl/outerProduct.xml new file mode 100644 index 0000000..9061cf7 --- /dev/null +++ b/upstream-man-pages/manglsl/outerProduct.xml @@ -0,0 +1,170 @@ + + + + + + + 2011 + Khronos Group + + + outerProduct + 3G + + + outerProduct + calculate the outer product of a pair of vectors + + Declaration + + + mat2 outerProduct + vec2 c + vec2 r + + + mat3 outerProduct + vec3 c + vec3 r + + + mat4 outerProduct + vec4 c + vec4 r + + + mat2x3 outerProduct + vec3 c + vec2 r + + + mat3x2 outerProduct + vec2 c + vec3 r + + + mat2x4 outerProduct + vec4 c + vec2 r + + + mat4x2 outerProduct + vec2 c + vec4 r + + + mat3x4 outerProduct + vec4 c + vec3 r + + + mat4x3 outerProduct + vec3 c + vec4 r + + + dmat2 outerProduct + dvec2 c + dvec2 r + + + dmat3 outerProduct + dvec3 c + dvec3 r + + + dmat4 outerProduct + dvec4 c + dvec4 r + + + dmat2x3 outerProduct + dvec3 c + dvec2 r + + + dmat3x2 outerProduct + dvec2 c + dvec3 r + + + dmat2x4 outerProduct + dvec4 c + dvec2 r + + + dmat4x2 outerProduct + dvec2 c + dvec4 r + + + dmat3x4 outerProduct + dvec4 c + dvec3 r + + + dmat4x3 outerProduct + dvec3 c + dvec4 r + + + + Parameters + + + c + + + Specifies the parameter to be treated as a column vector. + + + + + r + + + Specifies the parameter to be treated as a row vector. + + + + + + Description + + outerProduct treats the first parameter c as a column + vector (matrix with one column) and the second parameter r as a row vector + (matrix with one row) and does a linear algebraic matrix multiply c * r, + yielding a matrix whose number of rows is the number of components in c and + whose number of columns is the number of components in r. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + outerProduct (float)#newin12# + + + outerProduct (double)#newin40# + + + + + + See Also + + dot + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/packDouble2x32.xml b/upstream-man-pages/manglsl/packDouble2x32.xml new file mode 100644 index 0000000..0ac4675 --- /dev/null +++ b/upstream-man-pages/manglsl/packDouble2x32.xml @@ -0,0 +1,73 @@ + + + + + + + 2011 + Khronos Group + + + packDouble2x32 + 3G + + + packDouble2x32 + create a double-precision value from a pair of unsigned integers + + Declaration + + + double packDouble2x32 + uvec2 v + + + + Parameters + + + v + + + Specifies a vector of two unsigned integers to be packed into a single double-precision result. + + + + + + Description + + packDouble2x32 packs the component of parameter v into a 64-bit + value. If an IEEE-754 infinity or NaN is created, it will not signal and the resulting floating-point value + is undefined. Otherwise, the bit-level representation of v is preserved. The first + vector component (v[0]) specifies the 32 least significant bits of the result; the second + component (v[1]) specifies the 32 most significant bits. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + packDouble2x32#newin40# + + + + + + See Also + + unpackDouble2x32 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/packHalf2x16.xml b/upstream-man-pages/manglsl/packHalf2x16.xml new file mode 100644 index 0000000..5c47132 --- /dev/null +++ b/upstream-man-pages/manglsl/packHalf2x16.xml @@ -0,0 +1,76 @@ + + + + + + + 2011 + Khronos Group + + + packHalf2x16 + 3G + + + packHalf2x16 + convert two 32-bit floating-point quantities to 16-bit quantities and pack them into a single 32-bit integer + + Declaration + + + uint packHalf2x16 + vec2 v + + + + Parameters + + + v + + + Specify a vector of two 32-bit floating point values that are to be converted to 16-bit representation and packed into the result. + + + + + + Description + + packHalf2x16 returns an unsigned integer obtained by converting the + components of a two-component floating-point vector to + the 16-bit floating-point representation found in the + OpenGL Specification, and then packing these two 16-bit integers into a 32-bit unsigned integer. + The first vector component specifies the 16 least-significant bits of the result; the second component + specifies the 16 most-significant bits. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + packHalf2x16#newin42# + + + + + + See Also + + packDouble2x32, + unpackDouble2x32, + unpackHalf2x16 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/packUnorm2x16.xml b/upstream-man-pages/manglsl/packUnorm2x16.xml new file mode 100644 index 0000000..a8cb011 --- /dev/null +++ b/upstream-man-pages/manglsl/packUnorm2x16.xml @@ -0,0 +1,109 @@ + + + + + + + 2011 + Khronos Group + + + packUnorm + 3G + + + packUnorm + pack floating-point values into an unsigned integer + + Declaration + + + uint packUnorm2x16 + vec2 v + + + uint packSnorm2x16 + vec2 v + + + uint packUnorm4x8 + vec4 v + + + uint packSnorm4x8 + vec4 v + + + + Parameters + + + v + + + Specifies a vector of values to be packed into an unsigned integer. + + + + + + Description + + packUnorm2x16, packSnorm2x16, packUnorm4x8 and packSnorm4x8 convert + each component of the normalized floating-ponit value v into 8- or 16-bit integer + values and then packs the results into a 32-bit unsigned intgeter. + + + The conversion for component c of v to fixed-point is + performed as follows: + + packUnorm2x16: round(clamp(c, 0.0, 1.0) * 65535.0) + packSnorm2x16: round(clamp(c, -1.0, 1.0) * 32767.0) + packUnorm4x8: round(clamp(c, 0.0, 1.0) * 255.0) + packSnorm4x8: round(clamp(c, -1.0, 1.0) * 127.0) + + + + The first component of the vector will be written to the least significant bits of the output; + the last component will be written to the most significant bits. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + packUnorm2x16#newin41# + + + packSnorm2x16#newin42# + + + packUnorm4x8#newin41# + + + packSnorm4x8#newin41# + + + + + + See Also + + unpackUnorm2x16, + unpackSnorm2x16, + unpackUnorm4x8, + unpackSnorm4x8 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/pow.xml b/upstream-man-pages/manglsl/pow.xml new file mode 100644 index 0000000..c89f677 --- /dev/null +++ b/upstream-man-pages/manglsl/pow.xml @@ -0,0 +1,85 @@ + + + + + + + 2011 + Khronos Group + + + pow + 3G + + + pow + return the value of the first parameter raised to the power of the second + + Declaration + + + genType pow + genType x + genType y + + + + Parameters + + + x + + + Specify the value to raise to the power y. + + + + + y + + + Specify the power to which to raise x. + + + + + + Description + + pow returns the value of x raised to the y power. i.e., + xy. + Results are undefined if x0 + or if x0 and + y0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + pow#newin11# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/radians.xml b/upstream-man-pages/manglsl/radians.xml new file mode 100644 index 0000000..b9a2652 --- /dev/null +++ b/upstream-man-pages/manglsl/radians.xml @@ -0,0 +1,79 @@ + + + + + + + 2011 + Khronos Group + + + radians + 3G + + + radians + convert a quantity in degrees to radians + + Declaration + + + genType radians + genType degrees + + + + Parameters + + + degrees + + + Specify the quantity, in degrees, to be converted to radians. + + + + + + Description + + radians converts a quantity, specified in degrees into radians. That is, + the return value is + + + + + degrees + + 180 + + . + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + radians#newin11# + + + + + + See Also + + degrees, + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/reflect.xml b/upstream-man-pages/manglsl/reflect.xml new file mode 100644 index 0000000..4d0ad11 --- /dev/null +++ b/upstream-man-pages/manglsl/reflect.xml @@ -0,0 +1,91 @@ + + + + + + + 2011 + Khronos Group + + + reflect + 3G + + + reflect + calculate the reflection direction for an incident vector + + Declaration + + + genType reflect + genType I + genType N + + + genDType reflect + genDType I + genDType N + + + + Parameters + + + I + + + Specifies the incident vector. + + + + + N + + + Specifies the normal vector. + + + + + + Description + + For a given incident vector I and surface normal N reflect returns + the reflection direction calculated as I - 2.0 * dot(N, I) * N. + + + N should be normalized in order to achieve the desired result. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + reflect (genType)#newin11# + + + reflect (genDType)#newin40# + + + + + + See Also + + dot, + refract + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/refract.xml b/upstream-man-pages/manglsl/refract.xml new file mode 100644 index 0000000..8a369fb --- /dev/null +++ b/upstream-man-pages/manglsl/refract.xml @@ -0,0 +1,112 @@ + + + + + + + 2011 + Khronos Group + + + refract + 3G + + + refract + calculate the refraction direction for an incident vector + + Declaration + + + genType refract + genType I + genType N + float eta + + + genDType refract + genDType I + genDType N + float eta + + + + Parameters + + + I + + + Specifies the incident vector. + + + + + N + + + Specifies the normal vector. + + + + + eta + + + Specifies the ratio of indices of refraction. + + + + + + Description + + For a given incident vector I, surface normal N and ratio of + indices of refraction, eta, refract returns the refraction vector, + R. + + + R is calculated as: + + + + + + The input parameters I and N should be normalized in order to achieve the desired result. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + refract (genType)#newin11# + + + refract (genDType)#newin40# + + + + + + See Also + + dot, + reflect + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/round.xml b/upstream-man-pages/manglsl/round.xml new file mode 100644 index 0000000..1570c89 --- /dev/null +++ b/upstream-man-pages/manglsl/round.xml @@ -0,0 +1,83 @@ + + + + + + + 2011 + Khronos Group + + + round + 3G + + + round + find the nearest integer less than or equal to the parameter + + Declaration + + + genType round + genType x + + + + + genDType round + genDType x + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + round returns a value equal to the nearest integer to x. + The fraction 0.5 will round in a direction chosen by the implementation, presumably the direction that is + fastest. This includes the possibility that round(x) returns the + same value as roundEven(x) + for all values of x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + round (genType)#newin13# + + + round (genDType)#newin40# + + + + + + See Also + + floor, + roundEven + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/roundEven.xml b/upstream-man-pages/manglsl/roundEven.xml new file mode 100644 index 0000000..dbfb720 --- /dev/null +++ b/upstream-man-pages/manglsl/roundEven.xml @@ -0,0 +1,81 @@ + + + + + + + 2011 + Khronos Group + + + roundEven + 3G + + + roundEven + find the nearest even integer to the parameter + + Declaration + + + genType roundEven + genType x + + + + + genDType roundEven + genDType x + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + roundEven returns a value equal to the nearest integer to x. + The fractional part of 0.5 will round toward the nearest even integer. + For example, both 3.5 and 4.5 will round to 4.0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + roundEven (genType)#newin13# + + + roundEven (genDType)#newin40# + + + + + + See Also + + floor, + round + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/sign.xml b/upstream-man-pages/manglsl/sign.xml new file mode 100644 index 0000000..250ea00 --- /dev/null +++ b/upstream-man-pages/manglsl/sign.xml @@ -0,0 +1,92 @@ + + + + + + + 2011 + Khronos Group + + + sign + 3G + + + sign + extract the sign of the parameter + + Declaration + + + genType sign + genType x + + + + + genIType sign + genIType x + + + + + genDType sign + genDType x + + + + Parameters + + + x + + + Specify the value from which to extract the sign. + + + + + + Description + + abs returns 1.0 if + x0.0, + 0.0 if + x0.0 and + 1.0 if + x0.0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + sign (genType)#newin13# + + + sign (genIType)#newin15# + + + sign (genDType)#newin40# + + + + + + See Also + + sign + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/sin.xml b/upstream-man-pages/manglsl/sin.xml new file mode 100644 index 0000000..e85773b --- /dev/null +++ b/upstream-man-pages/manglsl/sin.xml @@ -0,0 +1,69 @@ + + + + + + + 2011 + Khronos Group + + + sin + 3G + + + sin + return the sine of the parameter + + Declaration + + + genType sin + genType angle + + + + Parameters + + + angle + + + Specify the quantity, in radians, of which to return the sine. + + + + + + Description + + sin returns the trigonometric sine of angle. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + sin#newin11# + + + + + + See Also + + cos, + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/sinh.xml b/upstream-man-pages/manglsl/sinh.xml new file mode 100644 index 0000000..effee46 --- /dev/null +++ b/upstream-man-pages/manglsl/sinh.xml @@ -0,0 +1,95 @@ + + + + + + + 2011 + Khronos Group + + + sinh + 3G + + + sinh + return the hyperbolic sine of the parameter + + Declaration + + + genType sinh + genType x + + + + Parameters + + + x + + + Specify the value whose hyperbolic sine to return. + + + + + + Description + + sinh returns the hyperbolic sine of + x. + The hyperbolic sine of x + is computed as + + + + + + e + x + + + + e + + + x + + + + 2 + + + . + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + sinh#newin13# + + + + + + See Also + + sin, + cos, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/smoothstep.xml b/upstream-man-pages/manglsl/smoothstep.xml new file mode 100644 index 0000000..d227d52 --- /dev/null +++ b/upstream-man-pages/manglsl/smoothstep.xml @@ -0,0 +1,127 @@ + + + + + + + 2011 + Khronos Group + + + smoothstep + 3G + + + smoothstep + perform Hermite interpolation between two values + + Declaration + + + genType smoothstep + genType edge0 + genType edge1 + genType x + + + + + genType smoothstep + float edge0 + float edge1 + genType x + + + + + genDType smoothstep + genDType edge0 + genDType edge1 + genDType x + + + + + genDType smoothstep + double edge0 + double edge1 + genDType x + + + + Parameters + + + edge0 + + + Specifies the value of the lower edge of the Hermite function. + + + + + edge1 + + + Specifies the value of the upper edge of the Hermite function. + + + + + x + + + Specifies the source value for interpolation. + + + + + + Description + + smoothstep performs smooth Hermite interpolation between 0 and + 1 when edge0 < x < edge1. + This is useful in cases where a threshold function with a smooth transition is desired. + smoothstep is equivalent to: + + + + + + Results are undefined if edge0edge1. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + smoothstep (genType)#newin13# + + + smoothstep (genDType)#newin40# + + + + + + See Also + + mix, + step + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/sqrt.xml b/upstream-man-pages/manglsl/sqrt.xml new file mode 100644 index 0000000..70546a9 --- /dev/null +++ b/upstream-man-pages/manglsl/sqrt.xml @@ -0,0 +1,81 @@ + + + + + + + 2011 + Khronos Group + + + sqrt + 3G + + + sqrt + return the square root of the parameter + + Declaration + + + genType sqrt + genType x + + + + + genDType sqrt + genDType x + + + + Parameters + + + x + + + Specify the value of which to take the square root. + + + + + + Description + + sqrt returns the square root of x. i.e., the value + x. + Results are undefined if x0. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + sqrt (genType)#newin11# + + + sqrt (genDType)#newin40# + + + + + + See Also + + pow, + inversesqrt + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/step.xml b/upstream-man-pages/manglsl/step.xml new file mode 100644 index 0000000..35e07d6 --- /dev/null +++ b/upstream-man-pages/manglsl/step.xml @@ -0,0 +1,107 @@ + + + + + + + 2011 + Khronos Group + + + step + 3G + + + step + generate a step function by comparing two values + + Declaration + + + genType step + genType edge + genType x + + + + + genType step + float edge + genType x + + + + + genDType step + genDType edge + genDType x + + + + + genDType step + double edge + genDType x + + + + Parameters + + + edge + + + Specifies the location of the edge of the step function. + + + + + x + + + Specify the value to be used to generate the step function. + + + + + + Description + + step generates a step function by comparing x to edge. + + + For element i of the return value, 0.0 is returned if x[i] + < edge[i], and 1.0 is returned otherwise. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + step (genType)#newin11# + + + step (genDType)#newin40# + + + + + + See Also + + mix, + smoothstep + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/tan.xml b/upstream-man-pages/manglsl/tan.xml new file mode 100644 index 0000000..c726ff4 --- /dev/null +++ b/upstream-man-pages/manglsl/tan.xml @@ -0,0 +1,71 @@ + + + + + + + 2011 + Khronos Group + + + tan + 3G + + + tan + return the tangent of the parameter + + Declaration + + + genType tan + genType angle + + + + Parameters + + + angle + + + Specify the quantity, in radians, of which to return the tangent. + + + + + + Description + + tan returns the trigonometric tangent of angle. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + tan#newin11# + + + + + + See Also + + sin, + cos, + atan + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/tanh.xml b/upstream-man-pages/manglsl/tanh.xml new file mode 100644 index 0000000..0cf5c58 --- /dev/null +++ b/upstream-man-pages/manglsl/tanh.xml @@ -0,0 +1,87 @@ + + + + + + + 2011 + Khronos Group + + + tanh + 3G + + + tanh + return the hyperbolic tangent of the parameter + + Declaration + + + genType tanh + genType x + + + + Parameters + + + x + + + Specify the value whose hyperbolic tangent to return. + + + + + + Description + + tanh returns the hyperbolic tangent of + x. + The hyperbolic tangent of x + is computed as + + + + + sinh(x) + + + cosh(x) + + + + . + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + tanh#newin13# + + + + + + See Also + + sin, + cos, + sinh, + cosh + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/texelFetch.xml b/upstream-man-pages/manglsl/texelFetch.xml new file mode 100644 index 0000000..8b49a3d --- /dev/null +++ b/upstream-man-pages/manglsl/texelFetch.xml @@ -0,0 +1,168 @@ + + + + + + + 2011 + Khronos Group + + + texelFetch + 3G + + + texelFetch + perform a lookup of a single texel within a texture + + Declaration + + + gvec4 texelFetch + gsampler1D sampler + int P + int lod + + + gvec4 texelFetch + gsampler2D sampler + ivec2 P + int lod + + + gvec4 texelFetch + gsampler3D sampler + ivec3 P + int lod + + + gvec4 texelFetch + gsampler2DRect sampler + ivec2 P + + + gvec4 texelFetch + gsampler1DArray sampler + ivec2 P + int lod + + + gvec4 texelFetch + gsampler2DArray sampler + ivec3 P + int lod + + + gvec4 texelFetch + gsamplerBuffer sampler + int P + + + gvec4 texelFetch + gsampler2DMS sampler + ivec2 P + sample sample + + + gvec4 texelFetch + gsampler2DMSArray sampler + ivec3 P + sample sample + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + lod + + + If present, specifies the level-of-detail within the texture from which the texel will be fetched. + + + + + sample + + + For multisampled fetches, specifies which sample within the texel from which which will be returned. + + + + + + Description + + texelFetch performs a lookup of a single texel from texture coordinate P + in the texture bound to sampler. The array layer is specified in the last component of + P for array forms. The lod parameter (if present) specifies the level-of-detail + from which the texel will be fetched. The sample specifies which sample within the texel will be + returned when reading from a multi-sample texure. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + texelFetch#newin13# + + + texelFetch (gsampler2DRect, gsamplerBuffer)#newin14# + + + texelFetch (gsampler2DMS, gsampler2DMSArray)#newin15# + + + + + + See Also + + texelFetch, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/texelFetchOffset.xml b/upstream-man-pages/manglsl/texelFetchOffset.xml new file mode 100644 index 0000000..3d7550a --- /dev/null +++ b/upstream-man-pages/manglsl/texelFetchOffset.xml @@ -0,0 +1,158 @@ + + + + + + + 2011 + Khronos Group + + + texelFetchOffset + 3G + + + texelFetchOffset + perform a lookup of a single texel within a texture with an offset + + Declaration + + + gvec4 texelFetchOffset + gsampler1D sampler + int P + int lod + int offset + + + gvec4 texelFetchOffset + gsampler2D sampler + ivec2 P + int lod + int offset + + + gvec4 texelFetchOffset + gsampler3D sampler + ivec3 P + int lod + int offset + + + gvec4 texelFetchOffset + gsampler2DRect sampler + ivec2 P + int offset + + + gvec4 texelFetchOffset + gsampler1DArray sampler + ivec2 P + int lod + int offset + + + gvec4 texelFetchOffset + gsampler2DArray sampler + ivec3 P + int lod + int offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + lod + + + If present, specifies the level-of-detail within the texture from which the texel will be fetched. + + + + + offset + + + Specifies offset, in texels that will be applied to P before looking up the texel. + + + + + + Description + + texelFetchOffset performs a lookup of a single texel from texture coordinate P + in the texture bound to sampler. Before fetching the texel, the offset specified in offset + is added to P. offset must be a constant expression. The array layer is specified in the last component of + P for array forms. The lod parameter (if present) specifies the level-of-detail + from which the texel will be fetched. The sample parameter specifies which sample within the texel will be + returned when reading from a multi-sample texure. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + texelFetchOffset#newin13# + + + texelFetchOffset (gsampler2DRect)#newin14# + + + texelFetchOffset (gsampler2DMS, gsampler2DMSArray)#newin15# + + + + + + See Also + + texelFetch, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/texture.xml b/upstream-man-pages/manglsl/texture.xml new file mode 100644 index 0000000..65e11cc --- /dev/null +++ b/upstream-man-pages/manglsl/texture.xml @@ -0,0 +1,217 @@ + + + + + + + 2011 + Khronos Group + + + texture + 3G + + + texture + retrieves texels from a texture + + Declaration + + + gvec4 texture + gsampler1D sampler + float P + [float bias] + + + gvec4 texture + gsampler2D sampler + vec2 P + [float bias] + + + gvec4 texture + gsampler3D sampler + vec3 P + [float bias] + + + gvec4 texture + gsamplerCube sampler + vec3 P + [float bias] + + + float texture + sampler1DShadow sampler + vec3 P + [float bias] + + + float texture + sampler2DShadow sampler + vec3 P + [float bias] + + + float texture + samplerCubeShadow sampler + vec3 P + [float bias] + + + gvec4 texture + gsampler1DArray sampler + vec2 P + [float bias] + + + gvec4 texture + gsampler2DArray sampler + vec3 P + [float bias] + + + gvec4 texture + gsamplerCubeArray sampler + vec4 P + [float bias] + + + float texture + sampler1DArrayShadow sampler + vec3 P + [float bias] + + + float texture + gsampler2DArrayShadow sampler + vec4 P + [float bias] + + + gvec4 texture + gsampler2DRect sampler + vec2 P + + + float texture + sampler2DRectShadow sampler + vec3 P + + + float texture + gsamplerCubeArrayShadow sampler + vec4 P + float compare + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + bias + + + Specifies an optional bias to be applied during level-of-detail computation. + + + + + compare + + + Specifies the value to which the fetched texel will be compared when sampling from gsamplerCubeArrayShadow. + + + + + + Description + + texture samples texels from the texture bound to sampler at texture + coordinate P. An optional bias, specified in bias is included in + the level-of-detail computation that is used to choose mipmap(s) from which to sample. + + + For shadow forms, when compare is present, it is used as + Dsub + and the array layer is specified in P.w. When compare is + not present, the last component of P is used as + Dsub and the + array layer is specified in the second to last component of P. (The second component of P + is unused for 1D shadow lookups.) + + + For non-shadow variants, the array layer comes from the last component of P. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + texture#newin13# + + + texture (gsampler2DRect{Shadow})#newin14# + + + texture (gsampler2DMS, gsampler2DMSArray)#newin15# + + + texture (gsamplerCubeArray{Shadow})#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureGather.xml b/upstream-man-pages/manglsl/textureGather.xml new file mode 100644 index 0000000..202e5d5 --- /dev/null +++ b/upstream-man-pages/manglsl/textureGather.xml @@ -0,0 +1,178 @@ + + + + + + + 2011 + Khronos Group + + + textureGather + 3G + + + textureGather + gathers four texels from a texture + + Declaration + + + gvec4 textureGather + gsampler2D sampler + vec2 P + [int comp] + + + gvec4 textureGather + gsampler2DArray sampler + vec3 P + [int comp] + + + gvec4 textureGather + gsamplerCube sampler + vec3 P + [int comp] + + + gvec4 textureGather + gsamplerCubeArray sampler + vec4 P + [int comp] + + + gvec4 textureGather + gsampler2DRect sampler + vec3 P + [int comp] + + + vec4 textureGather + gsampler2DShadow sampler + vec2 P + float refZ + + + vec4 textureGather + gsampler2DArrayShadow sampler + vec3 P + float refZ + + + vec4 textureGather + gsamplerCubeShadow sampler + vec3 P + float refZ + + + vec4 textureGather + gsamplerCubeArrayShadow sampler + vec4 P + float refZ + + + vec4 textureGather + gsampler2DRectShadow sampler + vec3 P + float refZ + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + comp + + + Specifies the component of the source texture that will be used to generate the resulting vector. + + + + + refZ + + + Specifies the reference Z value used in the comparison for shadow forms. + + + + + + Description + + textureGather returns the value: + + + + + + If specified, the value of comp must ba constant integer expression with a value + of 0, 1, 2, or 3, identifying the x, y, z or w component of the four-component vector lookup result for each + texel, respectively. If comp is not specified, it is treated as 0, selecting the x + component of each texel to generate the result. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureGather#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureGatherOffset.xml b/upstream-man-pages/manglsl/textureGatherOffset.xml new file mode 100644 index 0000000..4782fbc --- /dev/null +++ b/upstream-man-pages/manglsl/textureGatherOffset.xml @@ -0,0 +1,174 @@ + + + + + + + 2011 + Khronos Group + + + textureGatherOffset + 3G + + + textureGatherOffset + gathers four texels from a texture with offset + + Declaration + + + gvec4 textureGatherOffset + gsampler2D sampler + vec2 P + ivec2 offset + [int comp] + + + gvec4 textureGatherOffset + gsampler2DArray sampler + vec3 P + ivec2 offset + [int comp] + + + gvec4 textureGatherOffset + gsampler2DRect sampler + vec3 P + ivec2 offset + [int comp] + + + vec4 textureGatherOffset + gsampler2DShadow sampler + vec2 P + float refZ + ivec2 offset + + + vec4 textureGatherOffset + gsampler2DArrayShadow sampler + vec3 P + float refZ + ivec2 offset + + + vec4 textureGatherOffset + gsampler2DRectShadow sampler + vec3 P + float refZ + ivec2 offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + comp + + + Specifies the component of the source texture that will be used to generate the resulting vector. + + + + + refZ + + + Specifies the reference Z value used in the comparison for shadow forms. + + + + + offset + + + Specifies the offset from the specified texture coordinate P from which the texels will be gathered. + + + + + + Description + + textureGatherOffset returns the value: + + + + + + It perfoms as textureGather but with offset + applied as described in textureOffset, except that the + implementation-dependent minimum and maximum offset values are given by GL_MIN_PROGRRAM_TEXTURE_GATHER_OFFSET + and GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET, respectively. + + + If specified, the value of comp must ba constant integer expression with a value + of 0, 1, 2, or 3, identifying the x, y, z or w component of the four-component vector lookup result for each + texel, respectively. If comp is not specified, it is treated as 0, selecting the x + component of each texel to generate the result. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureGatherOffset#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureGatherOffsets.xml b/upstream-man-pages/manglsl/textureGatherOffsets.xml new file mode 100644 index 0000000..c437fee --- /dev/null +++ b/upstream-man-pages/manglsl/textureGatherOffsets.xml @@ -0,0 +1,161 @@ + + + + + + + 2011 + Khronos Group + + + textureGatherOffsets + 3G + + + textureGatherOffsets + gathers four texels from a texture with an array of offsets + + Declaration + + + gvec4 textureGatherOffsets + gsampler2D sampler + vec2 P + ivec2 offsets[4] + [int comp] + + + gvec4 textureGatherOffsets + gsampler2DArray sampler + vec3 P + ivec2 offsets[4] + [int comp] + + + gvec4 textureGatherOffsets + gsampler2DRect sampler + vec3 P + ivec2 offsets[4] + [int comp] + + + vec4 textureGatherOffsets + gsampler2DShadow sampler + vec2 P + float refZ + ivec2 offsets[4] + + + vec4 textureGatherOffsets + gsampler2DArrayShadow sampler + vec3 P + float refZ + ivec2 offsets[4] + + + vec4 textureGatherOffsets + gsampler2DRectShadow sampler + vec3 P + float refZ + ivec2 offsets[4] + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + comp + + + Specifies the component of the source texture that will be used to generate the resulting vector. + + + + + refZ + + + Specifies the reference Z value used in the comparison for shadow forms. + + + + + offsets + + + Specifies an array of offsets from the specified texture coordinate P from which the texels will be gathered. + + + + + + Description + + textureGatherOffsets operates identically to textureGatherOffset, + except that offsets is used to determine the location of the four texels to sample. Each of the four texels is obtained + by applying the offset in offsets as a (u, v) coordinate offset to P, identifying the four-texel + GL_LINEAR footprint, and then selecting the texel + i0i0 + of that footprint. The specified values in offsets must be set with constant integral expressions. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureGatherOffsets#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureGrad.xml b/upstream-man-pages/manglsl/textureGrad.xml new file mode 100644 index 0000000..b9fe95d --- /dev/null +++ b/upstream-man-pages/manglsl/textureGrad.xml @@ -0,0 +1,305 @@ + + + + + + + 2011 + Khronos Group + + + textureGrad + 3G + + + textureGrad + perform a texture lookup with explicit gradients + + Declaration + + + gvec4 textureGrad + gsampler1D sampler + float P + float dPdx + float dPdy + + + gvec4 textureGrad + gsampler2D sampler + vec2 P + vec2 dPdx + vec2 dPdy + + + gvec4 textureGrad + gsampler3D sampler + vec3 P + vec3 dPdx + vec3 dPdy + + + gvec4 textureGrad + gsamplerCube sampler + vec3 P + vec3 dPdx + vec3 dPdy + + + gvec4 textureGrad + gsampler2DRect sampler + vec2 P + vec2 dPdx + vec2 dPdy + + + float textureGrad + gsampler2DRectShadow sampler + vec2 P + vec2 dPdx + vec2 dPdy + + + float textureGrad + sampler1DShadow sampler + vec3 P + float dPdx + float dPdy + + + float textureGrad + sampler2DShadow sampler + vec3 P + vec2 dPdx + vec2 dPdy + + + gvec4 textureGrad + gsampler1DArray sampler + vec2 P + float dPdx + float dPdy + + + gvec4 textureGrad + gsampler2DArray sampler + vec3 P + vec2 dPdx + vec2 dPdy + + + float textureGrad + sampler1DArrayShadow sampler + vec3 P + float dPdx + float dPdy + + + gvec4 textureGrad + gsamplerCubeArray sampler + vec4 P + vec3 dPdx + vec3 dPdy + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + dPdx + + + Specifies the partial derivative of P with respect to window x. + + + + + dPdy + + + Specifies the partial derivative of P with respect to window y. + + + + + + Description + + textureGrad performs a texture lookup at coordinate P from the + texture bound to sampler with explicit texture coordinate gradiends as specified in + dPdx and dPdy. Set: + + + + + δs + δx + + = + + δP + δx + +   for a 1D texture,  + + δP.s + δx + +   otherwise + + + + + + δs + δy + + = + + δP + δy + +   for a 1D texture,  + + δP.s + δy + +   otherwise + + + + + + δt + δx + + = + 0.0 +   for a 1D texture,  + + δP.t + δx + + otherwise + + + + + + δt + δy + + = + 0.0 +   for a 1D texture,  + + δP.t + δy + +   otherwise + + + + + + δr + δx + + = + 0.0 +   for a 1D or 2D texture,  + + δP.p + δx + +   otherwise + + + + + + δr + δy + + = + 0.0 +   for a 1D or 2D texture,  + + δP.p + δy + +   otherwise + + + + For the cube version, the partial derivatives of P are assumed to be + in the coordinate system used before texture coordinates are projected onto the appropriate + cube face. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureGrad#newin13# + + + textureGrad (gsampler2DRect{Shadow})#newin14# + + + textureGrad (gsamplerCubeArray)#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureGradOffset.xml b/upstream-man-pages/manglsl/textureGradOffset.xml new file mode 100644 index 0000000..f9d7f95 --- /dev/null +++ b/upstream-man-pages/manglsl/textureGradOffset.xml @@ -0,0 +1,210 @@ + + + + + + + 2011 + Khronos Group + + + textureGradOffset + 3G + + + textureGradOffset + perform a texture lookup with explicit gradients and offset + + Declaration + + + gvec4 textureGradOffset + gsampler1D sampler + float P + float dPdx + float dPdy + int offset + + + gvec4 textureGradOffset + gsampler2D sampler + vec2 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + gvec4 textureGradOffset + gsampler3D sampler + vec3 P + vec3 dPdx + vec3 dPdy + ivec3 offset + + + gvec4 textureGradOffset + gsampler2DRect sampler + vec2 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + float textureGradOffset + gsampler2DRectShadow sampler + vec3 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + float textureGradOffset + sampler1DShadow sampler + vec3 P + float dPdx + float dPdy + int offset + + + float textureGradOffset + sampler2DShadow sampler + vec3 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + gvec4 textureGradOffset + gsampler1DArray sampler + vec2 P + float dPdx + float dPdy + int offset + + + gvec4 textureGradOffset + gsampler2DArray sampler + vec3 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + float textureGradOffset + sampler1DArrayShadow sampler + vec3 P + float dPdx + float dPdy + int offset + + + float textureGradOffset + sampler2DArrayShadow sampler + vec3 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + dPdx + + + Specifies the partial derivative of P with respect to window x. + + + + + dPdy + + + Specifies the partial derivative of P with respect to window y. + + + + + offset + + + Specifies the offset to be applied to the texture coordinates before sampling. + + + + + + Description + + textureGradOffset performs a texture lookup at coordinate P from the + texture bound to sampler with explicit texture coordinate gradiends as specified in + dPdx and dPdy. An explicit offset is also supplied in offset. + textureGradOffset consumes dPdx and dPdy as + textureGrad and offset as + textureOffset. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureGradOffset#newin13# + + + textureGradOffset (gsampler2DRect{Shadow})#newin14# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureLod.xml b/upstream-man-pages/manglsl/textureLod.xml new file mode 100644 index 0000000..0fa46b1 --- /dev/null +++ b/upstream-man-pages/manglsl/textureLod.xml @@ -0,0 +1,278 @@ + + + + + + + 2011 + Khronos Group + + + textureLod + 3G + + + textureLod + perform a texture lookup with explicit level-of-detail + + Declaration + + + gvec4 textureLod + gsampler1D sampler + float P + float lod + + + gvec4 textureLod + gsampler2D sampler + vec2 P + float lod + + + gvec4 textureLod + gsampler3D sampler + vec3 P + float lod + + + gvec4 textureLod + gsamplerCube sampler + vec3 P + float lod + + + float textureLod + sampler1DShadow sampler + vec3 P + float lod + + + float textureLod + sampler2DShadow sampler + vec4 P + float lod + + + gvec4 textureLod + gsampler1DArray sampler + vec2 P + float lod + + + gvec4 textureLod + gsampler2DArray sampler + vec3 P + float lod + + + float textureLod + sampler1DArrayShadow sampler + vec3 P + float lod + + + gvec4 textureLod + gsamplerCubeArray sampler + vec4 P + float lod + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + lod + + + Specifies the explicit level-of-detail + + + + + + Description + + textureLod performs a texture lookup at coordinate P from the + texture bound to sampler with an explicit level-of-detail as specified in lod. + lod specifies + λbase + and sets the partial derivatives as follows: + + + + + + + + + + δ + u + + + δ + x + + + = + 0 + , + + + + + + + δ + v + + + δ + x + + + = + 0 + , + + + + + + + δ + w + + + δ + x + + + = + 0 + + + + + + + + + δ + u + + + δ + y + + + = + 0 + , + + + + + + + δ + v + + + δ + y + + + = + 0 + , + + + + + + + δ + w + + + δ + y + + + = + 0 + + + + + + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureLod#newin13# + + + textureLod (gsampler2DRect{Shadow})#newin14# + + + textureLod (gsamplerCubeArray)#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureLodOffset.xml b/upstream-man-pages/manglsl/textureLodOffset.xml new file mode 100644 index 0000000..6fd636a --- /dev/null +++ b/upstream-man-pages/manglsl/textureLodOffset.xml @@ -0,0 +1,171 @@ + + + + + + + 2011 + Khronos Group + + + textureLodOffset + 3G + + + textureLodOffset + perform a texture lookup with explicit level-of-detail and offset + + Declaration + + + gvec4 textureLodOffset + gsampler1D sampler + float P + float lod + int offset + + + gvec4 textureLodOffset + gsampler2D sampler + vec2 P + float lod + ivec2 offset + + + gvec4 textureLodOffset + gsampler3D sampler + vec3 P + float lod + ivec3 offset + + + float textureLodOffset + sampler1DShadow sampler + vec3 P + float lod + int offset + + + float textureLodOffset + sampler2DShadow sampler + vec4 P + float lod + ivec2 offset + + + gvec4 textureLodOffset + gsampler1DArray sampler + vec2 P + float lod + int offset + + + gvec4 textureLodOffset + gsampler2DArray sampler + vec3 P + float lod + ivec2 offset + + + float textureLodOffset + sampler1DArrayShadow sampler + vec3 P + float lod + int offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which the texture will be sampled. + + + + + lod + + + Specifies the explicit level-of-detail from which texels will be fetched. + + + + + offset + + + Specifies the offset that will be applied to P before texels are fetched. + + + + + + Description + + textureLodOffset performs a texture lookup at coordinate P from the + texture bound to sampler with an explicit level-of-detail as specified in lod. + Behavior is the same as in textureLod except that before + sampling, offset is added to P. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureLodOffset#newin13# + + + textureLodOffset (gsampler2DRect{Shadow})#newin14# + + + textureLodOffset (gsamplerCubeArray)#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureOffset.xml b/upstream-man-pages/manglsl/textureOffset.xml new file mode 100644 index 0000000..98d0823 --- /dev/null +++ b/upstream-man-pages/manglsl/textureOffset.xml @@ -0,0 +1,184 @@ + + + + + + + 2012 + Khronos Group + + + textureOffset + 3G + + + textureOffset + perform a texture lookup with offset + + Declaration + + + gvec4 textureOffset + gsampler1D sampler + float P + int offset + [float bias] + + + gvec4 textureOffset + gsampler2D sampler + vec2 P + ivec2 offset + [float bias] + + + gvec4 textureOffset + gsampler3D sampler + vec3 P + ivec3 offset + [float bias] + + + gvec4 textureOffset + gsampler2DRect sampler + vec2 P + ivec2 offset + + + float textureOffset + sampler2DRectShadow sampler + vec3 P + ivec2 offset + + + float textureOffset + sampler1DShadow sampler + vec3 P + int offset + [float bias] + + + float textureOffset + sampler2DShadow sampler + vec4 P + ivec2 offset + [float bias] + + + gvec4 textureOffset + gsampler1DArray sampler + vec2 P + int offset + [float bias] + + + gvec4 textureOffset + gsampler2DArray sampler + vec3 P + ivec2 offset + [float bias] + + + float textureOffset + sampler1DArrayShadow sampler + vec3 P + int offset + + + float textureOffset + sampler2DArrayShadow sampler + vec4 P + vec2 offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + offset + + + Specifies offset, in texels that will be applied to P before looking up the texel. + + + + + + Description + + textureOffset performs a texture lookup at coordinate P from the + texture bound to sampler with an an additional offset, specified in texels in offset + that will be applied to the (u, v, w) texture coordinates before looking up each texel. + The offset value must be a constant expression. A limited range of offset values are supported; + the minimum and maximum offset values are implementation-dependent and may be determined + by querying GL_MIN_PROGRAM_TEXEL_OFFSET and GL_MAX_PROGRAM_TEXEL_OFFSET, + respectively. + + + Note that offset does not apply to the layer coordinate for texture arrays. Also note + that offsets are not supported for cube maps. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureOffset#newin13# + + + textureOffset (gsampler2DRect{Shadow})#newin14# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureProj.xml b/upstream-man-pages/manglsl/textureProj.xml new file mode 100644 index 0000000..4e9581f --- /dev/null +++ b/upstream-man-pages/manglsl/textureProj.xml @@ -0,0 +1,163 @@ + + + + + + + 2011 + Khronos Group + + + textureProj + 3G + + + textureProj + perform a texture lookup with projection + + Declaration + + + gvec4 textureProj + gsampler1D sampler + vec2 P + [float bias] + + + gvec4 textureProj + gsampler1D sampler + vec4 P + [float bias] + + + gvec4 textureProj + gsampler2D sampler + vec3 P + [float bias] + + + gvec4 textureProj + gsampler2D sampler + vec4 P + [float bias] + + + gvec4 textureProj + gsampler3D sampler + vec4 P + [float bias] + + + float textureProj + sampler1DShadow sampler + vec4 P + [float bias] + + + float textureProj + sampler2DShadow sampler + vec4 P + [float bias] + + + gvec4 textureProj + gsampler2DRect sampler + vec3 P + + + gvec4 textureProj + gsampler2DRect sampler + vec4 P + + + float textureProj + gsampler2DRectShadow sampler + vec4 P + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + bias + + + Specifies an optional bias to be applied during level-of-detail computation. + + + + + + Description + + textureProj performs a texture lookup with projection. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in texture. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureProj#newin13# + + + textureProj (gsampler2DRect{Shadow})#newin14# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureProjGrad.xml b/upstream-man-pages/manglsl/textureProjGrad.xml new file mode 100644 index 0000000..2db5e42 --- /dev/null +++ b/upstream-man-pages/manglsl/textureProjGrad.xml @@ -0,0 +1,185 @@ + + + + + + + 2011 + Khronos Group + + + textureProjGrad + 3G + + + textureProjGrad + perform a texture lookup with projection and explicit gradients + + Declaration + + + gvec4 textureProjGrad + gsampler1D sampler + vec2 P + float pDx + float pDy + + + gvec4 textureProjGrad + gsampler1D sampler + vec4 P + float pDx + float pDy + + + gvec4 textureProjGrad + gsampler2D sampler + vec3 P + vec2 pDx + vec2 pDy + + + gvec4 textureProjGrad + gsampler2D sampler + vec4 P + vec2 pDx + vec2 pDy + + + gvec4 textureProjGrad + gsampler3D sampler + vec4 P + vec3 pDx + vec3 pDy + + + float textureProjGrad + sampler1DShadow sampler + vec4 P + float pDx + float pDy + + + float textureProjGrad + sampler2DShadow sampler + vec4 P + vec2 pDx + vec2 pDy + + + gvec4 textureProjGrad + gsampler2DRect sampler + vec3 P + vec2 pDx + vec2 pDy + + + gvec4 textureProjGrad + gsampler2DRect sampler + vec4 P + vec2 pDx + vec2 pDy + + + float textureProjGrad + gsampler2DRectShadow sampler + vec4 P + vec2 pDx + vec2 pDy + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + dPdx + + + Specifies the partial derivative of P with respect to window x. + + + + + dPdy + + + Specifies the partial derivative of P with respect to window y. + + + + + + Description + + textureProjGrad performs a texture lookup with projection and explicit gradients. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureGrad, + passing dPdx and dPdy as gradients. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureProjGrad#newin13# + + + textureProjGrad (gsampler2DRect{Shadow})#newin14# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureProjGradOffset.xml b/upstream-man-pages/manglsl/textureProjGradOffset.xml new file mode 100644 index 0000000..bbad942 --- /dev/null +++ b/upstream-man-pages/manglsl/textureProjGradOffset.xml @@ -0,0 +1,203 @@ + + + + + + + 2011 + Khronos Group + + + textureProjGradOffset + 3G + + + textureProjGradOffset + perform a texture lookup with projection, explicit gradients and offset + + Declaration + + + gvec4 textureProjGradOffset + gsampler1D sampler + vec2 P + float dPdx + float dPdy + int offset + + + gvec4 textureProjGradOffset + gsampler1D sampler + vec4 P + float dPdx + float dPdy + int offset + + + gvec4 textureProjGradOffset + gsampler2D sampler + vec3 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + gvec4 textureProjGradOffset + gsampler2D sampler + vec4 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + gvec4 textureProjGradOffset + gsampler3D sampler + vec4 P + vec3 dPdx + vec3 dPdy + ivec3 offset + + + float textureProjGradOffset + sampler1DShadow sampler + vec4 P + float dPdx + float dPdy + int offset + + + float textureProjGradOffset + sampler2DShadow sampler + vec4 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + gvec4 textureProjGradOffset + gsampler2DRect sampler + vec3 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + gvec4 textureProjGradOffset + gsampler2DRect sampler + vec4 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + float textureProjGradOffset + gsampler2DRectShadow sampler + vec4 P + vec2 dPdx + vec2 dPdy + ivec2 offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + dPdx + + + Specifies the partial derivative of P with respect to window x. + + + + + dPdy + + + Specifies the partial derivative of P with respect to window y. + + + + + offset + + + Specifies the offsets, in texels at which the texture will be sampled relative to the projection of P. + + + + + + Description + + textureProjGradOffset performs a texture lookup with projection and explicit gradients and offsets. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureGradOffset, + passing dPdx and dPdy as gradients, and offset as the offset. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureProjGradOffset#newin13# + + + textureProjGradOffset (gsampler2DRect{Shadow})#newin14# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureProjLod.xml b/upstream-man-pages/manglsl/textureProjLod.xml new file mode 100644 index 0000000..b8795fa --- /dev/null +++ b/upstream-man-pages/manglsl/textureProjLod.xml @@ -0,0 +1,146 @@ + + + + + + + 2011 + Khronos Group + + + textureProjLod + 3G + + + textureProjLod + perform a texture lookup with projection and explicit level-of-detail + + Declaration + + + gvec4 textureProjLod + gsampler1D sampler + vec2 P + float lod + + + gvec4 textureProjLod + gsampler1D sampler + vec4 P + float lod + + + gvec4 textureProjLod + gsampler2D sampler + vec3 P + float lod + + + gvec4 textureProjLod + gsampler2D sampler + vec4 P + float lod + + + gvec4 textureProjLod + gsampler3D sampler + vec4 P + float lod + + + float textureProjLod + sampler1DShadow sampler + vec4 P + float lod + + + float textureProjLod + sampler2DShadow sampler + vec4 P + float lod + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + lod + + + Specifies the explicit level-of-detail from which to fetch texels. + + + + + + Description + + textureProjLod performs a texture lookup with projection from an explicitly specified level-of-detail. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureLod, + with lod used to specify the level-of-detail from which the texture will be sampled. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureProjLod#newin13# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLodOffset, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureProjLodOffset.xml b/upstream-man-pages/manglsl/textureProjLodOffset.xml new file mode 100644 index 0000000..a705f2c --- /dev/null +++ b/upstream-man-pages/manglsl/textureProjLodOffset.xml @@ -0,0 +1,163 @@ + + + + + + + 2011 + Khronos Group + + + textureProjLodOffset + 3G + + + textureProjLodOffset + perform a texture lookup with projection and explicit level-of-detail and offset + + Declaration + + + gvec4 textureProjLodOffset + gsampler1D sampler + vec2 P + float lod + int offset + + + gvec4 textureProjLodOffset + gsampler1D sampler + vec4 P + float lod + int offset + + + gvec4 textureProjLodOffset + gsampler2D sampler + vec3 P + float lod + ivec2 offset + + + gvec4 textureProjLodOffset + gsampler2D sampler + vec4 P + float lod + ivec2 offset + + + gvec4 textureProjLodOffset + gsampler3D sampler + vec4 P + float lod + ivec3 offset + + + float textureProjLodOffset + sampler1DShadow sampler + vec4 P + float lod + int offset + + + float textureProjLodOffset + sampler2DShadow sampler + vec4 P + float lod + ivec2 offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which texture will be sampled. + + + + + lod + + + Specifies the explicit level-of-detail from which to fetch texels. + + + + + offset + + + Specifies the offset, in texels, to be applied to P before fetching texels. + + + + + + Description + + textureProjLodOffset performs a texture lookup with projection from an explicitly specified level-of-detail with an offset applied + to the texture coordinates before sampling. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureLodOffset, + with lod used to specify the level-of-detail from which the texture will be sampled and offset + used to specifiy the offset, in texels, to be applied to the texture coordinates before sampling. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureProjLodOffset#newin13# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureProjOffset.xml b/upstream-man-pages/manglsl/textureProjOffset.xml new file mode 100644 index 0000000..9053fe1 --- /dev/null +++ b/upstream-man-pages/manglsl/textureProjOffset.xml @@ -0,0 +1,182 @@ + + + + + + + 2011 + Khronos Group + + + textureProjOffset + 3G + + + textureProjOffset + perform a texture lookup with projection and offset + + Declaration + + + gvec4 textureProjOffset + gsampler1D sampler + vec2 P + int offset + [float bias] + + + gvec4 textureProjOffset + gsampler1D sampler + vec4 P + int offset + [float bias] + + + gvec4 textureProjOffset + gsampler2D sampler + vec3 P + ivec2 offset + [float bias] + + + gvec4 textureProjOffset + gsampler2D sampler + vec4 P + ivec2 offset + [float bias] + + + gvec4 textureProjOffset + gsampler3D sampler + vec4 P + ivec3 offset + [float bias] + + + float textureProjOffset + sampler1DShadow sampler + vec4 P + int offset + [float bias] + + + float textureProjOffset + sampler2DShadow sampler + vec4 P + ivec2 offset + [float bias] + + + gvec4 textureProjOffset + gsampler2DRect sampler + vec3 P + ivec2 offset + + + gvec4 textureProjOffset + gsampler2DRect sampler + vec4 P + ivec2 offset + + + float textureProjOffset + gsampler2DRectShadow sampler + vec4 P + ivec2 offset + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture from which texels will be retrieved is bound. + + + + + P + + + Specifies the texture coordinates at which the texture will be sampled. + + + + + offset + + + Specifies the offset that is applied to P before sampling occurs. + + + + + bias + + + Specifies an optional bias to be applied during level-of-detail computation. + + + + + + Description + + textureProjOffset performs a texture lookup with projection. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureOffset, + with the offset used to offset the computed texture coordinates. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureProjOffset#newin13# + + + textureProjOffset (gsampler2DRect{Shadow})#newin14# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureQueryLod, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureQueryLevels.xml b/upstream-man-pages/manglsl/textureQueryLevels.xml new file mode 100644 index 0000000..c6cbe74 --- /dev/null +++ b/upstream-man-pages/manglsl/textureQueryLevels.xml @@ -0,0 +1,138 @@ + + + + + + + 2012 + Khronos Group + + + textureQueryLevels + 3G + + + textureQueryLevels + compute the number of accessible mipmap levels of a texture + + Declaration + + + vec2 textureQueryLevels + gsampler1D sampler + + + vec2 textureQueryLevels + gsampler2D sampler + + + vec2 textureQueryLevels + gsampler3D sampler + + + vec2 textureQueryLevels + gsamplerCube sampler + + + vec2 textureQueryLevels + gsampler1DArray sampler + + + vec2 textureQueryLevels + gsampler2DDArray sampler + + + vec2 textureQueryLevels + gsamplerCubeArray sampler + + + vec2 textureQueryLevels + gsampler1DShadow sampler + + + vec2 textureQueryLevels + gsampler2DShadow sampler + + + vec2 textureQueryLevels + gsamplerCubeShadow sampler + + + vec2 textureQueryLevels + gsampler1DArrayShadow sampler + + + vec2 textureQueryLevels + gsampler2DArrayShadow sampler + + + vec2 textureQueryLevels + gsamplerCubeArrayShadow sampler + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture whose mipmap level count will be queried is bound. + + + + + + Description + + textureQueryLevels returns the number of accessible mipmap levels + are in the texture associated with sampler. + + + If called on an incomplete texture, or if no texture is associated with sampler, zero is returned. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureQueryLevels#newin43# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureSize + + + Copyright + + Copyright 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureQueryLod.xml b/upstream-man-pages/manglsl/textureQueryLod.xml new file mode 100644 index 0000000..49baa5f --- /dev/null +++ b/upstream-man-pages/manglsl/textureQueryLod.xml @@ -0,0 +1,162 @@ + + + + + + + 2011 + Khronos Group + + + textureQueryLod + 3G + + + textureQueryLod + compute the level-of-detail that would be used to sample from a texture + + Declaration + + + vec2 textureQueryLod + gsampler1D sampler + float P + + + vec2 textureQueryLod + gsampler2D sampler + vec2 P + + + vec2 textureQueryLod + gsampler3D sampler + vec3 P + + + vec2 textureQueryLod + gsamplerCube sampler + vec3 P + + + vec2 textureQueryLod + gsampler1DArray sampler + float P + + + vec2 textureQueryLod + gsampler2DDArray sampler + vec2 P + + + vec2 textureQueryLod + gsamplerCubeArray sampler + vec3 P + + + vec2 textureQueryLod + gsampler1DShadow sampler + float P + + + vec2 textureQueryLod + gsampler2DShadow sampler + vec2 P + + + vec2 textureQueryLod + gsamplerCubeShadow sampler + vec3 P + + + vec2 textureQueryLod + gsampler1DArrayShadow sampler + float P + + + vec2 textureQueryLod + gsampler2DArrayShadow sampler + vec2 P + + + vec2 textureQueryLod + gsamplerCubeArrayShadow sampler + vec3 P + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture whose level-of-detail will be queried is bound. + + + + + P + + + Specifies the texture coordinates at which the level-of-detail will be queried. + + + + + + Description + + Available only in the fragment shader, + textureQueryLod computes the level-of-detail that would be used to sample from + a texture. The mipmap array(s) that would be accessed is returned in the x component + of the return value. The computed level-of-detail relative to the base level is returned in the + y component of the return value. + + + If called on an incomplete texture, the result of the operation is undefined. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureQueryLod#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureSize + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/textureSize.xml b/upstream-man-pages/manglsl/textureSize.xml new file mode 100644 index 0000000..ae44f83 --- /dev/null +++ b/upstream-man-pages/manglsl/textureSize.xml @@ -0,0 +1,183 @@ + + + + + + + 2011 + Khronos Group + + + textureSize + 3G + + + textureSize + retrieve the dimensions of a level of a texture + + Declaration + + + int textureSize + gsampler1D sampler + int lod + + + ivec2 textureSize + gsampler2D sampler + int lod + + + ivec3 textureSize + gsampler3D sampler + int lod + + + ivec2 textureSize + gsamplerCube sampler + int lod + + + int textureSize + sampler1DShadow sampler + int lod + + + ivec2 textureSize + sampler2DShadow sampler + int lod + + + ivec2 textureSize + samplerCubeShadow sampler + int lod + + + ivec3 textureSize + samplerCubeArray sampler + int lod + + + ivec3 textureSize + samplerCubeArrayShadow sampler + int lod + + + ivec2 textureSize + gsamplerRect sampler + + + ivec2 textureSize + gsamplerRectShadow sampler + + + ivec2 textureSize + gsampler1DArray sampler + int lod + + + ivec3 textureSize + gsampler2DArray sampler + int lod + + ivec2 textureSize + sampler1DArrayShadow sampler + int lod + + + ivec3 textureSize + sampler2DArrayShadow sampler + int lod + + + int textureSize + gsamplerBuffer sampler + + + ivec2 textureSize + gsampler2DMS sampler + + + ivec3 textureSize + gsampler2DMSArray sampler + + + + Parameters + + + sampler + + + Specifies the sampler to which the texture whose dimensions to retrieve is bound. + + + + + lod + + + Specifies the level of the texture for which to retrieve the dimensions. + + + + + + Description + + textureSize returns the dimensions of level lod (if present) + of the texture bound to sampler. The components in the return value are filled in, + in order, with the width, height and depth of the texture. For the array forms, the last component of the + return value is the number of layers in the texture array. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + textureSize#newin13# + + + textureSize (samplerBuffer, samplerRect{Shadow})#newin14# + + + textureSize (samplerCube{Shadow})#newin40# + + + + + + See Also + + texelFetch, + texelFetchOffset, + texture, + textureGather, + textureGatherOffset, + textureGatherOffsets, + textureGrad, + textureGradOffset, + textureLod, + textureLodOffset, + textureOffset, + textureProj, + textureProjGrad, + textureProjGradOffset, + textureProjLod, + textureProjLodOffset, + textureProjOffset, + textureQueryLod + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/top.php b/upstream-man-pages/manglsl/top.php new file mode 100644 index 0000000..b16f9a2 --- /dev/null +++ b/upstream-man-pages/manglsl/top.php @@ -0,0 +1,10 @@ + + +OpenGL Shading Language (GLSL) Reference Pages + + + + + + + diff --git a/upstream-man-pages/manglsl/transpose.xml b/upstream-man-pages/manglsl/transpose.xml new file mode 100644 index 0000000..ed3689b --- /dev/null +++ b/upstream-man-pages/manglsl/transpose.xml @@ -0,0 +1,141 @@ + + + + + + + 2011 + Khronos Group + + + transpose + 3G + + + transpose + calculate the transpose of a matrix + + Declaration + + + mat2 transpose + mat2 m + + + mat3 transpose + mat3 m + + + mat4 transpose + mat4 m + + + mat2x3 transpose + mat3x2 m + + + mat2x4 transpose + mat4x2 m + + + mat3x2 transpose + mat2x3 m + + + mat3x4 transpose + mat4x3 m + + + mat4x2 transpose + mat2x4 m + + + mat4x3 transpose + mat3x4 m + + + dmat2 transpose + dmat2 m + + + dmat3 transpose + dmat3 m + + + dmat4 transpose + dmat4 m + + + dmat2x3 transpose + dmat3x2 m + + + dmat2x4 transpose + dmat4x2 m + + + dmat3x2 transpose + dmat2x3 m + + + dmat3x4 transpose + dmat4x3 m + + + dmat4x2 transpose + dmat2x4 m + + + dmat4x3 transpose + dmat3x4 m + + + + Parameters + + + m + + + Specifies the matrix of which to take the transpose. + + + + + + Description + + transpose returns the transpose of the matrix m. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + transpose (float)#newin12# + + + transpose (double)#newin40# + + + + + + See Also + + determinant, + inverse + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/trunc.xml b/upstream-man-pages/manglsl/trunc.xml new file mode 100644 index 0000000..9d9f5b5 --- /dev/null +++ b/upstream-man-pages/manglsl/trunc.xml @@ -0,0 +1,80 @@ + + + + + + + 2011 + Khronos Group + + + trunc + 3G + + + trunc + find the nearest integer less than or equal to the parameter + + Declaration + + + genType trunc + genType x + + + + + genDType trunc + genDType x + + + + Parameters + + + x + + + Specify the value to evaluate. + + + + + + Description + + trunc returns a a value equal to the nearest integer to x + whose absolute value is not larger than the absolute value of x. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + trunc (genType)#newin13# + + + trunc (genDType)#newin40# + + + + + + See Also + + floor, + round + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/uaddCarry.xml b/upstream-man-pages/manglsl/uaddCarry.xml new file mode 100644 index 0000000..a9744af --- /dev/null +++ b/upstream-man-pages/manglsl/uaddCarry.xml @@ -0,0 +1,92 @@ + + + + + + + 2011 + Khronos Group + + + uaddCarry + 3G + + + uaddCarry + add unsigned integers and generate carry + + Declaration + + + genUType uaddCarry + genUType x + genUType y + out genUType carry + + + + Parameters + + + x + + + Specifies the first vector to be used in the summation operation. + + + + + y + + + Specifies the second vector to be used in the summation operation. + + + + + carry + + + Specifies the variable to receive the carry output of the sum. + + + + + + Description + + uaddCarry adds two 32-bit unsigned integer variables (scalars or vectors) and generates + a 32-bit unsigned integer result, along with a carry output. The result is the sum of x and + y modulo 232. + The value carry is set to 0 if the sum is less than + 232 + and to 1 otherwise. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + uaddCarry#newin40# + + + + + + See Also + + usubBorrow + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/umulExtended.xml b/upstream-man-pages/manglsl/umulExtended.xml new file mode 100644 index 0000000..dd699ec --- /dev/null +++ b/upstream-man-pages/manglsl/umulExtended.xml @@ -0,0 +1,106 @@ + + + + + + + 2011 + Khronos Group + + + umulExtended + 3G + + + umulExtended + perform a 32- by 32-bit multiply to produce a 64-bit result + + Declaration + + + void umulExtended + genUType x + genUType y + out genUType msb + out genUType lsb + + void imulExtended + genIType x + genIType y + out genIType msb + out genIType lsb + + + + Parameters + + + x + + + Specifies the first multiplicand. + + + + + y + + + Specifies the second multiplicand.. + + + + + msb + + + Specifies the variable to receive the most significant word of the product. + + + + + lsb + + + Specifies the variable to receive the least significant word of the product. + + + + + + Description + + umulExtended and imulExtended perform multiplication of the two 32-bit integer + quantities x and y, producing a 64-bit integer result. The 32 least + significant bits of this product are returned in lsb and the 32 most significant bits are returned + in msb. umulExtended and imulExtended perform + unsigned and signed multiplication, respectively. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + umulExtended#newin40# + + + + + + See Also + + uaddCarry + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/unpackDouble2x32.xml b/upstream-man-pages/manglsl/unpackDouble2x32.xml new file mode 100644 index 0000000..fa43d96 --- /dev/null +++ b/upstream-man-pages/manglsl/unpackDouble2x32.xml @@ -0,0 +1,73 @@ + + + + + + + 2011 + Khronos Group + + + unpackDouble2x32 + 3G + + + unpackDouble2x32 + produce two unsigned integers containing the bit encoding of a double precision floating point value + + Declaration + + + uvec2 unpackDouble2x32 + double d + + + + Parameters + + + d + + + Specifies double precision value to break into a pair of unsigned integers. + + + + + + Description + + unpackDouble2x32 returns a two-component unsigned integer vector + representation of d. The bit-level representation of d is + preserved. The first component of the returned vector contains + the 32 least significant bits of the double; the second + component consists the 32 most significant bits. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + unpackDouble2x32#newin40# + + + + + + See Also + + packDouble2x32 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/unpackHalf2x16.xml b/upstream-man-pages/manglsl/unpackHalf2x16.xml new file mode 100644 index 0000000..daa7a7e --- /dev/null +++ b/upstream-man-pages/manglsl/unpackHalf2x16.xml @@ -0,0 +1,79 @@ + + + + + + + 2011 + Khronos Group + + + unpackHalf2x16 + 3G + + + unpackHalf2x16 + convert two 16-bit floating-point values packed into a single 32-bit integer into a vector of two 32-bit floating-point quantities + + Declaration + + + vec2 unpackHalf2x16 + uint v + + + + Parameters + + + v + + + Specify a single 32-bit unsigned integer values that contains two 16-bit floating point values to be unpacked. + + + + + + Description + + unpackHalf2x16 returns a two-component floating-point vector with + components obtained by unpacking a 32-bit unsigned + integer into a pair of 16-bit values, interpreting those + values as 16-bit floating-point numbers according to the + OpenGL Specification, and converting them to 32-bit + floating-point values. + The first component of the vector is obtained from the + 16 least-significant bits of v; the second component is + obtained from the 16 most-significant bits of v. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + unpackHalf2x16#newin42# + + + + + + See Also + + packDouble2x32, + unpackDouble2x32, + packHalf2x16 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/unpackUnorm2x16.xml b/upstream-man-pages/manglsl/unpackUnorm2x16.xml new file mode 100644 index 0000000..42b17fc --- /dev/null +++ b/upstream-man-pages/manglsl/unpackUnorm2x16.xml @@ -0,0 +1,108 @@ + + + + + + + 2011 + Khronos Group + + + unpackUnorm + 3G + + + unpackUnorm2x16, unpackUnorm4x8, unpackSnorm4x8 + unpack floating-point values from an unsigned integer + + Declaration + + + vec2 unpackUnorm2x16 + uint p + + + vec2 unpackSnorm2x16 + uint p + + + vec4 unpackUnorm4x8 + uint p + + + vec4 unpackSnorm4x8 + uint p + + + + Parameters + + + p + + + Specifies an unsigned integer containing packed floating-point values. + + + + + + Description + + unpackUnorm2x16, unpackSnorm2x16, unpackUnorm4x8 and unpackSnorm4x8 unpack + single 32-bit unsigned integers, specified in the parameter p into a pair of 16-bit unsigned integers, + four 8-bit unsigned integers or four 8-bit signed integers. Then, each component is converted to a normalized floating-point + value to generate the returned two- or four-component vector. + + + The conversion for unpacked fixed point value f to floating-point is performed as follows: + + packUnorm2x16: f / 65535.0 + packSnorm2x16: clamp(f / 32727.0, -1.0, 1.0) + packUnorm4x8: f / 255.0 + packSnorm4x8: clamp(f / 127.0, -1.0, 1.0) + + + + The first component of the returned vector will be extracted from the least significant bits of the input; + the last component will be extracted from the most significant bits. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + unpackUnorm2x16#newin41# + + + unpackSnorm2x16#newin42# + + + unpackUnorm4x8#newin41# + + + unpackSnorm4x8#newin41# + + + + + + See Also + + packUnorm2x16, + packUnorm4x8, + packSnorm4x8 + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/usubBorrow.xml b/upstream-man-pages/manglsl/usubBorrow.xml new file mode 100644 index 0000000..2d2c387 --- /dev/null +++ b/upstream-man-pages/manglsl/usubBorrow.xml @@ -0,0 +1,91 @@ + + + + + + + 2011 + Khronos Group + + + usubBorrow + 3G + + + usubBorrow + subtract unsigned integers and generate borrow + + Declaration + + + genUType usubBorrow + genUType x + genUType y + out genUType borrow + + + + Parameters + + + x + + + Specifies the first vector to be used in the subtraction operation. + + + + + y + + + Specifies the second vector to be used in the subtraction operation. + + + + + borrow + + + Specifies the variable to receive the borrow output of the difference. + + + + + + Description + + usubBorrow subtracts two 32-bit unsigned integer variables (scalars or vectors) and generates + a 32-bit unsigned integer result, along with a borrow output. The result is the difference of x and + y if non-negative, or 232 + plus that difference otherwise. + The value borrow is set to 0 if xy and to 1 otherwise. + + + Version Support + + #VARTABLECOLS# + + #FUNCTABLEHEADER# + + usubBorrow#newin40# + + + + + + See Also + + uaddCarry + + + Copyright + + Copyright 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. + + + diff --git a/upstream-man-pages/manglsl/xhtml/EmitStreamVertex.xml b/upstream-man-pages/manglsl/xhtml/EmitStreamVertex.xml new file mode 100644 index 0000000..fc60d28 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/EmitStreamVertex.xml @@ -0,0 +1,20 @@ + + + +EmitStreamVertex - OpenGL Shading Language (GLSL)

Name

EmitStreamVertex — emit a vertex to a specified stream

Declaration

void EmitStreamVertex(int stream);

Parameters

stream

+ Specifies the stream upon which the vertex will be emitted. +

Description

+ Available only in the Geometry Shader, EmitStreamVertex emits the current + values of output variables to the current output primitive on stream stream. The argument + stream must be a constant integral expression. On return from this call, the value of all output variables + for all streams are undefined. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
EmitStreamVertex------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/EmitVertex.xml b/upstream-man-pages/manglsl/xhtml/EmitVertex.xml new file mode 100644 index 0000000..7af2d0c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/EmitVertex.xml @@ -0,0 +1,18 @@ + + + +EmitVertex - OpenGL Shading Language (GLSL)

Name

EmitVertex — emit a vertex to the first vertex stream

Declaration

void EmitVertex(void);

Description

+ Available only in the Geometry Shader, EmitVertex emits the current + values of output variables to the current output primitive on the first (and possibly only) primitive stream. + It is equivalent to calling EmitStreamVertex with + stream set to 0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
EmitVertex----YYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/EndPrimitive.xml b/upstream-man-pages/manglsl/xhtml/EndPrimitive.xml new file mode 100644 index 0000000..3684727 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/EndPrimitive.xml @@ -0,0 +1,18 @@ + + + +EndPrimitive - OpenGL Shading Language (GLSL)

Name

EndPrimitive — complete the current output primitive on the first vertex stream

Declaration

void EndPrimitive(void);

Description

+ Available only in the Geometry Shader, EndPrimitive completes the + current output primitive on the first (and possibly only) vertex stream and starts a new one.No vertex is emitted. + Calling EndPrimitive is equivalent to calling EmitStreamVertex + with stream set to 0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
EndPrimitive----YYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/EndStreamPrimitive.xml b/upstream-man-pages/manglsl/xhtml/EndStreamPrimitive.xml new file mode 100644 index 0000000..bc84414 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/EndStreamPrimitive.xml @@ -0,0 +1,19 @@ + + + +EndStreamPrimitive - OpenGL Shading Language (GLSL)

Name

EndStreamPrimitive — complete the current output primitive on a specified stream

Declaration

void EndStreamPrimitive(int stream);

Parameters

stream

+ Specifies the stream upon which the current primitive will be ended. +

Description

+ Available only in the Geometry Shader, EndStreamPrimitive completes the + current output primitive on stream stream and starts a new one. The argument to stream + must be a constant integral expression. No vertex is emitted. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
EndStreamPrimitive------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/Makefile b/upstream-man-pages/manglsl/xhtml/Makefile new file mode 100644 index 0000000..24e0780 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/Makefile @@ -0,0 +1,276 @@ +#!gmake + +# XSLT processor - other possibilities like Saxon exist +XSLT = xsltproc --nonet +SED = sed +PERL = perl + +# Location of locally customized stylesheet, which imports +# the Docbook modular stylesheets, and specifically the +# stylesheet to convert Docbook+MathML => XHTML+MathML +DB2XHTML = opengl-man.xsl +# ../../mancommon/opengl-man.xsl +PREPROCESSOR = preprocess.sed +POSTPROCESSOR = postprocess.sed + +.SUFFIXES: .gl .xml .html .xhtml .ck.xhtml .tex .pdf .3G .tar .tar.gz +.PHONY: man html pdf tex + +# ../../mancommon/opengl-man.xsl + +%.xml: ../%.xml $(DB2XHTML) $(PREPROCESSOR) $(POSTPROCESSOR) + $(SED) -f $(PREPROCESSOR) $< > $@.pre + $(XSLT) --xinclude -o $@.tmp $(DB2XHTML) $@.pre + $(SED) -f $(POSTPROCESSOR) $@.tmp > $@ + $(RM) $@.pre + $(RM) $@.tmp + +Angle_and_Trigonometry_Functions = \ + radians.xml \ + degrees.xml \ + sin.xml \ + cos.xml \ + tan.xml \ + asin.xml \ + acos.xml \ + atan.xml \ + sinh.xml \ + cosh.xml \ + tanh.xml \ + asinh.xml \ + acosh.xml \ + atanh.xml + +Exponential_Functions = \ + pow.xml \ + exp.xml \ + log.xml \ + exp2.xml \ + log2.xml \ + sqrt.xml \ + inversesqrt.xml + +Common_Functions = \ + abs.xml \ + sign.xml \ + floor.xml \ + trunc.xml \ + round.xml \ + roundEven.xml \ + ceil.xml \ + fract.xml \ + mod.xml \ + modf.xml \ + min.xml \ + max.xml \ + clamp.xml \ + mix.xml \ + step.xml \ + smoothstep.xml \ + isnan.xml \ + isinf.xml \ + floatBitsToInt.xml \ + intBitsToFloat.xml \ + fma.xml \ + frexp.xml \ + ldexp.xml + +FloatingPoint_Pack_and_Unpack_Functions = \ + packUnorm2x16.xml \ + unpackUnorm2x16.xml \ + packDouble2x32.xml \ + unpackDouble2x32.xml \ + packHalf2x16.xml \ + unpackHalf2x16.xml + +Geometric_Functions = \ + length.xml \ + distance.xml \ + dot.xml \ + cross.xml \ + normalize.xml \ + faceforward.xml \ + reflect.xml \ + refract.xml + +Matrix_Functions = \ + matrixCompMult.xml \ + outerProduct.xml \ + transpose.xml \ + determinant.xml \ + inverse.xml + +Vector_Relational_Functions = \ + lessThan.xml \ + lessThanEqual.xml \ + greaterThan.xml \ + greaterThanEqual.xml \ + equal.xml \ + notEqual.xml \ + any.xml \ + all.xml \ + not.xml + +Integer_Functions = \ + uaddCarry.xml \ + usubBorrow.xml \ + umulExtended.xml \ + bitfieldExtract.xml \ + bitfieldInsert.xml \ + bitfieldReverse.xml \ + bitCount.xml \ + findLSB.xml \ + findMSB.xml + +Texture_Query_Functions = \ + textureSize.xml \ + textureQueryLod.xml \ + textureQueryLevels.xml + +Texel_Lookup_Functions = \ + texture.xml \ + textureProj.xml \ + textureLod.xml \ + textureOffset.xml \ + texelFetch.xml \ + texelFetchOffset.xml \ + textureProjOffset.xml \ + textureLodOffset.xml \ + textureProjLod.xml \ + textureProjLodOffset.xml \ + textureGrad.xml \ + textureGradOffset.xml \ + textureProjGrad.xml \ + textureProjGradOffset.xml + +Texture_Gather_Functions = \ + textureGather.xml \ + textureGatherOffset.xml \ + textureGatherOffsets.xml + +Derivative_Functions = \ + dFdx.xml \ + fwidth.xml + +Interpolation_Functions = \ + interpolateAtCentroid.xml \ + interpolateAtSample.xml \ + interpolateAtOffset.xml + +Noise_Functions = \ + noise.xml + +Geometry_Shader_Functions = \ + EmitStreamVertex.xml \ + EmitVertex.xml \ + EndStreamPrimitive.xml \ + EndPrimitive.xml + +Invocation_Control_Functions = \ + barrier.xml + +Atomic_Counter_Functions = \ + atomicCounterIncrement.xml \ + atomicCounterDecrement.xml \ + atomicCounter.xml + +Image_Functions = \ + imageLoad.xml \ + imageStore.xml \ + imageAtomicAdd.xml \ + imageAtomicAnd.xml \ + imageAtomicOr.xml \ + imageAtomicXor.xml \ + imageAtomicMin.xml \ + imageAtomicMax.xml \ + imageAtomicExchange.xml \ + imageAtomicCompSwap.xml \ + imageSize.xml + +Barrier_Functions =\ + memoryBarrier.xml \ + memoryBarrierAtomicCounter.xml \ + memoryBarrierBuffer.xml \ + memoryBarrierImage.xml \ + memoryBarrierShared.xml \ + groupMemoryBarrier.xml + +Atomic_Memory_Functions = \ + atomicAdd.xml \ + atomicMin.xml \ + atomicMax.xml \ + atomicAnd.xml \ + atomicOr.xml \ + atomicXor.xml \ + atomicExchange.xml \ + atomicCompSwap.xml + +Builtin_Variables = \ + gl_ClipDistance.xml \ + gl_FragCoord.xml \ + gl_FragDepth.xml \ + gl_FrontFacing.xml \ + gl_GlobalInvocationID.xml \ + gl_InstanceID.xml \ + gl_InvocationID.xml \ + gl_Layer.xml \ + gl_LocalInvocationID.xml \ + gl_LocalInvocationIndex.xml \ + gl_NumSamples.xml \ + gl_NumWorkGroups.xml \ + gl_PatchVerticesIn.xml \ + gl_PointCoord.xml \ + gl_PointSize.xml \ + gl_Position.xml \ + gl_PrimitiveID.xml \ + gl_PrimitiveIDIn.xml \ + gl_SampleID.xml \ + gl_SampleMask.xml \ + gl_SampleMaskIn.xml \ + gl_SamplePosition.xml \ + gl_TessCoord.xml \ + gl_TessLevelInner.xml \ + gl_TessLevelOuter.xml \ + gl_VertexID.xml \ + gl_ViewportIndex.xml \ + gl_WorkGroupID.xml \ + gl_WorkGroupSize.xml + +GLSLXML = \ + $(Angle_and_Trigonometry_Functions) \ + $(Exponential_Functions) \ + $(Common_Functions) \ + $(FloatingPoint_Pack_and_Unpack_Functions) \ + $(Geometric_Functions) \ + $(Matrix_Functions) \ + $(Vector_Relational_Functions) \ + $(Integer_Functions) \ + $(Texture_Query_Functions) \ + $(Texel_Lookup_Functions) \ + $(Texture_Gather_Functions) \ + $(Derivative_Functions) \ + $(Interpolation_Functions) \ + $(Noise_Functions) \ + $(Geometry_Shader_Functions) \ + $(Invocation_Control_Functions) \ + $(Atomic_Counter_Functions) \ + $(Image_Functions) \ + $(Barrier_Functions) \ + $(Atomic_Memory_Functions) \ + \ + $(Builtin_Variables) + +XML = $(GLSLXML) + +default: all + +index.html: makeindex.pl $(XML) Makefile + $(PERL) makeindex.pl $(dir $<) $(dir $<).. > $@ + +all: $(XML) index.html Makefile + +clean: + $(RM) $(TEX_FILES) *.log *.aux *.toc *.dvi *.out + +clobber: clean + $(RM) $(XML) $(PDF_FILES) diff --git a/upstream-man-pages/manglsl/xhtml/abs.xml b/upstream-man-pages/manglsl/xhtml/abs.xml new file mode 100644 index 0000000..dba77b6 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/abs.xml @@ -0,0 +1,15 @@ + + + +abs - OpenGL Shading Language (GLSL)

Name

abs — return the absolute value of the parameter

Declaration

genType abs(genType x);

genIType abs(genIType x);

genDType abs(genDType x);

Parameters

x

+ Specify the value of which to return the absolute. +

Description

+ abs returns the absolute value of x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
abs (genType)YYYYYYYYYY
abs (genIType)--YYYYYYYY
abs (genDType)-------YYY

See Also

+ sign +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/acos.xml b/upstream-man-pages/manglsl/xhtml/acos.xml new file mode 100644 index 0000000..500ce23 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/acos.xml @@ -0,0 +1,28 @@ + + + +acos - OpenGL Shading Language (GLSL)

Name

acos — return the arccosine of the parameter

Declaration

genType acos(genType x);

Parameters

x

+ Specify the value whose arccosine to return. +

Description

+ atan returns the angle whose trigonometric cosine is + x. + The range of values returned by acos is + + + 0 + + + . + The result is undefined if + x1. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
acosYYYYYYYYYY

See Also

+ sin, + cos, + asin, + tan +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/acosh.xml b/upstream-man-pages/manglsl/xhtml/acosh.xml new file mode 100644 index 0000000..f3bd713 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/acosh.xml @@ -0,0 +1,21 @@ + + + +acosh - OpenGL Shading Language (GLSL)

Name

acosh — return the arc hyperbolic cosine of the parameter

Declaration

genType acosh(genType x);

Parameters

x

+ Specify the value whose arc hyperbolic cosine to return. +

Description

+ acosh returns the arc hyperbolic cosine of + x; + the non-negative inverse of cosh. Results + are undefined if x1. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
acosh--YYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/all.xml b/upstream-man-pages/manglsl/xhtml/all.xml new file mode 100644 index 0000000..90e1219 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/all.xml @@ -0,0 +1,28 @@ + + + +all - OpenGL Shading Language (GLSL)

Name

all — check whether all elements of a boolean vector are true

Declaration

bool all(bvec x);

Parameters

x

+ Specifies the vector to be tested for truth. +

Description

+ any returns true if all elements of x are true and false otherwise. + It is functionally equivalent to: +

+

    bool all(bvec x)       // bvec can be bvec2, bvec3 or bvec4
+    {
+        bool result = true;
+        int i;
+        for (i = 0; i < x.length(); ++x)
+        {
+            result &= x[i];
+        }
+        return result;
+    }

+

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
allYYYYYYYYYY

See Also

+ any, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/any.xml b/upstream-man-pages/manglsl/xhtml/any.xml new file mode 100644 index 0000000..8a83621 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/any.xml @@ -0,0 +1,28 @@ + + + +any - OpenGL Shading Language (GLSL)

Name

any — check whether any element of a boolean vector is true

Declaration

bool any(bvec x);

Parameters

x

+ Specifies the vector to be tested for truth. +

Description

+ any returns true if any element of x is true and false otherwise. + It is functionally equivalent to: +

+

    bool any(bvec x)       // bvec can be bvec2, bvec3 or bvec4
+    {
+        bool result = false;
+        int i;
+        for (i = 0; i < x.length(); ++x)
+        {
+            result |= x[i];
+        }
+        return result;
+    }

+

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
anyYYYYYYYYYY

See Also

+ all, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/asin.xml b/upstream-man-pages/manglsl/xhtml/asin.xml new file mode 100644 index 0000000..b91f989 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/asin.xml @@ -0,0 +1,37 @@ + + + +asin - OpenGL Shading Language (GLSL)

Name

asin — return the arcsine of the parameter

Declaration

genType asin(genType x);

Parameters

x

+ Specify the value whose arcsine to return. +

Description

+ atan returns the angle whose trigonometric sine is + x. + The range of values returned by asin is + + + + − + + + 2 + + + + + 2 + + + . + The result is undefined if + x1. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
asinYYYYYYYYYY

See Also

+ sin, + cos, + acos, + tan +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/asinh.xml b/upstream-man-pages/manglsl/xhtml/asinh.xml new file mode 100644 index 0000000..ace1e47 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/asinh.xml @@ -0,0 +1,20 @@ + + + +asinh - OpenGL Shading Language (GLSL)

Name

asinh — return the arc hyperbolic sine of the parameter

Declaration

genType asinh(genType x);

Parameters

x

+ Specify the value whose arc hyperbolic sine to return. +

Description

+ asinh returns the arc hyperbolic sine of + x; + the inverse of sinh. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
asinh--YYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atan.xml b/upstream-man-pages/manglsl/xhtml/atan.xml new file mode 100644 index 0000000..73ae63c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atan.xml @@ -0,0 +1,60 @@ + + + +atan - OpenGL Shading Language (GLSL)

Name

atan — return the arc-tangent of the parameters

Declaration

genType atan(genType y, genType x);

genType atan(genType y_over_x);

Parameters

y

+ Specify the numerator of the fraction whose arctangent to return. +

x

+ Specify the denominator of the fraction whose arctangent to return. +

y_over_x

+ Specify the fraction whose arctangent to return. +

Description

+ atan returns the angle whose trigonometric arctangent is + + + + + y + + + x + + + or y_over_x, + depending on which overload is invoked. In the first overload, the signs of y + and x are used to determine the quadrant + that the angle lies in. The values returned by atan in this case are in the range + + + − + + + . Results are undefined if x is zero. +

+ For the second overload, atan returns the angle whose tangent is + y_over_x. Values + returned in this case are in the range + + + + − + + + 2 + + + + + 2 + + + . +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atanYYYYYYYYYY

See Also

+ sin, + cos, + tan +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atanh.xml b/upstream-man-pages/manglsl/xhtml/atanh.xml new file mode 100644 index 0000000..3d7ec0a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atanh.xml @@ -0,0 +1,21 @@ + + + +atanh - OpenGL Shading Language (GLSL)

Name

atanh — return the arc hyperbolic tangent of the parameter

Declaration

genType atanh(genType x);

Parameters

x

+ Specify the value whose arc hyperbolic tangent to return. +

Description

+ atanh returns the arc hyperbolic tangent of + x; + the inverse of tanh. Results + are undefined if x1. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atanhYYYYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicAdd.xml b/upstream-man-pages/manglsl/xhtml/atomicAdd.xml new file mode 100644 index 0000000..3521112 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicAdd.xml @@ -0,0 +1,33 @@ + + + +atomicAdd - OpenGL Shading Language (GLSL)

Name

atomicAdd — perform an atomic addition to a variable

Declaration

int atomicAdd(inout int mem, int data);

uint atomicAdd(inout uint mem, uint data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be added to mem. +

Description

+ atomicAdd performs an atomic addition of data to the contents of + mem and returns the original contents of mem + from before the addition occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicAdd---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicAnd.xml b/upstream-man-pages/manglsl/xhtml/atomicAnd.xml new file mode 100644 index 0000000..3cca568 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicAnd.xml @@ -0,0 +1,33 @@ + + + +atomicAnd - OpenGL Shading Language (GLSL)

Name

atomicAnd — perform an atomic logical AND operation to a variable

Declaration

int atomicAnd(inout int mem, int data);

uint atomicAnd(inout uint mem, uint data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be logically ANDed with to mem. +

Description

+ atomicAnd performs an atomic logical AND with data to the contents of + mem and returns the original contents of mem + from before the logical operation occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicAnd---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicCompSwap.xml b/upstream-man-pages/manglsl/xhtml/atomicCompSwap.xml new file mode 100644 index 0000000..dad207b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicCompSwap.xml @@ -0,0 +1,35 @@ + + + +atomicCompSwap - OpenGL Shading Language (GLSL)

Name

atomicCompSwap — perform an atomic compare-exchange operation to a variable

Declaration

int atomicCompSwap(inout int  mem,
 uint  compare,
 uint  data);
uint atomicCompSwap(inout uint  mem,
 uint  compare,
 uint  data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be compared and potentially exchanged with mem. +

Description

+ atomicCompSwap performs an atomic comparison of compare with the contents of + mem. If the content of mem is equal to compare, + then the content of data is written into mem and is returned from + the function. Otherwise, the original contents of mem + are returned. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicCompSwap---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicCounter.xml b/upstream-man-pages/manglsl/xhtml/atomicCounter.xml new file mode 100644 index 0000000..333068d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicCounter.xml @@ -0,0 +1,17 @@ + + + +atomicCounter - OpenGL Shading Language (GLSL)

Name

atomicCounter — return the current value of an atomic counter

Declaration

uint atomicCounter(atomic_uint c);

Parameters

c

+ Specify the handle to the atomic counter whose value to return. +

Description

+ atomicCounter returns the current value of + of the atomic counter c. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicCounter--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicCounterDecrement.xml b/upstream-man-pages/manglsl/xhtml/atomicCounterDecrement.xml new file mode 100644 index 0000000..687d08c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicCounterDecrement.xml @@ -0,0 +1,17 @@ + + + +atomicCounterDecrement - OpenGL Shading Language (GLSL)

Name

atomicCounterDecrement — atomically decrement a counter and return the prior value

Declaration

uint atomicCounterDecrement(atomic_uint c);

Parameters

c

+ Specify the handle to the atomic counter to decrement. +

Description

+ atomicCounterDecrement atomically decrements the value + of the atomic counter c and returns its new value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicCounterDecrement--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicCounterIncrement.xml b/upstream-man-pages/manglsl/xhtml/atomicCounterIncrement.xml new file mode 100644 index 0000000..b17c689 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicCounterIncrement.xml @@ -0,0 +1,17 @@ + + + +atomicCounterIncrement - OpenGL Shading Language (GLSL)

Name

atomicCounterIncrement — atomically increment a counter and return the prior value

Declaration

uint atomicCounterIncrement(atomic_uint c);

Parameters

c

+ Specify the handle to the atomic counter to increment. +

Description

+ atomicCounterIncrement atomically increments the value + of the atomic counter c and returns its prior value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicCounterIncrement--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicExchange.xml b/upstream-man-pages/manglsl/xhtml/atomicExchange.xml new file mode 100644 index 0000000..f913703 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicExchange.xml @@ -0,0 +1,33 @@ + + + +atomicExchange - OpenGL Shading Language (GLSL)

Name

atomicExchange — perform an atomic exchange operation to a variable

Declaration

int atomicExchange(inout int mem, int data);

uint atomicExchange(inout uint  mem,
 uint  data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be exchanged with mem. +

Description

+ atomicExchange performs an atomic exhange of data with the contents of + mem. The content of data is written into mem and the original contents of mem + are returned. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicExchange---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicMax.xml b/upstream-man-pages/manglsl/xhtml/atomicMax.xml new file mode 100644 index 0000000..1a89afe --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicMax.xml @@ -0,0 +1,33 @@ + + + +atomixMax - OpenGL Shading Language (GLSL)

Name

atomixMax — perform an atomic max operation to a variable

Declaration

int atomixMax(inout int mem, int data);

uint atomixMax(inout uint mem, uint data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be compared to mem. +

Description

+ atomicMax performs an atomic comparison of data to the contents of + mem, writes the maximum value into mem and returns the original contents of mem + from before the comparison occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomixMax---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicMin.xml b/upstream-man-pages/manglsl/xhtml/atomicMin.xml new file mode 100644 index 0000000..bdeb9a0 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicMin.xml @@ -0,0 +1,33 @@ + + + +atomicMin - OpenGL Shading Language (GLSL)

Name

atomicMin — perform an atomic min operation to a variable

Declaration

int atomicMin(inout int mem, int data);

uint atomicMin(inout uint mem, uint data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be compared to mem. +

Description

+ atomicMin performs an atomic comparison of data to the contents of + mem, writes the minimum value into mem and returns the original contents of mem + from before the comparison occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicMin---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicOr.xml b/upstream-man-pages/manglsl/xhtml/atomicOr.xml new file mode 100644 index 0000000..7c82168 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicOr.xml @@ -0,0 +1,33 @@ + + + +atomicOr - OpenGL Shading Language (GLSL)

Name

atomicOr — perform an atomic logical OR operation to a variable

Declaration

int atomicOr(inout int mem, int data);

uint atomicOr(inout uint mem, uint data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be logically ORed with to mem. +

Description

+ atomicOr performs an atomic logical OR with data to the contents of + mem and returns the original contents of mem + from before the logical operation occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicOr---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/atomicXor.xml b/upstream-man-pages/manglsl/xhtml/atomicXor.xml new file mode 100644 index 0000000..d7332d0 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/atomicXor.xml @@ -0,0 +1,33 @@ + + + +atomicXor - OpenGL Shading Language (GLSL)

Name

atomicXor — perform an atomic logical exclusive OR operation to a variable

Declaration

int atomicXor(inout int mem, int data);

uint atomicXor(inout uint mem, uint data);

Parameters

mem

+ The variable to use as the target of the operation. +

data

+ The data to be logically exclusive ORed with to mem. +

Description

+ atomicXor performs an atomic logical exclusive OR with data to the contents of + mem and returns the original contents of mem + from before the logical operation occured. The contents of the memory being updated by the atomic operation are + guaranteed not to be modified by any other assignment or atomic memory function in any shader + invocation between the time the original value is read and the time the new value is written. +

+ Atomic memory functions are supported only for a limited set of variables. A shader will fail to compile + if the value passed to the mem argument of an atomic memory function does not correspond to a buffer or + shared variable. It is acceptable to pass an element of an array or a single component of a vector to the + mem argument of an atomic memory function, as long as the underlying array or vector is a buffer or + shared variable. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
atomicXor---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/barrier.xml b/upstream-man-pages/manglsl/xhtml/barrier.xml new file mode 100644 index 0000000..f59d430 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/barrier.xml @@ -0,0 +1,25 @@ + + + +barrier - OpenGL Shading Language (GLSL)

Name

barrier — synchronize execution of multiple shader invocations

Declaration

void barrier(void);

Description

+ Available only in the Tessellation Control and Compute Shaders, barrier provides + a partially defined order of execution between shader invocations. For any given static instance of barrier, + in a tessellation control shader, all invocations for a single input patch must enter it before any will be allowed + to continue beyond it. For any given static instance of barrier in a compute shader, all invocations + within a single work group must enter it before any are allowed to continue beyond it. + This ensures that values written by one invocation prior to a given static instance + of barrier can be safely read by other invocations after their call to the same static + instance of barrier. Because invocations may execute in undefined order between these + barrier calls, the values of a per-vertex or per-patch output variable, or any shared variable will be undefined + in a number of cases. +

+ barrier may only be placed inside the function main() of the tessellation + control shader, but may be placed anywhere in a compute shader. Calls to barrier may not + be placed within any control flow. Barriers are also disallowed after a return + statement in the function main(). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
barrier------YYYY

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/bitCount.xml b/upstream-man-pages/manglsl/xhtml/bitCount.xml new file mode 100644 index 0000000..4ab3e24 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/bitCount.xml @@ -0,0 +1,16 @@ + + + +bitCount - OpenGL Shading Language (GLSL)

Name

bitCount — counts the number of 1 bits in an integer

Declaration

genIType bitCount(genIType value);

genIType bitCount(genUType value);

Parameters

value

+ Specifies the value whose bits to count. +

Description

+ bitCount returns the number of bits that are set to 1 in the binary representation of value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
bitCount------YYYY

See Also

+ findLSB, + findMSB +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/bitfieldExtract.xml b/upstream-man-pages/manglsl/xhtml/bitfieldExtract.xml new file mode 100644 index 0000000..cdcde18 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/bitfieldExtract.xml @@ -0,0 +1,27 @@ + + + +bitfieldExtract - OpenGL Shading Language (GLSL)

Name

bitfieldExtract — extract a range of bits from an integer

Declaration

genIType bitfieldExtract(genIType  value,
 int  offset,
 int  bits);
genUType bitfieldExtract(genUType  value,
 int  offset,
 int  bits);

Parameters

value

+ Specifies the integer from which to extract bits. +

offset

+ Specifies the index of the first bit to extract. +

bits

+ Specifies the number of bits to extract. +

Description

+ bitfieldExtract extracts a subset of the bits of value and returns + it in the least significant bits of the result. The range of bits extracted is [offset, offset + bits + 1]. +

+ For unsigned data types, the most significant bits of the result will be set to zero. For signed data types, the most significant bits will be set to the value of + bit offset + base - 1 (i.e., it is sign extended to the width of the return type). +

+

+ If bits is zero, the result will be zero. The result will be undefined if offset or bits is negative, + or if the sum of offset and bits is greater than the number of bits used to store the operand. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
bitfieldInsert------YYYY

See Also

+ bitfieldExtract +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/bitfieldInsert.xml b/upstream-man-pages/manglsl/xhtml/bitfieldInsert.xml new file mode 100644 index 0000000..e8967e0 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/bitfieldInsert.xml @@ -0,0 +1,27 @@ + + + +bitfieldInsert - OpenGL Shading Language (GLSL)

Name

bitfieldInsert — insert a range of bits into an integer

Declaration

genIType bitfieldInsert(genIType  base,
 genIType  insert,
 int  offset,
 int  bits);
genUType bitfieldInsert(genUType  base,
 genUType  insert,
 int  offset,
 int  bits);

Parameters

base

+ Specifies the integer into which to insert insert. +

insert

+ Specifies the the value of the bits to insert. +

offset

+ Specifies the index of the first bit to insert. +

bits

+ Specifies the number of bits to insert. +

Description

+ bitfieldInsert inserts the bits least significant bits of insert + into base at offset offset. The returned value will have bits + [offset, offset + bits + 1] taken from [0, bits - 1] + of insert and all other bits taken directly from the corresponding bits of base. If + bits is zero, the result will simply be the original value of base. The result will + be undefined if offset or bits is negative, or if the sum of offset + and bits is greater than the number of bits used to store the operand. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
bitfieldInsert------YYYY

See Also

+ bitfieldExtract +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/bitfieldReverse.xml b/upstream-man-pages/manglsl/xhtml/bitfieldReverse.xml new file mode 100644 index 0000000..3c684a3 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/bitfieldReverse.xml @@ -0,0 +1,20 @@ + + + +bitfieldReverse - OpenGL Shading Language (GLSL)

Name

bitfieldReverse — reverse the order of bits in an integer

Declaration

genIType bitfieldReverse(genIType value);

genUType bitfieldReverse(genUType value);

Parameters

value

+ Specifies the value whose bits to reverse. +

Description

+ bitfieldReverse returns the reversal of the bits of value. The bit + numbered n will be taken from bit (bits - 1) - n + of value, where bits is the total number of bits used to represent + value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
bitfieldReverse------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/ceil.xml b/upstream-man-pages/manglsl/xhtml/ceil.xml new file mode 100644 index 0000000..ae7eb83 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/ceil.xml @@ -0,0 +1,17 @@ + + + +ceil - OpenGL Shading Language (GLSL)

Name

ceil — find the nearest integer that is greater than or equal to the parameter

Declaration

genType ceil(genType x);

genDType ceil(genDType x);

Parameters

x

+ Specify the value to evaluate. +

Description

+ ceil returns a value equal to the nearest integer that is + greater than or equal to x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
ceil (genType)YYYYYYYYYY
ceil (genDType)------YYYY

See Also

+ floor, + round +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/clamp.xml b/upstream-man-pages/manglsl/xhtml/clamp.xml new file mode 100644 index 0000000..49c3ce2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/clamp.xml @@ -0,0 +1,24 @@ + + + +clamp - OpenGL Shading Language (GLSL)

Name

clamp — constrain a value to lie between two further values

Declaration

genType clamp(genType  x,
 genType  minVal,
 genType  maxVal);
genType clamp(genType  x,
 float  minVal,
 float  maxVal);
genDType clamp(genDType  x,
 genDType  minVal,
 genDType  maxVal);
genDType clamp(genDType  x,
 double  minVal,
 double  maxVal);
genIType clamp(genIType  x,
 genIType  minVal,
 genIType  maxVal);
genIType clamp(genIType  x,
 int  minVal,
 int  maxVal);
genUType clamp(genUType  x,
 genUType  minVal,
 genUType  maxVal);
genUType clamp(genUType  x,
 uint  minVal,
 uint  maxVal);

Parameters

x

+ Specify the value to constrain. +

minVal

+ Specify the lower end of the range into which to constrain x. +

maxVal

+ Specify the upper end of the range into which to constrain x. +

Description

+ clamp returns the value of x constrained to the + range minVal to maxVal. The returned value is + computed as + min(max(x, + minVal), maxVal). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
clamp (genType)YYYYYYYYYY
clamp (genIType)--YYYYYYYY
clamp (genUType)--YYYYYYYY
clamp (genDType)------YYYY

See Also

+ min, + max +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/cos.xml b/upstream-man-pages/manglsl/xhtml/cos.xml new file mode 100644 index 0000000..b9760be --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/cos.xml @@ -0,0 +1,15 @@ + + + +cos - OpenGL Shading Language (GLSL)

Name

cos — return the cosine of the parameter

Declaration

genType cos(genType angle);

Parameters

angle

+ Specify the quantity, in radians, of which to return the cosine. +

Description

+ cos returns the trigonometric cosine of angle. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
cosYYYYYYYYYY

See Also

+ sin +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/cosh.xml b/upstream-man-pages/manglsl/xhtml/cosh.xml new file mode 100644 index 0000000..8ef9a1d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/cosh.xml @@ -0,0 +1,41 @@ + + + +cosh - OpenGL Shading Language (GLSL)

Name

cosh — return the hyperbolic cosine of the parameter

Declaration

genType cosh(genType x);

Parameters

x

+ Specify the value whose hyperbolic cosine to return. +

Description

+ cosh returns the hyperbolic cosine of + x. + The hyperbolic cosine of x + is computed as + + + + + + e + x + + + + + e + + − + x + + + + 2 + + + . +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
cosh--YYYYYYYY

See Also

+ sin, + cos, + sinh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/cross.xml b/upstream-man-pages/manglsl/xhtml/cross.xml new file mode 100644 index 0000000..3c8b18c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/cross.xml @@ -0,0 +1,85 @@ + + + +cross - OpenGL Shading Language (GLSL)

Name

cross — calculate the cross product of two vectors

Declaration

vec3 cross(vec3 x, vec3 y);

dvec3 cross(dvec3 x, dvec3 y);

Parameters

x

+ Specifies the first of two vectors +

y

+ Specifies the second of two vectors +

Description

+ cross returns the cross product of two vectors, x and y. i.e., +

+ + + + x + [ + 1 + ] + ⋅ + y + [ + 2 + ] + − + y + [ + 1 + ] + ⋅ + x + [ + 2 + ] + + + x + [ + 2 + ] + ⋅ + y + [ + 0 + ] + − + y + [ + 2 + ] + ⋅ + x + [ + 0 + ] + + + x + [ + 0 + ] + ⋅ + y + [ + 1 + ] + − + y + [ + 0 + ] + ⋅ + x + [ + 1 + ] + + + +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
cross (vec3)YYYYYYYYYY
cross (dvec3)------YYYY

See Also

+ dot +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/ctop.xsl b/upstream-man-pages/manglsl/xhtml/ctop.xsl new file mode 100644 index 0000000..f1c312e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/ctop.xsl @@ -0,0 +1,1319 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + e + + i + + + + + + + + + E + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (-1) + + + + + + + + + + + + + + + + + λ + + . + + + + + + + + + + + + + + + + + + + + +id + + + + +domain + + + + +codomain + + + + +image + + + + + + + + + + +{ + + + + +   if   + + + + + + + + + + + + + +/ + + + + + + + + + + + + + +! + + + + + + + + + / + + + + + + + + + + max + + + + + + + max + + + + + + + + + + + + + + + + + + + + + + + + + + + + ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + + mod + + + + + + + + + + + ( + + + + + × + + + + + + + + + + + ) + + + + + + + + + + + + + + + + + + + + +gcd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + xor + + + + + + + +¬ + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + . + + + + + + + + + + +| + +| + + + + + + + + + +¯ + + + + + + arg + + + + + + + + + + + + + + + + lcm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + = + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + + < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | + + + + + + + + + + + + + + + d + + + + + + + + + + + + + + + + d + + d + + + + d + d + + + + + + + + + + D + + +, + + + + + + + + + + + + + + + + + ++ + + ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + + + + + +div + + + + +grad + + + + +curl + + + + + +2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +| + +| + + + + + + + + + + × + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + limit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +e + + + + + + + + + + + + +log + + + +log + + + + + + + + + + + + + + + + + + , + + + + + + + + +σ + + + + + + +σ +( + +) + +2 + + + + + + +median + + + + + +mode + + + + + + + + + + + + + + + + + + + + +( + + + + + +) + + + + + + +( + + + +) + + + + + + + + + + + + + + + +det + + + + + + + + +| + + + +| + + + + + + + + + +T + + + + + + + + + + + + + , + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + +Z + + + + +R + + + + +Q + + + + +N + + + + +C + + + + +P + + + + + e + + + + + i + + + + + NaN + + + + + true + + + + + false + + + + + + + + + + + π + + + + + γ + + + + + + + + + + + + + + + ( + + + + + + + + + ) + + + + + + + + + ( + + + + + + + + ) + + + + + + + + + + + + | + + + + + + , + + + + + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/dFdx.xml b/upstream-man-pages/manglsl/xhtml/dFdx.xml new file mode 100644 index 0000000..1766a3f --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/dFdx.xml @@ -0,0 +1,20 @@ + + + +dFdx, dFdy - OpenGL Shading Language (GLSL)

Name

dFdx, dFdy — return the partial derivative of an argument with respect to x or y

Declaration

genType dFdx(genType p);

genType dFdy(genType p);

Parameters

p

+ Specifies the expression of which to take the partial derivative. +

Description

+ Available only in the fragment shader, dFdx and dFdy + return the partial derivative of expression p in x and y, respectively. Deviatives are calculated + using local differencing. Expressions that imply higher order derivatives such as dFdx(dFdx(n)) have undefined + results, as do mixed-order derivatives such as dFdx(dFdy(n)). + It is assumed that the expression p is continuous and therefore, expressions evaluated + via non-uniform control flow may be undefined. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
dFdxYYYYYYYYYY
dFdyYYYYYYYYYY

See Also

+ fwidth +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/dFdy.xml b/upstream-man-pages/manglsl/xhtml/dFdy.xml new file mode 100644 index 0000000..24bc9f9 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/dFdy.xml @@ -0,0 +1,12 @@ + + + + + + + +dFdy + + + + diff --git a/upstream-man-pages/manglsl/xhtml/degrees.xml b/upstream-man-pages/manglsl/xhtml/degrees.xml new file mode 100644 index 0000000..e8c114e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/degrees.xml @@ -0,0 +1,26 @@ + + + +degrees - OpenGL Shading Language (GLSL)

Name

degrees — convert a quantity in radians to degrees

Declaration

genType degrees(genType radians);

Parameters

radians

+ Specify the quantity, in radians, to be converted to degrees. +

Description

+ degrees converts a quantity, specified in radians into degrees. That is, + the return value is + + + + + 180⋅ + radians + + + + . +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
degreesYYYYYYYYYY

See Also

+ radians +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/determinant.xml b/upstream-man-pages/manglsl/xhtml/determinant.xml new file mode 100644 index 0000000..9928063 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/determinant.xml @@ -0,0 +1,16 @@ + + + +determinant - OpenGL Shading Language (GLSL)

Name

determinant — calculate the determinant of a matrix

Declaration

float determinant(mat2 m);

float determinant(mat3 m);

float determinant(mat4 m);

double determinant(dmat2 m);

double determinant(dmat3 m);

double determinant(dmat4 m);

Parameters

m

+ Specifies the matrix of which to take the determinant. +

Description

+ determinant returns the determinant of the matrix m. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
determinant (float)----YYYYYY
determinant (double)------YYYY

See Also

+ transpose, + inverse +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/distance.xml b/upstream-man-pages/manglsl/xhtml/distance.xml new file mode 100644 index 0000000..0c8f974 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/distance.xml @@ -0,0 +1,19 @@ + + + +distance - OpenGL Shading Language (GLSL)

Name

distance — calculate the distance between two points

Declaration

float distance(genType p0, genType p1);

double distance(genDType p0, genDType p1);

Parameters

p0

+ Specifies the first of two points +

p1

+ Specifies the second of two points +

Description

+ distance returns the distance between the two points p0 and p1. i.e., + length(p0, p1); +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
distance (genType)YYYYYYYYYY
distance (genDType)------YYYY

See Also

+ length, + normalize +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/dot.xml b/upstream-man-pages/manglsl/xhtml/dot.xml new file mode 100644 index 0000000..ca06ee5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/dot.xml @@ -0,0 +1,40 @@ + + + +dot - OpenGL Shading Language (GLSL)

Name

dot — calculate the dot product of two vectors

Declaration

float dot(genType x, genType y);

double dot(genDType x, genDType y);

Parameters

x

+ Specifies the first of two vectors +

y

+ Specifies the second of two vectors +

Description

+ dot returns the dot product of two vectors, x and y. i.e., + + x + [ + 0 + ] + ⋅ + y + [ + 0 + ] + + + x + [ + 1 + ] + ⋅ + y + [ + 1 + ] + + + ... + +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
dot (genType)YYYYYYYYYY
dot (genDType)------YYYY

See Also

+ cross +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/equal.xml b/upstream-man-pages/manglsl/xhtml/equal.xml new file mode 100644 index 0000000..697435f --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/equal.xml @@ -0,0 +1,25 @@ + + + +equal - OpenGL Shading Language (GLSL)

Name

equal — perform a component-wise equal-to comparison of two vectors

Declaration

bvec equal(vec x, vec y);

bvec equal(ivec x, ivec y);

bvec equal(uvec x, uvec y);

Parameters

x

+ Specifies the first vector to be used in the comparison operation. +

x

+ Specifies the second vector to be used in the comparison operation. +

Description

+ equal returns a boolean vector in which each element i is computed + as x[i] == y[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
equalYYYYYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/exp.xml b/upstream-man-pages/manglsl/xhtml/exp.xml new file mode 100644 index 0000000..e70c951 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/exp.xml @@ -0,0 +1,19 @@ + + + +exp - OpenGL Shading Language (GLSL)

Name

exp — return the natural exponentiation of the parameter

Declaration

genType exp(genType x);

Parameters

x

+ Specify the value to exponentiate. +

Description

+ pow returns the natural exponentiation of x. i.e., + ex. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
expYYYYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/exp2.xml b/upstream-man-pages/manglsl/xhtml/exp2.xml new file mode 100644 index 0000000..3790fb8 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/exp2.xml @@ -0,0 +1,18 @@ + + + +exp2 - OpenGL Shading Language (GLSL)

Name

exp2 — return 2 raised to the power of the parameter

Declaration

genType exp2(genType x);

Parameters

x

+ Specify the value of the power to which 2 will be raised. +

Description

+ exp2 returns 2 raised to the power of x. i.e., + 2x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
exp2YYYYYYYYYY

See Also

+ exp, + log, + log2 +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/faceforward.xml b/upstream-man-pages/manglsl/xhtml/faceforward.xml new file mode 100644 index 0000000..8bfaa1e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/faceforward.xml @@ -0,0 +1,22 @@ + + + +faceforward - OpenGL Shading Language (GLSL)

Name

faceforward — return a vector pointing in the same direction as another

Declaration

genType faceforward(genType  N,
 genType  I,
 genType  Nref);
genDType faceforward(genDType  N,
 genDType  I,
 genDType  Nref);

Parameters

N

+ Specifies the vector to orient. +

I

+ Specifies the incident vector. +

Nref

+ Specifies the reference vector. +

Description

+ faceforward orients a vector to point away from a surface as defined by its normal. + If dot(Nref, I) < 0 + faceforward returns N, otherwise it returns -N. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
faceforward (genType)YYYYYYYYYY
faceforward (genDType)------YYYY

See Also

+ reflect, + refract +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/findLSB.xml b/upstream-man-pages/manglsl/xhtml/findLSB.xml new file mode 100644 index 0000000..09ce699 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/findLSB.xml @@ -0,0 +1,16 @@ + + + +findLSB - OpenGL Shading Language (GLSL)

Name

findLSB — find the index of the least significant bit set to 1 in an integer

Declaration

genIType findLSB(genIType value);

genIType findLSB(genUType value);

Parameters

value

+ Specifies the value whose bits to scan. +

Description

+ findLSB returns the bit number of the least significant bit that is set to 1 in the binary + representation of value. If value is zero, -1 will be returned. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
findLSB------YYYY

See Also

+ findMSB +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/findMSB.xml b/upstream-man-pages/manglsl/xhtml/findMSB.xml new file mode 100644 index 0000000..aa7f653 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/findMSB.xml @@ -0,0 +1,18 @@ + + + +findMSB - OpenGL Shading Language (GLSL)

Name

findMSB — find the index of the most significant bit set to 1 in an integer

Declaration

genIType findMSB(genIType value);

genIType findMSB(genUType value);

Parameters

value

+ Specifies the value whose bits to scan. +

Description

+ findMSB returns the bit number of the most significant bit that is set to 1 in the binary + representation of value. For positive integers, the result will be the bit number + of the most significant bit that is set to 1. For negative integers, the result will be the bit number of the + most significant bit set to 0. For a value of zero or negative 1, -1 will be returned. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
findMSB------YYYY

See Also

+ findLSB +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/floatBitsToInt.xml b/upstream-man-pages/manglsl/xhtml/floatBitsToInt.xml new file mode 100644 index 0000000..7bb27df --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/floatBitsToInt.xml @@ -0,0 +1,18 @@ + + + +floatBitsToInt - OpenGL Shading Language (GLSL)

Name

floatBitsToInt — produce the encoding of a floating point value as an integer

Declaration

genIType floatBitsToInt(genType x);

genUType floatBitsToUint(genType x);

Parameters

x

+ Specifies the value whose floating point encoding to return. +

Description

+ floatBitsToInt and floatBitsToUint return the encoding + of their floating-point parameters as int or uint, respectively. The + floating-point bit-level representation is preserved. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
floatBitsToInt-----YYYYY
floatBitsToUInt-----YYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/floatBitsToUint.xml b/upstream-man-pages/manglsl/xhtml/floatBitsToUint.xml new file mode 100644 index 0000000..46d31ac --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/floatBitsToUint.xml @@ -0,0 +1,12 @@ + + + + + + + +floatBitsToUint + + + + diff --git a/upstream-man-pages/manglsl/xhtml/floor.xml b/upstream-man-pages/manglsl/xhtml/floor.xml new file mode 100644 index 0000000..1c44873 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/floor.xml @@ -0,0 +1,16 @@ + + + +floor - OpenGL Shading Language (GLSL)

Name

floor — find the nearest integer less than or equal to the parameter

Declaration

genType floor(genType x);

genDType floor(genDType x);

Parameters

x

+ Specify the value to evaluate. +

Description

+ floor returns a value equal to the nearest integer that is less than or equal to x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
floor (genType)YYYYYYYYYY
floor (genDType)------YYYY

See Also

+ trunc, + round +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/fma.xml b/upstream-man-pages/manglsl/xhtml/fma.xml new file mode 100644 index 0000000..53c0432 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/fma.xml @@ -0,0 +1,30 @@ + + + +fma - OpenGL Shading Language (GLSL)

Name

fma — perform a fused multiply-add operation

Declaration

genType fma(genType a, genType b, genType c);

genDType fma(genDType  a,
 genDType  b,
 genDType  c);

Parameters

a

+ Specifies the first multiplicand. +

b

+ Specifies the second multiplicand. +

c

+ Specifies the value to be added to the result. +

Description

+ fma performs, where possible, a fused multiply-add operation, + returning a * b + c. + In use cases where the return value is eventually consumed by a variable declared as + precise: +

  • fma() is considered a single operation, whereas the + expression a * b + c consumed by a variable declared as precise + is considered two operations.
  • The precision of fma() can differ from the precision + of the expression a * b + c.
  • fma() will be computed with the same precision as any + other fma() consumed by a precise variable, + giving invariant results for the same input values of a, + b and c.

+ Otherwise, in the absense of precise consumption, there are no + special constraints on the number of operations or difference in precision between + fma() and the expression a * b + c. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
fma (genType)YYYYYYYYYY
fma (genDType)------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/fract.xml b/upstream-man-pages/manglsl/xhtml/fract.xml new file mode 100644 index 0000000..00bdd78 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/fract.xml @@ -0,0 +1,17 @@ + + + +fract - OpenGL Shading Language (GLSL)

Name

fract — compute the fractional part of the argument

Declaration

genType fract(genType x);

genDType fract(genDType x);

Parameters

x

+ Specify the value to evaluate. +

Description

+ fract returns the fractional part of x. This + is calculated as x - floor(x). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
fract (genType)YYYYYYYYYY
fract (genDType)------YYYY

See Also

+ floor, + round +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/frexp.xml b/upstream-man-pages/manglsl/xhtml/frexp.xml new file mode 100644 index 0000000..5da2db4 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/frexp.xml @@ -0,0 +1,34 @@ + + + +frexp - OpenGL Shading Language (GLSL)

Name

frexp — split a floating point number

Declaration

genType frexp(genType x, out genIType exp);

genDType frexp(genDType x, out genIType exp);

Parameters

x

+ Specifies the value from which significand and exponent are to be extracted. +

out exp

+ Specifies the variable into which to place the exponent +

Description

+ frexp extracts x into a floating-point significand + in the range [0.5, 1.0) and in integral exponent of two, such that: +

+ + x + = + significand + ⋅ + + 2 + exponent + + +

+ The significand is returned by the function and the exponent is returned in the output + parameter exp. For a floating-point value of zero, the + significand and exponent are both zero. For a floating-point value that is an + infinity or a floating-point NaN, the results are undefined. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
frexp (genType)------YYYY
frexp (genDType)------YYYY

See Also

+ ldexp +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/fwidth.xml b/upstream-man-pages/manglsl/xhtml/fwidth.xml new file mode 100644 index 0000000..f6b3878 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/fwidth.xml @@ -0,0 +1,18 @@ + + + +fwidth - OpenGL Shading Language (GLSL)

Name

fwidth — return the sum of the absolute derivatives in x and y

Declaration

genType fwidth(genType p);

Parameters

p

+ Specifies the expression of which to take the partial derivative. +

Description

+ Available only in the fragment shader, fwidth returns the sum of + the absolute derivatives in x and y using local differencing for the input argument p. + It is equivalent to abs(dFdx(p)) + abs(dFdy(p)). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
fwidthYYYYYYYYYY

See Also

+ dFdx, + dFdy +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_ClipDistance.xml b/upstream-man-pages/manglsl/xhtml/gl_ClipDistance.xml new file mode 100644 index 0000000..3a097ea --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_ClipDistance.xml @@ -0,0 +1,65 @@ + + + +gl_ClipDistance - OpenGL Shading Language (GLSL)

Name

gl_ClipDistance — provides a forward-compatible mechanism for vertex clipping

Declaration

+ gl_ClipDistance is a member of the gl_PerVertex + named block: +

    out gl_PerVertex {
+        vec4 gl_Position;
+        float gl_PointSize;
+        float gl_ClipDistance[];
+    };

+ In the fragment language, it is intrinsically declared as: +

in float gl_ClipDistance[];

Description

+ The gl_ClipDistance variable provides a forward compatible + mechanism for controlling user clipping. The element gl_ClipDistance[i] + specifies a clip distance for each user clip plane i. A distance of 0.0 means that + the vertex is on the plane, a positive distance means that the vertex is insider the clip plane, and a negative + distance means that the point is outside the clip plane. The clip distances will be linearly interpolated across + the primitive and the portion of the primitive with interpolated distances less than 0.0 will be clipped. +

+ The gl_ClipDistance array is initially predeclared as unsized and must be + sized by the shader either by redeclaring it with an explicit size, or by indexing it + with only integral constant expressions. The array must be sized to include all + clip planes that are enabled via the OpenGL API; if the size does not include all enabled planes, + results are undefined. The size may be at most gl_MaxClipDistances. The number + of variing components consumed by gl_ClipDistance will match the size of the + array, no matter how many planes are enabled. The shader must also set all values in gl_ClipDistance + that have been enabled via the OpenGL API, or results are undefined. Values written into + gl_ClipDistance planes that are not enabled have no effect. +

+ In the vertex, tessellation evaluation and geoemtry languages, a single + global instance of the gl_PerVertex named block is available and + its gl_ClipDistance member is an output that receives the + clip distances for the current vertex. It may be written at any time during shader execution. + The value written to gl_ClipDistance will be used by primitive assembly, + clipping, culling and other fixed functionality operations, if present, that operate on + primitives after vertex processing has occurred. +

+ In the tessellation control language, the gl_PerVertex named block + is used to construct an array, gl_out[], whose gl_ClipDistance + members hold clip distances for each of the control points, which become available as inputs to the subsequent + tessellation evaluation shader. +

+ The value of gl_ClipDistance (or the gl_ClipDistance member of the gl_out[] + array, in the case of the tessellation control shader) + is undefined after the vertex, tessellation control, and tessellation evaluation + shading stages if the corresponding shader executable does + not write to gl_ClipDistance. It is also undefined after the geometry processing stage if the geometry shader executable calls + EmitVertex without having + written gl_ClipDistance since the last call to EmitVertex + (or hasn't written it at all). +

+ In the tessellation control, tessellation evaluation and geoemetry languages, + the gl_PerVertex named block is used to construct an array, gl_in[] + of per-vertex or per-control point inputs whose content represents the corresponding + outputs written by the previous stage. Only elements of the gl_ClipDistance + array that correspond to enabled clip planes have defined values. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_ClipDistance--YYYYYYYY

Versions 1.30 to 1.40 - vertex shader only.

Versions 1.50 to 3.30 - vertex and geometry shaders only.

See Also

+ gl_PointSize +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_FragCoord.xml b/upstream-man-pages/manglsl/xhtml/gl_FragCoord.xml new file mode 100644 index 0000000..652c046 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_FragCoord.xml @@ -0,0 +1,36 @@ + + + +gl_FragCoord - OpenGL Shading Language (GLSL)

Name

gl_FragCoord — contains the window-relative coordinates of the current fragment

Declaration

in vec4 gl_FragCoord;

Description

+ Available only in the fragment language, gl_FragCoord is an input variable that contains the + window relative coordinate (x, y, z, 1/w) values for the fragment. If multi-sampling, + this value can be for any location within the pixel, or one of the fragment samples. + This value is the result of fixed functionality that interpolates primitives after vertex + processing to generate fragments. The z component is the depth value that would be used for the + fragment's depth if no shader contained any writes to gl_FragDepth. +

+ gl_FragCoord may be redeclared with the additional layout qualifier identifiers + origin_upper_left or pixel_center_integer. By + default, gl_FragCoord assumes a lower-left origin for window coordinates + and assumes pixel centers are located at half-pixel centers. For example, the (x, y) location + (0.5, 0.5) is returned for the lower-left-most pixel in a window. The origin of + gl_FragCoord may be changed by redeclaring gl_FragCoord + with the origin_upper_left identifier. The values returned can also be + shifted by half a pixel in both x and y by pixel_center_integer so it + appears the pixels are centered at whole number pixel offsets. This moves the (x, y) value returned by + gl_FragCoord of (0.5, 0.5) by default to (0.0, 0.0) with + pixel_center_integer. +

+ If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared + in all fragment shaders in that program that have static use of gl_FragCoord. Redeclaring + gl_FragCoord with any accepted qualifier affects only gl_FragCoord.x + and gl_FragCoord.y. It has no affect on rasterization, transformation or any other part + of the OpenGL pipline or language features. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_ClipDistanceYYYYYYYYYY

See Also

+ gl_FragCoord +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_FragDepth.xml b/upstream-man-pages/manglsl/xhtml/gl_FragDepth.xml new file mode 100644 index 0000000..16d4252 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_FragDepth.xml @@ -0,0 +1,21 @@ + + + +gl_FragDepth - OpenGL Shading Language (GLSL)

Name

gl_FragDepth — establishes a depth value for the current fragment

Declaration

out float gl_FragDepth;

Description

+ Available only in the fragment language, gl_FragDepth is an output variable + that is used to establish the depth value for the current fragment. If depth buffering is enabled + and no shader writes to gl_FragDepth, then the fixed function value for + depth will be used (this value is contained in the z component of gl_FragCoord) + otherwise, the value written to gl_FragDepth is used. + If a shader statically assigns to gl_FragDepth, then the value of the fragment's depth + may be undefined for executions of the shader that take that path. That is, if the set of linked fragment + shaders statically contain a write to gl_FragDepth, then it is responsible for always + writing it. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_FragDepthYYYYYYYYYY

See Also

+ gl_FragCoord +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_FrontFacing.xml b/upstream-man-pages/manglsl/xhtml/gl_FrontFacing.xml new file mode 100644 index 0000000..35579a9 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_FrontFacing.xml @@ -0,0 +1,72 @@ + + + +gl_FrontFacing - OpenGL Shading Language (GLSL)

Name

gl_FrontFacing — indicates whether a primitive is front or back facing

Declaration

in bool gl_FrontFacing;

Description

+ Available only in the fragment language, gl_FrontFacing is an input variable + whose value is true if the fragment belongs to a front-facing primitive and + false otherwise. The determination of whether a triangle primitive is front-facing is made by + examining the sign of the area of the triangle, including a possible reversal of this sign + as controlled by glFrontFace. One way to compute this area is: +

+ + a=12 + ∑ + j=0 + + + n-1 + + xwi + ywi+1 + - + xwi+1 + ywi + +

+ where xwi and + ywi are + the x and y window coordinates of the ith vertex of the n-vertex polygon. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_FrontFacing + + Y + + Y + + Y + + Y + + Y + + Y + + Y + + Y +

See Also

+ gl_FragCoord +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_GlobalInvocationID.xml b/upstream-man-pages/manglsl/xhtml/gl_GlobalInvocationID.xml new file mode 100644 index 0000000..e66a24e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_GlobalInvocationID.xml @@ -0,0 +1,20 @@ + + + +gl_GlobalInvocationID - OpenGL Shading Language (GLSL)

Name

gl_GlobalInvocationID — contains the global index of work item currently being operated on by a compute shader

Declaration

in uvec3 gl_GlobalInvocationID

Description

+ In the compute language, gl_GlobalInvocationID + is a derived input variable containing the n-dimensional index of the + work invocation within the global work group that the current shader is + executing on. The value of gl_GlobalInvocationID is equal to + gl_WorkGroupID * gl_WorkGroupSize + gl_LocalInvocationID. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_GlobalInvocationID---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_InstanceID.xml b/upstream-man-pages/manglsl/xhtml/gl_InstanceID.xml new file mode 100644 index 0000000..a6208bd --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_InstanceID.xml @@ -0,0 +1,53 @@ + + + +gl_InstanceID - OpenGL Shading Language (GLSL)

Name

gl_InstanceID — contains the index of the current primitive in an instanced draw command

Declaration

in int gl_InstanceID;

Description

+ gl_InstanceID is a vertex language input variable that + holds the integer index of the current primitive in an instanced draw + command such as glDrawArraysInstanced. If the current + primitive does not originate from an instanced draw command, the value + of gl_InstanceID is zero. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_InstanceID + + - + + - + + - + + Y + + Y + + Y + + Y + + Y +

See Also

+ gl_VertexID +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_InvocationID.xml b/upstream-man-pages/manglsl/xhtml/gl_InvocationID.xml new file mode 100644 index 0000000..3901ba8 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_InvocationID.xml @@ -0,0 +1,57 @@ + + + +gl_InvocationID - OpenGL Shading Language (GLSL)

Name

gl_InvocationID — contains the invocation index of the current shader

Declaration

in int gl_InvocationID;

Description

+ In the tessellation control language, gl_InvocationID + contains the index of the output patch vertex assigned to the shader invocation. + It is assigned an integer value in the range [0, N-1] where N is the number of output + patch vertices. +

+ In the geometry language, gl_InvocationID identifies + the invocation number assigned to the geometry shader invocation. It is assigned + an integer value in the range [0, N-1] where N is the number of geometry shader + invocations per primitive. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_InvocationID + + - + + - + + - + + - + + Y1 + + Y1 + + Y + + Y +

[1] Versions 1.50 to 3.30 - geometry shaders only.

See Also

+ gl_InstanceID +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_Layer.xml b/upstream-man-pages/manglsl/xhtml/gl_Layer.xml new file mode 100644 index 0000000..f062d1d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_Layer.xml @@ -0,0 +1,70 @@ + + + +gl_Layer - OpenGL Shading Language (GLSL)

Name

gl_Layer — contains the selected layer of a multi-layer framebuffer attachment

Declaration

out int gl_Layer; // Geometry stage
in int gl_Layer; // Fragment stage

Description

+ In the geometry language, gl_Layer is used to select a specific + layer (or face and layer of cube map) in a multi-layer framebuffer attachment. The actual + layer used will come from one of the vertices in the primitive being shaded. Which vertex + the layer comes from is undefined and as such it is recommended to write the same value + to gl_Layer for all vertices in the primitive. If a shader statically + assigns a value to gl_Layer, layered rendering mode is enabled. + If a shader statically assigns a value to gl_Layer, and there is an execution path through + the shader that does not set gl_Layer, then the value of gl_Layer + is undefined for invocations of the shader that take that path. +

+ When used with an array of cube map textures, the gl_Layer output variable + takes on a special value. Instead of referring to only the layer, it is used to select a cube map + face and a layer. Setting gl_Layer to the value + layer*6+face + will render to face + of the cube defined in layer. + The face values are as follows: +

+ Face Value + + Resulting Target +
+ 0 + + GL_TEXTURE_CUBEMAP_POSITIVE_X +
+ 1 + + GL_TEXTURE_CUBEMAP_NEGATIVE_X +
+ 2 + + GL_TEXTURE_CUBEMAP_POSITIVE_Y +
+ 3 + + GL_TEXTURE_CUBEMAP_NEGATIVE_Y +
+ 4 + + GL_TEXTURE_CUBEMAP_POSITIVE_Z +
+ 5 + + GL_TEXTURE_CUBEMAP_NEGATIVE_Z +

+

+ For example, to render to the positive y cube map face located in the 5th layer of the + cube map array, gl_Layer should be set to + 5*6+2. +

+ The input variable gl_Layer in the fragment language will have the same value that was written to the + output variable gl_Layer in the geometry language. If the geometry stage does not dynamically assign a + value to gl_Layer, the value of gl_Layer in the fragment stage will be undefined. If the geometry stage + makes no static assignment to gl_Layer, the input gl_Layer in the fragment stage will be zero. Otherwise, + the fragment stage will read the same value written by the geometry stage, even if that value is out of + range. If a fragment shader contains a static access to gl_Layer, it will count against the implementation + defined limit for the maximum number of inputs to the fragment stage. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_Layer (geometry stage)----YYYYYY
gl_Layer (fragment stage)---------Y

See Also

+ gl_ViewportIndex +

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_LocalInvocationID.xml b/upstream-man-pages/manglsl/xhtml/gl_LocalInvocationID.xml new file mode 100644 index 0000000..aae5a4b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_LocalInvocationID.xml @@ -0,0 +1,21 @@ + + + +gl_LocalInvocationID - OpenGL Shading Language (GLSL)

Name

gl_LocalInvocationID — contains the index of work item currently being operated on by a compute shader

Declaration

in uvec3 gl_LocalInvocationID

Description

+ In the compute language, gl_LocalInvocationID + is an input variable containing the n-dimensional index of the local + work invocation within the work group that the current shader is + executing in. The possible values for this variable range across + the local work group size, i.e., (0,0,0) to (gl_WorkGroupSize.x - 1, + gl_WorkGroupSize.y - 1, gl_WorkGroupSize.z - 1). +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_LocalInvocationID---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_LocalInvocationIndex.xml b/upstream-man-pages/manglsl/xhtml/gl_LocalInvocationIndex.xml new file mode 100644 index 0000000..535175b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_LocalInvocationIndex.xml @@ -0,0 +1,22 @@ + + + +gl_LocalInvocationIndex - OpenGL Shading Language (GLSL)

Name

gl_LocalInvocationIndex — contains the local linear index of work item currently being operated on by a compute shader

Declaration

in uint gl_LocalInvocationIndex

Description

+ In the compute language, gl_LocalInvocationIndex + is a derived input variable containing the 1-dimensional linearized index of the + work invocation within the work group that the current shader is + executing on. The value of gl_LocalInvocationIndex is equal to + gl_LocalInvocationID.z * gl_WorkGroupSize.x * gl_WorkGroupSize.y + + gl_LocalInvocationID.y * gl_WorkGroupSize.x + + gl_LocalInvocationID.x. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_LocalInvocationIndex---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_NumSamples.xml b/upstream-man-pages/manglsl/xhtml/gl_NumSamples.xml new file mode 100644 index 0000000..346b658 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_NumSamples.xml @@ -0,0 +1,53 @@ + + + +gl_NumSamples - OpenGL Shading Language (GLSL)

Name

gl_NumSamples — contains the total number of samples in the framebuffer

Declaration

in int gl_NumSamples;

Description

+ gl_NumSamples is a fragment language input variable that contains + the number of samples in the framebuffer, or 1 if rendering to a non-multisample framebuffer. + gl_NumSamples is the sample count of the framebuffer regardless + of whether multisample rasterization is enabled or not. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_NumSamples + + - + + - + + - + + - + + - + + - + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_NumWorkGroups.xml b/upstream-man-pages/manglsl/xhtml/gl_NumWorkGroups.xml new file mode 100644 index 0000000..790131b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_NumWorkGroups.xml @@ -0,0 +1,19 @@ + + + +gl_NumWorkGroups - OpenGL Shading Language (GLSL)

Name

gl_NumWorkGroups — contains the number of workgroups that have been dispatched to a compute shader

Declaration

in uvec3 gl_NumWorkGroups

Description

+ In the compute language, gl_NumWorkGroups + contains the total number of work groups that will execute the compute + shader. The components of gl_NumWorkGroups are equal to the num_groups_x, + num_groups_y, and num_groups_z parameters passed to the + glDispatchCompute command. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_NumWorkGroups---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_PatchVerticesIn.xml b/upstream-man-pages/manglsl/xhtml/gl_PatchVerticesIn.xml new file mode 100644 index 0000000..f1d3732 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_PatchVerticesIn.xml @@ -0,0 +1,18 @@ + + + +gl_PatchVerticesIn - OpenGL Shading Language (GLSL)

Name

gl_PatchVerticesIn — contains the number of vertices in the current patch

Declaration

in int gl_PatchVerticesIn;

Description

+ Available only in the tessellation control and evaluation languages, gl_PatchVerticesIn + contains the number of vertices in the input being processed by the shader. A single tessellation control or + evaluation shader can read patches of differing sizes, and so th value of gl_PatchVertexIn + may differ between patches. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_PatchVerticesIn------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_PointCoord.xml b/upstream-man-pages/manglsl/xhtml/gl_PointCoord.xml new file mode 100644 index 0000000..b29aba0 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_PointCoord.xml @@ -0,0 +1,61 @@ + + + +gl_PointCoord - OpenGL Shading Language (GLSL)

Name

gl_PointCoord — contains the coordinate of a fragment within a point

Declaration

in vec2 gl_PointCoord;

Description

+ gl_PointCoord is a fragment language input variable that contains + the two-dimensional coordinates indicating where within a point primitive the current + fragment is located. If the current primitive is not a point, then values read + from gl_PointCoord are undefined. +

+ gl_PointCoord.s ranges from 0.0 to 1.0 across the point horizontally + from left to right. If GL_POINT_SPRITE_COORD_ORIGIN is + GL_LOWER_LEFT, gl_PointCoord.t varies + from 0.0 to 1.0 vertically from bottom to top. Otherwise, if GL_POINT_SPRITE_COORD_ORIGIN + is GL_UPPER_LEFT then gl_PointCoord.t varies + from 0.0 to 1.0 vertically from top to bottom. The default value of GL_POINT_SPRITE_COORD_ORIGIN + is GL_UPPER_LEFT. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_PointCoord + + Y + + Y + + Y + + Y + + Y + + Y + + Y + + Y +

See Also

+ gl_FragCoord, + gl_FragDepth +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_PointSize.xml b/upstream-man-pages/manglsl/xhtml/gl_PointSize.xml new file mode 100644 index 0000000..69dd96c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_PointSize.xml @@ -0,0 +1,44 @@ + + + +gl_PointSize - OpenGL Shading Language (GLSL)

Name

gl_PointSize — contains size of rasterized points, in pixels

Declaration

+ gl_PointSize is a member of the gl_PerVertex + named block: +

    out gl_PerVertex {
+        vec4 gl_Position;
+        float gl_PointSize;
+        float gl_ClipDistance[];
+    };

Description

+ In the vertex, tessellation evaluation and geoemtry languages, a single + global instance of the gl_PerVertex named block is available and + its gl_PointSize member is an output that receives the + intended size of the point to be rasterized, in pixels. It may be written at any time + during shader execution. If GL_PROGRAM_POINT_SIZE is enabled, + gl_PointSize is used to determine the size of rasterized + points, otherwise it is ignored by the rasterization stage. +

+ In the tessellation control language, the gl_PerVertex named block + is used to construct an array, gl_out[], whose members become + available as inputs to the subsequent tessellation evaluation shader. +

+ The value of gl_PointSize (or the gl_PointSize member of the gl_out[] + array, in the case of the tessellation control shader) + is undefined after the vertex, tessellation control, and tessellation evaluation + shading stages if the corresponding shader executable does + not write to gl_PointSize. It is also undefined after the geometry processing stage if the geometry shader executable calls + EmitVertex without having + written gl_PointSize since the last call to EmitVertex + (or hasn't written it at all). +

+ In the tessellation control, tessellation evaluation and geoemetry languages, + the gl_PerVertex named block is used to construct an array, gl_in[] + of per-vertex or per-control point inputs whose content represents the corresponding + outputs written by the previous stage. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_PointSize (vertex shader)YYYYYYYYYY
gl_PointSize (geometry shader)----YYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_Position.xml b/upstream-man-pages/manglsl/xhtml/gl_Position.xml new file mode 100644 index 0000000..67739fc --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_Position.xml @@ -0,0 +1,81 @@ + + + +gl_Position - OpenGL Shading Language (GLSL)

Name

gl_Position — contains the position of the current vertex

Declaration

+ gl_Position is a member of the gl_PerVertex + named block: +

    out gl_PerVertex {
+        vec4 gl_Position;
+        float gl_PointSize;
+        float gl_ClipDistance[];
+    };

Description

+ In the vertex, tessellation evaluation and geoemtry languages, a single + global instance of the gl_PerVertex named block is available and + its gl_Position member is an output that receives the + homogeneous vertex position. It may be written at any time during shader execution. + The value written to gl_Position will be used by primitive assembly, + clipping, culling and other fixed functionality operations, if present, that operate on + primitives after vertex processing has occurred. +

+ In the tessellation control language, the gl_PerVertex named block + is used to construct an array, gl_out[], whose gl_Position + members hold the homogeneous control point position, which become available as inputs to the subsequent + tessellation evaluation shader. +

+ The value of gl_Position (or the gl_Position member of the gl_out[] + array, in the case of the tessellation control shader) + is undefined after the vertex, tessellation control, and tessellation evaluation + shading stages if the corresponding shader executable does + not write to gl_Position. It is also undefined after the geometry processing stage if the geometry shader executable calls + EmitVertex without having + written gl_Position since the last call to EmitVertex + (or hasn't written it at all). +

+ In the tessellation control, tessellation evaluation and geoemetry languages, + the gl_PerVertex named block is used to construct an array, gl_in[] + of per-vertex or per-control point inputs whose content represents the corresponding + outputs written by the previous stage. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_Position + + Y1 + + Y1 + + Y1 + + Y1 + + Y2 + + Y2 + + Y + + Y +

Versions 1.10 to 1.40 - vertex shader only.

Versions 1.50 to 3.30 - vertex and geometry shaders only.

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_PrimitiveID.xml b/upstream-man-pages/manglsl/xhtml/gl_PrimitiveID.xml new file mode 100644 index 0000000..2ad2d89 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_PrimitiveID.xml @@ -0,0 +1,67 @@ + + + +gl_PrimitiveID - OpenGL Shading Language (GLSL)

Name

gl_PrimitiveID — contains the index of the current primitive

Declaration

in int gl_PrimitiveID; (Tessellation control, tessellation evaluation and fragment languages)
out int gl_PrimitiveID; (Geometry language) +

Description

+ gl_PrimitiveID is a tessellation control, tessellation evaluation + and fragment language input variable. For the tessellation control and tessellation + evaluation languages, it holds the number of primitives processed by + the shader since the current set of rendering primitives was started. The first + primitive processed by the drawing command is numbered zero and the primitive ID counter is incremented after every individual point, line + or triangle primitive is processed. For triangles drawn in point or line mode, the + primitive ID counter is incremented only once, even through multiple points or lines + may actually be drawn. Restarting a primitive topology using the primitive restart + index has no effect on the primitive ID counter. +

+ In the geometry language, gl_PrimitiveID is an output + variable that is passed to the corresponding gl_PrimitiveID input + variable in the fragment shader. If no geomery shader is present then gl_PrimitiveID + in the fragment language behaves identically as it would in the tessellation control and evaluation + languages. If a geometry shader is present but does not write to gl_PrimitiveID, + the value of gl_PrimitiveID in the fragment shader is undefined. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_PrimitiveID + + Y + + Y + + Y + + Y + + Y + + Y + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_PrimitiveIDIn.xml b/upstream-man-pages/manglsl/xhtml/gl_PrimitiveIDIn.xml new file mode 100644 index 0000000..87becc9 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_PrimitiveIDIn.xml @@ -0,0 +1,56 @@ + + + +gl_PrimitiveIDIn - OpenGL Shading Language (GLSL)

Name

gl_PrimitiveIDIn — contains the index of the current primitive

Declaration

in int gl_PrimitiveIDIn;

Description

+ gl_PrimitiveIDIn is a geometry language input variable that holds + the number of primitives processed by the shader since the current set of rendering + primitives was started. The first primitive processed by the drawing command is numbered + zero and the primitive ID counter is incremented after every individual point, line + or triangle primitive is processed. For triangles drawn in point or line mode, the + primitive ID counter is incremented only once, even through multiple points or lines + may actually be drawn. Restarting a primitive topology using the primitive restart + index has no effect on the primitive ID counter. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_PrimitiveIDIn + + - + + - + + - + + - + + Y + + Y + + Y + + Y +

See Also

+ gl_InstanceID +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_SampleID.xml b/upstream-man-pages/manglsl/xhtml/gl_SampleID.xml new file mode 100644 index 0000000..e0d4ff5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_SampleID.xml @@ -0,0 +1,25 @@ + + + +gl_SampleID - OpenGL Shading Language (GLSL)

Name

gl_SampleID — contains the index of the sample currently being processed

Declaration

in int gl_SampleID;

Description

+ gl_SampleID is a fragment language input variable that contains + the index of the sample currently being processed. This variable is in the range + 0 to gl_NumSamples - 1, where + gl_NumSamples + is the total number of samples in each fragment for the current framebuffer (and thus 1 if + rendering to a non-multisample buffer). Any static use of this variable in a fragment + shader causes the entire shader to be evaluated per-sample rather than per-fragment. +

+ When rendering to a non-multisample buffer, or if multisample rasterization is disabled, + gl_SampleID will always be zero. gl_NumSamples + is the sample count of the framebuffer regardless of whether multisample rasterization is + enabled or not. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_SampleID------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_SampleMask.xml b/upstream-man-pages/manglsl/xhtml/gl_SampleMask.xml new file mode 100644 index 0000000..d0fe461 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_SampleMask.xml @@ -0,0 +1,71 @@ + + + +gl_SampleMask - OpenGL Shading Language (GLSL)

Name

gl_SampleMask — specifies the sample coverage mask for the current fragment

Declaration

out int gl_SampleMask[];

Description

+ gl_SampleMask is a fragment language output array that may be + used to set the sample mask for the fragment being processed. Coverage for the current + fragment will become the logical AND of the coverage mask and the output gl_SampleMask. + That is, setting a bit in gl_SampleMask to zero will cause the + corresponding sample to be considered uncovered for the purposes of multisample fragment operations. However, + setting sample mask bits back to one will never enable samples not covered by the original primitive. + Bit B of mask gl_SampleMask[M] corresponds to sample + 32 * M + B. This array must be sized in the fragment shader + either implicitly or explicitly to be the same size as the implementation-dependent maximum + sample-mask (as an array of 32-bit elements), determined by the maximum number of samples. + If the fragment shader statically assigns a value to gl_SampleMask, the + sample mask will be undefined for any array elements of any fragment shader invocation that + fails to assign a value. If a shader does not statically assign a value to gl_SampleMask, + the sample mask has no effect on the processing of a fragment. + If the fragment shader is being evaluated at any frequency other than per-fragment, bits within + the sample mask not corresponding to the current fragment shader invocation are ignored. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 + + Version 4.20 +
+ gl_SampleMask + + - + + - + + - + + - + + - + + - + + Y + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_SampleMaskIn.xml b/upstream-man-pages/manglsl/xhtml/gl_SampleMaskIn.xml new file mode 100644 index 0000000..9d89d6d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_SampleMaskIn.xml @@ -0,0 +1,26 @@ + + + +gl_SampleMaskIn - OpenGL Shading Language (GLSL)

Name

gl_SampleMaskIn — contains the computed sample coverage mask for the current fragment

Declaration

in int gl_SampleMaskIn[];

Description

+ gl_SampleMaskIn is a fragment language that indicates the + set of samples covered by the primitive generating the fragment during + multisample rasterization. It has a sample bit set if and only if the sample + is considered covered for this fragment shader invocation. Bit + B of mask gl_SampleMask[M] + corresponds to sample 32 * M + B. + The array has ceil(s / 32) elements + where s is the maximum number of color samples supported + by the implementation. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
+ gl_SampleMaskIn + ------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_SamplePosition.xml b/upstream-man-pages/manglsl/xhtml/gl_SamplePosition.xml new file mode 100644 index 0000000..4d95a46 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_SamplePosition.xml @@ -0,0 +1,58 @@ + + + +gl_SamplePosition - OpenGL Shading Language (GLSL)

Name

gl_SamplePosition — contains the location of the current sample within the current fragment

Declaration

in vec2 gl_SamplePosition;

Description

+ gl_SamplePosition is a fragment language input variable that contains + the location within a fragment of the sample currently being processed. The x and y components + of gl_SamplePosition contain the sub-pixel coordinate of the current + sample and will have values in the range 0.0 to 1.0. The sub-pixel coordinates of the center + of the pixel are always (0.5, 0.5). Any static use of gl_SamplePosition + causes the entire fragment shader to be evaluated per-sample rather than per-fragment. When rendering + to a non-multisample buffer, or if multisample rasterization is disabled, gl_SamplePosition + will be (0.5, 0.5). +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_SamplePosition + + - + + - + + - + + - + + - + + - + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_TessCoord.xml b/upstream-man-pages/manglsl/xhtml/gl_TessCoord.xml new file mode 100644 index 0000000..1cacac8 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_TessCoord.xml @@ -0,0 +1,53 @@ + + + +gl_TessCoord - OpenGL Shading Language (GLSL)

Name

gl_TessCoord — contains the coordinate of the vertex within the current patch

Declaration

in vec3 gl_TessCoord;

Description

+ Available only in the tessellation cevaluation language, gl_TessCoord + specifies the three component (u, v, w) vector identifying the position of the vertex being + processed by the shader relative to the primitive being tessellated. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_TessCoord + + - + + - + + - + + - + + - + + - + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_TessLevelInner.xml b/upstream-man-pages/manglsl/xhtml/gl_TessLevelInner.xml new file mode 100644 index 0000000..42fefdd --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_TessLevelInner.xml @@ -0,0 +1,58 @@ + + + +gl_TessLevelInner - OpenGL Shading Language (GLSL)

Name

gl_TessLevelInner — contains the inner tessellation levels for the current patch

Declaration

patch out float gl_TessLevelInner[2]; (tessellation control language)
patch in float gl_TessLevelInner[2]; (tessellation evaluation languge) +

Description

+ Available only in the tessellation control and evaluation languages, gl_TessLevelInner + is used to assign values to the corresponding inner tesellation levels of the current patch. The values written + into gl_TessLevelInner by the tessellation control shader are used by the tessellation + primitive generator to control primitive tessellation and may be read by the subsequent tessellation evaluation shader. +

+ As inputs to the tessellation evaluation shader, gl_TessLevelInner contains the values + written by the tessellation control shader, if present. If no tessellation control shader is present, it + contains the default tessellation level. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_TessLevelInner + + - + + - + + - + + - + + - + + - + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_TessLevelOuter.xml b/upstream-man-pages/manglsl/xhtml/gl_TessLevelOuter.xml new file mode 100644 index 0000000..c5e2e00 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_TessLevelOuter.xml @@ -0,0 +1,58 @@ + + + +gl_TessLevelOuter - OpenGL Shading Language (GLSL)

Name

gl_TessLevelOuter — contains the outer tessellation levels for the current patch

Declaration

patch out float gl_TessLevelOuter[4]; (tessellation control language)
patch in float gl_TessLevelInner[4]; (tessellation evaluation languge) +

Description

+ Available only in the tessellation control and evaluation languages, gl_TessLevelOuter + is used to assign values to the corresponding outer tesellation levels of the current patch. The values written + into gl_TessLevelOuter by the tessellation control shader are used by the tessellation + primitive generator to control primitive tessellation and may be read by the subsequent tessellation evaluation shader. +

+ As inputs to the tessellation evaluation shader, gl_TessLevelOuter contains the values + written by the tessellation control shader, if present. If no tessellation control shader is present, it + contains the default tessellation level. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_TessLevelOuter + + - + + - + + - + + - + + - + + - + + Y + + Y +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_VertexID.xml b/upstream-man-pages/manglsl/xhtml/gl_VertexID.xml new file mode 100644 index 0000000..60b7b0a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_VertexID.xml @@ -0,0 +1,53 @@ + + + +gl_VertexID - OpenGL Shading Language (GLSL)

Name

gl_VertexID — contains the index of the current vertex

Declaration

in int gl_VertexID;

Description

+ gl_VertexID is a vertex language input variable that holds an + integer index for the vertex. The index is impliclty generated by glDrawArrays + and other commands that do not reference the content of the GL_ELEMENT_ARRAY_BUFFER, or + explicitly generated from the content of the GL_ELEMENT_ARRAY_BUFFER + by commands such as glDrawElements. +

Version Support

+ Variable + + Version 1.10 + + Version 1.20 + + Version 1.30 + + Version 1.40 + + Version 1.50 + + Version 3.30 + + Version 4.00 + + Version 4.10 +
+ gl_VertexID + + Y + + Y + + Y + + Y + + Y + + Y + + Y + + Y +

See Also

+ gl_InstanceID +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_ViewportIndex.xml b/upstream-man-pages/manglsl/xhtml/gl_ViewportIndex.xml new file mode 100644 index 0000000..c86dcff --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_ViewportIndex.xml @@ -0,0 +1,32 @@ + + + +gl_ViewportIndex - OpenGL Shading Language (GLSL)

Name

gl_ViewportIndex — contains the index of the viewport to be used in viewport transformation and scissoring

Declaration

out int gl_ViewportIndex; // Geometry stage
in int gl_ViewportIndex; // Fragment stage

Description

+ In the geometry language, gl_ViewportIndex is used to specify the index + of the viewport to which the next primitive emitted from the shader should be drawn. Primitives generated + by the geometry shader will undergo viewport transformation and scissor testing using the viewport + transformation and scissor rectangle selected by the value of gl_ViewportIndex. + The viewport index used will come from one of the vertices in the primitive being shaded. However, which + vertex the viewport index comes from is implementation-defined, and so it is recommended to use the same + viewport index for all vertices of a primitive. If a geometry shader does not assign a value to + gl_ViewportIndex, viewport transform and scissor rectangle zero will be used. + If a geometry shader statically assigns a value to gl_ViewportIndex and there + is a path through the shader that does not assign a value to gl_ViewportIndex, + the value of gl_ViewportIndex is undefined for executions of the shader that take + that path. +

+ In the fragment language, gl_ViewportIndex will have the same value that was written to the + output variable gl_ViewportIndex in the geometry stage. If the geometry stage does not dynamically + assign to gl_ViewportIndex, the value of gl_ViewportIndex in the fragment shader will be undefined. If + the geometry stage makes no static assignment to gl_ViewportIndex, the fragment stage will read zero. + Otherwise, the fragment stage will read the same value written by the geometry stage, even if that value is + out of range. If a fragment shader contains a static access to gl_ViewportIndex, it will count against the + implementation defined limit for the maximum number of inputs to the fragment stage. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_ViewportIndex (geometry stage)----YYYYYY
gl_ViewportIndex (fragment stage)---------Y

See Also

+ gl_Layer +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_WorkGroupID.xml b/upstream-man-pages/manglsl/xhtml/gl_WorkGroupID.xml new file mode 100644 index 0000000..689687a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_WorkGroupID.xml @@ -0,0 +1,19 @@ + + + +gl_WorkGroupID - OpenGL Shading Language (GLSL)

Name

gl_WorkGroupID — contains the index of the workgroup currently being operated on by a compute shader

Declaration

in uvec3 gl_WorkGroupID

Description

+ In the compute language, gl_WorkGroupID + contains the 3-dimensional index of the global work group + that the current compute shader invocation is executing within. The possible values range + across the parameters passed into glDispatchCompute, i.e., from (0, 0, 0) to + (gl_NumWorkGroups.x - 1, gl_NumWorkGroups.y - 1, gl_NumWorkGroups.z - 1). +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_WorkGroupID---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/gl_WorkGroupSize.xml b/upstream-man-pages/manglsl/xhtml/gl_WorkGroupSize.xml new file mode 100644 index 0000000..d093137 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/gl_WorkGroupSize.xml @@ -0,0 +1,21 @@ + + + +gl_WorkGroupSize - OpenGL Shading Language (GLSL)

Name

gl_WorkGroupSize — contains the size of the workgroup operated on by a compute shader

Declaration

const uvec3 gl_WorkGroupSize

Description

+ In the compute language, gl_WorkGroupSize + contains the size of a workgroup declared by a compute + shader. The size of the work group in the X, Y, and Z dimensions is stored in the x, y, and z components of gl_WorkGroupSize. + The values stored in gl_WorkGroupSize match those specified in the + required local_size_x, local_size_y, and local_size_z layout + qualifiers for the current shader. This value is constant so that it can be used to size arrays of memory that can be shared within + the local work group. +

Version Support

VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
gl_WorkGroupSize---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/greaterThan.xml b/upstream-man-pages/manglsl/xhtml/greaterThan.xml new file mode 100644 index 0000000..281062f --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/greaterThan.xml @@ -0,0 +1,25 @@ + + + +greaterThan - OpenGL Shading Language (GLSL)

Name

greaterThan — perform a component-wise greater-than comparison of two vectors

Declaration

bvec greaterThan(vec x, vec y);

bvec greaterThan(ivec x, ivec y);

bvec greaterThan(uvec x, uvec y);

Parameters

x

+ Specifies the first vector to be used in the comparison operation. +

y

+ Specifies the second vector to be used in the comparison operation. +

Description

+ greaterThan returns a boolean vector in which each element i is computed + as x[i] > y[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
greaterThan (vec)YYYYYYYYYY
greaterThan (ivec)YYYYYYYYYY
greaterThan (uvec)--YYYYYYYY

See Also

+ lessThan, + lessThanEqual, + greaterThanEqual, + equal, + notEqual, + any, + all, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/greaterThanEqual.xml b/upstream-man-pages/manglsl/xhtml/greaterThanEqual.xml new file mode 100644 index 0000000..76864b7 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/greaterThanEqual.xml @@ -0,0 +1,25 @@ + + + +greaterThanEqual - OpenGL Shading Language (GLSL)

Name

greaterThanEqual — perform a component-wise greater-than-or-equal comparison of two vectors

Declaration

bvec greaterThanEqual(vec x, vec y);

bvec greaterThanEqual(ivec x, ivec y);

bvec greaterThanEqual(uvec x, uvec y);

Parameters

x

+ Specifies the first vector to be used in the comparison operation. +

y

+ Specifies the second vector to be used in the comparison operation. +

Description

+ greaterThanEqual returns a boolean vector in which each element i is computed + as x[i] ≥ y[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
greaterThanEqual (vec)YYYYYYYYYY
greaterThanEqual (ivec)YYYYYYYYYY
greaterThanEqual (uvec)--YYYYYYYY

See Also

+ lessThan, + lessThanEqual, + greaterThan, + equal, + notEqual, + any, + all, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/groupMemoryBarrier.xml b/upstream-man-pages/manglsl/xhtml/groupMemoryBarrier.xml new file mode 100644 index 0000000..ece3eb2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/groupMemoryBarrier.xml @@ -0,0 +1,18 @@ + + + +groupMemoryBarrier - OpenGL Shading Language (GLSL)

Name

groupMemoryBarrier — controls the ordering of memory transaction issued shader invocation relative to a work group

Declaration

void groupMemoryBarrier(void);

Description

+ groupMemoryBarrier waits on the completion of all memory accesses performed + by an invocation of a compute shader relative to the same access performed by other invocations + in the same work group and then returns with no other effect. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
groupMemoryBarrier---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicAdd.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicAdd.xml new file mode 100644 index 0000000..b5204d3 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicAdd.xml @@ -0,0 +1,31 @@ + + + +imageAtomicAdd - OpenGL Shading Language (GLSL)

Name

imageAtomicAdd — atomically add a value to an existing value in memory and return the original value

Declaration

uint imageAtomicAdd(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicAdd(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicAdd(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicAdd(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicAdd(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicAdd(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicAdd(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicAdd(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicAdd(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicAdd(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicAdd(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicAdd(gimage1D  image,
 int  P,
 int  data);
int imageAtomicAdd(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicAdd(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicAdd(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicAdd(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicAdd(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicAdd(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicAdd(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicAdd(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicAdd(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicAdd(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to add data. +

P

+ Specify the coordinate at which to add the data. +

sample

+ When present, specifies the sample within the image to add into. +

data

+ Specifies the data to add into the image. +

Description

+ imageAtomicAdd atomically computes a new value by adding the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicAdd--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicAnd.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicAnd.xml new file mode 100644 index 0000000..f037f5f --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicAnd.xml @@ -0,0 +1,31 @@ + + + +imageAtomicAnd - OpenGL Shading Language (GLSL)

Name

imageAtomicAnd — atomically compute the logical AND of a value with an existing value in memory, store that value and return the original value

Declaration

uint imageAtomicAnd(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicAnd(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicAnd(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicAnd(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicAnd(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicAnd(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicAnd(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicAnd(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicAnd(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicAnd(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicAnd(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicAnd(gimage1D  image,
 int  P,
 int  data);
int imageAtomicAnd(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicAnd(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicAnd(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicAnd(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicAnd(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicAnd(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicAnd(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicAnd(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicAnd(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicAnd(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to store data. +

P

+ Specify the coordinate at which to store the data. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data to logically AND into the image. +

Description

+ imageAtomicAnd atomically computes a new value by logically ANDing the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicAnd--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicCompSwap.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicCompSwap.xml new file mode 100644 index 0000000..89d21ef --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicCompSwap.xml @@ -0,0 +1,35 @@ + + + +imageAtomicCompSwap - OpenGL Shading Language (GLSL)

Name

imageAtomicCompSwap — atomically compares supplied data with that in memory and conditionally stores it to memory

Declaration

uint imageAtomicCompSwap(gimage1D  image,
 int  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage2D  image,
 ivec2  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage3D  image,
 ivec3  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage2DRect  image,
 ivec2  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimageCube  image,
 ivec3  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gbufferImage  image,
 int  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage1DArray  image,
 ivec2  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage2DArray  image,
 ivec3  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimageCubeArray  image,
 ivec3  P,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  compare,
 uint  data);
uint imageAtomicCompSwap(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  compare,
 uint  data);
int imageAtomicCompSwap(gimage1D  image,
 int  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage2D  image,
 ivec2  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage3D  image,
 ivec3  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage2DRect  image,
 ivec2  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimageCube  image,
 ivec3  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gbufferImage  image,
 int  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage1DArray  image,
 ivec2  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage2DArray  image,
 ivec3  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimageCubeArray  image,
 ivec3  P,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  compare,
 int  data);
int imageAtomicCompSwap(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  compare,
 int  data);

Parameters

image

+ Specify the image unit into which to compare and conditionally store data. +

P

+ Specify the coordinate at which to compare and conditionally store the data. +

sample

+ When present, specifies the sample within the image to compare and conditionally store into. +

compare

+ Specifies the value to compare with the content of the image. +

data

+ Specifies the value to store in the image if compare is equal to the existing image content. +

Description

+ imageAtomicCompSwap atomically compares the value of compare + with that of the texel at coordinate P and sample (for multisampled forms) in the + image bound to uint image. If the values are equal, data is + stored into the texel, otherwise it is discarded. It returns the original value of the texel regardless of + the result of the comparison operation. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicCompSwap--------YY

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicExchange.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicExchange.xml new file mode 100644 index 0000000..765376a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicExchange.xml @@ -0,0 +1,31 @@ + + + +imageAtomicExchange - OpenGL Shading Language (GLSL)

Name

imageAtomicExchange — atomically store supplied data into memory and return the original value from memory

Declaration

uint imageAtomicExchange(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicExchange(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicExchange(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicExchange(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicExchange(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicExchange(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicExchange(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicExchange(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicExchange(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicExchange(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicExchange(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicExchange(gimage1D  image,
 int  P,
 int  data);
int imageAtomicExchange(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicExchange(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicExchange(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicExchange(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicExchange(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicExchange(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicExchange(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicExchange(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicExchange(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicExchange(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to store data. +

P

+ Specify the coordinate at which to store the data. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data to exchange with that stored in the image. +

Description

+ imageAtomicExchange atomically stores the value of data + into texel at coordinate P and sample in the + image bound to uint image, and returns the original value of the texel. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicExchange--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicMax.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicMax.xml new file mode 100644 index 0000000..bedd23c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicMax.xml @@ -0,0 +1,31 @@ + + + +imageAtomicMax - OpenGL Shading Language (GLSL)

Name

imageAtomicMax — atomically compute the minimum of a value with an existing value in memory, store that value and return the original value

Declaration

uint imageAtomicMax(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicMax(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicMax(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicMax(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicMax(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicMax(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicMax(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicMax(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicMax(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicMax(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicMax(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicMax(gimage1D  image,
 int  P,
 int  data);
int imageAtomicMax(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicMax(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicMax(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicMax(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicMax(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicMax(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicMax(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicMax(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicMax(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicMax(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to store data. +

P

+ Specify the coordinate at which to store the data. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data of which to take the minimum with that stored in the image. +

Description

+ imageAtomicMax atomically computes a new value by finding the maximum of the value of data + and the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicMax--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicMin.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicMin.xml new file mode 100644 index 0000000..4a7f778 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicMin.xml @@ -0,0 +1,31 @@ + + + +imageAtomicMin - OpenGL Shading Language (GLSL)

Name

imageAtomicMin — atomically compute the minimum of a value with an existing value in memory, store that value and return the original value

Declaration

uint imageAtomicMin(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicMin(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicMin(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicMin(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicMin(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicMin(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicMin(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicMin(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicMin(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicMin(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicMin(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicMin(gimage1D  image,
 int  P,
 int  data);
int imageAtomicMin(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicMin(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicMin(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicMin(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicMin(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicMin(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicMin(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicMin(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicMin(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicMin(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to store data. +

P

+ Specify the coordinate at which to store the data. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data of which to take the minimum with that stored in the image. +

Description

+ imageAtomicMin atomically computes a new value by finding the minimum of the value of data + and the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicMin--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicOr.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicOr.xml new file mode 100644 index 0000000..1c83a37 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicOr.xml @@ -0,0 +1,31 @@ + + + +imageAtomicOr - OpenGL Shading Language (GLSL)

Name

imageAtomicOr — atomically compute the logical OR of a value with an existing value in memory, store that value and return the original value

Declaration

uint imageAtomicOr(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicOr(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicOr(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicOr(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicOr(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicOr(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicOr(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicOr(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicOr(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicOr(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicOr(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicOr(gimage1D  image,
 int  P,
 int  data);
int imageAtomicOr(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicOr(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicOr(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicOr(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicOr(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicOr(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicOr(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicOr(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicOr(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicOr(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to store data. +

P

+ Specify the coordinate at which to store the data. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data to logically OR into the image. +

Description

+ imageAtomicOr atomically computes a new value by logically ORing the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicOr--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageAtomicXor.xml b/upstream-man-pages/manglsl/xhtml/imageAtomicXor.xml new file mode 100644 index 0000000..538933c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageAtomicXor.xml @@ -0,0 +1,31 @@ + + + +imageAtomicXor - OpenGL Shading Language (GLSL)

Name

imageAtomicXor — atomically compute the logical exclusive OR of a value with an existing value in memory, store that value and return the original value

Declaration

uint imageAtomicXor(gimage1D  image,
 int  P,
 uint  data);
uint imageAtomicXor(gimage2D  image,
 ivec2  P,
 uint  data);
uint imageAtomicXor(gimage3D  image,
 ivec3  P,
 uint  data);
uint imageAtomicXor(gimage2DRect  image,
 ivec2  P,
 uint  data);
uint imageAtomicXor(gimageCube  image,
 ivec3  P,
 uint  data);
uint imageAtomicXor(gbufferImage  image,
 int  P,
 uint  data);
uint imageAtomicXor(gimage1DArray  image,
 ivec2  P,
 uint  data);
uint imageAtomicXor(gimage2DArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicXor(gimageCubeArray  image,
 ivec3  P,
 uint  data);
uint imageAtomicXor(gimage2DMS  image,
 ivec2  P,
 int  sample,
 uint  data);
uint imageAtomicXor(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 uint  data);
int imageAtomicXor(gimage1D  image,
 int  P,
 int  data);
int imageAtomicXor(gimage2D  image,
 ivec2  P,
 int  data);
int imageAtomicXor(gimage3D  image,
 ivec3  P,
 int  data);
int imageAtomicXor(gimage2DRect  image,
 ivec2  P,
 int  data);
int imageAtomicXor(gimageCube  image,
 ivec3  P,
 int  data);
int imageAtomicXor(gbufferImage  image,
 int  P,
 int  data);
int imageAtomicXor(gimage1DArray  image,
 ivec2  P,
 int  data);
int imageAtomicXor(gimage2DArray  image,
 ivec3  P,
 int  data);
int imageAtomicXor(gimageCubeArray  image,
 ivec3  P,
 int  data);
int imageAtomicXor(gimage2DMS  image,
 ivec2  P,
 int  sample,
 int  data);
int imageAtomicXor(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 int  data);

Parameters

image

+ Specify the image unit into which to store data. +

P

+ Specify the coordinate at which to store the data. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data to logically XOR into the image. +

Description

+ imageAtomicXor atomically computes a new value by logically XORing the value of data + to the contents of the texel at coordinate P and sample in the + image bound to uint image, stores that value into the image and returns the original value. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageAtomicXor--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageLoad.xml b/upstream-man-pages/manglsl/xhtml/imageLoad.xml new file mode 100644 index 0000000..0caddc8 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageLoad.xml @@ -0,0 +1,31 @@ + + + +imageLoad - OpenGL Shading Language (GLSL)

Name

imageLoad — load a single texel from an image

Declaration

gvec4 imageLoad(gimage1D image, int P);

gvec4 imageLoad(gimage2D image, ivec2 P);

gvec4 imageLoad(gimage3D image, ivec3 P);

gvec4 imageLoad(gimage2DRect image, ivec2 P);

gvec4 imageLoad(gimageCube image, ivec3 P);

gvec4 imageLoad(gbufferImage image, int P);

gvec4 imageLoad(gimage1DArray  image,
 ivec2  P);
gvec4 imageLoad(gimage2DArray  image,
 ivec3  P);
gvec4 imageLoad(gimageCubeArray  image,
 ivec3  P);
gvec4 imageLoad(gimage2DMS  image,
 ivec2  P,
 int  sample);
gvec4 imageLoad(gimage2DMSArray  image,
 ivec3  P,
 int  sample);

Parameters

image

+ Specify the image unit from which to load a texel. +

P

+ Specify the coordinate from which to load the texel. +

sample

+ When present, specifies the sample within the image to load +

Description

+ imageLoad loads the texel at the coordinate P from the image + unit image. For multi-sample loads, the sample number is given by sample. When + image, P, sample identify a valid texel, the bits used + to represent the selected texel in memory are converted to a vec4, ivec4, or uvec4 in the manner described in the OpenGL + Specification and returned. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageLoad--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageSize.xml b/upstream-man-pages/manglsl/xhtml/imageSize.xml new file mode 100644 index 0000000..b8a833b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageSize.xml @@ -0,0 +1,20 @@ + + + +imageSize - OpenGL Shading Language (GLSL)

Name

imageSize — retrieve the dimensions of an image

Declaration

int imageSize(gimage1D image);

ivec2 imageSize(gimage2D image);

ivec3 imageSize(gimage3D image);

ivec2 imageSize(gimageCube image);

ivec3 imageSize(gimageCubeArray image);

ivec2 imageSize(gimageRect image);

ivec2 imageSize(gimage1DArray image);

ivec3 imageSize(gimage2DArray image);

int imageSize(gimageBuffer image);

ivec2 imageSize(gimage2DMS image);

ivec3 imageSize(gimage2DMSArray image);

Parameters

image

+ Specifies the image to which the texture whose dimensions to retrieve is bound. +

Description

+ imageSize returns the dimensions of the image bound to image. + The components in the return value are filled in, + in order, with the width, height and depth of the image. For the array forms, the last component of the + return value is the number of layers in the texture array. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageSize---------Y

See Also

+ textureSize, + imageLoad, + imageStore +

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imageStore.xml b/upstream-man-pages/manglsl/xhtml/imageStore.xml new file mode 100644 index 0000000..a667ce1 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imageStore.xml @@ -0,0 +1,33 @@ + + + +imageStore - OpenGL Shading Language (GLSL)

Name

imageStore — write a single texel into an image

Declaration

void imageStore(gimage1D  image,
 int  P,
 gvec4  data);
void imageStore(gimage2D  image,
 ivec2  P,
 gvec4  data);
void imageStore(gimage3D  image,
 ivec3  P,
 gvec4  data);
void imageStore(gimage2DRect  image,
 ivec2  P,
 gvec4  data);
void imageStore(gimageCube  image,
 ivec3  P,
 gvec4  data);
void imageStore(gbufferImage  image,
 int  P,
 gvec4  data);
void imageStore(gimage1DArray  image,
 ivec2  P,
 gvec4  data);
void imageStore(gimage2DArray  image,
 ivec3  P,
 gvec4  data);
void imageStore(gimageCubeArray  image,
 ivec3  P,
 gvec4  data);
void imageStore(gimage2DMS  image,
 ivec2  P,
 int  sample,
 gvec4  data);
void imageStore(gimage2DMSArray  image,
 ivec3  P,
 int  sample,
 gvec4  data);

Parameters

image

+ Specify the image unit into which to store a texel. +

P

+ Specify the coordinate at which to store the texel. +

sample

+ When present, specifies the sample within the image to store into. +

data

+ Specifies the data to store into the image. +

Description

+ imageStore stores data into the texel at the coordinate P from + the image specified by image. For multi-sample stores, the sample number is given by sample. When + image, P, and sample identify a valid texel, the bits + used to represent data are converted to the format of the image unit in the manner described in of the OpenGL Specification and stored to + the specified texel. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
imageStore--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/imulExtended.xml b/upstream-man-pages/manglsl/xhtml/imulExtended.xml new file mode 100644 index 0000000..534907b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/imulExtended.xml @@ -0,0 +1,12 @@ + + + + + + + +imulExtended + + + + diff --git a/upstream-man-pages/manglsl/xhtml/index.html b/upstream-man-pages/manglsl/xhtml/index.html new file mode 100644 index 0000000..2ffe2aa --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/index.html @@ -0,0 +1,290 @@ + + + +OpenGL Shading Language Reference Pages + + + +

OpenGL Shading Language Reference Pages

+

+ +
+ + +


+ + + + + + + + + + + + + + + + + + + + + + +
A
abs
acos
acosh
all
any
asin
asinh
atan
atanh
atomicAdd
atomicAnd
atomicCompSwap
atomicCounter
atomicCounterDecrement
atomicCounterIncrement
atomicExchange
atomicMax
atomicMin
atomicOr
atomicXor
Top
+ +

+ + + + + + + +
B
barrier
bitCount
bitfieldExtract
bitfieldInsert
bitfieldReverse
Top
+ +

+ + + + + + + +
C
ceil
clamp
cos
cosh
cross
Top
+ +

+ + + + + + + + +
D
degrees
determinant
dFdx
dFdy
distance
dot
Top
+ +

+ + + + + + + + + +
E
EmitStreamVertex
EmitVertex
EndPrimitive
EndStreamPrimitive
equal
exp
exp2
Top
+ +

+ + + + + + + + + + + + +
F
faceforward
findLSB
findMSB
floatBitsToInt
floatBitsToUint
floor
fma
fract
frexp
fwidth
Top
+ +

+ + + + + +
G
greaterThan
greaterThanEqual
groupMemoryBarrier
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + +
I
imageAtomicAdd
imageAtomicAnd
imageAtomicCompSwap
imageAtomicExchange
imageAtomicMax
imageAtomicMin
imageAtomicOr
imageAtomicXor
imageLoad
imageSize
imageStore
imulExtended
intBitsToFloat
interpolateAtCentroid
interpolateAtOffset
interpolateAtSample
inverse
inversesqrt
isinf
isnan
Top
+ +

+ + + + + + + + +
L
ldexp
length
lessThan
lessThanEqual
log
log2
Top
+ +

+ + + + + + + + + + + + + +
M
matrixCompMult
max
memoryBarrier
memoryBarrierAtomicCounter
memoryBarrierBuffer
memoryBarrierImage
memoryBarrierShared
min
mix
mod
modf
Top
+ +

+ + + + + + +
N
noise
normalize
not
notEqual
Top
+ +

+ + + +
O
outerProduct
Top
+ +

+ + + + + + + + + +
P
packDouble2x32
packHalf2x16
packSnorm2x16
packSnorm4x8
packUnorm2x16
packUnorm4x8
pow
Top
+ +

+ + + + + + + +
R
radians
reflect
refract
round
roundEven
Top
+ +

+ + + + + + + + +
S
sign
sin
sinh
smoothstep
sqrt
step
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
T
tan
tanh
texelFetch
texelFetchOffset
texture
textureGather
textureGatherOffset
textureGatherOffsets
textureGrad
textureGradOffset
textureLod
textureLodOffset
textureOffset
textureProj
textureProjGrad
textureProjGradOffset
textureProjLod
textureProjLodOffset
textureProjOffset
textureQueryLevels
textureQueryLod
textureSize
transpose
trunc
Top
+ +

+ + + + + + + + + + + + +
U
uaddCarry
uintBitsToFloat
umulExtended
unpackDouble2x32
unpackHalf2x16
unpackSnorm2x16
unpackSnorm4x8
unpackUnorm2x16
unpackUnorm4x8
usubBorrow
Top
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Built-in Variables
gl_ClipDistance
gl_FragCoord
gl_FragDepth
gl_FrontFacing
gl_GlobalInvocationID
gl_InstanceID
gl_InvocationID
gl_Layer
gl_LocalInvocationID
gl_LocalInvocationIndex
gl_NumSamples
gl_NumWorkGroups
gl_PatchVerticesIn
gl_PointCoord
gl_PointSize
gl_Position
gl_PrimitiveID
gl_PrimitiveIDIn
gl_SampleID
gl_SampleMask
gl_SampleMaskIn
gl_SamplePosition
gl_TessCoord
gl_TessLevelInner
gl_TessLevelOuter
gl_VertexID
gl_ViewportIndex
gl_WorkGroupID
gl_WorkGroupSize
Top
+ + +

+

+OpenGL Shading Language (GLSL) Reference Pages Copyright © 2011 Khronos Group, Inc. +
+

+ + diff --git a/upstream-man-pages/manglsl/xhtml/intBitsToFloat.xml b/upstream-man-pages/manglsl/xhtml/intBitsToFloat.xml new file mode 100644 index 0000000..57b87b1 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/intBitsToFloat.xml @@ -0,0 +1,23 @@ + + + +intBitsToFloat - OpenGL Shading Language (GLSL)

Name

intBitsToFloat, uintBitsToFloat — produce a floating point using an encoding supplied as an integer

Declaration

genType intBitsToFloat(genIType x);

genType uintBitsToFloat(genUType x);

Parameters

x

+ Specifies the bit encoding to return as a floating point value. +

Description

+ intBitsToFloat and uintBitsToFloat return the encoding + passed in parameter x as a floating-point value. If the encoding of + a NaN is passed in x, it will not signal and the resulting value will + be undefined. If the encoding of a floating point infinity is passed in parameter x, + the resulting floating-point value is the corresponding (positive or negative) floating + point infinity. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
intBitsToFloat-----YYYYY

See Also

+ floatBitsToInt, + floatBitsToUint, + isnan, + isinf +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/interpolateAtCentroid.xml b/upstream-man-pages/manglsl/xhtml/interpolateAtCentroid.xml new file mode 100644 index 0000000..5f84853 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/interpolateAtCentroid.xml @@ -0,0 +1,18 @@ + + + +interpolateAtCentroid - OpenGL Shading Language (GLSL)

Name

interpolateAtCentroid — sample a varying at the centroid of a pixel

Declaration

float interpolateAtCentroid(float  interpolant);
vec2 interpolateAtCentroid(vec2  interpolant);
vec3 interpolateAtCentroid(vec3  interpolant);
vec4 interpolateAtCentroid(vec4  interpolant);

Parameters

interpolant

+ Specifies the interpolant to be sampled at the pixel centroid. +

Description

+ interpolateAtCentroid returns the value of the input varying interpolant + sampled at a location inside both the pixel and the primitive being processed. The value obtained would be the value + assigned to the input variable if declared with the centroid qualifier. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
interpolateAtCentroid------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/interpolateAtOffset.xml b/upstream-man-pages/manglsl/xhtml/interpolateAtOffset.xml new file mode 100644 index 0000000..d4cec6c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/interpolateAtOffset.xml @@ -0,0 +1,22 @@ + + + +interpolateAtOffset - OpenGL Shading Language (GLSL)

Name

interpolateAtOffset — sample a varying at specified offset from the center of a pixel

Declaration

float interpolateAtOffset(float  interpolant,
 vec2  offset);
vec2 interpolateAtOffset(vec2  interpolant,
 vec2  offset);
vec3 interpolateAtOffset(vec3  interpolant,
 vec2  offset);
vec4 interpolateAtOffset(vec4  interpolant,
 vec2  offset);

Parameters

interpolant

+ Specifies the interpolant to be sampled at the specified offset. +

offset

+ Specifies the offset from the center of the pixel at which to sample interpolant. +

Description

+ interpolateAtOffset returns the value of the input varying interpolant + sampled at an offset from the center of the pixel specified by offset. The two floating-point + components of offset give the offset in pixels in the x and y + directions from the center of the pixel, respectively. An offset of (0, 0) identifies the center of the pixel. The range and granularity of + offsets supported by this function is implementation-dependent. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
interpolateAtoOffset------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/interpolateAtSample.xml b/upstream-man-pages/manglsl/xhtml/interpolateAtSample.xml new file mode 100644 index 0000000..190ef30 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/interpolateAtSample.xml @@ -0,0 +1,21 @@ + + + +interpolateAtSample - OpenGL Shading Language (GLSL)

Name

interpolateAtSample — sample a varying at the location of a specified sample

Declaration

float interpolateAtSample(float  interpolant,
 int  sample);
vec2 interpolateAtSample(vec2  interpolant,
 int  sample);
vec3 interpolateAtSample(vec3  interpolant,
 int  sample);
vec4 interpolateAtSample(vec4  interpolant,
 int  sample);

Parameters

interpolant

+ Specifies the interpolant to be sampled at the location of sample sample. +

sample

+ Specifies the index of the sample whose location will be used to sample interpolant. +

Description

+ interpolateAtSample returns the value of the input varying interpolant + sampled at the location of sample number sample. If multisample buffers are not available, + the input varying will be evaluated at the center of the pixel. If sample sample does not + exist, the position used to interpolate the input varying is undefined. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
interpolateAtSample------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/inverse.xml b/upstream-man-pages/manglsl/xhtml/inverse.xml new file mode 100644 index 0000000..3854e0d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/inverse.xml @@ -0,0 +1,17 @@ + + + +inverse - OpenGL Shading Language (GLSL)

Name

inverse — calculate the inverse of a matrix

Declaration

mat2 inverse(mat2 m);

mat3 inverse(mat3 m);

mat4 inverse(mat4 m);

dmat2 inverse(dmat2 m);

dmat3 inverse(dmat3 m);

dmat4 inverse(dmat4 m);

Parameters

m

+ Specifies the matrix of which to take the inverse. +

Description

+ inverse returns the inverse of the matrix m. The values in the + returned matrix are undefined if m is singular or poorly-conditioned (nearly singular). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
inverse (float)---YYYYYYY
inverse (double)------YYYY

See Also

+ transpose, + determinant +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/inversesqrt.xml b/upstream-man-pages/manglsl/xhtml/inversesqrt.xml new file mode 100644 index 0000000..3c183e5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/inversesqrt.xml @@ -0,0 +1,18 @@ + + + +inversesqrt - OpenGL Shading Language (GLSL)

Name

inversesqrt — return the inverse of the square root of the parameter

Declaration

genType inversesqrt(genType x);

genDType inversesqrt(genDType x);

Parameters

x

+ Specify the value of which to take the inverse of the square root. +

Description

+ inversesqrt returns the inverse of the square root of x. + i.e., the value 1x. + Results are undefined if x0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
inversesqrt (genType)--YYYYYYYY
inversesqrt (genDType)------YYYY

See Also

+ pow, + sqrt +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/isinf.xml b/upstream-man-pages/manglsl/xhtml/isinf.xml new file mode 100644 index 0000000..e6073d2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/isinf.xml @@ -0,0 +1,16 @@ + + + +isinf - OpenGL Shading Language (GLSL)

Name

isinf — determine whether the parameter is positive or negative infinity

Declaration

genBType isinf(genType x);

genBType isinf(genDType x);

Parameters

x

+ Specifies the value to test for infinity. +

Description

+ For each element element i of the result, isinf returns true if + x[i] is posititve or negative floating point infinity and false otherwise. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
isinf (genType)YYYYYYYYYY
isinf (genDType)------YYYY

See Also

+ isnan +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/isnan.xml b/upstream-man-pages/manglsl/xhtml/isnan.xml new file mode 100644 index 0000000..43efcf6 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/isnan.xml @@ -0,0 +1,16 @@ + + + +isnan - OpenGL Shading Language (GLSL)

Name

isnan — determine whether the parameter is a number

Declaration

genBType isnan(genType x);

genBType isnan(genDType x);

Parameters

x

+ Specifies the value to test for NaN. +

Description

+ For each element element i of the result, isinf returns true if + x[i] is posititve or negative floating point NaN (Not a Number) and false otherwise. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
isnan (genType)--YYYYYYYY
isnan (genDType)------YYYY

See Also

+ isinf +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/ldexp.xml b/upstream-man-pages/manglsl/xhtml/ldexp.xml new file mode 100644 index 0000000..19b39c8 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/ldexp.xml @@ -0,0 +1,30 @@ + + + +ldexp - OpenGL Shading Language (GLSL)

Name

ldexp — assemble a floating point number from a value and exponent

Declaration

genType ldexp(genType x, genIType exp);

genDType ldexp(genDType x, genIType exp);

Parameters

x

+ Specifies the value to be used as a source of significand. +

out exp

+ Specifies the value to be used as a source of exponent. +

Description

+ ldexp builds a floating point number from x and + the corresponding integral exponent of two in exp, returning: +

+ + significand + ⋅ + + 2 + exponent + + +

+ If this product is too large to be represented in the floating point type, the result + is undefined. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
ldexp (genType)------YYYY
ldexp (genDType)------YYYY

See Also

+ frexp +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/length.xml b/upstream-man-pages/manglsl/xhtml/length.xml new file mode 100644 index 0000000..9bfb22d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/length.xml @@ -0,0 +1,38 @@ + + + +length - OpenGL Shading Language (GLSL)

Name

length — calculate the length of a vector

Declaration

float length(genType x);

double length(genDType x);

Parameters

x

+ Specifies a vector of which to calculate the length. +

Description

+ length returns the length of the vector. i.e., + + + + + + + x[0] + + 2 + + + + + + x[1] + + 2 + + + + ... + + + +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
length (genType)YYYYYYYYYY
length (genDType)------YYYY

See Also

+ distance, + normalize +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/lessThan.xml b/upstream-man-pages/manglsl/xhtml/lessThan.xml new file mode 100644 index 0000000..123b061 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/lessThan.xml @@ -0,0 +1,25 @@ + + + +lessThan - OpenGL Shading Language (GLSL)

Name

lessThan — perform a component-wise less-than comparison of two vectors

Declaration

bvec lessThan(vec x, vec y);

bvec lessThan(ivec x, ivec y);

bvec lessThan(uvec x, uvec y);

Parameters

x

+ Specifies the first vector to be used in the comparison operation. +

y

+ Specifies the second vector to be used in the comparison operation. +

Description

+ lessThan returns a boolean vector in which each element i is computed + as x[i] < y[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
lessThan (vec)YYYYYYYYYY
lessThan (ivec)YYYYYYYYYY
lessThan (uvec)--YYYYYYYY

See Also

+ lessThanEqual, + greaterThan, + greaterThanEqual, + equal, + notEqual, + any, + all, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/lessThanEqual.xml b/upstream-man-pages/manglsl/xhtml/lessThanEqual.xml new file mode 100644 index 0000000..dbe15b2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/lessThanEqual.xml @@ -0,0 +1,25 @@ + + + +lessThanEqual - OpenGL Shading Language (GLSL)

Name

lessThanEqual — perform a component-wise less-than-or-equal comparison of two vectors

Declaration

bvec lessThanEqual(vec x, vec y);

bvec lessThanEqual(ivec x, ivec y);

bvec lessThanEqual(uvec x, uvec y);

Parameters

x

+ Specifies the first vector to be used in the comparison operation. +

y

+ Specifies the second vector to be used in the comparison operation. +

Description

+ lessThanEqual returns a boolean vector in which each element i is computed + as x[i] ≤ y[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
lessThanEqual (vec)YYYYYYYYYY
lessThanEqual (ivec)YYYYYYYYYY
lessThanEqual (uvec)--YYYYYYYY

See Also

+ lessThan, + greaterThan, + greaterThanEqual, + equal, + notEqual, + any, + all, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/log.xml b/upstream-man-pages/manglsl/xhtml/log.xml new file mode 100644 index 0000000..29f8f26 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/log.xml @@ -0,0 +1,20 @@ + + + +log - OpenGL Shading Language (GLSL)

Name

log — return the natural logarithm of the parameter

Declaration

genType log(genType x);

Parameters

x

+ Specify the value of which to take the natural logarithm. +

Description

+ log returns the natural logarithm of x. i.e., the value + y which satisfies + xey. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
log (genType)YYYYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/log2.xml b/upstream-man-pages/manglsl/xhtml/log2.xml new file mode 100644 index 0000000..79d4068 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/log2.xml @@ -0,0 +1,20 @@ + + + +log2 - OpenGL Shading Language (GLSL)

Name

log2 — return the base 2 logarithm of the parameter

Declaration

genType log2(genType x);

Parameters

x

+ Specify the value of which to take the base 2 logarithm. +

Description

+ log2 returns the base 2 logarithm of x. i.e., the value + y which satisfies + x2y. + Results are undefined if x0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
log2YYYYYYYYYY

See Also

+ exp, + log, + exp2 +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/makeindex.pl b/upstream-man-pages/manglsl/xhtml/makeindex.pl new file mode 100644 index 0000000..a81b73c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/makeindex.pl @@ -0,0 +1,272 @@ +#!/usr/bin/perl + +sub Usage { +print +"Usage: makeindex xhtmldir xmldir + where xhtmldir contains a directory full of OpenGL .xml XHTML man pages -AND- + where xmldir contains a directory full of OpenGL .xml source XML man pages + + probably want to redirect output into a file like + ./makeindex.pl . .. > ./index.html +" +} + +sub PrintHeader { +print ' + + +OpenGL Shading Language Reference Pages + + + +

OpenGL Shading Language Reference Pages

+

+ +'; +} + +sub PrintFooter { +print ' +

+

+OpenGL Shading Language (GLSL) Reference Pages Copyright © 2011 Khronos Group, Inc. +
+

+ + +'; +} + +sub TableElementForFilename { + my $name = shift; + + my $strippedname = $name; + $strippedname =~ s/\.xml//; + print "\t"; + print ''; + print "$strippedname"; + print "\n"; +} + +sub BeginTable { + my $letter = shift; + print "

\n"; + print ''; + print "\t\n"; +} + +sub EndTable { + print "\t"; + print ''; + print "\n
"; + print "$letter
Top
\n\n"; +} + + + +############## +# main +############## + +if (@ARGV != 2) +{ + Usage(); + die; +} + +# grab list of generated XHTML files +opendir(DIR,$ARGV[0]) or die "couldn't open directory"; + +@files = readdir(DIR); +close(DIR); +@files = sort {uc($a) cmp uc($b)} @files; + +PrintHeader(); + +my @glsl; +my @builtins; + +my @realEntrypoints; +my @pageNames; + +#pre-create list of all true entrypoint names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + @funcs = ; + @funcs = grep(//, @funcs); + foreach (@funcs) + { + $func = $_; + $func =~ s/.*//; + $func =~ s/<\/function>.*\n//; + + push (@realEntrypoints, $func); + } + close(PARENT); + } + } +} + +#pre-create list of page names + +foreach (@files) +{ + if (/xml/) + { + $parentName = $ARGV[1] . '/' . $_; + if (open(PARENT, $parentName)) + { + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + push (@pageNames, $entrypoint); + + close(PARENT); + } + } +} + +#sort the files into gl, glut, glu, and glX + +foreach (@files) +{ + if (/xml/) + { + # filter out entrypoint variations that don't have their own man pages + my $needIndexEntry = 0; + + # continue only if parent page exists (e.g. glColor) OR + # different parent page exists with matching entrypoint (e.g. glEnd) + my $entrypoint = $_; + $entrypoint =~ s/\.xml//; + + foreach (@pageNames) + { + if ($_ eq $entrypoint) + { + # it has its own man page + $needIndexEntry = 1; + } + } + + if ($needIndexEntry == 0) + { + foreach (@realEntrypoints) + { + if ($_ eq $entrypoint) + { + # it's a real entrypoint, but make sure not a variation + $needIndexEntry = 1; + + foreach (@pageNames) + { + my $alteredEntrypoint = $entrypoint; + $alteredEntrypoint =~ s/$_//; + + if (!($alteredEntrypoint eq $entrypoint)) + { + $needIndexEntry = 0; + } + } + } + } + } + + #if ($needIndexEntry) + if (substr($_, 0, 3) eq "gl_") + { + push (@builtins, $_); + } + else + { + push (@glsl, $_); + } + } +} + + +#output the table of contents + +my @toc; + +if ($#glsl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@glsl) + { + $name = $_; + $firstletter = uc(substr($name, 0, 1)); + if ($firstletter ne $currentletter) + { + push (@toc, $firstletter); + $currentletter = $firstletter; + } + } +} + + +print '
'; +print '
'; +foreach (@toc) +{ + print ' '; + print $_; + print "   "; +} +if ($#builtins > 0) +{ + print '
Built-in Variables'; +} +print "
\n\n\n"; +print '
'; + +# output the tables + +if ($#glsl > 0) +{ + $currentletter = ""; + $opentable = 0; + + foreach (@glsl) + { + $name = $_; + $firstletter = uc(substr($name, 0, 1)); + if ($firstletter ne $currentletter) + { + if ($opentable == 1) + { + EndTable(); + } + BeginTable($firstletter); + $opentable =1; + $currentletter = $firstletter; + } + TableElementForFilename($_); + } + if ($opentable) + { + EndTable(); + } +} + +if ($#builtins > 0) +{ + BeginTable("Built-in Variables"); + foreach (@builtins) + { + TableElementForFilename($_); + } + EndTable(); +} + +PrintFooter(); diff --git a/upstream-man-pages/manglsl/xhtml/mathml.xsl b/upstream-man-pages/manglsl/xhtml/mathml.xsl new file mode 100644 index 0000000..d13aa52 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/mathml.xsl @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/matrixCompMult.xml b/upstream-man-pages/manglsl/xhtml/matrixCompMult.xml new file mode 100644 index 0000000..dba7984 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/matrixCompMult.xml @@ -0,0 +1,21 @@ + + + +matrixCompMult - OpenGL Shading Language (GLSL)

Name

matrixCompMult — perform a component-wise multiplication of two matrices

Declaration

mat matrixCompMult(mat x, mat y);

dmat matrixCompMult(dmat x, dmat y);

Parameters

x

+ Specifies the first matrix multiplicand. +

y

+ Specifies the second matrix multiplicand. +

Description

+ matrixCompMult performs a component-wise multiplication of two + matrices, yielding a result matrix where each component, result[i][j] is + computed as the scalar product of x[i][j] and + y[i][j]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
matrixCompMult (genType)YYYYYYYYYY
matrixCompMult (genDType)------YYYY

See Also

+ dot, + reflect +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/max.xml b/upstream-man-pages/manglsl/xhtml/max.xml new file mode 100644 index 0000000..2fb15be --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/max.xml @@ -0,0 +1,20 @@ + + + +max - OpenGL Shading Language (GLSL)

Name

max — return the greater of two values

Declaration

genType max(genType x, genType y);

genType max(genType x, float y);

genDType max(genDType x, genDType y);

genDType max(genDType x, double y);

genIType max(genIType x, genIType y);

genIType max(genIType x, int y);

genUType max(genUType x, genUType y);

genUType max(genUType x, uint y);

Parameters

x

+ Specify the first value to compare. +

y

+ Specify the second value to compare. +

Description

+ max returns the maximum of the two parameters. It + returns y if y is greater than + x, otherwise it returns x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
max (genType)YYYYYYYYYY
max (genIType)--YYYYYYYY
max (genUType)--YYYYYYYY
max (genDType)------YYYY

See Also

+ min, + abs +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/memoryBarrier.xml b/upstream-man-pages/manglsl/xhtml/memoryBarrier.xml new file mode 100644 index 0000000..4a488ee --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/memoryBarrier.xml @@ -0,0 +1,30 @@ + + + +memoryBarrier - OpenGL Shading Language (GLSL)

Name

memoryBarrier — controls the ordering of memory transactions issued by a single shader invocation

Declaration

uint memoryBarrier(void);

Description

+ memoryBarrier waits on the completion of all memory accesses resulting from the use of + image variables or atomic counters and then returns with no other effect. When this function returns, the + results of any memory stores performed using coherent variables performed prior to the call will be visible + to any future coherent memory access to the same addresses from other shader invocations. In particular, + the values written this way in one shader stage are guaranteed to be visible to coherent memory accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
memoryBarrier------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/memoryBarrierAtomicCounter.xml b/upstream-man-pages/manglsl/xhtml/memoryBarrierAtomicCounter.xml new file mode 100644 index 0000000..c5eacab --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/memoryBarrierAtomicCounter.xml @@ -0,0 +1,20 @@ + + + +memoryBarrierAtomicCounter - OpenGL Shading Language (GLSL)

Name

memoryBarrierAtomicCounter — controls the ordering of operations on atomic counters issued by a single shader invocation

Declaration

void memoryBarrierAtomicCounter(void);

Description

+ memoryBarrierAtomicCounter waits on the completion of all accesses resulting from the use of + atomic counters and then returns with no other effect. When this function returns, the + results of any modifications to the value of atomic counters will be visible + to any access to the same counter from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
memoryBarrierAtomicCounter---------Y

See Also

+ memoryBarrier +

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/memoryBarrierBuffer.xml b/upstream-man-pages/manglsl/xhtml/memoryBarrierBuffer.xml new file mode 100644 index 0000000..bea357f --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/memoryBarrierBuffer.xml @@ -0,0 +1,23 @@ + + + +memoryBarrierBuffer - OpenGL Shading Language (GLSL)

Name

memoryBarrierBuffer — controls the ordering of operations on buffer variables issued by a single shader invocation

Declaration

void memoryBarrierBuffer(void);

Description

+ memoryBarrierBuffer waits on the completion of all memory accesses resulting + from the use of buffer variables and then returns with no other effect. When this function returns, the + results of any modifications to the content of buffer variables will be visible + to any access to the same buffer from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
memoryBarrierBuffer---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/memoryBarrierImage.xml b/upstream-man-pages/manglsl/xhtml/memoryBarrierImage.xml new file mode 100644 index 0000000..4d633a6 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/memoryBarrierImage.xml @@ -0,0 +1,23 @@ + + + +memoryBarrierImage - OpenGL Shading Language (GLSL)

Name

memoryBarrierImage — controls the ordering of operations on image variables issued by a single shader invocation

Declaration

void memoryBarrierImage(void);

Description

+ memoryBarrierImage waits on the completion of all memory accesses resulting + from the use of image variables and then returns with no other effect. When this function returns, the + results of any modifications to the content of image variables will be visible + to any access to the same buffer from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
memoryBarrierImage---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/memoryBarrierShared.xml b/upstream-man-pages/manglsl/xhtml/memoryBarrierShared.xml new file mode 100644 index 0000000..4aebfac --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/memoryBarrierShared.xml @@ -0,0 +1,25 @@ + + + +memoryBarrierShared - OpenGL Shading Language (GLSL)

Name

memoryBarrierShared — controls the ordering of operations on shared variables issued by a single shader invocation

Declaration

void memoryBarrierShared(void);

Description

+ memoryBarrierShared waits on the completion of all memory accesses resulting + from the use of shared variables and then returns with no other effect. When this function returns, the + results of any modifications to the content of shared variables will be visible + to any access to the same buffer from other shader invocations. In particular, + any modifications made in one shader stage are guaranteed to be visible to accesses + performed by shader invocations in subsequent stages when those invocations were triggered by the + execution of the original shader invocation (e.g., fragment shader invocations for a primitive resulting + from a particular geometry shader invocation). +

+ memoryBarrierShared is available only in the compute language. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
memoryBarrierShared---------Y

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/min.xml b/upstream-man-pages/manglsl/xhtml/min.xml new file mode 100644 index 0000000..f8c4378 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/min.xml @@ -0,0 +1,20 @@ + + + +min - OpenGL Shading Language (GLSL)

Name

min — return the lesser of two values

Declaration

genType min(genType x, genType y);

genType min(genType x, float y);

genDType min(genDType x, genDType y);

genDType min(genDType x, double y);

genIType min(genIType x, genIType y);

genIType min(genIType x, int y);

genUType min(genUType x, genUType y);

genUType min(genUType x, uint y);

Parameters

x

+ Specify the first value to compare. +

y

+ Specify the second value to compare. +

Description

+ min returns the minimum of the two parameters. It + returns y if y is less than + x, otherwise it returns x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
min (genType)YYYYYYYYYY
min (genIType)--YYYYYYYY
min (genUType)--YYYYYYYY
min (genDType)------YYYY

See Also

+ max, + abs +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/mix.xml b/upstream-man-pages/manglsl/xhtml/mix.xml new file mode 100644 index 0000000..042dfb5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/mix.xml @@ -0,0 +1,40 @@ + + + +mix - OpenGL Shading Language (GLSL)

Name

mix — linearly interpolate between two values

Declaration

genType mix(genType x, genType y, genType a);

genType mix(genType x, genType y, float a);

genDType mix(genDType  x,
 genDType  y,
 genDType  a);

genDType mix(genDType x, genDType y, double a);

genType mix(genType x, genType y, genBType a);

genDType mix(genDType  x,
 genDType  y,
 genBType  a);

Parameters

x

+ Specify the start of the range in which to interpolate. +

y

+ Specify the end of the range in which to interpolate. +

a

+ Specify the value to use to interpolate between x and y. +

Description

+ mix performs a linear interpolation between x + and y using a to weight between them. The return value + is computed as follows: + + x + ⋅ + ( + 1 + − + a + ) + + + y + ⋅ + a + . +

+ For the variants of mix where a is genBType, + elements for which a[i] is false, the result for that + element is taken from x, and where a[i] is + true, it will be taken from y. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
mix (genType)YYYYYYYYYY
mix (genDType)------YYYY

See Also

+ min, + max +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/mod.xml b/upstream-man-pages/manglsl/xhtml/mod.xml new file mode 100644 index 0000000..f5ed15e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/mod.xml @@ -0,0 +1,18 @@ + + + +mod - OpenGL Shading Language (GLSL)

Name

mod — compute value of one parameter modulo another

Declaration

genType mod(genType x, float y);

genType mod(genType x, genType y);

genDType mod(genDType x, double y);

genDType mod(genDType x, genDType y);

Parameters

x

+ Specify the value to evaluate. +

Description

+ mod returns the value of x modulo + y. This is computed as x - y * + floor(x/y). +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
mod (genType)YYYYYYYYYY
mod (genDType)------YYYY

See Also

+ modf, + floor +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/modf.xml b/upstream-man-pages/manglsl/xhtml/modf.xml new file mode 100644 index 0000000..36f4885 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/modf.xml @@ -0,0 +1,21 @@ + + + +modf - OpenGL Shading Language (GLSL)

Name

modf — separate a value into its integer and fractional components

Declaration

genType modf(genType x, out genType i);

genDType modf(genDType x, out genDType i);

Parameters

x

+ Specify the value to separate. +

out i

+ A variable that receives the integer part of the argument. +

Description

+ modf separates a floating point value x + into its integer and fractional parts. The fractional part of the number is returned + from the function and the integer part (as a floating point quantity) is returned + in the output parameter i. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
modf (genType)--YYYYYYYY
modf (genDType)------YYYY

See Also

+ fract, + floor +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/noise.xml b/upstream-man-pages/manglsl/xhtml/noise.xml new file mode 100644 index 0000000..3f90b96 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/noise.xml @@ -0,0 +1,18 @@ + + + +noise - OpenGL Shading Language (GLSL)

Name

noise — generate values with a pseudo-random noise function

Declaration

float noise1(genType x);

vec2 noise2(genType x);

vec3 noise3(genType x);

vec4 noise4(genType x);

Parameters

x

+ Specifies the value to be used to seed the noise function. +

Description

+ noise1, noise2, noise3 and noise4 return + noise values (vector or scalar) based on the input value x. The noise function is a stochastic function + that can be used to increase visual complexity. Values returned by the noise functions give the appearance of randomness, + but are not truly random. They are defined to have the following characteristics: +

+

  • The return value(s) are always in the range [-1.0,1.0], and cover at least the range [-0.6, 0.6], with a Gaussian-like distribution.
  • The return value(s) have an overall average of 0.0.
  • They are repeatable, in that a particular input value will always produce the same return value.
  • They are statistically invariant under rotation (i.e., no matter how the domain is rotated, it has the same statistical character).
  • They have a statistical invariance under translation (i.e., no matter how the domain is translated, it has the same statistical character).
  • They typically give different results under translation.
  • The spatial frequency is narrowly concentrated, centered somewhere between 0.5 to 1.0.
  • They are C1 continuous everywhere (i.e., the first derivative is continuous).

+

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
noise1YYYYYYYYYY
noise2YYYYYYYYYY
noise3YYYYYYYYYY
noise4YYYYYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/normalize.xml b/upstream-man-pages/manglsl/xhtml/normalize.xml new file mode 100644 index 0000000..1eec681 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/normalize.xml @@ -0,0 +1,15 @@ + + + +normalize - OpenGL Shading Language (GLSL)

Name

normalize — calculate the normalize product of two vectors

Declaration

genType normalize(genType v);

genDType normalize(genDType v);

Parameters

v

+ Specifies the vector to normalize. +

Description

+ normalize returns a vector with the same direction as its parameter, v, but with length 1. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
normalize (genType)YYYYYYYYYY
normalize (genDType)------YYYY

See Also

+ length +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/not.xml b/upstream-man-pages/manglsl/xhtml/not.xml new file mode 100644 index 0000000..0eb91b2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/not.xml @@ -0,0 +1,17 @@ + + + +not - OpenGL Shading Language (GLSL)

Name

not — logically invert a boolean vector

Declaration

bvec not(bvec x);

Parameters

x

+ Specifies the vector to be inverted. +

Description

+ not logically inverts the boolean vector x. It returns + a new boolean vector for which each element i is computed as !x[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
notYYYYYYYYYY

See Also

+ any, + all +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/notEqual.xml b/upstream-man-pages/manglsl/xhtml/notEqual.xml new file mode 100644 index 0000000..0ad75f9 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/notEqual.xml @@ -0,0 +1,25 @@ + + + +notEqual - OpenGL Shading Language (GLSL)

Name

notEqual — perform a component-wise not-equal-to comparison of two vectors

Declaration

bvec notEqual(vec x, vec y);

bvec notEqual(ivec x, ivec y);

bvec notEqual(uvec x, uvec y);

Parameters

x

+ Specifies the first vector to be used in the comparison operation. +

y

+ Specifies the second vector to be used in the comparison operation. +

Description

+ notEqual returns a boolean vector in which each element i is computed + as x[i] != y[i]. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
notEqual (vec)YYYYYYYYYY
notEqual (ivec)--YYYYYYYY
notEqual (uvec)--YYYYYYYY

See Also

+ lessThan, + lessThanEqual, + greaterThan, + greaterThanEqual, + equal, + any, + all, + not +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/opengl-man.css b/upstream-man-pages/manglsl/xhtml/opengl-man.css new file mode 100644 index 0000000..e2d6c88 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/opengl-man.css @@ -0,0 +1,91 @@ +html, body, table +{ + color: #000; + padding: 4px 4px; + margin: 0px 0px 0 0px; + text-align: left; + font-family: Arial, Lucida, sans-serif; + font-size: 10pt; +} + +#container +{ + margin: 10px; + font-size: 14pt; + text-decoration:none; +} + +div.refnamediv p +{ + font-size: 12pt; + margin: 20px; +} + +div.funcsynopsis +{ + font-family: monospace; +} + +div.funcsynopsis table +{ + font-family: monospace; +} + +div.informaltable table +{ + border-width: 1px; + border-style: dotted; + border-collapse: collapse; + background-color: #F0F0F0; +} + +div.informaltable th +{ + border-width: 2px; + padding: 4px; +} + +div.informaltable td +{ + border-width: 2px; + padding: 4px; +} + +code +{ + font-weight: bold; +} + +span.citerefentry +{ + font-family: monospace; + font-weight: bold; +} + +table.sample +{ + width: 100%; + text-align: left; + border-width: 1px; + border-spacing: 5px; + border-style: dotted; + border-color: black; + border-collapse: separate; + background-color: #F0F0F0; + font-family: sans-serif; +} + +table.sample th +{ + border-width: 1px; + padding: 1px; + border-style: none; + font-size: 16pt; +} + +table.sample td +{ + border-width: 1px; + padding: 1px; + border-style: none; +} diff --git a/upstream-man-pages/manglsl/xhtml/opengl-man.xsl b/upstream-man-pages/manglsl/xhtml/opengl-man.xsl new file mode 100644 index 0000000..6445a1a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/opengl-man.xsl @@ -0,0 +1,50 @@ + + + + + +ansi + +.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + type="text/xsl" href="mathml.xsl" + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/outerProduct.xml b/upstream-man-pages/manglsl/xhtml/outerProduct.xml new file mode 100644 index 0000000..112fa68 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/outerProduct.xml @@ -0,0 +1,21 @@ + + + +outerProduct - OpenGL Shading Language (GLSL)

Name

outerProduct — calculate the outer product of a pair of vectors

Declaration

mat2 outerProduct(vec2 c, vec2 r);

mat3 outerProduct(vec3 c, vec3 r);

mat4 outerProduct(vec4 c, vec4 r);

mat2x3 outerProduct(vec3 c, vec2 r);

mat3x2 outerProduct(vec2 c, vec3 r);

mat2x4 outerProduct(vec4 c, vec2 r);

mat4x2 outerProduct(vec2 c, vec4 r);

mat3x4 outerProduct(vec4 c, vec3 r);

mat4x3 outerProduct(vec3 c, vec4 r);

dmat2 outerProduct(dvec2 c, dvec2 r);

dmat3 outerProduct(dvec3 c, dvec3 r);

dmat4 outerProduct(dvec4 c, dvec4 r);

dmat2x3 outerProduct(dvec3 c, dvec2 r);

dmat3x2 outerProduct(dvec2 c, dvec3 r);

dmat2x4 outerProduct(dvec4 c, dvec2 r);

dmat4x2 outerProduct(dvec2 c, dvec4 r);

dmat3x4 outerProduct(dvec4 c, dvec3 r);

dmat4x3 outerProduct(dvec3 c, dvec4 r);

Parameters

c

+ Specifies the parameter to be treated as a column vector. +

r

+ Specifies the parameter to be treated as a row vector. +

Description

+ outerProduct treats the first parameter c as a column + vector (matrix with one column) and the second parameter r as a row vector + (matrix with one row) and does a linear algebraic matrix multiply c * r, + yielding a matrix whose number of rows is the number of components in c and + whose number of columns is the number of components in r. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
outerProduct (float)-YYYYYYYYY
outerProduct (double)------YYYY

See Also

+ dot +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/packDouble2x32.xml b/upstream-man-pages/manglsl/xhtml/packDouble2x32.xml new file mode 100644 index 0000000..7536a7a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/packDouble2x32.xml @@ -0,0 +1,19 @@ + + + +packDouble2x32 - OpenGL Shading Language (GLSL)

Name

packDouble2x32 — create a double-precision value from a pair of unsigned integers

Declaration

double packDouble2x32(uvec2 v);

Parameters

v

+ Specifies a vector of two unsigned integers to be packed into a single double-precision result. +

Description

+ packDouble2x32 packs the component of parameter v into a 64-bit + value. If an IEEE-754 infinity or NaN is created, it will not signal and the resulting floating-point value + is undefined. Otherwise, the bit-level representation of v is preserved. The first + vector component (v[0]) specifies the 32 least significant bits of the result; the second + component (v[1]) specifies the 32 most significant bits. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
packDouble2x32------YYYY

See Also

+ unpackDouble2x32 +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/packHalf2x16.xml b/upstream-man-pages/manglsl/xhtml/packHalf2x16.xml new file mode 100644 index 0000000..aedb42e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/packHalf2x16.xml @@ -0,0 +1,22 @@ + + + +packHalf2x16 - OpenGL Shading Language (GLSL)

Name

packHalf2x16 — convert two 32-bit floating-point quantities to 16-bit quantities and pack them into a single 32-bit integer

Declaration

uint packHalf2x16(vec2 v);

Parameters

v

+ Specify a vector of two 32-bit floating point values that are to be converted to 16-bit representation and packed into the result. +

Description

+ packHalf2x16 returns an unsigned integer obtained by converting the + components of a two-component floating-point vector to + the 16-bit floating-point representation found in the + OpenGL Specification, and then packing these two 16-bit integers into a 32-bit unsigned integer. + The first vector component specifies the 16 least-significant bits of the result; the second component + specifies the 16 most-significant bits. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
packHalf2x16--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/packSnorm2x16.xml b/upstream-man-pages/manglsl/xhtml/packSnorm2x16.xml new file mode 100644 index 0000000..98c222a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/packSnorm2x16.xml @@ -0,0 +1,12 @@ + + + + + + + +packSnorm2x16 + + + + diff --git a/upstream-man-pages/manglsl/xhtml/packSnorm4x8.xml b/upstream-man-pages/manglsl/xhtml/packSnorm4x8.xml new file mode 100644 index 0000000..79f7f1d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/packSnorm4x8.xml @@ -0,0 +1,12 @@ + + + + + + + +packSnorm4x8 + + + + diff --git a/upstream-man-pages/manglsl/xhtml/packUnorm2x16.xml b/upstream-man-pages/manglsl/xhtml/packUnorm2x16.xml new file mode 100644 index 0000000..f9627d6 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/packUnorm2x16.xml @@ -0,0 +1,27 @@ + + + +packUnorm - OpenGL Shading Language (GLSL)

Name

packUnorm — pack floating-point values into an unsigned integer

Declaration

uint packUnorm2x16(vec2 v);

uint packSnorm2x16(vec2 v);

uint packUnorm4x8(vec4 v);

uint packSnorm4x8(vec4 v);

Parameters

v

+ Specifies a vector of values to be packed into an unsigned integer. +

Description

+ packUnorm2x16, packSnorm2x16, packUnorm4x8 and packSnorm4x8 convert + each component of the normalized floating-ponit value v into 8- or 16-bit integer + values and then packs the results into a 32-bit unsigned intgeter. +

+ The conversion for component c of v to fixed-point is + performed as follows: +

+

+ The first component of the vector will be written to the least significant bits of the output; + the last component will be written to the most significant bits. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
packUnorm2x16-------YYY
packSnorm2x16--------YY
packUnorm4x8-------YYY
packSnorm4x8-------YYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/packUnorm4x8.xml b/upstream-man-pages/manglsl/xhtml/packUnorm4x8.xml new file mode 100644 index 0000000..fd74fba --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/packUnorm4x8.xml @@ -0,0 +1,12 @@ + + + + + + + +packUnorm4x8 + + + + diff --git a/upstream-man-pages/manglsl/xhtml/pmathml.xsl b/upstream-man-pages/manglsl/xhtml/pmathml.xsl new file mode 100644 index 0000000..5abf54a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/pmathml.xsl @@ -0,0 +1,615 @@ + + + + + + + + + + + '<!--' + + + + + + + + + + + + + + + + + + + + + + + + +in mpdialog mode, we just write out some JavaScript to display +dialog to the reader asking whether they want to install MathPlayer +Depending on the response we get, we then instantiate an XSL processor +and reprocess the doc, passing $secondpass according to the +reader response. + +Using d-o-e is fairly horrible, but this code is only for IE +anyway, and we need to force HTML semantics in this case. + + +var cookieName = "MathPlayerInstall="; +function MPInstall(){ + + if (typeof document.body.style.maxHeight != "undefined") return null; + var showDialog=true; + var c = document.cookie; + var i = c.indexOf(cookieName); + if (i >= 0) { + if ( c.substr(i + cookieName.length, 1) >= 2) { showDialog=false; } + } + if (showDialog) { + MPDialog(); + c = document.cookie; + i = c.indexOf(cookieName); + } + if (i >= 0) return c.substr(i + cookieName.length, 1); + else return null; +} + +function MPDialog() { + var vArgs=""; + var sFeatures="dialogWidth:410px;dialogHeight:190px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'function fnClose(v) { ' + text += 'var exp = new Date();' + text += 'var thirtyDays = exp.getTime() + (30 * 24 * 60 * 60 * 1000);' + text += 'exp.setTime(thirtyDays);' + text += 'var cookieProps = ";expires=" + exp.toGMTString();' + text += 'if (document.forms[0].dontask.checked) v+=2;' + text += 'document.cookie="' + cookieName + '"+v+cookieProps;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Install MathPlayer?</title></head>' + text += '<body bgcolor="#D4D0C8"><form>' + text += '<table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>This page requires Design Science\\\'s MathPlayer&trade;.<br>' + text += 'Do you want to download and install MathPlayer?</td></tr>'; + text += '<tr><td align=center><input type="checkbox" name="dontask">' + text += 'Don\\\'t ask me again</td></tr>' + text += '<tr><td align=center><input id=yes type="button" value=" Yes "' + text += ' onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value=" No " onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + window.showModalDialog( text , vArgs, sFeatures ); +} + +function WaitDialog() { + var vArgs=""; + var sFeatures="dialogWidth:510px;dialogHeight:150px;help:off;status:no"; + var text = ""; + text += "javascript:document.write('" + text += '<script>' + text += 'window.onload=fnLoad;' + text += 'function fnLoad() {document.forms[0].yes.focus();}' + text += 'function fnClose(v) { ' + text += 'window.returnValue=v;' + text += 'window.close();' + text += '}' + text += '</' + 'script>' + text += '<head><title>Wait for Installation?</title></head>' + text += '<body bgcolor="#D4D0C8" onload="fnLoad()"><form><' + text += 'table cellpadding=10 style="font-family:Arial;font-size:10pt" border=0 width=100%>' + text += '<tr><td align=left>Click OK once MathPlayer is installed ' + text += 'to refresh the page.<br>' + text += 'Click Cancel to view the page immediately without MathPlayer.</td></tr>'; + text += '<tr><td align=center><input id=yes type="button" ' + text += 'value=" OK " onClick="fnClose(1)">&nbsp;&nbsp;&nbsp;' + text += '<input type="button" value="Cancel" onClick="fnClose(0)"></td></tr>' + text += '</table></form>'; + text += '</body>' + text += "')" + return window.showModalDialog( text , vArgs, sFeatures ); +} + +var result = MPInstall(); + +var action = "fallthrough"; +if (result == 1 || result == 3) { + window.open("http://www.dessci.com/webmath/mathplayer"); + var wait = WaitDialog(); + if ( wait == 1) { + action = "install"; + document.location.reload(); + + } +} +if (action == "fallthrough") { +var xsl = new ActiveXObject("Microsoft.FreeThreadedXMLDOM"); +xsl.async = false; +xsl.validateOnParse = false; +xsl.load("pmathmlcss.xsl"); +var xslTemplate = new ActiveXObject("MSXML2.XSLTemplate.3.0"); +xslTemplate.stylesheet=xsl.documentElement; +var xslProc = xslTemplate.createProcessor(); +xslProc.input = document.XMLDocument; + +xslProc.transform(); +var str = xslProc.output; + +var repl = "replace"; +if (window.navigator.appVersion.match(/Windows NT 5.1/)) { repl = ""; } +var newDoc = document.open("text/html", repl); +newDoc.write(str); +document.close(); +} + + +mathplayer-dl + +techexplorer-plugin + + + + + + + + techexplorer-plugin + + + + + mathplayer-dl + + + + + + + + + + + + +IE5 hacks +This code will be ignored by an XSLT engine as a top level +element in a foreign namespace. It will be executed by an IE5XSL +engine and insert <!-- into the output stream, ie the start of a +comment. This will comment out all the XSLT code which will be copied +to the output. A similar clause below will close this comment, it is +then followed by the IE5XSL templates to be executed. +This trick is due to Jonathan Marsh of Microsoft, and used in +the stylesheet for +the XPath 2 data model draft. + + +XSLT stylesheet +MSXSL script block + +The following script block implements an extension function that +tests whether a specified ActiveX component is known to the client. +This is used below to test for the existence of MathML rendering +components. + + function isinstalled(ax) + { + try { + var ActiveX = new ActiveXObject(ax); + return "true"; + } catch (e) { + return "false"; + } +} + + +The main bulk of this stylesheet is an identity transformation so... + + + + + + + + + +XHTML elements are copied sans prefix (XHTML is default namespace +here, so these elements will still be in XHTML namespace + + + + + + + +IE's treatment of XHTML as HTML needs a little help here... + + + + + + > + + + + + + + + + + +This just ensures the mathml prefix declaration isn't copied from +the source at this stage, so that the system will use the mml prefix +coming from this stylesheet + + + + + + + +We modify the head element to add code to specify a Microsoft +"Behaviour" if the behaviour component is known to the system. +Test for MathPlayer (Design Science) +Test for Techexplorer (IBM) +Test for Microsoft. In this case we just +output a small HTML file that executes a script that will re-process +the source docuument with a different stylesheet. Doing things this +way avoids the need to xsl:import the second stylesheet, which would +very much increase the processing overhead of running this +stylesheet. +Further tests (eg for netscape/mozilla) could +be added here if necessary + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Somewhat bizarrely in an otherwise namespace aware system, +Microsoft behaviours are defined to trigger off the +prefix not the Namespace. In the code above +we associated a MathML rendering behaviour (if one was found) with the +prefix mml: so here we ensure that this is the prefix +that actually gets used in the output. + + + + + + + +Copy semantics element through in IE (so mathplayer gets to see +mathplayer annotations, otherwise use first child or a presentation annotation. + + + + + + + + + + + + + + + + + + + + + + + + > + + + + + + + + + /> + + + + + + " + + + + + + " + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +IE5XSL stylesheet +In a rare fit of sympathy for users of +the-language-known-as-XSL-in-IE5 this file incorporates a +version of the above code designed to work in the Microsoft dialect. +This is needed otherwise users of a MathML rendering behaviour would +have to make a choice whether they wanted to use this stylesheet +(keeping their source documents conforming XHTML+MathML) or to use +the explicit Microsoft Object code, which is less portable, but would +work in at least IE5.5. + +This entire section of code, down to the end of the stylesheet is +contained within this ie5:if. Thus XSLT sees it as a top level element +from a foreign namespace and silently ignores it. IE5XSL sees it as +"if true" and so executes the code. + + +First close the comment started at the beginning. This ensures +that the bulk of the XSLT code, while being copied to the result tree +by the IE5XSL engine, will not be rendered in the browser. + +Lacking attribute value templates in +xsl:element, and the local-name() function, we resort to constructing +the start and end tags in strings in javascript, then using +no-entities attribute which is the IE5XSL equivalent of disable-output-encoding + + +'-->' + + + + + + function mpisinstalled() + { + try { + var ActiveX = new ActiveXObject("MathPlayer.Factory.1"); + return "true"; + } catch (e) { + return "false"; + } +} + + + + + + + + + + + + + + + + + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + +'<math>' + +'</math>' + + + + +'<mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + +' ' + this.nodeName="" + +'>' + +'</mml:' + this.nodeName.substring(this.nodeName.indexOf(":")+1) + '>' + + + + + + + + + + + namespace="mml" implementation="#mmlFactory" + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/pmathmlcss.xsl b/upstream-man-pages/manglsl/xhtml/pmathmlcss.xsl new file mode 100644 index 0000000..f836645 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/pmathmlcss.xsl @@ -0,0 +1,873 @@ + + + + + + + + +Dictionary + + The following elements in the x: namespace form an +implementation of an "Operator Dictionary" for this MathML +Implementation. In the case of stretch operators, the element +specifies the symbol parts via the latin-1 equivalent character based +on the encoding in the symbol font. It is a clear "failure to comply +to the spec" that using latin 1 characters (or numeric character +references) in the latin 1 range access glyphs in teh symbol font via +font position, however most of these character parts are not in +Unicode (until 3.2), so there is no standard way to access these characters. + +{ +{ + +( +) + +[ +] + +[[ +]] + +| +|| + + + + +~ +_v_ + + +Remove these for now, as XML parser in IE6 is broken and doesn't +accept plane 1 characters. + + +Grab all of the above into a variable. + + +HTML elements + + +XHTML elements get passed straight through, sans namespace prefix. + + + + + + + + + + + + +Template for the head element copies the original content, aand in +addition adds a script element and CSS style element that implement +the core of the MathML renderer. + + + +The malign function first finds the left most item in the aligngroup, and +then modifies the left margin of each item to make them +align. (Currently only left alignment is supported.) + + + +The mrowStretch function implements stretchy brackets. It is called +repeatedly, once for each mo child,after a span corresponding to an +mrow. The arguments are the id of teh span and the characters to use +for the parts of the stretch operator. +constructed fence. The + + + +Inline CSS style block handles all font and size specification for the +various MathML operators. + + + + + + + + + + + + + + + + +Unimplemented MathML elements get copied literally, in red, mainly as +a debugging aid. + + +<> + +</> + + + +mi: set default font based on string length, otherwise behaviour based +on entries in the operator dictionary if one exists, or content is +copied through to the output unchanged. + + + + +mi1 + + + + + + + + + + + + + + + + +Handling of mathvariant attribute. +The choice of font families here (currently) avoids math-specific +fonts but does use several fionts coming with windows 9.x and/or +office 2000. + + +font-weight: bold; font-style: upright + + +font-style: upright; font-weight: bold; font-style: italic; + + +font-style: italic; + + +font-family: monospace; + + + +font-family: sans-serif; + + +font-family: sans-serif; font-weight: bold; + + + +font-family: old english text mt + + + + +doublestruck + + + + +font-family: brush script mt italic + + + + +mo: Generate a unique ID so that a script at the end of any +surrounding mrow may replace the conent by a suitably stretched +operator if need be. + + + + + + +mn: a simple span + + + + + + +munder: currently only supports underline, with a bottom border + + + + border-width: 0pt 0pt .1em 0pt; border-style: solid;" + + + + + +mover: currently only supports overline, with a top border + + + + border-width: .1em 0pt 0pt 0pt; border-style: solid;" + + + + + +munderover: + + + + + +
+
+ +mtext: a simple span + + + + + + +mstyle: not many attributes currently supported + + + + color: ; + background-color: ; + + + + + + +mglyph: Uses disable output escaping to construct a numeric +character reference. Uses IE's non conforming behaviour of using this +number to access the font encoding rather than unicode. + + +; + + + +ms: a simple span with left and right character added to the content. + + + " + + " + + + + + + + + + + + + + + + ( + + + + + + ) + + + + + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\ + + + + + +\ + + + + + + + + + + + + + + + + + +\ + + + + + + + + + + font-size: 75% ; + + + font-size: 100% ; + + + +
+ +
+ +
+
+ + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +left + + + + + + +
diff --git a/upstream-man-pages/manglsl/xhtml/postprocess.sed b/upstream-man-pages/manglsl/xhtml/postprocess.sed new file mode 100644 index 0000000..0aaf6d3 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/postprocess.sed @@ -0,0 +1,3 @@ +s/\n# - OpenGL Shading Language (GLSL)#g diff --git a/upstream-man-pages/manglsl/xhtml/pow.xml b/upstream-man-pages/manglsl/xhtml/pow.xml new file mode 100644 index 0000000..49c2521 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/pow.xml @@ -0,0 +1,24 @@ + + + +pow - OpenGL Shading Language (GLSL)

Name

pow — return the value of the first parameter raised to the power of the second

Declaration

genType pow(genType x, genType y);

Parameters

x

+ Specify the value to raise to the power y. +

y

+ Specify the power to which to raise x. +

Description

+ pow returns the value of x raised to the y power. i.e., + xy. + Results are undefined if x0 + or if x0 and + y0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
powYYYYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/preprocess.sed b/upstream-man-pages/manglsl/xhtml/preprocess.sed new file mode 100644 index 0000000..9d8ac7a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/preprocess.sed @@ -0,0 +1,13 @@ +s!#VARTABLECOLS#!!g +s!#VARTABLEHEADER#!VariableVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30!g +s!#FUNCTABLEHEADER#!FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30!g +s!#newin11#!YYYYYYYYYY!g +s!#newin12#!-YYYYYYYYY!g +s!#newin13#!--YYYYYYYY!g +s!#newin14#!---YYYYYYY!g +s!#newin15#!----YYYYYY!g +s!#newin33#!-----YYYYY!g +s!#newin40#!------YYYY!g +s!#newin41#!-------YYY!g +s!#newin42#!--------YY!g +s!#newin43#!---------Y!g \ No newline at end of file diff --git a/upstream-man-pages/manglsl/xhtml/radians.xml b/upstream-man-pages/manglsl/xhtml/radians.xml new file mode 100644 index 0000000..af3b6d8 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/radians.xml @@ -0,0 +1,25 @@ + + + +radians - OpenGL Shading Language (GLSL)

Name

radians — convert a quantity in degrees to radians

Declaration

genType radians(genType degrees);

Parameters

degrees

+ Specify the quantity, in degrees, to be converted to radians. +

Description

+ radians converts a quantity, specified in degrees into radians. That is, + the return value is + + + + + ⋅degrees + + 180 + + . +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
radiansYYYYYYYYYY

See Also

+ degrees, +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/reflect.xml b/upstream-man-pages/manglsl/xhtml/reflect.xml new file mode 100644 index 0000000..ceb887e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/reflect.xml @@ -0,0 +1,21 @@ + + + +reflect - OpenGL Shading Language (GLSL)

Name

reflect — calculate the reflection direction for an incident vector

Declaration

genType reflect(genType I, genType N);

genDType reflect(genDType I, genDType N);

Parameters

I

+ Specifies the incident vector. +

N

+ Specifies the normal vector. +

Description

+ For a given incident vector I and surface normal N reflect returns + the reflection direction calculated as I - 2.0 * dot(N, I) * N. +

+ N should be normalized in order to achieve the desired result. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
reflect (genType)YYYYYYYYYY
reflect (genDType)------YYYY

See Also

+ dot, + refract +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/refract.xml b/upstream-man-pages/manglsl/xhtml/refract.xml new file mode 100644 index 0000000..d95fd51 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/refract.xml @@ -0,0 +1,32 @@ + + + +refract - OpenGL Shading Language (GLSL)

Name

refract — calculate the refraction direction for an incident vector

Declaration

genType refract(genType  I,
 genType  N,
 float  eta);
genDType refract(genDType  I,
 genDType  N,
 float  eta);

Parameters

I

+ Specifies the incident vector. +

N

+ Specifies the normal vector. +

eta

+ Specifies the ratio of indices of refraction. +

Description

+ For a given incident vector I, surface normal N and ratio of + indices of refraction, eta, refract returns the refraction vector, + R. +

+ R is calculated as: +

+

    k = 1.0 - eta * eta * (1.0 - dot(N, I) * dot(N, I));
+    if (k < 0.0)
+        R = genType(0.0);       // or genDType(0.0)
+    else
+        R = eta * I - (eta * dot(N, I) + sqrt(k)) * N;

+

+ The input parameters I and N should be normalized in order to achieve the desired result. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
refract (genType)YYYYYYYYYY
refract (genDType)------YYYY

See Also

+ dot, + reflect +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/round.xml b/upstream-man-pages/manglsl/xhtml/round.xml new file mode 100644 index 0000000..565fbb4 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/round.xml @@ -0,0 +1,20 @@ + + + +round - OpenGL Shading Language (GLSL)

Name

round — find the nearest integer less than or equal to the parameter

Declaration

genType round(genType x);

genDType round(genDType x);

Parameters

x

+ Specify the value to evaluate. +

Description

+ round returns a value equal to the nearest integer to x. + The fraction 0.5 will round in a direction chosen by the implementation, presumably the direction that is + fastest. This includes the possibility that round(x) returns the + same value as roundEven(x) + for all values of x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
round (genType)--YYYYYYYY
round (genDType)------YYYY

See Also

+ floor, + roundEven +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/roundEven.xml b/upstream-man-pages/manglsl/xhtml/roundEven.xml new file mode 100644 index 0000000..e30fbf2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/roundEven.xml @@ -0,0 +1,18 @@ + + + +roundEven - OpenGL Shading Language (GLSL)

Name

roundEven — find the nearest even integer to the parameter

Declaration

genType roundEven(genType x);

genDType roundEven(genDType x);

Parameters

x

+ Specify the value to evaluate. +

Description

+ roundEven returns a value equal to the nearest integer to x. + The fractional part of 0.5 will round toward the nearest even integer. + For example, both 3.5 and 4.5 will round to 4.0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
roundEven (genType)--YYYYYYYY
roundEven (genDType)------YYYY

See Also

+ floor, + round +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/sign.xml b/upstream-man-pages/manglsl/xhtml/sign.xml new file mode 100644 index 0000000..94f5062 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/sign.xml @@ -0,0 +1,20 @@ + + + +sign - OpenGL Shading Language (GLSL)

Name

sign — extract the sign of the parameter

Declaration

genType sign(genType x);

genIType sign(genIType x);

genDType sign(genDType x);

Parameters

x

+ Specify the value from which to extract the sign. +

Description

+ abs returns 1.0 if + x0.0, + 0.0 if + x0.0 and + 1.0 if + x0.0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
sign (genType)--YYYYYYYY
sign (genIType)----YYYYYY
sign (genDType)------YYYY

See Also

+ sign +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/sin.xml b/upstream-man-pages/manglsl/xhtml/sin.xml new file mode 100644 index 0000000..d01a2cd --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/sin.xml @@ -0,0 +1,15 @@ + + + +sin - OpenGL Shading Language (GLSL)

Name

sin — return the sine of the parameter

Declaration

genType sin(genType angle);

Parameters

angle

+ Specify the quantity, in radians, of which to return the sine. +

Description

+ sin returns the trigonometric sine of angle. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
sinYYYYYYYYYY

See Also

+ cos, +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/sinh.xml b/upstream-man-pages/manglsl/xhtml/sinh.xml new file mode 100644 index 0000000..e98b28c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/sinh.xml @@ -0,0 +1,41 @@ + + + +sinh - OpenGL Shading Language (GLSL)

Name

sinh — return the hyperbolic sine of the parameter

Declaration

genType sinh(genType x);

Parameters

x

+ Specify the value whose hyperbolic sine to return. +

Description

+ sinh returns the hyperbolic sine of + x. + The hyperbolic sine of x + is computed as + + + + + + e + x + + − + + e + + − + x + + + + 2 + + + . +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
sinh--YYYYYYYY

See Also

+ sin, + cos, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/smoothstep.xml b/upstream-man-pages/manglsl/xhtml/smoothstep.xml new file mode 100644 index 0000000..c21e133 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/smoothstep.xml @@ -0,0 +1,30 @@ + + + +smoothstep - OpenGL Shading Language (GLSL)

Name

smoothstep — perform Hermite interpolation between two values

Declaration

genType smoothstep(genType  edge0,
 genType  edge1,
 genType  x);
genType smoothstep(float  edge0,
 float  edge1,
 genType  x);
genDType smoothstep(genDType  edge0,
 genDType  edge1,
 genDType  x);
genDType smoothstep(double  edge0,
 double  edge1,
 genDType  x);

Parameters

edge0

+ Specifies the value of the lower edge of the Hermite function. +

edge1

+ Specifies the value of the upper edge of the Hermite function. +

x

+ Specifies the source value for interpolation. +

Description

+ smoothstep performs smooth Hermite interpolation between 0 and + 1 when edge0 < x < edge1. + This is useful in cases where a threshold function with a smooth transition is desired. + smoothstep is equivalent to: +

+

    genType t;  /* Or genDType t; */
+    t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
+    return t * t * (3.0 - 2.0 * t);
+

+

+ Results are undefined if edge0 ≥ edge1. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
smoothstep (genType)--YYYYYYYY
smoothstep (genDType)------YYYY

See Also

+ mix, + step +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/sqrt.xml b/upstream-man-pages/manglsl/xhtml/sqrt.xml new file mode 100644 index 0000000..0687b00 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/sqrt.xml @@ -0,0 +1,18 @@ + + + +sqrt - OpenGL Shading Language (GLSL)

Name

sqrt — return the square root of the parameter

Declaration

genType sqrt(genType x);

genDType sqrt(genDType x);

Parameters

x

+ Specify the value of which to take the square root. +

Description

+ sqrt returns the square root of x. i.e., the value + x. + Results are undefined if x0. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
sqrt (genType)YYYYYYYYYY
sqrt (genDType)------YYYY

See Also

+ pow, + inversesqrt +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/start.html b/upstream-man-pages/manglsl/xhtml/start.html new file mode 100644 index 0000000..6a65f73 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/start.html @@ -0,0 +1,58 @@ + + +OpenGL Shading Language (GLSL) Reference Pages + + + + +

OpenGL Shading Language (GLSL) Reference Pages

+ +

+These are the OpenGL Shading Language (GLSL) Reference Pages +

+ +

If you find any inaccuracies or typos in the reference pages, don't + hesitate to inform us via the feedback + form or using the + Khronos Bugzilla (you must first create a Bugzilla account, + however).

+ +.

+ + + diff --git a/upstream-man-pages/manglsl/xhtml/step.xml b/upstream-man-pages/manglsl/xhtml/step.xml new file mode 100644 index 0000000..4bbf902 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/step.xml @@ -0,0 +1,21 @@ + + + +step - OpenGL Shading Language (GLSL)

Name

step — generate a step function by comparing two values

Declaration

genType step(genType edge, genType x);

genType step(float edge, genType x);

genDType step(genDType edge, genDType x);

genDType step(double edge, genDType x);

Parameters

edge

+ Specifies the location of the edge of the step function. +

x

+ Specify the value to be used to generate the step function. +

Description

+ step generates a step function by comparing x to edge. +

+ For element i of the return value, 0.0 is returned if x[i] + < edge[i], and 1.0 is returned otherwise. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
step (genType)YYYYYYYYYY
step (genDType)------YYYY

See Also

+ mix, + smoothstep +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/tan.xml b/upstream-man-pages/manglsl/xhtml/tan.xml new file mode 100644 index 0000000..41e0d4a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/tan.xml @@ -0,0 +1,17 @@ + + + +tan - OpenGL Shading Language (GLSL)

Name

tan — return the tangent of the parameter

Declaration

genType tan(genType angle);

Parameters

angle

+ Specify the quantity, in radians, of which to return the tangent. +

Description

+ tan returns the trigonometric tangent of angle. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
tanYYYYYYYYYY

See Also

+ sin, + cos, + atan +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/tanh.xml b/upstream-man-pages/manglsl/xhtml/tanh.xml new file mode 100644 index 0000000..fa83545 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/tanh.xml @@ -0,0 +1,33 @@ + + + +tanh - OpenGL Shading Language (GLSL)

Name

tanh — return the hyperbolic tangent of the parameter

Declaration

genType tanh(genType x);

Parameters

x

+ Specify the value whose hyperbolic tangent to return. +

Description

+ tanh returns the hyperbolic tangent of + x. + The hyperbolic tangent of x + is computed as + + + + + sinh(x) + + + cosh(x) + + + + . +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
tanh--YYYYYYYY

See Also

+ sin, + cos, + sinh, + cosh +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/texelFetch.xml b/upstream-man-pages/manglsl/xhtml/texelFetch.xml new file mode 100644 index 0000000..6c8e3b0 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/texelFetch.xml @@ -0,0 +1,42 @@ + + + +texelFetch - OpenGL Shading Language (GLSL)

Name

texelFetch — perform a lookup of a single texel within a texture

Declaration

gvec4 texelFetch(gsampler1D  sampler,
 int  P,
 int  lod);
gvec4 texelFetch(gsampler2D  sampler,
 ivec2  P,
 int  lod);
gvec4 texelFetch(gsampler3D  sampler,
 ivec3  P,
 int  lod);
gvec4 texelFetch(gsampler2DRect  sampler,
 ivec2  P);
gvec4 texelFetch(gsampler1DArray  sampler,
 ivec2  P,
 int  lod);
gvec4 texelFetch(gsampler2DArray  sampler,
 ivec3  P,
 int  lod);
gvec4 texelFetch(gsamplerBuffer  sampler,
 int  P);
gvec4 texelFetch(gsampler2DMS  sampler,
 ivec2  P,
 sample  sample);
gvec4 texelFetch(gsampler2DMSArray  sampler,
 ivec3  P,
 sample  sample);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

lod

+ If present, specifies the level-of-detail within the texture from which the texel will be fetched. +

sample

+ For multisampled fetches, specifies which sample within the texel from which which will be returned. +

Description

+ texelFetch performs a lookup of a single texel from texture coordinate P + in the texture bound to sampler. The array layer is specified in the last component of + P for array forms. The lod parameter (if present) specifies the level-of-detail + from which the texel will be fetched. The sample specifies which sample within the texel will be + returned when reading from a multi-sample texure. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
texelFetch--YYYYYYYY
texelFetch (gsampler2DRect, gsamplerBuffer)---YYYYYYY
texelFetch (gsampler2DMS, gsampler2DMSArray)----YYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/texelFetchOffset.xml b/upstream-man-pages/manglsl/xhtml/texelFetchOffset.xml new file mode 100644 index 0000000..3849df5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/texelFetchOffset.xml @@ -0,0 +1,43 @@ + + + +texelFetchOffset - OpenGL Shading Language (GLSL)

Name

texelFetchOffset — perform a lookup of a single texel within a texture with an offset

Declaration

gvec4 texelFetchOffset(gsampler1D  sampler,
 int  P,
 int  lod,
 int  offset);
gvec4 texelFetchOffset(gsampler2D  sampler,
 ivec2  P,
 int  lod,
 int  offset);
gvec4 texelFetchOffset(gsampler3D  sampler,
 ivec3  P,
 int  lod,
 int  offset);
gvec4 texelFetchOffset(gsampler2DRect  sampler,
 ivec2  P,
 int  offset);
gvec4 texelFetchOffset(gsampler1DArray  sampler,
 ivec2  P,
 int  lod,
 int  offset);
gvec4 texelFetchOffset(gsampler2DArray  sampler,
 ivec3  P,
 int  lod,
 int  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

lod

+ If present, specifies the level-of-detail within the texture from which the texel will be fetched. +

offset

+ Specifies offset, in texels that will be applied to P before looking up the texel. +

Description

+ texelFetchOffset performs a lookup of a single texel from texture coordinate P + in the texture bound to sampler. Before fetching the texel, the offset specified in offset + is added to P. offset must be a constant expression. The array layer is specified in the last component of + P for array forms. The lod parameter (if present) specifies the level-of-detail + from which the texel will be fetched. The sample parameter specifies which sample within the texel will be + returned when reading from a multi-sample texure. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
texelFetchOffset--YYYYYYYY
texelFetchOffset (gsampler2DRect)---YYYYYYY
texelFetchOffset (gsampler2DMS, gsampler2DMSArray)----YYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/texture.xml b/upstream-man-pages/manglsl/xhtml/texture.xml new file mode 100644 index 0000000..a93ce34 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/texture.xml @@ -0,0 +1,50 @@ + + + +texture - OpenGL Shading Language (GLSL)

Name

texture — retrieves texels from a texture

Declaration

gvec4 texture(gsampler1D  sampler,
 float  P,
 [float  bias]);
gvec4 texture(gsampler2D  sampler,
 vec2  P,
 [float  bias]);
gvec4 texture(gsampler3D  sampler,
 vec3  P,
 [float  bias]);
gvec4 texture(gsamplerCube  sampler,
 vec3  P,
 [float  bias]);
float texture(sampler1DShadow  sampler,
 vec3  P,
 [float  bias]);
float texture(sampler2DShadow  sampler,
 vec3  P,
 [float  bias]);
float texture(samplerCubeShadow  sampler,
 vec3  P,
 [float  bias]);
gvec4 texture(gsampler1DArray  sampler,
 vec2  P,
 [float  bias]);
gvec4 texture(gsampler2DArray  sampler,
 vec3  P,
 [float  bias]);
gvec4 texture(gsamplerCubeArray  sampler,
 vec4  P,
 [float  bias]);
float texture(sampler1DArrayShadow  sampler,
 vec3  P,
 [float  bias]);
float texture(gsampler2DArrayShadow  sampler,
 vec4  P,
 [float  bias]);
gvec4 texture(gsampler2DRect  sampler,
 vec2  P);
float texture(sampler2DRectShadow  sampler,
 vec3  P);
float texture(gsamplerCubeArrayShadow  sampler,
 vec4  P,
 float  compare);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

bias

+ Specifies an optional bias to be applied during level-of-detail computation. +

compare

+ Specifies the value to which the fetched texel will be compared when sampling from gsamplerCubeArrayShadow. +

Description

+ texture samples texels from the texture bound to sampler at texture + coordinate P. An optional bias, specified in bias is included in + the level-of-detail computation that is used to choose mipmap(s) from which to sample. +

+ For shadow forms, when compare is present, it is used as + Dsub + and the array layer is specified in P.w. When compare is + not present, the last component of P is used as + Dsub and the + array layer is specified in the second to last component of P. (The second component of P + is unused for 1D shadow lookups.) +

+ For non-shadow variants, the array layer comes from the last component of P. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
texture--YYYYYYYY
texture (gsampler2DRect{Shadow})---YYYYYYY
texture (gsampler2DMS, gsampler2DMSArray)----YYYYYY
texture (gsamplerCubeArray{Shadow})------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureGather.xml b/upstream-man-pages/manglsl/xhtml/textureGather.xml new file mode 100644 index 0000000..461bbdb --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureGather.xml @@ -0,0 +1,48 @@ + + + +textureGather - OpenGL Shading Language (GLSL)

Name

textureGather — gathers four texels from a texture

Declaration

gvec4 textureGather(gsampler2D  sampler,
 vec2  P,
 [int  comp]);
gvec4 textureGather(gsampler2DArray  sampler,
 vec3  P,
 [int  comp]);
gvec4 textureGather(gsamplerCube  sampler,
 vec3  P,
 [int  comp]);
gvec4 textureGather(gsamplerCubeArray  sampler,
 vec4  P,
 [int  comp]);
gvec4 textureGather(gsampler2DRect  sampler,
 vec3  P,
 [int  comp]);
vec4 textureGather(gsampler2DShadow  sampler,
 vec2  P,
 float  refZ);
vec4 textureGather(gsampler2DArrayShadow  sampler,
 vec3  P,
 float  refZ);
vec4 textureGather(gsamplerCubeShadow  sampler,
 vec3  P,
 float  refZ);
vec4 textureGather(gsamplerCubeArrayShadow  sampler,
 vec4  P,
 float  refZ);
vec4 textureGather(gsampler2DRectShadow  sampler,
 vec3  P,
 float  refZ);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

comp

+ Specifies the component of the source texture that will be used to generate the resulting vector. +

refZ

+ Specifies the reference Z value used in the comparison for shadow forms. +

Description

+ textureGather returns the value: +

+

    vec4(Sample_i0_j1(P, base).comp,
+         Sample_i1_j1(P, base).comp,
+         Sample_i1_j0(P, base).comp,
+         Sample_i0_j9(P, base).comp);

+

+ If specified, the value of comp must ba constant integer expression with a value + of 0, 1, 2, or 3, identifying the x, y, z or w component of the four-component vector lookup result for each + texel, respectively. If comp is not specified, it is treated as 0, selecting the x + component of each texel to generate the result. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureGather------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureGatherOffset.xml b/upstream-man-pages/manglsl/xhtml/textureGatherOffset.xml new file mode 100644 index 0000000..f025c98 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureGatherOffset.xml @@ -0,0 +1,55 @@ + + + +textureGatherOffset - OpenGL Shading Language (GLSL)

Name

textureGatherOffset — gathers four texels from a texture with offset

Declaration

gvec4 textureGatherOffset(gsampler2D  sampler,
 vec2  P,
 ivec2  offset,
 [int  comp]);
gvec4 textureGatherOffset(gsampler2DArray  sampler,
 vec3  P,
 ivec2  offset,
 [int  comp]);
gvec4 textureGatherOffset(gsampler2DRect  sampler,
 vec3  P,
 ivec2  offset,
 [int  comp]);
vec4 textureGatherOffset(gsampler2DShadow  sampler,
 vec2  P,
 float  refZ,
 ivec2  offset);
vec4 textureGatherOffset(gsampler2DArrayShadow  sampler,
 vec3  P,
 float  refZ,
 ivec2  offset);
vec4 textureGatherOffset(gsampler2DRectShadow  sampler,
 vec3  P,
 float  refZ,
 ivec2  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

comp

+ Specifies the component of the source texture that will be used to generate the resulting vector. +

refZ

+ Specifies the reference Z value used in the comparison for shadow forms. +

offset

+ Specifies the offset from the specified texture coordinate P from which the texels will be gathered. +

Description

+ textureGatherOffset returns the value: +

+

    vec4(Sample_i0_j1(P + offset, base).comp,
+         Sample_i1_j1(P + offset, base).comp,
+         Sample_i1_j0(P + offset, base).comp,
+         Sample_i0_j9(P + offset, base).comp);

+

+ It perfoms as textureGather but with offset + applied as described in textureOffset, except that the + implementation-dependent minimum and maximum offset values are given by GL_MIN_PROGRRAM_TEXTURE_GATHER_OFFSET + and GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET, respectively. +

+ If specified, the value of comp must ba constant integer expression with a value + of 0, 1, 2, or 3, identifying the x, y, z or w component of the four-component vector lookup result for each + texel, respectively. If comp is not specified, it is treated as 0, selecting the x + component of each texel to generate the result. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureGatherOffset------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureGatherOffsets.xml b/upstream-man-pages/manglsl/xhtml/textureGatherOffsets.xml new file mode 100644 index 0000000..c2b7d05 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureGatherOffsets.xml @@ -0,0 +1,45 @@ + + + +textureGatherOffsets - OpenGL Shading Language (GLSL)

Name

textureGatherOffsets — gathers four texels from a texture with an array of offsets

Declaration

gvec4 textureGatherOffsets(gsampler2D  sampler,
 vec2  P,
 ivec2  offsets[4],
 [int  comp]);
gvec4 textureGatherOffsets(gsampler2DArray  sampler,
 vec3  P,
 ivec2  offsets[4],
 [int  comp]);
gvec4 textureGatherOffsets(gsampler2DRect  sampler,
 vec3  P,
 ivec2  offsets[4],
 [int  comp]);
vec4 textureGatherOffsets(gsampler2DShadow  sampler,
 vec2  P,
 float  refZ,
 ivec2  offsets[4]);
vec4 textureGatherOffsets(gsampler2DArrayShadow  sampler,
 vec3  P,
 float  refZ,
 ivec2  offsets[4]);
vec4 textureGatherOffsets(gsampler2DRectShadow  sampler,
 vec3  P,
 float  refZ,
 ivec2  offsets[4]);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

comp

+ Specifies the component of the source texture that will be used to generate the resulting vector. +

refZ

+ Specifies the reference Z value used in the comparison for shadow forms. +

offsets

+ Specifies an array of offsets from the specified texture coordinate P from which the texels will be gathered. +

Description

+ textureGatherOffsets operates identically to textureGatherOffset, + except that offsets is used to determine the location of the four texels to sample. Each of the four texels is obtained + by applying the offset in offsets as a (u, v) coordinate offset to P, identifying the four-texel + GL_LINEAR footprint, and then selecting the texel + i0i0 + of that footprint. The specified values in offsets must be set with constant integral expressions. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureGatherOffsets------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureGrad.xml b/upstream-man-pages/manglsl/xhtml/textureGrad.xml new file mode 100644 index 0000000..04e4672 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureGrad.xml @@ -0,0 +1,140 @@ + + + +textureGrad - OpenGL Shading Language (GLSL)

Name

textureGrad — perform a texture lookup with explicit gradients

Declaration

gvec4 textureGrad(gsampler1D  sampler,
 float  P,
 float  dPdx,
 float  dPdy);
gvec4 textureGrad(gsampler2D  sampler,
 vec2  P,
 vec2  dPdx,
 vec2  dPdy);
gvec4 textureGrad(gsampler3D  sampler,
 vec3  P,
 vec3  dPdx,
 vec3  dPdy);
gvec4 textureGrad(gsamplerCube  sampler,
 vec3  P,
 vec3  dPdx,
 vec3  dPdy);
gvec4 textureGrad(gsampler2DRect  sampler,
 vec2  P,
 vec2  dPdx,
 vec2  dPdy);
float textureGrad(gsampler2DRectShadow  sampler,
 vec2  P,
 vec2  dPdx,
 vec2  dPdy);
float textureGrad(sampler1DShadow  sampler,
 vec3  P,
 float  dPdx,
 float  dPdy);
float textureGrad(sampler2DShadow  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy);
gvec4 textureGrad(gsampler1DArray  sampler,
 vec2  P,
 float  dPdx,
 float  dPdy);
gvec4 textureGrad(gsampler2DArray  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy);
float textureGrad(sampler1DArrayShadow  sampler,
 vec3  P,
 float  dPdx,
 float  dPdy);
gvec4 textureGrad(gsamplerCubeArray  sampler,
 vec4  P,
 vec3  dPdx,
 vec3  dPdy);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

dPdx

+ Specifies the partial derivative of P with respect to window x. +

dPdy

+ Specifies the partial derivative of P with respect to window y. +

Description

+ textureGrad performs a texture lookup at coordinate P from the + texture bound to sampler with explicit texture coordinate gradiends as specified in + dPdx and dPdy. Set: +

+ + + δs + δx + + = + + δP + δx + +   for a 1D texture,  + + δP.s + δx + +   otherwise + +

+ + + δs + δy + + = + + δP + δy + +   for a 1D texture,  + + δP.s + δy + +   otherwise + +

+ + + δt + δx + + = + 0.0 +   for a 1D texture,  + + δP.t + δx + + otherwise + +

+ + + δt + δy + + = + 0.0 +   for a 1D texture,  + + δP.t + δy + +   otherwise + +

+ + + δr + δx + + = + 0.0 +   for a 1D or 2D texture,  + + δP.p + δx + +   otherwise + +

+ + + δr + δy + + = + 0.0 +   for a 1D or 2D texture,  + + δP.p + δy + +   otherwise + +

+ For the cube version, the partial derivatives of P are assumed to be + in the coordinate system used before texture coordinates are projected onto the appropriate + cube face. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureGrad--YYYYYYYY
textureGrad (gsampler2DRect{Shadow})---YYYYYYY
textureGrad (gsamplerCubeArray)------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureGradOffset.xml b/upstream-man-pages/manglsl/xhtml/textureGradOffset.xml new file mode 100644 index 0000000..242de33 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureGradOffset.xml @@ -0,0 +1,45 @@ + + + +textureGradOffset - OpenGL Shading Language (GLSL)

Name

textureGradOffset — perform a texture lookup with explicit gradients and offset

Declaration

gvec4 textureGradOffset(gsampler1D  sampler,
 float  P,
 float  dPdx,
 float  dPdy,
 int  offset);
gvec4 textureGradOffset(gsampler2D  sampler,
 vec2  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
gvec4 textureGradOffset(gsampler3D  sampler,
 vec3  P,
 vec3  dPdx,
 vec3  dPdy,
 ivec3  offset);
gvec4 textureGradOffset(gsampler2DRect  sampler,
 vec2  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
float textureGradOffset(gsampler2DRectShadow  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
float textureGradOffset(sampler1DShadow  sampler,
 vec3  P,
 float  dPdx,
 float  dPdy,
 int  offset);
float textureGradOffset(sampler2DShadow  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
gvec4 textureGradOffset(gsampler1DArray  sampler,
 vec2  P,
 float  dPdx,
 float  dPdy,
 int  offset);
gvec4 textureGradOffset(gsampler2DArray  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
float textureGradOffset(sampler1DArrayShadow  sampler,
 vec3  P,
 float  dPdx,
 float  dPdy,
 int  offset);
float textureGradOffset(sampler2DArrayShadow  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

dPdx

+ Specifies the partial derivative of P with respect to window x. +

dPdy

+ Specifies the partial derivative of P with respect to window y. +

offset

+ Specifies the offset to be applied to the texture coordinates before sampling. +

Description

+ textureGradOffset performs a texture lookup at coordinate P from the + texture bound to sampler with explicit texture coordinate gradiends as specified in + dPdx and dPdy. An explicit offset is also supplied in offset. + textureGradOffset consumes dPdx and dPdy as + textureGrad and offset as + textureOffset. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureGradOffset--YYYYYYYY
textureGradOffset (gsampler2DRect{Shadow})---YYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureLod.xml b/upstream-man-pages/manglsl/xhtml/textureLod.xml new file mode 100644 index 0000000..8c2af51 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureLod.xml @@ -0,0 +1,149 @@ + + + +textureLod - OpenGL Shading Language (GLSL)

Name

textureLod — perform a texture lookup with explicit level-of-detail

Declaration

gvec4 textureLod(gsampler1D  sampler,
 float  P,
 float  lod);
gvec4 textureLod(gsampler2D  sampler,
 vec2  P,
 float  lod);
gvec4 textureLod(gsampler3D  sampler,
 vec3  P,
 float  lod);
gvec4 textureLod(gsamplerCube  sampler,
 vec3  P,
 float  lod);
float textureLod(sampler1DShadow  sampler,
 vec3  P,
 float  lod);
float textureLod(sampler2DShadow  sampler,
 vec4  P,
 float  lod);
gvec4 textureLod(gsampler1DArray  sampler,
 vec2  P,
 float  lod);
gvec4 textureLod(gsampler2DArray  sampler,
 vec3  P,
 float  lod);
float textureLod(sampler1DArrayShadow  sampler,
 vec3  P,
 float  lod);
gvec4 textureLod(gsamplerCubeArray  sampler,
 vec4  P,
 float  lod);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

lod

+ Specifies the explicit level-of-detail +

Description

+ textureLod performs a texture lookup at coordinate P from the + texture bound to sampler with an explicit level-of-detail as specified in lod. + lod specifies + λbase + and sets the partial derivatives as follows: +

+ + + + + + + + δ + u + + + δ + x + + + = + 0 + , + + + + + + + δ + v + + + δ + x + + + = + 0 + , + + + + + + + δ + w + + + δ + x + + + = + 0 + + + + + + + + + δ + u + + + δ + y + + + = + 0 + , + + + + + + + δ + v + + + δ + y + + + = + 0 + , + + + + + + + δ + w + + + δ + y + + + = + 0 + + + + + +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureLod--YYYYYYYY
textureLod (gsampler2DRect{Shadow})---YYYYYYY
textureLod (gsamplerCubeArray)------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureLodOffset.xml b/upstream-man-pages/manglsl/xhtml/textureLodOffset.xml new file mode 100644 index 0000000..bae71f5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureLodOffset.xml @@ -0,0 +1,41 @@ + + + +textureLodOffset - OpenGL Shading Language (GLSL)

Name

textureLodOffset — perform a texture lookup with explicit level-of-detail and offset

Declaration

gvec4 textureLodOffset(gsampler1D  sampler,
 float  P,
 float  lod,
 int  offset);
gvec4 textureLodOffset(gsampler2D  sampler,
 vec2  P,
 float  lod,
 ivec2  offset);
gvec4 textureLodOffset(gsampler3D  sampler,
 vec3  P,
 float  lod,
 ivec3  offset);
float textureLodOffset(sampler1DShadow  sampler,
 vec3  P,
 float  lod,
 int  offset);
float textureLodOffset(sampler2DShadow  sampler,
 vec4  P,
 float  lod,
 ivec2  offset);
gvec4 textureLodOffset(gsampler1DArray  sampler,
 vec2  P,
 float  lod,
 int  offset);
gvec4 textureLodOffset(gsampler2DArray  sampler,
 vec3  P,
 float  lod,
 ivec2  offset);
float textureLodOffset(sampler1DArrayShadow  sampler,
 vec3  P,
 float  lod,
 int  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which the texture will be sampled. +

lod

+ Specifies the explicit level-of-detail from which texels will be fetched. +

offset

+ Specifies the offset that will be applied to P before texels are fetched. +

Description

+ textureLodOffset performs a texture lookup at coordinate P from the + texture bound to sampler with an explicit level-of-detail as specified in lod. + Behavior is the same as in textureLod except that before + sampling, offset is added to P. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureLodOffset--YYYYYYYY
textureLodOffset (gsampler2DRect{Shadow})---YYYYYYY
textureLodOffset (gsamplerCubeArray)------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureOffset.xml b/upstream-man-pages/manglsl/xhtml/textureOffset.xml new file mode 100644 index 0000000..545392b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureOffset.xml @@ -0,0 +1,45 @@ + + + +textureOffset - OpenGL Shading Language (GLSL)

Name

textureOffset — perform a texture lookup with offset

Declaration

gvec4 textureOffset(gsampler1D  sampler,
 float  P,
 int  offset,
 [float  bias]);
gvec4 textureOffset(gsampler2D  sampler,
 vec2  P,
 ivec2  offset,
 [float  bias]);
gvec4 textureOffset(gsampler3D  sampler,
 vec3  P,
 ivec3  offset,
 [float  bias]);
gvec4 textureOffset(gsampler2DRect  sampler,
 vec2  P,
 ivec2  offset);
float textureOffset(sampler2DRectShadow  sampler,
 vec3  P,
 ivec2  offset);
float textureOffset(sampler1DShadow  sampler,
 vec3  P,
 int  offset,
 [float  bias]);
float textureOffset(sampler2DShadow  sampler,
 vec4  P,
 ivec2  offset,
 [float  bias]);
gvec4 textureOffset(gsampler1DArray  sampler,
 vec2  P,
 int  offset,
 [float  bias]);
gvec4 textureOffset(gsampler2DArray  sampler,
 vec3  P,
 ivec2  offset,
 [float  bias]);
float textureOffset(sampler1DArrayShadow  sampler,
 vec3  P,
 int  offset);
float textureOffset(sampler2DArrayShadow  sampler,
 vec4  P,
 vec2  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

offset

+ Specifies offset, in texels that will be applied to P before looking up the texel. +

Description

+ textureOffset performs a texture lookup at coordinate P from the + texture bound to sampler with an an additional offset, specified in texels in offset + that will be applied to the (u, v, w) texture coordinates before looking up each texel. + The offset value must be a constant expression. A limited range of offset values are supported; + the minimum and maximum offset values are implementation-dependent and may be determined + by querying GL_MIN_PROGRAM_TEXEL_OFFSET and GL_MAX_PROGRAM_TEXEL_OFFSET, + respectively. +

+ Note that offset does not apply to the layer coordinate for texture arrays. Also note + that offsets are not supported for cube maps. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureOffset--YYYYYYYY
textureOffset (gsampler2DRect{Shadow})---YYYYYYY

Copyright

+ Copyright © 2011-2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureProj.xml b/upstream-man-pages/manglsl/xhtml/textureProj.xml new file mode 100644 index 0000000..c917a27 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureProj.xml @@ -0,0 +1,41 @@ + + + +textureProj - OpenGL Shading Language (GLSL)

Name

textureProj — perform a texture lookup with projection

Declaration

gvec4 textureProj(gsampler1D  sampler,
 vec2  P,
 [float  bias]);
gvec4 textureProj(gsampler1D  sampler,
 vec4  P,
 [float  bias]);
gvec4 textureProj(gsampler2D  sampler,
 vec3  P,
 [float  bias]);
gvec4 textureProj(gsampler2D  sampler,
 vec4  P,
 [float  bias]);
gvec4 textureProj(gsampler3D  sampler,
 vec4  P,
 [float  bias]);
float textureProj(sampler1DShadow  sampler,
 vec4  P,
 [float  bias]);
float textureProj(sampler2DShadow  sampler,
 vec4  P,
 [float  bias]);
gvec4 textureProj(gsampler2DRect  sampler,
 vec3  P);
gvec4 textureProj(gsampler2DRect  sampler,
 vec4  P);
float textureProj(gsampler2DRectShadow  sampler,
 vec4  P);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

bias

+ Specifies an optional bias to be applied during level-of-detail computation. +

Description

+ textureProj performs a texture lookup with projection. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in texture. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureProj--YYYYYYYY
textureProj (gsampler2DRect{Shadow})---YYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureProjGrad.xml b/upstream-man-pages/manglsl/xhtml/textureProjGrad.xml new file mode 100644 index 0000000..44db937 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureProjGrad.xml @@ -0,0 +1,44 @@ + + + +textureProjGrad - OpenGL Shading Language (GLSL)

Name

textureProjGrad — perform a texture lookup with projection and explicit gradients

Declaration

gvec4 textureProjGrad(gsampler1D  sampler,
 vec2  P,
 float  pDx,
 float  pDy);
gvec4 textureProjGrad(gsampler1D  sampler,
 vec4  P,
 float  pDx,
 float  pDy);
gvec4 textureProjGrad(gsampler2D  sampler,
 vec3  P,
 vec2  pDx,
 vec2  pDy);
gvec4 textureProjGrad(gsampler2D  sampler,
 vec4  P,
 vec2  pDx,
 vec2  pDy);
gvec4 textureProjGrad(gsampler3D  sampler,
 vec4  P,
 vec3  pDx,
 vec3  pDy);
float textureProjGrad(sampler1DShadow  sampler,
 vec4  P,
 float  pDx,
 float  pDy);
float textureProjGrad(sampler2DShadow  sampler,
 vec4  P,
 vec2  pDx,
 vec2  pDy);
gvec4 textureProjGrad(gsampler2DRect  sampler,
 vec3  P,
 vec2  pDx,
 vec2  pDy);
gvec4 textureProjGrad(gsampler2DRect  sampler,
 vec4  P,
 vec2  pDx,
 vec2  pDy);
float textureProjGrad(gsampler2DRectShadow  sampler,
 vec4  P,
 vec2  pDx,
 vec2  pDy);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

dPdx

+ Specifies the partial derivative of P with respect to window x. +

dPdy

+ Specifies the partial derivative of P with respect to window y. +

Description

+ textureProjGrad performs a texture lookup with projection and explicit gradients. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureGrad, + passing dPdx and dPdy as gradients. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureProjGrad--YYYYYYYY
textureProjGrad (gsampler2DRect{Shadow})---YYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureProjGradOffset.xml b/upstream-man-pages/manglsl/xhtml/textureProjGradOffset.xml new file mode 100644 index 0000000..472a8e5 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureProjGradOffset.xml @@ -0,0 +1,46 @@ + + + +textureProjGradOffset - OpenGL Shading Language (GLSL)

Name

textureProjGradOffset — perform a texture lookup with projection, explicit gradients and offset

Declaration

gvec4 textureProjGradOffset(gsampler1D  sampler,
 vec2  P,
 float  dPdx,
 float  dPdy,
 int  offset);
gvec4 textureProjGradOffset(gsampler1D  sampler,
 vec4  P,
 float  dPdx,
 float  dPdy,
 int  offset);
gvec4 textureProjGradOffset(gsampler2D  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
gvec4 textureProjGradOffset(gsampler2D  sampler,
 vec4  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
gvec4 textureProjGradOffset(gsampler3D  sampler,
 vec4  P,
 vec3  dPdx,
 vec3  dPdy,
 ivec3  offset);
float textureProjGradOffset(sampler1DShadow  sampler,
 vec4  P,
 float  dPdx,
 float  dPdy,
 int  offset);
float textureProjGradOffset(sampler2DShadow  sampler,
 vec4  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
gvec4 textureProjGradOffset(gsampler2DRect  sampler,
 vec3  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
gvec4 textureProjGradOffset(gsampler2DRect  sampler,
 vec4  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);
float textureProjGradOffset(gsampler2DRectShadow  sampler,
 vec4  P,
 vec2  dPdx,
 vec2  dPdy,
 ivec2  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

dPdx

+ Specifies the partial derivative of P with respect to window x. +

dPdy

+ Specifies the partial derivative of P with respect to window y. +

offset

+ Specifies the offsets, in texels at which the texture will be sampled relative to the projection of P. +

Description

+ textureProjGradOffset performs a texture lookup with projection and explicit gradients and offsets. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureGradOffset, + passing dPdx and dPdy as gradients, and offset as the offset. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureProjGradOffset--YYYYYYYY
textureProjGradOffset (gsampler2DRect{Shadow})---YYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureProjLod.xml b/upstream-man-pages/manglsl/xhtml/textureProjLod.xml new file mode 100644 index 0000000..288c478 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureProjLod.xml @@ -0,0 +1,42 @@ + + + +textureProjLod - OpenGL Shading Language (GLSL)

Name

textureProjLod — perform a texture lookup with projection and explicit level-of-detail

Declaration

gvec4 textureProjLod(gsampler1D  sampler,
 vec2  P,
 float  lod);
gvec4 textureProjLod(gsampler1D  sampler,
 vec4  P,
 float  lod);
gvec4 textureProjLod(gsampler2D  sampler,
 vec3  P,
 float  lod);
gvec4 textureProjLod(gsampler2D  sampler,
 vec4  P,
 float  lod);
gvec4 textureProjLod(gsampler3D  sampler,
 vec4  P,
 float  lod);
float textureProjLod(sampler1DShadow  sampler,
 vec4  P,
 float  lod);
float textureProjLod(sampler2DShadow  sampler,
 vec4  P,
 float  lod);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

lod

+ Specifies the explicit level-of-detail from which to fetch texels. +

Description

+ textureProjLod performs a texture lookup with projection from an explicitly specified level-of-detail. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureLod, + with lod used to specify the level-of-detail from which the texture will be sampled. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureProjLod--YYYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureProjLodOffset.xml b/upstream-man-pages/manglsl/xhtml/textureProjLodOffset.xml new file mode 100644 index 0000000..c367b17 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureProjLodOffset.xml @@ -0,0 +1,46 @@ + + + +textureProjLodOffset - OpenGL Shading Language (GLSL)

Name

textureProjLodOffset — perform a texture lookup with projection and explicit level-of-detail and offset

Declaration

gvec4 textureProjLodOffset(gsampler1D  sampler,
 vec2  P,
 float  lod,
 int  offset);
gvec4 textureProjLodOffset(gsampler1D  sampler,
 vec4  P,
 float  lod,
 int  offset);
gvec4 textureProjLodOffset(gsampler2D  sampler,
 vec3  P,
 float  lod,
 ivec2  offset);
gvec4 textureProjLodOffset(gsampler2D  sampler,
 vec4  P,
 float  lod,
 ivec2  offset);
gvec4 textureProjLodOffset(gsampler3D  sampler,
 vec4  P,
 float  lod,
 ivec3  offset);
float textureProjLodOffset(sampler1DShadow  sampler,
 vec4  P,
 float  lod,
 int  offset);
float textureProjLodOffset(sampler2DShadow  sampler,
 vec4  P,
 float  lod,
 ivec2  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which texture will be sampled. +

lod

+ Specifies the explicit level-of-detail from which to fetch texels. +

offset

+ Specifies the offset, in texels, to be applied to P before fetching texels. +

Description

+ textureProjLodOffset performs a texture lookup with projection from an explicitly specified level-of-detail with an offset applied + to the texture coordinates before sampling. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureLodOffset, + with lod used to specify the level-of-detail from which the texture will be sampled and offset + used to specifiy the offset, in texels, to be applied to the texture coordinates before sampling. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureProjLodOffset--YYYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureProjOffset.xml b/upstream-man-pages/manglsl/xhtml/textureProjOffset.xml new file mode 100644 index 0000000..29dd153 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureProjOffset.xml @@ -0,0 +1,44 @@ + + + +textureProjOffset - OpenGL Shading Language (GLSL)

Name

textureProjOffset — perform a texture lookup with projection and offset

Declaration

gvec4 textureProjOffset(gsampler1D  sampler,
 vec2  P,
 int  offset,
 [float  bias]);
gvec4 textureProjOffset(gsampler1D  sampler,
 vec4  P,
 int  offset,
 [float  bias]);
gvec4 textureProjOffset(gsampler2D  sampler,
 vec3  P,
 ivec2  offset,
 [float  bias]);
gvec4 textureProjOffset(gsampler2D  sampler,
 vec4  P,
 ivec2  offset,
 [float  bias]);
gvec4 textureProjOffset(gsampler3D  sampler,
 vec4  P,
 ivec3  offset,
 [float  bias]);
float textureProjOffset(sampler1DShadow  sampler,
 vec4  P,
 int  offset,
 [float  bias]);
float textureProjOffset(sampler2DShadow  sampler,
 vec4  P,
 ivec2  offset,
 [float  bias]);
gvec4 textureProjOffset(gsampler2DRect  sampler,
 vec3  P,
 ivec2  offset);
gvec4 textureProjOffset(gsampler2DRect  sampler,
 vec4  P,
 ivec2  offset);
float textureProjOffset(gsampler2DRectShadow  sampler,
 vec4  P,
 ivec2  offset);

Parameters

sampler

+ Specifies the sampler to which the texture from which texels will be retrieved is bound. +

P

+ Specifies the texture coordinates at which the texture will be sampled. +

offset

+ Specifies the offset that is applied to P before sampling occurs. +

bias

+ Specifies an optional bias to be applied during level-of-detail computation. +

Description

+ textureProjOffset performs a texture lookup with projection. The texture coordinates + consumed from P, not including the last component of P, + are divided by the last component of P. The resulting 3rd + component of P in the shadow forms is used as + Dref. + After these values are computed, the texture lookup proceeds as in textureOffset, + with the offset used to offset the computed texture coordinates. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureProjOffset--YYYYYYYY
textureProjOffset (gsampler2DRect{Shadow})---YYYYYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureQueryLevels.xml b/upstream-man-pages/manglsl/xhtml/textureQueryLevels.xml new file mode 100644 index 0000000..f273b5e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureQueryLevels.xml @@ -0,0 +1,35 @@ + + + +textureQueryLevels - OpenGL Shading Language (GLSL)

Name

textureQueryLevels — compute the number of accessible mipmap levels of a texture

Declaration

vec2 textureQueryLevels(gsampler1D  sampler);
vec2 textureQueryLevels(gsampler2D  sampler);
vec2 textureQueryLevels(gsampler3D  sampler);
vec2 textureQueryLevels(gsamplerCube  sampler);
vec2 textureQueryLevels(gsampler1DArray  sampler);
vec2 textureQueryLevels(gsampler2DDArray  sampler);
vec2 textureQueryLevels(gsamplerCubeArray  sampler);
vec2 textureQueryLevels(gsampler1DShadow  sampler);
vec2 textureQueryLevels(gsampler2DShadow  sampler);
vec2 textureQueryLevels(gsamplerCubeShadow  sampler);
vec2 textureQueryLevels(gsampler1DArrayShadow  sampler);
vec2 textureQueryLevels(gsampler2DArrayShadow  sampler);
vec2 textureQueryLevels(gsamplerCubeArrayShadow  sampler);

Parameters

sampler

+ Specifies the sampler to which the texture whose mipmap level count will be queried is bound. +

Description

+ textureQueryLevels returns the number of accessible mipmap levels + are in the texture associated with sampler. +

+ If called on an incomplete texture, or if no texture is associated with sampler, zero is returned. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureQueryLevels---------Y

Copyright

+ Copyright © 2012 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureQueryLod.xml b/upstream-man-pages/manglsl/xhtml/textureQueryLod.xml new file mode 100644 index 0000000..f1dd045 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureQueryLod.xml @@ -0,0 +1,40 @@ + + + +textureQueryLod - OpenGL Shading Language (GLSL)

Name

textureQueryLod — compute the level-of-detail that would be used to sample from a texture

Declaration

vec2 textureQueryLod(gsampler1D  sampler,
 float  P);
vec2 textureQueryLod(gsampler2D  sampler,
 vec2  P);
vec2 textureQueryLod(gsampler3D  sampler,
 vec3  P);
vec2 textureQueryLod(gsamplerCube  sampler,
 vec3  P);
vec2 textureQueryLod(gsampler1DArray  sampler,
 float  P);
vec2 textureQueryLod(gsampler2DDArray  sampler,
 vec2  P);
vec2 textureQueryLod(gsamplerCubeArray  sampler,
 vec3  P);
vec2 textureQueryLod(gsampler1DShadow  sampler,
 float  P);
vec2 textureQueryLod(gsampler2DShadow  sampler,
 vec2  P);
vec2 textureQueryLod(gsamplerCubeShadow  sampler,
 vec3  P);
vec2 textureQueryLod(gsampler1DArrayShadow  sampler,
 float  P);
vec2 textureQueryLod(gsampler2DArrayShadow  sampler,
 vec2  P);
vec2 textureQueryLod(gsamplerCubeArrayShadow  sampler,
 vec3  P);

Parameters

sampler

+ Specifies the sampler to which the texture whose level-of-detail will be queried is bound. +

P

+ Specifies the texture coordinates at which the level-of-detail will be queried. +

Description

+ Available only in the fragment shader, + textureQueryLod computes the level-of-detail that would be used to sample from + a texture. The mipmap array(s) that would be accessed is returned in the x component + of the return value. The computed level-of-detail relative to the base level is returned in the + y component of the return value. +

+ If called on an incomplete texture, the result of the operation is undefined. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureQueryLod------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/textureSize.xml b/upstream-man-pages/manglsl/xhtml/textureSize.xml new file mode 100644 index 0000000..e7550ab --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/textureSize.xml @@ -0,0 +1,37 @@ + + + +textureSize - OpenGL Shading Language (GLSL)

Name

textureSize — retrieve the dimensions of a level of a texture

Declaration

int textureSize(gsampler1D sampler, int lod);

ivec2 textureSize(gsampler2D  sampler,
 int  lod);
ivec3 textureSize(gsampler3D  sampler,
 int  lod);
ivec2 textureSize(gsamplerCube  sampler,
 int  lod);
int textureSize(sampler1DShadow  sampler,
 int  lod);
ivec2 textureSize(sampler2DShadow  sampler,
 int  lod);
ivec2 textureSize(samplerCubeShadow  sampler,
 int  lod);
ivec3 textureSize(samplerCubeArray  sampler,
 int  lod);
ivec3 textureSize(samplerCubeArrayShadow  sampler,
 int  lod);

ivec2 textureSize(gsamplerRect sampler);

ivec2 textureSize(gsamplerRectShadow  sampler);
ivec2 textureSize(gsampler1DArray  sampler,
 int  lod);
ivec3 textureSize(gsampler2DArray  sampler,
 int  lod);
ivec2 textureSize(sampler1DArrayShadow  sampler,
 int  lod);
ivec3 textureSize(sampler2DArrayShadow  sampler,
 int  lod);

int textureSize(gsamplerBuffer sampler);

ivec2 textureSize(gsampler2DMS sampler);

ivec3 textureSize(gsampler2DMSArray  sampler);

Parameters

sampler

+ Specifies the sampler to which the texture whose dimensions to retrieve is bound. +

lod

+ Specifies the level of the texture for which to retrieve the dimensions. +

Description

+ textureSize returns the dimensions of level lod (if present) + of the texture bound to sampler. The components in the return value are filled in, + in order, with the width, height and depth of the texture. For the array forms, the last component of the + return value is the number of layers in the texture array. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
textureSize--YYYYYYYY
textureSize (samplerBuffer, samplerRect{Shadow})---YYYYYYY
textureSize (samplerCube{Shadow})------YYYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/transpose.xml b/upstream-man-pages/manglsl/xhtml/transpose.xml new file mode 100644 index 0000000..a1a9957 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/transpose.xml @@ -0,0 +1,16 @@ + + + +transpose - OpenGL Shading Language (GLSL)

Name

transpose — calculate the transpose of a matrix

Declaration

mat2 transpose(mat2 m);

mat3 transpose(mat3 m);

mat4 transpose(mat4 m);

mat2x3 transpose(mat3x2 m);

mat2x4 transpose(mat4x2 m);

mat3x2 transpose(mat2x3 m);

mat3x4 transpose(mat4x3 m);

mat4x2 transpose(mat2x4 m);

mat4x3 transpose(mat3x4 m);

dmat2 transpose(dmat2 m);

dmat3 transpose(dmat3 m);

dmat4 transpose(dmat4 m);

dmat2x3 transpose(dmat3x2 m);

dmat2x4 transpose(dmat4x2 m);

dmat3x2 transpose(dmat2x3 m);

dmat3x4 transpose(dmat4x3 m);

dmat4x2 transpose(dmat2x4 m);

dmat4x3 transpose(dmat3x4 m);

Parameters

m

+ Specifies the matrix of which to take the transpose. +

Description

+ transpose returns the transpose of the matrix m. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
transpose (float)-YYYYYYYYY
transpose (double)------YYYY

See Also

+ determinant, + inverse +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/trunc.xml b/upstream-man-pages/manglsl/xhtml/trunc.xml new file mode 100644 index 0000000..c74160e --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/trunc.xml @@ -0,0 +1,17 @@ + + + +trunc - OpenGL Shading Language (GLSL)

Name

trunc — find the nearest integer less than or equal to the parameter

Declaration

genType trunc(genType x);

genDType trunc(genDType x);

Parameters

x

+ Specify the value to evaluate. +

Description

+ trunc returns a a value equal to the nearest integer to x + whose absolute value is not larger than the absolute value of x. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
trunc (genType)--YYYYYYYY
trunc (genDType)------YYYY

See Also

+ floor, + round +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/uaddCarry.xml b/upstream-man-pages/manglsl/xhtml/uaddCarry.xml new file mode 100644 index 0000000..5c192f9 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/uaddCarry.xml @@ -0,0 +1,24 @@ + + + +uaddCarry - OpenGL Shading Language (GLSL)

Name

uaddCarry — add unsigned integers and generate carry

Declaration

genUType uaddCarry(genUType  x,
 genUType  y,
 out genUType  carry);

Parameters

x

+ Specifies the first vector to be used in the summation operation. +

y

+ Specifies the second vector to be used in the summation operation. +

carry

+ Specifies the variable to receive the carry output of the sum. +

Description

+ uaddCarry adds two 32-bit unsigned integer variables (scalars or vectors) and generates + a 32-bit unsigned integer result, along with a carry output. The result is the sum of x and + y modulo 232. + The value carry is set to 0 if the sum is less than + 232 + and to 1 otherwise. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
uaddCarry------YYYY

See Also

+ usubBorrow +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/uintBitsToFloat.xml b/upstream-man-pages/manglsl/xhtml/uintBitsToFloat.xml new file mode 100644 index 0000000..e1bf729 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/uintBitsToFloat.xml @@ -0,0 +1,12 @@ + + + + + + + +uintBitsToFloat.xml + + + + diff --git a/upstream-man-pages/manglsl/xhtml/umulExtended.xml b/upstream-man-pages/manglsl/xhtml/umulExtended.xml new file mode 100644 index 0000000..6e6803d --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/umulExtended.xml @@ -0,0 +1,25 @@ + + + +umulExtended - OpenGL Shading Language (GLSL)

Name

umulExtended — perform a 32- by 32-bit multiply to produce a 64-bit result

Declaration

void umulExtended(genUType  x,
 genUType  y,
 out genUType  msb,
 out genUType  lsb);
void imulExtended(genIType  x,
 genIType  y,
 out genIType  msb,
 out genIType  lsb);

Parameters

x

+ Specifies the first multiplicand. +

y

+ Specifies the second multiplicand.. +

msb

+ Specifies the variable to receive the most significant word of the product. +

lsb

+ Specifies the variable to receive the least significant word of the product. +

Description

+ umulExtended and imulExtended perform multiplication of the two 32-bit integer + quantities x and y, producing a 64-bit integer result. The 32 least + significant bits of this product are returned in lsb and the 32 most significant bits are returned + in msb. umulExtended and imulExtended perform + unsigned and signed multiplication, respectively. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
umulExtended------YYYY

See Also

+ uaddCarry +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/unpackDouble2x32.xml b/upstream-man-pages/manglsl/xhtml/unpackDouble2x32.xml new file mode 100644 index 0000000..b08793b --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/unpackDouble2x32.xml @@ -0,0 +1,19 @@ + + + +unpackDouble2x32 - OpenGL Shading Language (GLSL)

Name

unpackDouble2x32 — produce two unsigned integers containing the bit encoding of a double precision floating point value

Declaration

uvec2 unpackDouble2x32(double d);

Parameters

d

+ Specifies double precision value to break into a pair of unsigned integers. +

Description

+ unpackDouble2x32 returns a two-component unsigned integer vector + representation of d. The bit-level representation of d is + preserved. The first component of the returned vector contains + the 32 least significant bits of the double; the second + component consists the 32 most significant bits. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
unpackDouble2x32------YYYY

See Also

+ packDouble2x32 +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/unpackHalf2x16.xml b/upstream-man-pages/manglsl/xhtml/unpackHalf2x16.xml new file mode 100644 index 0000000..a25cfdc --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/unpackHalf2x16.xml @@ -0,0 +1,25 @@ + + + +unpackHalf2x16 - OpenGL Shading Language (GLSL)

Name

unpackHalf2x16 — convert two 16-bit floating-point values packed into a single 32-bit integer into a vector of two 32-bit floating-point quantities

Declaration

vec2 unpackHalf2x16(uint v);

Parameters

v

+ Specify a single 32-bit unsigned integer values that contains two 16-bit floating point values to be unpacked. +

Description

+ unpackHalf2x16 returns a two-component floating-point vector with + components obtained by unpacking a 32-bit unsigned + integer into a pair of 16-bit values, interpreting those + values as 16-bit floating-point numbers according to the + OpenGL Specification, and converting them to 32-bit + floating-point values. + The first component of the vector is obtained from the + 16 least-significant bits of v; the second component is + obtained from the 16 most-significant bits of v. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
unpackHalf2x16--------YY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/unpackSnorm2x16.xml b/upstream-man-pages/manglsl/xhtml/unpackSnorm2x16.xml new file mode 100644 index 0000000..f5729e7 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/unpackSnorm2x16.xml @@ -0,0 +1,12 @@ + + + + + + + +unpackSnorm2x16 + + + + diff --git a/upstream-man-pages/manglsl/xhtml/unpackSnorm4x8.xml b/upstream-man-pages/manglsl/xhtml/unpackSnorm4x8.xml new file mode 100644 index 0000000..1e3da15 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/unpackSnorm4x8.xml @@ -0,0 +1,12 @@ + + + + + + + +unpackSnorm4x8 + + + + diff --git a/upstream-man-pages/manglsl/xhtml/unpackUnorm2x16.xml b/upstream-man-pages/manglsl/xhtml/unpackUnorm2x16.xml new file mode 100644 index 0000000..55d1869 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/unpackUnorm2x16.xml @@ -0,0 +1,26 @@ + + + +unpackUnorm - OpenGL Shading Language (GLSL)

Name

unpackUnorm2x16, unpackUnorm4x8, unpackSnorm4x8 — unpack floating-point values from an unsigned integer

Declaration

vec2 unpackUnorm2x16(uint p);

vec2 unpackSnorm2x16(uint p);

vec4 unpackUnorm4x8(uint p);

vec4 unpackSnorm4x8(uint p);

Parameters

p

+ Specifies an unsigned integer containing packed floating-point values. +

Description

+ unpackUnorm2x16, unpackSnorm2x16, unpackUnorm4x8 and unpackSnorm4x8 unpack + single 32-bit unsigned integers, specified in the parameter p into a pair of 16-bit unsigned integers, + four 8-bit unsigned integers or four 8-bit signed integers. Then, each component is converted to a normalized floating-point + value to generate the returned two- or four-component vector. +

+ The conversion for unpacked fixed point value f to floating-point is performed as follows: +

  • packUnorm2x16: f / 65535.0
  • packSnorm2x16: clamp(f / 32727.0, -1.0, 1.0)
  • packUnorm4x8: f / 255.0
  • packSnorm4x8: clamp(f / 127.0, -1.0, 1.0)

+

+ The first component of the returned vector will be extracted from the least significant bits of the input; + the last component will be extracted from the most significant bits. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
unpackUnorm2x16-------YYY
unpackSnorm2x16--------YY
unpackUnorm4x8-------YYY
unpackSnorm4x8-------YYY

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/unpackUnorm4x8.xml b/upstream-man-pages/manglsl/xhtml/unpackUnorm4x8.xml new file mode 100644 index 0000000..db3f48c --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/unpackUnorm4x8.xml @@ -0,0 +1,12 @@ + + + + + + + +unpackUnorm4x8 + + + + diff --git a/upstream-man-pages/manglsl/xhtml/usubBorrow.xml b/upstream-man-pages/manglsl/xhtml/usubBorrow.xml new file mode 100644 index 0000000..a68d1f4 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/usubBorrow.xml @@ -0,0 +1,23 @@ + + + +usubBorrow - OpenGL Shading Language (GLSL)

Name

usubBorrow — subtract unsigned integers and generate borrow

Declaration

genUType usubBorrow(genUType  x,
 genUType  y,
 out genUType  borrow);

Parameters

x

+ Specifies the first vector to be used in the subtraction operation. +

y

+ Specifies the second vector to be used in the subtraction operation. +

borrow

+ Specifies the variable to receive the borrow output of the difference. +

Description

+ usubBorrow subtracts two 32-bit unsigned integer variables (scalars or vectors) and generates + a 32-bit unsigned integer result, along with a borrow output. The result is the difference of x and + y if non-negative, or 232 + plus that difference otherwise. + The value borrow is set to 0 if x ≥ y and to 1 otherwise. +

Version Support

FunctionVersion 1.10Version 1.20Version 1.30Version 1.40Version 1.50Version 3.30Version 4.00Version 4.10Version 4.20Version 4.30
usubBorrow------YYYY

See Also

+ uaddCarry +

Copyright

+ Copyright © 2011 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/. +

diff --git a/upstream-man-pages/manglsl/xhtml/xhtml-lat1.ent b/upstream-man-pages/manglsl/xhtml/xhtml-lat1.ent new file mode 100644 index 0000000..ffee223 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/xhtml-lat1.ent @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/xhtml-special.ent b/upstream-man-pages/manglsl/xhtml/xhtml-special.ent new file mode 100644 index 0000000..ca358b2 --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/xhtml-special.ent @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/xhtml-symbol.ent b/upstream-man-pages/manglsl/xhtml/xhtml-symbol.ent new file mode 100644 index 0000000..63c2abf --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/xhtml-symbol.ent @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/manglsl/xhtml/xhtml1-transitional.dtd b/upstream-man-pages/manglsl/xhtml/xhtml1-transitional.dtd new file mode 100644 index 0000000..628f27a --- /dev/null +++ b/upstream-man-pages/manglsl/xhtml/xhtml1-transitional.dtd @@ -0,0 +1,1201 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/upstream-man-pages/update b/upstream-man-pages/update new file mode 100755 index 0000000..58b3047 --- /dev/null +++ b/upstream-man-pages/update @@ -0,0 +1,8 @@ +#!/bin/sh + +base_url=https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/docs + +for i in man2 man3 man4 manglsl; do + rm -rf $i + svn export $base_url/$i +done -- 2.20.1

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˞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 +N5oRiQ_avM>w`YTaMn`eN6$4907cCO-p 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%0A@~hEd9myHOpYPT4 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˞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 +N5oRiQ_avM>w`YTaMn`eN6$4907cCO-p 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%0A@~hEd9myHOpYPT4 z%CDt6JuA1~Hul25$!+Y}_3Pi*L{_CGjvTaVLDwNWW-e{Fpl@>2{X1GVPg$kix&doS z>CCDPdUg+|WxJP_4!Ch2}LkGtbguII>C={P-PbRsal)<^}~Drxd)(V0egJ!esYKv(!nXuZT^YS zFV8n6_i2}+_C53Tu4fpQbO7#9_+_sHt{FGHW5W1R`F+19Ssmx~Kw#N<-@hOAH$gs` zd!9T7BCkFJLAepD&`zepX>sqH_@Jkc{K~f<(xn((-uKSx6@Rebj5-dWtX-0Fkw4#V z69rS?6Pr?p%B_ETbn|DPWAc3@{M6sSEniP$68`84_BUR7zxiuTdFUr|o@g$%ALIiPG|Ti+yMj}hA~?;%ckKeqLL_QPGgc7NQ(zRz4cFpeYG4#v^n&+)Aq zBL6z^K}}Ug17U6B3i9JSeA$lR4aXa6+d**+wd#TWptP@`w1!Im{LwY}?G9{5$>Uu> zs$i5Ts=fQ%t0`0Z9h6@Ns{lZI@8nx6Zrw~f8vOc#w#M8b*40T(_DE3}ZA6)^ScU0< zv+=5IqHA$?9NtGZ*3`o0A_x?1y@j?$C}|N~8YGLh0J*BG(H7F6zgVBgSy4wia6xP#pdo=P3gE;cV zbgmC3Re86D4+<6OoS#VNU6(5!3Umo!uO_o;Xeht(TXh8w$#G^Dc~vK>rcISW~;Xv_^Yj|Te3+8{vuuA zZ=_4}syCU}^SJAgS!$Uw8}JwE`cwV9r9|xkIQas9Je6P5;mBQ(KO?e0PbaOE*?PK? zqLv}Ooj1L+`~&#ogP)_8;dy=V@f7FU3qA+H&%vhVvO3`Bkj~0kz<-8?sLkZtgnZ4? z4#4jy@aO5B^>q52^nlG2QRLPC&Ps`#Wy^@TPT<*whE})Z@L6Z%=jpKfyj|$&e(*Et zQYo$u_?a}L`rkhI)$Ib{XOfjV{OWcA@V)7N@U!V^X>}d&vuT`^Va>hzr;f1h00E@KjaTN1^DCC1@IH;@K1MwpZ&c0fTw!8{I&`{ z^L*$>{y)~<1F)(hiyNQ0?Y;CKAcPcBfh2?!LV!SkP(!bww@7aR=~9A9SHLI=B4*K5 zL$M=aweo8m;Tj`Mh=WWfjaKK$7^eH`m41EgeOTtb8Oyv_pa`LjpQS`>;J(!|% zV-k;}Fp&i_f4V8hbThQ%n!01+3-2B|u~I+W(b4I`l*b*Xb|wV3*3W18CX`CwxnAlX zp~XtwBa>ScmORj@?d16JjTZH8-!pjv_gg<|%-ZFhoA&RN7nRYqGrzB3KtlY&=DhW> z+cBwrjpCAA9isw+9SvJFTU01?Eo_Is5$>Uj4cWsOv_d>Dp=YCQwick>0Qo$qA=+rB ze~k3xknaWU#9NY4f+x~{pxj{t=71zdy0Su~BS%d-tI!XrJtUl$ryBFC3XBykq^=C6 zgmHI}K@-rZK0+#=r!|hu%57h~s(Vv;_@e)eA9Zh;?r7;~b#6rOl76R(* zeW4?BX2sdgjgzMHiTfW~_saF$hT)lC-ZRH>f$$?4DOBb{hmEbirFQ^6u!c;YxAsgA z-AFv9cG4I{r=uj1-Aa5FQw!dr$5SH`CZ@G=3?1r7Yc=iTk6$zM)7V90ymx++>%2vu zCyZjP(kAB3+G-V^)+)^bJTM0RqMnd@0k44uU-X;Wo00^+J#5ey`}V|`7V@j$M+Tdy zUm?2dSHzf^9P(RDI^)hc__~_eX3<IL6i=Wl(cU70*}`NH{VCTs(y zDe`7BUv8Fy9lVL3@wcvjqZepbw$ER;$4*V%JYlcH0+u(k3 ziUDVQes`q?&UFJ$TCp1r=w(-qN&U6$=)Hrh(+IR7gVGG7C9AN*tT*nwE~E@G@}k{S zF_xzB>EiU88V4Xa%;UkJ;#Cii8s^}=^T3@^!yalO;4`}(DfO@Z4RD59bsBi6dyqEF zN)zMs45XzPY2c}07uuDhz?twU@y?616eF!Bul{e;^>^eQUXvGTGnfN;MVghj`j&D* zD%EZw?}(bbXx|K^r5I^eUe-|gLTYc*kawhaUZh!c6K_DbXV?%qM*b(twiNU|1eg!n z?gz|K)lK**q+=Wh-L3TGP;df}#aoo00RcO0&qw~zp7|+VdI0HGe(~1mi|C_=ME+BE z^wC4ezfr&+U5&Q{A9mzv=&}@bOf_ac7Cw|NJ%DrzzIcoLqK}#I4ISXo*W}lbAAJq@ zk7gyVB14||`^vY_fxnvdde|`{UGzD$PNcJwXzyautwa~d7@i3ak}=wTStDjA9YV&o z_aDaRDSxS&PD)_ZJw!|3xXZMq)8%}97hqYo^e$mbTeh5dOE^L=c-qqG>~n9uVA{H7 zI@?hFwp=M}&J1>2*oyr{y<0FYj6r&G=vrzkPNN(nKS219?TRrqB`gDrh3jkZA=?${ z7Cz#wNwZ(%e;-MyVG_`CYucSq{H%m&!DH5?UXJBSoHL=oy>GMd|~r}=cdhvvmS5;0TyfM z>#`KX0*H*yGQWz*rElGvif^}b6Y=>(L{l4`uBS$(wklsbut4iMcf#kr%6ZR|SGL~P z$GmX=m2vC*1IBJ#GnNORMjBS$LV}!%8wRA_&!G`^hIM9c!s z!or$4I=0>(FtT#&LXtz$N7N=d$&e1V#_9pC)5vN7WiN(ZIwnMnZ+WfdL4zg_d3E4l zdKB;4%cX0*OP=esrT8DutStSqe9FCJq$Uj-gyDOA2d0iW6Sg*O)v+0*`v=$O{t|5|(*uhdVYlsKJ(85o$De<{+ctf77?->t1j2qd=r%|`1PsfByQu|k? z@97Z5qr3ASzrFh2wO5iGCS~rN@$j;O?|1ZSzZ^}XeugzaU$m(e*??|o7gnQzt!QOl zYtc&T4?;bdF<;rDP49`TiYKP^ccitLGBeF=%c$Z>NeLbE)`ez{E9x|%NBi~d;xim+ z{Yy{mC@h`0Wb&zZv-ZFl6G=FqEgRL)r%}NJJK`I*N;UAY ziHN4SylQV&HQtRGE5+7Xsa2)S;l{7c9XWWz}JHRKv&6XaUFrM^n^74i<- zozkWCVm^m-Tb@YAcwUoEGUgK|eS>}g&mR2t^!$bN4QtO}k2T}842hN4I;9E|xNHql zg}z~&eTp?(tKVSyCS&>4M)F5$Oq;J?PtHm2RdT~yye5s@)gnISMIPvzI&bNWiXJ7) z#vf}Q7+f&0c-8%rqc4W`UcP(FYd@C1#-(*hF;T(CRzBIsTfmCe&sb5hJ}56W>ya5_ zx;5oeQupurbo2Lvu@JRD${R4_RL7Cs)`Y2O8|ip0OZpn?IvEf}136kKPG~CAqFag= zzs+`GrCFR3C0`PV9NUnT+54D&y;t8(DU@)?gW88Kz@3!%SC44q1Ejd4QD66sjc7rORSD;;|o zN#Bj|OlO?&jr&$hj=1*2(nY$l1-icmVaN3g(y21%A!k$IpLy57{c@Y#-! zdHATJ`BRU3wA}TbB|Mq^m%QvyM^y##juYcky8hsn5l6?-MUamH;EKr?^$KwC$G4KO zPE7HodctV+4JK+0Mw*oG34Xror2Z@Sv+#g0xMAy$c-AdMz?8>l|F7FCw?TV7>iPfC zUhvZ50mdl#Z(_^_FN}2J1$Z{j;2FI&cue#``gkKVeEN)noeQL`ZN_EejzZD}^6yG>+~>javdGjTdow!%cg+b!kDDB^u|2o_U(Ofj zlw4d^^~tdggSzGQ;&J$vd)L7d$LNObN;h)*vOX`YtIp{bU+#G8S%)P*@=dfak#>Z+ zy&R$f+OI;5G!%+kRZ3!;N(1_&lHWLWe!;luo!h03FTyu@Q-aLq?>e$2QB$Nl(woYZjZHGNDgwTB<`DV)Kt{GInf}IDf%M zL2vkn!C$@*`d{z?{5AMOHr*7nPrhK;bn@@yPY#`GrlXX>cloBU^`@EW&rp8DZ!GR; zPgj4f?U$zfre7Lw-S9gizvY)s=P%UwrBUAUOQ-YKgkO5P-d%lCz|W8e3iz`{yQb@Y z+6jdtf4;ycLw-P>ZsKXcZ)>D``n?5w_?@AfGI$#Se{=Oa>RF+KdJFl)v-Sb{WIQW^ zd|GF187y-fsx)XAn>4~S{KBzU%KfL)OpS^0#~RPlFwSQsv?m8;3tJp|>&X-Bz|!nLSVmjERp94fYKxnbkbSuf#Vh zDh5Y@MYqftkldnb4h*iClGDYxZPP|&Bs6Y0rYGm}%f>u;DH&UajKi->=ett%EKmg80(mlm}t3C7qqBxqw0s3E-ky~NvkgMnF`H) zm%1#Q2?i;Qiu!8x^6Ex})QdokA2*{hp#gc^q`#v!6#VQ%c+s<#0K5{>8^uN%Pt#dg ze2H?hhhJI=?Q5`LPT$bRi}kA2Lnd~`QSrRc(doI=p8aR;>$&_(Wtu_e?2OcxJ2#CS z$wSwVnm2EG=isKor$M@f??;{RX>f7Cq?kEk-wWSAtp9d08d^E{yo2|QBHt)JJTiGD z9YYyU-ze>rvC!p%`aEHj6mAjIH>x~lU}Cg=qaLn|k$yoR?~4S9;aQz5-HUw`z$-}z zry;pCoJE9_)19nq{KifW+Eph+gN9rBPt4Dx2}^pXMdWG`?NT$^H7?>Of&v~aKJ-vl zaiez@bs8b<>NBdx;6159smW7|SMA^3JTkv+!|;+2|Hef{sV@ZD`}d9R8`V#*;4@#E zl-E4<(FZyvc7LTy8oarLA8gfk<>#cC*fUGqAzTa#Oc<2Ls9%FMc465xxpaKRd$S6s zRNk92ObuT%X25}w<6Sp9Jl!%ZC$)J=#>gOB&ZG&Mj_$1v^=~tHxMNe_uA#YIi<6tR zACEHuQQv#YtEjJup_|?HkzPjYJ=ucVH`zJmW>q?7;u zIDBf@kV1Bp)Dde}VqJl+fqw|PoPADXHTjQ>bm2FuNe90HNBFTM@=aon0C^DpE6jC# ziQdA?fp*~w&#+{C%8x#=Wzi8lWiNAWUB0G3uM4Q+-#j8g2Oiy0F zqfOh_FV5sq&0A&N7s7>$>$!WDL#1`L#2Q)71QIL_8lingBCTYQ1 zzo}jO77iXX!Y3v0XwfV0|1&3lazWXQW)5DIlu|J@Ff5}>Onm#kWRn7SJwQGqy(nl# zBRXmL+#Deip@z%=J!~nrP)?Q;a#dkNh$iwuVa>0i0t1#cXc_%mdMLPI zM*H?%0zwK~@_E0V>ei@y(9{#?tWzJ@-C;rchU{s+l5gV!?K%zX`e0;$qj!G)m}XH; z+7!1=RUCXr`Jk3V9lggsD%%>i7``Sp|Hx=Cn= z&AXz@8EzoAFo3H-8C}zRxlrjnlDBLUla|wea7^?0!&b&6B+Q*NBPuZ{y;DzFE?fD@ z@F~aV>z`tw@VU;fjO_DRe0F?`0DEe?f==zn1Zu0#IQITk3rWaq9J6%7&~dT;%_ehg z+lUd{=Jt)X2Z_Fdd9PSof)5wB3iyM*mfzc7tTDOM|G%s?fo~br*X1|0A7NK*qdu*U z(zo(7BVGAKq;L01|C;jKo^j_NZRSV1@`*?{@|)?b0sL8S3j5oDKSqB?v9r^YE|GY+BbNo;}^^ev7<1idaymx)?0kX*c|&Cm5A)z6nwlvS{&!PQU`@RX|@Ps z6K}W{BsTFVQL@viI2C#81x?fJVGYtsMm0_R%rW`onDMXln{j`3{)iE6Y`sMmr)!_C zS1iqGAJHf(w#Cp9g}2@YHIzN8K8g ztlbvtJ?LoQA*iF=(Pk^3)n??sE4?kgAip77-t@M3Op-!WM2s5ltlMa_MZKDQqMT=2 z+`O(6qBp(0C}_ddh~jnR^Twdgw$usFZI6`HH+7LrFY#{UaODcxf0S-o8DgS04zh& zHIj`w;nnI11}2_up^|_jC}_zqXdr5?BcDf`Em`z#b3O1(PJ83%&TGk|&^dp)Zc(ZZ z90iRmdJ8N?&U)%L>a^&12ff`mdglYgI^lWHn`*9?-iBl9b;SrqO<_{(J_7-P%#)tOG}@ zUT~4*0|&vwdisn(Kcmfe!I5x9D+FA~xtX(0 zIvRBvQhE1$fN5%zyXCX$^n&O~Z=#1(`N#H&na}D0mj1be-c~+}tv)S!g6NOlZN9Va zn%-Xrjy3Xa^zC}%qD(+6#=tgkH|{a+)Pe<~mF zs4L$c^hUng_Fye~BS+mj%AJqeY-x)+`hl6Rrp;au>%`Nbv;|YN`Y!p*o<;nuuPwl# zvIa-ONcYkco;dP24?R&gy^R_zDK~r8-RMp50oO+StII|}-?HS^)F(!X`d|WRPfzJQp zBqLB#?F(4`@Z3gYhf5M`j-71yWDIVhNF17)5Rao(vhqTb6L7pr>ukidhDZk?wxmBP z=cGyB-aeu0H>+H$`R4E2WoNhh{=>w$xI~wJUP`!hsl%m9>eUl3e?5A<{>3|=z%9Sj zCM~o{YhBl5DOMtUszQpceO80W5VL&=oH#!xFg5F z1NF-s-_)i2Tax)fzEz*1_jkGYBYfhom6gBgbIx<=?aw~LX{C?rEA{32R%&%8WkV-X z*YwBuQeK8ntH_^7Z674)2pHR=fSyI@wBn>9N#Rm}47WFbq-yXJTgP92{do5oJb1-qU)By^R?C2l&96-u(py8tZ*a>9a<1%f)nF-|I)R4XTPvJxqQc-SqFB?LGS5r?V9=Mtn=se&-F09>N7t1 zg(d4}pFe^fOK+>`BlYv!n?amVe_Lft^%+8~ySCctZNkqhI1M^||jjPpF4oH}pBK>uy=xq?S>eWcD)X{R_&` zcdt#TWUws}AC`v%tI1(>A7VJ2`+|?s>6Dic+T$APdJ6h} zDZW2_OIeC<7@A@Q0N5{}vrHP67#y$|oAGS?MD2;6x z6z&`r797@C9u$?d^80V@$7elt&;)wg{&Gevrt5 z^EW{j*MgwPe4@%2Id!$G95fj{HZZbJ@n56l!_t`lUEf_go)<~MylA{WVrTKZeg$#z z>bQbc(o+UaoUP?mtDfH3>)t6-(XVhWi?R$f3Bzt!^5w^e5gUj$VoU|&BDjWgV#DGy zI5?#&b8XOSA}He0F=E4{`Rwb@XbpZ7>K&VutB)u(uPn^{7;Ma%5Y6`1Y%6 z?^5?^C6~l)fLIth$$-F&c+_(>wLWit`Iw)dbGkgIN%~4Xab>zZ(D_JodO81eC59zW z-QXUplF(Fxea3Jl#wug9q61JkW^_dJb38dP^@m|GrvU;h~pzyY^{z zsAY4o;?EgsnFgy>uGwmj+YVUl=WEomhu*4%8!2I-tXgyEMf?|nfy)>(TAO=kp|r5c zdDovEGybn}6Mazr3_O&vn@4Dc6oY87Jc95e<-=oEe-GLmd$4g(PHfM#9nb3r4S_7( zH)*15doVQQ!W*t7=!+PC@~WTCKO-H_Ey=l9XL zZB%Gj-^S_XDST>5ba8S@S^H5f_m-SZ3qF5u(yP6D zjT$?9PX9&Oe|g})e;;vrhWx*v1_cWyWo9=G&Tdz@bYREe2A${4$j(a%YM$3+_F$); z*JjL+zWvgI(;i>@+@ZMGC9M*NmlX9*2x_@=^Rp+C=pIsh|17Uncfvkv4ErKE4 z^yv?z`K5d?_0^ZFzgCNsaaLbVqJ0&lS25E?)WEX;4E;ri%Ea^k8CpW_vgQYUuh9Q| zFzJ6jco1mO88>%)qWObg}n}kgdC5M6yKQRf7t7OIM?i_n`?e{PQV}i ze|+#aU-Q1-d|e7V;rvfO>t_v!LXSAN%F`&|Y`(3|X$EfC!HIi?2)DZI^f2kg$6Z78 zU9kOeK<0h8-}-BP4o=Mc@;*M&L{%^6EA({NJp3)^myPzqRyZwShEjX;;3=XRKp^f! zrrCMk2mD|M{W1L;w0bljJ3|le|Hyq66(s{&$j+)yx5*nzosY{?tJ<7hTH0ke(GNT3 zl?ehK=Fi4l0{1AvRe+|CaxK^>t#_`Ie{wC9)>Zu`t#fTQF)IZ>O64c0oxJ*}vYnmP zaI`n`EtHvzyTGno%*3=I;q3fvTByDj^*BFL1FM^#RozLk1Tl|qjMqlap2y%>Jx23^4bjN#>;@gBa06-FmhC%Fmm8d z8Z$=-iZ`mWIAAv%OkisjDhwIN$4TSVaoQX{N1CI~(d?ie#(w%7P#<&Qg1-2|1@+?# z7cNkHUGtP1`c2HWWwxR)L_&)>q^UELZYvxIga@AqK7qSyZe27l!#;TO!K`1}+LO?9>Jr$X-$u4JpqgemM)Mb;0CKhDoH)t9Zm%2=vJh*8)H9tPkFDqTU zXF+h|m;nFmW?JdOV9?qhwB8_Sy{-_~7RnOCsr8*1|9?yC=C~i0N3u|!$P%%|uL~c- zhVZA^(|kYM&jUeq8C1ttk}YLH^{@olb@t4*Z;0yLF6jO@_Fx78d#{OqFiq za~jQto8Ju5o~fazO;FT^j^IsEJcFW0_Y`(WM(zBCVI&6r3JF3Jg+w7;@xkrr* zz-dbmR_fUW0TTxe93Q;Ew{p|wr&X>$H-43)3wez7YPzX55 zw)0|^TciU818`ejEe7Bj3_!Xk1Bwp>2~yN9_Kn!T%-fBToOW)O20(dDDR&Aw0y2-Wu;zjk-ccELqf$SX=eZAT)nn62QE)dv?e@KxinQs>9HhjH;Hz^3Ww{FG%W*(HFJji9v)9CJ@24>D>TesqW zWagWfVukFm7 zg&p#WX$?v2-KVnxG&;|~cot`eXmoZ6XkSj}E#Y>|G`f8fU$83ii5@7$XC>8q>SJsu zr*$B4LUxL4uDw#-6z0B`Yc-XywdlYvU)@wPbw2doQK`r~>| zn|^ER>?vwsPSezekp*E|vsQ^M8n)*t*vCrEnAaz^wbD54zQwVLPZl@G8niVjX7e=e z_^i{C@W$O!8u>PA9~RoCb6@x!@oj?KQT`YfQYIusphPYW8_>b*g{I>84+)-Ibj=Tz zupl7~ZPqz9EhjaV=cP99;oA4p;K%#5j}7WLepTNI_6A$~_8!rBTtK*rDDa$YmXjX`|*m3 zlqQK0_6A2|I(6(A6xybtZ^PK4j){%@8svvbxBG9+YTmO|m#h#+e!e3lwNFOxw9HMz z0v*0_xe-lT2n4miOMrEarbOU*l zzPt$&pTW{p(V8qOj?Nj2^DDH}ie|&+w3(QND{gU{uzo8uyz6$@ zZu*nG+pa2_z(*_@R*XB{8n=yU)IP0UIF@uwnI;*)_XC)n7&19=q7ENHIHuG=0Qgx{y7RecEnn9xxQJPn}I#o;=GHLunxGLd^7Naf1B{oZ%LZK zBZo134I$3Sz;_ZISbzPN`M%~HjXT~O`bB(qfiv;wy9*00q|WoqH=KP}=b3M2x^a$$ zx*zM%kOy%l%6j7rF(|)LYBAC~ndv3Q`52g=bP(yCJ=0A%dn`CO(+pp*8T1Am`W8>X zp|j4cZ}9+!(ghqV{SG)S`Kg-o8$95&glEA#BhCwsnQp)l--=Va@KuR8B?4yw@^4uq zL0_D0<~|Q11?f0DO?;j zIB;?1{mQc24d7eck=g1cWm(nzgbzk8DORC#U9&L%@OweEv*Vg7al74*b;Di8;%Xt( zE-nSlEc6QwC=BQyFfL$DfJ*h!h==(&Ci$lw&pzvT^;Kn@Zhuy9&(A!I{>UU;?l4r! z0Q^AeKVfmXIq@h%rJyV1gr>%4h4K3PJn*FB(3_#T1LF=Yl$E7ZlSB2P|9Dry>Hkm8 z={SxDXLrhMfd0WB(I(3Owr2;Yurl_#Q~=I2RgS~NHr|cLyBy;kt2W+ABh7bXjB;Vk zk-vYi%_uM4RRHGK_7RYV1m&hw>IJjrU6Qh~*1JbEs?Vbw!DQ7QxX?SZoX5Kb+BC(N z+7OngoZzFpaM=J{eiSfMl;aZi$9uHTC^r=4&}L~F-ih*}KBL?)yhAxYAMemk=|1s} z%4HgOs)eErUggw=_O>XOY?e#VQYEZDg4Tek%oOjE)PG4ufGP5rFejo7^F7J|rnJ#~ zHx%!N<6Sd@)`X`tN4&dV8!G=QaIxMAn%DDA(9YxChTs(GnDU|&3|vHc@eX*ZHv33= zrv>xRJ@IsIhE3XEn--ibVg3?qlN_*AM^Hb7@Tc)K>Zjxc`u3kWf5rIr({=`DUyYTHbBrIMg4bjNN#l%koYGC{%LHze ze#|Q!-_c?`T1Dr~$@qp^9m|fpLOsu$liDbSl#bJ_{J~3c;#`gGNaxPg`5v~UK?|I{ zD9+oX(-i@?x1jAw;E|8D2tSs82woeZW3HcpD`pTb1RgK~Hv(&zF%56UUS*GKYiupA z?&pQ~lx&J)?zJt=cwz$B7ToCi7cB)CqSHp5cR6lhm8R z8vn|AR?2YBqsG4$&s+8RlAkgzIGJGs4rJu1>R!NAV*T)EA#@kbGcXqkO9+b(i$A;i z;Oa#E;3vEXH&;!_6J}>vJf1b4dw%t$gxnrk#rm~t z;jN}-wruhp@B7bYrT5gm21InctS^vo);VPRfN{nd;fOXJ(bsUCA??QbinwoGVmH~} z`Dvxfz}dQ$6?+pdU*;d`N`g-E{WuV&yXr6(!s?BCH_zkJm~-b{yUt-BjCEBw=P%(F zbsxDS^%D+Hp6cU#R_?fGkHFy_<$~PC{xf6*E?b&cs3U69eTE<%df6-e81myAPs+z{ zAwSBYEe0G3>BDN}2Ydksp2a)h#F=o?00-p&=bG}SoM_u=z!C6A*QDEjLOS4B>7WD2 zBJFQeSroj8gQfkruTPQfT+xD^PA5*VZ+V?=+os{_qysm<-+rS4ycXY{i*hy=Qy9dR z!M6Pp_feQ#Q{aC*<1U(&36~%3lgj3cuex?#byQSTsBkxlc^KWTDC(64EBl!Zr4{&i zs5IvCR4=}=5+(I{D2QT^M_NmIPOgA7MgR}GsVF!(jzcYBr%4>cgaQkB0Y|xZ^r(KD zH}5Xlbc>EH5ca&u|FKAJz{8sM60@=lcThcyr8U}K6= zOkU)?mrt|Gfm71s9tDl_22zZ=aD2U0D%_(;O#$bJAS2|9))OwtWzY%0Pux(&vz1F& zx7(%fI?bQG&1bHaUUzlDCCp7JKgos2FWN&F8^bk&i!+&ieJ!6!xv6M{^iNmQ3h8w- z{|XDf$d4^MR_GrZmae~ULTfN=;!07*rHV>TEa(jxUE6R`e99e#;&g6 z#$^rG#h@YCYQL)KN2MW0-y<}sZqYWvRluV=qW%2>6yIn&?xI#Ce~7RN@rYf0M%H`< zNV)*RkZ6pykZZNy?Wf)oU`2bp;40-7o_@Gn%mC|afJNUpETFDIAMu8%lvhm`5KVx! z+KiiW6)jrA4W?*vd!xxmluGRxn^Y-ap{IkdBoWyW$7mapeD=Kxskj2fHhJTwp9xD* zIH6T1ERqoeR=9kv4p^d%HWpXt1H}=o;1E{Q99O9GAJ!__GfJg|3tF#dLY@UAYMlU7 z=G;VBfeFwDke4g!zc81;PL_DAjACHcCH*5O!q49840Cj%FoNy@-pb02*0 zEAIcz{rAr+9w;?*=8xRrcxuFmryM)vK)<+FyWe_Y!h{#z+TAM7&-Gx1^3t4fZQ6{Z zKSD>Cbw$8~!Kih2uPt0^c$exbq@{nRzJ6BQ>Z;GPZFkhB4{$f_j=G#bdo>Mo6n#T^ z4*k@hB^UZi8dLq00RO-Mc-(`X*DhYf&C-V@S+)69`n0@$?b@}AnV68^&_+yS=%ZLE zZh2^%E0z(<3rK`v>|31fRKb=Klij?Wfdr#?t4+e5kRKCv zRa&8+Z-7k>Q+;sdGG@_ET;z9+?(y?eE8$bGl=l0Q*1`49n9$R;C7`qjC#C!KTz)~% zm7>+F6?)4@T(63;j`Xd79l$aR{r!V{)G(W0G}d1Np*Gym{cV*#OsiD(Oa7)(Blxre zUsFT))tV|`SJbYf$ihEB^PwtCl}=T_2~p^0uk>ZMN_D@`ng;$tubUO{#jsbb3QX|U zSm;R`#U9F(FiG>rO}v0j##W&p=)yoBPudt-)X=1o-6YNZSEbJ$;qO;?*khiwQG7!+ zDNL~wZEB$VtCcbX_WS)Ug>TTtvxaaf+FeD3)Vo$4l5qz+cpISjg~~Q?mxeo01@v~I zALt@#@TQHs0_lV+t)>DKKIw7jA7vxx?h7AD^Fsf~MvZOJVS!S#ztWII=gM_K9v@yA z6i_ZlR{G%{J*=+Mg~;Z)M`A}zJUXbb0i_-KC7w1gCoQeO_3=?YWa^5NewQ)A9vaps8(gU=fPVZAX!<$Y5HD;~=?lPuZ3=5P z7w4`*u@Bb2;}OTMDxc|Rf8+T^_cH1gd1055_B3;c^C?F53Z?g*`TY&p?)+A6cjgvA z1GCDL_{QRd62(HqF6CB*fx$`9fzhE2qZ`LVbtZ~CWep3f&@ZCWH>Oevj!H1(kM_u&!Oh&TDL6qq|Q}-gS@_Nrd??1=IeTzB<&cEpTF zxz2Aq$Eu6d(?2L#ImLCfLb`9&%C{cF*Ble?U-A40KNF6mdj*bR_zEhCwihJ1!PwFUtjA{7QyP;aaNB$XH>8_a? zdL{u?gPcG$(Lz<|tB6Yfm`Y7*+Nd&w5UmGKS&)(TxLNe{!t$6mIlXaAzLT7W?8)?v zS^!HIV_B>pW+V8FA`lmQ(P$t>N?-JK*`}3?k<3X-Hq+3g)?mih>W6r-gBK&(A(vP1 zlX}MrSE$fw#(a(H2x6@Y0|G<*Vgr1lZE~#2gQ2lSEf>X@<0n_DKK61c&=@d9JtVYZ z$T5e_aK6K%stV~w9d&K6+7sj-%P<*IVl|1zAEPR$E?)glej5mb~7aXN#9_6QT^MU><-vJarPm{E6@`|-gflC<1 ztIma?p^XA#{m~zM?UB)v7OSv^X1i;!2?~lJItSSN%0n7(qhH*jYu*VT4|2P)AskJz z*WlyYs~1>gvCt7X8e^D7<41@=p9Vp(0U@EGem>#RvJG61^hAjanZV#M;zyvry*$D+ z2nZjnchEf5%@zY88Q3VttFYGNNg&4^*bu#p@m$Om={vI|m^FTi6m7Rboz={?k7$+B zGqT+fI$;8m{zWy%Fzs|EN<(P2O*7d;QZe!0J>Ry$Ylrbs3s973UmsFG9y9JjAA6