A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.
1 '' FreeBASIC binding for mingw-w64-v4.0.4 2 '' 3 '' based on the C header files: 4 '' Copyright (c) 2013-2014 The Khronos Group Inc. 5 '' 6 '' Permission is hereby granted, free of charge, to any person obtaining a 7 '' copy of this software and/or associated documentation files (the 8 '' "Materials"), to deal in the Materials without restriction, including 9 '' without limitation the rights to use, copy, modify, merge, publish, 10 '' distribute, sublicense, and/or sell copies of the Materials, and to 11 '' permit persons to whom the Materials are furnished to do so, subject to 12 '' the following conditions: 13 '' 14 '' The above copyright notice and this permission notice shall be included 15 '' in all copies or substantial portions of the Materials. 16 '' 17 '' THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 18 '' EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19 '' MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20 '' IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 '' CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22 '' TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23 '' MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 24 '' 25 '' translated to FreeBASIC by: 26 '' Copyright © 2015 FreeBASIC development team 27 28 #pragma once 29 30 #include once "GL/windows/gl.bi" 31 32 extern "Windows" 33 34 const __glext_h_ = 1 35 const GL_GLEXT_VERSION = 20150104 36 const GL_VERSION_1_2 = 1 37 const GL_UNSIGNED_BYTE_3_3_2 = &h8032 38 const GL_UNSIGNED_SHORT_4_4_4_4 = &h8033 39 const GL_UNSIGNED_SHORT_5_5_5_1 = &h8034 40 const GL_UNSIGNED_INT_8_8_8_8 = &h8035 41 const GL_UNSIGNED_INT_10_10_10_2 = &h8036 42 const GL_TEXTURE_BINDING_3D = &h806A 43 const GL_PACK_SKIP_IMAGES = &h806B 44 const GL_PACK_IMAGE_HEIGHT = &h806C 45 const GL_UNPACK_SKIP_IMAGES = &h806D 46 const GL_UNPACK_IMAGE_HEIGHT = &h806E 47 const GL_TEXTURE_3D = &h806F 48 const GL_PROXY_TEXTURE_3D = &h8070 49 const GL_TEXTURE_DEPTH = &h8071 50 const GL_TEXTURE_WRAP_R = &h8072 51 const GL_MAX_3D_TEXTURE_SIZE = &h8073 52 const GL_UNSIGNED_BYTE_2_3_3_REV = &h8362 53 const GL_UNSIGNED_SHORT_5_6_5 = &h8363 54 const GL_UNSIGNED_SHORT_5_6_5_REV = &h8364 55 const GL_UNSIGNED_SHORT_4_4_4_4_REV = &h8365 56 const GL_UNSIGNED_SHORT_1_5_5_5_REV = &h8366 57 const GL_UNSIGNED_INT_8_8_8_8_REV = &h8367 58 const GL_UNSIGNED_INT_2_10_10_10_REV = &h8368 59 const GL_BGR = &h80E0 60 const GL_BGRA = &h80E1 61 const GL_MAX_ELEMENTS_VERTICES = &h80E8 62 const GL_MAX_ELEMENTS_INDICES = &h80E9 63 const GL_CLAMP_TO_EDGE = &h812F 64 const GL_TEXTURE_MIN_LOD = &h813A 65 const GL_TEXTURE_MAX_LOD = &h813B 66 const GL_TEXTURE_BASE_LEVEL = &h813C 67 const GL_TEXTURE_MAX_LEVEL = &h813D 68 const GL_SMOOTH_POINT_SIZE_RANGE = &h0B12 69 const GL_SMOOTH_POINT_SIZE_GRANULARITY = &h0B13 70 const GL_SMOOTH_LINE_WIDTH_RANGE = &h0B22 71 const GL_SMOOTH_LINE_WIDTH_GRANULARITY = &h0B23 72 const GL_ALIASED_LINE_WIDTH_RANGE = &h846E 73 const GL_RESCALE_NORMAL = &h803A 74 const GL_LIGHT_MODEL_COLOR_CONTROL = &h81F8 75 const GL_SINGLE_COLOR = &h81F9 76 const GL_SEPARATE_SPECULAR_COLOR = &h81FA 77 const GL_ALIASED_POINT_SIZE_RANGE = &h846D 78 79 type PFNGLDRAWRANGEELEMENTSPROC as sub(byval mode as GLenum, byval start as GLuint, byval end as GLuint, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr) 80 type PFNGLTEXIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 81 type PFNGLTEXSUBIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 82 type PFNGLCOPYTEXSUBIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 83 84 #ifdef GL_GLEXT_PROTOTYPES 85 declare sub glDrawRangeElements(byval mode as GLenum, byval start as GLuint, byval end as GLuint, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr) 86 declare sub glTexImage3D(byval target as GLenum, byval level as GLint, byval internalformat as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 87 declare sub glTexSubImage3D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 88 declare sub glCopyTexSubImage3D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 89 #endif 90 91 const GL_VERSION_1_3 = 1 92 const GL_TEXTURE0 = &h84C0 93 const GL_TEXTURE1 = &h84C1 94 const GL_TEXTURE2 = &h84C2 95 const GL_TEXTURE3 = &h84C3 96 const GL_TEXTURE4 = &h84C4 97 const GL_TEXTURE5 = &h84C5 98 const GL_TEXTURE6 = &h84C6 99 const GL_TEXTURE7 = &h84C7 100 const GL_TEXTURE8 = &h84C8 101 const GL_TEXTURE9 = &h84C9 102 const GL_TEXTURE10 = &h84CA 103 const GL_TEXTURE11 = &h84CB 104 const GL_TEXTURE12 = &h84CC 105 const GL_TEXTURE13 = &h84CD 106 const GL_TEXTURE14 = &h84CE 107 const GL_TEXTURE15 = &h84CF 108 const GL_TEXTURE16 = &h84D0 109 const GL_TEXTURE17 = &h84D1 110 const GL_TEXTURE18 = &h84D2 111 const GL_TEXTURE19 = &h84D3 112 const GL_TEXTURE20 = &h84D4 113 const GL_TEXTURE21 = &h84D5 114 const GL_TEXTURE22 = &h84D6 115 const GL_TEXTURE23 = &h84D7 116 const GL_TEXTURE24 = &h84D8 117 const GL_TEXTURE25 = &h84D9 118 const GL_TEXTURE26 = &h84DA 119 const GL_TEXTURE27 = &h84DB 120 const GL_TEXTURE28 = &h84DC 121 const GL_TEXTURE29 = &h84DD 122 const GL_TEXTURE30 = &h84DE 123 const GL_TEXTURE31 = &h84DF 124 const GL_ACTIVE_TEXTURE = &h84E0 125 const GL_MULTISAMPLE = &h809D 126 const GL_SAMPLE_ALPHA_TO_COVERAGE = &h809E 127 const GL_SAMPLE_ALPHA_TO_ONE = &h809F 128 const GL_SAMPLE_COVERAGE = &h80A0 129 const GL_SAMPLE_BUFFERS = &h80A8 130 const GL_SAMPLES = &h80A9 131 const GL_SAMPLE_COVERAGE_VALUE = &h80AA 132 const GL_SAMPLE_COVERAGE_INVERT = &h80AB 133 const GL_TEXTURE_CUBE_MAP = &h8513 134 const GL_TEXTURE_BINDING_CUBE_MAP = &h8514 135 const GL_TEXTURE_CUBE_MAP_POSITIVE_X = &h8515 136 const GL_TEXTURE_CUBE_MAP_NEGATIVE_X = &h8516 137 const GL_TEXTURE_CUBE_MAP_POSITIVE_Y = &h8517 138 const GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = &h8518 139 const GL_TEXTURE_CUBE_MAP_POSITIVE_Z = &h8519 140 const GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = &h851A 141 const GL_PROXY_TEXTURE_CUBE_MAP = &h851B 142 const GL_MAX_CUBE_MAP_TEXTURE_SIZE = &h851C 143 const GL_COMPRESSED_RGB = &h84ED 144 const GL_COMPRESSED_RGBA = &h84EE 145 const GL_TEXTURE_COMPRESSION_HINT = &h84EF 146 const GL_TEXTURE_COMPRESSED_IMAGE_SIZE = &h86A0 147 const GL_TEXTURE_COMPRESSED = &h86A1 148 const GL_NUM_COMPRESSED_TEXTURE_FORMATS = &h86A2 149 const GL_COMPRESSED_TEXTURE_FORMATS = &h86A3 150 const GL_CLAMP_TO_BORDER = &h812D 151 const GL_CLIENT_ACTIVE_TEXTURE = &h84E1 152 const GL_MAX_TEXTURE_UNITS = &h84E2 153 const GL_TRANSPOSE_MODELVIEW_MATRIX = &h84E3 154 const GL_TRANSPOSE_PROJECTION_MATRIX = &h84E4 155 const GL_TRANSPOSE_TEXTURE_MATRIX = &h84E5 156 const GL_TRANSPOSE_COLOR_MATRIX = &h84E6 157 const GL_MULTISAMPLE_BIT = &h20000000 158 const GL_NORMAL_MAP = &h8511 159 const GL_REFLECTION_MAP = &h8512 160 const GL_COMPRESSED_ALPHA = &h84E9 161 const GL_COMPRESSED_LUMINANCE = &h84EA 162 const GL_COMPRESSED_LUMINANCE_ALPHA = &h84EB 163 const GL_COMPRESSED_INTENSITY = &h84EC 164 const GL_COMBINE = &h8570 165 const GL_COMBINE_RGB = &h8571 166 const GL_COMBINE_ALPHA = &h8572 167 const GL_SOURCE0_RGB = &h8580 168 const GL_SOURCE1_RGB = &h8581 169 const GL_SOURCE2_RGB = &h8582 170 const GL_SOURCE0_ALPHA = &h8588 171 const GL_SOURCE1_ALPHA = &h8589 172 const GL_SOURCE2_ALPHA = &h858A 173 const GL_OPERAND0_RGB = &h8590 174 const GL_OPERAND1_RGB = &h8591 175 const GL_OPERAND2_RGB = &h8592 176 const GL_OPERAND0_ALPHA = &h8598 177 const GL_OPERAND1_ALPHA = &h8599 178 const GL_OPERAND2_ALPHA = &h859A 179 const GL_RGB_SCALE = &h8573 180 const GL_ADD_SIGNED = &h8574 181 const GL_INTERPOLATE = &h8575 182 const GL_SUBTRACT = &h84E7 183 const GL_CONSTANT = &h8576 184 const GL_PRIMARY_COLOR = &h8577 185 const GL_PREVIOUS = &h8578 186 const GL_DOT3_RGB = &h86AE 187 const GL_DOT3_RGBA = &h86AF 188 189 type PFNGLACTIVETEXTUREPROC as sub(byval texture as GLenum) 190 type PFNGLSAMPLECOVERAGEPROC as sub(byval value as GLfloat, byval invert as GLboolean) 191 type PFNGLCOMPRESSEDTEXIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr) 192 type PFNGLCOMPRESSEDTEXIMAGE2DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr) 193 type PFNGLCOMPRESSEDTEXIMAGE1DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr) 194 type PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 195 type PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 196 type PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 197 type PFNGLGETCOMPRESSEDTEXIMAGEPROC as sub(byval target as GLenum, byval level as GLint, byval img as any ptr) 198 type PFNGLCLIENTACTIVETEXTUREPROC as sub(byval texture as GLenum) 199 type PFNGLMULTITEXCOORD1DPROC as sub(byval target as GLenum, byval s as GLdouble) 200 type PFNGLMULTITEXCOORD1DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr) 201 type PFNGLMULTITEXCOORD1FPROC as sub(byval target as GLenum, byval s as GLfloat) 202 type PFNGLMULTITEXCOORD1FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr) 203 type PFNGLMULTITEXCOORD1IPROC as sub(byval target as GLenum, byval s as GLint) 204 type PFNGLMULTITEXCOORD1IVPROC as sub(byval target as GLenum, byval v as const GLint ptr) 205 type PFNGLMULTITEXCOORD1SPROC as sub(byval target as GLenum, byval s as GLshort) 206 type PFNGLMULTITEXCOORD1SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr) 207 type PFNGLMULTITEXCOORD2DPROC as sub(byval target as GLenum, byval s as GLdouble, byval t as GLdouble) 208 type PFNGLMULTITEXCOORD2DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr) 209 type PFNGLMULTITEXCOORD2FPROC as sub(byval target as GLenum, byval s as GLfloat, byval t as GLfloat) 210 type PFNGLMULTITEXCOORD2FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr) 211 type PFNGLMULTITEXCOORD2IPROC as sub(byval target as GLenum, byval s as GLint, byval t as GLint) 212 type PFNGLMULTITEXCOORD2IVPROC as sub(byval target as GLenum, byval v as const GLint ptr) 213 type PFNGLMULTITEXCOORD2SPROC as sub(byval target as GLenum, byval s as GLshort, byval t as GLshort) 214 type PFNGLMULTITEXCOORD2SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr) 215 type PFNGLMULTITEXCOORD3DPROC as sub(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble) 216 type PFNGLMULTITEXCOORD3DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr) 217 type PFNGLMULTITEXCOORD3FPROC as sub(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat) 218 type PFNGLMULTITEXCOORD3FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr) 219 type PFNGLMULTITEXCOORD3IPROC as sub(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint) 220 type PFNGLMULTITEXCOORD3IVPROC as sub(byval target as GLenum, byval v as const GLint ptr) 221 type PFNGLMULTITEXCOORD3SPROC as sub(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort) 222 type PFNGLMULTITEXCOORD3SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr) 223 type PFNGLMULTITEXCOORD4DPROC as sub(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble, byval q as GLdouble) 224 type PFNGLMULTITEXCOORD4DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr) 225 type PFNGLMULTITEXCOORD4FPROC as sub(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat, byval q as GLfloat) 226 type PFNGLMULTITEXCOORD4FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr) 227 type PFNGLMULTITEXCOORD4IPROC as sub(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint, byval q as GLint) 228 type PFNGLMULTITEXCOORD4IVPROC as sub(byval target as GLenum, byval v as const GLint ptr) 229 type PFNGLMULTITEXCOORD4SPROC as sub(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort, byval q as GLshort) 230 type PFNGLMULTITEXCOORD4SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr) 231 type PFNGLLOADTRANSPOSEMATRIXFPROC as sub(byval m as const GLfloat ptr) 232 type PFNGLLOADTRANSPOSEMATRIXDPROC as sub(byval m as const GLdouble ptr) 233 type PFNGLMULTTRANSPOSEMATRIXFPROC as sub(byval m as const GLfloat ptr) 234 type PFNGLMULTTRANSPOSEMATRIXDPROC as sub(byval m as const GLdouble ptr) 235 236 #ifdef GL_GLEXT_PROTOTYPES 237 declare sub glActiveTexture(byval texture as GLenum) 238 declare sub glSampleCoverage(byval value as GLfloat, byval invert as GLboolean) 239 declare sub glCompressedTexImage3D(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr) 240 declare sub glCompressedTexImage2D(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr) 241 declare sub glCompressedTexImage1D(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr) 242 declare sub glCompressedTexSubImage3D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 243 declare sub glCompressedTexSubImage2D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 244 declare sub glCompressedTexSubImage1D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 245 declare sub glGetCompressedTexImage(byval target as GLenum, byval level as GLint, byval img as any ptr) 246 declare sub glClientActiveTexture(byval texture as GLenum) 247 declare sub glMultiTexCoord1d(byval target as GLenum, byval s as GLdouble) 248 declare sub glMultiTexCoord1dv(byval target as GLenum, byval v as const GLdouble ptr) 249 declare sub glMultiTexCoord1f(byval target as GLenum, byval s as GLfloat) 250 declare sub glMultiTexCoord1fv(byval target as GLenum, byval v as const GLfloat ptr) 251 declare sub glMultiTexCoord1i(byval target as GLenum, byval s as GLint) 252 declare sub glMultiTexCoord1iv(byval target as GLenum, byval v as const GLint ptr) 253 declare sub glMultiTexCoord1s(byval target as GLenum, byval s as GLshort) 254 declare sub glMultiTexCoord1sv(byval target as GLenum, byval v as const GLshort ptr) 255 declare sub glMultiTexCoord2d(byval target as GLenum, byval s as GLdouble, byval t as GLdouble) 256 declare sub glMultiTexCoord2dv(byval target as GLenum, byval v as const GLdouble ptr) 257 declare sub glMultiTexCoord2f(byval target as GLenum, byval s as GLfloat, byval t as GLfloat) 258 declare sub glMultiTexCoord2fv(byval target as GLenum, byval v as const GLfloat ptr) 259 declare sub glMultiTexCoord2i(byval target as GLenum, byval s as GLint, byval t as GLint) 260 declare sub glMultiTexCoord2iv(byval target as GLenum, byval v as const GLint ptr) 261 declare sub glMultiTexCoord2s(byval target as GLenum, byval s as GLshort, byval t as GLshort) 262 declare sub glMultiTexCoord2sv(byval target as GLenum, byval v as const GLshort ptr) 263 declare sub glMultiTexCoord3d(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble) 264 declare sub glMultiTexCoord3dv(byval target as GLenum, byval v as const GLdouble ptr) 265 declare sub glMultiTexCoord3f(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat) 266 declare sub glMultiTexCoord3fv(byval target as GLenum, byval v as const GLfloat ptr) 267 declare sub glMultiTexCoord3i(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint) 268 declare sub glMultiTexCoord3iv(byval target as GLenum, byval v as const GLint ptr) 269 declare sub glMultiTexCoord3s(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort) 270 declare sub glMultiTexCoord3sv(byval target as GLenum, byval v as const GLshort ptr) 271 declare sub glMultiTexCoord4d(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble, byval q as GLdouble) 272 declare sub glMultiTexCoord4dv(byval target as GLenum, byval v as const GLdouble ptr) 273 declare sub glMultiTexCoord4f(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat, byval q as GLfloat) 274 declare sub glMultiTexCoord4fv(byval target as GLenum, byval v as const GLfloat ptr) 275 declare sub glMultiTexCoord4i(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint, byval q as GLint) 276 declare sub glMultiTexCoord4iv(byval target as GLenum, byval v as const GLint ptr) 277 declare sub glMultiTexCoord4s(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort, byval q as GLshort) 278 declare sub glMultiTexCoord4sv(byval target as GLenum, byval v as const GLshort ptr) 279 declare sub glLoadTransposeMatrixf(byval m as const GLfloat ptr) 280 declare sub glLoadTransposeMatrixd(byval m as const GLdouble ptr) 281 declare sub glMultTransposeMatrixf(byval m as const GLfloat ptr) 282 declare sub glMultTransposeMatrixd(byval m as const GLdouble ptr) 283 #endif 284 285 const GL_VERSION_1_4 = 1 286 const GL_BLEND_DST_RGB = &h80C8 287 const GL_BLEND_SRC_RGB = &h80C9 288 const GL_BLEND_DST_ALPHA = &h80CA 289 const GL_BLEND_SRC_ALPHA = &h80CB 290 const GL_POINT_FADE_THRESHOLD_SIZE = &h8128 291 const GL_DEPTH_COMPONENT16 = &h81A5 292 const GL_DEPTH_COMPONENT24 = &h81A6 293 const GL_DEPTH_COMPONENT32 = &h81A7 294 const GL_MIRRORED_REPEAT = &h8370 295 const GL_MAX_TEXTURE_LOD_BIAS = &h84FD 296 const GL_TEXTURE_LOD_BIAS = &h8501 297 const GL_INCR_WRAP = &h8507 298 const GL_DECR_WRAP = &h8508 299 const GL_TEXTURE_DEPTH_SIZE = &h884A 300 const GL_TEXTURE_COMPARE_MODE = &h884C 301 const GL_TEXTURE_COMPARE_FUNC = &h884D 302 const GL_POINT_SIZE_MIN = &h8126 303 const GL_POINT_SIZE_MAX = &h8127 304 const GL_POINT_DISTANCE_ATTENUATION = &h8129 305 const GL_GENERATE_MIPMAP = &h8191 306 const GL_GENERATE_MIPMAP_HINT = &h8192 307 const GL_FOG_COORDINATE_SOURCE = &h8450 308 const GL_FOG_COORDINATE = &h8451 309 const GL_FRAGMENT_DEPTH = &h8452 310 const GL_CURRENT_FOG_COORDINATE = &h8453 311 const GL_FOG_COORDINATE_ARRAY_TYPE = &h8454 312 const GL_FOG_COORDINATE_ARRAY_STRIDE = &h8455 313 const GL_FOG_COORDINATE_ARRAY_POINTER = &h8456 314 const GL_FOG_COORDINATE_ARRAY = &h8457 315 const GL_COLOR_SUM = &h8458 316 const GL_CURRENT_SECONDARY_COLOR = &h8459 317 const GL_SECONDARY_COLOR_ARRAY_SIZE = &h845A 318 const GL_SECONDARY_COLOR_ARRAY_TYPE = &h845B 319 const GL_SECONDARY_COLOR_ARRAY_STRIDE = &h845C 320 const GL_SECONDARY_COLOR_ARRAY_POINTER = &h845D 321 const GL_SECONDARY_COLOR_ARRAY = &h845E 322 const GL_TEXTURE_FILTER_CONTROL = &h8500 323 const GL_DEPTH_TEXTURE_MODE = &h884B 324 const GL_COMPARE_R_TO_TEXTURE = &h884E 325 const GL_FUNC_ADD = &h8006 326 const GL_FUNC_SUBTRACT = &h800A 327 const GL_FUNC_REVERSE_SUBTRACT = &h800B 328 const GL_MIN = &h8007 329 const GL_MAX = &h8008 330 const GL_CONSTANT_COLOR = &h8001 331 const GL_ONE_MINUS_CONSTANT_COLOR = &h8002 332 const GL_CONSTANT_ALPHA = &h8003 333 const GL_ONE_MINUS_CONSTANT_ALPHA = &h8004 334 335 type PFNGLBLENDFUNCSEPARATEPROC as sub(byval sfactorRGB as GLenum, byval dfactorRGB as GLenum, byval sfactorAlpha as GLenum, byval dfactorAlpha as GLenum) 336 type PFNGLMULTIDRAWARRAYSPROC as sub(byval mode as GLenum, byval first as const GLint ptr, byval count as const GLsizei ptr, byval drawcount as GLsizei) 337 type PFNGLMULTIDRAWELEMENTSPROC as sub(byval mode as GLenum, byval count as const GLsizei ptr, byval type as GLenum, byval indices as const any const ptr ptr, byval drawcount as GLsizei) 338 type PFNGLPOINTPARAMETERFPROC as sub(byval pname as GLenum, byval param as GLfloat) 339 type PFNGLPOINTPARAMETERFVPROC as sub(byval pname as GLenum, byval params as const GLfloat ptr) 340 type PFNGLPOINTPARAMETERIPROC as sub(byval pname as GLenum, byval param as GLint) 341 type PFNGLPOINTPARAMETERIVPROC as sub(byval pname as GLenum, byval params as const GLint ptr) 342 type PFNGLFOGCOORDFPROC as sub(byval coord as GLfloat) 343 type PFNGLFOGCOORDFVPROC as sub(byval coord as const GLfloat ptr) 344 type PFNGLFOGCOORDDPROC as sub(byval coord as GLdouble) 345 type PFNGLFOGCOORDDVPROC as sub(byval coord as const GLdouble ptr) 346 type PFNGLFOGCOORDPOINTERPROC as sub(byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 347 type PFNGLSECONDARYCOLOR3BPROC as sub(byval red as GLbyte, byval green as GLbyte, byval blue as GLbyte) 348 type PFNGLSECONDARYCOLOR3BVPROC as sub(byval v as const GLbyte ptr) 349 type PFNGLSECONDARYCOLOR3DPROC as sub(byval red as GLdouble, byval green as GLdouble, byval blue as GLdouble) 350 type PFNGLSECONDARYCOLOR3DVPROC as sub(byval v as const GLdouble ptr) 351 type PFNGLSECONDARYCOLOR3FPROC as sub(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat) 352 type PFNGLSECONDARYCOLOR3FVPROC as sub(byval v as const GLfloat ptr) 353 type PFNGLSECONDARYCOLOR3IPROC as sub(byval red as GLint, byval green as GLint, byval blue as GLint) 354 type PFNGLSECONDARYCOLOR3IVPROC as sub(byval v as const GLint ptr) 355 type PFNGLSECONDARYCOLOR3SPROC as sub(byval red as GLshort, byval green as GLshort, byval blue as GLshort) 356 type PFNGLSECONDARYCOLOR3SVPROC as sub(byval v as const GLshort ptr) 357 type PFNGLSECONDARYCOLOR3UBPROC as sub(byval red as GLubyte, byval green as GLubyte, byval blue as GLubyte) 358 type PFNGLSECONDARYCOLOR3UBVPROC as sub(byval v as const GLubyte ptr) 359 type PFNGLSECONDARYCOLOR3UIPROC as sub(byval red as GLuint, byval green as GLuint, byval blue as GLuint) 360 type PFNGLSECONDARYCOLOR3UIVPROC as sub(byval v as const GLuint ptr) 361 type PFNGLSECONDARYCOLOR3USPROC as sub(byval red as GLushort, byval green as GLushort, byval blue as GLushort) 362 type PFNGLSECONDARYCOLOR3USVPROC as sub(byval v as const GLushort ptr) 363 type PFNGLSECONDARYCOLORPOINTERPROC as sub(byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 364 type PFNGLWINDOWPOS2DPROC as sub(byval x as GLdouble, byval y as GLdouble) 365 type PFNGLWINDOWPOS2DVPROC as sub(byval v as const GLdouble ptr) 366 type PFNGLWINDOWPOS2FPROC as sub(byval x as GLfloat, byval y as GLfloat) 367 type PFNGLWINDOWPOS2FVPROC as sub(byval v as const GLfloat ptr) 368 type PFNGLWINDOWPOS2IPROC as sub(byval x as GLint, byval y as GLint) 369 type PFNGLWINDOWPOS2IVPROC as sub(byval v as const GLint ptr) 370 type PFNGLWINDOWPOS2SPROC as sub(byval x as GLshort, byval y as GLshort) 371 type PFNGLWINDOWPOS2SVPROC as sub(byval v as const GLshort ptr) 372 type PFNGLWINDOWPOS3DPROC as sub(byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 373 type PFNGLWINDOWPOS3DVPROC as sub(byval v as const GLdouble ptr) 374 type PFNGLWINDOWPOS3FPROC as sub(byval x as GLfloat, byval y as GLfloat, byval z as GLfloat) 375 type PFNGLWINDOWPOS3FVPROC as sub(byval v as const GLfloat ptr) 376 type PFNGLWINDOWPOS3IPROC as sub(byval x as GLint, byval y as GLint, byval z as GLint) 377 type PFNGLWINDOWPOS3IVPROC as sub(byval v as const GLint ptr) 378 type PFNGLWINDOWPOS3SPROC as sub(byval x as GLshort, byval y as GLshort, byval z as GLshort) 379 type PFNGLWINDOWPOS3SVPROC as sub(byval v as const GLshort ptr) 380 type PFNGLBLENDCOLORPROC as sub(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat, byval alpha as GLfloat) 381 type PFNGLBLENDEQUATIONPROC as sub(byval mode as GLenum) 382 383 #ifdef GL_GLEXT_PROTOTYPES 384 declare sub glBlendFuncSeparate(byval sfactorRGB as GLenum, byval dfactorRGB as GLenum, byval sfactorAlpha as GLenum, byval dfactorAlpha as GLenum) 385 declare sub glMultiDrawArrays(byval mode as GLenum, byval first as const GLint ptr, byval count as const GLsizei ptr, byval drawcount as GLsizei) 386 declare sub glMultiDrawElements(byval mode as GLenum, byval count as const GLsizei ptr, byval type as GLenum, byval indices as const any const ptr ptr, byval drawcount as GLsizei) 387 declare sub glPointParameterf(byval pname as GLenum, byval param as GLfloat) 388 declare sub glPointParameterfv(byval pname as GLenum, byval params as const GLfloat ptr) 389 declare sub glPointParameteri(byval pname as GLenum, byval param as GLint) 390 declare sub glPointParameteriv(byval pname as GLenum, byval params as const GLint ptr) 391 declare sub glFogCoordf(byval coord as GLfloat) 392 declare sub glFogCoordfv(byval coord as const GLfloat ptr) 393 declare sub glFogCoordd(byval coord as GLdouble) 394 declare sub glFogCoorddv(byval coord as const GLdouble ptr) 395 declare sub glFogCoordPointer(byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 396 declare sub glSecondaryColor3b(byval red as GLbyte, byval green as GLbyte, byval blue as GLbyte) 397 declare sub glSecondaryColor3bv(byval v as const GLbyte ptr) 398 declare sub glSecondaryColor3d(byval red as GLdouble, byval green as GLdouble, byval blue as GLdouble) 399 declare sub glSecondaryColor3dv(byval v as const GLdouble ptr) 400 declare sub glSecondaryColor3f(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat) 401 declare sub glSecondaryColor3fv(byval v as const GLfloat ptr) 402 declare sub glSecondaryColor3i(byval red as GLint, byval green as GLint, byval blue as GLint) 403 declare sub glSecondaryColor3iv(byval v as const GLint ptr) 404 declare sub glSecondaryColor3s(byval red as GLshort, byval green as GLshort, byval blue as GLshort) 405 declare sub glSecondaryColor3sv(byval v as const GLshort ptr) 406 declare sub glSecondaryColor3ub(byval red as GLubyte, byval green as GLubyte, byval blue as GLubyte) 407 declare sub glSecondaryColor3ubv(byval v as const GLubyte ptr) 408 declare sub glSecondaryColor3ui(byval red as GLuint, byval green as GLuint, byval blue as GLuint) 409 declare sub glSecondaryColor3uiv(byval v as const GLuint ptr) 410 declare sub glSecondaryColor3us(byval red as GLushort, byval green as GLushort, byval blue as GLushort) 411 declare sub glSecondaryColor3usv(byval v as const GLushort ptr) 412 declare sub glSecondaryColorPointer(byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 413 declare sub glWindowPos2d(byval x as GLdouble, byval y as GLdouble) 414 declare sub glWindowPos2dv(byval v as const GLdouble ptr) 415 declare sub glWindowPos2f(byval x as GLfloat, byval y as GLfloat) 416 declare sub glWindowPos2fv(byval v as const GLfloat ptr) 417 declare sub glWindowPos2i(byval x as GLint, byval y as GLint) 418 declare sub glWindowPos2iv(byval v as const GLint ptr) 419 declare sub glWindowPos2s(byval x as GLshort, byval y as GLshort) 420 declare sub glWindowPos2sv(byval v as const GLshort ptr) 421 declare sub glWindowPos3d(byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 422 declare sub glWindowPos3dv(byval v as const GLdouble ptr) 423 declare sub glWindowPos3f(byval x as GLfloat, byval y as GLfloat, byval z as GLfloat) 424 declare sub glWindowPos3fv(byval v as const GLfloat ptr) 425 declare sub glWindowPos3i(byval x as GLint, byval y as GLint, byval z as GLint) 426 declare sub glWindowPos3iv(byval v as const GLint ptr) 427 declare sub glWindowPos3s(byval x as GLshort, byval y as GLshort, byval z as GLshort) 428 declare sub glWindowPos3sv(byval v as const GLshort ptr) 429 declare sub glBlendColor(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat, byval alpha as GLfloat) 430 declare sub glBlendEquation(byval mode as GLenum) 431 #endif 432 433 const GL_VERSION_1_5 = 1 434 type GLsizeiptr as integer 435 type GLintptr as integer 436 const GL_BUFFER_SIZE = &h8764 437 const GL_BUFFER_USAGE = &h8765 438 const GL_QUERY_COUNTER_BITS = &h8864 439 const GL_CURRENT_QUERY = &h8865 440 const GL_QUERY_RESULT = &h8866 441 const GL_QUERY_RESULT_AVAILABLE = &h8867 442 const GL_ARRAY_BUFFER = &h8892 443 const GL_ELEMENT_ARRAY_BUFFER = &h8893 444 const GL_ARRAY_BUFFER_BINDING = &h8894 445 const GL_ELEMENT_ARRAY_BUFFER_BINDING = &h8895 446 const GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = &h889F 447 const GL_READ_ONLY = &h88B8 448 const GL_WRITE_ONLY = &h88B9 449 const GL_READ_WRITE = &h88BA 450 const GL_BUFFER_ACCESS = &h88BB 451 const GL_BUFFER_MAPPED = &h88BC 452 const GL_BUFFER_MAP_POINTER = &h88BD 453 const GL_STREAM_DRAW = &h88E0 454 const GL_STREAM_READ = &h88E1 455 const GL_STREAM_COPY = &h88E2 456 const GL_STATIC_DRAW = &h88E4 457 const GL_STATIC_READ = &h88E5 458 const GL_STATIC_COPY = &h88E6 459 const GL_DYNAMIC_DRAW = &h88E8 460 const GL_DYNAMIC_READ = &h88E9 461 const GL_DYNAMIC_COPY = &h88EA 462 const GL_SAMPLES_PASSED = &h8914 463 const GL_SRC1_ALPHA = &h8589 464 const GL_VERTEX_ARRAY_BUFFER_BINDING = &h8896 465 const GL_NORMAL_ARRAY_BUFFER_BINDING = &h8897 466 const GL_COLOR_ARRAY_BUFFER_BINDING = &h8898 467 const GL_INDEX_ARRAY_BUFFER_BINDING = &h8899 468 const GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = &h889A 469 const GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = &h889B 470 const GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = &h889C 471 const GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = &h889D 472 const GL_WEIGHT_ARRAY_BUFFER_BINDING = &h889E 473 const GL_FOG_COORD_SRC = &h8450 474 const GL_FOG_COORD = &h8451 475 const GL_CURRENT_FOG_COORD = &h8453 476 const GL_FOG_COORD_ARRAY_TYPE = &h8454 477 const GL_FOG_COORD_ARRAY_STRIDE = &h8455 478 const GL_FOG_COORD_ARRAY_POINTER = &h8456 479 const GL_FOG_COORD_ARRAY = &h8457 480 const GL_FOG_COORD_ARRAY_BUFFER_BINDING = &h889D 481 const GL_SRC0_RGB = &h8580 482 const GL_SRC1_RGB = &h8581 483 const GL_SRC2_RGB = &h8582 484 const GL_SRC0_ALPHA = &h8588 485 const GL_SRC2_ALPHA = &h858A 486 487 type PFNGLGENQUERIESPROC as sub(byval n as GLsizei, byval ids as GLuint ptr) 488 type PFNGLDELETEQUERIESPROC as sub(byval n as GLsizei, byval ids as const GLuint ptr) 489 type PFNGLISQUERYPROC as function(byval id as GLuint) as GLboolean 490 type PFNGLBEGINQUERYPROC as sub(byval target as GLenum, byval id as GLuint) 491 type PFNGLENDQUERYPROC as sub(byval target as GLenum) 492 type PFNGLGETQUERYIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 493 type PFNGLGETQUERYOBJECTIVPROC as sub(byval id as GLuint, byval pname as GLenum, byval params as GLint ptr) 494 type PFNGLGETQUERYOBJECTUIVPROC as sub(byval id as GLuint, byval pname as GLenum, byval params as GLuint ptr) 495 type PFNGLBINDBUFFERPROC as sub(byval target as GLenum, byval buffer as GLuint) 496 type PFNGLDELETEBUFFERSPROC as sub(byval n as GLsizei, byval buffers as const GLuint ptr) 497 type PFNGLGENBUFFERSPROC as sub(byval n as GLsizei, byval buffers as GLuint ptr) 498 type PFNGLISBUFFERPROC as function(byval buffer as GLuint) as GLboolean 499 type PFNGLBUFFERDATAPROC as sub(byval target as GLenum, byval size as GLsizeiptr, byval data as const any ptr, byval usage as GLenum) 500 type PFNGLBUFFERSUBDATAPROC as sub(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as const any ptr) 501 type PFNGLGETBUFFERSUBDATAPROC as sub(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as any ptr) 502 type PFNGLMAPBUFFERPROC as function(byval target as GLenum, byval access as GLenum) as any ptr 503 type PFNGLUNMAPBUFFERPROC as function(byval target as GLenum) as GLboolean 504 type PFNGLGETBUFFERPARAMETERIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 505 type PFNGLGETBUFFERPOINTERVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as any ptr ptr) 506 507 #ifdef GL_GLEXT_PROTOTYPES 508 declare sub glGenQueries(byval n as GLsizei, byval ids as GLuint ptr) 509 declare sub glDeleteQueries(byval n as GLsizei, byval ids as const GLuint ptr) 510 declare function glIsQuery(byval id as GLuint) as GLboolean 511 declare sub glBeginQuery(byval target as GLenum, byval id as GLuint) 512 declare sub glEndQuery(byval target as GLenum) 513 declare sub glGetQueryiv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 514 declare sub glGetQueryObjectiv(byval id as GLuint, byval pname as GLenum, byval params as GLint ptr) 515 declare sub glGetQueryObjectuiv(byval id as GLuint, byval pname as GLenum, byval params as GLuint ptr) 516 declare sub glBindBuffer(byval target as GLenum, byval buffer as GLuint) 517 declare sub glDeleteBuffers(byval n as GLsizei, byval buffers as const GLuint ptr) 518 declare sub glGenBuffers(byval n as GLsizei, byval buffers as GLuint ptr) 519 declare function glIsBuffer(byval buffer as GLuint) as GLboolean 520 declare sub glBufferData(byval target as GLenum, byval size as GLsizeiptr, byval data as const any ptr, byval usage as GLenum) 521 declare sub glBufferSubData(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as const any ptr) 522 declare sub glGetBufferSubData(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as any ptr) 523 declare function glMapBuffer(byval target as GLenum, byval access as GLenum) as any ptr 524 declare function glUnmapBuffer(byval target as GLenum) as GLboolean 525 declare sub glGetBufferParameteriv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 526 declare sub glGetBufferPointerv(byval target as GLenum, byval pname as GLenum, byval params as any ptr ptr) 527 #endif 528 529 const GL_VERSION_2_0 = 1 530 type GLchar as zstring 531 const GL_BLEND_EQUATION_RGB = &h8009 532 const GL_VERTEX_ATTRIB_ARRAY_ENABLED = &h8622 533 const GL_VERTEX_ATTRIB_ARRAY_SIZE = &h8623 534 const GL_VERTEX_ATTRIB_ARRAY_STRIDE = &h8624 535 const GL_VERTEX_ATTRIB_ARRAY_TYPE = &h8625 536 const GL_CURRENT_VERTEX_ATTRIB = &h8626 537 const GL_VERTEX_PROGRAM_POINT_SIZE = &h8642 538 const GL_VERTEX_ATTRIB_ARRAY_POINTER = &h8645 539 const GL_STENCIL_BACK_FUNC = &h8800 540 const GL_STENCIL_BACK_FAIL = &h8801 541 const GL_STENCIL_BACK_PASS_DEPTH_FAIL = &h8802 542 const GL_STENCIL_BACK_PASS_DEPTH_PASS = &h8803 543 const GL_MAX_DRAW_BUFFERS = &h8824 544 const GL_DRAW_BUFFER0 = &h8825 545 const GL_DRAW_BUFFER1 = &h8826 546 const GL_DRAW_BUFFER2 = &h8827 547 const GL_DRAW_BUFFER3 = &h8828 548 const GL_DRAW_BUFFER4 = &h8829 549 const GL_DRAW_BUFFER5 = &h882A 550 const GL_DRAW_BUFFER6 = &h882B 551 const GL_DRAW_BUFFER7 = &h882C 552 const GL_DRAW_BUFFER8 = &h882D 553 const GL_DRAW_BUFFER9 = &h882E 554 const GL_DRAW_BUFFER10 = &h882F 555 const GL_DRAW_BUFFER11 = &h8830 556 const GL_DRAW_BUFFER12 = &h8831 557 const GL_DRAW_BUFFER13 = &h8832 558 const GL_DRAW_BUFFER14 = &h8833 559 const GL_DRAW_BUFFER15 = &h8834 560 const GL_BLEND_EQUATION_ALPHA = &h883D 561 const GL_MAX_VERTEX_ATTRIBS = &h8869 562 const GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = &h886A 563 const GL_MAX_TEXTURE_IMAGE_UNITS = &h8872 564 const GL_FRAGMENT_SHADER = &h8B30 565 const GL_VERTEX_SHADER = &h8B31 566 const GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = &h8B49 567 const GL_MAX_VERTEX_UNIFORM_COMPONENTS = &h8B4A 568 const GL_MAX_VARYING_FLOATS = &h8B4B 569 const GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = &h8B4C 570 const GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = &h8B4D 571 const GL_SHADER_TYPE = &h8B4F 572 const GL_FLOAT_VEC2 = &h8B50 573 const GL_FLOAT_VEC3 = &h8B51 574 const GL_FLOAT_VEC4 = &h8B52 575 const GL_INT_VEC2 = &h8B53 576 const GL_INT_VEC3 = &h8B54 577 const GL_INT_VEC4 = &h8B55 578 const GL_BOOL = &h8B56 579 const GL_BOOL_VEC2 = &h8B57 580 const GL_BOOL_VEC3 = &h8B58 581 const GL_BOOL_VEC4 = &h8B59 582 const GL_FLOAT_MAT2 = &h8B5A 583 const GL_FLOAT_MAT3 = &h8B5B 584 const GL_FLOAT_MAT4 = &h8B5C 585 const GL_SAMPLER_1D = &h8B5D 586 const GL_SAMPLER_2D = &h8B5E 587 const GL_SAMPLER_3D = &h8B5F 588 const GL_SAMPLER_CUBE = &h8B60 589 const GL_SAMPLER_1D_SHADOW = &h8B61 590 const GL_SAMPLER_2D_SHADOW = &h8B62 591 const GL_DELETE_STATUS = &h8B80 592 const GL_COMPILE_STATUS = &h8B81 593 const GL_LINK_STATUS = &h8B82 594 const GL_VALIDATE_STATUS = &h8B83 595 const GL_INFO_LOG_LENGTH = &h8B84 596 const GL_ATTACHED_SHADERS = &h8B85 597 const GL_ACTIVE_UNIFORMS = &h8B86 598 const GL_ACTIVE_UNIFORM_MAX_LENGTH = &h8B87 599 const GL_SHADER_SOURCE_LENGTH = &h8B88 600 const GL_ACTIVE_ATTRIBUTES = &h8B89 601 const GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = &h8B8A 602 const GL_FRAGMENT_SHADER_DERIVATIVE_HINT = &h8B8B 603 const GL_SHADING_LANGUAGE_VERSION = &h8B8C 604 const GL_CURRENT_PROGRAM = &h8B8D 605 const GL_POINT_SPRITE_COORD_ORIGIN = &h8CA0 606 const GL_LOWER_LEFT = &h8CA1 607 const GL_UPPER_LEFT = &h8CA2 608 const GL_STENCIL_BACK_REF = &h8CA3 609 const GL_STENCIL_BACK_VALUE_MASK = &h8CA4 610 const GL_STENCIL_BACK_WRITEMASK = &h8CA5 611 const GL_VERTEX_PROGRAM_TWO_SIDE = &h8643 612 const GL_POINT_SPRITE = &h8861 613 const GL_COORD_REPLACE = &h8862 614 const GL_MAX_TEXTURE_COORDS = &h8871 615 616 type PFNGLBLENDEQUATIONSEPARATEPROC as sub(byval modeRGB as GLenum, byval modeAlpha as GLenum) 617 type PFNGLDRAWBUFFERSPROC as sub(byval n as GLsizei, byval bufs as const GLenum ptr) 618 type PFNGLSTENCILOPSEPARATEPROC as sub(byval face as GLenum, byval sfail as GLenum, byval dpfail as GLenum, byval dppass as GLenum) 619 type PFNGLSTENCILFUNCSEPARATEPROC as sub(byval face as GLenum, byval func as GLenum, byval ref as GLint, byval mask as GLuint) 620 type PFNGLSTENCILMASKSEPARATEPROC as sub(byval face as GLenum, byval mask as GLuint) 621 type PFNGLATTACHSHADERPROC as sub(byval program as GLuint, byval shader as GLuint) 622 type PFNGLBINDATTRIBLOCATIONPROC as sub(byval program as GLuint, byval index as GLuint, byval name as const GLchar ptr) 623 type PFNGLCOMPILESHADERPROC as sub(byval shader as GLuint) 624 type PFNGLCREATEPROGRAMPROC as function() as GLuint 625 type PFNGLCREATESHADERPROC as function(byval type as GLenum) as GLuint 626 type PFNGLDELETEPROGRAMPROC as sub(byval program as GLuint) 627 type PFNGLDELETESHADERPROC as sub(byval shader as GLuint) 628 type PFNGLDETACHSHADERPROC as sub(byval program as GLuint, byval shader as GLuint) 629 type PFNGLDISABLEVERTEXATTRIBARRAYPROC as sub(byval index as GLuint) 630 type PFNGLENABLEVERTEXATTRIBARRAYPROC as sub(byval index as GLuint) 631 type PFNGLGETACTIVEATTRIBPROC as sub(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr) 632 type PFNGLGETACTIVEUNIFORMPROC as sub(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr) 633 type PFNGLGETATTACHEDSHADERSPROC as sub(byval program as GLuint, byval maxCount as GLsizei, byval count as GLsizei ptr, byval shaders as GLuint ptr) 634 type PFNGLGETATTRIBLOCATIONPROC as function(byval program as GLuint, byval name as const GLchar ptr) as GLint 635 type PFNGLGETPROGRAMIVPROC as sub(byval program as GLuint, byval pname as GLenum, byval params as GLint ptr) 636 type PFNGLGETPROGRAMINFOLOGPROC as sub(byval program as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr) 637 type PFNGLGETSHADERIVPROC as sub(byval shader as GLuint, byval pname as GLenum, byval params as GLint ptr) 638 type PFNGLGETSHADERINFOLOGPROC as sub(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr) 639 type PFNGLGETSHADERSOURCEPROC as sub(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval source as GLchar ptr) 640 type PFNGLGETUNIFORMLOCATIONPROC as function(byval program as GLuint, byval name as const GLchar ptr) as GLint 641 type PFNGLGETUNIFORMFVPROC as sub(byval program as GLuint, byval location as GLint, byval params as GLfloat ptr) 642 type PFNGLGETUNIFORMIVPROC as sub(byval program as GLuint, byval location as GLint, byval params as GLint ptr) 643 type PFNGLGETVERTEXATTRIBDVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLdouble ptr) 644 type PFNGLGETVERTEXATTRIBFVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLfloat ptr) 645 type PFNGLGETVERTEXATTRIBIVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLint ptr) 646 type PFNGLGETVERTEXATTRIBPOINTERVPROC as sub(byval index as GLuint, byval pname as GLenum, byval pointer as any ptr ptr) 647 type PFNGLISPROGRAMPROC as function(byval program as GLuint) as GLboolean 648 type PFNGLISSHADERPROC as function(byval shader as GLuint) as GLboolean 649 type PFNGLLINKPROGRAMPROC as sub(byval program as GLuint) 650 type PFNGLSHADERSOURCEPROC as sub(byval shader as GLuint, byval count as GLsizei, byval string as const GLchar const ptr ptr, byval length as const GLint ptr) 651 type PFNGLUSEPROGRAMPROC as sub(byval program as GLuint) 652 type PFNGLUNIFORM1FPROC as sub(byval location as GLint, byval v0 as GLfloat) 653 type PFNGLUNIFORM2FPROC as sub(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat) 654 type PFNGLUNIFORM3FPROC as sub(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat) 655 type PFNGLUNIFORM4FPROC as sub(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat, byval v3 as GLfloat) 656 type PFNGLUNIFORM1IPROC as sub(byval location as GLint, byval v0 as GLint) 657 type PFNGLUNIFORM2IPROC as sub(byval location as GLint, byval v0 as GLint, byval v1 as GLint) 658 type PFNGLUNIFORM3IPROC as sub(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint) 659 type PFNGLUNIFORM4IPROC as sub(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint, byval v3 as GLint) 660 type PFNGLUNIFORM1FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 661 type PFNGLUNIFORM2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 662 type PFNGLUNIFORM3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 663 type PFNGLUNIFORM4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 664 type PFNGLUNIFORM1IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 665 type PFNGLUNIFORM2IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 666 type PFNGLUNIFORM3IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 667 type PFNGLUNIFORM4IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 668 type PFNGLUNIFORMMATRIX2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 669 type PFNGLUNIFORMMATRIX3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 670 type PFNGLUNIFORMMATRIX4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 671 type PFNGLVALIDATEPROGRAMPROC as sub(byval program as GLuint) 672 type PFNGLVERTEXATTRIB1DPROC as sub(byval index as GLuint, byval x as GLdouble) 673 type PFNGLVERTEXATTRIB1DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 674 type PFNGLVERTEXATTRIB1FPROC as sub(byval index as GLuint, byval x as GLfloat) 675 type PFNGLVERTEXATTRIB1FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr) 676 type PFNGLVERTEXATTRIB1SPROC as sub(byval index as GLuint, byval x as GLshort) 677 type PFNGLVERTEXATTRIB1SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr) 678 type PFNGLVERTEXATTRIB2DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble) 679 type PFNGLVERTEXATTRIB2DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 680 type PFNGLVERTEXATTRIB2FPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat) 681 type PFNGLVERTEXATTRIB2FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr) 682 type PFNGLVERTEXATTRIB2SPROC as sub(byval index as GLuint, byval x as GLshort, byval y as GLshort) 683 type PFNGLVERTEXATTRIB2SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr) 684 type PFNGLVERTEXATTRIB3DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 685 type PFNGLVERTEXATTRIB3DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 686 type PFNGLVERTEXATTRIB3FPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat) 687 type PFNGLVERTEXATTRIB3FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr) 688 type PFNGLVERTEXATTRIB3SPROC as sub(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort) 689 type PFNGLVERTEXATTRIB3SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr) 690 type PFNGLVERTEXATTRIB4NBVPROC as sub(byval index as GLuint, byval v as const GLbyte ptr) 691 type PFNGLVERTEXATTRIB4NIVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 692 type PFNGLVERTEXATTRIB4NSVPROC as sub(byval index as GLuint, byval v as const GLshort ptr) 693 type PFNGLVERTEXATTRIB4NUBPROC as sub(byval index as GLuint, byval x as GLubyte, byval y as GLubyte, byval z as GLubyte, byval w as GLubyte) 694 type PFNGLVERTEXATTRIB4NUBVPROC as sub(byval index as GLuint, byval v as const GLubyte ptr) 695 type PFNGLVERTEXATTRIB4NUIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr) 696 type PFNGLVERTEXATTRIB4NUSVPROC as sub(byval index as GLuint, byval v as const GLushort ptr) 697 type PFNGLVERTEXATTRIB4BVPROC as sub(byval index as GLuint, byval v as const GLbyte ptr) 698 type PFNGLVERTEXATTRIB4DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble) 699 type PFNGLVERTEXATTRIB4DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 700 type PFNGLVERTEXATTRIB4FPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat, byval w as GLfloat) 701 type PFNGLVERTEXATTRIB4FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr) 702 type PFNGLVERTEXATTRIB4IVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 703 type PFNGLVERTEXATTRIB4SPROC as sub(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort, byval w as GLshort) 704 type PFNGLVERTEXATTRIB4SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr) 705 type PFNGLVERTEXATTRIB4UBVPROC as sub(byval index as GLuint, byval v as const GLubyte ptr) 706 type PFNGLVERTEXATTRIB4UIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr) 707 type PFNGLVERTEXATTRIB4USVPROC as sub(byval index as GLuint, byval v as const GLushort ptr) 708 type PFNGLVERTEXATTRIBPOINTERPROC as sub(byval index as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval stride as GLsizei, byval pointer as const any ptr) 709 710 #ifdef GL_GLEXT_PROTOTYPES 711 declare sub glBlendEquationSeparate(byval modeRGB as GLenum, byval modeAlpha as GLenum) 712 declare sub glDrawBuffers(byval n as GLsizei, byval bufs as const GLenum ptr) 713 declare sub glStencilOpSeparate(byval face as GLenum, byval sfail as GLenum, byval dpfail as GLenum, byval dppass as GLenum) 714 declare sub glStencilFuncSeparate(byval face as GLenum, byval func as GLenum, byval ref as GLint, byval mask as GLuint) 715 declare sub glStencilMaskSeparate(byval face as GLenum, byval mask as GLuint) 716 declare sub glAttachShader(byval program as GLuint, byval shader as GLuint) 717 declare sub glBindAttribLocation(byval program as GLuint, byval index as GLuint, byval name as const GLchar ptr) 718 declare sub glCompileShader(byval shader as GLuint) 719 declare function glCreateProgram() as GLuint 720 declare function glCreateShader(byval type as GLenum) as GLuint 721 declare sub glDeleteProgram(byval program as GLuint) 722 declare sub glDeleteShader(byval shader as GLuint) 723 declare sub glDetachShader(byval program as GLuint, byval shader as GLuint) 724 declare sub glDisableVertexAttribArray(byval index as GLuint) 725 declare sub glEnableVertexAttribArray(byval index as GLuint) 726 declare sub glGetActiveAttrib(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr) 727 declare sub glGetActiveUniform(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr) 728 declare sub glGetAttachedShaders(byval program as GLuint, byval maxCount as GLsizei, byval count as GLsizei ptr, byval shaders as GLuint ptr) 729 declare function glGetAttribLocation(byval program as GLuint, byval name as const GLchar ptr) as GLint 730 declare sub glGetProgramiv(byval program as GLuint, byval pname as GLenum, byval params as GLint ptr) 731 declare sub glGetProgramInfoLog(byval program as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr) 732 declare sub glGetShaderiv(byval shader as GLuint, byval pname as GLenum, byval params as GLint ptr) 733 declare sub glGetShaderInfoLog(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr) 734 declare sub glGetShaderSource(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval source as GLchar ptr) 735 declare function glGetUniformLocation(byval program as GLuint, byval name as const GLchar ptr) as GLint 736 declare sub glGetUniformfv(byval program as GLuint, byval location as GLint, byval params as GLfloat ptr) 737 declare sub glGetUniformiv(byval program as GLuint, byval location as GLint, byval params as GLint ptr) 738 declare sub glGetVertexAttribdv(byval index as GLuint, byval pname as GLenum, byval params as GLdouble ptr) 739 declare sub glGetVertexAttribfv(byval index as GLuint, byval pname as GLenum, byval params as GLfloat ptr) 740 declare sub glGetVertexAttribiv(byval index as GLuint, byval pname as GLenum, byval params as GLint ptr) 741 declare sub glGetVertexAttribPointerv(byval index as GLuint, byval pname as GLenum, byval pointer as any ptr ptr) 742 declare function glIsProgram(byval program as GLuint) as GLboolean 743 declare function glIsShader(byval shader as GLuint) as GLboolean 744 declare sub glLinkProgram(byval program as GLuint) 745 declare sub glShaderSource(byval shader as GLuint, byval count as GLsizei, byval string as const GLchar const ptr ptr, byval length as const GLint ptr) 746 declare sub glUseProgram(byval program as GLuint) 747 declare sub glUniform1f(byval location as GLint, byval v0 as GLfloat) 748 declare sub glUniform2f(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat) 749 declare sub glUniform3f(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat) 750 declare sub glUniform4f(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat, byval v3 as GLfloat) 751 declare sub glUniform1i(byval location as GLint, byval v0 as GLint) 752 declare sub glUniform2i(byval location as GLint, byval v0 as GLint, byval v1 as GLint) 753 declare sub glUniform3i(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint) 754 declare sub glUniform4i(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint, byval v3 as GLint) 755 declare sub glUniform1fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 756 declare sub glUniform2fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 757 declare sub glUniform3fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 758 declare sub glUniform4fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 759 declare sub glUniform1iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 760 declare sub glUniform2iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 761 declare sub glUniform3iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 762 declare sub glUniform4iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 763 declare sub glUniformMatrix2fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 764 declare sub glUniformMatrix3fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 765 declare sub glUniformMatrix4fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 766 declare sub glValidateProgram(byval program as GLuint) 767 declare sub glVertexAttrib1d(byval index as GLuint, byval x as GLdouble) 768 declare sub glVertexAttrib1dv(byval index as GLuint, byval v as const GLdouble ptr) 769 declare sub glVertexAttrib1f(byval index as GLuint, byval x as GLfloat) 770 declare sub glVertexAttrib1fv(byval index as GLuint, byval v as const GLfloat ptr) 771 declare sub glVertexAttrib1s(byval index as GLuint, byval x as GLshort) 772 declare sub glVertexAttrib1sv(byval index as GLuint, byval v as const GLshort ptr) 773 declare sub glVertexAttrib2d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble) 774 declare sub glVertexAttrib2dv(byval index as GLuint, byval v as const GLdouble ptr) 775 declare sub glVertexAttrib2f(byval index as GLuint, byval x as GLfloat, byval y as GLfloat) 776 declare sub glVertexAttrib2fv(byval index as GLuint, byval v as const GLfloat ptr) 777 declare sub glVertexAttrib2s(byval index as GLuint, byval x as GLshort, byval y as GLshort) 778 declare sub glVertexAttrib2sv(byval index as GLuint, byval v as const GLshort ptr) 779 declare sub glVertexAttrib3d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 780 declare sub glVertexAttrib3dv(byval index as GLuint, byval v as const GLdouble ptr) 781 declare sub glVertexAttrib3f(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat) 782 declare sub glVertexAttrib3fv(byval index as GLuint, byval v as const GLfloat ptr) 783 declare sub glVertexAttrib3s(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort) 784 declare sub glVertexAttrib3sv(byval index as GLuint, byval v as const GLshort ptr) 785 declare sub glVertexAttrib4Nbv(byval index as GLuint, byval v as const GLbyte ptr) 786 declare sub glVertexAttrib4Niv(byval index as GLuint, byval v as const GLint ptr) 787 declare sub glVertexAttrib4Nsv(byval index as GLuint, byval v as const GLshort ptr) 788 declare sub glVertexAttrib4Nub(byval index as GLuint, byval x as GLubyte, byval y as GLubyte, byval z as GLubyte, byval w as GLubyte) 789 declare sub glVertexAttrib4Nubv(byval index as GLuint, byval v as const GLubyte ptr) 790 declare sub glVertexAttrib4Nuiv(byval index as GLuint, byval v as const GLuint ptr) 791 declare sub glVertexAttrib4Nusv(byval index as GLuint, byval v as const GLushort ptr) 792 declare sub glVertexAttrib4bv(byval index as GLuint, byval v as const GLbyte ptr) 793 declare sub glVertexAttrib4d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble) 794 declare sub glVertexAttrib4dv(byval index as GLuint, byval v as const GLdouble ptr) 795 declare sub glVertexAttrib4f(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat, byval w as GLfloat) 796 declare sub glVertexAttrib4fv(byval index as GLuint, byval v as const GLfloat ptr) 797 declare sub glVertexAttrib4iv(byval index as GLuint, byval v as const GLint ptr) 798 declare sub glVertexAttrib4s(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort, byval w as GLshort) 799 declare sub glVertexAttrib4sv(byval index as GLuint, byval v as const GLshort ptr) 800 declare sub glVertexAttrib4ubv(byval index as GLuint, byval v as const GLubyte ptr) 801 declare sub glVertexAttrib4uiv(byval index as GLuint, byval v as const GLuint ptr) 802 declare sub glVertexAttrib4usv(byval index as GLuint, byval v as const GLushort ptr) 803 declare sub glVertexAttribPointer(byval index as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval stride as GLsizei, byval pointer as const any ptr) 804 #endif 805 806 const GL_VERSION_2_1 = 1 807 const GL_PIXEL_PACK_BUFFER = &h88EB 808 const GL_PIXEL_UNPACK_BUFFER = &h88EC 809 const GL_PIXEL_PACK_BUFFER_BINDING = &h88ED 810 const GL_PIXEL_UNPACK_BUFFER_BINDING = &h88EF 811 const GL_FLOAT_MAT2x3 = &h8B65 812 const GL_FLOAT_MAT2x4 = &h8B66 813 const GL_FLOAT_MAT3x2 = &h8B67 814 const GL_FLOAT_MAT3x4 = &h8B68 815 const GL_FLOAT_MAT4x2 = &h8B69 816 const GL_FLOAT_MAT4x3 = &h8B6A 817 const GL_SRGB = &h8C40 818 const GL_SRGB8 = &h8C41 819 const GL_SRGB_ALPHA = &h8C42 820 const GL_SRGB8_ALPHA8 = &h8C43 821 const GL_COMPRESSED_SRGB = &h8C48 822 const GL_COMPRESSED_SRGB_ALPHA = &h8C49 823 const GL_CURRENT_RASTER_SECONDARY_COLOR = &h845F 824 const GL_SLUMINANCE_ALPHA = &h8C44 825 const GL_SLUMINANCE8_ALPHA8 = &h8C45 826 const GL_SLUMINANCE = &h8C46 827 const GL_SLUMINANCE8 = &h8C47 828 const GL_COMPRESSED_SLUMINANCE = &h8C4A 829 const GL_COMPRESSED_SLUMINANCE_ALPHA = &h8C4B 830 831 type PFNGLUNIFORMMATRIX2X3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 832 type PFNGLUNIFORMMATRIX3X2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 833 type PFNGLUNIFORMMATRIX2X4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 834 type PFNGLUNIFORMMATRIX4X2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 835 type PFNGLUNIFORMMATRIX3X4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 836 type PFNGLUNIFORMMATRIX4X3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 837 838 #ifdef GL_GLEXT_PROTOTYPES 839 declare sub glUniformMatrix2x3fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 840 declare sub glUniformMatrix3x2fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 841 declare sub glUniformMatrix2x4fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 842 declare sub glUniformMatrix4x2fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 843 declare sub glUniformMatrix3x4fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 844 declare sub glUniformMatrix4x3fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 845 #endif 846 847 const GL_VERSION_3_0 = 1 848 type GLhalf as ushort 849 const GL_COMPARE_REF_TO_TEXTURE = &h884E 850 const GL_CLIP_DISTANCE0 = &h3000 851 const GL_CLIP_DISTANCE1 = &h3001 852 const GL_CLIP_DISTANCE2 = &h3002 853 const GL_CLIP_DISTANCE3 = &h3003 854 const GL_CLIP_DISTANCE4 = &h3004 855 const GL_CLIP_DISTANCE5 = &h3005 856 const GL_CLIP_DISTANCE6 = &h3006 857 const GL_CLIP_DISTANCE7 = &h3007 858 const GL_MAX_CLIP_DISTANCES = &h0D32 859 const GL_MAJOR_VERSION = &h821B 860 const GL_MINOR_VERSION = &h821C 861 const GL_NUM_EXTENSIONS = &h821D 862 const GL_CONTEXT_FLAGS = &h821E 863 const GL_COMPRESSED_RED = &h8225 864 const GL_COMPRESSED_RG = &h8226 865 const GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = &h00000001 866 const GL_RGBA32F = &h8814 867 const GL_RGB32F = &h8815 868 const GL_RGBA16F = &h881A 869 const GL_RGB16F = &h881B 870 const GL_VERTEX_ATTRIB_ARRAY_INTEGER = &h88FD 871 const GL_MAX_ARRAY_TEXTURE_LAYERS = &h88FF 872 const GL_MIN_PROGRAM_TEXEL_OFFSET = &h8904 873 const GL_MAX_PROGRAM_TEXEL_OFFSET = &h8905 874 const GL_CLAMP_READ_COLOR = &h891C 875 const GL_FIXED_ONLY = &h891D 876 const GL_MAX_VARYING_COMPONENTS = &h8B4B 877 const GL_TEXTURE_1D_ARRAY = &h8C18 878 const GL_PROXY_TEXTURE_1D_ARRAY = &h8C19 879 const GL_TEXTURE_2D_ARRAY = &h8C1A 880 const GL_PROXY_TEXTURE_2D_ARRAY = &h8C1B 881 const GL_TEXTURE_BINDING_1D_ARRAY = &h8C1C 882 const GL_TEXTURE_BINDING_2D_ARRAY = &h8C1D 883 const GL_R11F_G11F_B10F = &h8C3A 884 const GL_UNSIGNED_INT_10F_11F_11F_REV = &h8C3B 885 const GL_RGB9_E5 = &h8C3D 886 const GL_UNSIGNED_INT_5_9_9_9_REV = &h8C3E 887 const GL_TEXTURE_SHARED_SIZE = &h8C3F 888 const GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = &h8C76 889 const GL_TRANSFORM_FEEDBACK_BUFFER_MODE = &h8C7F 890 const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = &h8C80 891 const GL_TRANSFORM_FEEDBACK_VARYINGS = &h8C83 892 const GL_TRANSFORM_FEEDBACK_BUFFER_START = &h8C84 893 const GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = &h8C85 894 const GL_PRIMITIVES_GENERATED = &h8C87 895 const GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = &h8C88 896 const GL_RASTERIZER_DISCARD = &h8C89 897 const GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = &h8C8A 898 const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = &h8C8B 899 const GL_INTERLEAVED_ATTRIBS = &h8C8C 900 const GL_SEPARATE_ATTRIBS = &h8C8D 901 const GL_TRANSFORM_FEEDBACK_BUFFER = &h8C8E 902 const GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = &h8C8F 903 const GL_RGBA32UI = &h8D70 904 const GL_RGB32UI = &h8D71 905 const GL_RGBA16UI = &h8D76 906 const GL_RGB16UI = &h8D77 907 const GL_RGBA8UI = &h8D7C 908 const GL_RGB8UI = &h8D7D 909 const GL_RGBA32I = &h8D82 910 const GL_RGB32I = &h8D83 911 const GL_RGBA16I = &h8D88 912 const GL_RGB16I = &h8D89 913 const GL_RGBA8I = &h8D8E 914 const GL_RGB8I = &h8D8F 915 const GL_RED_INTEGER = &h8D94 916 const GL_GREEN_INTEGER = &h8D95 917 const GL_BLUE_INTEGER = &h8D96 918 const GL_RGB_INTEGER = &h8D98 919 const GL_RGBA_INTEGER = &h8D99 920 const GL_BGR_INTEGER = &h8D9A 921 const GL_BGRA_INTEGER = &h8D9B 922 const GL_SAMPLER_1D_ARRAY = &h8DC0 923 const GL_SAMPLER_2D_ARRAY = &h8DC1 924 const GL_SAMPLER_1D_ARRAY_SHADOW = &h8DC3 925 const GL_SAMPLER_2D_ARRAY_SHADOW = &h8DC4 926 const GL_SAMPLER_CUBE_SHADOW = &h8DC5 927 const GL_UNSIGNED_INT_VEC2 = &h8DC6 928 const GL_UNSIGNED_INT_VEC3 = &h8DC7 929 const GL_UNSIGNED_INT_VEC4 = &h8DC8 930 const GL_INT_SAMPLER_1D = &h8DC9 931 const GL_INT_SAMPLER_2D = &h8DCA 932 const GL_INT_SAMPLER_3D = &h8DCB 933 const GL_INT_SAMPLER_CUBE = &h8DCC 934 const GL_INT_SAMPLER_1D_ARRAY = &h8DCE 935 const GL_INT_SAMPLER_2D_ARRAY = &h8DCF 936 const GL_UNSIGNED_INT_SAMPLER_1D = &h8DD1 937 const GL_UNSIGNED_INT_SAMPLER_2D = &h8DD2 938 const GL_UNSIGNED_INT_SAMPLER_3D = &h8DD3 939 const GL_UNSIGNED_INT_SAMPLER_CUBE = &h8DD4 940 const GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = &h8DD6 941 const GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = &h8DD7 942 const GL_QUERY_WAIT = &h8E13 943 const GL_QUERY_NO_WAIT = &h8E14 944 const GL_QUERY_BY_REGION_WAIT = &h8E15 945 const GL_QUERY_BY_REGION_NO_WAIT = &h8E16 946 const GL_BUFFER_ACCESS_FLAGS = &h911F 947 const GL_BUFFER_MAP_LENGTH = &h9120 948 const GL_BUFFER_MAP_OFFSET = &h9121 949 const GL_DEPTH_COMPONENT32F = &h8CAC 950 const GL_DEPTH32F_STENCIL8 = &h8CAD 951 const GL_FLOAT_32_UNSIGNED_INT_24_8_REV = &h8DAD 952 const GL_INVALID_FRAMEBUFFER_OPERATION = &h0506 953 const GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = &h8210 954 const GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = &h8211 955 const GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = &h8212 956 const GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = &h8213 957 const GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = &h8214 958 const GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = &h8215 959 const GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = &h8216 960 const GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = &h8217 961 const GL_FRAMEBUFFER_DEFAULT = &h8218 962 const GL_FRAMEBUFFER_UNDEFINED = &h8219 963 const GL_DEPTH_STENCIL_ATTACHMENT = &h821A 964 const GL_MAX_RENDERBUFFER_SIZE = &h84E8 965 const GL_DEPTH_STENCIL = &h84F9 966 const GL_UNSIGNED_INT_24_8 = &h84FA 967 const GL_DEPTH24_STENCIL8 = &h88F0 968 const GL_TEXTURE_STENCIL_SIZE = &h88F1 969 const GL_TEXTURE_RED_TYPE = &h8C10 970 const GL_TEXTURE_GREEN_TYPE = &h8C11 971 const GL_TEXTURE_BLUE_TYPE = &h8C12 972 const GL_TEXTURE_ALPHA_TYPE = &h8C13 973 const GL_TEXTURE_DEPTH_TYPE = &h8C16 974 const GL_UNSIGNED_NORMALIZED = &h8C17 975 const GL_FRAMEBUFFER_BINDING = &h8CA6 976 const GL_DRAW_FRAMEBUFFER_BINDING = &h8CA6 977 const GL_RENDERBUFFER_BINDING = &h8CA7 978 const GL_READ_FRAMEBUFFER = &h8CA8 979 const GL_DRAW_FRAMEBUFFER = &h8CA9 980 const GL_READ_FRAMEBUFFER_BINDING = &h8CAA 981 const GL_RENDERBUFFER_SAMPLES = &h8CAB 982 const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = &h8CD0 983 const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = &h8CD1 984 const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = &h8CD2 985 const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = &h8CD3 986 const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = &h8CD4 987 const GL_FRAMEBUFFER_COMPLETE = &h8CD5 988 const GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = &h8CD6 989 const GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = &h8CD7 990 const GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = &h8CDB 991 const GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = &h8CDC 992 const GL_FRAMEBUFFER_UNSUPPORTED = &h8CDD 993 const GL_MAX_COLOR_ATTACHMENTS = &h8CDF 994 const GL_COLOR_ATTACHMENT0 = &h8CE0 995 const GL_COLOR_ATTACHMENT1 = &h8CE1 996 const GL_COLOR_ATTACHMENT2 = &h8CE2 997 const GL_COLOR_ATTACHMENT3 = &h8CE3 998 const GL_COLOR_ATTACHMENT4 = &h8CE4 999 const GL_COLOR_ATTACHMENT5 = &h8CE5 1000 const GL_COLOR_ATTACHMENT6 = &h8CE6 1001 const GL_COLOR_ATTACHMENT7 = &h8CE7 1002 const GL_COLOR_ATTACHMENT8 = &h8CE8 1003 const GL_COLOR_ATTACHMENT9 = &h8CE9 1004 const GL_COLOR_ATTACHMENT10 = &h8CEA 1005 const GL_COLOR_ATTACHMENT11 = &h8CEB 1006 const GL_COLOR_ATTACHMENT12 = &h8CEC 1007 const GL_COLOR_ATTACHMENT13 = &h8CED 1008 const GL_COLOR_ATTACHMENT14 = &h8CEE 1009 const GL_COLOR_ATTACHMENT15 = &h8CEF 1010 const GL_DEPTH_ATTACHMENT = &h8D00 1011 const GL_STENCIL_ATTACHMENT = &h8D20 1012 const GL_FRAMEBUFFER = &h8D40 1013 const GL_RENDERBUFFER = &h8D41 1014 const GL_RENDERBUFFER_WIDTH = &h8D42 1015 const GL_RENDERBUFFER_HEIGHT = &h8D43 1016 const GL_RENDERBUFFER_INTERNAL_FORMAT = &h8D44 1017 const GL_STENCIL_INDEX1 = &h8D46 1018 const GL_STENCIL_INDEX4 = &h8D47 1019 const GL_STENCIL_INDEX8 = &h8D48 1020 const GL_STENCIL_INDEX16 = &h8D49 1021 const GL_RENDERBUFFER_RED_SIZE = &h8D50 1022 const GL_RENDERBUFFER_GREEN_SIZE = &h8D51 1023 const GL_RENDERBUFFER_BLUE_SIZE = &h8D52 1024 const GL_RENDERBUFFER_ALPHA_SIZE = &h8D53 1025 const GL_RENDERBUFFER_DEPTH_SIZE = &h8D54 1026 const GL_RENDERBUFFER_STENCIL_SIZE = &h8D55 1027 const GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = &h8D56 1028 const GL_MAX_SAMPLES = &h8D57 1029 const GL_INDEX = &h8222 1030 const GL_TEXTURE_LUMINANCE_TYPE = &h8C14 1031 const GL_TEXTURE_INTENSITY_TYPE = &h8C15 1032 const GL_FRAMEBUFFER_SRGB = &h8DB9 1033 const GL_HALF_FLOAT = &h140B 1034 const GL_MAP_READ_BIT = &h0001 1035 const GL_MAP_WRITE_BIT = &h0002 1036 const GL_MAP_INVALIDATE_RANGE_BIT = &h0004 1037 const GL_MAP_INVALIDATE_BUFFER_BIT = &h0008 1038 const GL_MAP_FLUSH_EXPLICIT_BIT = &h0010 1039 const GL_MAP_UNSYNCHRONIZED_BIT = &h0020 1040 const GL_COMPRESSED_RED_RGTC1 = &h8DBB 1041 const GL_COMPRESSED_SIGNED_RED_RGTC1 = &h8DBC 1042 const GL_COMPRESSED_RG_RGTC2 = &h8DBD 1043 const GL_COMPRESSED_SIGNED_RG_RGTC2 = &h8DBE 1044 const GL_RG = &h8227 1045 const GL_RG_INTEGER = &h8228 1046 const GL_R8 = &h8229 1047 const GL_R16 = &h822A 1048 const GL_RG8 = &h822B 1049 const GL_RG16 = &h822C 1050 const GL_R16F = &h822D 1051 const GL_R32F = &h822E 1052 const GL_RG16F = &h822F 1053 const GL_RG32F = &h8230 1054 const GL_R8I = &h8231 1055 const GL_R8UI = &h8232 1056 const GL_R16I = &h8233 1057 const GL_R16UI = &h8234 1058 const GL_R32I = &h8235 1059 const GL_R32UI = &h8236 1060 const GL_RG8I = &h8237 1061 const GL_RG8UI = &h8238 1062 const GL_RG16I = &h8239 1063 const GL_RG16UI = &h823A 1064 const GL_RG32I = &h823B 1065 const GL_RG32UI = &h823C 1066 const GL_VERTEX_ARRAY_BINDING = &h85B5 1067 const GL_CLAMP_VERTEX_COLOR = &h891A 1068 const GL_CLAMP_FRAGMENT_COLOR = &h891B 1069 const GL_ALPHA_INTEGER = &h8D97 1070 1071 type PFNGLCOLORMASKIPROC as sub(byval index as GLuint, byval r as GLboolean, byval g as GLboolean, byval b as GLboolean, byval a as GLboolean) 1072 type PFNGLGETBOOLEANI_VPROC as sub(byval target as GLenum, byval index as GLuint, byval data as GLboolean ptr) 1073 type PFNGLGETINTEGERI_VPROC as sub(byval target as GLenum, byval index as GLuint, byval data as GLint ptr) 1074 type PFNGLENABLEIPROC as sub(byval target as GLenum, byval index as GLuint) 1075 type PFNGLDISABLEIPROC as sub(byval target as GLenum, byval index as GLuint) 1076 type PFNGLISENABLEDIPROC as function(byval target as GLenum, byval index as GLuint) as GLboolean 1077 type PFNGLBEGINTRANSFORMFEEDBACKPROC as sub(byval primitiveMode as GLenum) 1078 type PFNGLENDTRANSFORMFEEDBACKPROC as sub() 1079 type PFNGLBINDBUFFERRANGEPROC as sub(byval target as GLenum, byval index as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizeiptr) 1080 type PFNGLBINDBUFFERBASEPROC as sub(byval target as GLenum, byval index as GLuint, byval buffer as GLuint) 1081 type PFNGLTRANSFORMFEEDBACKVARYINGSPROC as sub(byval program as GLuint, byval count as GLsizei, byval varyings as const GLchar const ptr ptr, byval bufferMode as GLenum) 1082 type PFNGLGETTRANSFORMFEEDBACKVARYINGPROC as sub(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLsizei ptr, byval type as GLenum ptr, byval name as GLchar ptr) 1083 type PFNGLCLAMPCOLORPROC as sub(byval target as GLenum, byval clamp as GLenum) 1084 type PFNGLBEGINCONDITIONALRENDERPROC as sub(byval id as GLuint, byval mode as GLenum) 1085 type PFNGLENDCONDITIONALRENDERPROC as sub() 1086 type PFNGLVERTEXATTRIBIPOINTERPROC as sub(byval index as GLuint, byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 1087 type PFNGLGETVERTEXATTRIBIIVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLint ptr) 1088 type PFNGLGETVERTEXATTRIBIUIVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLuint ptr) 1089 type PFNGLVERTEXATTRIBI1IPROC as sub(byval index as GLuint, byval x as GLint) 1090 type PFNGLVERTEXATTRIBI2IPROC as sub(byval index as GLuint, byval x as GLint, byval y as GLint) 1091 type PFNGLVERTEXATTRIBI3IPROC as sub(byval index as GLuint, byval x as GLint, byval y as GLint, byval z as GLint) 1092 type PFNGLVERTEXATTRIBI4IPROC as sub(byval index as GLuint, byval x as GLint, byval y as GLint, byval z as GLint, byval w as GLint) 1093 type PFNGLVERTEXATTRIBI1UIPROC as sub(byval index as GLuint, byval x as GLuint) 1094 type PFNGLVERTEXATTRIBI2UIPROC as sub(byval index as GLuint, byval x as GLuint, byval y as GLuint) 1095 type PFNGLVERTEXATTRIBI3UIPROC as sub(byval index as GLuint, byval x as GLuint, byval y as GLuint, byval z as GLuint) 1096 type PFNGLVERTEXATTRIBI4UIPROC as sub(byval index as GLuint, byval x as GLuint, byval y as GLuint, byval z as GLuint, byval w as GLuint) 1097 type PFNGLVERTEXATTRIBI1IVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 1098 type PFNGLVERTEXATTRIBI2IVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 1099 type PFNGLVERTEXATTRIBI3IVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 1100 type PFNGLVERTEXATTRIBI4IVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 1101 type PFNGLVERTEXATTRIBI1UIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr) 1102 type PFNGLVERTEXATTRIBI2UIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr) 1103 type PFNGLVERTEXATTRIBI3UIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr) 1104 type PFNGLVERTEXATTRIBI4UIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr) 1105 type PFNGLVERTEXATTRIBI4BVPROC as sub(byval index as GLuint, byval v as const GLbyte ptr) 1106 type PFNGLVERTEXATTRIBI4SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr) 1107 type PFNGLVERTEXATTRIBI4UBVPROC as sub(byval index as GLuint, byval v as const GLubyte ptr) 1108 type PFNGLVERTEXATTRIBI4USVPROC as sub(byval index as GLuint, byval v as const GLushort ptr) 1109 type PFNGLGETUNIFORMUIVPROC as sub(byval program as GLuint, byval location as GLint, byval params as GLuint ptr) 1110 type PFNGLBINDFRAGDATALOCATIONPROC as sub(byval program as GLuint, byval color as GLuint, byval name as const GLchar ptr) 1111 type PFNGLGETFRAGDATALOCATIONPROC as function(byval program as GLuint, byval name as const GLchar ptr) as GLint 1112 type PFNGLUNIFORM1UIPROC as sub(byval location as GLint, byval v0 as GLuint) 1113 type PFNGLUNIFORM2UIPROC as sub(byval location as GLint, byval v0 as GLuint, byval v1 as GLuint) 1114 type PFNGLUNIFORM3UIPROC as sub(byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint) 1115 type PFNGLUNIFORM4UIPROC as sub(byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint, byval v3 as GLuint) 1116 type PFNGLUNIFORM1UIVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1117 type PFNGLUNIFORM2UIVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1118 type PFNGLUNIFORM3UIVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1119 type PFNGLUNIFORM4UIVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1120 type PFNGLTEXPARAMETERIIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as const GLint ptr) 1121 type PFNGLTEXPARAMETERIUIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as const GLuint ptr) 1122 type PFNGLGETTEXPARAMETERIIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 1123 type PFNGLGETTEXPARAMETERIUIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLuint ptr) 1124 type PFNGLCLEARBUFFERIVPROC as sub(byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLint ptr) 1125 type PFNGLCLEARBUFFERUIVPROC as sub(byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLuint ptr) 1126 type PFNGLCLEARBUFFERFVPROC as sub(byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLfloat ptr) 1127 type PFNGLCLEARBUFFERFIPROC as sub(byval buffer as GLenum, byval drawbuffer as GLint, byval depth as GLfloat, byval stencil as GLint) 1128 type PFNGLGETSTRINGIPROC as function(byval name as GLenum, byval index as GLuint) as const zstring ptr 1129 type PFNGLISRENDERBUFFERPROC as function(byval renderbuffer as GLuint) as GLboolean 1130 type PFNGLBINDRENDERBUFFERPROC as sub(byval target as GLenum, byval renderbuffer as GLuint) 1131 type PFNGLDELETERENDERBUFFERSPROC as sub(byval n as GLsizei, byval renderbuffers as const GLuint ptr) 1132 type PFNGLGENRENDERBUFFERSPROC as sub(byval n as GLsizei, byval renderbuffers as GLuint ptr) 1133 type PFNGLRENDERBUFFERSTORAGEPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 1134 type PFNGLGETRENDERBUFFERPARAMETERIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 1135 type PFNGLISFRAMEBUFFERPROC as function(byval framebuffer as GLuint) as GLboolean 1136 type PFNGLBINDFRAMEBUFFERPROC as sub(byval target as GLenum, byval framebuffer as GLuint) 1137 type PFNGLDELETEFRAMEBUFFERSPROC as sub(byval n as GLsizei, byval framebuffers as const GLuint ptr) 1138 type PFNGLGENFRAMEBUFFERSPROC as sub(byval n as GLsizei, byval framebuffers as GLuint ptr) 1139 type PFNGLCHECKFRAMEBUFFERSTATUSPROC as function(byval target as GLenum) as GLenum 1140 type PFNGLFRAMEBUFFERTEXTURE1DPROC as sub(byval target as GLenum, byval attachment as GLenum, byval textarget as GLenum, byval texture as GLuint, byval level as GLint) 1141 type PFNGLFRAMEBUFFERTEXTURE2DPROC as sub(byval target as GLenum, byval attachment as GLenum, byval textarget as GLenum, byval texture as GLuint, byval level as GLint) 1142 type PFNGLFRAMEBUFFERTEXTURE3DPROC as sub(byval target as GLenum, byval attachment as GLenum, byval textarget as GLenum, byval texture as GLuint, byval level as GLint, byval zoffset as GLint) 1143 type PFNGLFRAMEBUFFERRENDERBUFFERPROC as sub(byval target as GLenum, byval attachment as GLenum, byval renderbuffertarget as GLenum, byval renderbuffer as GLuint) 1144 type PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC as sub(byval target as GLenum, byval attachment as GLenum, byval pname as GLenum, byval params as GLint ptr) 1145 type PFNGLGENERATEMIPMAPPROC as sub(byval target as GLenum) 1146 type PFNGLBLITFRAMEBUFFERPROC as sub(byval srcX0 as GLint, byval srcY0 as GLint, byval srcX1 as GLint, byval srcY1 as GLint, byval dstX0 as GLint, byval dstY0 as GLint, byval dstX1 as GLint, byval dstY1 as GLint, byval mask as GLbitfield, byval filter as GLenum) 1147 type PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC as sub(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 1148 type PFNGLFRAMEBUFFERTEXTURELAYERPROC as sub(byval target as GLenum, byval attachment as GLenum, byval texture as GLuint, byval level as GLint, byval layer as GLint) 1149 type PFNGLMAPBUFFERRANGEPROC as function(byval target as GLenum, byval offset as GLintptr, byval length as GLsizeiptr, byval access as GLbitfield) as any ptr 1150 type PFNGLFLUSHMAPPEDBUFFERRANGEPROC as sub(byval target as GLenum, byval offset as GLintptr, byval length as GLsizeiptr) 1151 type PFNGLBINDVERTEXARRAYPROC as sub(byval array as GLuint) 1152 type PFNGLDELETEVERTEXARRAYSPROC as sub(byval n as GLsizei, byval arrays as const GLuint ptr) 1153 type PFNGLGENVERTEXARRAYSPROC as sub(byval n as GLsizei, byval arrays as GLuint ptr) 1154 type PFNGLISVERTEXARRAYPROC as function(byval array as GLuint) as GLboolean 1155 1156 #ifdef GL_GLEXT_PROTOTYPES 1157 declare sub glColorMaski(byval index as GLuint, byval r as GLboolean, byval g as GLboolean, byval b as GLboolean, byval a as GLboolean) 1158 declare sub glGetBooleani_v(byval target as GLenum, byval index as GLuint, byval data as GLboolean ptr) 1159 declare sub glGetIntegeri_v(byval target as GLenum, byval index as GLuint, byval data as GLint ptr) 1160 declare sub glEnablei(byval target as GLenum, byval index as GLuint) 1161 declare sub glDisablei(byval target as GLenum, byval index as GLuint) 1162 declare function glIsEnabledi(byval target as GLenum, byval index as GLuint) as GLboolean 1163 declare sub glBeginTransformFeedback(byval primitiveMode as GLenum) 1164 declare sub glEndTransformFeedback() 1165 declare sub glBindBufferRange(byval target as GLenum, byval index as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizeiptr) 1166 declare sub glBindBufferBase(byval target as GLenum, byval index as GLuint, byval buffer as GLuint) 1167 declare sub glTransformFeedbackVaryings(byval program as GLuint, byval count as GLsizei, byval varyings as const GLchar const ptr ptr, byval bufferMode as GLenum) 1168 declare sub glGetTransformFeedbackVarying(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLsizei ptr, byval type as GLenum ptr, byval name as GLchar ptr) 1169 declare sub glClampColor(byval target as GLenum, byval clamp as GLenum) 1170 declare sub glBeginConditionalRender(byval id as GLuint, byval mode as GLenum) 1171 declare sub glEndConditionalRender() 1172 declare sub glVertexAttribIPointer(byval index as GLuint, byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 1173 declare sub glGetVertexAttribIiv(byval index as GLuint, byval pname as GLenum, byval params as GLint ptr) 1174 declare sub glGetVertexAttribIuiv(byval index as GLuint, byval pname as GLenum, byval params as GLuint ptr) 1175 declare sub glVertexAttribI1i(byval index as GLuint, byval x as GLint) 1176 declare sub glVertexAttribI2i(byval index as GLuint, byval x as GLint, byval y as GLint) 1177 declare sub glVertexAttribI3i(byval index as GLuint, byval x as GLint, byval y as GLint, byval z as GLint) 1178 declare sub glVertexAttribI4i(byval index as GLuint, byval x as GLint, byval y as GLint, byval z as GLint, byval w as GLint) 1179 declare sub glVertexAttribI1ui(byval index as GLuint, byval x as GLuint) 1180 declare sub glVertexAttribI2ui(byval index as GLuint, byval x as GLuint, byval y as GLuint) 1181 declare sub glVertexAttribI3ui(byval index as GLuint, byval x as GLuint, byval y as GLuint, byval z as GLuint) 1182 declare sub glVertexAttribI4ui(byval index as GLuint, byval x as GLuint, byval y as GLuint, byval z as GLuint, byval w as GLuint) 1183 declare sub glVertexAttribI1iv(byval index as GLuint, byval v as const GLint ptr) 1184 declare sub glVertexAttribI2iv(byval index as GLuint, byval v as const GLint ptr) 1185 declare sub glVertexAttribI3iv(byval index as GLuint, byval v as const GLint ptr) 1186 declare sub glVertexAttribI4iv(byval index as GLuint, byval v as const GLint ptr) 1187 declare sub glVertexAttribI1uiv(byval index as GLuint, byval v as const GLuint ptr) 1188 declare sub glVertexAttribI2uiv(byval index as GLuint, byval v as const GLuint ptr) 1189 declare sub glVertexAttribI3uiv(byval index as GLuint, byval v as const GLuint ptr) 1190 declare sub glVertexAttribI4uiv(byval index as GLuint, byval v as const GLuint ptr) 1191 declare sub glVertexAttribI4bv(byval index as GLuint, byval v as const GLbyte ptr) 1192 declare sub glVertexAttribI4sv(byval index as GLuint, byval v as const GLshort ptr) 1193 declare sub glVertexAttribI4ubv(byval index as GLuint, byval v as const GLubyte ptr) 1194 declare sub glVertexAttribI4usv(byval index as GLuint, byval v as const GLushort ptr) 1195 declare sub glGetUniformuiv(byval program as GLuint, byval location as GLint, byval params as GLuint ptr) 1196 declare sub glBindFragDataLocation(byval program as GLuint, byval color as GLuint, byval name as const GLchar ptr) 1197 declare function glGetFragDataLocation(byval program as GLuint, byval name as const GLchar ptr) as GLint 1198 declare sub glUniform1ui(byval location as GLint, byval v0 as GLuint) 1199 declare sub glUniform2ui(byval location as GLint, byval v0 as GLuint, byval v1 as GLuint) 1200 declare sub glUniform3ui(byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint) 1201 declare sub glUniform4ui(byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint, byval v3 as GLuint) 1202 declare sub glUniform1uiv(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1203 declare sub glUniform2uiv(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1204 declare sub glUniform3uiv(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1205 declare sub glUniform4uiv(byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1206 declare sub glTexParameterIiv(byval target as GLenum, byval pname as GLenum, byval params as const GLint ptr) 1207 declare sub glTexParameterIuiv(byval target as GLenum, byval pname as GLenum, byval params as const GLuint ptr) 1208 declare sub glGetTexParameterIiv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 1209 declare sub glGetTexParameterIuiv(byval target as GLenum, byval pname as GLenum, byval params as GLuint ptr) 1210 declare sub glClearBufferiv(byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLint ptr) 1211 declare sub glClearBufferuiv(byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLuint ptr) 1212 declare sub glClearBufferfv(byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLfloat ptr) 1213 declare sub glClearBufferfi(byval buffer as GLenum, byval drawbuffer as GLint, byval depth as GLfloat, byval stencil as GLint) 1214 declare function glGetStringi(byval name as GLenum, byval index as GLuint) as const zstring ptr 1215 declare function glIsRenderbuffer(byval renderbuffer as GLuint) as GLboolean 1216 declare sub glBindRenderbuffer(byval target as GLenum, byval renderbuffer as GLuint) 1217 declare sub glDeleteRenderbuffers(byval n as GLsizei, byval renderbuffers as const GLuint ptr) 1218 declare sub glGenRenderbuffers(byval n as GLsizei, byval renderbuffers as GLuint ptr) 1219 declare sub glRenderbufferStorage(byval target as GLenum, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 1220 declare sub glGetRenderbufferParameteriv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 1221 declare function glIsFramebuffer(byval framebuffer as GLuint) as GLboolean 1222 declare sub glBindFramebuffer(byval target as GLenum, byval framebuffer as GLuint) 1223 declare sub glDeleteFramebuffers(byval n as GLsizei, byval framebuffers as const GLuint ptr) 1224 declare sub glGenFramebuffers(byval n as GLsizei, byval framebuffers as GLuint ptr) 1225 declare function glCheckFramebufferStatus(byval target as GLenum) as GLenum 1226 declare sub glFramebufferTexture1D(byval target as GLenum, byval attachment as GLenum, byval textarget as GLenum, byval texture as GLuint, byval level as GLint) 1227 declare sub glFramebufferTexture2D(byval target as GLenum, byval attachment as GLenum, byval textarget as GLenum, byval texture as GLuint, byval level as GLint) 1228 declare sub glFramebufferTexture3D(byval target as GLenum, byval attachment as GLenum, byval textarget as GLenum, byval texture as GLuint, byval level as GLint, byval zoffset as GLint) 1229 declare sub glFramebufferRenderbuffer(byval target as GLenum, byval attachment as GLenum, byval renderbuffertarget as GLenum, byval renderbuffer as GLuint) 1230 declare sub glGetFramebufferAttachmentParameteriv(byval target as GLenum, byval attachment as GLenum, byval pname as GLenum, byval params as GLint ptr) 1231 declare sub glGenerateMipmap(byval target as GLenum) 1232 declare sub glBlitFramebuffer(byval srcX0 as GLint, byval srcY0 as GLint, byval srcX1 as GLint, byval srcY1 as GLint, byval dstX0 as GLint, byval dstY0 as GLint, byval dstX1 as GLint, byval dstY1 as GLint, byval mask as GLbitfield, byval filter as GLenum) 1233 declare sub glRenderbufferStorageMultisample(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 1234 declare sub glFramebufferTextureLayer(byval target as GLenum, byval attachment as GLenum, byval texture as GLuint, byval level as GLint, byval layer as GLint) 1235 declare function glMapBufferRange(byval target as GLenum, byval offset as GLintptr, byval length as GLsizeiptr, byval access as GLbitfield) as any ptr 1236 declare sub glFlushMappedBufferRange(byval target as GLenum, byval offset as GLintptr, byval length as GLsizeiptr) 1237 declare sub glBindVertexArray(byval array as GLuint) 1238 declare sub glDeleteVertexArrays(byval n as GLsizei, byval arrays as const GLuint ptr) 1239 declare sub glGenVertexArrays(byval n as GLsizei, byval arrays as GLuint ptr) 1240 declare function glIsVertexArray(byval array as GLuint) as GLboolean 1241 #endif 1242 1243 const GL_VERSION_3_1 = 1 1244 const GL_SAMPLER_2D_RECT = &h8B63 1245 const GL_SAMPLER_2D_RECT_SHADOW = &h8B64 1246 const GL_SAMPLER_BUFFER = &h8DC2 1247 const GL_INT_SAMPLER_2D_RECT = &h8DCD 1248 const GL_INT_SAMPLER_BUFFER = &h8DD0 1249 const GL_UNSIGNED_INT_SAMPLER_2D_RECT = &h8DD5 1250 const GL_UNSIGNED_INT_SAMPLER_BUFFER = &h8DD8 1251 const GL_TEXTURE_BUFFER = &h8C2A 1252 const GL_MAX_TEXTURE_BUFFER_SIZE = &h8C2B 1253 const GL_TEXTURE_BINDING_BUFFER = &h8C2C 1254 const GL_TEXTURE_BUFFER_DATA_STORE_BINDING = &h8C2D 1255 const GL_TEXTURE_RECTANGLE = &h84F5 1256 const GL_TEXTURE_BINDING_RECTANGLE = &h84F6 1257 const GL_PROXY_TEXTURE_RECTANGLE = &h84F7 1258 const GL_MAX_RECTANGLE_TEXTURE_SIZE = &h84F8 1259 const GL_R8_SNORM = &h8F94 1260 const GL_RG8_SNORM = &h8F95 1261 const GL_RGB8_SNORM = &h8F96 1262 const GL_RGBA8_SNORM = &h8F97 1263 const GL_R16_SNORM = &h8F98 1264 const GL_RG16_SNORM = &h8F99 1265 const GL_RGB16_SNORM = &h8F9A 1266 const GL_RGBA16_SNORM = &h8F9B 1267 const GL_SIGNED_NORMALIZED = &h8F9C 1268 const GL_PRIMITIVE_RESTART = &h8F9D 1269 const GL_PRIMITIVE_RESTART_INDEX = &h8F9E 1270 const GL_COPY_READ_BUFFER = &h8F36 1271 const GL_COPY_WRITE_BUFFER = &h8F37 1272 const GL_UNIFORM_BUFFER = &h8A11 1273 const GL_UNIFORM_BUFFER_BINDING = &h8A28 1274 const GL_UNIFORM_BUFFER_START = &h8A29 1275 const GL_UNIFORM_BUFFER_SIZE = &h8A2A 1276 const GL_MAX_VERTEX_UNIFORM_BLOCKS = &h8A2B 1277 const GL_MAX_GEOMETRY_UNIFORM_BLOCKS = &h8A2C 1278 const GL_MAX_FRAGMENT_UNIFORM_BLOCKS = &h8A2D 1279 const GL_MAX_COMBINED_UNIFORM_BLOCKS = &h8A2E 1280 const GL_MAX_UNIFORM_BUFFER_BINDINGS = &h8A2F 1281 const GL_MAX_UNIFORM_BLOCK_SIZE = &h8A30 1282 const GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = &h8A31 1283 const GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = &h8A32 1284 const GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = &h8A33 1285 const GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = &h8A34 1286 const GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = &h8A35 1287 const GL_ACTIVE_UNIFORM_BLOCKS = &h8A36 1288 const GL_UNIFORM_TYPE = &h8A37 1289 const GL_UNIFORM_SIZE = &h8A38 1290 const GL_UNIFORM_NAME_LENGTH = &h8A39 1291 const GL_UNIFORM_BLOCK_INDEX = &h8A3A 1292 const GL_UNIFORM_OFFSET = &h8A3B 1293 const GL_UNIFORM_ARRAY_STRIDE = &h8A3C 1294 const GL_UNIFORM_MATRIX_STRIDE = &h8A3D 1295 const GL_UNIFORM_IS_ROW_MAJOR = &h8A3E 1296 const GL_UNIFORM_BLOCK_BINDING = &h8A3F 1297 const GL_UNIFORM_BLOCK_DATA_SIZE = &h8A40 1298 const GL_UNIFORM_BLOCK_NAME_LENGTH = &h8A41 1299 const GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = &h8A42 1300 const GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = &h8A43 1301 const GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = &h8A44 1302 const GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = &h8A45 1303 const GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = &h8A46 1304 const GL_INVALID_INDEX = &hFFFFFFFFu 1305 1306 type PFNGLDRAWARRAYSINSTANCEDPROC as sub(byval mode as GLenum, byval first as GLint, byval count as GLsizei, byval instancecount as GLsizei) 1307 type PFNGLDRAWELEMENTSINSTANCEDPROC as sub(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei) 1308 type PFNGLTEXBUFFERPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval buffer as GLuint) 1309 type PFNGLPRIMITIVERESTARTINDEXPROC as sub(byval index as GLuint) 1310 type PFNGLCOPYBUFFERSUBDATAPROC as sub(byval readTarget as GLenum, byval writeTarget as GLenum, byval readOffset as GLintptr, byval writeOffset as GLintptr, byval size as GLsizeiptr) 1311 type PFNGLGETUNIFORMINDICESPROC as sub(byval program as GLuint, byval uniformCount as GLsizei, byval uniformNames as const GLchar const ptr ptr, byval uniformIndices as GLuint ptr) 1312 type PFNGLGETACTIVEUNIFORMSIVPROC as sub(byval program as GLuint, byval uniformCount as GLsizei, byval uniformIndices as const GLuint ptr, byval pname as GLenum, byval params as GLint ptr) 1313 type PFNGLGETACTIVEUNIFORMNAMEPROC as sub(byval program as GLuint, byval uniformIndex as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval uniformName as GLchar ptr) 1314 type PFNGLGETUNIFORMBLOCKINDEXPROC as function(byval program as GLuint, byval uniformBlockName as const GLchar ptr) as GLuint 1315 type PFNGLGETACTIVEUNIFORMBLOCKIVPROC as sub(byval program as GLuint, byval uniformBlockIndex as GLuint, byval pname as GLenum, byval params as GLint ptr) 1316 type PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC as sub(byval program as GLuint, byval uniformBlockIndex as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval uniformBlockName as GLchar ptr) 1317 type PFNGLUNIFORMBLOCKBINDINGPROC as sub(byval program as GLuint, byval uniformBlockIndex as GLuint, byval uniformBlockBinding as GLuint) 1318 1319 #ifdef GL_GLEXT_PROTOTYPES 1320 declare sub glDrawArraysInstanced(byval mode as GLenum, byval first as GLint, byval count as GLsizei, byval instancecount as GLsizei) 1321 declare sub glDrawElementsInstanced(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei) 1322 declare sub glTexBuffer(byval target as GLenum, byval internalformat as GLenum, byval buffer as GLuint) 1323 declare sub glPrimitiveRestartIndex(byval index as GLuint) 1324 declare sub glCopyBufferSubData(byval readTarget as GLenum, byval writeTarget as GLenum, byval readOffset as GLintptr, byval writeOffset as GLintptr, byval size as GLsizeiptr) 1325 declare sub glGetUniformIndices(byval program as GLuint, byval uniformCount as GLsizei, byval uniformNames as const GLchar const ptr ptr, byval uniformIndices as GLuint ptr) 1326 declare sub glGetActiveUniformsiv(byval program as GLuint, byval uniformCount as GLsizei, byval uniformIndices as const GLuint ptr, byval pname as GLenum, byval params as GLint ptr) 1327 declare sub glGetActiveUniformName(byval program as GLuint, byval uniformIndex as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval uniformName as GLchar ptr) 1328 declare function glGetUniformBlockIndex(byval program as GLuint, byval uniformBlockName as const GLchar ptr) as GLuint 1329 declare sub glGetActiveUniformBlockiv(byval program as GLuint, byval uniformBlockIndex as GLuint, byval pname as GLenum, byval params as GLint ptr) 1330 declare sub glGetActiveUniformBlockName(byval program as GLuint, byval uniformBlockIndex as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval uniformBlockName as GLchar ptr) 1331 declare sub glUniformBlockBinding(byval program as GLuint, byval uniformBlockIndex as GLuint, byval uniformBlockBinding as GLuint) 1332 #endif 1333 1334 const GL_VERSION_3_2 = 1 1335 type GLsync as __GLsync ptr 1336 #define GLEXT_64_TYPES_DEFINED 1337 type GLuint64 as ulongint 1338 type GLint64 as longint 1339 const GL_CONTEXT_CORE_PROFILE_BIT = &h00000001 1340 const GL_CONTEXT_COMPATIBILITY_PROFILE_BIT = &h00000002 1341 const GL_LINES_ADJACENCY = &h000A 1342 const GL_LINE_STRIP_ADJACENCY = &h000B 1343 const GL_TRIANGLES_ADJACENCY = &h000C 1344 const GL_TRIANGLE_STRIP_ADJACENCY = &h000D 1345 const GL_PROGRAM_POINT_SIZE = &h8642 1346 const GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = &h8C29 1347 const GL_FRAMEBUFFER_ATTACHMENT_LAYERED = &h8DA7 1348 const GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = &h8DA8 1349 const GL_GEOMETRY_SHADER = &h8DD9 1350 const GL_GEOMETRY_VERTICES_OUT = &h8916 1351 const GL_GEOMETRY_INPUT_TYPE = &h8917 1352 const GL_GEOMETRY_OUTPUT_TYPE = &h8918 1353 const GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = &h8DDF 1354 const GL_MAX_GEOMETRY_OUTPUT_VERTICES = &h8DE0 1355 const GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = &h8DE1 1356 const GL_MAX_VERTEX_OUTPUT_COMPONENTS = &h9122 1357 const GL_MAX_GEOMETRY_INPUT_COMPONENTS = &h9123 1358 const GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = &h9124 1359 const GL_MAX_FRAGMENT_INPUT_COMPONENTS = &h9125 1360 const GL_CONTEXT_PROFILE_MASK = &h9126 1361 const GL_DEPTH_CLAMP = &h864F 1362 const GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = &h8E4C 1363 const GL_FIRST_VERTEX_CONVENTION = &h8E4D 1364 const GL_LAST_VERTEX_CONVENTION = &h8E4E 1365 const GL_PROVOKING_VERTEX = &h8E4F 1366 const GL_TEXTURE_CUBE_MAP_SEAMLESS = &h884F 1367 const GL_MAX_SERVER_WAIT_TIMEOUT = &h9111 1368 const GL_OBJECT_TYPE = &h9112 1369 const GL_SYNC_CONDITION = &h9113 1370 const GL_SYNC_STATUS = &h9114 1371 const GL_SYNC_FLAGS = &h9115 1372 const GL_SYNC_FENCE = &h9116 1373 const GL_SYNC_GPU_COMMANDS_COMPLETE = &h9117 1374 const GL_UNSIGNALED = &h9118 1375 const GL_SIGNALED = &h9119 1376 const GL_ALREADY_SIGNALED = &h911A 1377 const GL_TIMEOUT_EXPIRED = &h911B 1378 const GL_CONDITION_SATISFIED = &h911C 1379 const GL_WAIT_FAILED = &h911D 1380 const GL_TIMEOUT_IGNORED = &hFFFFFFFFFFFFFFFFull 1381 const GL_SYNC_FLUSH_COMMANDS_BIT = &h00000001 1382 const GL_SAMPLE_POSITION = &h8E50 1383 const GL_SAMPLE_MASK = &h8E51 1384 const GL_SAMPLE_MASK_VALUE = &h8E52 1385 const GL_MAX_SAMPLE_MASK_WORDS = &h8E59 1386 const GL_TEXTURE_2D_MULTISAMPLE = &h9100 1387 const GL_PROXY_TEXTURE_2D_MULTISAMPLE = &h9101 1388 const GL_TEXTURE_2D_MULTISAMPLE_ARRAY = &h9102 1389 const GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = &h9103 1390 const GL_TEXTURE_BINDING_2D_MULTISAMPLE = &h9104 1391 const GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = &h9105 1392 const GL_TEXTURE_SAMPLES = &h9106 1393 const GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = &h9107 1394 const GL_SAMPLER_2D_MULTISAMPLE = &h9108 1395 const GL_INT_SAMPLER_2D_MULTISAMPLE = &h9109 1396 const GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = &h910A 1397 const GL_SAMPLER_2D_MULTISAMPLE_ARRAY = &h910B 1398 const GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = &h910C 1399 const GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = &h910D 1400 const GL_MAX_COLOR_TEXTURE_SAMPLES = &h910E 1401 const GL_MAX_DEPTH_TEXTURE_SAMPLES = &h910F 1402 const GL_MAX_INTEGER_SAMPLES = &h9110 1403 1404 type PFNGLDRAWELEMENTSBASEVERTEXPROC as sub(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval basevertex as GLint) 1405 type PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC as sub(byval mode as GLenum, byval start as GLuint, byval end as GLuint, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval basevertex as GLint) 1406 type PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC as sub(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei, byval basevertex as GLint) 1407 type PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC as sub(byval mode as GLenum, byval count as const GLsizei ptr, byval type as GLenum, byval indices as const any const ptr ptr, byval drawcount as GLsizei, byval basevertex as const GLint ptr) 1408 type PFNGLPROVOKINGVERTEXPROC as sub(byval mode as GLenum) 1409 type PFNGLFENCESYNCPROC as function(byval condition as GLenum, byval flags as GLbitfield) as GLsync 1410 type PFNGLISSYNCPROC as function(byval sync as GLsync) as GLboolean 1411 type PFNGLDELETESYNCPROC as sub(byval sync as GLsync) 1412 type PFNGLCLIENTWAITSYNCPROC as function(byval sync as GLsync, byval flags as GLbitfield, byval timeout as GLuint64) as GLenum 1413 type PFNGLWAITSYNCPROC as sub(byval sync as GLsync, byval flags as GLbitfield, byval timeout as GLuint64) 1414 type PFNGLGETINTEGER64VPROC as sub(byval pname as GLenum, byval data as GLint64 ptr) 1415 type PFNGLGETSYNCIVPROC as sub(byval sync as GLsync, byval pname as GLenum, byval bufSize as GLsizei, byval length as GLsizei ptr, byval values as GLint ptr) 1416 type PFNGLGETINTEGER64I_VPROC as sub(byval target as GLenum, byval index as GLuint, byval data as GLint64 ptr) 1417 type PFNGLGETBUFFERPARAMETERI64VPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint64 ptr) 1418 type PFNGLFRAMEBUFFERTEXTUREPROC as sub(byval target as GLenum, byval attachment as GLenum, byval texture as GLuint, byval level as GLint) 1419 type PFNGLTEXIMAGE2DMULTISAMPLEPROC as sub(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval fixedsamplelocations as GLboolean) 1420 type PFNGLTEXIMAGE3DMULTISAMPLEPROC as sub(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval fixedsamplelocations as GLboolean) 1421 type PFNGLGETMULTISAMPLEFVPROC as sub(byval pname as GLenum, byval index as GLuint, byval val as GLfloat ptr) 1422 type PFNGLSAMPLEMASKIPROC as sub(byval maskNumber as GLuint, byval mask as GLbitfield) 1423 1424 #ifdef GL_GLEXT_PROTOTYPES 1425 declare sub glDrawElementsBaseVertex(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval basevertex as GLint) 1426 declare sub glDrawRangeElementsBaseVertex(byval mode as GLenum, byval start as GLuint, byval end as GLuint, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval basevertex as GLint) 1427 declare sub glDrawElementsInstancedBaseVertex(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei, byval basevertex as GLint) 1428 declare sub glMultiDrawElementsBaseVertex(byval mode as GLenum, byval count as const GLsizei ptr, byval type as GLenum, byval indices as const any const ptr ptr, byval drawcount as GLsizei, byval basevertex as const GLint ptr) 1429 declare sub glProvokingVertex(byval mode as GLenum) 1430 declare function glFenceSync(byval condition as GLenum, byval flags as GLbitfield) as GLsync 1431 declare function glIsSync(byval sync as GLsync) as GLboolean 1432 declare sub glDeleteSync(byval sync as GLsync) 1433 declare function glClientWaitSync(byval sync as GLsync, byval flags as GLbitfield, byval timeout as GLuint64) as GLenum 1434 declare sub glWaitSync(byval sync as GLsync, byval flags as GLbitfield, byval timeout as GLuint64) 1435 declare sub glGetInteger64v(byval pname as GLenum, byval data as GLint64 ptr) 1436 declare sub glGetSynciv(byval sync as GLsync, byval pname as GLenum, byval bufSize as GLsizei, byval length as GLsizei ptr, byval values as GLint ptr) 1437 declare sub glGetInteger64i_v(byval target as GLenum, byval index as GLuint, byval data as GLint64 ptr) 1438 declare sub glGetBufferParameteri64v(byval target as GLenum, byval pname as GLenum, byval params as GLint64 ptr) 1439 declare sub glFramebufferTexture(byval target as GLenum, byval attachment as GLenum, byval texture as GLuint, byval level as GLint) 1440 declare sub glTexImage2DMultisample(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval fixedsamplelocations as GLboolean) 1441 declare sub glTexImage3DMultisample(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval fixedsamplelocations as GLboolean) 1442 declare sub glGetMultisamplefv(byval pname as GLenum, byval index as GLuint, byval val as GLfloat ptr) 1443 declare sub glSampleMaski(byval maskNumber as GLuint, byval mask as GLbitfield) 1444 #endif 1445 1446 const GL_VERSION_3_3 = 1 1447 const GL_VERTEX_ATTRIB_ARRAY_DIVISOR = &h88FE 1448 const GL_SRC1_COLOR = &h88F9 1449 const GL_ONE_MINUS_SRC1_COLOR = &h88FA 1450 const GL_ONE_MINUS_SRC1_ALPHA = &h88FB 1451 const GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = &h88FC 1452 const GL_ANY_SAMPLES_PASSED = &h8C2F 1453 const GL_SAMPLER_BINDING = &h8919 1454 const GL_RGB10_A2UI = &h906F 1455 const GL_TEXTURE_SWIZZLE_R = &h8E42 1456 const GL_TEXTURE_SWIZZLE_G = &h8E43 1457 const GL_TEXTURE_SWIZZLE_B = &h8E44 1458 const GL_TEXTURE_SWIZZLE_A = &h8E45 1459 const GL_TEXTURE_SWIZZLE_RGBA = &h8E46 1460 const GL_TIME_ELAPSED = &h88BF 1461 const GL_TIMESTAMP = &h8E28 1462 const GL_INT_2_10_10_10_REV = &h8D9F 1463 1464 type PFNGLBINDFRAGDATALOCATIONINDEXEDPROC as sub(byval program as GLuint, byval colorNumber as GLuint, byval index as GLuint, byval name as const GLchar ptr) 1465 type PFNGLGETFRAGDATAINDEXPROC as function(byval program as GLuint, byval name as const GLchar ptr) as GLint 1466 type PFNGLGENSAMPLERSPROC as sub(byval count as GLsizei, byval samplers as GLuint ptr) 1467 type PFNGLDELETESAMPLERSPROC as sub(byval count as GLsizei, byval samplers as const GLuint ptr) 1468 type PFNGLISSAMPLERPROC as function(byval sampler as GLuint) as GLboolean 1469 type PFNGLBINDSAMPLERPROC as sub(byval unit as GLuint, byval sampler as GLuint) 1470 type PFNGLSAMPLERPARAMETERIPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval param as GLint) 1471 type PFNGLSAMPLERPARAMETERIVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval param as const GLint ptr) 1472 type PFNGLSAMPLERPARAMETERFPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval param as GLfloat) 1473 type PFNGLSAMPLERPARAMETERFVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval param as const GLfloat ptr) 1474 type PFNGLSAMPLERPARAMETERIIVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval param as const GLint ptr) 1475 type PFNGLSAMPLERPARAMETERIUIVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval param as const GLuint ptr) 1476 type PFNGLGETSAMPLERPARAMETERIVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval params as GLint ptr) 1477 type PFNGLGETSAMPLERPARAMETERIIVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval params as GLint ptr) 1478 type PFNGLGETSAMPLERPARAMETERFVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval params as GLfloat ptr) 1479 type PFNGLGETSAMPLERPARAMETERIUIVPROC as sub(byval sampler as GLuint, byval pname as GLenum, byval params as GLuint ptr) 1480 type PFNGLQUERYCOUNTERPROC as sub(byval id as GLuint, byval target as GLenum) 1481 type PFNGLGETQUERYOBJECTI64VPROC as sub(byval id as GLuint, byval pname as GLenum, byval params as GLint64 ptr) 1482 type PFNGLGETQUERYOBJECTUI64VPROC as sub(byval id as GLuint, byval pname as GLenum, byval params as GLuint64 ptr) 1483 type PFNGLVERTEXATTRIBDIVISORPROC as sub(byval index as GLuint, byval divisor as GLuint) 1484 type PFNGLVERTEXATTRIBP1UIPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1485 type PFNGLVERTEXATTRIBP1UIVPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1486 type PFNGLVERTEXATTRIBP2UIPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1487 type PFNGLVERTEXATTRIBP2UIVPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1488 type PFNGLVERTEXATTRIBP3UIPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1489 type PFNGLVERTEXATTRIBP3UIVPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1490 type PFNGLVERTEXATTRIBP4UIPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1491 type PFNGLVERTEXATTRIBP4UIVPROC as sub(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1492 type PFNGLVERTEXP2UIPROC as sub(byval type as GLenum, byval value as GLuint) 1493 type PFNGLVERTEXP2UIVPROC as sub(byval type as GLenum, byval value as const GLuint ptr) 1494 type PFNGLVERTEXP3UIPROC as sub(byval type as GLenum, byval value as GLuint) 1495 type PFNGLVERTEXP3UIVPROC as sub(byval type as GLenum, byval value as const GLuint ptr) 1496 type PFNGLVERTEXP4UIPROC as sub(byval type as GLenum, byval value as GLuint) 1497 type PFNGLVERTEXP4UIVPROC as sub(byval type as GLenum, byval value as const GLuint ptr) 1498 type PFNGLTEXCOORDP1UIPROC as sub(byval type as GLenum, byval coords as GLuint) 1499 type PFNGLTEXCOORDP1UIVPROC as sub(byval type as GLenum, byval coords as const GLuint ptr) 1500 type PFNGLTEXCOORDP2UIPROC as sub(byval type as GLenum, byval coords as GLuint) 1501 type PFNGLTEXCOORDP2UIVPROC as sub(byval type as GLenum, byval coords as const GLuint ptr) 1502 type PFNGLTEXCOORDP3UIPROC as sub(byval type as GLenum, byval coords as GLuint) 1503 type PFNGLTEXCOORDP3UIVPROC as sub(byval type as GLenum, byval coords as const GLuint ptr) 1504 type PFNGLTEXCOORDP4UIPROC as sub(byval type as GLenum, byval coords as GLuint) 1505 type PFNGLTEXCOORDP4UIVPROC as sub(byval type as GLenum, byval coords as const GLuint ptr) 1506 type PFNGLMULTITEXCOORDP1UIPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1507 type PFNGLMULTITEXCOORDP1UIVPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1508 type PFNGLMULTITEXCOORDP2UIPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1509 type PFNGLMULTITEXCOORDP2UIVPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1510 type PFNGLMULTITEXCOORDP3UIPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1511 type PFNGLMULTITEXCOORDP3UIVPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1512 type PFNGLMULTITEXCOORDP4UIPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1513 type PFNGLMULTITEXCOORDP4UIVPROC as sub(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1514 type PFNGLNORMALP3UIPROC as sub(byval type as GLenum, byval coords as GLuint) 1515 type PFNGLNORMALP3UIVPROC as sub(byval type as GLenum, byval coords as const GLuint ptr) 1516 type PFNGLCOLORP3UIPROC as sub(byval type as GLenum, byval color as GLuint) 1517 type PFNGLCOLORP3UIVPROC as sub(byval type as GLenum, byval color as const GLuint ptr) 1518 type PFNGLCOLORP4UIPROC as sub(byval type as GLenum, byval color as GLuint) 1519 type PFNGLCOLORP4UIVPROC as sub(byval type as GLenum, byval color as const GLuint ptr) 1520 type PFNGLSECONDARYCOLORP3UIPROC as sub(byval type as GLenum, byval color as GLuint) 1521 type PFNGLSECONDARYCOLORP3UIVPROC as sub(byval type as GLenum, byval color as const GLuint ptr) 1522 1523 #ifdef GL_GLEXT_PROTOTYPES 1524 declare sub glBindFragDataLocationIndexed(byval program as GLuint, byval colorNumber as GLuint, byval index as GLuint, byval name as const GLchar ptr) 1525 declare function glGetFragDataIndex(byval program as GLuint, byval name as const GLchar ptr) as GLint 1526 declare sub glGenSamplers(byval count as GLsizei, byval samplers as GLuint ptr) 1527 declare sub glDeleteSamplers(byval count as GLsizei, byval samplers as const GLuint ptr) 1528 declare function glIsSampler(byval sampler as GLuint) as GLboolean 1529 declare sub glBindSampler(byval unit as GLuint, byval sampler as GLuint) 1530 declare sub glSamplerParameteri(byval sampler as GLuint, byval pname as GLenum, byval param as GLint) 1531 declare sub glSamplerParameteriv(byval sampler as GLuint, byval pname as GLenum, byval param as const GLint ptr) 1532 declare sub glSamplerParameterf(byval sampler as GLuint, byval pname as GLenum, byval param as GLfloat) 1533 declare sub glSamplerParameterfv(byval sampler as GLuint, byval pname as GLenum, byval param as const GLfloat ptr) 1534 declare sub glSamplerParameterIiv(byval sampler as GLuint, byval pname as GLenum, byval param as const GLint ptr) 1535 declare sub glSamplerParameterIuiv(byval sampler as GLuint, byval pname as GLenum, byval param as const GLuint ptr) 1536 declare sub glGetSamplerParameteriv(byval sampler as GLuint, byval pname as GLenum, byval params as GLint ptr) 1537 declare sub glGetSamplerParameterIiv(byval sampler as GLuint, byval pname as GLenum, byval params as GLint ptr) 1538 declare sub glGetSamplerParameterfv(byval sampler as GLuint, byval pname as GLenum, byval params as GLfloat ptr) 1539 declare sub glGetSamplerParameterIuiv(byval sampler as GLuint, byval pname as GLenum, byval params as GLuint ptr) 1540 declare sub glQueryCounter(byval id as GLuint, byval target as GLenum) 1541 declare sub glGetQueryObjecti64v(byval id as GLuint, byval pname as GLenum, byval params as GLint64 ptr) 1542 declare sub glGetQueryObjectui64v(byval id as GLuint, byval pname as GLenum, byval params as GLuint64 ptr) 1543 declare sub glVertexAttribDivisor(byval index as GLuint, byval divisor as GLuint) 1544 declare sub glVertexAttribP1ui(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1545 declare sub glVertexAttribP1uiv(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1546 declare sub glVertexAttribP2ui(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1547 declare sub glVertexAttribP2uiv(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1548 declare sub glVertexAttribP3ui(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1549 declare sub glVertexAttribP3uiv(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1550 declare sub glVertexAttribP4ui(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as GLuint) 1551 declare sub glVertexAttribP4uiv(byval index as GLuint, byval type as GLenum, byval normalized as GLboolean, byval value as const GLuint ptr) 1552 declare sub glVertexP2ui(byval type as GLenum, byval value as GLuint) 1553 declare sub glVertexP2uiv(byval type as GLenum, byval value as const GLuint ptr) 1554 declare sub glVertexP3ui(byval type as GLenum, byval value as GLuint) 1555 declare sub glVertexP3uiv(byval type as GLenum, byval value as const GLuint ptr) 1556 declare sub glVertexP4ui(byval type as GLenum, byval value as GLuint) 1557 declare sub glVertexP4uiv(byval type as GLenum, byval value as const GLuint ptr) 1558 declare sub glTexCoordP1ui(byval type as GLenum, byval coords as GLuint) 1559 declare sub glTexCoordP1uiv(byval type as GLenum, byval coords as const GLuint ptr) 1560 declare sub glTexCoordP2ui(byval type as GLenum, byval coords as GLuint) 1561 declare sub glTexCoordP2uiv(byval type as GLenum, byval coords as const GLuint ptr) 1562 declare sub glTexCoordP3ui(byval type as GLenum, byval coords as GLuint) 1563 declare sub glTexCoordP3uiv(byval type as GLenum, byval coords as const GLuint ptr) 1564 declare sub glTexCoordP4ui(byval type as GLenum, byval coords as GLuint) 1565 declare sub glTexCoordP4uiv(byval type as GLenum, byval coords as const GLuint ptr) 1566 declare sub glMultiTexCoordP1ui(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1567 declare sub glMultiTexCoordP1uiv(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1568 declare sub glMultiTexCoordP2ui(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1569 declare sub glMultiTexCoordP2uiv(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1570 declare sub glMultiTexCoordP3ui(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1571 declare sub glMultiTexCoordP3uiv(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1572 declare sub glMultiTexCoordP4ui(byval texture as GLenum, byval type as GLenum, byval coords as GLuint) 1573 declare sub glMultiTexCoordP4uiv(byval texture as GLenum, byval type as GLenum, byval coords as const GLuint ptr) 1574 declare sub glNormalP3ui(byval type as GLenum, byval coords as GLuint) 1575 declare sub glNormalP3uiv(byval type as GLenum, byval coords as const GLuint ptr) 1576 declare sub glColorP3ui(byval type as GLenum, byval color as GLuint) 1577 declare sub glColorP3uiv(byval type as GLenum, byval color as const GLuint ptr) 1578 declare sub glColorP4ui(byval type as GLenum, byval color as GLuint) 1579 declare sub glColorP4uiv(byval type as GLenum, byval color as const GLuint ptr) 1580 declare sub glSecondaryColorP3ui(byval type as GLenum, byval color as GLuint) 1581 declare sub glSecondaryColorP3uiv(byval type as GLenum, byval color as const GLuint ptr) 1582 #endif 1583 1584 const GL_VERSION_4_0 = 1 1585 const GL_SAMPLE_SHADING = &h8C36 1586 const GL_MIN_SAMPLE_SHADING_VALUE = &h8C37 1587 const GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = &h8E5E 1588 const GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = &h8E5F 1589 const GL_TEXTURE_CUBE_MAP_ARRAY = &h9009 1590 const GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = &h900A 1591 const GL_PROXY_TEXTURE_CUBE_MAP_ARRAY = &h900B 1592 const GL_SAMPLER_CUBE_MAP_ARRAY = &h900C 1593 const GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = &h900D 1594 const GL_INT_SAMPLER_CUBE_MAP_ARRAY = &h900E 1595 const GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = &h900F 1596 const GL_DRAW_INDIRECT_BUFFER = &h8F3F 1597 const GL_DRAW_INDIRECT_BUFFER_BINDING = &h8F43 1598 const GL_GEOMETRY_SHADER_INVOCATIONS = &h887F 1599 const GL_MAX_GEOMETRY_SHADER_INVOCATIONS = &h8E5A 1600 const GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = &h8E5B 1601 const GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = &h8E5C 1602 const GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = &h8E5D 1603 const GL_MAX_VERTEX_STREAMS = &h8E71 1604 const GL_DOUBLE_VEC2 = &h8FFC 1605 const GL_DOUBLE_VEC3 = &h8FFD 1606 const GL_DOUBLE_VEC4 = &h8FFE 1607 const GL_DOUBLE_MAT2 = &h8F46 1608 const GL_DOUBLE_MAT3 = &h8F47 1609 const GL_DOUBLE_MAT4 = &h8F48 1610 const GL_DOUBLE_MAT2x3 = &h8F49 1611 const GL_DOUBLE_MAT2x4 = &h8F4A 1612 const GL_DOUBLE_MAT3x2 = &h8F4B 1613 const GL_DOUBLE_MAT3x4 = &h8F4C 1614 const GL_DOUBLE_MAT4x2 = &h8F4D 1615 const GL_DOUBLE_MAT4x3 = &h8F4E 1616 const GL_ACTIVE_SUBROUTINES = &h8DE5 1617 const GL_ACTIVE_SUBROUTINE_UNIFORMS = &h8DE6 1618 const GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = &h8E47 1619 const GL_ACTIVE_SUBROUTINE_MAX_LENGTH = &h8E48 1620 const GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = &h8E49 1621 const GL_MAX_SUBROUTINES = &h8DE7 1622 const GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS = &h8DE8 1623 const GL_NUM_COMPATIBLE_SUBROUTINES = &h8E4A 1624 const GL_COMPATIBLE_SUBROUTINES = &h8E4B 1625 const GL_PATCHES = &h000E 1626 const GL_PATCH_VERTICES = &h8E72 1627 const GL_PATCH_DEFAULT_INNER_LEVEL = &h8E73 1628 const GL_PATCH_DEFAULT_OUTER_LEVEL = &h8E74 1629 const GL_TESS_CONTROL_OUTPUT_VERTICES = &h8E75 1630 const GL_TESS_GEN_MODE = &h8E76 1631 const GL_TESS_GEN_SPACING = &h8E77 1632 const GL_TESS_GEN_VERTEX_ORDER = &h8E78 1633 const GL_TESS_GEN_POINT_MODE = &h8E79 1634 const GL_ISOLINES = &h8E7A 1635 const GL_FRACTIONAL_ODD = &h8E7B 1636 const GL_FRACTIONAL_EVEN = &h8E7C 1637 const GL_MAX_PATCH_VERTICES = &h8E7D 1638 const GL_MAX_TESS_GEN_LEVEL = &h8E7E 1639 const GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = &h8E7F 1640 const GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = &h8E80 1641 const GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = &h8E81 1642 const GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = &h8E82 1643 const GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = &h8E83 1644 const GL_MAX_TESS_PATCH_COMPONENTS = &h8E84 1645 const GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = &h8E85 1646 const GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = &h8E86 1647 const GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = &h8E89 1648 const GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = &h8E8A 1649 const GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = &h886C 1650 const GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = &h886D 1651 const GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = &h8E1E 1652 const GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = &h8E1F 1653 const GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = &h84F0 1654 const GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = &h84F1 1655 const GL_TESS_EVALUATION_SHADER = &h8E87 1656 const GL_TESS_CONTROL_SHADER = &h8E88 1657 const GL_TRANSFORM_FEEDBACK = &h8E22 1658 const GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED = &h8E23 1659 const GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE = &h8E24 1660 const GL_TRANSFORM_FEEDBACK_BINDING = &h8E25 1661 const GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = &h8E70 1662 1663 type PFNGLMINSAMPLESHADINGPROC as sub(byval value as GLfloat) 1664 type PFNGLBLENDEQUATIONIPROC as sub(byval buf as GLuint, byval mode as GLenum) 1665 type PFNGLBLENDEQUATIONSEPARATEIPROC as sub(byval buf as GLuint, byval modeRGB as GLenum, byval modeAlpha as GLenum) 1666 type PFNGLBLENDFUNCIPROC as sub(byval buf as GLuint, byval src as GLenum, byval dst as GLenum) 1667 type PFNGLBLENDFUNCSEPARATEIPROC as sub(byval buf as GLuint, byval srcRGB as GLenum, byval dstRGB as GLenum, byval srcAlpha as GLenum, byval dstAlpha as GLenum) 1668 type PFNGLDRAWARRAYSINDIRECTPROC as sub(byval mode as GLenum, byval indirect as const any ptr) 1669 type PFNGLDRAWELEMENTSINDIRECTPROC as sub(byval mode as GLenum, byval type as GLenum, byval indirect as const any ptr) 1670 type PFNGLUNIFORM1DPROC as sub(byval location as GLint, byval x as GLdouble) 1671 type PFNGLUNIFORM2DPROC as sub(byval location as GLint, byval x as GLdouble, byval y as GLdouble) 1672 type PFNGLUNIFORM3DPROC as sub(byval location as GLint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 1673 type PFNGLUNIFORM4DPROC as sub(byval location as GLint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble) 1674 type PFNGLUNIFORM1DVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1675 type PFNGLUNIFORM2DVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1676 type PFNGLUNIFORM3DVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1677 type PFNGLUNIFORM4DVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1678 type PFNGLUNIFORMMATRIX2DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1679 type PFNGLUNIFORMMATRIX3DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1680 type PFNGLUNIFORMMATRIX4DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1681 type PFNGLUNIFORMMATRIX2X3DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1682 type PFNGLUNIFORMMATRIX2X4DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1683 type PFNGLUNIFORMMATRIX3X2DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1684 type PFNGLUNIFORMMATRIX3X4DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1685 type PFNGLUNIFORMMATRIX4X2DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1686 type PFNGLUNIFORMMATRIX4X3DVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1687 type PFNGLGETUNIFORMDVPROC as sub(byval program as GLuint, byval location as GLint, byval params as GLdouble ptr) 1688 type PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC as function(byval program as GLuint, byval shadertype as GLenum, byval name as const GLchar ptr) as GLint 1689 type PFNGLGETSUBROUTINEINDEXPROC as function(byval program as GLuint, byval shadertype as GLenum, byval name as const GLchar ptr) as GLuint 1690 type PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC as sub(byval program as GLuint, byval shadertype as GLenum, byval index as GLuint, byval pname as GLenum, byval values as GLint ptr) 1691 type PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC as sub(byval program as GLuint, byval shadertype as GLenum, byval index as GLuint, byval bufsize as GLsizei, byval length as GLsizei ptr, byval name as GLchar ptr) 1692 type PFNGLGETACTIVESUBROUTINENAMEPROC as sub(byval program as GLuint, byval shadertype as GLenum, byval index as GLuint, byval bufsize as GLsizei, byval length as GLsizei ptr, byval name as GLchar ptr) 1693 type PFNGLUNIFORMSUBROUTINESUIVPROC as sub(byval shadertype as GLenum, byval count as GLsizei, byval indices as const GLuint ptr) 1694 type PFNGLGETUNIFORMSUBROUTINEUIVPROC as sub(byval shadertype as GLenum, byval location as GLint, byval params as GLuint ptr) 1695 type PFNGLGETPROGRAMSTAGEIVPROC as sub(byval program as GLuint, byval shadertype as GLenum, byval pname as GLenum, byval values as GLint ptr) 1696 type PFNGLPATCHPARAMETERIPROC as sub(byval pname as GLenum, byval value as GLint) 1697 type PFNGLPATCHPARAMETERFVPROC as sub(byval pname as GLenum, byval values as const GLfloat ptr) 1698 type PFNGLBINDTRANSFORMFEEDBACKPROC as sub(byval target as GLenum, byval id as GLuint) 1699 type PFNGLDELETETRANSFORMFEEDBACKSPROC as sub(byval n as GLsizei, byval ids as const GLuint ptr) 1700 type PFNGLGENTRANSFORMFEEDBACKSPROC as sub(byval n as GLsizei, byval ids as GLuint ptr) 1701 type PFNGLISTRANSFORMFEEDBACKPROC as function(byval id as GLuint) as GLboolean 1702 type PFNGLPAUSETRANSFORMFEEDBACKPROC as sub() 1703 type PFNGLRESUMETRANSFORMFEEDBACKPROC as sub() 1704 type PFNGLDRAWTRANSFORMFEEDBACKPROC as sub(byval mode as GLenum, byval id as GLuint) 1705 type PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC as sub(byval mode as GLenum, byval id as GLuint, byval stream as GLuint) 1706 type PFNGLBEGINQUERYINDEXEDPROC as sub(byval target as GLenum, byval index as GLuint, byval id as GLuint) 1707 type PFNGLENDQUERYINDEXEDPROC as sub(byval target as GLenum, byval index as GLuint) 1708 type PFNGLGETQUERYINDEXEDIVPROC as sub(byval target as GLenum, byval index as GLuint, byval pname as GLenum, byval params as GLint ptr) 1709 1710 #ifdef GL_GLEXT_PROTOTYPES 1711 declare sub glMinSampleShading(byval value as GLfloat) 1712 declare sub glBlendEquationi(byval buf as GLuint, byval mode as GLenum) 1713 declare sub glBlendEquationSeparatei(byval buf as GLuint, byval modeRGB as GLenum, byval modeAlpha as GLenum) 1714 declare sub glBlendFunci(byval buf as GLuint, byval src as GLenum, byval dst as GLenum) 1715 declare sub glBlendFuncSeparatei(byval buf as GLuint, byval srcRGB as GLenum, byval dstRGB as GLenum, byval srcAlpha as GLenum, byval dstAlpha as GLenum) 1716 declare sub glDrawArraysIndirect(byval mode as GLenum, byval indirect as const any ptr) 1717 declare sub glDrawElementsIndirect(byval mode as GLenum, byval type as GLenum, byval indirect as const any ptr) 1718 declare sub glUniform1d(byval location as GLint, byval x as GLdouble) 1719 declare sub glUniform2d(byval location as GLint, byval x as GLdouble, byval y as GLdouble) 1720 declare sub glUniform3d(byval location as GLint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 1721 declare sub glUniform4d(byval location as GLint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble) 1722 declare sub glUniform1dv(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1723 declare sub glUniform2dv(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1724 declare sub glUniform3dv(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1725 declare sub glUniform4dv(byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1726 declare sub glUniformMatrix2dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1727 declare sub glUniformMatrix3dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1728 declare sub glUniformMatrix4dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1729 declare sub glUniformMatrix2x3dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1730 declare sub glUniformMatrix2x4dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1731 declare sub glUniformMatrix3x2dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1732 declare sub glUniformMatrix3x4dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1733 declare sub glUniformMatrix4x2dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1734 declare sub glUniformMatrix4x3dv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1735 declare sub glGetUniformdv(byval program as GLuint, byval location as GLint, byval params as GLdouble ptr) 1736 declare function glGetSubroutineUniformLocation(byval program as GLuint, byval shadertype as GLenum, byval name as const GLchar ptr) as GLint 1737 declare function glGetSubroutineIndex(byval program as GLuint, byval shadertype as GLenum, byval name as const GLchar ptr) as GLuint 1738 declare sub glGetActiveSubroutineUniformiv(byval program as GLuint, byval shadertype as GLenum, byval index as GLuint, byval pname as GLenum, byval values as GLint ptr) 1739 declare sub glGetActiveSubroutineUniformName(byval program as GLuint, byval shadertype as GLenum, byval index as GLuint, byval bufsize as GLsizei, byval length as GLsizei ptr, byval name as GLchar ptr) 1740 declare sub glGetActiveSubroutineName(byval program as GLuint, byval shadertype as GLenum, byval index as GLuint, byval bufsize as GLsizei, byval length as GLsizei ptr, byval name as GLchar ptr) 1741 declare sub glUniformSubroutinesuiv(byval shadertype as GLenum, byval count as GLsizei, byval indices as const GLuint ptr) 1742 declare sub glGetUniformSubroutineuiv(byval shadertype as GLenum, byval location as GLint, byval params as GLuint ptr) 1743 declare sub glGetProgramStageiv(byval program as GLuint, byval shadertype as GLenum, byval pname as GLenum, byval values as GLint ptr) 1744 declare sub glPatchParameteri(byval pname as GLenum, byval value as GLint) 1745 declare sub glPatchParameterfv(byval pname as GLenum, byval values as const GLfloat ptr) 1746 declare sub glBindTransformFeedback(byval target as GLenum, byval id as GLuint) 1747 declare sub glDeleteTransformFeedbacks(byval n as GLsizei, byval ids as const GLuint ptr) 1748 declare sub glGenTransformFeedbacks(byval n as GLsizei, byval ids as GLuint ptr) 1749 declare function glIsTransformFeedback(byval id as GLuint) as GLboolean 1750 declare sub glPauseTransformFeedback() 1751 declare sub glResumeTransformFeedback() 1752 declare sub glDrawTransformFeedback(byval mode as GLenum, byval id as GLuint) 1753 declare sub glDrawTransformFeedbackStream(byval mode as GLenum, byval id as GLuint, byval stream as GLuint) 1754 declare sub glBeginQueryIndexed(byval target as GLenum, byval index as GLuint, byval id as GLuint) 1755 declare sub glEndQueryIndexed(byval target as GLenum, byval index as GLuint) 1756 declare sub glGetQueryIndexediv(byval target as GLenum, byval index as GLuint, byval pname as GLenum, byval params as GLint ptr) 1757 #endif 1758 1759 const GL_VERSION_4_1 = 1 1760 const GL_FIXED = &h140C 1761 const GL_IMPLEMENTATION_COLOR_READ_TYPE = &h8B9A 1762 const GL_IMPLEMENTATION_COLOR_READ_FORMAT = &h8B9B 1763 const GL_LOW_FLOAT = &h8DF0 1764 const GL_MEDIUM_FLOAT = &h8DF1 1765 const GL_HIGH_FLOAT = &h8DF2 1766 const GL_LOW_INT = &h8DF3 1767 const GL_MEDIUM_INT = &h8DF4 1768 const GL_HIGH_INT = &h8DF5 1769 const GL_SHADER_COMPILER = &h8DFA 1770 const GL_SHADER_BINARY_FORMATS = &h8DF8 1771 const GL_NUM_SHADER_BINARY_FORMATS = &h8DF9 1772 const GL_MAX_VERTEX_UNIFORM_VECTORS = &h8DFB 1773 const GL_MAX_VARYING_VECTORS = &h8DFC 1774 const GL_MAX_FRAGMENT_UNIFORM_VECTORS = &h8DFD 1775 const GL_RGB565 = &h8D62 1776 const GL_PROGRAM_BINARY_RETRIEVABLE_HINT = &h8257 1777 const GL_PROGRAM_BINARY_LENGTH = &h8741 1778 const GL_NUM_PROGRAM_BINARY_FORMATS = &h87FE 1779 const GL_PROGRAM_BINARY_FORMATS = &h87FF 1780 const GL_VERTEX_SHADER_BIT = &h00000001 1781 const GL_FRAGMENT_SHADER_BIT = &h00000002 1782 const GL_GEOMETRY_SHADER_BIT = &h00000004 1783 const GL_TESS_CONTROL_SHADER_BIT = &h00000008 1784 const GL_TESS_EVALUATION_SHADER_BIT = &h00000010 1785 const GL_ALL_SHADER_BITS = &hFFFFFFFF 1786 const GL_PROGRAM_SEPARABLE = &h8258 1787 const GL_ACTIVE_PROGRAM = &h8259 1788 const GL_PROGRAM_PIPELINE_BINDING = &h825A 1789 const GL_MAX_VIEWPORTS = &h825B 1790 const GL_VIEWPORT_SUBPIXEL_BITS = &h825C 1791 const GL_VIEWPORT_BOUNDS_RANGE = &h825D 1792 const GL_LAYER_PROVOKING_VERTEX = &h825E 1793 const GL_VIEWPORT_INDEX_PROVOKING_VERTEX = &h825F 1794 const GL_UNDEFINED_VERTEX = &h8260 1795 1796 type PFNGLRELEASESHADERCOMPILERPROC as sub() 1797 type PFNGLSHADERBINARYPROC as sub(byval count as GLsizei, byval shaders as const GLuint ptr, byval binaryformat as GLenum, byval binary as const any ptr, byval length as GLsizei) 1798 type PFNGLGETSHADERPRECISIONFORMATPROC as sub(byval shadertype as GLenum, byval precisiontype as GLenum, byval range as GLint ptr, byval precision as GLint ptr) 1799 type PFNGLDEPTHRANGEFPROC as sub(byval n as GLfloat, byval f as GLfloat) 1800 type PFNGLCLEARDEPTHFPROC as sub(byval d as GLfloat) 1801 type PFNGLGETPROGRAMBINARYPROC as sub(byval program as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval binaryFormat as GLenum ptr, byval binary as any ptr) 1802 type PFNGLPROGRAMBINARYPROC as sub(byval program as GLuint, byval binaryFormat as GLenum, byval binary as const any ptr, byval length as GLsizei) 1803 type PFNGLPROGRAMPARAMETERIPROC as sub(byval program as GLuint, byval pname as GLenum, byval value as GLint) 1804 type PFNGLUSEPROGRAMSTAGESPROC as sub(byval pipeline as GLuint, byval stages as GLbitfield, byval program as GLuint) 1805 type PFNGLACTIVESHADERPROGRAMPROC as sub(byval pipeline as GLuint, byval program as GLuint) 1806 type PFNGLCREATESHADERPROGRAMVPROC as function(byval type as GLenum, byval count as GLsizei, byval strings as const GLchar const ptr ptr) as GLuint 1807 type PFNGLBINDPROGRAMPIPELINEPROC as sub(byval pipeline as GLuint) 1808 type PFNGLDELETEPROGRAMPIPELINESPROC as sub(byval n as GLsizei, byval pipelines as const GLuint ptr) 1809 type PFNGLGENPROGRAMPIPELINESPROC as sub(byval n as GLsizei, byval pipelines as GLuint ptr) 1810 type PFNGLISPROGRAMPIPELINEPROC as function(byval pipeline as GLuint) as GLboolean 1811 type PFNGLGETPROGRAMPIPELINEIVPROC as sub(byval pipeline as GLuint, byval pname as GLenum, byval params as GLint ptr) 1812 type PFNGLPROGRAMUNIFORM1IPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLint) 1813 type PFNGLPROGRAMUNIFORM1IVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1814 type PFNGLPROGRAMUNIFORM1FPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLfloat) 1815 type PFNGLPROGRAMUNIFORM1FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1816 type PFNGLPROGRAMUNIFORM1DPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLdouble) 1817 type PFNGLPROGRAMUNIFORM1DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1818 type PFNGLPROGRAMUNIFORM1UIPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLuint) 1819 type PFNGLPROGRAMUNIFORM1UIVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1820 type PFNGLPROGRAMUNIFORM2IPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLint, byval v1 as GLint) 1821 type PFNGLPROGRAMUNIFORM2IVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1822 type PFNGLPROGRAMUNIFORM2FPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat) 1823 type PFNGLPROGRAMUNIFORM2FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1824 type PFNGLPROGRAMUNIFORM2DPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLdouble, byval v1 as GLdouble) 1825 type PFNGLPROGRAMUNIFORM2DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1826 type PFNGLPROGRAMUNIFORM2UIPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLuint, byval v1 as GLuint) 1827 type PFNGLPROGRAMUNIFORM2UIVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1828 type PFNGLPROGRAMUNIFORM3IPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint) 1829 type PFNGLPROGRAMUNIFORM3IVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1830 type PFNGLPROGRAMUNIFORM3FPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat) 1831 type PFNGLPROGRAMUNIFORM3FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1832 type PFNGLPROGRAMUNIFORM3DPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLdouble, byval v1 as GLdouble, byval v2 as GLdouble) 1833 type PFNGLPROGRAMUNIFORM3DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1834 type PFNGLPROGRAMUNIFORM3UIPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint) 1835 type PFNGLPROGRAMUNIFORM3UIVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1836 type PFNGLPROGRAMUNIFORM4IPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint, byval v3 as GLint) 1837 type PFNGLPROGRAMUNIFORM4IVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1838 type PFNGLPROGRAMUNIFORM4FPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat, byval v3 as GLfloat) 1839 type PFNGLPROGRAMUNIFORM4FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1840 type PFNGLPROGRAMUNIFORM4DPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLdouble, byval v1 as GLdouble, byval v2 as GLdouble, byval v3 as GLdouble) 1841 type PFNGLPROGRAMUNIFORM4DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1842 type PFNGLPROGRAMUNIFORM4UIPROC as sub(byval program as GLuint, byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint, byval v3 as GLuint) 1843 type PFNGLPROGRAMUNIFORM4UIVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1844 type PFNGLPROGRAMUNIFORMMATRIX2FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1845 type PFNGLPROGRAMUNIFORMMATRIX3FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1846 type PFNGLPROGRAMUNIFORMMATRIX4FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1847 type PFNGLPROGRAMUNIFORMMATRIX2DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1848 type PFNGLPROGRAMUNIFORMMATRIX3DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1849 type PFNGLPROGRAMUNIFORMMATRIX4DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1850 type PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1851 type PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1852 type PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1853 type PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1854 type PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1855 type PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1856 type PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1857 type PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1858 type PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1859 type PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1860 type PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1861 type PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1862 type PFNGLVALIDATEPROGRAMPIPELINEPROC as sub(byval pipeline as GLuint) 1863 type PFNGLGETPROGRAMPIPELINEINFOLOGPROC as sub(byval pipeline as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr) 1864 type PFNGLVERTEXATTRIBL1DPROC as sub(byval index as GLuint, byval x as GLdouble) 1865 type PFNGLVERTEXATTRIBL2DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble) 1866 type PFNGLVERTEXATTRIBL3DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 1867 type PFNGLVERTEXATTRIBL4DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble) 1868 type PFNGLVERTEXATTRIBL1DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 1869 type PFNGLVERTEXATTRIBL2DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 1870 type PFNGLVERTEXATTRIBL3DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 1871 type PFNGLVERTEXATTRIBL4DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr) 1872 type PFNGLVERTEXATTRIBLPOINTERPROC as sub(byval index as GLuint, byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 1873 type PFNGLGETVERTEXATTRIBLDVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLdouble ptr) 1874 type PFNGLVIEWPORTARRAYVPROC as sub(byval first as GLuint, byval count as GLsizei, byval v as const GLfloat ptr) 1875 type PFNGLVIEWPORTINDEXEDFPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval w as GLfloat, byval h as GLfloat) 1876 type PFNGLVIEWPORTINDEXEDFVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr) 1877 type PFNGLSCISSORARRAYVPROC as sub(byval first as GLuint, byval count as GLsizei, byval v as const GLint ptr) 1878 type PFNGLSCISSORINDEXEDPROC as sub(byval index as GLuint, byval left as GLint, byval bottom as GLint, byval width as GLsizei, byval height as GLsizei) 1879 type PFNGLSCISSORINDEXEDVPROC as sub(byval index as GLuint, byval v as const GLint ptr) 1880 type PFNGLDEPTHRANGEARRAYVPROC as sub(byval first as GLuint, byval count as GLsizei, byval v as const GLdouble ptr) 1881 type PFNGLDEPTHRANGEINDEXEDPROC as sub(byval index as GLuint, byval n as GLdouble, byval f as GLdouble) 1882 type PFNGLGETFLOATI_VPROC as sub(byval target as GLenum, byval index as GLuint, byval data as GLfloat ptr) 1883 type PFNGLGETDOUBLEI_VPROC as sub(byval target as GLenum, byval index as GLuint, byval data as GLdouble ptr) 1884 1885 #ifdef GL_GLEXT_PROTOTYPES 1886 declare sub glReleaseShaderCompiler() 1887 declare sub glShaderBinary(byval count as GLsizei, byval shaders as const GLuint ptr, byval binaryformat as GLenum, byval binary as const any ptr, byval length as GLsizei) 1888 declare sub glGetShaderPrecisionFormat(byval shadertype as GLenum, byval precisiontype as GLenum, byval range as GLint ptr, byval precision as GLint ptr) 1889 declare sub glDepthRangef(byval n as GLfloat, byval f as GLfloat) 1890 declare sub glClearDepthf(byval d as GLfloat) 1891 declare sub glGetProgramBinary(byval program as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval binaryFormat as GLenum ptr, byval binary as any ptr) 1892 declare sub glProgramBinary(byval program as GLuint, byval binaryFormat as GLenum, byval binary as const any ptr, byval length as GLsizei) 1893 declare sub glProgramParameteri(byval program as GLuint, byval pname as GLenum, byval value as GLint) 1894 declare sub glUseProgramStages(byval pipeline as GLuint, byval stages as GLbitfield, byval program as GLuint) 1895 declare sub glActiveShaderProgram(byval pipeline as GLuint, byval program as GLuint) 1896 declare function glCreateShaderProgramv(byval type as GLenum, byval count as GLsizei, byval strings as const GLchar const ptr ptr) as GLuint 1897 declare sub glBindProgramPipeline(byval pipeline as GLuint) 1898 declare sub glDeleteProgramPipelines(byval n as GLsizei, byval pipelines as const GLuint ptr) 1899 declare sub glGenProgramPipelines(byval n as GLsizei, byval pipelines as GLuint ptr) 1900 declare function glIsProgramPipeline(byval pipeline as GLuint) as GLboolean 1901 declare sub glGetProgramPipelineiv(byval pipeline as GLuint, byval pname as GLenum, byval params as GLint ptr) 1902 declare sub glProgramUniform1i(byval program as GLuint, byval location as GLint, byval v0 as GLint) 1903 declare sub glProgramUniform1iv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1904 declare sub glProgramUniform1f(byval program as GLuint, byval location as GLint, byval v0 as GLfloat) 1905 declare sub glProgramUniform1fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1906 declare sub glProgramUniform1d(byval program as GLuint, byval location as GLint, byval v0 as GLdouble) 1907 declare sub glProgramUniform1dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1908 declare sub glProgramUniform1ui(byval program as GLuint, byval location as GLint, byval v0 as GLuint) 1909 declare sub glProgramUniform1uiv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1910 declare sub glProgramUniform2i(byval program as GLuint, byval location as GLint, byval v0 as GLint, byval v1 as GLint) 1911 declare sub glProgramUniform2iv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1912 declare sub glProgramUniform2f(byval program as GLuint, byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat) 1913 declare sub glProgramUniform2fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1914 declare sub glProgramUniform2d(byval program as GLuint, byval location as GLint, byval v0 as GLdouble, byval v1 as GLdouble) 1915 declare sub glProgramUniform2dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1916 declare sub glProgramUniform2ui(byval program as GLuint, byval location as GLint, byval v0 as GLuint, byval v1 as GLuint) 1917 declare sub glProgramUniform2uiv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1918 declare sub glProgramUniform3i(byval program as GLuint, byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint) 1919 declare sub glProgramUniform3iv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1920 declare sub glProgramUniform3f(byval program as GLuint, byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat) 1921 declare sub glProgramUniform3fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1922 declare sub glProgramUniform3d(byval program as GLuint, byval location as GLint, byval v0 as GLdouble, byval v1 as GLdouble, byval v2 as GLdouble) 1923 declare sub glProgramUniform3dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1924 declare sub glProgramUniform3ui(byval program as GLuint, byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint) 1925 declare sub glProgramUniform3uiv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1926 declare sub glProgramUniform4i(byval program as GLuint, byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint, byval v3 as GLint) 1927 declare sub glProgramUniform4iv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLint ptr) 1928 declare sub glProgramUniform4f(byval program as GLuint, byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat, byval v3 as GLfloat) 1929 declare sub glProgramUniform4fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr) 1930 declare sub glProgramUniform4d(byval program as GLuint, byval location as GLint, byval v0 as GLdouble, byval v1 as GLdouble, byval v2 as GLdouble, byval v3 as GLdouble) 1931 declare sub glProgramUniform4dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLdouble ptr) 1932 declare sub glProgramUniform4ui(byval program as GLuint, byval location as GLint, byval v0 as GLuint, byval v1 as GLuint, byval v2 as GLuint, byval v3 as GLuint) 1933 declare sub glProgramUniform4uiv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval value as const GLuint ptr) 1934 declare sub glProgramUniformMatrix2fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1935 declare sub glProgramUniformMatrix3fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1936 declare sub glProgramUniformMatrix4fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1937 declare sub glProgramUniformMatrix2dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1938 declare sub glProgramUniformMatrix3dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1939 declare sub glProgramUniformMatrix4dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1940 declare sub glProgramUniformMatrix2x3fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1941 declare sub glProgramUniformMatrix3x2fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1942 declare sub glProgramUniformMatrix2x4fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1943 declare sub glProgramUniformMatrix4x2fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1944 declare sub glProgramUniformMatrix3x4fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1945 declare sub glProgramUniformMatrix4x3fv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr) 1946 declare sub glProgramUniformMatrix2x3dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1947 declare sub glProgramUniformMatrix3x2dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1948 declare sub glProgramUniformMatrix2x4dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1949 declare sub glProgramUniformMatrix4x2dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1950 declare sub glProgramUniformMatrix3x4dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1951 declare sub glProgramUniformMatrix4x3dv(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLdouble ptr) 1952 declare sub glValidateProgramPipeline(byval pipeline as GLuint) 1953 declare sub glGetProgramPipelineInfoLog(byval pipeline as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr) 1954 declare sub glVertexAttribL1d(byval index as GLuint, byval x as GLdouble) 1955 declare sub glVertexAttribL2d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble) 1956 declare sub glVertexAttribL3d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble) 1957 declare sub glVertexAttribL4d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble) 1958 declare sub glVertexAttribL1dv(byval index as GLuint, byval v as const GLdouble ptr) 1959 declare sub glVertexAttribL2dv(byval index as GLuint, byval v as const GLdouble ptr) 1960 declare sub glVertexAttribL3dv(byval index as GLuint, byval v as const GLdouble ptr) 1961 declare sub glVertexAttribL4dv(byval index as GLuint, byval v as const GLdouble ptr) 1962 declare sub glVertexAttribLPointer(byval index as GLuint, byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr) 1963 declare sub glGetVertexAttribLdv(byval index as GLuint, byval pname as GLenum, byval params as GLdouble ptr) 1964 declare sub glViewportArrayv(byval first as GLuint, byval count as GLsizei, byval v as const GLfloat ptr) 1965 declare sub glViewportIndexedf(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval w as GLfloat, byval h as GLfloat) 1966 declare sub glViewportIndexedfv(byval index as GLuint, byval v as const GLfloat ptr) 1967 declare sub glScissorArrayv(byval first as GLuint, byval count as GLsizei, byval v as const GLint ptr) 1968 declare sub glScissorIndexed(byval index as GLuint, byval left as GLint, byval bottom as GLint, byval width as GLsizei, byval height as GLsizei) 1969 declare sub glScissorIndexedv(byval index as GLuint, byval v as const GLint ptr) 1970 declare sub glDepthRangeArrayv(byval first as GLuint, byval count as GLsizei, byval v as const GLdouble ptr) 1971 declare sub glDepthRangeIndexed(byval index as GLuint, byval n as GLdouble, byval f as GLdouble) 1972 declare sub glGetFloati_v(byval target as GLenum, byval index as GLuint, byval data as GLfloat ptr) 1973 declare sub glGetDoublei_v(byval target as GLenum, byval index as GLuint, byval data as GLdouble ptr) 1974 #endif 1975 1976 const GL_VERSION_4_2 = 1 1977 const GL_COPY_READ_BUFFER_BINDING = &h8F36 1978 const GL_COPY_WRITE_BUFFER_BINDING = &h8F37 1979 const GL_TRANSFORM_FEEDBACK_ACTIVE = &h8E24 1980 const GL_TRANSFORM_FEEDBACK_PAUSED = &h8E23 1981 const GL_UNPACK_COMPRESSED_BLOCK_WIDTH = &h9127 1982 const GL_UNPACK_COMPRESSED_BLOCK_HEIGHT = &h9128 1983 const GL_UNPACK_COMPRESSED_BLOCK_DEPTH = &h9129 1984 const GL_UNPACK_COMPRESSED_BLOCK_SIZE = &h912A 1985 const GL_PACK_COMPRESSED_BLOCK_WIDTH = &h912B 1986 const GL_PACK_COMPRESSED_BLOCK_HEIGHT = &h912C 1987 const GL_PACK_COMPRESSED_BLOCK_DEPTH = &h912D 1988 const GL_PACK_COMPRESSED_BLOCK_SIZE = &h912E 1989 const GL_NUM_SAMPLE_COUNTS = &h9380 1990 const GL_MIN_MAP_BUFFER_ALIGNMENT = &h90BC 1991 const GL_ATOMIC_COUNTER_BUFFER = &h92C0 1992 const GL_ATOMIC_COUNTER_BUFFER_BINDING = &h92C1 1993 const GL_ATOMIC_COUNTER_BUFFER_START = &h92C2 1994 const GL_ATOMIC_COUNTER_BUFFER_SIZE = &h92C3 1995 const GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = &h92C4 1996 const GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = &h92C5 1997 const GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = &h92C6 1998 const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = &h92C7 1999 const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = &h92C8 2000 const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = &h92C9 2001 const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = &h92CA 2002 const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = &h92CB 2003 const GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = &h92CC 2004 const GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = &h92CD 2005 const GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = &h92CE 2006 const GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = &h92CF 2007 const GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = &h92D0 2008 const GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = &h92D1 2009 const GL_MAX_VERTEX_ATOMIC_COUNTERS = &h92D2 2010 const GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = &h92D3 2011 const GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = &h92D4 2012 const GL_MAX_GEOMETRY_ATOMIC_COUNTERS = &h92D5 2013 const GL_MAX_FRAGMENT_ATOMIC_COUNTERS = &h92D6 2014 const GL_MAX_COMBINED_ATOMIC_COUNTERS = &h92D7 2015 const GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = &h92D8 2016 const GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = &h92DC 2017 const GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = &h92D9 2018 const GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = &h92DA 2019 const GL_UNSIGNED_INT_ATOMIC_COUNTER = &h92DB 2020 const GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = &h00000001 2021 const GL_ELEMENT_ARRAY_BARRIER_BIT = &h00000002 2022 const GL_UNIFORM_BARRIER_BIT = &h00000004 2023 const GL_TEXTURE_FETCH_BARRIER_BIT = &h00000008 2024 const GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = &h00000020 2025 const GL_COMMAND_BARRIER_BIT = &h00000040 2026 const GL_PIXEL_BUFFER_BARRIER_BIT = &h00000080 2027 const GL_TEXTURE_UPDATE_BARRIER_BIT = &h00000100 2028 const GL_BUFFER_UPDATE_BARRIER_BIT = &h00000200 2029 const GL_FRAMEBUFFER_BARRIER_BIT = &h00000400 2030 const GL_TRANSFORM_FEEDBACK_BARRIER_BIT = &h00000800 2031 const GL_ATOMIC_COUNTER_BARRIER_BIT = &h00001000 2032 const GL_ALL_BARRIER_BITS = &hFFFFFFFF 2033 const GL_MAX_IMAGE_UNITS = &h8F38 2034 const GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = &h8F39 2035 const GL_IMAGE_BINDING_NAME = &h8F3A 2036 const GL_IMAGE_BINDING_LEVEL = &h8F3B 2037 const GL_IMAGE_BINDING_LAYERED = &h8F3C 2038 const GL_IMAGE_BINDING_LAYER = &h8F3D 2039 const GL_IMAGE_BINDING_ACCESS = &h8F3E 2040 const GL_IMAGE_1D = &h904C 2041 const GL_IMAGE_2D = &h904D 2042 const GL_IMAGE_3D = &h904E 2043 const GL_IMAGE_2D_RECT = &h904F 2044 const GL_IMAGE_CUBE = &h9050 2045 const GL_IMAGE_BUFFER = &h9051 2046 const GL_IMAGE_1D_ARRAY = &h9052 2047 const GL_IMAGE_2D_ARRAY = &h9053 2048 const GL_IMAGE_CUBE_MAP_ARRAY = &h9054 2049 const GL_IMAGE_2D_MULTISAMPLE = &h9055 2050 const GL_IMAGE_2D_MULTISAMPLE_ARRAY = &h9056 2051 const GL_INT_IMAGE_1D = &h9057 2052 const GL_INT_IMAGE_2D = &h9058 2053 const GL_INT_IMAGE_3D = &h9059 2054 const GL_INT_IMAGE_2D_RECT = &h905A 2055 const GL_INT_IMAGE_CUBE = &h905B 2056 const GL_INT_IMAGE_BUFFER = &h905C 2057 const GL_INT_IMAGE_1D_ARRAY = &h905D 2058 const GL_INT_IMAGE_2D_ARRAY = &h905E 2059 const GL_INT_IMAGE_CUBE_MAP_ARRAY = &h905F 2060 const GL_INT_IMAGE_2D_MULTISAMPLE = &h9060 2061 const GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = &h9061 2062 const GL_UNSIGNED_INT_IMAGE_1D = &h9062 2063 const GL_UNSIGNED_INT_IMAGE_2D = &h9063 2064 const GL_UNSIGNED_INT_IMAGE_3D = &h9064 2065 const GL_UNSIGNED_INT_IMAGE_2D_RECT = &h9065 2066 const GL_UNSIGNED_INT_IMAGE_CUBE = &h9066 2067 const GL_UNSIGNED_INT_IMAGE_BUFFER = &h9067 2068 const GL_UNSIGNED_INT_IMAGE_1D_ARRAY = &h9068 2069 const GL_UNSIGNED_INT_IMAGE_2D_ARRAY = &h9069 2070 const GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = &h906A 2071 const GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = &h906B 2072 const GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = &h906C 2073 const GL_MAX_IMAGE_SAMPLES = &h906D 2074 const GL_IMAGE_BINDING_FORMAT = &h906E 2075 const GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = &h90C7 2076 const GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = &h90C8 2077 const GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = &h90C9 2078 const GL_MAX_VERTEX_IMAGE_UNIFORMS = &h90CA 2079 const GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = &h90CB 2080 const GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = &h90CC 2081 const GL_MAX_GEOMETRY_IMAGE_UNIFORMS = &h90CD 2082 const GL_MAX_FRAGMENT_IMAGE_UNIFORMS = &h90CE 2083 const GL_MAX_COMBINED_IMAGE_UNIFORMS = &h90CF 2084 const GL_COMPRESSED_RGBA_BPTC_UNORM = &h8E8C 2085 const GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = &h8E8D 2086 const GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = &h8E8E 2087 const GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = &h8E8F 2088 const GL_TEXTURE_IMMUTABLE_FORMAT = &h912F 2089 2090 type PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC as sub(byval mode as GLenum, byval first as GLint, byval count as GLsizei, byval instancecount as GLsizei, byval baseinstance as GLuint) 2091 type PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC as sub(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei, byval baseinstance as GLuint) 2092 type PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC as sub(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei, byval basevertex as GLint, byval baseinstance as GLuint) 2093 type PFNGLGETINTERNALFORMATIVPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval pname as GLenum, byval bufSize as GLsizei, byval params as GLint ptr) 2094 type PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC as sub(byval program as GLuint, byval bufferIndex as GLuint, byval pname as GLenum, byval params as GLint ptr) 2095 type PFNGLBINDIMAGETEXTUREPROC as sub(byval unit as GLuint, byval texture as GLuint, byval level as GLint, byval layered as GLboolean, byval layer as GLint, byval access as GLenum, byval format as GLenum) 2096 type PFNGLMEMORYBARRIERPROC as sub(byval barriers as GLbitfield) 2097 type PFNGLTEXSTORAGE1DPROC as sub(byval target as GLenum, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei) 2098 type PFNGLTEXSTORAGE2DPROC as sub(byval target as GLenum, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2099 type PFNGLTEXSTORAGE3DPROC as sub(byval target as GLenum, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei) 2100 type PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC as sub(byval mode as GLenum, byval id as GLuint, byval instancecount as GLsizei) 2101 type PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC as sub(byval mode as GLenum, byval id as GLuint, byval stream as GLuint, byval instancecount as GLsizei) 2102 2103 #ifdef GL_GLEXT_PROTOTYPES 2104 declare sub glDrawArraysInstancedBaseInstance(byval mode as GLenum, byval first as GLint, byval count as GLsizei, byval instancecount as GLsizei, byval baseinstance as GLuint) 2105 declare sub glDrawElementsInstancedBaseInstance(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei, byval baseinstance as GLuint) 2106 declare sub glDrawElementsInstancedBaseVertexBaseInstance(byval mode as GLenum, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr, byval instancecount as GLsizei, byval basevertex as GLint, byval baseinstance as GLuint) 2107 declare sub glGetInternalformativ(byval target as GLenum, byval internalformat as GLenum, byval pname as GLenum, byval bufSize as GLsizei, byval params as GLint ptr) 2108 declare sub glGetActiveAtomicCounterBufferiv(byval program as GLuint, byval bufferIndex as GLuint, byval pname as GLenum, byval params as GLint ptr) 2109 declare sub glBindImageTexture(byval unit as GLuint, byval texture as GLuint, byval level as GLint, byval layered as GLboolean, byval layer as GLint, byval access as GLenum, byval format as GLenum) 2110 declare sub glMemoryBarrier(byval barriers as GLbitfield) 2111 declare sub glTexStorage1D(byval target as GLenum, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei) 2112 declare sub glTexStorage2D(byval target as GLenum, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2113 declare sub glTexStorage3D(byval target as GLenum, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei) 2114 declare sub glDrawTransformFeedbackInstanced(byval mode as GLenum, byval id as GLuint, byval instancecount as GLsizei) 2115 declare sub glDrawTransformFeedbackStreamInstanced(byval mode as GLenum, byval id as GLuint, byval stream as GLuint, byval instancecount as GLsizei) 2116 #endif 2117 2118 const GL_VERSION_4_3 = 1 2119 type GLDEBUGPROC as sub(byval source as GLenum, byval type as GLenum, byval id as GLuint, byval severity as GLenum, byval length as GLsizei, byval message as const GLchar ptr, byval userParam as const any ptr) 2120 const GL_NUM_SHADING_LANGUAGE_VERSIONS = &h82E9 2121 const GL_VERTEX_ATTRIB_ARRAY_LONG = &h874E 2122 const GL_COMPRESSED_RGB8_ETC2 = &h9274 2123 const GL_COMPRESSED_SRGB8_ETC2 = &h9275 2124 const GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = &h9276 2125 const GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = &h9277 2126 const GL_COMPRESSED_RGBA8_ETC2_EAC = &h9278 2127 const GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = &h9279 2128 const GL_COMPRESSED_R11_EAC = &h9270 2129 const GL_COMPRESSED_SIGNED_R11_EAC = &h9271 2130 const GL_COMPRESSED_RG11_EAC = &h9272 2131 const GL_COMPRESSED_SIGNED_RG11_EAC = &h9273 2132 const GL_PRIMITIVE_RESTART_FIXED_INDEX = &h8D69 2133 const GL_ANY_SAMPLES_PASSED_CONSERVATIVE = &h8D6A 2134 const GL_MAX_ELEMENT_INDEX = &h8D6B 2135 const GL_COMPUTE_SHADER = &h91B9 2136 const GL_MAX_COMPUTE_UNIFORM_BLOCKS = &h91BB 2137 const GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = &h91BC 2138 const GL_MAX_COMPUTE_IMAGE_UNIFORMS = &h91BD 2139 const GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = &h8262 2140 const GL_MAX_COMPUTE_UNIFORM_COMPONENTS = &h8263 2141 const GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = &h8264 2142 const GL_MAX_COMPUTE_ATOMIC_COUNTERS = &h8265 2143 const GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = &h8266 2144 const GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = &h90EB 2145 const GL_MAX_COMPUTE_WORK_GROUP_COUNT = &h91BE 2146 const GL_MAX_COMPUTE_WORK_GROUP_SIZE = &h91BF 2147 const GL_COMPUTE_WORK_GROUP_SIZE = &h8267 2148 const GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = &h90EC 2149 const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = &h90ED 2150 const GL_DISPATCH_INDIRECT_BUFFER = &h90EE 2151 const GL_DISPATCH_INDIRECT_BUFFER_BINDING = &h90EF 2152 const GL_COMPUTE_SHADER_BIT = &h00000020 2153 const GL_DEBUG_OUTPUT_SYNCHRONOUS = &h8242 2154 const GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = &h8243 2155 const GL_DEBUG_CALLBACK_FUNCTION = &h8244 2156 const GL_DEBUG_CALLBACK_USER_PARAM = &h8245 2157 const GL_DEBUG_SOURCE_API = &h8246 2158 const GL_DEBUG_SOURCE_WINDOW_SYSTEM = &h8247 2159 const GL_DEBUG_SOURCE_SHADER_COMPILER = &h8248 2160 const GL_DEBUG_SOURCE_THIRD_PARTY = &h8249 2161 const GL_DEBUG_SOURCE_APPLICATION = &h824A 2162 const GL_DEBUG_SOURCE_OTHER = &h824B 2163 const GL_DEBUG_TYPE_ERROR = &h824C 2164 const GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = &h824D 2165 const GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = &h824E 2166 const GL_DEBUG_TYPE_PORTABILITY = &h824F 2167 const GL_DEBUG_TYPE_PERFORMANCE = &h8250 2168 const GL_DEBUG_TYPE_OTHER = &h8251 2169 const GL_MAX_DEBUG_MESSAGE_LENGTH = &h9143 2170 const GL_MAX_DEBUG_LOGGED_MESSAGES = &h9144 2171 const GL_DEBUG_LOGGED_MESSAGES = &h9145 2172 const GL_DEBUG_SEVERITY_HIGH = &h9146 2173 const GL_DEBUG_SEVERITY_MEDIUM = &h9147 2174 const GL_DEBUG_SEVERITY_LOW = &h9148 2175 const GL_DEBUG_TYPE_MARKER = &h8268 2176 const GL_DEBUG_TYPE_PUSH_GROUP = &h8269 2177 const GL_DEBUG_TYPE_POP_GROUP = &h826A 2178 const GL_DEBUG_SEVERITY_NOTIFICATION = &h826B 2179 const GL_MAX_DEBUG_GROUP_STACK_DEPTH = &h826C 2180 const GL_DEBUG_GROUP_STACK_DEPTH = &h826D 2181 const GL_BUFFER = &h82E0 2182 const GL_SHADER = &h82E1 2183 const GL_PROGRAM = &h82E2 2184 const GL_QUERY = &h82E3 2185 const GL_PROGRAM_PIPELINE = &h82E4 2186 const GL_SAMPLER = &h82E6 2187 const GL_MAX_LABEL_LENGTH = &h82E8 2188 const GL_DEBUG_OUTPUT = &h92E0 2189 const GL_CONTEXT_FLAG_DEBUG_BIT = &h00000002 2190 const GL_MAX_UNIFORM_LOCATIONS = &h826E 2191 const GL_FRAMEBUFFER_DEFAULT_WIDTH = &h9310 2192 const GL_FRAMEBUFFER_DEFAULT_HEIGHT = &h9311 2193 const GL_FRAMEBUFFER_DEFAULT_LAYERS = &h9312 2194 const GL_FRAMEBUFFER_DEFAULT_SAMPLES = &h9313 2195 const GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = &h9314 2196 const GL_MAX_FRAMEBUFFER_WIDTH = &h9315 2197 const GL_MAX_FRAMEBUFFER_HEIGHT = &h9316 2198 const GL_MAX_FRAMEBUFFER_LAYERS = &h9317 2199 const GL_MAX_FRAMEBUFFER_SAMPLES = &h9318 2200 const GL_INTERNALFORMAT_SUPPORTED = &h826F 2201 const GL_INTERNALFORMAT_PREFERRED = &h8270 2202 const GL_INTERNALFORMAT_RED_SIZE = &h8271 2203 const GL_INTERNALFORMAT_GREEN_SIZE = &h8272 2204 const GL_INTERNALFORMAT_BLUE_SIZE = &h8273 2205 const GL_INTERNALFORMAT_ALPHA_SIZE = &h8274 2206 const GL_INTERNALFORMAT_DEPTH_SIZE = &h8275 2207 const GL_INTERNALFORMAT_STENCIL_SIZE = &h8276 2208 const GL_INTERNALFORMAT_SHARED_SIZE = &h8277 2209 const GL_INTERNALFORMAT_RED_TYPE = &h8278 2210 const GL_INTERNALFORMAT_GREEN_TYPE = &h8279 2211 const GL_INTERNALFORMAT_BLUE_TYPE = &h827A 2212 const GL_INTERNALFORMAT_ALPHA_TYPE = &h827B 2213 const GL_INTERNALFORMAT_DEPTH_TYPE = &h827C 2214 const GL_INTERNALFORMAT_STENCIL_TYPE = &h827D 2215 const GL_MAX_WIDTH = &h827E 2216 const GL_MAX_HEIGHT = &h827F 2217 const GL_MAX_DEPTH = &h8280 2218 const GL_MAX_LAYERS = &h8281 2219 const GL_MAX_COMBINED_DIMENSIONS = &h8282 2220 const GL_COLOR_COMPONENTS = &h8283 2221 const GL_DEPTH_COMPONENTS = &h8284 2222 const GL_STENCIL_COMPONENTS = &h8285 2223 const GL_COLOR_RENDERABLE = &h8286 2224 const GL_DEPTH_RENDERABLE = &h8287 2225 const GL_STENCIL_RENDERABLE = &h8288 2226 const GL_FRAMEBUFFER_RENDERABLE = &h8289 2227 const GL_FRAMEBUFFER_RENDERABLE_LAYERED = &h828A 2228 const GL_FRAMEBUFFER_BLEND = &h828B 2229 const GL_READ_PIXELS = &h828C 2230 const GL_READ_PIXELS_FORMAT = &h828D 2231 const GL_READ_PIXELS_TYPE = &h828E 2232 const GL_TEXTURE_IMAGE_FORMAT = &h828F 2233 const GL_TEXTURE_IMAGE_TYPE = &h8290 2234 const GL_GET_TEXTURE_IMAGE_FORMAT = &h8291 2235 const GL_GET_TEXTURE_IMAGE_TYPE = &h8292 2236 const GL_MIPMAP = &h8293 2237 const GL_MANUAL_GENERATE_MIPMAP = &h8294 2238 const GL_AUTO_GENERATE_MIPMAP = &h8295 2239 const GL_COLOR_ENCODING = &h8296 2240 const GL_SRGB_READ = &h8297 2241 const GL_SRGB_WRITE = &h8298 2242 const GL_FILTER = &h829A 2243 const GL_VERTEX_TEXTURE = &h829B 2244 const GL_TESS_CONTROL_TEXTURE = &h829C 2245 const GL_TESS_EVALUATION_TEXTURE = &h829D 2246 const GL_GEOMETRY_TEXTURE = &h829E 2247 const GL_FRAGMENT_TEXTURE = &h829F 2248 const GL_COMPUTE_TEXTURE = &h82A0 2249 const GL_TEXTURE_SHADOW = &h82A1 2250 const GL_TEXTURE_GATHER = &h82A2 2251 const GL_TEXTURE_GATHER_SHADOW = &h82A3 2252 const GL_SHADER_IMAGE_LOAD = &h82A4 2253 const GL_SHADER_IMAGE_STORE = &h82A5 2254 const GL_SHADER_IMAGE_ATOMIC = &h82A6 2255 const GL_IMAGE_TEXEL_SIZE = &h82A7 2256 const GL_IMAGE_COMPATIBILITY_CLASS = &h82A8 2257 const GL_IMAGE_PIXEL_FORMAT = &h82A9 2258 const GL_IMAGE_PIXEL_TYPE = &h82AA 2259 const GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = &h82AC 2260 const GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = &h82AD 2261 const GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = &h82AE 2262 const GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = &h82AF 2263 const GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = &h82B1 2264 const GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = &h82B2 2265 const GL_TEXTURE_COMPRESSED_BLOCK_SIZE = &h82B3 2266 const GL_CLEAR_BUFFER = &h82B4 2267 const GL_TEXTURE_VIEW = &h82B5 2268 const GL_VIEW_COMPATIBILITY_CLASS = &h82B6 2269 const GL_FULL_SUPPORT = &h82B7 2270 const GL_CAVEAT_SUPPORT = &h82B8 2271 const GL_IMAGE_CLASS_4_X_32 = &h82B9 2272 const GL_IMAGE_CLASS_2_X_32 = &h82BA 2273 const GL_IMAGE_CLASS_1_X_32 = &h82BB 2274 const GL_IMAGE_CLASS_4_X_16 = &h82BC 2275 const GL_IMAGE_CLASS_2_X_16 = &h82BD 2276 const GL_IMAGE_CLASS_1_X_16 = &h82BE 2277 const GL_IMAGE_CLASS_4_X_8 = &h82BF 2278 const GL_IMAGE_CLASS_2_X_8 = &h82C0 2279 const GL_IMAGE_CLASS_1_X_8 = &h82C1 2280 const GL_IMAGE_CLASS_11_11_10 = &h82C2 2281 const GL_IMAGE_CLASS_10_10_10_2 = &h82C3 2282 const GL_VIEW_CLASS_128_BITS = &h82C4 2283 const GL_VIEW_CLASS_96_BITS = &h82C5 2284 const GL_VIEW_CLASS_64_BITS = &h82C6 2285 const GL_VIEW_CLASS_48_BITS = &h82C7 2286 const GL_VIEW_CLASS_32_BITS = &h82C8 2287 const GL_VIEW_CLASS_24_BITS = &h82C9 2288 const GL_VIEW_CLASS_16_BITS = &h82CA 2289 const GL_VIEW_CLASS_8_BITS = &h82CB 2290 const GL_VIEW_CLASS_S3TC_DXT1_RGB = &h82CC 2291 const GL_VIEW_CLASS_S3TC_DXT1_RGBA = &h82CD 2292 const GL_VIEW_CLASS_S3TC_DXT3_RGBA = &h82CE 2293 const GL_VIEW_CLASS_S3TC_DXT5_RGBA = &h82CF 2294 const GL_VIEW_CLASS_RGTC1_RED = &h82D0 2295 const GL_VIEW_CLASS_RGTC2_RG = &h82D1 2296 const GL_VIEW_CLASS_BPTC_UNORM = &h82D2 2297 const GL_VIEW_CLASS_BPTC_FLOAT = &h82D3 2298 const GL_UNIFORM = &h92E1 2299 const GL_UNIFORM_BLOCK = &h92E2 2300 const GL_PROGRAM_INPUT = &h92E3 2301 const GL_PROGRAM_OUTPUT = &h92E4 2302 const GL_BUFFER_VARIABLE = &h92E5 2303 const GL_SHADER_STORAGE_BLOCK = &h92E6 2304 const GL_VERTEX_SUBROUTINE = &h92E8 2305 const GL_TESS_CONTROL_SUBROUTINE = &h92E9 2306 const GL_TESS_EVALUATION_SUBROUTINE = &h92EA 2307 const GL_GEOMETRY_SUBROUTINE = &h92EB 2308 const GL_FRAGMENT_SUBROUTINE = &h92EC 2309 const GL_COMPUTE_SUBROUTINE = &h92ED 2310 const GL_VERTEX_SUBROUTINE_UNIFORM = &h92EE 2311 const GL_TESS_CONTROL_SUBROUTINE_UNIFORM = &h92EF 2312 const GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = &h92F0 2313 const GL_GEOMETRY_SUBROUTINE_UNIFORM = &h92F1 2314 const GL_FRAGMENT_SUBROUTINE_UNIFORM = &h92F2 2315 const GL_COMPUTE_SUBROUTINE_UNIFORM = &h92F3 2316 const GL_TRANSFORM_FEEDBACK_VARYING = &h92F4 2317 const GL_ACTIVE_RESOURCES = &h92F5 2318 const GL_MAX_NAME_LENGTH = &h92F6 2319 const GL_MAX_NUM_ACTIVE_VARIABLES = &h92F7 2320 const GL_MAX_NUM_COMPATIBLE_SUBROUTINES = &h92F8 2321 const GL_NAME_LENGTH = &h92F9 2322 const GL_TYPE = &h92FA 2323 const GL_ARRAY_SIZE = &h92FB 2324 const GL_OFFSET = &h92FC 2325 const GL_BLOCK_INDEX = &h92FD 2326 const GL_ARRAY_STRIDE = &h92FE 2327 const GL_MATRIX_STRIDE = &h92FF 2328 const GL_IS_ROW_MAJOR = &h9300 2329 const GL_ATOMIC_COUNTER_BUFFER_INDEX = &h9301 2330 const GL_BUFFER_BINDING = &h9302 2331 const GL_BUFFER_DATA_SIZE = &h9303 2332 const GL_NUM_ACTIVE_VARIABLES = &h9304 2333 const GL_ACTIVE_VARIABLES = &h9305 2334 const GL_REFERENCED_BY_VERTEX_SHADER = &h9306 2335 const GL_REFERENCED_BY_TESS_CONTROL_SHADER = &h9307 2336 const GL_REFERENCED_BY_TESS_EVALUATION_SHADER = &h9308 2337 const GL_REFERENCED_BY_GEOMETRY_SHADER = &h9309 2338 const GL_REFERENCED_BY_FRAGMENT_SHADER = &h930A 2339 const GL_REFERENCED_BY_COMPUTE_SHADER = &h930B 2340 const GL_TOP_LEVEL_ARRAY_SIZE = &h930C 2341 const GL_TOP_LEVEL_ARRAY_STRIDE = &h930D 2342 const GL_LOCATION = &h930E 2343 const GL_LOCATION_INDEX = &h930F 2344 const GL_IS_PER_PATCH = &h92E7 2345 const GL_SHADER_STORAGE_BUFFER = &h90D2 2346 const GL_SHADER_STORAGE_BUFFER_BINDING = &h90D3 2347 const GL_SHADER_STORAGE_BUFFER_START = &h90D4 2348 const GL_SHADER_STORAGE_BUFFER_SIZE = &h90D5 2349 const GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = &h90D6 2350 const GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = &h90D7 2351 const GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = &h90D8 2352 const GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = &h90D9 2353 const GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = &h90DA 2354 const GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = &h90DB 2355 const GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = &h90DC 2356 const GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = &h90DD 2357 const GL_MAX_SHADER_STORAGE_BLOCK_SIZE = &h90DE 2358 const GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = &h90DF 2359 const GL_SHADER_STORAGE_BARRIER_BIT = &h00002000 2360 const GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = &h8F39 2361 const GL_DEPTH_STENCIL_TEXTURE_MODE = &h90EA 2362 const GL_TEXTURE_BUFFER_OFFSET = &h919D 2363 const GL_TEXTURE_BUFFER_SIZE = &h919E 2364 const GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = &h919F 2365 const GL_TEXTURE_VIEW_MIN_LEVEL = &h82DB 2366 const GL_TEXTURE_VIEW_NUM_LEVELS = &h82DC 2367 const GL_TEXTURE_VIEW_MIN_LAYER = &h82DD 2368 const GL_TEXTURE_VIEW_NUM_LAYERS = &h82DE 2369 const GL_TEXTURE_IMMUTABLE_LEVELS = &h82DF 2370 const GL_VERTEX_ATTRIB_BINDING = &h82D4 2371 const GL_VERTEX_ATTRIB_RELATIVE_OFFSET = &h82D5 2372 const GL_VERTEX_BINDING_DIVISOR = &h82D6 2373 const GL_VERTEX_BINDING_OFFSET = &h82D7 2374 const GL_VERTEX_BINDING_STRIDE = &h82D8 2375 const GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = &h82D9 2376 const GL_MAX_VERTEX_ATTRIB_BINDINGS = &h82DA 2377 const GL_VERTEX_BINDING_BUFFER = &h8F4F 2378 const GL_DISPLAY_LIST = &h82E7 2379 2380 type PFNGLCLEARBUFFERDATAPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2381 type PFNGLCLEARBUFFERSUBDATAPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2382 type PFNGLDISPATCHCOMPUTEPROC as sub(byval num_groups_x as GLuint, byval num_groups_y as GLuint, byval num_groups_z as GLuint) 2383 type PFNGLDISPATCHCOMPUTEINDIRECTPROC as sub(byval indirect as GLintptr) 2384 type PFNGLCOPYIMAGESUBDATAPROC as sub(byval srcName as GLuint, byval srcTarget as GLenum, byval srcLevel as GLint, byval srcX as GLint, byval srcY as GLint, byval srcZ as GLint, byval dstName as GLuint, byval dstTarget as GLenum, byval dstLevel as GLint, byval dstX as GLint, byval dstY as GLint, byval dstZ as GLint, byval srcWidth as GLsizei, byval srcHeight as GLsizei, byval srcDepth as GLsizei) 2385 type PFNGLFRAMEBUFFERPARAMETERIPROC as sub(byval target as GLenum, byval pname as GLenum, byval param as GLint) 2386 type PFNGLGETFRAMEBUFFERPARAMETERIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 2387 type PFNGLGETINTERNALFORMATI64VPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval pname as GLenum, byval bufSize as GLsizei, byval params as GLint64 ptr) 2388 type PFNGLINVALIDATETEXSUBIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei) 2389 type PFNGLINVALIDATETEXIMAGEPROC as sub(byval texture as GLuint, byval level as GLint) 2390 type PFNGLINVALIDATEBUFFERSUBDATAPROC as sub(byval buffer as GLuint, byval offset as GLintptr, byval length as GLsizeiptr) 2391 type PFNGLINVALIDATEBUFFERDATAPROC as sub(byval buffer as GLuint) 2392 type PFNGLINVALIDATEFRAMEBUFFERPROC as sub(byval target as GLenum, byval numAttachments as GLsizei, byval attachments as const GLenum ptr) 2393 type PFNGLINVALIDATESUBFRAMEBUFFERPROC as sub(byval target as GLenum, byval numAttachments as GLsizei, byval attachments as const GLenum ptr, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2394 type PFNGLMULTIDRAWARRAYSINDIRECTPROC as sub(byval mode as GLenum, byval indirect as const any ptr, byval drawcount as GLsizei, byval stride as GLsizei) 2395 type PFNGLMULTIDRAWELEMENTSINDIRECTPROC as sub(byval mode as GLenum, byval type as GLenum, byval indirect as const any ptr, byval drawcount as GLsizei, byval stride as GLsizei) 2396 type PFNGLGETPROGRAMINTERFACEIVPROC as sub(byval program as GLuint, byval programInterface as GLenum, byval pname as GLenum, byval params as GLint ptr) 2397 type PFNGLGETPROGRAMRESOURCEINDEXPROC as function(byval program as GLuint, byval programInterface as GLenum, byval name as const GLchar ptr) as GLuint 2398 type PFNGLGETPROGRAMRESOURCENAMEPROC as sub(byval program as GLuint, byval programInterface as GLenum, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval name as GLchar ptr) 2399 type PFNGLGETPROGRAMRESOURCEIVPROC as sub(byval program as GLuint, byval programInterface as GLenum, byval index as GLuint, byval propCount as GLsizei, byval props as const GLenum ptr, byval bufSize as GLsizei, byval length as GLsizei ptr, byval params as GLint ptr) 2400 type PFNGLGETPROGRAMRESOURCELOCATIONPROC as function(byval program as GLuint, byval programInterface as GLenum, byval name as const GLchar ptr) as GLint 2401 type PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC as function(byval program as GLuint, byval programInterface as GLenum, byval name as const GLchar ptr) as GLint 2402 type PFNGLSHADERSTORAGEBLOCKBINDINGPROC as sub(byval program as GLuint, byval storageBlockIndex as GLuint, byval storageBlockBinding as GLuint) 2403 type PFNGLTEXBUFFERRANGEPROC as sub(byval target as GLenum, byval internalformat as GLenum, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizeiptr) 2404 type PFNGLTEXSTORAGE2DMULTISAMPLEPROC as sub(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval fixedsamplelocations as GLboolean) 2405 type PFNGLTEXSTORAGE3DMULTISAMPLEPROC as sub(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval fixedsamplelocations as GLboolean) 2406 type PFNGLTEXTUREVIEWPROC as sub(byval texture as GLuint, byval target as GLenum, byval origtexture as GLuint, byval internalformat as GLenum, byval minlevel as GLuint, byval numlevels as GLuint, byval minlayer as GLuint, byval numlayers as GLuint) 2407 type PFNGLBINDVERTEXBUFFERPROC as sub(byval bindingindex as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval stride as GLsizei) 2408 type PFNGLVERTEXATTRIBFORMATPROC as sub(byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval relativeoffset as GLuint) 2409 type PFNGLVERTEXATTRIBIFORMATPROC as sub(byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2410 type PFNGLVERTEXATTRIBLFORMATPROC as sub(byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2411 type PFNGLVERTEXATTRIBBINDINGPROC as sub(byval attribindex as GLuint, byval bindingindex as GLuint) 2412 type PFNGLVERTEXBINDINGDIVISORPROC as sub(byval bindingindex as GLuint, byval divisor as GLuint) 2413 type PFNGLDEBUGMESSAGECONTROLPROC as sub(byval source as GLenum, byval type as GLenum, byval severity as GLenum, byval count as GLsizei, byval ids as const GLuint ptr, byval enabled as GLboolean) 2414 type PFNGLDEBUGMESSAGEINSERTPROC as sub(byval source as GLenum, byval type as GLenum, byval id as GLuint, byval severity as GLenum, byval length as GLsizei, byval buf as const GLchar ptr) 2415 type PFNGLDEBUGMESSAGECALLBACKPROC as sub(byval callback as GLDEBUGPROC, byval userParam as const any ptr) 2416 type PFNGLGETDEBUGMESSAGELOGPROC as function(byval count as GLuint, byval bufSize as GLsizei, byval sources as GLenum ptr, byval types as GLenum ptr, byval ids as GLuint ptr, byval severities as GLenum ptr, byval lengths as GLsizei ptr, byval messageLog as GLchar ptr) as GLuint 2417 type PFNGLPUSHDEBUGGROUPPROC as sub(byval source as GLenum, byval id as GLuint, byval length as GLsizei, byval message as const GLchar ptr) 2418 type PFNGLPOPDEBUGGROUPPROC as sub() 2419 type PFNGLOBJECTLABELPROC as sub(byval identifier as GLenum, byval name as GLuint, byval length as GLsizei, byval label as const GLchar ptr) 2420 type PFNGLGETOBJECTLABELPROC as sub(byval identifier as GLenum, byval name as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval label as GLchar ptr) 2421 type PFNGLOBJECTPTRLABELPROC as sub(byval ptr as const any ptr, byval length as GLsizei, byval label as const GLchar ptr) 2422 type PFNGLGETOBJECTPTRLABELPROC as sub(byval ptr as const any ptr, byval bufSize as GLsizei, byval length as GLsizei ptr, byval label as GLchar ptr) 2423 2424 #ifdef GL_GLEXT_PROTOTYPES 2425 declare sub glClearBufferData(byval target as GLenum, byval internalformat as GLenum, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2426 declare sub glClearBufferSubData(byval target as GLenum, byval internalformat as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2427 declare sub glDispatchCompute(byval num_groups_x as GLuint, byval num_groups_y as GLuint, byval num_groups_z as GLuint) 2428 declare sub glDispatchComputeIndirect(byval indirect as GLintptr) 2429 declare sub glCopyImageSubData(byval srcName as GLuint, byval srcTarget as GLenum, byval srcLevel as GLint, byval srcX as GLint, byval srcY as GLint, byval srcZ as GLint, byval dstName as GLuint, byval dstTarget as GLenum, byval dstLevel as GLint, byval dstX as GLint, byval dstY as GLint, byval dstZ as GLint, byval srcWidth as GLsizei, byval srcHeight as GLsizei, byval srcDepth as GLsizei) 2430 declare sub glFramebufferParameteri(byval target as GLenum, byval pname as GLenum, byval param as GLint) 2431 declare sub glGetFramebufferParameteriv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr) 2432 declare sub glGetInternalformati64v(byval target as GLenum, byval internalformat as GLenum, byval pname as GLenum, byval bufSize as GLsizei, byval params as GLint64 ptr) 2433 declare sub glInvalidateTexSubImage(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei) 2434 declare sub glInvalidateTexImage(byval texture as GLuint, byval level as GLint) 2435 declare sub glInvalidateBufferSubData(byval buffer as GLuint, byval offset as GLintptr, byval length as GLsizeiptr) 2436 declare sub glInvalidateBufferData(byval buffer as GLuint) 2437 declare sub glInvalidateFramebuffer(byval target as GLenum, byval numAttachments as GLsizei, byval attachments as const GLenum ptr) 2438 declare sub glInvalidateSubFramebuffer(byval target as GLenum, byval numAttachments as GLsizei, byval attachments as const GLenum ptr, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2439 declare sub glMultiDrawArraysIndirect(byval mode as GLenum, byval indirect as const any ptr, byval drawcount as GLsizei, byval stride as GLsizei) 2440 declare sub glMultiDrawElementsIndirect(byval mode as GLenum, byval type as GLenum, byval indirect as const any ptr, byval drawcount as GLsizei, byval stride as GLsizei) 2441 declare sub glGetProgramInterfaceiv(byval program as GLuint, byval programInterface as GLenum, byval pname as GLenum, byval params as GLint ptr) 2442 declare function glGetProgramResourceIndex(byval program as GLuint, byval programInterface as GLenum, byval name as const GLchar ptr) as GLuint 2443 declare sub glGetProgramResourceName(byval program as GLuint, byval programInterface as GLenum, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval name as GLchar ptr) 2444 declare sub glGetProgramResourceiv(byval program as GLuint, byval programInterface as GLenum, byval index as GLuint, byval propCount as GLsizei, byval props as const GLenum ptr, byval bufSize as GLsizei, byval length as GLsizei ptr, byval params as GLint ptr) 2445 declare function glGetProgramResourceLocation(byval program as GLuint, byval programInterface as GLenum, byval name as const GLchar ptr) as GLint 2446 declare function glGetProgramResourceLocationIndex(byval program as GLuint, byval programInterface as GLenum, byval name as const GLchar ptr) as GLint 2447 declare sub glShaderStorageBlockBinding(byval program as GLuint, byval storageBlockIndex as GLuint, byval storageBlockBinding as GLuint) 2448 declare sub glTexBufferRange(byval target as GLenum, byval internalformat as GLenum, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizeiptr) 2449 declare sub glTexStorage2DMultisample(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval fixedsamplelocations as GLboolean) 2450 declare sub glTexStorage3DMultisample(byval target as GLenum, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval fixedsamplelocations as GLboolean) 2451 declare sub glTextureView(byval texture as GLuint, byval target as GLenum, byval origtexture as GLuint, byval internalformat as GLenum, byval minlevel as GLuint, byval numlevels as GLuint, byval minlayer as GLuint, byval numlayers as GLuint) 2452 declare sub glBindVertexBuffer(byval bindingindex as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval stride as GLsizei) 2453 declare sub glVertexAttribFormat(byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval relativeoffset as GLuint) 2454 declare sub glVertexAttribIFormat(byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2455 declare sub glVertexAttribLFormat(byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2456 declare sub glVertexAttribBinding(byval attribindex as GLuint, byval bindingindex as GLuint) 2457 declare sub glVertexBindingDivisor(byval bindingindex as GLuint, byval divisor as GLuint) 2458 declare sub glDebugMessageControl(byval source as GLenum, byval type as GLenum, byval severity as GLenum, byval count as GLsizei, byval ids as const GLuint ptr, byval enabled as GLboolean) 2459 declare sub glDebugMessageInsert(byval source as GLenum, byval type as GLenum, byval id as GLuint, byval severity as GLenum, byval length as GLsizei, byval buf as const GLchar ptr) 2460 declare sub glDebugMessageCallback(byval callback as GLDEBUGPROC, byval userParam as const any ptr) 2461 declare function glGetDebugMessageLog(byval count as GLuint, byval bufSize as GLsizei, byval sources as GLenum ptr, byval types as GLenum ptr, byval ids as GLuint ptr, byval severities as GLenum ptr, byval lengths as GLsizei ptr, byval messageLog as GLchar ptr) as GLuint 2462 declare sub glPushDebugGroup(byval source as GLenum, byval id as GLuint, byval length as GLsizei, byval message as const GLchar ptr) 2463 declare sub glPopDebugGroup() 2464 declare sub glObjectLabel(byval identifier as GLenum, byval name as GLuint, byval length as GLsizei, byval label as const GLchar ptr) 2465 declare sub glGetObjectLabel(byval identifier as GLenum, byval name as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval label as GLchar ptr) 2466 declare sub glObjectPtrLabel(byval ptr as const any ptr, byval length as GLsizei, byval label as const GLchar ptr) 2467 declare sub glGetObjectPtrLabel(byval ptr as const any ptr, byval bufSize as GLsizei, byval length as GLsizei ptr, byval label as GLchar ptr) 2468 #endif 2469 2470 const GL_VERSION_4_4 = 1 2471 const GL_MAX_VERTEX_ATTRIB_STRIDE = &h82E5 2472 const GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = &h8221 2473 const GL_TEXTURE_BUFFER_BINDING = &h8C2A 2474 const GL_MAP_PERSISTENT_BIT = &h0040 2475 const GL_MAP_COHERENT_BIT = &h0080 2476 const GL_DYNAMIC_STORAGE_BIT = &h0100 2477 const GL_CLIENT_STORAGE_BIT = &h0200 2478 const GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = &h00004000 2479 const GL_BUFFER_IMMUTABLE_STORAGE = &h821F 2480 const GL_BUFFER_STORAGE_FLAGS = &h8220 2481 const GL_CLEAR_TEXTURE = &h9365 2482 const GL_LOCATION_COMPONENT = &h934A 2483 const GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = &h934B 2484 const GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = &h934C 2485 const GL_QUERY_BUFFER = &h9192 2486 const GL_QUERY_BUFFER_BARRIER_BIT = &h00008000 2487 const GL_QUERY_BUFFER_BINDING = &h9193 2488 const GL_QUERY_RESULT_NO_WAIT = &h9194 2489 const GL_MIRROR_CLAMP_TO_EDGE = &h8743 2490 2491 type PFNGLBUFFERSTORAGEPROC as sub(byval target as GLenum, byval size as GLsizeiptr, byval data as const any ptr, byval flags as GLbitfield) 2492 type PFNGLCLEARTEXIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2493 type PFNGLCLEARTEXSUBIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2494 type PFNGLBINDBUFFERSBASEPROC as sub(byval target as GLenum, byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr) 2495 type PFNGLBINDBUFFERSRANGEPROC as sub(byval target as GLenum, byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr, byval offsets as const GLintptr ptr, byval sizes as const GLsizeiptr ptr) 2496 type PFNGLBINDTEXTURESPROC as sub(byval first as GLuint, byval count as GLsizei, byval textures as const GLuint ptr) 2497 type PFNGLBINDSAMPLERSPROC as sub(byval first as GLuint, byval count as GLsizei, byval samplers as const GLuint ptr) 2498 type PFNGLBINDIMAGETEXTURESPROC as sub(byval first as GLuint, byval count as GLsizei, byval textures as const GLuint ptr) 2499 type PFNGLBINDVERTEXBUFFERSPROC as sub(byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr, byval offsets as const GLintptr ptr, byval strides as const GLsizei ptr) 2500 2501 #ifdef GL_GLEXT_PROTOTYPES 2502 declare sub glBufferStorage(byval target as GLenum, byval size as GLsizeiptr, byval data as const any ptr, byval flags as GLbitfield) 2503 declare sub glClearTexImage(byval texture as GLuint, byval level as GLint, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2504 declare sub glClearTexSubImage(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2505 declare sub glBindBuffersBase(byval target as GLenum, byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr) 2506 declare sub glBindBuffersRange(byval target as GLenum, byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr, byval offsets as const GLintptr ptr, byval sizes as const GLsizeiptr ptr) 2507 declare sub glBindTextures(byval first as GLuint, byval count as GLsizei, byval textures as const GLuint ptr) 2508 declare sub glBindSamplers(byval first as GLuint, byval count as GLsizei, byval samplers as const GLuint ptr) 2509 declare sub glBindImageTextures(byval first as GLuint, byval count as GLsizei, byval textures as const GLuint ptr) 2510 declare sub glBindVertexBuffers(byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr, byval offsets as const GLintptr ptr, byval strides as const GLsizei ptr) 2511 #endif 2512 2513 const GL_VERSION_4_5 = 1 2514 const GL_CONTEXT_LOST = &h0507 2515 const GL_NEGATIVE_ONE_TO_ONE = &h935E 2516 const GL_ZERO_TO_ONE = &h935F 2517 const GL_CLIP_ORIGIN = &h935C 2518 const GL_CLIP_DEPTH_MODE = &h935D 2519 const GL_QUERY_WAIT_INVERTED = &h8E17 2520 const GL_QUERY_NO_WAIT_INVERTED = &h8E18 2521 const GL_QUERY_BY_REGION_WAIT_INVERTED = &h8E19 2522 const GL_QUERY_BY_REGION_NO_WAIT_INVERTED = &h8E1A 2523 const GL_MAX_CULL_DISTANCES = &h82F9 2524 const GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = &h82FA 2525 const GL_TEXTURE_TARGET = &h1006 2526 const GL_QUERY_TARGET = &h82EA 2527 const GL_TEXTURE_BINDING = &h82EB 2528 const GL_GUILTY_CONTEXT_RESET = &h8253 2529 const GL_INNOCENT_CONTEXT_RESET = &h8254 2530 const GL_UNKNOWN_CONTEXT_RESET = &h8255 2531 const GL_RESET_NOTIFICATION_STRATEGY = &h8256 2532 const GL_LOSE_CONTEXT_ON_RESET = &h8252 2533 const GL_NO_RESET_NOTIFICATION = &h8261 2534 const GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = &h00000004 2535 const GL_CONTEXT_RELEASE_BEHAVIOR = &h82FB 2536 const GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = &h82FC 2537 2538 type PFNGLCLIPCONTROLPROC as sub(byval origin as GLenum, byval depth as GLenum) 2539 type PFNGLCREATETRANSFORMFEEDBACKSPROC as sub(byval n as GLsizei, byval ids as GLuint ptr) 2540 type PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC as sub(byval xfb as GLuint, byval index as GLuint, byval buffer as GLuint) 2541 type PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC as sub(byval xfb as GLuint, byval index as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei) 2542 type PFNGLGETTRANSFORMFEEDBACKIVPROC as sub(byval xfb as GLuint, byval pname as GLenum, byval param as GLint ptr) 2543 type PFNGLGETTRANSFORMFEEDBACKI_VPROC as sub(byval xfb as GLuint, byval pname as GLenum, byval index as GLuint, byval param as GLint ptr) 2544 type PFNGLGETTRANSFORMFEEDBACKI64_VPROC as sub(byval xfb as GLuint, byval pname as GLenum, byval index as GLuint, byval param as GLint64 ptr) 2545 type PFNGLCREATEBUFFERSPROC as sub(byval n as GLsizei, byval buffers as GLuint ptr) 2546 type PFNGLNAMEDBUFFERSTORAGEPROC as sub(byval buffer as GLuint, byval size as GLsizei, byval data as const any ptr, byval flags as GLbitfield) 2547 type PFNGLNAMEDBUFFERDATAPROC as sub(byval buffer as GLuint, byval size as GLsizei, byval data as const any ptr, byval usage as GLenum) 2548 type PFNGLNAMEDBUFFERSUBDATAPROC as sub(byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei, byval data as const any ptr) 2549 type PFNGLCOPYNAMEDBUFFERSUBDATAPROC as sub(byval readBuffer as GLuint, byval writeBuffer as GLuint, byval readOffset as GLintptr, byval writeOffset as GLintptr, byval size as GLsizei) 2550 type PFNGLCLEARNAMEDBUFFERDATAPROC as sub(byval buffer as GLuint, byval internalformat as GLenum, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2551 type PFNGLCLEARNAMEDBUFFERSUBDATAPROC as sub(byval buffer as GLuint, byval internalformat as GLenum, byval offset as GLintptr, byval size as GLsizei, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2552 type PFNGLMAPNAMEDBUFFERPROC as function(byval buffer as GLuint, byval access as GLenum) as any ptr 2553 type PFNGLMAPNAMEDBUFFERRANGEPROC as function(byval buffer as GLuint, byval offset as GLintptr, byval length as GLsizei, byval access as GLbitfield) as any ptr 2554 type PFNGLUNMAPNAMEDBUFFERPROC as function(byval buffer as GLuint) as GLboolean 2555 type PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC as sub(byval buffer as GLuint, byval offset as GLintptr, byval length as GLsizei) 2556 type PFNGLGETNAMEDBUFFERPARAMETERIVPROC as sub(byval buffer as GLuint, byval pname as GLenum, byval params as GLint ptr) 2557 type PFNGLGETNAMEDBUFFERPARAMETERI64VPROC as sub(byval buffer as GLuint, byval pname as GLenum, byval params as GLint64 ptr) 2558 type PFNGLGETNAMEDBUFFERPOINTERVPROC as sub(byval buffer as GLuint, byval pname as GLenum, byval params as any ptr ptr) 2559 type PFNGLGETNAMEDBUFFERSUBDATAPROC as sub(byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei, byval data as any ptr) 2560 type PFNGLCREATEFRAMEBUFFERSPROC as sub(byval n as GLsizei, byval framebuffers as GLuint ptr) 2561 type PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC as sub(byval framebuffer as GLuint, byval attachment as GLenum, byval renderbuffertarget as GLenum, byval renderbuffer as GLuint) 2562 type PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC as sub(byval framebuffer as GLuint, byval pname as GLenum, byval param as GLint) 2563 type PFNGLNAMEDFRAMEBUFFERTEXTUREPROC as sub(byval framebuffer as GLuint, byval attachment as GLenum, byval texture as GLuint, byval level as GLint) 2564 type PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC as sub(byval framebuffer as GLuint, byval attachment as GLenum, byval texture as GLuint, byval level as GLint, byval layer as GLint) 2565 type PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC as sub(byval framebuffer as GLuint, byval buf as GLenum) 2566 type PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC as sub(byval framebuffer as GLuint, byval n as GLsizei, byval bufs as const GLenum ptr) 2567 type PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC as sub(byval framebuffer as GLuint, byval src as GLenum) 2568 type PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC as sub(byval framebuffer as GLuint, byval numAttachments as GLsizei, byval attachments as const GLenum ptr) 2569 type PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC as sub(byval framebuffer as GLuint, byval numAttachments as GLsizei, byval attachments as const GLenum ptr, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2570 type PFNGLCLEARNAMEDFRAMEBUFFERIVPROC as sub(byval framebuffer as GLuint, byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLint ptr) 2571 type PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC as sub(byval framebuffer as GLuint, byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLuint ptr) 2572 type PFNGLCLEARNAMEDFRAMEBUFFERFVPROC as sub(byval framebuffer as GLuint, byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLfloat ptr) 2573 type PFNGLCLEARNAMEDFRAMEBUFFERFIPROC as sub(byval framebuffer as GLuint, byval buffer as GLenum, byval depth as const GLfloat, byval stencil as GLint) 2574 type PFNGLBLITNAMEDFRAMEBUFFERPROC as sub(byval readFramebuffer as GLuint, byval drawFramebuffer as GLuint, byval srcX0 as GLint, byval srcY0 as GLint, byval srcX1 as GLint, byval srcY1 as GLint, byval dstX0 as GLint, byval dstY0 as GLint, byval dstX1 as GLint, byval dstY1 as GLint, byval mask as GLbitfield, byval filter as GLenum) 2575 type PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC as function(byval framebuffer as GLuint, byval target as GLenum) as GLenum 2576 type PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC as sub(byval framebuffer as GLuint, byval pname as GLenum, byval param as GLint ptr) 2577 type PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC as sub(byval framebuffer as GLuint, byval attachment as GLenum, byval pname as GLenum, byval params as GLint ptr) 2578 type PFNGLCREATERENDERBUFFERSPROC as sub(byval n as GLsizei, byval renderbuffers as GLuint ptr) 2579 type PFNGLNAMEDRENDERBUFFERSTORAGEPROC as sub(byval renderbuffer as GLuint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2580 type PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC as sub(byval renderbuffer as GLuint, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2581 type PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC as sub(byval renderbuffer as GLuint, byval pname as GLenum, byval params as GLint ptr) 2582 type PFNGLCREATETEXTURESPROC as sub(byval target as GLenum, byval n as GLsizei, byval textures as GLuint ptr) 2583 type PFNGLTEXTUREBUFFERPROC as sub(byval texture as GLuint, byval internalformat as GLenum, byval buffer as GLuint) 2584 type PFNGLTEXTUREBUFFERRANGEPROC as sub(byval texture as GLuint, byval internalformat as GLenum, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei) 2585 type PFNGLTEXTURESTORAGE1DPROC as sub(byval texture as GLuint, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei) 2586 type PFNGLTEXTURESTORAGE2DPROC as sub(byval texture as GLuint, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2587 type PFNGLTEXTURESTORAGE3DPROC as sub(byval texture as GLuint, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei) 2588 type PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC as sub(byval texture as GLuint, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval fixedsamplelocations as GLboolean) 2589 type PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC as sub(byval texture as GLuint, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval fixedsamplelocations as GLboolean) 2590 type PFNGLTEXTURESUBIMAGE1DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 2591 type PFNGLTEXTURESUBIMAGE2DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 2592 type PFNGLTEXTURESUBIMAGE3DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 2593 type PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 2594 type PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 2595 type PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 2596 type PFNGLCOPYTEXTURESUBIMAGE1DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei) 2597 type PFNGLCOPYTEXTURESUBIMAGE2DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2598 type PFNGLCOPYTEXTURESUBIMAGE3DPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2599 type PFNGLTEXTUREPARAMETERFPROC as sub(byval texture as GLuint, byval pname as GLenum, byval param as GLfloat) 2600 type PFNGLTEXTUREPARAMETERFVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval param as const GLfloat ptr) 2601 type PFNGLTEXTUREPARAMETERIPROC as sub(byval texture as GLuint, byval pname as GLenum, byval param as GLint) 2602 type PFNGLTEXTUREPARAMETERIIVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval params as const GLint ptr) 2603 type PFNGLTEXTUREPARAMETERIUIVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval params as const GLuint ptr) 2604 type PFNGLTEXTUREPARAMETERIVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval param as const GLint ptr) 2605 type PFNGLGENERATETEXTUREMIPMAPPROC as sub(byval texture as GLuint) 2606 type PFNGLBINDTEXTUREUNITPROC as sub(byval unit as GLuint, byval texture as GLuint) 2607 type PFNGLGETTEXTUREIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval pixels as any ptr) 2608 type PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval bufSize as GLsizei, byval pixels as any ptr) 2609 type PFNGLGETTEXTURELEVELPARAMETERFVPROC as sub(byval texture as GLuint, byval level as GLint, byval pname as GLenum, byval params as GLfloat ptr) 2610 type PFNGLGETTEXTURELEVELPARAMETERIVPROC as sub(byval texture as GLuint, byval level as GLint, byval pname as GLenum, byval params as GLint ptr) 2611 type PFNGLGETTEXTUREPARAMETERFVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval params as GLfloat ptr) 2612 type PFNGLGETTEXTUREPARAMETERIIVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval params as GLint ptr) 2613 type PFNGLGETTEXTUREPARAMETERIUIVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval params as GLuint ptr) 2614 type PFNGLGETTEXTUREPARAMETERIVPROC as sub(byval texture as GLuint, byval pname as GLenum, byval params as GLint ptr) 2615 type PFNGLCREATEVERTEXARRAYSPROC as sub(byval n as GLsizei, byval arrays as GLuint ptr) 2616 type PFNGLDISABLEVERTEXARRAYATTRIBPROC as sub(byval vaobj as GLuint, byval index as GLuint) 2617 type PFNGLENABLEVERTEXARRAYATTRIBPROC as sub(byval vaobj as GLuint, byval index as GLuint) 2618 type PFNGLVERTEXARRAYELEMENTBUFFERPROC as sub(byval vaobj as GLuint, byval buffer as GLuint) 2619 type PFNGLVERTEXARRAYVERTEXBUFFERPROC as sub(byval vaobj as GLuint, byval bindingindex as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval stride as GLsizei) 2620 type PFNGLVERTEXARRAYVERTEXBUFFERSPROC as sub(byval vaobj as GLuint, byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr, byval offsets as const GLintptr ptr, byval strides as const GLsizei ptr) 2621 type PFNGLVERTEXARRAYATTRIBBINDINGPROC as sub(byval vaobj as GLuint, byval attribindex as GLuint, byval bindingindex as GLuint) 2622 type PFNGLVERTEXARRAYATTRIBFORMATPROC as sub(byval vaobj as GLuint, byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval relativeoffset as GLuint) 2623 type PFNGLVERTEXARRAYATTRIBIFORMATPROC as sub(byval vaobj as GLuint, byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2624 type PFNGLVERTEXARRAYATTRIBLFORMATPROC as sub(byval vaobj as GLuint, byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2625 type PFNGLVERTEXARRAYBINDINGDIVISORPROC as sub(byval vaobj as GLuint, byval bindingindex as GLuint, byval divisor as GLuint) 2626 type PFNGLGETVERTEXARRAYIVPROC as sub(byval vaobj as GLuint, byval pname as GLenum, byval param as GLint ptr) 2627 type PFNGLGETVERTEXARRAYINDEXEDIVPROC as sub(byval vaobj as GLuint, byval index as GLuint, byval pname as GLenum, byval param as GLint ptr) 2628 type PFNGLGETVERTEXARRAYINDEXED64IVPROC as sub(byval vaobj as GLuint, byval index as GLuint, byval pname as GLenum, byval param as GLint64 ptr) 2629 type PFNGLCREATESAMPLERSPROC as sub(byval n as GLsizei, byval samplers as GLuint ptr) 2630 type PFNGLCREATEPROGRAMPIPELINESPROC as sub(byval n as GLsizei, byval pipelines as GLuint ptr) 2631 type PFNGLCREATEQUERIESPROC as sub(byval target as GLenum, byval n as GLsizei, byval ids as GLuint ptr) 2632 type PFNGLGETQUERYBUFFEROBJECTI64VPROC as sub(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2633 type PFNGLGETQUERYBUFFEROBJECTIVPROC as sub(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2634 type PFNGLGETQUERYBUFFEROBJECTUI64VPROC as sub(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2635 type PFNGLGETQUERYBUFFEROBJECTUIVPROC as sub(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2636 type PFNGLMEMORYBARRIERBYREGIONPROC as sub(byval barriers as GLbitfield) 2637 type PFNGLGETTEXTURESUBIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval pixels as any ptr) 2638 type PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC as sub(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval bufSize as GLsizei, byval pixels as any ptr) 2639 type PFNGLGETGRAPHICSRESETSTATUSPROC as function() as GLenum 2640 type PFNGLGETNCOMPRESSEDTEXIMAGEPROC as sub(byval target as GLenum, byval lod as GLint, byval bufSize as GLsizei, byval pixels as any ptr) 2641 type PFNGLGETNTEXIMAGEPROC as sub(byval target as GLenum, byval level as GLint, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval pixels as any ptr) 2642 type PFNGLGETNUNIFORMDVPROC as sub(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLdouble ptr) 2643 type PFNGLGETNUNIFORMFVPROC as sub(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLfloat ptr) 2644 type PFNGLGETNUNIFORMIVPROC as sub(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLint ptr) 2645 type PFNGLGETNUNIFORMUIVPROC as sub(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLuint ptr) 2646 type PFNGLREADNPIXELSPROC as sub(byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval data as any ptr) 2647 type PFNGLGETNMAPDVPROC as sub(byval target as GLenum, byval query as GLenum, byval bufSize as GLsizei, byval v as GLdouble ptr) 2648 type PFNGLGETNMAPFVPROC as sub(byval target as GLenum, byval query as GLenum, byval bufSize as GLsizei, byval v as GLfloat ptr) 2649 type PFNGLGETNMAPIVPROC as sub(byval target as GLenum, byval query as GLenum, byval bufSize as GLsizei, byval v as GLint ptr) 2650 type PFNGLGETNPIXELMAPFVPROC as sub(byval map as GLenum, byval bufSize as GLsizei, byval values as GLfloat ptr) 2651 type PFNGLGETNPIXELMAPUIVPROC as sub(byval map as GLenum, byval bufSize as GLsizei, byval values as GLuint ptr) 2652 type PFNGLGETNPIXELMAPUSVPROC as sub(byval map as GLenum, byval bufSize as GLsizei, byval values as GLushort ptr) 2653 type PFNGLGETNPOLYGONSTIPPLEPROC as sub(byval bufSize as GLsizei, byval pattern as GLubyte ptr) 2654 type PFNGLGETNCOLORTABLEPROC as sub(byval target as GLenum, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval table as any ptr) 2655 type PFNGLGETNCONVOLUTIONFILTERPROC as sub(byval target as GLenum, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval image as any ptr) 2656 type PFNGLGETNSEPARABLEFILTERPROC as sub(byval target as GLenum, byval format as GLenum, byval type as GLenum, byval rowBufSize as GLsizei, byval row as any ptr, byval columnBufSize as GLsizei, byval column as any ptr, byval span as any ptr) 2657 type PFNGLGETNHISTOGRAMPROC as sub(byval target as GLenum, byval reset as GLboolean, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval values as any ptr) 2658 type PFNGLGETNMINMAXPROC as sub(byval target as GLenum, byval reset as GLboolean, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval values as any ptr) 2659 type PFNGLTEXTUREBARRIERPROC as sub() 2660 2661 #ifdef GL_GLEXT_PROTOTYPES 2662 declare sub glClipControl(byval origin as GLenum, byval depth as GLenum) 2663 declare sub glCreateTransformFeedbacks(byval n as GLsizei, byval ids as GLuint ptr) 2664 declare sub glTransformFeedbackBufferBase(byval xfb as GLuint, byval index as GLuint, byval buffer as GLuint) 2665 declare sub glTransformFeedbackBufferRange(byval xfb as GLuint, byval index as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei) 2666 declare sub glGetTransformFeedbackiv(byval xfb as GLuint, byval pname as GLenum, byval param as GLint ptr) 2667 declare sub glGetTransformFeedbacki_v(byval xfb as GLuint, byval pname as GLenum, byval index as GLuint, byval param as GLint ptr) 2668 declare sub glGetTransformFeedbacki64_v(byval xfb as GLuint, byval pname as GLenum, byval index as GLuint, byval param as GLint64 ptr) 2669 declare sub glCreateBuffers(byval n as GLsizei, byval buffers as GLuint ptr) 2670 declare sub glNamedBufferStorage(byval buffer as GLuint, byval size as GLsizei, byval data as const any ptr, byval flags as GLbitfield) 2671 declare sub glNamedBufferData(byval buffer as GLuint, byval size as GLsizei, byval data as const any ptr, byval usage as GLenum) 2672 declare sub glNamedBufferSubData(byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei, byval data as const any ptr) 2673 declare sub glCopyNamedBufferSubData(byval readBuffer as GLuint, byval writeBuffer as GLuint, byval readOffset as GLintptr, byval writeOffset as GLintptr, byval size as GLsizei) 2674 declare sub glClearNamedBufferData(byval buffer as GLuint, byval internalformat as GLenum, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2675 declare sub glClearNamedBufferSubData(byval buffer as GLuint, byval internalformat as GLenum, byval offset as GLintptr, byval size as GLsizei, byval format as GLenum, byval type as GLenum, byval data as const any ptr) 2676 declare function glMapNamedBuffer(byval buffer as GLuint, byval access as GLenum) as any ptr 2677 declare function glMapNamedBufferRange(byval buffer as GLuint, byval offset as GLintptr, byval length as GLsizei, byval access as GLbitfield) as any ptr 2678 declare function glUnmapNamedBuffer(byval buffer as GLuint) as GLboolean 2679 declare sub glFlushMappedNamedBufferRange(byval buffer as GLuint, byval offset as GLintptr, byval length as GLsizei) 2680 declare sub glGetNamedBufferParameteriv(byval buffer as GLuint, byval pname as GLenum, byval params as GLint ptr) 2681 declare sub glGetNamedBufferParameteri64v(byval buffer as GLuint, byval pname as GLenum, byval params as GLint64 ptr) 2682 declare sub glGetNamedBufferPointerv(byval buffer as GLuint, byval pname as GLenum, byval params as any ptr ptr) 2683 declare sub glGetNamedBufferSubData(byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei, byval data as any ptr) 2684 declare sub glCreateFramebuffers(byval n as GLsizei, byval framebuffers as GLuint ptr) 2685 declare sub glNamedFramebufferRenderbuffer(byval framebuffer as GLuint, byval attachment as GLenum, byval renderbuffertarget as GLenum, byval renderbuffer as GLuint) 2686 declare sub glNamedFramebufferParameteri(byval framebuffer as GLuint, byval pname as GLenum, byval param as GLint) 2687 declare sub glNamedFramebufferTexture(byval framebuffer as GLuint, byval attachment as GLenum, byval texture as GLuint, byval level as GLint) 2688 declare sub glNamedFramebufferTextureLayer(byval framebuffer as GLuint, byval attachment as GLenum, byval texture as GLuint, byval level as GLint, byval layer as GLint) 2689 declare sub glNamedFramebufferDrawBuffer(byval framebuffer as GLuint, byval buf as GLenum) 2690 declare sub glNamedFramebufferDrawBuffers(byval framebuffer as GLuint, byval n as GLsizei, byval bufs as const GLenum ptr) 2691 declare sub glNamedFramebufferReadBuffer(byval framebuffer as GLuint, byval src as GLenum) 2692 declare sub glInvalidateNamedFramebufferData(byval framebuffer as GLuint, byval numAttachments as GLsizei, byval attachments as const GLenum ptr) 2693 declare sub glInvalidateNamedFramebufferSubData(byval framebuffer as GLuint, byval numAttachments as GLsizei, byval attachments as const GLenum ptr, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2694 declare sub glClearNamedFramebufferiv(byval framebuffer as GLuint, byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLint ptr) 2695 declare sub glClearNamedFramebufferuiv(byval framebuffer as GLuint, byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLuint ptr) 2696 declare sub glClearNamedFramebufferfv(byval framebuffer as GLuint, byval buffer as GLenum, byval drawbuffer as GLint, byval value as const GLfloat ptr) 2697 declare sub glClearNamedFramebufferfi(byval framebuffer as GLuint, byval buffer as GLenum, byval depth as const GLfloat, byval stencil as GLint) 2698 declare sub glBlitNamedFramebuffer(byval readFramebuffer as GLuint, byval drawFramebuffer as GLuint, byval srcX0 as GLint, byval srcY0 as GLint, byval srcX1 as GLint, byval srcY1 as GLint, byval dstX0 as GLint, byval dstY0 as GLint, byval dstX1 as GLint, byval dstY1 as GLint, byval mask as GLbitfield, byval filter as GLenum) 2699 declare function glCheckNamedFramebufferStatus(byval framebuffer as GLuint, byval target as GLenum) as GLenum 2700 declare sub glGetNamedFramebufferParameteriv(byval framebuffer as GLuint, byval pname as GLenum, byval param as GLint ptr) 2701 declare sub glGetNamedFramebufferAttachmentParameteriv(byval framebuffer as GLuint, byval attachment as GLenum, byval pname as GLenum, byval params as GLint ptr) 2702 declare sub glCreateRenderbuffers(byval n as GLsizei, byval renderbuffers as GLuint ptr) 2703 declare sub glNamedRenderbufferStorage(byval renderbuffer as GLuint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2704 declare sub glNamedRenderbufferStorageMultisample(byval renderbuffer as GLuint, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2705 declare sub glGetNamedRenderbufferParameteriv(byval renderbuffer as GLuint, byval pname as GLenum, byval params as GLint ptr) 2706 declare sub glCreateTextures(byval target as GLenum, byval n as GLsizei, byval textures as GLuint ptr) 2707 declare sub glTextureBuffer(byval texture as GLuint, byval internalformat as GLenum, byval buffer as GLuint) 2708 declare sub glTextureBufferRange(byval texture as GLuint, byval internalformat as GLenum, byval buffer as GLuint, byval offset as GLintptr, byval size as GLsizei) 2709 declare sub glTextureStorage1D(byval texture as GLuint, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei) 2710 declare sub glTextureStorage2D(byval texture as GLuint, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei) 2711 declare sub glTextureStorage3D(byval texture as GLuint, byval levels as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei) 2712 declare sub glTextureStorage2DMultisample(byval texture as GLuint, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval fixedsamplelocations as GLboolean) 2713 declare sub glTextureStorage3DMultisample(byval texture as GLuint, byval samples as GLsizei, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval fixedsamplelocations as GLboolean) 2714 declare sub glTextureSubImage1D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 2715 declare sub glTextureSubImage2D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 2716 declare sub glTextureSubImage3D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr) 2717 declare sub glCompressedTextureSubImage1D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 2718 declare sub glCompressedTextureSubImage2D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 2719 declare sub glCompressedTextureSubImage3D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr) 2720 declare sub glCopyTextureSubImage1D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei) 2721 declare sub glCopyTextureSubImage2D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2722 declare sub glCopyTextureSubImage3D(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei) 2723 declare sub glTextureParameterf(byval texture as GLuint, byval pname as GLenum, byval param as GLfloat) 2724 declare sub glTextureParameterfv(byval texture as GLuint, byval pname as GLenum, byval param as const GLfloat ptr) 2725 declare sub glTextureParameteri(byval texture as GLuint, byval pname as GLenum, byval param as GLint) 2726 declare sub glTextureParameterIiv(byval texture as GLuint, byval pname as GLenum, byval params as const GLint ptr) 2727 declare sub glTextureParameterIuiv(byval texture as GLuint, byval pname as GLenum, byval params as const GLuint ptr) 2728 declare sub glTextureParameteriv(byval texture as GLuint, byval pname as GLenum, byval param as const GLint ptr) 2729 declare sub glGenerateTextureMipmap(byval texture as GLuint) 2730 declare sub glBindTextureUnit(byval unit as GLuint, byval texture as GLuint) 2731 declare sub glGetTextureImage(byval texture as GLuint, byval level as GLint, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval pixels as any ptr) 2732 declare sub glGetCompressedTextureImage(byval texture as GLuint, byval level as GLint, byval bufSize as GLsizei, byval pixels as any ptr) 2733 declare sub glGetTextureLevelParameterfv(byval texture as GLuint, byval level as GLint, byval pname as GLenum, byval params as GLfloat ptr) 2734 declare sub glGetTextureLevelParameteriv(byval texture as GLuint, byval level as GLint, byval pname as GLenum, byval params as GLint ptr) 2735 declare sub glGetTextureParameterfv(byval texture as GLuint, byval pname as GLenum, byval params as GLfloat ptr) 2736 declare sub glGetTextureParameterIiv(byval texture as GLuint, byval pname as GLenum, byval params as GLint ptr) 2737 declare sub glGetTextureParameterIuiv(byval texture as GLuint, byval pname as GLenum, byval params as GLuint ptr) 2738 declare sub glGetTextureParameteriv(byval texture as GLuint, byval pname as GLenum, byval params as GLint ptr) 2739 declare sub glCreateVertexArrays(byval n as GLsizei, byval arrays as GLuint ptr) 2740 declare sub glDisableVertexArrayAttrib(byval vaobj as GLuint, byval index as GLuint) 2741 declare sub glEnableVertexArrayAttrib(byval vaobj as GLuint, byval index as GLuint) 2742 declare sub glVertexArrayElementBuffer(byval vaobj as GLuint, byval buffer as GLuint) 2743 declare sub glVertexArrayVertexBuffer(byval vaobj as GLuint, byval bindingindex as GLuint, byval buffer as GLuint, byval offset as GLintptr, byval stride as GLsizei) 2744 declare sub glVertexArrayVertexBuffers(byval vaobj as GLuint, byval first as GLuint, byval count as GLsizei, byval buffers as const GLuint ptr, byval offsets as const GLintptr ptr, byval strides as const GLsizei ptr) 2745 declare sub glVertexArrayAttribBinding(byval vaobj as GLuint, byval attribindex as GLuint, byval bindingindex as GLuint) 2746 declare sub glVertexArrayAttribFormat(byval vaobj as GLuint, byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval relativeoffset as GLuint) 2747 declare sub glVertexArrayAttribIFormat(byval vaobj as GLuint, byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2748 declare sub glVertexArrayAttribLFormat(byval vaobj as GLuint, byval attribindex as GLuint, byval size as GLint, byval type as GLenum, byval relativeoffset as GLuint) 2749 declare sub glVertexArrayBindingDivisor(byval vaobj as GLuint, byval bindingindex as GLuint, byval divisor as GLuint) 2750 declare sub glGetVertexArrayiv(byval vaobj as GLuint, byval pname as GLenum, byval param as GLint ptr) 2751 declare sub glGetVertexArrayIndexediv(byval vaobj as GLuint, byval index as GLuint, byval pname as GLenum, byval param as GLint ptr) 2752 declare sub glGetVertexArrayIndexed64iv(byval vaobj as GLuint, byval index as GLuint, byval pname as GLenum, byval param as GLint64 ptr) 2753 declare sub glCreateSamplers(byval n as GLsizei, byval samplers as GLuint ptr) 2754 declare sub glCreateProgramPipelines(byval n as GLsizei, byval pipelines as GLuint ptr) 2755 declare sub glCreateQueries(byval target as GLenum, byval n as GLsizei, byval ids as GLuint ptr) 2756 declare sub glGetQueryBufferObjecti64v(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2757 declare sub glGetQueryBufferObjectiv(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2758 declare sub glGetQueryBufferObjectui64v(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2759 declare sub glGetQueryBufferObjectuiv(byval id as GLuint, byval buffer as GLuint, byval pname as GLenum, byval offset as GLintptr) 2760 declare sub glMemoryBarrierByRegion(byval barriers as GLbitfield) 2761 declare sub glGetTextureSubImage(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval pixels as any ptr) 2762 declare sub glGetCompressedTextureSubImage(byval texture as GLuint, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval bufSize as GLsizei, byval pixels as any ptr) 2763 declare function glGetGraphicsResetStatus() as GLenum 2764 declare sub glGetnCompressedTexImage(byval target as GLenum, byval lod as GLint, byval bufSize as GLsizei, byval pixels as any ptr) 2765 declare sub glGetnTexImage(byval target as GLenum, byval level as GLint, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval pixels as any ptr) 2766 declare sub glGetnUniformdv(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLdouble ptr) 2767 declare sub glGetnUniformfv(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLfloat ptr) 2768 declare sub glGetnUniformiv(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLint ptr) 2769 declare sub glGetnUniformuiv(byval program as GLuint, byval location as GLint, byval bufSize as GLsizei, byval params as GLuint ptr) 2770 declare sub glReadnPixels(byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval data as any ptr) 2771 declare sub glGetnMapdv(byval target as GLenum, byval query as GLenum, byval bufSize as GLsizei, byval v as GLdouble ptr) 2772 declare sub glGetnMapfv(byval target as GLenum, byval query as GLenum, byval bufSize as GLsizei, byval v as GLfloat ptr) 2773 declare sub glGetnMapiv(byval target as GLenum, byval query as GLenum, byval bufSize as GLsizei, byval v as GLint ptr) 2774 declare sub glGetnPixelMapfv(byval map as GLenum, byval bufSize as GLsizei, byval values as GLfloat ptr) 2775 declare sub glGetnPixelMapuiv(byval map as GLenum, byval bufSize as GLsizei, byval values as GLuint ptr) 2776 declare sub glGetnPixelMapusv(byval map as GLenum, byval bufSize as GLsizei, byval values as GLushort ptr) 2777 declare sub glGetnPolygonStipple(byval bufSize as GLsizei, byval pattern as GLubyte ptr) 2778 declare sub glGetnColorTable(byval target as GLenum, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval table as any ptr) 2779 declare sub glGetnConvolutionFilter(byval target as GLenum, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval image as any ptr) 2780 declare sub glGetnSeparableFilter(byval target as GLenum, byval format as GLenum, byval type as GLenum, byval rowBufSize as GLsizei, byval row as any ptr, byval columnBufSize as GLsizei, byval column as any ptr, byval span as any ptr) 2781 declare sub glGetnHistogram(byval target as GLenum, byval reset as GLboolean, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval values as any ptr) 2782 declare sub glGetnMinmax(byval target as GLenum, byval reset as GLboolean, byval format as GLenum, byval type as GLenum, byval bufSize as GLsizei, byval values as any ptr) 2783 declare sub glTextureBarrier() 2784 #endif 2785 2786 const GL_ARB_ES2_compatibility = 1 2787 const GL_ARB_ES3_1_compatibility = 1 2788 const GL_ARB_ES3_compatibility = 1 2789 const GL_ARB_arrays_of_arrays = 1 2790 const GL_ARB_base_instance = 1 2791 const GL_ARB_bindless_texture = 1 2792 type GLuint64EXT as ulongint 2793 const GL_UNSIGNED_INT64_ARB = &h140F 2794 2795 type PFNGLGETTEXTUREHANDLEARBPROC as function(byval texture as GLuint) as GLuint64 2796 type PFNGLGETTEXTURESAMPLERHANDLEARBPROC as function(byval texture as GLuint, byval sampler as GLuint) as GLuint64 2797 type PFNGLMAKETEXTUREHANDLERESIDENTARBPROC as sub(byval handle as GLuint64) 2798 type PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC as sub(byval handle as GLuint64) 2799 type PFNGLGETIMAGEHANDLEARBPROC as function(byval texture as GLuint, byval level as GLint, byval layered as GLboolean, byval layer as GLint, byval format as GLenum) as GLuint64 2800 type PFNGLMAKEIMAGEHANDLERESIDENTARBPROC as sub(byval handle as GLuint64, byval access as GLenum) 2801 type PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC as sub(byval handle as GLuint64) 2802 type PFNGLUNIFORMHANDLEUI64ARBPROC as sub(byval location as GLint, byval value as GLuint64) 2803 type PFNGLUNIFORMHANDLEUI64VARBPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLuint64 ptr) 2804 type PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC as sub(byval program as GLuint, byval location as GLint, byval value as GLuint64) 2805 type PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC as sub(byval program as GLuint, byval location as GLint, byval count as GLsizei, byval values as const GLuint64 ptr) 2806 type PFNGLISTEXTUREHANDLERESIDENTARBPROC as function(byval handle as GLuint64) as GLboolean 2807 type PFNGLISIMAGEHANDLERESIDENTARBPROC as function(byval handle as GLuint64) as GLboolean 2808 type PFNGLVERTEXATTRIBL1UI64ARBPROC as sub(byval index as GLuint, byval x as GLuint64EXT) 2809 type PFNGLVERTEXATTRIBL1UI64VARBPROC as sub(byval index as GLuint, byval v as const GLuint64EXT ptr) 2810 type PFNGLGETVERTEXATTRIBLUI64VARBPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLuint64EXT ptr) 2811 2812 #ifdef GL_GLEXT_PROTOTYPES 2813 declare function glGetTextureHandleARB(byval texture as GLuint) as GLuint64 2814 declare function glGetTextureSamplerHandleARB(byval texture as GLuint, byval sampler as GLuint) as GLuint64 2815 declare sub glMakeTextureHandleResidentARB(byval handle as GLuint64) 2816 declare sub glMakeTextureHandleNonResidentARB(byval handle as GLuint64) 2817 declare function glGetImageHandleARB(byval texture as GLuint, byval level as GLint, byval layered as GLboolean, byval layer as GLint, byval format as GLenum) as GLuint64 2818 declare sub glMakeImageHandleResidentARB(byval handle as GLuint64, byval access as GLenum) 2819 declare sub glMakeImageHandleNonResidentARB(byval handle as GLuint64) 2820 declare sub glUniformHandleui64ARB(byval location as GLint, byval value as GLuint64) 2821 declare sub glUniformHandleui64vARB(byval location as GLint, byval count as GLsizei, byval value as const GLuint64 ptr) 2822 declare sub glProgramUniformHandleui64ARB(byval program as GLuint, byval location as GLint, byval value as GLuint64) 2823 declare sub glProgramUniformHandleui64vARB(