{ Adaption of the delphi3d.net OpenGL units to FreePascal Sebastian Guenther (sg@freepascal.org) in 2002 These units are free to use } (* {$MACRO ON} {$MODE Delphi} {$IFDEF Windows} {$DEFINE extdecl:=stdcall } {$ELSE} {$DEFINE extdecl:=cdecl } {$ENDIF} *) unit GLext; (************************************************** * OpenGL extension loading library * * Generated by MetaGLext, written by Tom Nuydens * * (tom@delphi3d.net -- http://www.delphi3d.net * **************************************************) //*** Generated on 10/11/2002 interface uses GL; // Test if the given extension name is present in the given extension string. function glext_ExtensionSupported(const extension: String; const searchIn: String): Boolean; // Load the extension with the given name. function glext_LoadExtension(ext: String): Boolean; type GLcharARB = Char; TGLcharARB = GLcharARB; PGLcharARB = ^GLcharARB; GLhandleARB = Cardinal; TGLhandleARB = GLhandleARB; PGLhandleARB = ^GLhandleARB; GLintptr = Integer; TGLintptr = GLintptr; PGLintptr = ^GLintptr; GLsizeiptr = Integer; TGLsizeiptr = GLsizeiptr; PGLsizeiptr = ^GLsizeiptr; GLchar = Char; TGLchar = GLchar; PGLchar = Pchar; //***** GL_version_1_2 *****// const GL_UNSIGNED_BYTE_3_3_2 = $8032; GL_UNSIGNED_SHORT_4_4_4_4 = $8033; GL_UNSIGNED_SHORT_5_5_5_1 = $8034; GL_UNSIGNED_INT_8_8_8_8 = $8035; GL_UNSIGNED_INT_10_10_10_2 = $8036; GL_RESCALE_NORMAL = $803A; GL_UNSIGNED_BYTE_2_3_3_REV = $8362; GL_UNSIGNED_SHORT_5_6_5 = $8363; GL_UNSIGNED_SHORT_5_6_5_REV = $8364; GL_UNSIGNED_SHORT_4_4_4_4_REV = $8365; GL_UNSIGNED_SHORT_1_5_5_5_REV = $8366; GL_UNSIGNED_INT_8_8_8_8_REV = $8367; GL_UNSIGNED_INT_2_10_10_10_REV = $8368; GL_BGR = $80E0; GL_BGRA = $80E1; GL_MAX_ELEMENTS_VERTICES = $80E8; GL_MAX_ELEMENTS_INDICES = $80E9; GL_CLAMP_TO_EDGE = $812F; GL_TEXTURE_MIN_LOD = $813A; GL_TEXTURE_MAX_LOD = $813B; GL_TEXTURE_BASE_LEVEL = $813C; GL_TEXTURE_MAX_LEVEL = $813D; GL_LIGHT_MODEL_COLOR_CONTROL = $81F8; GL_SINGLE_COLOR = $81F9; GL_SEPARATE_SPECULAR_COLOR = $81FA; GL_SMOOTH_POINT_SIZE_RANGE = $0B12; GL_SMOOTH_POINT_SIZE_GRANULARITY = $0B13; GL_SMOOTH_LINE_WIDTH_RANGE = $0B22; GL_SMOOTH_LINE_WIDTH_GRANULARITY = $0B23; GL_ALIASED_POINT_SIZE_RANGE = $846D; GL_ALIASED_LINE_WIDTH_RANGE = $846E; GL_PACK_SKIP_IMAGES = $806B; GL_PACK_IMAGE_HEIGHT = $806C; GL_UNPACK_SKIP_IMAGES = $806D; GL_UNPACK_IMAGE_HEIGHT = $806E; GL_TEXTURE_3D = $806F; GL_PROXY_TEXTURE_3D = $8070; GL_TEXTURE_DEPTH = $8071; GL_TEXTURE_WRAP_R = $8072; GL_MAX_3D_TEXTURE_SIZE = $8073; procedure glBlendColor(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); external dllname; procedure glBlendEquation(mode: GLenum); external dllname; procedure glDrawRangeElements(mode: GLenum; start: GLuint; theend: GLuint; count: GLsizei; thetype: GLenum; const indices: PGLvoid); external dllname; procedure glColorTable(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; thetype: GLenum; const table: PGLvoid); external dllname; procedure glColorTableParameterfv(target: GLenum; pname: GLenum; const params: PGLfloat); external dllname; procedure glColorTableParameteriv(target: GLenum; pname: GLenum; const params: PGLint); external dllname; procedure glCopyColorTable(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); external dllname; procedure glGetColorTable(target: GLenum; format: GLenum; thetype: GLenum; table: PGLvoid); external dllname; procedure glGetColorTableParameterfv(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetColorTableParameteriv(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glColorSubTable(target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; thetype: GLenum; const data: PGLvoid); external dllname; procedure glCopyColorSubTable(target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei); external dllname; procedure glConvolutionFilter1D(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; thetype: GLenum; const image: PGLvoid); external dllname; procedure glConvolutionFilter2D(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; thetype: GLenum; const image: PGLvoid); external dllname; procedure glConvolutionParameterf(target: GLenum; pname: GLenum; params: GLfloat); external dllname; procedure glConvolutionParameterfv(target: GLenum; pname: GLenum; const params: PGLfloat); external dllname; procedure glConvolutionParameteri(target: GLenum; pname: GLenum; params: GLint); external dllname; procedure glConvolutionParameteriv(target: GLenum; pname: GLenum; const params: PGLint); external dllname; procedure glCopyConvolutionFilter1D(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); external dllname; procedure glCopyConvolutionFilter2D(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei); external dllname; procedure glGetConvolutionFilter(target: GLenum; format: GLenum; thetype: GLenum; image: PGLvoid); external dllname; procedure glGetConvolutionParameterfv(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetConvolutionParameteriv(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetSeparableFilter(target: GLenum; format: GLenum; thetype: GLenum; row: PGLvoid; column: PGLvoid; span: PGLvoid); external dllname; procedure glSeparableFilter2D(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; thetype: GLenum; const row: PGLvoid; const column: PGLvoid); external dllname; procedure glGetHistogram(target: GLenum; reset: GLboolean; format: GLenum; thetype: GLenum; values: PGLvoid); external dllname; procedure glGetHistogramParameterfv(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetHistogramParameteriv(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetMinmax(target: GLenum; reset: GLboolean; format: GLenum; thetype: GLenum; values: PGLvoid); external dllname; procedure glGetMinmaxParameterfv(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetMinmaxParameteriv(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glHistogram(target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean); external dllname; procedure glMinmax(target: GLenum; internalformat: GLenum; sink: GLboolean); external dllname; procedure glResetHistogram(target: GLenum); external dllname; procedure glResetMinmax(target: GLenum); external dllname; procedure glTexImage3D(target: GLenum; level: GLint; internalformat: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; thetype: GLenum; const pixels: PGLvoid); external dllname; procedure glTexSubImage3D(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; thetype: GLenum; const pixels: PGLvoid); external dllname; procedure glCopyTexSubImage3D(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); external dllname; //***** GL_ARB_imaging *****// const GL_CONSTANT_COLOR = $8001; GL_ONE_MINUS_CONSTANT_COLOR = $8002; GL_CONSTANT_ALPHA = $8003; GL_ONE_MINUS_CONSTANT_ALPHA = $8004; GL_BLEND_COLOR = $8005; GL_FUNC_ADD = $8006; GL_MIN = $8007; GL_MAX = $8008; GL_BLEND_EQUATION = $8009; GL_FUNC_SUBTRACT = $800A; GL_FUNC_REVERSE_SUBTRACT = $800B; GL_CONVOLUTION_1D = $8010; GL_CONVOLUTION_2D = $8011; GL_SEPARABLE_2D = $8012; GL_CONVOLUTION_BORDER_MODE = $8013; GL_CONVOLUTION_FILTER_SCALE = $8014; GL_CONVOLUTION_FILTER_BIAS = $8015; GL_REDUCE = $8016; GL_CONVOLUTION_FORMAT = $8017; GL_CONVOLUTION_WIDTH = $8018; GL_CONVOLUTION_HEIGHT = $8019; GL_MAX_CONVOLUTION_WIDTH = $801A; GL_MAX_CONVOLUTION_HEIGHT = $801B; GL_POST_CONVOLUTION_RED_SCALE = $801C; GL_POST_CONVOLUTION_GREEN_SCALE = $801D; GL_POST_CONVOLUTION_BLUE_SCALE = $801E; GL_POST_CONVOLUTION_ALPHA_SCALE = $801F; GL_POST_CONVOLUTION_RED_BIAS = $8020; GL_POST_CONVOLUTION_GREEN_BIAS = $8021; GL_POST_CONVOLUTION_BLUE_BIAS = $8022; GL_POST_CONVOLUTION_ALPHA_BIAS = $8023; GL_HISTOGRAM = $8024; GL_PROXY_HISTOGRAM = $8025; GL_HISTOGRAM_WIDTH = $8026; GL_HISTOGRAM_FORMAT = $8027; GL_HISTOGRAM_RED_SIZE = $8028; GL_HISTOGRAM_GREEN_SIZE = $8029; GL_HISTOGRAM_BLUE_SIZE = $802A; GL_HISTOGRAM_ALPHA_SIZE = $802B; GL_HISTOGRAM_LUMINANCE_SIZE = $802C; GL_HISTOGRAM_SINK = $802D; GL_MINMAX = $802E; GL_MINMAX_FORMAT = $802F; GL_MINMAX_SINK = $8030; GL_TABLE_TOO_LARGE = $8031; GL_COLOR_MATRIX = $80B1; GL_COLOR_MATRIX_STACK_DEPTH = $80B2; GL_MAX_COLOR_MATRIX_STACK_DEPTH = $80B3; GL_POST_COLOR_MATRIX_RED_SCALE = $80B4; GL_POST_COLOR_MATRIX_GREEN_SCALE = $80B5; GL_POST_COLOR_MATRIX_BLUE_SCALE = $80B6; GL_POST_COLOR_MATRIX_ALPHA_SCALE = $80B7; GL_POST_COLOR_MATRIX_RED_BIAS = $80B8; GL_POST_COLOR_MATRIX_GREEN_BIAS = $80B9; GL_POST_COLOR_MATRIX_BLUE_BIAS = $80BA; GL_POST_COLOR_MATIX_ALPHA_BIAS = $80BB; GL_COLOR_TABLE = $80D0; GL_POST_CONVOLUTION_COLOR_TABLE = $80D1; GL_POST_COLOR_MATRIX_COLOR_TABLE = $80D2; GL_PROXY_COLOR_TABLE = $80D3; GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = $80D4; GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = $80D5; GL_COLOR_TABLE_SCALE = $80D6; GL_COLOR_TABLE_BIAS = $80D7; GL_COLOR_TABLE_FORMAT = $80D8; GL_COLOR_TABLE_WIDTH = $80D9; GL_COLOR_TABLE_RED_SIZE = $80DA; GL_COLOR_TABLE_GREEN_SIZE = $80DB; GL_COLOR_TABLE_BLUE_SIZE = $80DC; GL_COLOR_TABLE_ALPHA_SIZE = $80DD; GL_COLOR_TABLE_LUMINANCE_SIZE = $80DE; GL_COLOR_TABLE_INTENSITY_SIZE = $80DF; GL_IGNORE_BORDER = $8150; GL_CONSTANT_BORDER = $8151; GL_WRAP_BORDER = $8152; GL_REPLICATE_BORDER = $8153; GL_CONVOLUTION_BORDER_COLOR = $8154; function Load_GL_ARB_imaging: Boolean; //***** GL_version_1_3 *****// const GL_TEXTURE0 = $84C0; GL_TEXTURE1 = $84C1; GL_TEXTURE2 = $84C2; GL_TEXTURE3 = $84C3; GL_TEXTURE4 = $84C4; GL_TEXTURE5 = $84C5; GL_TEXTURE6 = $84C6; GL_TEXTURE7 = $84C7; GL_TEXTURE8 = $84C8; GL_TEXTURE9 = $84C9; GL_TEXTURE10 = $84CA; GL_TEXTURE11 = $84CB; GL_TEXTURE12 = $84CC; GL_TEXTURE13 = $84CD; GL_TEXTURE14 = $84CE; GL_TEXTURE15 = $84CF; GL_TEXTURE16 = $84D0; GL_TEXTURE17 = $84D1; GL_TEXTURE18 = $84D2; GL_TEXTURE19 = $84D3; GL_TEXTURE20 = $84D4; GL_TEXTURE21 = $84D5; GL_TEXTURE22 = $84D6; GL_TEXTURE23 = $84D7; GL_TEXTURE24 = $84D8; GL_TEXTURE25 = $84D9; GL_TEXTURE26 = $84DA; GL_TEXTURE27 = $84DB; GL_TEXTURE28 = $84DC; GL_TEXTURE29 = $84DD; GL_TEXTURE30 = $84DE; GL_TEXTURE31 = $84DF; GL_ACTIVE_TEXTURE = $84E0; GL_CLIENT_ACTIVE_TEXTURE = $84E1; GL_MAX_TEXTURE_UNITS = $84E2; GL_TRANSPOSE_MODELVIEW_MATRIX = $84E3; GL_TRANSPOSE_PROJECTION_MATRIX = $84E4; GL_TRANSPOSE_TEXTURE_MATRIX = $84E5; GL_TRANSPOSE_COLOR_MATRIX = $84E6; GL_MULTISAMPLE = $809D; GL_SAMPLE_ALPHA_TO_COVERAGE = $809E; GL_SAMPLE_ALPHA_TO_ONE = $809F; GL_SAMPLE_COVERAGE = $80A0; GL_SAMPLE_BUFFERS = $80A8; GL_SAMPLES = $80A9; GL_SAMPLE_COVERAGE_VALUE = $80AA; GL_SAMPLE_COVERAGE_INVERT = $80AB; GL_MULTISAMPLE_BIT = $20000000; GL_NORMAL_MAP = $8511; GL_REFLECTION_MAP = $8512; GL_TEXTURE_CUBE_MAP = $8513; GL_TEXTURE_BINDING_CUBE_MAP = $8514; GL_TEXTURE_CUBE_MAP_POSITIVE_X = $8515; GL_TEXTURE_CUBE_MAP_NEGATIVE_X = $8516; GL_TEXTURE_CUBE_MAP_POSITIVE_Y = $8517; GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = $8518; GL_TEXTURE_CUBE_MAP_POSITIVE_Z = $8519; GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = $851A; GL_PROXY_TEXTURE_CUBE_MAP = $851B; GL_MAX_CUBE_MAP_TEXTURE_SIZE = $851C; GL_COMPRESSED_ALPHA = $84E9; GL_COMPRESSED_LUMINANCE = $84EA; GL_COMPRESSED_LUMINANCE_ALPHA = $84EB; GL_COMPRESSED_INTENSITY = $84EC; GL_COMPRESSED_RGB = $84ED; GL_COMPRESSED_RGBA = $84EE; GL_TEXTURE_COMPRESSION_HINT = $84EF; GL_TEXTURE_COMPRESSED_IMAGE_SIZE = $86A0; GL_TEXTURE_COMPRESSED = $86A1; GL_NUM_COMPRESSED_TEXTURE_FORMATS = $86A2; GL_COMPRESSED_TEXTURE_FORMATS = $86A3; GL_CLAMP_TO_BORDER = $812D; GL_CLAMP_TO_BORDER_SGIS = $812D; GL_COMBINE = $8570; GL_COMBINE_RGB = $8571; GL_COMBINE_ALPHA = $8572; GL_SOURCE0_RGB = $8580; GL_SOURCE1_RGB = $8581; GL_SOURCE2_RGB = $8582; GL_SOURCE0_ALPHA = $8588; GL_SOURCE1_ALPHA = $8589; GL_SOURCE2_ALPHA = $858A; GL_OPERAND0_RGB = $8590; GL_OPERAND1_RGB = $8591; GL_OPERAND2_RGB = $8592; GL_OPERAND0_ALPHA = $8598; GL_OPERAND1_ALPHA = $8599; GL_OPERAND2_ALPHA = $859A; GL_RGB_SCALE = $8573; GL_ADD_SIGNED = $8574; GL_INTERPOLATE = $8575; GL_SUBTRACT = $84E7; GL_CONSTANT = $8576; GL_PRIMARY_COLOR = $8577; GL_PREVIOUS = $8578; GL_DOT3_RGB = $86AE; GL_DOT3_RGBA = $86AF; procedure glActiveTexture(texture: GLenum); external dllname; procedure glClientActiveTexture(texture: GLenum); external dllname; procedure glMultiTexCoord1d(target: GLenum; s: GLdouble); external dllname; procedure glMultiTexCoord1dv(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord1f(target: GLenum; s: GLfloat); external dllname; procedure glMultiTexCoord1fv(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord1i(target: GLenum; s: GLint); external dllname; procedure glMultiTexCoord1iv(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord1s(target: GLenum; s: GLshort); external dllname; procedure glMultiTexCoord1sv(target: GLenum; const v: PGLshort); external dllname; procedure glMultiTexCoord2d(target: GLenum; s: GLdouble; t: GLdouble); external dllname; procedure glMultiTexCoord2dv(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord2f(target: GLenum; s: GLfloat; t: GLfloat); external dllname; procedure glMultiTexCoord2fv(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord2i(target: GLenum; s: GLint; t: GLint); external dllname; procedure glMultiTexCoord2iv(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord2s(target: GLenum; s: GLshort; t: GLshort); external dllname; procedure glMultiTexCoord2sv(target: GLenum; const v: PGLshort); external dllname; procedure glMultiTexCoord3d(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble); external dllname; procedure glMultiTexCoord3dv(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord3f(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat); external dllname; procedure glMultiTexCoord3fv(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord3i(target: GLenum; s: GLint; t: GLint; r: GLint); external dllname; procedure glMultiTexCoord3iv(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord3s(target: GLenum; s: GLshort; t: GLshort; r: GLshort); external dllname; procedure glMultiTexCoord3sv(target: GLenum; const v: PGLshort); external dllname; procedure glMultiTexCoord4d(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); external dllname; procedure glMultiTexCoord4dv(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord4f(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); external dllname; procedure glMultiTexCoord4fv(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord4i(target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint); external dllname; procedure glMultiTexCoord4iv(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord4s(target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort); external dllname; procedure glMultiTexCoord4sv(target: GLenum; const v: PGLshort); external dllname; procedure glLoadTransposeMatrixf(const m: PGLfloat); external dllname; procedure glLoadTransposeMatrixd(const m: PGLdouble); external dllname; procedure glMultTransposeMatrixf(const m: PGLfloat); external dllname; procedure glMultTransposeMatrixd(const m: PGLdouble); external dllname; procedure glSampleCoverage(value: GLclampf; invert: GLboolean); external dllname; procedure glCompressedTexImage3D(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexImage2D(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexImage1D(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexSubImage3D(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexSubImage2D(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexSubImage1D(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glGetCompressedTexImage(target: GLenum; level: GLint; img: PGLvoid); external dllname; function Load_GL_version_1_3: Boolean; //***** GL_ARB_multitexture *****// const GL_TEXTURE0_ARB = $84C0; GL_TEXTURE1_ARB = $84C1; GL_TEXTURE2_ARB = $84C2; GL_TEXTURE3_ARB = $84C3; GL_TEXTURE4_ARB = $84C4; GL_TEXTURE5_ARB = $84C5; GL_TEXTURE6_ARB = $84C6; GL_TEXTURE7_ARB = $84C7; GL_TEXTURE8_ARB = $84C8; GL_TEXTURE9_ARB = $84C9; GL_TEXTURE10_ARB = $84CA; GL_TEXTURE11_ARB = $84CB; GL_TEXTURE12_ARB = $84CC; GL_TEXTURE13_ARB = $84CD; GL_TEXTURE14_ARB = $84CE; GL_TEXTURE15_ARB = $84CF; GL_TEXTURE16_ARB = $84D0; GL_TEXTURE17_ARB = $84D1; GL_TEXTURE18_ARB = $84D2; GL_TEXTURE19_ARB = $84D3; GL_TEXTURE20_ARB = $84D4; GL_TEXTURE21_ARB = $84D5; GL_TEXTURE22_ARB = $84D6; GL_TEXTURE23_ARB = $84D7; GL_TEXTURE24_ARB = $84D8; GL_TEXTURE25_ARB = $84D9; GL_TEXTURE26_ARB = $84DA; GL_TEXTURE27_ARB = $84DB; GL_TEXTURE28_ARB = $84DC; GL_TEXTURE29_ARB = $84DD; GL_TEXTURE30_ARB = $84DE; GL_TEXTURE31_ARB = $84DF; GL_ACTIVE_TEXTURE_ARB = $84E0; GL_CLIENT_ACTIVE_TEXTURE_ARB = $84E1; GL_MAX_TEXTURE_UNITS_ARB = $84E2; procedure glActiveTextureARB(texture: GLenum); external dllname; procedure glClientActiveTextureARB(texture: GLenum); external dllname; procedure glMultiTexCoord1dARB(target: GLenum; s: GLdouble); external dllname; procedure glMultiTexCoord1dvARB(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord1fARB(target: GLenum; s: GLfloat); external dllname; procedure glMultiTexCoord1fvARB(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord1iARB(target: GLenum; s: GLint); external dllname; procedure glMultiTexCoord1ivARB(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord1sARB(target: GLenum; s: GLshort); external dllname; procedure glMultiTexCoord1svARB(target: GLenum; const v: PGLshort); external dllname; procedure glMultiTexCoord2dARB(target: GLenum; s: GLdouble; t: GLdouble); external dllname; procedure glMultiTexCoord2dvARB(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord2fARB(target: GLenum; s: GLfloat; t: GLfloat); external dllname; procedure glMultiTexCoord2fvARB(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord2iARB(target: GLenum; s: GLint; t: GLint); external dllname; procedure glMultiTexCoord2ivARB(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord2sARB(target: GLenum; s: GLshort; t: GLshort); external dllname; procedure glMultiTexCoord2svARB(target: GLenum; const v: PGLshort); external dllname; procedure glMultiTexCoord3dARB(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble); external dllname; procedure glMultiTexCoord3dvARB(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord3fARB(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat); external dllname; procedure glMultiTexCoord3fvARB(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord3iARB(target: GLenum; s: GLint; t: GLint; r: GLint); external dllname; procedure glMultiTexCoord3ivARB(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord3sARB(target: GLenum; s: GLshort; t: GLshort; r: GLshort); external dllname; procedure glMultiTexCoord3svARB(target: GLenum; const v: PGLshort); external dllname; procedure glMultiTexCoord4dARB(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); external dllname; procedure glMultiTexCoord4dvARB(target: GLenum; const v: PGLdouble); external dllname; procedure glMultiTexCoord4fARB(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); external dllname; procedure glMultiTexCoord4fvARB(target: GLenum; const v: PGLfloat); external dllname; procedure glMultiTexCoord4iARB(target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint); external dllname; procedure glMultiTexCoord4ivARB(target: GLenum; const v: PGLint); external dllname; procedure glMultiTexCoord4sARB(target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort); external dllname; procedure glMultiTexCoord4svARB(target: GLenum; const v: PGLshort); external dllname; function Load_GL_ARB_multitexture: Boolean; //***** GL_ARB_transpose_matrix *****// const GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = $84E3; GL_TRANSPOSE_PROJECTION_MATRIX_ARB = $84E4; GL_TRANSPOSE_TEXTURE_MATRIX_ARB = $84E5; GL_TRANSPOSE_COLOR_MATRIX_ARB = $84E6; procedure glLoadTransposeMatrixfARB(m: PGLfloat); external dllname; procedure glLoadTransposeMatrixdARB(m: PGLdouble); external dllname; procedure glMultTransposeMatrixfARB(m: PGLfloat); external dllname; procedure glMultTransposeMatrixdARB(m: PGLdouble); external dllname; function Load_GL_ARB_transpose_matrix: Boolean; //***** GL_ARB_multisample *****// const WGL_SAMPLE_BUFFERS_ARB = $2041; WGL_SAMPLES_ARB = $2042; GL_MULTISAMPLE_ARB = $809D; GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = $809E; GL_SAMPLE_ALPHA_TO_ONE_ARB = $809F; GL_SAMPLE_COVERAGE_ARB = $80A0; GL_MULTISAMPLE_BIT_ARB = $20000000; GL_SAMPLE_BUFFERS_ARB = $80A8; GL_SAMPLES_ARB = $80A9; GL_SAMPLE_COVERAGE_VALUE_ARB = $80AA; GL_SAMPLE_COVERAGE_INVERT_ARB = $80AB; procedure glSampleCoverageARB(value: GLclampf; invert: GLboolean); external dllname; function Load_GL_ARB_multisample: Boolean; //***** GL_ARB_texture_env_add *****// function Load_GL_ARB_texture_env_add: Boolean; //***** GL_ARB_texture_cube_map *****// const GL_NORMAL_MAP_ARB = $8511; GL_REFLECTION_MAP_ARB = $8512; GL_TEXTURE_CUBE_MAP_ARB = $8513; GL_TEXTURE_BINDING_CUBE_MAP_ARB = $8514; GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = $8515; GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = $8516; GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = $8517; GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = $8518; GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = $8519; GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = $851A; GL_PROXY_TEXTURE_CUBE_MAP_ARB = $851B; GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = $851C; function Load_GL_ARB_texture_cube_map: Boolean; //***** GL_ARB_depth_texture *****// const GL_DEPTH_COMPONENT16_ARB = $81A5; GL_DEPTH_COMPONENT24_ARB = $81A6; GL_DEPTH_COMPONENT32_ARB = $81A7; GL_TEXTURE_DEPTH_SIZE_ARB = $884A; GL_DEPTH_TEXTURE_MODE_ARB = $884B; function Load_GL_ARB_depth_texture: Boolean; //***** GL_ARB_point_parameters *****// const GL_POINT_SIZE_MIN_ARB = $8126; GL_POINT_SIZE_MAX_ARB = $8127; GL_POINT_FADE_THRESHOLD_SIZE_ARB = $8128; GL_POINT_DISTANCE_ATTENUATION_ARB = $8129; procedure glPointParameterfARB(pname: GLenum; param: GLfloat); external dllname; procedure glPointParameterfvARB(pname: GLenum; params: PGLfloat); external dllname; function Load_GL_ARB_point_parameters: Boolean; //***** GL_ARB_shadow *****// const GL_TEXTURE_COMPARE_MODE_ARB = $884C; GL_TEXTURE_COMPARE_FUNC_ARB = $884D; GL_COMPARE_R_TO_TEXTURE_ARB = $884E; function Load_GL_ARB_shadow: Boolean; //***** GL_ARB_shadow_ambient *****// const GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = $80BF; function Load_GL_ARB_shadow_ambient: Boolean; //***** GL_ARB_texture_border_clamp *****// const GL_CLAMP_TO_BORDER_ARB = $812D; function Load_GL_ARB_texture_border_clamp: Boolean; //***** GL_ARB_texture_compression *****// const GL_COMPRESSED_ALPHA_ARB = $84E9; GL_COMPRESSED_LUMINANCE_ARB = $84EA; GL_COMPRESSED_LUMINANCE_ALPHA_ARB = $84EB; GL_COMPRESSED_INTENSITY_ARB = $84EC; GL_COMPRESSED_RGB_ARB = $84ED; GL_COMPRESSED_RGBA_ARB = $84EE; GL_TEXTURE_COMPRESSION_HINT_ARB = $84EF; GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = $86A0; GL_TEXTURE_COMPRESSED_ARB = $86A1; GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = $86A2; GL_COMPRESSED_TEXTURE_FORMATS_ARB = $86A3; procedure glCompressedTexImage3DARB(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexImage2DARB(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexImage1DARB(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexSubImage3DARB(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexSubImage2DARB(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glCompressedTexSubImage1DARB(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); external dllname; procedure glGetCompressedTexImageARB(target: GLenum; lod: GLint; img: PGLvoid); external dllname; function Load_GL_ARB_texture_compression: Boolean; //***** GL_ARB_texture_env_combine *****// const GL_COMBINE_ARB = $8570; GL_COMBINE_RGB_ARB = $8571; GL_COMBINE_ALPHA_ARB = $8572; GL_SOURCE0_RGB_ARB = $8580; GL_SOURCE1_RGB_ARB = $8581; GL_SOURCE2_RGB_ARB = $8582; GL_SOURCE0_ALPHA_ARB = $8588; GL_SOURCE1_ALPHA_ARB = $8589; GL_SOURCE2_ALPHA_ARB = $858A; GL_OPERAND0_RGB_ARB = $8590; GL_OPERAND1_RGB_ARB = $8591; GL_OPERAND2_RGB_ARB = $8592; GL_OPERAND0_ALPHA_ARB = $8598; GL_OPERAND1_ALPHA_ARB = $8599; GL_OPERAND2_ALPHA_ARB = $859A; GL_RGB_SCALE_ARB = $8573; GL_ADD_SIGNED_ARB = $8574; GL_INTERPOLATE_ARB = $8575; GL_SUBTRACT_ARB = $84E7; GL_CONSTANT_ARB = $8576; GL_PRIMARY_COLOR_ARB = $8577; GL_PREVIOUS_ARB = $8578; function Load_GL_ARB_texture_env_combine: Boolean; //***** GL_ARB_texture_env_crossbar *****// function Load_GL_ARB_texture_env_crossbar: Boolean; //***** GL_ARB_texture_env_dot3 *****// const GL_DOT3_RGB_ARB = $86AE; GL_DOT3_RGBA_ARB = $86AF; function Load_GL_ARB_texture_env_dot3: Boolean; //***** GL_ARB_texture_mirrored_repeat *****// const GL_MIRRORED_REPEAT_ARB = $8370; function Load_GL_ARB_texture_mirrored_repeat: Boolean; //***** GL_ARB_vertex_blend *****// const GL_MAX_VERTEX_UNITS_ARB = $86A4; GL_ACTIVE_VERTEX_UNITS_ARB = $86A5; GL_WEIGHT_SUM_UNITY_ARB = $86A6; GL_VERTEX_BLEND_ARB = $86A7; GL_MODELVIEW0_ARB = $1700; GL_MODELVIEW1_ARB = $850A; GL_MODELVIEW2_ARB = $8722; GL_MODELVIEW3_ARB = $8723; GL_MODELVIEW4_ARB = $8724; GL_MODELVIEW5_ARB = $8725; GL_MODELVIEW6_ARB = $8726; GL_MODELVIEW7_ARB = $8727; GL_MODELVIEW8_ARB = $8728; GL_MODELVIEW9_ARB = $8729; GL_MODELVIEW10_ARB = $872A; GL_MODELVIEW11_ARB = $872B; GL_MODELVIEW12_ARB = $872C; GL_MODELVIEW13_ARB = $872D; GL_MODELVIEW14_ARB = $872E; GL_MODELVIEW15_ARB = $872F; GL_MODELVIEW16_ARB = $8730; GL_MODELVIEW17_ARB = $8731; GL_MODELVIEW18_ARB = $8732; GL_MODELVIEW19_ARB = $8733; GL_MODELVIEW20_ARB = $8734; GL_MODELVIEW21_ARB = $8735; GL_MODELVIEW22_ARB = $8736; GL_MODELVIEW23_ARB = $8737; GL_MODELVIEW24_ARB = $8738; GL_MODELVIEW25_ARB = $8739; GL_MODELVIEW26_ARB = $873A; GL_MODELVIEW27_ARB = $873B; GL_MODELVIEW28_ARB = $873C; GL_MODELVIEW29_ARB = $873D; GL_MODELVIEW30_ARB = $873E; GL_MODELVIEW31_ARB = $873F; GL_CURRENT_WEIGHT_ARB = $86A8; GL_WEIGHT_ARRAY_TYPE_ARB = $86A9; GL_WEIGHT_ARRAY_STRIDE_ARB = $86AA; GL_WEIGHT_ARRAY_SIZE_ARB = $86AB; GL_WEIGHT_ARRAY_POINTER_ARB = $86AC; GL_WEIGHT_ARRAY_ARB = $86AD; procedure glWeightbvARB(size: GLint; weights: PGLbyte); external dllname; procedure glWeightsvARB(size: GLint; weights: PGLshort); external dllname; procedure glWeightivARB(size: GLint; weights: PGLint); external dllname; procedure glWeightfvARB(size: GLint; weights: PGLfloat); external dllname; procedure glWeightdvARB(size: GLint; weights: PGLdouble); external dllname; procedure glWeightvARB(size: GLint; weights: PGLdouble); external dllname; procedure glWeightubvARB(size: GLint; weights: PGLubyte); external dllname; procedure glWeightusvARB(size: GLint; weights: PGLushort); external dllname; procedure glWeightuivARB(size: GLint; weights: PGLuint); external dllname; procedure glWeightPointerARB(size: GLint; thetype: GLenum; stride: GLsizei; pointer: PGLvoid); external dllname; procedure glVertexBlendARB(count: GLint); external dllname; function Load_GL_ARB_vertex_blend: Boolean; //***** GL_ARB_vertex_program *****// const GL_VERTEX_PROGRAM_ARB = $8620; GL_VERTEX_PROGRAM_POINT_SIZE_ARB = $8642; GL_VERTEX_PROGRAM_TWO_SIDE_ARB = $8643; GL_COLOR_SUM_ARB = $8458; GL_PROGRAM_FORMAT_ASCII_ARB = $8875; GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = $8622; GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = $8623; GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = $8624; GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = $8625; GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = $886A; GL_CURRENT_VERTEX_ATTRIB_ARB = $8626; GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = $8645; GL_PROGRAM_LENGTH_ARB = $8627; GL_PROGRAM_FORMAT_ARB = $8876; GL_PROGRAM_BINDING_ARB = $8677; GL_PROGRAM_INSTRUCTIONS_ARB = $88A0; GL_MAX_PROGRAM_INSTRUCTIONS_ARB = $88A1; GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = $88A2; GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = $88A3; GL_PROGRAM_TEMPORARIES_ARB = $88A4; GL_MAX_PROGRAM_TEMPORARIES_ARB = $88A5; GL_PROGRAM_NATIVE_TEMPORARIES_ARB = $88A6; GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = $88A7; GL_PROGRAM_PARAMETERS_ARB = $88A8; GL_MAX_PROGRAM_PARAMETERS_ARB = $88A9; GL_PROGRAM_NATIVE_PARAMETERS_ARB = $88AA; GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = $88AB; GL_PROGRAM_ATTRIBS_ARB = $88AC; GL_MAX_PROGRAM_ATTRIBS_ARB = $88AD; GL_PROGRAM_NATIVE_ATTRIBS_ARB = $88AE; GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = $88AF; GL_PROGRAM_ADDRESS_REGISTERS_ARB = $88B0; GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = $88B1; GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = $88B2; GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = $88B3; GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = $88B4; GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = $88B5; GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = $88B6; GL_PROGRAM_STRING_ARB = $8628; GL_PROGRAM_ERROR_POSITION_ARB = $864B; GL_CURRENT_MATRIX_ARB = $8641; GL_TRANSPOSE_CURRENT_MATRIX_ARB = $88B7; GL_CURRENT_MATRIX_STACK_DEPTH_ARB = $8640; GL_MAX_VERTEX_ATTRIBS_ARB = $8869; GL_MAX_PROGRAM_MATRICES_ARB = $862F; GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = $862E; GL_PROGRAM_ERROR_STRING_ARB = $8874; GL_MATRIX0_ARB = $88C0; GL_MATRIX1_ARB = $88C1; GL_MATRIX2_ARB = $88C2; GL_MATRIX3_ARB = $88C3; GL_MATRIX4_ARB = $88C4; GL_MATRIX5_ARB = $88C5; GL_MATRIX6_ARB = $88C6; GL_MATRIX7_ARB = $88C7; GL_MATRIX8_ARB = $88C8; GL_MATRIX9_ARB = $88C9; GL_MATRIX10_ARB = $88CA; GL_MATRIX11_ARB = $88CB; GL_MATRIX12_ARB = $88CC; GL_MATRIX13_ARB = $88CD; GL_MATRIX14_ARB = $88CE; GL_MATRIX15_ARB = $88CF; GL_MATRIX16_ARB = $88D0; GL_MATRIX17_ARB = $88D1; GL_MATRIX18_ARB = $88D2; GL_MATRIX19_ARB = $88D3; GL_MATRIX20_ARB = $88D4; GL_MATRIX21_ARB = $88D5; GL_MATRIX22_ARB = $88D6; GL_MATRIX23_ARB = $88D7; GL_MATRIX24_ARB = $88D8; GL_MATRIX25_ARB = $88D9; GL_MATRIX26_ARB = $88DA; GL_MATRIX27_ARB = $88DB; GL_MATRIX28_ARB = $88DC; GL_MATRIX29_ARB = $88DD; GL_MATRIX30_ARB = $88DE; GL_MATRIX31_ARB = $88DF; procedure glVertexAttrib1sARB(index: GLuint; x: GLshort); external dllname; procedure glVertexAttrib1fARB(index: GLuint; x: GLfloat); external dllname; procedure glVertexAttrib1dARB(index: GLuint; x: GLdouble); external dllname; procedure glVertexAttrib2sARB(index: GLuint; x: GLshort; y: GLshort); external dllname; procedure glVertexAttrib2fARB(index: GLuint; x: GLfloat; y: GLfloat); external dllname; procedure glVertexAttrib2dARB(index: GLuint; x: GLdouble; y: GLdouble); external dllname; procedure glVertexAttrib3sARB(index: GLuint; x: GLshort; y: GLshort; z: GLshort); external dllname; procedure glVertexAttrib3fARB(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glVertexAttrib3dARB(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); external dllname; procedure glVertexAttrib4sARB(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); external dllname; procedure glVertexAttrib4fARB(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glVertexAttrib4dARB(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glVertexAttrib4NubARB(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); external dllname; procedure glVertexAttrib1svARB(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib1fvARB(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib1dvARB(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib2svARB(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib2fvARB(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib2dvARB(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib3svARB(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib3fvARB(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib3dvARB(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib4bvARB(index: GLuint; const v: PGLbyte); external dllname; procedure glVertexAttrib4svARB(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib4ivARB(index: GLuint; const v: PGLint); external dllname; procedure glVertexAttrib4ubvARB(index: GLuint; const v: PGLubyte); external dllname; procedure glVertexAttrib4usvARB(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttrib4uivARB(index: GLuint; const v: PGLuint); external dllname; procedure glVertexAttrib4fvARB(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib4dvARB(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib4NbvARB(index: GLuint; const v: PGLbyte); external dllname; procedure glVertexAttrib4NsvARB(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib4NivARB(index: GLuint; const v: PGLint); external dllname; procedure glVertexAttrib4NubvARB(index: GLuint; const v: PGLubyte); external dllname; procedure glVertexAttrib4NusvARB(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttrib4NuivARB(index: GLuint; const v: PGLuint); external dllname; procedure glVertexAttribPointerARB(index: GLuint; size: GLint; thetype: GLenum; normalized: GLboolean; stride: GLsizei; const pointer: PGLvoid); external dllname; procedure glEnableVertexAttribArrayARB(index: GLuint); external dllname; procedure glDisableVertexAttribArrayARB(index: GLuint); external dllname; procedure glProgramStringARB(target: GLenum; format: GLenum; len: GLsizei; const str: PGLvoid); external dllname; procedure glBindProgramARB(target: GLenum; theProgram: GLuint); external dllname; procedure glDeleteProgramsARB(n: GLsizei; const programs: PGLuint); external dllname; procedure glGenProgramsARB(n: GLsizei; programs: PGLuint); external dllname; procedure glProgramEnvParameter4dARB(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glProgramEnvParameter4dvARB(target: GLenum; index: GLuint; const params: PGLdouble); external dllname; procedure glProgramEnvParameter4fARB(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glProgramEnvParameter4fvARB(target: GLenum; index: GLuint; const params: PGLfloat); external dllname; procedure glProgramLocalParameter4dARB(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glProgramLocalParameter4dvARB(target: GLenum; index: GLuint; const params: PGLdouble); external dllname; procedure glProgramLocalParameter4fARB(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glProgramLocalParameter4fvARB(target: GLenum; index: GLuint; const params: PGLfloat); external dllname; procedure glGetProgramEnvParameterdvARB(target: GLenum; index: GLuint; params: PGLdouble); external dllname; procedure glGetProgramEnvParameterfvARB(target: GLenum; index: GLuint; params: PGLfloat); external dllname; procedure glGetProgramLocalParameterdvARB(target: GLenum; index: GLuint; params: PGLdouble); external dllname; procedure glGetProgramLocalParameterfvARB(target: GLenum; index: GLuint; params: PGLfloat); external dllname; procedure glGetProgramivARB(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetProgramStringARB(target: GLenum; pname: GLenum; str: PGLvoid); external dllname; procedure glGetVertexAttribdvARB(index: GLuint; pname: GLenum; params: PGLdouble); external dllname; procedure glGetVertexAttribfvARB(index: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetVertexAttribivARB(index: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetVertexAttribPointervARB(index: GLuint; pname: GLenum; pointer: PGLvoid); external dllname; function glIsProgramARB(theProgram: GLuint): GLboolean; external dllname; function Load_GL_ARB_vertex_program: Boolean; //***** GL_ARB_window_pos *****// procedure glWindowPos2dARB(x: GLdouble; y: GLdouble); external dllname; procedure glWindowPos2fARB(x: GLfloat; y: GLfloat); external dllname; procedure glWindowPos2iARB(x: GLint; y: GLint); external dllname; procedure glWindowPos2sARB(x: GLshort; y: GLshort); external dllname; procedure glWindowPos2dvARB(const p: PGLdouble); external dllname; procedure glWindowPos2fvARB(const p: PGLfloat); external dllname; procedure glWindowPos2ivARB(const p: PGLint); external dllname; procedure glWindowPos2svARB(const p: PGLshort); external dllname; procedure glWindowPos3dARB(x: GLdouble; y: GLdouble; z: GLdouble); external dllname; procedure glWindowPos3fARB(x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glWindowPos3iARB(x: GLint; y: GLint; z: GLint); external dllname; procedure glWindowPos3sARB(x: GLshort; y: GLshort; z: GLshort); external dllname; procedure glWindowPos3dvARB(const p: PGLdouble); external dllname; procedure glWindowPos3fvARB(const p: PGLfloat); external dllname; procedure glWindowPos3ivARB(const p: PGLint); external dllname; procedure glWindowPos3svARB(const p: PGLshort); external dllname; function Load_GL_ARB_window_pos: Boolean; //***** GL_EXT_422_pixels *****// const GL_422_EXT = $80CC; GL_422_REV_EXT = $80CD; GL_422_AVERAGE_EXT = $80CE; GL_422_REV_AVERAGE_EXT = $80CF; function Load_GL_EXT_422_pixels: Boolean; //***** GL_EXT_abgr *****// const GL_ABGR_EXT = $8000; function Load_GL_EXT_abgr: Boolean; //***** GL_EXT_bgra *****// const GL_BGR_EXT = $80E0; GL_BGRA_EXT = $80E1; function Load_GL_EXT_bgra: Boolean; //***** GL_EXT_blend_color *****// const GL_CONSTANT_COLOR_EXT = $8001; GL_ONE_MINUS_CONSTANT_COLOR_EXT = $8002; GL_CONSTANT_ALPHA_EXT = $8003; GL_ONE_MINUS_CONSTANT_ALPHA_EXT = $8004; GL_BLEND_COLOR_EXT = $8005; procedure glBlendColorEXT(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); external dllname; function Load_GL_EXT_blend_color: Boolean; //***** GL_EXT_blend_func_separate *****// const GL_BLEND_DST_RGB_EXT = $80C8; GL_BLEND_SRC_RGB_EXT = $80C9; GL_BLEND_DST_ALPHA_EXT = $80CA; GL_BLEND_SRC_ALPHA_EXT = $80CB; procedure glBlendFuncSeparateEXT(sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum); external dllname; function Load_GL_EXT_blend_func_separate: Boolean; //***** GL_EXT_blend_logic_op *****// function Load_GL_EXT_blend_logic_op: Boolean; //***** GL_EXT_blend_minmax *****// const GL_FUNC_ADD_EXT = $8006; GL_MIN_EXT = $8007; GL_MAX_EXT = $8008; GL_BLEND_EQUATION_EXT = $8009; procedure glBlendEquationEXT(mode: GLenum); external dllname; function Load_GL_EXT_blend_minmax: Boolean; //***** GL_EXT_blend_subtract *****// const GL_FUNC_SUBTRACT_EXT = $800A; GL_FUNC_REVERSE_SUBTRACT_EXT = $800B; function Load_GL_EXT_blend_subtract: Boolean; //***** GL_EXT_clip_volume_hint *****// const GL_CLIP_VOLUME_CLIPPING_HINT_EXT = $80F0; function Load_GL_EXT_clip_volume_hint: Boolean; //***** GL_EXT_color_subtable *****// procedure glColorSubTableEXT(target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; thetype: GLenum; const data: PGLvoid); external dllname; procedure glCopyColorSubTableEXT(target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei); external dllname; function Load_GL_EXT_color_subtable: Boolean; //***** GL_EXT_compiled_vertex_array *****// const GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = $81A8; GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = $81A9; procedure glLockArraysEXT(first: GLint; count: GLsizei); external dllname; procedure glUnlockArraysEXT(); external dllname; function Load_GL_EXT_compiled_vertex_array: Boolean; //***** GL_EXT_convolution *****// const GL_CONVOLUTION_1D_EXT = $8010; GL_CONVOLUTION_2D_EXT = $8011; GL_SEPARABLE_2D_EXT = $8012; GL_CONVOLUTION_BORDER_MODE_EXT = $8013; GL_CONVOLUTION_FILTER_SCALE_EXT = $8014; GL_CONVOLUTION_FILTER_BIAS_EXT = $8015; GL_REDUCE_EXT = $8016; GL_CONVOLUTION_FORMAT_EXT = $8017; GL_CONVOLUTION_WIDTH_EXT = $8018; GL_CONVOLUTION_HEIGHT_EXT = $8019; GL_MAX_CONVOLUTION_WIDTH_EXT = $801A; GL_MAX_CONVOLUTION_HEIGHT_EXT = $801B; GL_POST_CONVOLUTION_RED_SCALE_EXT = $801C; GL_POST_CONVOLUTION_GREEN_SCALE_EXT = $801D; GL_POST_CONVOLUTION_BLUE_SCALE_EXT = $801E; GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = $801F; GL_POST_CONVOLUTION_RED_BIAS_EXT = $8020; GL_POST_CONVOLUTION_GREEN_BIAS_EXT = $8021; GL_POST_CONVOLUTION_BLUE_BIAS_EXT = $8022; GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = $8023; procedure glConvolutionFilter1DEXT(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; thetype: GLenum; const image: PGLvoid); external dllname; procedure glConvolutionFilter2DEXT(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; thetype: GLenum; const image: PGLvoid); external dllname; procedure glCopyConvolutionFilter1DEXT(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); external dllname; procedure glCopyConvolutionFilter2DEXT(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei); external dllname; procedure glGetConvolutionFilterEXT(target: GLenum; format: GLenum; thetype: GLenum; image: PGLvoid); external dllname; procedure glSeparableFilter2DEXT(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; thetype: GLenum; const row: PGLvoid; const column: PGLvoid); external dllname; procedure glGetSeparableFilterEXT(target: GLenum; format: GLenum; thetype: GLenum; row: PGLvoid; column: PGLvoid; span: PGLvoid); external dllname; procedure glConvolutionParameteriEXT(target: GLenum; pname: GLenum; param: GLint); external dllname; procedure glConvolutionParameterivEXT(target: GLenum; pname: GLenum; const params: PGLint); external dllname; procedure glConvolutionParameterfEXT(target: GLenum; pname: GLenum; param: GLfloat); external dllname; procedure glConvolutionParameterfvEXT(target: GLenum; pname: GLenum; const params: PGLfloat); external dllname; procedure glGetConvolutionParameterivEXT(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetConvolutionParameterfvEXT(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; function Load_GL_EXT_convolution: Boolean; //***** GL_EXT_fog_coord *****// const GL_FOG_COORDINATE_SOURCE_EXT = $8450; GL_FOG_COORDINATE_EXT = $8451; GL_FRAGMENT_DEPTH_EXT = $8452; GL_CURRENT_FOG_COORDINATE_EXT = $8453; GL_FOG_COORDINATE_ARRAY_TYPE_EXT = $8454; GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = $8455; GL_FOG_COORDINATE_ARRAY_POINTER_EXT = $8456; GL_FOG_COORDINATE_ARRAY_EXT = $8457; procedure glFogCoordfEXfloat(coord: GLfloat); external dllname; procedure glFogCoorddEXdouble(coord: GLdouble); external dllname; procedure glFogCoordfvEXfloat(coord: GLfloat); external dllname; procedure glFogCoorddvEXdouble(coord: GLdouble); external dllname; procedure glFogCoordPointerEXT(thetype: GLenum; stride: GLsizei; pointer: PGLvoid); external dllname; function Load_GL_EXT_fog_coord: Boolean; //***** GL_EXT_histogram *****// const GL_HISTOGRAM_EXT = $8024; GL_PROXY_HISTOGRAM_EXT = $8025; GL_HISTOGRAM_WIDTH_EXT = $8026; GL_HISTOGRAM_FORMAT_EXT = $8027; GL_HISTOGRAM_RED_SIZE_EXT = $8028; GL_HISTOGRAM_GREEN_SIZE_EXT = $8029; GL_HISTOGRAM_BLUE_SIZE_EXT = $802A; GL_HISTOGRAM_ALPHA_SIZE_EXT = $802B; GL_HISTOGRAM_LUMINANCE_SIZE_EXT = $802C; GL_HISTOGRAM_SINK_EXT = $802D; GL_MINMAX_EXT = $802E; GL_MINMAX_FORMAT_EXT = $802F; GL_MINMAX_SINK_EXT = $8030; procedure glHistogramEXT(target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean); external dllname; procedure glResetHistogramEXT(target: GLenum); external dllname; procedure glGetHistogramEXT(target: GLenum; reset: GLboolean; format: GLenum; thetype: GLenum; values: PGLvoid); external dllname; procedure glGetHistogramParameterivEXT(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetHistogramParameterfvEXT(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glMinmaxEXT(target: GLenum; internalformat: GLenum; sink: GLboolean); external dllname; procedure glResetMinmaxEXT(target: GLenum); external dllname; procedure glGetMinmaxEXT(target: GLenum; reset: GLboolean; format: GLenum; thetype: GLenum; values: PGLvoid); external dllname; procedure glGetMinmaxParameterivEXT(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetMinmaxParameterfvEXT(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; function Load_GL_EXT_histogram: Boolean; //***** GL_EXT_multi_draw_arrays *****// procedure glMultiDrawArraysEXT(mode: GLenum; first: PGLint; count: PGLsizei; primcount: GLsizei); external dllname; procedure glMultiDrawElementsEXT(mode: GLenum; count: PGLsizei; thetype: GLenum; const indices: PGLvoid; primcount: GLsizei); external dllname; function Load_GL_EXT_multi_draw_arrays: Boolean; //***** GL_EXT_packed_pixels *****// const GL_UNSIGNED_BYTE_3_3_2_EXT = $8032; GL_UNSIGNED_SHORT_4_4_4_4_EXT = $8033; GL_UNSIGNED_SHORT_5_5_5_1_EXT = $8034; GL_UNSIGNED_INT_8_8_8_8_EXT = $8035; GL_UNSIGNED_INT_10_10_10_2_EXT = $8036; function Load_GL_EXT_packed_pixels: Boolean; //***** GL_EXT_paletted_texture *****// const GL_COLOR_INDEX1_EXT = $80E2; GL_COLOR_INDEX2_EXT = $80E3; GL_COLOR_INDEX4_EXT = $80E4; GL_COLOR_INDEX8_EXT = $80E5; GL_COLOR_INDEX12_EXT = $80E6; GL_COLOR_INDEX16_EXT = $80E7; GL_COLOR_TABLE_FORMAT_EXT = $80D8; GL_COLOR_TABLE_WIDTH_EXT = $80D9; GL_COLOR_TABLE_RED_SIZE_EXT = $80DA; GL_COLOR_TABLE_GREEN_SIZE_EXT = $80DB; GL_COLOR_TABLE_BLUE_SIZE_EXT = $80DC; GL_COLOR_TABLE_ALPHA_SIZE_EXT = $80DD; GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = $80DE; GL_COLOR_TABLE_INTENSITY_SIZE_EXT = $80DF; GL_TEXTURE_INDEX_SIZE_EXT = $80ED; GL_TEXTURE_1D = $0DE0; GL_TEXTURE_2D = $0DE1; GL_TEXTURE_3D_EXT = $806F; // GL_TEXTURE_CUBE_MAP_ARB { already defined } GL_PROXY_TEXTURE_1D = $8063; GL_PROXY_TEXTURE_2D = $8064; GL_PROXY_TEXTURE_3D_EXT = $8070; // GL_PROXY_TEXTURE_CUBE_MAP_ARB { already defined } // GL_TEXTURE_1D { already defined } // GL_TEXTURE_2D { already defined } // GL_TEXTURE_3D_EXT { already defined } // GL_TEXTURE_CUBE_MAP_ARB { already defined } procedure glColorTableEXT(target: GLenum; internalFormat: GLenum; width: GLsizei; format: GLenum; thetype: GLenum; const data: PGLvoid); external dllname; // glColorSubTableEXT { already defined } procedure glGetColorTableEXT(target: GLenum; format: GLenum; thetype: GLenum; data: PGLvoid); external dllname; procedure glGetColorTableParameterivEXT(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetColorTableParameterfvEXT(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; function Load_GL_EXT_paletted_texture: Boolean; //***** GL_EXT_point_parameters *****// const GL_POINT_SIZE_MIN_EXT = $8126; GL_POINT_SIZE_MAX_EXT = $8127; GL_POINT_FADE_THRESHOLD_SIZE_EXT = $8128; GL_DISTANCE_ATTENUATION_EXT = $8129; procedure glPointParameterfEXT(pname: GLenum; param: GLfloat); external dllname; procedure glPointParameterfvEXT(pname: GLenum; params: PGLfloat); external dllname; function Load_GL_EXT_point_parameters: Boolean; //***** GL_EXT_polygon_offset *****// const GL_POLYGON_OFFSET_EXT = $8037; GL_POLYGON_OFFSET_FACTOR_EXT = $8038; GL_POLYGON_OFFSET_BIAS_EXT = $8039; procedure glPolygonOffsetEXT(factor: GLfloat; bias: GLfloat); external dllname; function Load_GL_EXT_polygon_offset: Boolean; //***** GL_EXT_secondary_color *****// const GL_COLOR_SUM_EXT = $8458; GL_CURRENT_SECONDARY_COLOR_EXT = $8459; GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = $845A; GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = $845B; GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = $845C; GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = $845D; GL_SECONDARY_COLOR_ARRAY_EXT = $845E; procedure glSecondaryColor3bEXT(components: GLbyte); external dllname; procedure glSecondaryColor3sEXT(components: GLshort); external dllname; procedure glSecondaryColor3iEXT(components: GLint); external dllname; procedure glSecondaryColor3fEXT(components: GLfloat); external dllname; procedure glSecondaryColor3dEXT(components: GLdouble); external dllname; procedure glSecondaryColor3ubEXT(components: GLubyte); external dllname; procedure glSecondaryColor3usEXT(components: GLushort); external dllname; procedure glSecondaryColor3uiEXT(components: GLuint); external dllname; procedure glSecondaryColor3bvEXT(components: GLbyte); external dllname; procedure glSecondaryColor3svEXT(components: GLshort); external dllname; procedure glSecondaryColor3ivEXT(components: GLint); external dllname; procedure glSecondaryColor3fvEXT(components: GLfloat); external dllname; procedure glSecondaryColor3dvEXT(components: GLdouble); external dllname; procedure glSecondaryColor3ubvEXT(components: GLubyte); external dllname; procedure glSecondaryColor3usvEXT(components: GLushort); external dllname; procedure glSecondaryColor3uivEXT(components: GLuint); external dllname; procedure glSecondaryColorPointerEXT(size: GLint; thetype: GLenum; stride: GLsizei; pointer: PGLvoid); external dllname; function Load_GL_EXT_secondary_color: Boolean; //***** GL_EXT_separate_specular_color *****// const GL_LIGHT_MODEL_COLOR_CONTROL_EXT = $81F8; GL_SINGLE_COLOR_EXT = $81F9; GL_SEPARATE_SPECULAR_COLOR_EXT = $81FA; function Load_GL_EXT_separate_specular_color: Boolean; //***** GL_EXT_shadow_funcs *****// function Load_GL_EXT_shadow_funcs: Boolean; //***** GL_EXT_shared_texture_palette *****// const GL_SHARED_TEXTURE_PALETTE_EXT = $81FB; function Load_GL_EXT_shared_texture_palette: Boolean; //***** GL_EXT_stencil_two_side *****// const GL_STENCIL_TEST_TWO_SIDE_EXT = $8910; GL_ACTIVE_STENCIL_FACE_EXT = $8911; procedure glActiveStencilFaceEXT(face: GLenum); external dllname; function Load_GL_EXT_stencil_two_side: Boolean; //***** GL_EXT_stencil_wrap *****// const GL_INCR_WRAP_EXT = $8507; GL_DECR_WRAP_EXT = $8508; function Load_GL_EXT_stencil_wrap: Boolean; //***** GL_EXT_subtexture *****// procedure glTexSubImage1DEXT(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; thetype: GLenum; const pixels: PGLvoid); external dllname; procedure glTexSubImage2DEXT(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; thetype: GLenum; const pixels: PGLvoid); external dllname; procedure glTexSubImage3DEXT(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; thetype: GLenum; const pixels: PGLvoid); external dllname; function Load_GL_EXT_subtexture: Boolean; //***** GL_EXT_texture3D *****// const GL_PACK_SKIP_IMAGES_EXT = $806B; GL_PACK_IMAGE_HEIGHT_EXT = $806C; GL_UNPACK_SKIP_IMAGES_EXT = $806D; GL_UNPACK_IMAGE_HEIGHT_EXT = $806E; // GL_TEXTURE_3D_EXT { already defined } // GL_PROXY_TEXTURE_3D_EXT { already defined } GL_TEXTURE_DEPTH_EXT = $8071; GL_TEXTURE_WRAP_R_EXT = $8072; GL_MAX_3D_TEXTURE_SIZE_EXT = $8073; procedure glTexImage3DEXT(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; thetype: GLenum; const pixels: PGLvoid); external dllname; function Load_GL_EXT_texture3D: Boolean; //***** GL_EXT_texture_compression_s3tc *****// const GL_COMPRESSED_RGB_S3TC_DXT1_EXT = $83F0; GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = $83F1; GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = $83F2; GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = $83F3; function Load_GL_EXT_texture_compression_s3tc: Boolean; //***** GL_EXT_texture_env_add *****// function Load_GL_EXT_texture_env_add: Boolean; //***** GL_EXT_texture_env_combine *****// const GL_COMBINE_EXT = $8570; GL_COMBINE_RGB_EXT = $8571; GL_COMBINE_ALPHA_EXT = $8572; GL_SOURCE0_RGB_EXT = $8580; GL_SOURCE1_RGB_EXT = $8581; GL_SOURCE2_RGB_EXT = $8582; GL_SOURCE0_ALPHA_EXT = $8588; GL_SOURCE1_ALPHA_EXT = $8589; GL_SOURCE2_ALPHA_EXT = $858A; GL_OPERAND0_RGB_EXT = $8590; GL_OPERAND1_RGB_EXT = $8591; GL_OPERAND2_RGB_EXT = $8592; GL_OPERAND0_ALPHA_EXT = $8598; GL_OPERAND1_ALPHA_EXT = $8599; GL_OPERAND2_ALPHA_EXT = $859A; GL_RGB_SCALE_EXT = $8573; GL_ADD_SIGNED_EXT = $8574; GL_INTERPOLATE_EXT = $8575; GL_CONSTANT_EXT = $8576; GL_PRIMARY_COLOR_EXT = $8577; GL_PREVIOUS_EXT = $8578; function Load_GL_EXT_texture_env_combine: Boolean; //***** GL_EXT_texture_env_dot3 *****// const GL_DOT3_RGB_EXT = $8740; GL_DOT3_RGBA_EXT = $8741; function Load_GL_EXT_texture_env_dot3: Boolean; //***** GL_EXT_texture_filter_anisotropic *****// const GL_TEXTURE_MAX_ANISOTROPY_EXT = $84FE; GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = $84FF; function Load_GL_EXT_texture_filter_anisotropic: Boolean; //***** GL_EXT_texture_lod_bias *****// const GL_TEXTURE_FILTER_CONTROL_EXT = $8500; GL_TEXTURE_LOD_BIAS_EXT = $8501; GL_MAX_TEXTURE_LOD_BIAS_EXT = $84FD; function Load_GL_EXT_texture_lod_bias: Boolean; //***** GL_EXT_texture_object *****// const GL_TEXTURE_PRIORITY_EXT = $8066; GL_TEXTURE_RESIDENT_EXT = $8067; GL_TEXTURE_1D_BINDING_EXT = $8068; GL_TEXTURE_2D_BINDING_EXT = $8069; GL_TEXTURE_3D_BINDING_EXT = $806A; procedure glGenTexturesEXT(n: GLsizei; textures: PGLuint); external dllname; procedure glDeleteTexturesEXT(n: GLsizei; const textures: PGLuint); external dllname; procedure glBindTextureEXT(target: GLenum; texture: GLuint); external dllname; procedure glPrioritizeTexturesEXT(n: GLsizei; const textures: PGLuint; const priorities: PGLclampf); external dllname; function glAreTexturesResidentEXT(n: GLsizei; const textures: PGLuint; residences: PGLboolean): GLboolean; external dllname; function glIsTextureEXT(texture: GLuint): GLboolean; external dllname; function Load_GL_EXT_texture_object: Boolean; //***** GL_EXT_vertex_array *****// const GL_VERTEX_ARRAY_EXT = $8074; GL_NORMAL_ARRAY_EXT = $8075; GL_COLOR_ARRAY_EXT = $8076; GL_INDEX_ARRAY_EXT = $8077; GL_TEXTURE_COORD_ARRAY_EXT = $8078; GL_EDGE_FLAG_ARRAY_EXT = $8079; GL_DOUBLE_EXT = $140A; GL_VERTEX_ARRAY_SIZE_EXT = $807A; GL_VERTEX_ARRAY_TYPE_EXT = $807B; GL_VERTEX_ARRAY_STRIDE_EXT = $807C; GL_VERTEX_ARRAY_COUNT_EXT = $807D; GL_NORMAL_ARRAY_TYPE_EXT = $807E; GL_NORMAL_ARRAY_STRIDE_EXT = $807F; GL_NORMAL_ARRAY_COUNT_EXT = $8080; GL_COLOR_ARRAY_SIZE_EXT = $8081; GL_COLOR_ARRAY_TYPE_EXT = $8082; GL_COLOR_ARRAY_STRIDE_EXT = $8083; GL_COLOR_ARRAY_COUNT_EXT = $8084; GL_INDEX_ARRAY_TYPE_EXT = $8085; GL_INDEX_ARRAY_STRIDE_EXT = $8086; GL_INDEX_ARRAY_COUNT_EXT = $8087; GL_TEXTURE_COORD_ARRAY_SIZE_EXT = $8088; GL_TEXTURE_COORD_ARRAY_TYPE_EXT = $8089; GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = $808A; GL_TEXTURE_COORD_ARRAY_COUNT_EXT = $808B; GL_EDGE_FLAG_ARRAY_STRIDE_EXT = $808C; GL_EDGE_FLAG_ARRAY_COUNT_EXT = $808D; GL_VERTEX_ARRAY_POINTER_EXT = $808E; GL_NORMAL_ARRAY_POINTER_EXT = $808F; GL_COLOR_ARRAY_POINTER_EXT = $8090; GL_INDEX_ARRAY_POINTER_EXT = $8091; GL_TEXTURE_COORD_ARRAY_POINTER_EXT = $8092; GL_EDGE_FLAG_ARRAY_POINTER_EXT = $8093; procedure glArrayElementEXT(i: GLint); external dllname; procedure glDrawArraysEXT(mode: GLenum; first: GLint; count: GLsizei); external dllname; procedure glVertexPointerEXT(size: GLint; thetype: GLenum; stride: GLsizei; count: GLsizei; const pointer: PGLvoid); external dllname; procedure glNormalPointerEXT(thetype: GLenum; stride: GLsizei; count: GLsizei; const pointer: PGLvoid); external dllname; procedure glColorPointerEXT(size: GLint; thetype: GLenum; stride: GLsizei; count: GLsizei; const pointer: PGLvoid); external dllname; procedure glIndexPointerEXT(thetype: GLenum; stride: GLsizei; count: GLsizei; const pointer: PGLvoid); external dllname; procedure glTexCoordPointerEXT(size: GLint; thetype: GLenum; stride: GLsizei; count: GLsizei; const pointer: PGLvoid); external dllname; procedure glEdgeFlagPointerEXT(stride: GLsizei; count: GLsizei; const pointer: PGLboolean); external dllname; procedure glGetPointervEXT(pname: GLenum; params: PGLvoid); external dllname; function Load_GL_EXT_vertex_array: Boolean; //***** GL_EXT_vertex_shader *****// const GL_VERTEX_SHADER_EXT = $8780; GL_VARIANT_VALUE_EXT = $87E4; GL_VARIANT_DATATYPE_EXT = $87E5; GL_VARIANT_ARRAY_STRIDE_EXT = $87E6; GL_VARIANT_ARRAY_TYPE_EXT = $87E7; GL_VARIANT_ARRAY_EXT = $87E8; GL_VARIANT_ARRAY_POINTER_EXT = $87E9; GL_INVARIANT_VALUE_EXT = $87EA; GL_INVARIANT_DATATYPE_EXT = $87EB; GL_LOCAL_CONSTANT_VALUE_EXT = $87EC; GL_LOCAL_CONSTANT_DATATYPE_EXT = $87ED; GL_OP_INDEX_EXT = $8782; GL_OP_NEGATE_EXT = $8783; GL_OP_DOT3_EXT = $8784; GL_OP_DOT4_EXT = $8785; GL_OP_MUL_EXT = $8786; GL_OP_ADD_EXT = $8787; GL_OP_MADD_EXT = $8788; GL_OP_FRAC_EXT = $8789; GL_OP_MAX_EXT = $878A; GL_OP_MIN_EXT = $878B; GL_OP_SET_GE_EXT = $878C; GL_OP_SET_LT_EXT = $878D; GL_OP_CLAMP_EXT = $878E; GL_OP_FLOOR_EXT = $878F; GL_OP_ROUND_EXT = $8790; GL_OP_EXP_BASE_2_EXT = $8791; GL_OP_LOG_BASE_2_EXT = $8792; GL_OP_POWER_EXT = $8793; GL_OP_RECIP_EXT = $8794; GL_OP_RECIP_SQRT_EXT = $8795; GL_OP_SUB_EXT = $8796; GL_OP_CROSS_PRODUCT_EXT = $8797; GL_OP_MULTIPLY_MATRIX_EXT = $8798; GL_OP_MOV_EXT = $8799; GL_OUTPUT_VERTEX_EXT = $879A; GL_OUTPUT_COLOR0_EXT = $879B; GL_OUTPUT_COLOR1_EXT = $879C; GL_OUTPUT_TEXTURE_COORD0_EXT = $879D; GL_OUTPUT_TEXTURE_COORD1_EXT = $879E; GL_OUTPUT_TEXTURE_COORD2_EXT = $879F; GL_OUTPUT_TEXTURE_COORD3_EXT = $87A0; GL_OUTPUT_TEXTURE_COORD4_EXT = $87A1; GL_OUTPUT_TEXTURE_COORD5_EXT = $87A2; GL_OUTPUT_TEXTURE_COORD6_EXT = $87A3; GL_OUTPUT_TEXTURE_COORD7_EXT = $87A4; GL_OUTPUT_TEXTURE_COORD8_EXT = $87A5; GL_OUTPUT_TEXTURE_COORD9_EXT = $87A6; GL_OUTPUT_TEXTURE_COORD10_EXT = $87A7; GL_OUTPUT_TEXTURE_COORD11_EXT = $87A8; GL_OUTPUT_TEXTURE_COORD12_EXT = $87A9; GL_OUTPUT_TEXTURE_COORD13_EXT = $87AA; GL_OUTPUT_TEXTURE_COORD14_EXT = $87AB; GL_OUTPUT_TEXTURE_COORD15_EXT = $87AC; GL_OUTPUT_TEXTURE_COORD16_EXT = $87AD; GL_OUTPUT_TEXTURE_COORD17_EXT = $87AE; GL_OUTPUT_TEXTURE_COORD18_EXT = $87AF; GL_OUTPUT_TEXTURE_COORD19_EXT = $87B0; GL_OUTPUT_TEXTURE_COORD20_EXT = $87B1; GL_OUTPUT_TEXTURE_COORD21_EXT = $87B2; GL_OUTPUT_TEXTURE_COORD22_EXT = $87B3; GL_OUTPUT_TEXTURE_COORD23_EXT = $87B4; GL_OUTPUT_TEXTURE_COORD24_EXT = $87B5; GL_OUTPUT_TEXTURE_COORD25_EXT = $87B6; GL_OUTPUT_TEXTURE_COORD26_EXT = $87B7; GL_OUTPUT_TEXTURE_COORD27_EXT = $87B8; GL_OUTPUT_TEXTURE_COORD28_EXT = $87B9; GL_OUTPUT_TEXTURE_COORD29_EXT = $87BA; GL_OUTPUT_TEXTURE_COORD30_EXT = $87BB; GL_OUTPUT_TEXTURE_COORD31_EXT = $87BC; GL_OUTPUT_FOG_EXT = $87BD; GL_SCALAR_EXT = $87BE; GL_VECTOR_EXT = $87BF; GL_MATRIX_EXT = $87C0; GL_VARIANT_EXT = $87C1; GL_INVARIANT_EXT = $87C2; GL_LOCAL_CONSTANT_EXT = $87C3; GL_LOCAL_EXT = $87C4; GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = $87C5; GL_MAX_VERTEX_SHADER_VARIANTS_EXT = $87C6; GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = $87C7; GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = $87C8; GL_MAX_VERTEX_SHADER_LOCALS_EXT = $87C9; GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = $87CA; GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = $87CB; GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = $87CC; GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = $87CD; GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = $87CE; GL_VERTEX_SHADER_INSTRUCTIONS_EXT = $87CF; GL_VERTEX_SHADER_VARIANTS_EXT = $87D0; GL_VERTEX_SHADER_INVARIANTS_EXT = $87D1; GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = $87D2; GL_VERTEX_SHADER_LOCALS_EXT = $87D3; GL_VERTEX_SHADER_BINDING_EXT = $8781; GL_VERTEX_SHADER_OPTIMIZED_EXT = $87D4; GL_X_EXT = $87D5; GL_Y_EXT = $87D6; GL_Z_EXT = $87D7; GL_W_EXT = $87D8; GL_NEGATIVE_X_EXT = $87D9; GL_NEGATIVE_Y_EXT = $87DA; GL_NEGATIVE_Z_EXT = $87DB; GL_NEGATIVE_W_EXT = $87DC; GL_ZERO_EXT = $87DD; GL_ONE_EXT = $87DE; GL_NEGATIVE_ONE_EXT = $87DF; GL_NORMALIZED_RANGE_EXT = $87E0; GL_FULL_RANGE_EXT = $87E1; GL_CURRENT_VERTEX_EXT = $87E2; GL_MVP_MATRIX_EXT = $87E3; procedure glBeginVertexShaderEXT(); external dllname; procedure glEndVertexShaderEXT(); external dllname; procedure glBindVertexShaderEXT(id: GLuint); external dllname; function glGenVertexShadersEXT(range: GLuint): GLuint; external dllname; procedure glDeleteVertexShaderEXT(id: GLuint); external dllname; procedure glShaderOp1EXT(op: GLenum; res: GLuint; arg1: GLuint); external dllname; procedure glShaderOp2EXT(op: GLenum; res: GLuint; arg1: GLuint; arg2: GLuint); external dllname; procedure glShaderOp3EXT(op: GLenum; res: GLuint; arg1: GLuint; arg2: GLuint; arg3: GLuint); external dllname; procedure glSwizzleEXT(res: GLuint; theIn: GLuint; outX: GLenum; outY: GLenum; outZ: GLenum; outW: GLenum); external dllname; procedure glWriteMaskEXT(res: GLuint; theIn: GLuint; outX: GLenum; outY: GLenum; outZ: GLenum; outW: GLenum); external dllname; procedure glInsertComponentEXT(res: GLuint; src: GLuint; num: GLuint); external dllname; procedure glExtractComponentEXT(res: GLuint; src: GLuint; num: GLuint); external dllname; function glGenSymbolsEXT(datatype: GLenum; storagetype: GLenum; range: GLenum; components: GLuint): GLuint; external dllname; procedure glSetInvariantEXT(id: GLuint; thetype: GLenum; addr: PGLvoid); external dllname; procedure glSetLocalConstantEXT(id: GLuint; thetype: GLenum; addr: PGLvoid); external dllname; procedure glVariantbvEXT(id: GLuint; addr: PGLbyte); external dllname; procedure glVariantsvEXT(id: GLuint; addr: PGLshort); external dllname; procedure glVariantivEXT(id: GLuint; addr: PGLint); external dllname; procedure glVariantfvEXT(id: GLuint; addr: PGLfloat); external dllname; procedure glVariantdvEXT(id: GLuint; addr: PGLdouble); external dllname; procedure glVariantubvEXT(id: GLuint; addr: PGLubyte); external dllname; procedure glVariantusvEXT(id: GLuint; addr: PGLushort); external dllname; procedure glVariantuivEXT(id: GLuint; addr: PGLuint); external dllname; procedure glVariantPointerEXT(id: GLuint; thetype: GLenum; stride: GLuint; addr: PGLvoid); external dllname; procedure glEnableVariantClientStateEXT(id: GLuint); external dllname; procedure glDisableVariantClientStateEXT(id: GLuint); external dllname; function glBindLightParameterEXT(light: GLenum; value: GLenum): GLuint; external dllname; function glBindMaterialParameterEXT(face: GLenum; value: GLenum): GLuint; external dllname; function glBindTexGenParameterEXT(theunit: GLenum; coord: GLenum; value: GLenum): GLuint; external dllname; function glBindTextureUnitParameterEXT(theunit: GLenum; value: GLenum): GLuint; external dllname; function glBindParameterEXT(value: GLenum): GLuint; external dllname; function glIsVariantEnabledEXT(id: GLuint; cap: GLenum): GLboolean; external dllname; procedure glGetVariantBooleanvEXT(id: GLuint; value: GLenum; data: PGLboolean); external dllname; procedure glGetVariantIntegervEXT(id: GLuint; value: GLenum; data: PGLint); external dllname; procedure glGetVariantFloatvEXT(id: GLuint; value: GLenum; data: PGLfloat); external dllname; procedure glGetVariantPointervEXT(id: GLuint; value: GLenum; data: PGLvoid); external dllname; procedure glGetInvariantBooleanvEXT(id: GLuint; value: GLenum; data: PGLboolean); external dllname; procedure glGetInvariantIntegervEXT(id: GLuint; value: GLenum; data: PGLint); external dllname; procedure glGetInvariantFloatvEXT(id: GLuint; value: GLenum; data: PGLfloat); external dllname; procedure glGetLocalConstantBooleanvEXT(id: GLuint; value: GLenum; data: PGLboolean); external dllname; procedure glGetLocalConstantIntegervEXT(id: GLuint; value: GLenum; data: PGLint); external dllname; procedure glGetLocalConstantFloatvEXT(id: GLuint; value: GLenum; data: PGLfloat); external dllname; function Load_GL_EXT_vertex_shader: Boolean; //***** GL_EXT_vertex_weighting *****// const GL_VERTEX_WEIGHTING_EXT = $8509; GL_MODELVIEW0_EXT = $1700; GL_MODELVIEW1_EXT = $850A; GL_MODELVIEW0_MATRIX_EXT = $0BA6; GL_MODELVIEW1_MATRIX_EXT = $8506; GL_CURRENT_VERTEX_WEIGHT_EXT = $850B; GL_VERTEX_WEIGHT_ARRAY_EXT = $850C; GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = $850D; GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = $850E; GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = $850F; GL_MODELVIEW0_STACK_DEPTH_EXT = $0BA3; GL_MODELVIEW1_STACK_DEPTH_EXT = $8502; GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = $8510; procedure glVertexWeightfEXT(weight: GLfloat); external dllname; procedure glVertexWeightfvEXT(weight: PGLfloat); external dllname; procedure glVertexWeightPointerEXT(size: GLint; thetype: GLenum; stride: GLsizei; pointer: PGLvoid); external dllname; function Load_GL_EXT_vertex_weighting: Boolean; //***** GL_HP_occlusion_test *****// const GL_OCCLUSION_TEST_HP = $8165; GL_OCCLUSION_TEST_RESULT_HP = $8166; function Load_GL_HP_occlusion_test: Boolean; //***** GL_NV_blend_square *****// function Load_GL_NV_blend_square: Boolean; //***** GL_NV_copy_depth_to_color *****// const GL_DEPTH_STENCIL_TO_RGBA_NV = $886E; GL_DEPTH_STENCIL_TO_BGRA_NV = $886F; function Load_GL_NV_copy_depth_to_color: Boolean; //***** GL_NV_depth_clamp *****// const GL_DEPTH_CLAMP_NV = $864F; function Load_GL_NV_depth_clamp: Boolean; //***** GL_NV_evaluators *****// const GL_EVAL_2D_NV = $86C0; GL_EVAL_TRIANGULAR_2D_NV = $86C1; GL_MAP_TESSELLATION_NV = $86C2; GL_MAP_ATTRIB_U_ORDER_NV = $86C3; GL_MAP_ATTRIB_V_ORDER_NV = $86C4; GL_EVAL_FRACTIONAL_TESSELLATION_NV = $86C5; GL_EVAL_VERTEX_ATTRIB0_NV = $86C6; GL_EVAL_VERTEX_ATTRIB1_NV = $86C7; GL_EVAL_VERTEX_ATTRIB2_NV = $86C8; GL_EVAL_VERTEX_ATTRIB3_NV = $86C9; GL_EVAL_VERTEX_ATTRIB4_NV = $86CA; GL_EVAL_VERTEX_ATTRIB5_NV = $86CB; GL_EVAL_VERTEX_ATTRIB6_NV = $86CC; GL_EVAL_VERTEX_ATTRIB7_NV = $86CD; GL_EVAL_VERTEX_ATTRIB8_NV = $86CE; GL_EVAL_VERTEX_ATTRIB9_NV = $86CF; GL_EVAL_VERTEX_ATTRIB10_NV = $86D0; GL_EVAL_VERTEX_ATTRIB11_NV = $86D1; GL_EVAL_VERTEX_ATTRIB12_NV = $86D2; GL_EVAL_VERTEX_ATTRIB13_NV = $86D3; GL_EVAL_VERTEX_ATTRIB14_NV = $86D4; GL_EVAL_VERTEX_ATTRIB15_NV = $86D5; GL_MAX_MAP_TESSELLATION_NV = $86D6; GL_MAX_RATIONAL_EVAL_ORDER_NV = $86D7; procedure glMapControlPointsNV(target: GLenum; index: GLuint; thetype: GLenum; ustride: GLsizei; vstride: GLsizei; uorder: GLint; vorder: GLint; thepacked: GLboolean; const points: PGLvoid); external dllname; procedure glMapParameterivNV(target: GLenum; pname: GLenum; const params: PGLint); external dllname; procedure glMapParameterfvNV(target: GLenum; pname: GLenum; const params: PGLfloat); external dllname; procedure glGetMapControlPointsNV(target: GLenum; index: GLuint; thetype: GLenum; ustride: GLsizei; vstride: GLsizei; thepacked: GLboolean; points: PGLvoid); external dllname; procedure glGetMapParameterivNV(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetMapParameterfvNV(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetMapAttribParameterivNV(target: GLenum; index: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetMapAttribParameterfvNV(target: GLenum; index: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glEvalMapsNV(target: GLenum; mode: GLenum); external dllname; function Load_GL_NV_evaluators: Boolean; //***** GL_NV_fence *****// const GL_ALL_COMPLETED_NV = $84F2; GL_FENCE_STATUS_NV = $84F3; GL_FENCE_CONDITION_NV = $84F4; procedure glGenFencesNV(n: GLsizei; fences: PGLuint); external dllname; procedure glDeleteFencesNV(n: GLsizei; const fences: PGLuint); external dllname; procedure glSetFenceNV(fence: GLuint; condition: GLenum); external dllname; function glTestFenceNV(fence: GLuint): GLboolean; external dllname; procedure glFinishFenceNV(fence: GLuint); external dllname; function glIsFenceNV(fence: GLuint): GLboolean; external dllname; procedure glGetFenceivNV(fence: GLuint; pname: GLenum; params: PGLint); external dllname; function Load_GL_NV_fence: Boolean; //***** GL_NV_fog_distance *****// const GL_FOG_DISTANCE_MODE_NV = $855A; GL_EYE_RADIAL_NV = $855B; GL_EYE_PLANE_ABSOLUTE_NV = $855C; function Load_GL_NV_fog_distance: Boolean; //***** GL_NV_light_max_exponent *****// const GL_MAX_SHININESS_NV = $8504; GL_MAX_SPOT_EXPONENT_NV = $8505; function Load_GL_NV_light_max_exponent: Boolean; //***** GL_NV_multisample_filter_hint *****// const GL_MULTISAMPLE_FILTER_HINT_NV = $8534; function Load_GL_NV_multisample_filter_hint: Boolean; //***** GL_NV_occlusion_query *****// // GL_OCCLUSION_TEST_HP { already defined } // GL_OCCLUSION_TEST_RESULT_HP { already defined } const GL_PIXEL_COUNTER_BITS_NV = $8864; GL_CURRENT_OCCLUSION_QUERY_ID_NV = $8865; GL_PIXEL_COUNT_NV = $8866; GL_PIXEL_COUNT_AVAILABLE_NV = $8867; procedure glGenOcclusionQueriesNV(n: GLsizei; ids: PGLuint); external dllname; procedure glDeleteOcclusionQueriesNV(n: GLsizei; const ids: PGLuint); external dllname; function glIsOcclusionQueryNV(id: GLuint): GLboolean; external dllname; procedure glBeginOcclusionQueryNV(id: GLuint); external dllname; procedure glEndOcclusionQueryNV(); external dllname; procedure glGetOcclusionQueryivNV(id: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetOcclusionQueryuivNV(id: GLuint; pname: GLenum; params: PGLuint); external dllname; function Load_GL_NV_occlusion_query: Boolean; //***** GL_NV_packed_depth_stencil *****// const GL_DEPTH_STENCIL_NV = $84F9; GL_UNSIGNED_INT_24_8_NV = $84FA; function Load_GL_NV_packed_depth_stencil: Boolean; //***** GL_NV_point_sprite *****// const GL_POINT_SPRITE_NV = $8861; GL_COORD_REPLACE_NV = $8862; GL_POINT_SPRITE_R_MODE_NV = $8863; procedure glPointParameteriNV(pname: GLenum; param: GLint); external dllname; procedure glPointParameterivNV(pname: GLenum; const params: PGLint); external dllname; function Load_GL_NV_point_sprite: Boolean; //***** GL_NV_register_combiners *****// const GL_REGISTER_COMBINERS_NV = $8522; GL_COMBINER0_NV = $8550; GL_COMBINER1_NV = $8551; GL_COMBINER2_NV = $8552; GL_COMBINER3_NV = $8553; GL_COMBINER4_NV = $8554; GL_COMBINER5_NV = $8555; GL_COMBINER6_NV = $8556; GL_COMBINER7_NV = $8557; GL_VARIABLE_A_NV = $8523; GL_VARIABLE_B_NV = $8524; GL_VARIABLE_C_NV = $8525; GL_VARIABLE_D_NV = $8526; GL_VARIABLE_E_NV = $8527; GL_VARIABLE_F_NV = $8528; GL_VARIABLE_G_NV = $8529; GL_CONSTANT_COLOR0_NV = $852A; GL_CONSTANT_COLOR1_NV = $852B; GL_PRIMARY_COLOR_NV = $852C; GL_SECONDARY_COLOR_NV = $852D; GL_SPARE0_NV = $852E; GL_SPARE1_NV = $852F; GL_UNSIGNED_IDENTITY_NV = $8536; GL_UNSIGNED_INVERT_NV = $8537; GL_EXPAND_NORMAL_NV = $8538; GL_EXPAND_NEGATE_NV = $8539; GL_HALF_BIAS_NORMAL_NV = $853A; GL_HALF_BIAS_NEGATE_NV = $853B; GL_SIGNED_IDENTITY_NV = $853C; GL_SIGNED_NEGATE_NV = $853D; GL_E_TIMES_F_NV = $8531; GL_SPARE0_PLUS_SECONDARY_COLOR_NV = $8532; GL_SCALE_BY_TWO_NV = $853E; GL_SCALE_BY_FOUR_NV = $853F; GL_SCALE_BY_ONE_HALF_NV = $8540; GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = $8541; GL_DISCARD_NV = $8530; GL_COMBINER_INPUT_NV = $8542; GL_COMBINER_MAPPING_NV = $8543; GL_COMBINER_COMPONENT_USAGE_NV = $8544; GL_COMBINER_AB_DOT_PRODUCT_NV = $8545; GL_COMBINER_CD_DOT_PRODUCT_NV = $8546; GL_COMBINER_MUX_SUM_NV = $8547; GL_COMBINER_SCALE_NV = $8548; GL_COMBINER_BIAS_NV = $8549; GL_COMBINER_AB_OUTPUT_NV = $854A; GL_COMBINER_CD_OUTPUT_NV = $854B; GL_COMBINER_SUM_OUTPUT_NV = $854C; GL_NUM_GENERAL_COMBINERS_NV = $854E; GL_COLOR_SUM_CLAMP_NV = $854F; GL_MAX_GENERAL_COMBINERS_NV = $854D; procedure glCombinerParameterfvNV(pname: GLenum; const params: PGLfloat); external dllname; procedure glCombinerParameterivNV(pname: GLenum; const params: PGLint); external dllname; procedure glCombinerParameterfNV(pname: GLenum; param: GLfloat); external dllname; procedure glCombinerParameteriNV(pname: GLenum; param: GLint); external dllname; procedure glCombinerInputNV(stage: GLenum; portion: GLenum; variable: GLenum; input: GLenum; mapping: GLenum; componentUsage: GLenum); external dllname; procedure glCombinerOutputNV(stage: GLenum; portion: GLenum; abOutput: GLenum; cdOutput: GLenum; sumOutput: GLenum; scale: GLenum; bias: GLenum; abDotProduct: GLboolean; cdDotProduct: GLboolean; muxSum: GLboolean); external dllname; procedure glFinalCombinerInputNV(variable: GLenum; input: GLenum; mapping: GLenum; componentUsage: GLenum); external dllname; procedure glGetCombinerInputParameterfvNV(stage: GLenum; portion: GLenum; variable: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetCombinerInputParameterivNV(stage: GLenum; portion: GLenum; variable: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetCombinerOutputParameterfvNV(stage: GLenum; portion: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetCombinerOutputParameterivNV(stage: GLenum; portion: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetFinalCombinerInputParameterfvNV(variable: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetFinalCombinerInputParameterivNV(variable: GLenum; pname: GLenum; params: PGLint); external dllname; function Load_GL_NV_register_combiners: Boolean; //***** GL_NV_register_combiners2 *****// const GL_PER_STAGE_CONSTANTS_NV = $8535; procedure glCombinerStageParameterfvNV(stage: GLenum; pname: GLenum; const params: PGLfloat); external dllname; procedure glGetCombinerStageParameterfvNV(stage: GLenum; pname: GLenum; params: PGLfloat); external dllname; function Load_GL_NV_register_combiners2: Boolean; //***** GL_NV_texgen_emboss *****// const GL_EMBOSS_MAP_NV = $855F; GL_EMBOSS_LIGHT_NV = $855D; GL_EMBOSS_CONSTANT_NV = $855E; function Load_GL_NV_texgen_emboss: Boolean; //***** GL_NV_texgen_reflection *****// const GL_NORMAL_MAP_NV = $8511; GL_REFLECTION_MAP_NV = $8512; function Load_GL_NV_texgen_reflection: Boolean; //***** GL_NV_texture_compression_vtc *****// // GL_COMPRESSED_RGB_S3TC_DXT1_EXT { already defined } // GL_COMPRESSED_RGBA_S3TC_DXT1_EXT { already defined } // GL_COMPRESSED_RGBA_S3TC_DXT3_EXT { already defined } // GL_COMPRESSED_RGBA_S3TC_DXT5_EXT { already defined } function Load_GL_NV_texture_compression_vtc: Boolean; //***** GL_NV_texture_env_combine4 *****// const GL_COMBINE4_NV = $8503; GL_SOURCE3_RGB_NV = $8583; GL_SOURCE3_ALPHA_NV = $858B; GL_OPERAND3_RGB_NV = $8593; GL_OPERAND3_ALPHA_NV = $859B; function Load_GL_NV_texture_env_combine4: Boolean; //***** GL_NV_texture_rectangle *****// const GL_TEXTURE_RECTANGLE_NV = $84F5; GL_TEXTURE_BINDING_RECTANGLE_NV = $84F6; GL_PROXY_TEXTURE_RECTANGLE_NV = $84F7; GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = $84F8; function Load_GL_NV_texture_rectangle: Boolean; //***** GL_NV_texture_shader *****// const GL_TEXTURE_SHADER_NV = $86DE; GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = $86D9; GL_SHADER_OPERATION_NV = $86DF; GL_CULL_MODES_NV = $86E0; GL_OFFSET_TEXTURE_MATRIX_NV = $86E1; GL_OFFSET_TEXTURE_SCALE_NV = $86E2; GL_OFFSET_TEXTURE_BIAS_NV = $86E3; GL_PREVIOUS_TEXTURE_INPUT_NV = $86E4; GL_CONST_EYE_NV = $86E5; GL_SHADER_CONSISTENT_NV = $86DD; GL_PASS_THROUGH_NV = $86E6; GL_CULL_FRAGMENT_NV = $86E7; GL_OFFSET_TEXTURE_2D_NV = $86E8; GL_OFFSET_TEXTURE_RECTANGLE_NV = $864C; GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = $864D; GL_DEPENDENT_AR_TEXTURE_2D_NV = $86E9; GL_DEPENDENT_GB_TEXTURE_2D_NV = $86EA; GL_DOT_PRODUCT_NV = $86EC; GL_DOT_PRODUCT_DEPTH_REPLACE_NV = $86ED; GL_DOT_PRODUCT_TEXTURE_2D_NV = $86EE; GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = $864E; GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = $86F0; GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = $86F1; GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = $86F2; GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = $86F3; GL_HILO_NV = $86F4; GL_DSDT_NV = $86F5; GL_DSDT_MAG_NV = $86F6; GL_DSDT_MAG_VIB_NV = $86F7; GL_UNSIGNED_INT_S8_S8_8_8_NV = $86DA; GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = $86DB; GL_SIGNED_RGBA_NV = $86FB; GL_SIGNED_RGBA8_NV = $86FC; GL_SIGNED_RGB_NV = $86FE; GL_SIGNED_RGB8_NV = $86FF; GL_SIGNED_LUMINANCE_NV = $8701; GL_SIGNED_LUMINANCE8_NV = $8702; GL_SIGNED_LUMINANCE_ALPHA_NV = $8703; GL_SIGNED_LUMINANCE8_ALPHA8_NV = $8704; GL_SIGNED_ALPHA_NV = $8705; GL_SIGNED_ALPHA8_NV = $8706; GL_SIGNED_INTENSITY_NV = $8707; GL_SIGNED_INTENSITY8_NV = $8708; GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = $870C; GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = $870D; GL_HILO16_NV = $86F8; GL_SIGNED_HILO_NV = $86F9; GL_SIGNED_HILO16_NV = $86FA; GL_DSDT8_NV = $8709; GL_DSDT8_MAG8_NV = $870A; GL_DSDT_MAG_INTENSITY_NV = $86DC; GL_DSDT8_MAG8_INTENSITY8_NV = $870B; GL_HI_SCALE_NV = $870E; GL_LO_SCALE_NV = $870F; GL_DS_SCALE_NV = $8710; GL_DT_SCALE_NV = $8711; GL_MAGNITUDE_SCALE_NV = $8712; GL_VIBRANCE_SCALE_NV = $8713; GL_HI_BIAS_NV = $8714; GL_LO_BIAS_NV = $8715; GL_DS_BIAS_NV = $8716; GL_DT_BIAS_NV = $8717; GL_MAGNITUDE_BIAS_NV = $8718; GL_VIBRANCE_BIAS_NV = $8719; GL_TEXTURE_BORDER_VALUES_NV = $871A; GL_TEXTURE_HI_SIZE_NV = $871B; GL_TEXTURE_LO_SIZE_NV = $871C; GL_TEXTURE_DS_SIZE_NV = $871D; GL_TEXTURE_DT_SIZE_NV = $871E; GL_TEXTURE_MAG_SIZE_NV = $871F; function Load_GL_NV_texture_shader: Boolean; //***** GL_NV_texture_shader2 *****// const GL_DOT_PRODUCT_TEXTURE_3D_NV = $86EF; // GL_HILO_NV { already defined } // GL_DSDT_NV { already defined } // GL_DSDT_MAG_NV { already defined } // GL_DSDT_MAG_VIB_NV { already defined } // GL_UNSIGNED_INT_S8_S8_8_8_NV { already defined } // GL_UNSIGNED_INT_8_8_S8_S8_REV_NV { already defined } // GL_SIGNED_RGBA_NV { already defined } // GL_SIGNED_RGBA8_NV { already defined } // GL_SIGNED_RGB_NV { already defined } // GL_SIGNED_RGB8_NV { already defined } // GL_SIGNED_LUMINANCE_NV { already defined } // GL_SIGNED_LUMINANCE8_NV { already defined } // GL_SIGNED_LUMINANCE_ALPHA_NV { already defined } // GL_SIGNED_LUMINANCE8_ALPHA8_NV { already defined } // GL_SIGNED_ALPHA_NV { already defined } // GL_SIGNED_ALPHA8_NV { already defined } // GL_SIGNED_INTENSITY_NV { already defined } // GL_SIGNED_INTENSITY8_NV { already defined } // GL_SIGNED_RGB_UNSIGNED_ALPHA_NV { already defined } // GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV { already defined } // GL_HILO16_NV { already defined } // GL_SIGNED_HILO_NV { already defined } // GL_SIGNED_HILO16_NV { already defined } // GL_DSDT8_NV { already defined } // GL_DSDT8_MAG8_NV { already defined } // GL_DSDT_MAG_INTENSITY_NV { already defined } // GL_DSDT8_MAG8_INTENSITY8_NV { already defined } function Load_GL_NV_texture_shader2: Boolean; //***** GL_NV_texture_shader3 *****// const GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = $8850; GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = $8851; GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = $8852; GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = $8853; GL_OFFSET_HILO_TEXTURE_2D_NV = $8854; GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = $8855; GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = $8856; GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = $8857; GL_DEPENDENT_HILO_TEXTURE_2D_NV = $8858; GL_DEPENDENT_RGB_TEXTURE_3D_NV = $8859; GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = $885A; GL_DOT_PRODUCT_PASS_THROUGH_NV = $885B; GL_DOT_PRODUCT_TEXTURE_1D_NV = $885C; GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = $885D; GL_HILO8_NV = $885E; GL_SIGNED_HILO8_NV = $885F; GL_FORCE_BLUE_TO_ONE_NV = $8860; function Load_GL_NV_texture_shader3: Boolean; //***** GL_NV_vertex_array_range *****// const GL_VERTEX_ARRAY_RANGE_NV = $851D; GL_VERTEX_ARRAY_RANGE_LENGTH_NV = $851E; GL_VERTEX_ARRAY_RANGE_VALID_NV = $851F; GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = $8520; GL_VERTEX_ARRAY_RANGE_POINTER_NV = $8521; procedure glVertexArrayRangeNV(length: GLsizei; pointer: PGLvoid); external dllname; procedure glFlushVertexArrayRangeNV(); external dllname; function Load_GL_NV_vertex_array_range: Boolean; //***** GL_NV_vertex_array_range2 *****// const GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = $8533; function Load_GL_NV_vertex_array_range2: Boolean; //***** GL_NV_vertex_program *****// const GL_VERTEX_PROGRAM_NV = $8620; GL_VERTEX_PROGRAM_POINT_SIZE_NV = $8642; GL_VERTEX_PROGRAM_TWO_SIDE_NV = $8643; GL_VERTEX_STATE_PROGRAM_NV = $8621; GL_ATTRIB_ARRAY_SIZE_NV = $8623; GL_ATTRIB_ARRAY_STRIDE_NV = $8624; GL_ATTRIB_ARRAY_TYPE_NV = $8625; GL_CURRENT_ATTRIB_NV = $8626; GL_PROGRAM_PARAMETER_NV = $8644; GL_ATTRIB_ARRAY_POINTER_NV = $8645; GL_PROGRAM_TARGET_NV = $8646; GL_PROGRAM_LENGTH_NV = $8627; GL_PROGRAM_RESIDENT_NV = $8647; GL_PROGRAM_STRING_NV = $8628; GL_TRACK_MATRIX_NV = $8648; GL_TRACK_MATRIX_TRANSFORM_NV = $8649; GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = $862E; GL_MAX_TRACK_MATRICES_NV = $862F; GL_CURRENT_MATRIX_STACK_DEPTH_NV = $8640; GL_CURRENT_MATRIX_NV = $8641; GL_VERTEX_PROGRAM_BINDING_NV = $864A; GL_PROGRAM_ERROR_POSITION_NV = $864B; GL_MODELVIEW_PROJECTION_NV = $8629; GL_MATRIX0_NV = $8630; GL_MATRIX1_NV = $8631; GL_MATRIX2_NV = $8632; GL_MATRIX3_NV = $8633; GL_MATRIX4_NV = $8634; GL_MATRIX5_NV = $8635; GL_MATRIX6_NV = $8636; GL_MATRIX7_NV = $8637; GL_IDENTITY_NV = $862A; GL_INVERSE_NV = $862B; GL_TRANSPOSE_NV = $862C; GL_INVERSE_TRANSPOSE_NV = $862D; GL_VERTEX_ATTRIB_ARRAY0_NV = $8650; GL_VERTEX_ATTRIB_ARRAY1_NV = $8651; GL_VERTEX_ATTRIB_ARRAY2_NV = $8652; GL_VERTEX_ATTRIB_ARRAY3_NV = $8653; GL_VERTEX_ATTRIB_ARRAY4_NV = $8654; GL_VERTEX_ATTRIB_ARRAY5_NV = $8655; GL_VERTEX_ATTRIB_ARRAY6_NV = $8656; GL_VERTEX_ATTRIB_ARRAY7_NV = $8657; GL_VERTEX_ATTRIB_ARRAY8_NV = $8658; GL_VERTEX_ATTRIB_ARRAY9_NV = $8659; GL_VERTEX_ATTRIB_ARRAY10_NV = $865A; GL_VERTEX_ATTRIB_ARRAY11_NV = $865B; GL_VERTEX_ATTRIB_ARRAY12_NV = $865C; GL_VERTEX_ATTRIB_ARRAY13_NV = $865D; GL_VERTEX_ATTRIB_ARRAY14_NV = $865E; GL_VERTEX_ATTRIB_ARRAY15_NV = $865F; GL_MAP1_VERTEX_ATTRIB0_4_NV = $8660; GL_MAP1_VERTEX_ATTRIB1_4_NV = $8661; GL_MAP1_VERTEX_ATTRIB2_4_NV = $8662; GL_MAP1_VERTEX_ATTRIB3_4_NV = $8663; GL_MAP1_VERTEX_ATTRIB4_4_NV = $8664; GL_MAP1_VERTEX_ATTRIB5_4_NV = $8665; GL_MAP1_VERTEX_ATTRIB6_4_NV = $8666; GL_MAP1_VERTEX_ATTRIB7_4_NV = $8667; GL_MAP1_VERTEX_ATTRIB8_4_NV = $8668; GL_MAP1_VERTEX_ATTRIB9_4_NV = $8669; GL_MAP1_VERTEX_ATTRIB10_4_NV = $866A; GL_MAP1_VERTEX_ATTRIB11_4_NV = $866B; GL_MAP1_VERTEX_ATTRIB12_4_NV = $866C; GL_MAP1_VERTEX_ATTRIB13_4_NV = $866D; GL_MAP1_VERTEX_ATTRIB14_4_NV = $866E; GL_MAP1_VERTEX_ATTRIB15_4_NV = $866F; GL_MAP2_VERTEX_ATTRIB0_4_NV = $8670; GL_MAP2_VERTEX_ATTRIB1_4_NV = $8671; GL_MAP2_VERTEX_ATTRIB2_4_NV = $8672; GL_MAP2_VERTEX_ATTRIB3_4_NV = $8673; GL_MAP2_VERTEX_ATTRIB4_4_NV = $8674; GL_MAP2_VERTEX_ATTRIB5_4_NV = $8675; GL_MAP2_VERTEX_ATTRIB6_4_NV = $8676; GL_MAP2_VERTEX_ATTRIB7_4_NV = $8677; GL_MAP2_VERTEX_ATTRIB8_4_NV = $8678; GL_MAP2_VERTEX_ATTRIB9_4_NV = $8679; GL_MAP2_VERTEX_ATTRIB10_4_NV = $867A; GL_MAP2_VERTEX_ATTRIB11_4_NV = $867B; GL_MAP2_VERTEX_ATTRIB12_4_NV = $867C; GL_MAP2_VERTEX_ATTRIB13_4_NV = $867D; GL_MAP2_VERTEX_ATTRIB14_4_NV = $867E; GL_MAP2_VERTEX_ATTRIB15_4_NV = $867F; procedure glBindProgramNV(target: GLenum; id: GLuint); external dllname; procedure glDeleteProgramsNV(n: GLsizei; const ids: PGLuint); external dllname; procedure glExecuteProgramNV(target: GLenum; id: GLuint; const params: PGLfloat); external dllname; procedure glGenProgramsNV(n: GLsizei; ids: PGLuint); external dllname; function glAreProgramsResidentNV(n: GLsizei; const ids: PGLuint; residences: PGLboolean): GLboolean; external dllname; procedure glRequestResidentProgramsNV(n: GLsizei; ids: PGLuint); external dllname; procedure glGetProgramParameterfvNV(target: GLenum; index: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetProgramParameterdvNV(target: GLenum; index: GLuint; pname: GLenum; params: PGLdouble); external dllname; procedure glGetProgramivNV(id: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetProgramStringNV(id: GLuint; pname: GLenum; theProgram: PGLubyte); external dllname; procedure glGetTrackMatrixivNV(target: GLenum; address: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetVertexAttribdvNV(index: GLuint; pname: GLenum; params: PGLdouble); external dllname; procedure glGetVertexAttribfvNV(index: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetVertexAttribivNV(index: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetVertexAttribPointervNV(index: GLuint; pname: GLenum; pointer: PGLvoid); external dllname; function glIsProgramNV(id: GLuint): GLboolean; external dllname; procedure glLoadProgramNV(target: GLenum; id: GLuint; len: GLsizei; const theProgram: PGLubyte); external dllname; procedure glProgramParameter4fNV(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glProgramParameter4fvNV(target: GLenum; index: GLuint; const params: PGLfloat); external dllname; procedure glProgramParameters4dvNV(target: GLenum; index: GLuint; num: GLuint; const params: PGLdouble); external dllname; procedure glProgramParameters4fvNV(target: GLenum; index: GLuint; num: GLuint; const params: PGLfloat); external dllname; procedure glTrackMatrixNV(target: GLenum; address: GLuint; matrix: GLenum; transform: GLenum); external dllname; procedure glVertexAttribPointerNV(index: GLuint; size: GLint; thetype: GLenum; stride: GLsizei; const pointer: PGLvoid); external dllname; procedure glVertexAttrib1sNV(index: GLuint; x: GLshort); external dllname; procedure glVertexAttrib1fNV(index: GLuint; x: GLfloat); external dllname; procedure glVertexAttrib1dNV(index: GLuint; x: GLdouble); external dllname; procedure glVertexAttrib2sNV(index: GLuint; x: GLshort; y: GLshort); external dllname; procedure glVertexAttrib2fNV(index: GLuint; x: GLfloat; y: GLfloat); external dllname; procedure glVertexAttrib2dNV(index: GLuint; x: GLdouble; y: GLdouble); external dllname; procedure glVertexAttrib3sNV(index: GLuint; x: GLshort; y: GLshort; z: GLshort); external dllname; procedure glVertexAttrib3fNV(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glVertexAttrib3dNV(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); external dllname; procedure glVertexAttrib4sNV(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); external dllname; procedure glVertexAttrib4fNV(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glVertexAttrib4dNV(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glVertexAttrib4ubNV(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); external dllname; procedure glVertexAttrib1svNV(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib1fvNV(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib1dvNV(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib2svNV(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib2fvNV(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib2dvNV(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib3svNV(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib3fvNV(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib3dvNV(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib4svNV(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib4fvNV(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib4dvNV(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib4ubvNV(index: GLuint; const v: PGLubyte); external dllname; procedure glVertexAttribs1svNV(index: GLuint; n: GLsizei; const v: PGLshort); external dllname; procedure glVertexAttribs1fvNV(index: GLuint; n: GLsizei; const v: PGLfloat); external dllname; procedure glVertexAttribs1dvNV(index: GLuint; n: GLsizei; const v: PGLdouble); external dllname; procedure glVertexAttribs2svNV(index: GLuint; n: GLsizei; const v: PGLshort); external dllname; procedure glVertexAttribs2fvNV(index: GLuint; n: GLsizei; const v: PGLfloat); external dllname; procedure glVertexAttribs2dvNV(index: GLuint; n: GLsizei; const v: PGLdouble); external dllname; procedure glVertexAttribs3svNV(index: GLuint; n: GLsizei; const v: PGLshort); external dllname; procedure glVertexAttribs3fvNV(index: GLuint; n: GLsizei; const v: PGLfloat); external dllname; procedure glVertexAttribs3dvNV(index: GLuint; n: GLsizei; const v: PGLdouble); external dllname; procedure glVertexAttribs4svNV(index: GLuint; n: GLsizei; const v: PGLshort); external dllname; procedure glVertexAttribs4fvNV(index: GLuint; n: GLsizei; const v: PGLfloat); external dllname; procedure glVertexAttribs4dvNV(index: GLuint; n: GLsizei; const v: PGLdouble); external dllname; procedure glVertexAttribs4ubvNV(index: GLuint; n: GLsizei; const v: PGLubyte); external dllname; function Load_GL_NV_vertex_program: Boolean; //***** GL_NV_vertex_program1_1 *****// function Load_GL_NV_vertex_program1_1: Boolean; //***** GL_ATI_element_array *****// const GL_ELEMENT_ARRAY_ATI = $8768; GL_ELEMENT_ARRAY_TYPE_ATI = $8769; GL_ELEMENT_ARRAY_POINTER_ATI = $876A; procedure glElementPointerATI(thetype: GLenum; const pointer: PGLvoid); external dllname; procedure glDrawElementArrayATI(mode: GLenum; count: GLsizei); external dllname; procedure glDrawRangeElementArrayATI(mode: GLenum; start: GLuint; theend: GLuint; count: GLsizei); external dllname; function Load_GL_ATI_element_array: Boolean; //***** GL_ATI_envmap_bumpmap *****// const GL_BUMP_ROT_MATRIX_ATI = $8775; GL_BUMP_ROT_MATRIX_SIZE_ATI = $8776; GL_BUMP_NUM_TEX_UNITS_ATI = $8777; GL_BUMP_TEX_UNITS_ATI = $8778; GL_DUDV_ATI = $8779; GL_DU8DV8_ATI = $877A; GL_BUMP_ENVMAP_ATI = $877B; GL_BUMP_TARGET_ATI = $877C; procedure glTexBumpParameterivATI(pname: GLenum; param: PGLint); external dllname; procedure glTexBumpParameterfvATI(pname: GLenum; param: PGLfloat); external dllname; procedure glGetTexBumpParameterivATI(pname: GLenum; param: PGLint); external dllname; procedure glGetTexBumpParameterfvATI(pname: GLenum; param: PGLfloat); external dllname; function Load_GL_ATI_envmap_bumpmap: Boolean; //***** GL_ATI_fragment_shader *****// const GL_FRAGMENT_SHADER_ATI = $8920; GL_REG_0_ATI = $8921; GL_REG_1_ATI = $8922; GL_REG_2_ATI = $8923; GL_REG_3_ATI = $8924; GL_REG_4_ATI = $8925; GL_REG_5_ATI = $8926; GL_CON_0_ATI = $8941; GL_CON_1_ATI = $8942; GL_CON_2_ATI = $8943; GL_CON_3_ATI = $8944; GL_CON_4_ATI = $8945; GL_CON_5_ATI = $8946; GL_CON_6_ATI = $8947; GL_CON_7_ATI = $8948; GL_MOV_ATI = $8961; GL_ADD_ATI = $8963; GL_MUL_ATI = $8964; GL_SUB_ATI = $8965; GL_DOT3_ATI = $8966; GL_DOT4_ATI = $8967; GL_MAD_ATI = $8968; GL_LERP_ATI = $8969; GL_CND_ATI = $896A; GL_CND0_ATI = $896B; GL_DOT2_ADD_ATI = $896C; GL_SECONDARY_INTERPOLATOR_ATI = $896D; GL_SWIZZLE_STR_ATI = $8976; GL_SWIZZLE_STQ_ATI = $8977; GL_SWIZZLE_STR_DR_ATI = $8978; GL_SWIZZLE_STQ_DQ_ATI = $8979; GL_RED_BIT_ATI = $0001; GL_GREEN_BIT_ATI = $0002; GL_BLUE_BIT_ATI = $0004; GL_2X_BIT_ATI = $0001; GL_4X_BIT_ATI = $0002; GL_8X_BIT_ATI = $0004; GL_HALF_BIT_ATI = $0008; GL_QUARTER_BIT_ATI = $0010; GL_EIGHTH_BIT_ATI = $0020; GL_SATURATE_BIT_ATI = $0040; // GL_2X_BIT_ATI { already defined } GL_COMP_BIT_ATI = $0002; GL_NEGATE_BIT_ATI = $0004; GL_BIAS_BIT_ATI = $0008; function glGenFragmentShadersATI(range: GLuint): GLuint; external dllname; procedure glBindFragmentShaderATI(id: GLuint); external dllname; procedure glDeleteFragmentShaderATI(id: GLuint); external dllname; procedure glBeginFragmentShaderATI(); external dllname; procedure glEndFragmentShaderATI(); external dllname; procedure glPassTexCoordATI(dst: GLuint; coord: GLuint; swizzle: GLenum); external dllname; procedure glSampleMapATI(dst: GLuint; interp: GLuint; swizzle: GLenum); external dllname; procedure glColorFragmentOp1ATI(op: GLenum; dst: GLuint; dstMask: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint); external dllname; procedure glColorFragmentOp2ATI(op: GLenum; dst: GLuint; dstMask: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint); external dllname; procedure glColorFragmentOp3ATI(op: GLenum; dst: GLuint; dstMask: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint; arg3: GLuint; arg3Rep: GLuint; arg3Mod: GLuint); external dllname; procedure glAlphaFragmentOp1ATI(op: GLenum; dst: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint); external dllname; procedure glAlphaFragmentOp2ATI(op: GLenum; dst: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint); external dllname; procedure glAlphaFragmentOp3ATI(op: GLenum; dst: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint; arg3: GLuint; arg3Rep: GLuint; arg3Mod: GLuint); external dllname; procedure glSetFragmentShaderConstantATI(dst: GLuint; const value: PGLfloat); external dllname; function Load_GL_ATI_fragment_shader: Boolean; //***** GL_ATI_pn_triangles *****// const GL_PN_TRIANGLES_ATI = $87F0; GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = $87F1; GL_PN_TRIANGLES_POINT_MODE_ATI = $87F2; GL_PN_TRIANGLES_NORMAL_MODE_ATI = $87F3; GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = $87F4; GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = $87F5; GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = $87F6; GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = $87F7; GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = $87F8; procedure glPNTrianglesiATI(pname: GLenum; param: GLint); external dllname; procedure glPNTrianglesfATI(pname: GLenum; param: GLfloat); external dllname; function Load_GL_ATI_pn_triangles: Boolean; //***** GL_ATI_texture_mirror_once *****// const GL_MIRROR_CLAMP_ATI = $8742; GL_MIRROR_CLAMP_TO_EDGE_ATI = $8743; function Load_GL_ATI_texture_mirror_once: Boolean; //***** GL_ATI_vertex_array_object *****// const GL_STATIC_ATI = $8760; GL_DYNAMIC_ATI = $8761; GL_PRESERVE_ATI = $8762; GL_DISCARD_ATI = $8763; GL_OBJECT_BUFFER_SIZE_ATI = $8764; GL_OBJECT_BUFFER_USAGE_ATI = $8765; GL_ARRAY_OBJECT_BUFFER_ATI = $8766; GL_ARRAY_OBJECT_OFFSET_ATI = $8767; function glNewObjectBufferATI(size: GLsizei; const pointer: PGLvoid; usage: GLenum): GLuint; external dllname; function glIsObjectBufferATI(buffer: GLuint): GLboolean; external dllname; procedure glUpdateObjectBufferATI(buffer: GLuint; offset: GLuint; size: GLsizei; const pointer: PGLvoid; preserve: GLenum); external dllname; procedure glGetObjectBufferfvATI(buffer: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetObjectBufferivATI(buffer: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glDeleteObjectBufferATI(buffer: GLuint); external dllname; procedure glArrayObjectATI(thearray: GLenum; size: GLint; thetype: GLenum; stride: GLsizei; buffer: GLuint; offset: GLuint); external dllname; procedure glGetArrayObjectfvATI(thearray: GLenum; pname: GLenum; params: PGLfloat); external dllname; procedure glGetArrayObjectivATI(thearray: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glVariantArrayObjectATI(id: GLuint; thetype: GLenum; stride: GLsizei; buffer: GLuint; offset: GLuint); external dllname; procedure glGetVariantArrayObjectfvATI(id: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetVariantArrayObjectivATI(id: GLuint; pname: GLenum; params: PGLint); external dllname; function Load_GL_ATI_vertex_array_object: Boolean; //***** GL_ATI_vertex_streams *****// const GL_MAX_VERTEX_STREAMS_ATI = $876B; GL_VERTEX_STREAM0_ATI = $876C; GL_VERTEX_STREAM1_ATI = $876D; GL_VERTEX_STREAM2_ATI = $876E; GL_VERTEX_STREAM3_ATI = $876F; GL_VERTEX_STREAM4_ATI = $8770; GL_VERTEX_STREAM5_ATI = $8771; GL_VERTEX_STREAM6_ATI = $8772; GL_VERTEX_STREAM7_ATI = $8773; GL_VERTEX_SOURCE_ATI = $8774; procedure glVertexStream1s(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream1i(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream1f(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream1d(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream1sv(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream1iv(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream1fv(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream1dv(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream2s(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream2i(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream2f(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream2d(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream2sv(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream2iv(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream2fv(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream2dv(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream3s(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream3i(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream3f(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream3d(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream3sv(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream3iv(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream3fv(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream3dv(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream4s(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream4i(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream4f(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream4d(stream: GLenum; coords: GLdouble); external dllname; procedure glVertexStream4sv(stream: GLenum; coords: GLshort); external dllname; procedure glVertexStream4iv(stream: GLenum; coords: GLint); external dllname; procedure glVertexStream4fv(stream: GLenum; coords: GLfloat); external dllname; procedure glVertexStream4dv(stream: GLenum; coords: GLdouble); external dllname; procedure glNormalStream3b(stream: GLenum; coords: GLbyte); external dllname; procedure glNormalStream3s(stream: GLenum; coords: GLshort); external dllname; procedure glNormalStream3i(stream: GLenum; coords: GLint); external dllname; procedure glNormalStream3f(stream: GLenum; coords: GLfloat); external dllname; procedure glNormalStream3d(stream: GLenum; coords: GLdouble); external dllname; procedure glNormalStream3bv(stream: GLenum; coords: GLbyte); external dllname; procedure glNormalStream3sv(stream: GLenum; coords: GLshort); external dllname; procedure glNormalStream3iv(stream: GLenum; coords: GLint); external dllname; procedure glNormalStream3fv(stream: GLenum; coords: GLfloat); external dllname; procedure glNormalStream3dv(stream: GLenum; coords: GLdouble); external dllname; procedure glClientActiveVertexStream(stream: GLenum); external dllname; procedure glVertexBlendEnvi(pname: GLenum; param: GLint); external dllname; procedure glVertexBlendEnvf(pname: GLenum; param: GLfloat); external dllname; function Load_GL_ATI_vertex_streams: Boolean; //***** GL_3DFX_texture_compression_FXT1 *****// const GL_COMPRESSED_RGB_FXT1_3DFX = $86B0; GL_COMPRESSED_RGBA_FXT1_3DFX = $86B1; function Load_GL_3DFX_texture_compression_FXT1: Boolean; //***** GL_IBM_cull_vertex *****// const GL_CULL_VERTEX_IBM = $1928A; function Load_GL_IBM_cull_vertex: Boolean; //***** GL_IBM_multimode_draw_arrays *****// procedure glMultiModeDrawArraysIBM(mode: PGLenum; first: PGLint; count: PGLsizei; primcount: GLsizei; modestride: GLint); external dllname; procedure glMultiModeDrawElementsIBM(mode: PGLenum; count: PGLsizei; thetype: GLenum; const indices: PGLvoid; primcount: GLsizei; modestride: GLint); external dllname; function Load_GL_IBM_multimode_draw_arrays: Boolean; //***** GL_IBM_raster_pos_clip *****// const GL_RASTER_POSITION_UNCLIPPED_IBM = $19262; function Load_GL_IBM_raster_pos_clip: Boolean; //***** GL_IBM_texture_mirrored_repeat *****// const GL_MIRRORED_REPEAT_IBM = $8370; function Load_GL_IBM_texture_mirrored_repeat: Boolean; //***** GL_IBM_vertex_array_lists *****// const GL_VERTEX_ARRAY_LIST_IBM = $1929E; GL_NORMAL_ARRAY_LIST_IBM = $1929F; GL_COLOR_ARRAY_LIST_IBM = $192A0; GL_INDEX_ARRAY_LIST_IBM = $192A1; GL_TEXTURE_COORD_ARRAY_LIST_IBM = $192A2; GL_EDGE_FLAG_ARRAY_LIST_IBM = $192A3; GL_FOG_COORDINATE_ARRAY_LIST_IBM = $192A4; GL_SECONDARY_COLOR_ARRAY_LIST_IBM = $192A5; GL_VERTEX_ARRAY_LIST_STRIDE_IBM = $192A8; GL_NORMAL_ARRAY_LIST_STRIDE_IBM = $192A9; GL_COLOR_ARRAY_LIST_STRIDE_IBM = $192AA; GL_INDEX_ARRAY_LIST_STRIDE_IBM = $192AB; GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = $192AC; GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = $192AD; GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = $192AE; GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = $192AF; procedure glColorPointerListIBM(size: GLint; thetype: GLenum; stride: GLint; const pointer: PGLvoid; ptrstride: GLint); external dllname; procedure glSecondaryColorPointerListIBM(size: GLint; thetype: GLenum; stride: GLint; const pointer: PGLvoid; ptrstride: GLint); external dllname; procedure glEdgeFlagPointerListIBM(stride: GLint; const pointer: PGLboolean; ptrstride: GLint); external dllname; procedure glFogCoordPointerListIBM(thetype: GLenum; stride: GLint; const pointer: PGLvoid; ptrstride: GLint); external dllname; procedure glNormalPointerListIBM(thetype: GLenum; stride: GLint; const pointer: PGLvoid; ptrstride: GLint); external dllname; procedure glTexCoordPointerListIBM(size: GLint; thetype: GLenum; stride: GLint; const pointer: PGLvoid; ptrstride: GLint); external dllname; procedure glVertexPointerListIBM(size: GLint; thetype: GLenum; stride: GLint; const pointer: PGLvoid; ptrstride: GLint); external dllname; function Load_GL_IBM_vertex_array_lists: Boolean; //***** GL_MESA_resize_buffers *****// procedure glResizeBuffersMESA(); external dllname; function Load_GL_MESA_resize_buffers: Boolean; //***** GL_MESA_window_pos *****// procedure glWindowPos2dMESA(x: GLdouble; y: GLdouble); external dllname; procedure glWindowPos2fMESA(x: GLfloat; y: GLfloat); external dllname; procedure glWindowPos2iMESA(x: GLint; y: GLint); external dllname; procedure glWindowPos2sMESA(x: GLshort; y: GLshort); external dllname; procedure glWindowPos2ivMESA(const p: PGLint); external dllname; procedure glWindowPos2svMESA(const p: PGLshort); external dllname; procedure glWindowPos2fvMESA(const p: PGLfloat); external dllname; procedure glWindowPos2dvMESA(const p: PGLdouble); external dllname; procedure glWindowPos3iMESA(x: GLint; y: GLint; z: GLint); external dllname; procedure glWindowPos3sMESA(x: GLshort; y: GLshort; z: GLshort); external dllname; procedure glWindowPos3fMESA(x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glWindowPos3dMESA(x: GLdouble; y: GLdouble; z: GLdouble); external dllname; procedure glWindowPos3ivMESA(const p: PGLint); external dllname; procedure glWindowPos3svMESA(const p: PGLshort); external dllname; procedure glWindowPos3fvMESA(const p: PGLfloat); external dllname; procedure glWindowPos3dvMESA(const p: PGLdouble); external dllname; procedure glWindowPos4iMESA(x: GLint; y: GLint; z: GLint; w: GLint); external dllname; procedure glWindowPos4sMESA(x: GLshort; y: GLshort; z: GLshort; w: GLshort); external dllname; procedure glWindowPos4fMESA(x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glWindowPos4dMESA(x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glWindowPos4ivMESA(const p: PGLint); external dllname; procedure glWindowPos4svMESA(const p: PGLshort); external dllname; procedure glWindowPos4fvMESA(const p: PGLfloat); external dllname; procedure glWindowPos4dvMESA(const p: PGLdouble); external dllname; function Load_GL_MESA_window_pos: Boolean; //***** GL_OML_interlace *****// const GL_INTERLACE_OML = $8980; GL_INTERLACE_READ_OML = $8981; function Load_GL_OML_interlace: Boolean; //***** GL_OML_resample *****// const GL_PACK_RESAMPLE_OML = $8984; GL_UNPACK_RESAMPLE_OML = $8985; GL_RESAMPLE_REPLICATE_OML = $8986; GL_RESAMPLE_ZERO_FILL_OML = $8987; GL_RESAMPLE_AVERAGE_OML = $8988; GL_RESAMPLE_DECIMATE_OML = $8989; // GL_RESAMPLE_AVERAGE_OML { already defined } function Load_GL_OML_resample: Boolean; //***** GL_OML_subsample *****// const GL_FORMAT_SUBSAMPLE_24_24_OML = $8982; GL_FORMAT_SUBSAMPLE_244_244_OML = $8983; function Load_GL_OML_subsample: Boolean; //***** GL_SGIS_generate_mipmap *****// const GL_GENERATE_MIPMAP_SGIS = $8191; GL_GENERATE_MIPMAP_HINT_SGIS = $8192; function Load_GL_SGIS_generate_mipmap: Boolean; //***** GL_SGIS_multisample *****// const GLX_SAMPLE_BUFFERS_SGIS = $186A0; GLX_SAMPLES_SGIS = $186A1; GL_MULTISAMPLE_SGIS = $809D; GL_SAMPLE_ALPHA_TO_MASK_SGIS = $809E; GL_SAMPLE_ALPHA_TO_ONE_SGIS = $809F; GL_SAMPLE_MASK_SGIS = $80A0; GL_MULTISAMPLE_BIT_EXT = $20000000; GL_1PASS_SGIS = $80A1; GL_2PASS_0_SGIS = $80A2; GL_2PASS_1_SGIS = $80A3; GL_4PASS_0_SGIS = $80A4; GL_4PASS_1_SGIS = $80A5; GL_4PASS_2_SGIS = $80A6; GL_4PASS_3_SGIS = $80A7; GL_SAMPLE_BUFFERS_SGIS = $80A8; GL_SAMPLES_SGIS = $80A9; GL_SAMPLE_MASK_VALUE_SGIS = $80AA; GL_SAMPLE_MASK_INVERT_SGIS = $80AB; GL_SAMPLE_PATTERN_SGIS = $80AC; procedure glSampleMaskSGIS(value: GLclampf; invert: GLboolean); external dllname; procedure glSamplePatternSGIS(pattern: GLenum); external dllname; function Load_GL_SGIS_multisample: Boolean; //***** GL_SGIS_pixel_texture *****// const GL_PIXEL_TEXTURE_SGIS = $8353; GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = $8354; GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = $8355; GL_PIXEL_GROUP_COLOR_SGIS = $8356; procedure glPixelTexGenParameteriSGIS(pname: GLenum; param: GLint); external dllname; procedure glPixelTexGenParameterfSGIS(pname: GLenum; param: GLfloat); external dllname; procedure glGetPixelTexGenParameterivSGIS(pname: GLenum; params: GLint); external dllname; procedure glGetPixelTexGenParameterfvSGIS(pname: GLenum; params: GLfloat); external dllname; function Load_GL_SGIS_pixel_texture: Boolean; //***** GL_SGIS_texture_border_clamp *****// // GL_CLAMP_TO_BORDER_SGIS { already defined } function Load_GL_SGIS_texture_border_clamp: Boolean; //***** GL_SGIS_texture_color_mask *****// const GL_TEXTURE_COLOR_WRITEMASK_SGIS = $81EF; procedure glTextureColorMaskSGIS(r: GLboolean; g: GLboolean; b: GLboolean; a: GLboolean); external dllname; function Load_GL_SGIS_texture_color_mask: Boolean; //***** GL_SGIS_texture_edge_clamp *****// const GL_CLAMP_TO_EDGE_SGIS = $812F; function Load_GL_SGIS_texture_edge_clamp: Boolean; //***** GL_SGIS_texture_lod *****// const GL_TEXTURE_MIN_LOD_SGIS = $813A; GL_TEXTURE_MAX_LOD_SGIS = $813B; GL_TEXTURE_BASE_LEVEL_SGIS = $813C; GL_TEXTURE_MAX_LEVEL_SGIS = $813D; function Load_GL_SGIS_texture_lod: Boolean; //***** GL_SGIS_depth_texture *****// const GL_DEPTH_COMPONENT16_SGIX = $81A5; GL_DEPTH_COMPONENT24_SGIX = $81A6; GL_DEPTH_COMPONENT32_SGIX = $81A7; function Load_GL_SGIS_depth_texture: Boolean; //***** GL_SGIX_fog_offset *****// const GL_FOG_OFFSET_SGIX = $8198; GL_FOG_OFFSET_VALUE_SGIX = $8199; function Load_GL_SGIX_fog_offset: Boolean; //***** GL_SGIX_interlace *****// const GL_INTERLACE_SGIX = $8094; function Load_GL_SGIX_interlace: Boolean; //***** GL_SGIX_shadow_ambient *****// const GL_SHADOW_AMBIENT_SGIX = $80BF; function Load_GL_SGIX_shadow_ambient: Boolean; //***** GL_SGI_color_matrix *****// const GL_COLOR_MATRIX_SGI = $80B1; GL_COLOR_MATRIX_STACK_DEPTH_SGI = $80B2; GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = $80B3; GL_POST_COLOR_MATRIX_RED_SCALE_SGI = $80B4; GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = $80B5; GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = $80B6; GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = $80B7; GL_POST_COLOR_MATRIX_RED_BIAS_SGI = $80B8; GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = $80B9; GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = $80BA; GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = $80BB; function Load_GL_SGI_color_matrix: Boolean; //***** GL_SGI_color_table *****// const GL_COLOR_TABLE_SGI = $80D0; GL_POST_CONVOLUTION_COLOR_TABLE_SGI = $80D1; GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = $80D2; GL_PROXY_COLOR_TABLE_SGI = $80D3; GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = $80D4; GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = $80D5; GL_COLOR_TABLE_SCALE_SGI = $80D6; GL_COLOR_TABLE_BIAS_SGI = $80D7; GL_COLOR_TABLE_FORMAT_SGI = $80D8; GL_COLOR_TABLE_WIDTH_SGI = $80D9; GL_COLOR_TABLE_RED_SIZE_SGI = $80DA; GL_COLOR_TABLE_GREEN_SIZE_SGI = $80DB; GL_COLOR_TABLE_BLUE_SIZE_SGI = $80DC; GL_COLOR_TABLE_ALPHA_SIZE_SGI = $80DD; GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = $80DE; GL_COLOR_TABLE_INTENSITY_SIZE_SGI = $80DF; procedure glColorTableSGI(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; thetype: GLenum; const table: PGLvoid); external dllname; procedure glCopyColorTableSGI(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); external dllname; procedure glColorTableParameterivSGI(target: GLenum; pname: GLenum; const params: PGLint); external dllname; procedure glColorTableParameterfvSGI(target: GLenum; pname: GLenum; const params: PGLfloat); external dllname; procedure glGetColorTableSGI(target: GLenum; format: GLenum; thetype: GLenum; table: PGLvoid); external dllname; procedure glGetColorTableParameterivSGI(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetColorTableParameterfvSGI(target: GLenum; pname: GLenum; params: PGLfloat); external dllname; function Load_GL_SGI_color_table: Boolean; //***** GL_SGI_texture_color_table *****// const GL_TEXTURE_COLOR_TABLE_SGI = $80BC; GL_PROXY_TEXTURE_COLOR_TABLE_SGI = $80BD; function Load_GL_SGI_texture_color_table: Boolean; //***** GL_SUN_vertex *****// procedure glColor4ubVertex2fSUN(r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat); external dllname; procedure glColor4ubVertex2fvSUN(const c: PGLubyte; const v: PGLfloat); external dllname; procedure glColor4ubVertex3fSUN(r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glColor4ubVertex3fvSUN(const c: PGLubyte; const v: PGLfloat); external dllname; procedure glColor3fVertex3fSUN(r: GLfloat; g: GLfloat; b: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glColor3fVertex3fvSUN(const c: PGLfloat; const v: PGLfloat); external dllname; procedure glNormal3fVertex3fSUN(nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glNormal3fVertex3fvSUN(const n: PGLfloat; const v: PGLfloat); external dllname; procedure glColor4fNormal3fVertex3fSUN(r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glColor4fNormal3fVertex3fvSUN(const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glTexCoord2fVertex3fSUN(s: GLfloat; t: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glTexCoord2fVertex3fvSUN(const tc: PGLfloat; const v: PGLfloat); external dllname; procedure glTexCoord4fVertex4fSUN(s: GLfloat; t: GLfloat; p: GLfloat; q: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glTexCoord4fVertex4fvSUN(const tc: PGLfloat; const v: PGLfloat); external dllname; procedure glTexCoord2fColor4ubVertex3fSUN(s: GLfloat; t: GLfloat; r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glTexCoord2fColor4ubVertex3fvSUN(const tc: PGLfloat; const c: PGLubyte; const v: PGLfloat); external dllname; procedure glTexCoord2fColor3fVertex3fSUN(s: GLfloat; t: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glTexCoord2fColor3fVertex3fvSUN(const tc: PGLfloat; const c: PGLfloat; const v: PGLfloat); external dllname; procedure glTexCoord2fNormal3fVertex3fSUN(s: GLfloat; t: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glTexCoord2fNormal3fVertex3fvSUN(const tc: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glTexCoord2fColor4fNormal3fVertex3fSUN(s: GLfloat; t: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glTexCoord2fColor4fNormal3fVertex3fvSUN(const tc: PGLfloat; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glTexCoord4fColor4fNormal3fVertex4fSUN(s: GLfloat; t: GLfloat; p: GLfloat; q: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glTexCoord4fColor4fNormal3fVertex4fvSUN(const tc: PGLfloat; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glReplacementCodeuiVertex3fSUN(rc: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiVertex3fvSUN(const rc: PGLuint; const v: PGLfloat); external dllname; procedure glReplacementCodeuiColor4ubVertex3fSUN(rc: GLuint; r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiColor4ubVertex3fvSUN(const rc: PGLuint; const c: PGLubyte; const v: PGLfloat); external dllname; procedure glReplacementCodeuiColor3fVertex3fSUN(rc: GLuint; r: GLfloat; g: GLfloat; b: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiColor3fVertex3fvSUN(const rc: PGLuint; const c: PGLfloat; const v: PGLfloat); external dllname; procedure glReplacementCodeuiNormal3fVertex3fSUN(rc: GLuint; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiNormal3fVertex3fvSUN(const rc: PGLuint; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glReplacementCodeuiColor4fNormal3fVertex3fSUN(rc: GLuint; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiColor4fNormal3fVertex3fvSUN(const rc: PGLuint; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glReplacementCodeuiTexCoord2fVertex3fSUN(rc: GLuint; s: GLfloat; t: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiTexCoord2fVertex3fvSUN(const rc: PGLuint; const tc: PGLfloat; const v: PGLfloat); external dllname; procedure glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(rc: GLuint; s: GLfloat; t: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(const rc: PGLuint; const tc: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; procedure glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(rc: GLuint; s: GLfloat; t: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(const rc: PGLuint; const tc: PGLfloat; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); external dllname; function Load_GL_SUN_vertex: Boolean; //***** GL_ARB_fragment_program *****// const GL_FRAGMENT_PROGRAM_ARB = $8804; // GL_PROGRAM_FORMAT_ASCII_ARB { already defined } // GL_PROGRAM_LENGTH_ARB { already defined } // GL_PROGRAM_FORMAT_ARB { already defined } // GL_PROGRAM_BINDING_ARB { already defined } // GL_PROGRAM_INSTRUCTIONS_ARB { already defined } // GL_MAX_PROGRAM_INSTRUCTIONS_ARB { already defined } // GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB { already defined } // GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB { already defined } // GL_PROGRAM_TEMPORARIES_ARB { already defined } // GL_MAX_PROGRAM_TEMPORARIES_ARB { already defined } // GL_PROGRAM_NATIVE_TEMPORARIES_ARB { already defined } // GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB { already defined } // GL_PROGRAM_PARAMETERS_ARB { already defined } // GL_MAX_PROGRAM_PARAMETERS_ARB { already defined } // GL_PROGRAM_NATIVE_PARAMETERS_ARB { already defined } // GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB { already defined } // GL_PROGRAM_ATTRIBS_ARB { already defined } // GL_MAX_PROGRAM_ATTRIBS_ARB { already defined } // GL_PROGRAM_NATIVE_ATTRIBS_ARB { already defined } // GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB { already defined } // GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB { already defined } // GL_MAX_PROGRAM_ENV_PARAMETERS_ARB { already defined } // GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB { already defined } GL_PROGRAM_ALU_INSTRUCTIONS_ARB = $8805; GL_PROGRAM_TEX_INSTRUCTIONS_ARB = $8806; GL_PROGRAM_TEX_INDIRECTIONS_ARB = $8807; GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = $8808; GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = $8809; GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = $880A; GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = $880B; GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = $880C; GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = $880D; GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = $880E; GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = $880F; GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = $8810; // GL_PROGRAM_STRING_ARB { already defined } // GL_PROGRAM_ERROR_POSITION_ARB { already defined } // GL_CURRENT_MATRIX_ARB { already defined } // GL_TRANSPOSE_CURRENT_MATRIX_ARB { already defined } // GL_CURRENT_MATRIX_STACK_DEPTH_ARB { already defined } // GL_MAX_PROGRAM_MATRICES_ARB { already defined } // GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB { already defined } GL_MAX_TEXTURE_COORDS_ARB = $8871; GL_MAX_TEXTURE_IMAGE_UNITS_ARB = $8872; // GL_PROGRAM_ERROR_STRING_ARB { already defined } // GL_MATRIX0_ARB { already defined } // GL_MATRIX1_ARB { already defined } // GL_MATRIX2_ARB { already defined } // GL_MATRIX3_ARB { already defined } // GL_MATRIX4_ARB { already defined } // GL_MATRIX5_ARB { already defined } // GL_MATRIX6_ARB { already defined } // GL_MATRIX7_ARB { already defined } // GL_MATRIX8_ARB { already defined } // GL_MATRIX9_ARB { already defined } // GL_MATRIX10_ARB { already defined } // GL_MATRIX11_ARB { already defined } // GL_MATRIX12_ARB { already defined } // GL_MATRIX13_ARB { already defined } // GL_MATRIX14_ARB { already defined } // GL_MATRIX15_ARB { already defined } // GL_MATRIX16_ARB { already defined } // GL_MATRIX17_ARB { already defined } // GL_MATRIX18_ARB { already defined } // GL_MATRIX19_ARB { already defined } // GL_MATRIX20_ARB { already defined } // GL_MATRIX21_ARB { already defined } // GL_MATRIX22_ARB { already defined } // GL_MATRIX23_ARB { already defined } // GL_MATRIX24_ARB { already defined } // GL_MATRIX25_ARB { already defined } // GL_MATRIX26_ARB { already defined } // GL_MATRIX27_ARB { already defined } // GL_MATRIX28_ARB { already defined } // GL_MATRIX29_ARB { already defined } // GL_MATRIX30_ARB { already defined } // GL_MATRIX31_ARB { already defined } // glProgramStringARB { already defined } // glBindProgramARB { already defined } // glDeleteProgramsARB { already defined } // glGenProgramsARB { already defined } // glProgramEnvParameter4dARB { already defined } // glProgramEnvParameter4dvARB { already defined } // glProgramEnvParameter4fARB { already defined } // glProgramEnvParameter4fvARB { already defined } // glProgramLocalParameter4dARB { already defined } // glProgramLocalParameter4dvARB { already defined } // glProgramLocalParameter4fARB { already defined } // glProgramLocalParameter4fvARB { already defined } // glGetProgramEnvParameterdvARB { already defined } // glGetProgramEnvParameterfvARB { already defined } // glGetProgramLocalParameterdvARB { already defined } // glGetProgramLocalParameterfvARB { already defined } // glGetProgramivARB { already defined } // glGetProgramStringARB { already defined } // glIsProgramARB { already defined } function Load_GL_ARB_fragment_program: Boolean; {***** GL_ATI_text_fragment_shader *****} const GL_TEXT_FRAGMENT_SHADER_ATI = $8200; {***** GL_ARB_vertex_buffer_object *****} const GL_BUFFER_SIZE_ARB = $8764; GL_BUFFER_USAGE_ARB = $8765; GL_ARRAY_BUFFER_ARB = $8892; GL_ELEMENT_ARRAY_BUFFER_ARB = $8893; GL_ARRAY_BUFFER_BINDING_ARB = $8894; GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = $8895; GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = $8896; GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = $8897; GL_COLOR_ARRAY_BUFFER_BINDING_ARB = $8898; GL_INDEX_ARRAY_BUFFER_BINDING_ARB = $8899; GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = $889A; GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = $889B; GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = $889C; GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = $889D; GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = $889E; GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = $889F; GL_READ_ONLY_ARB = $88B8; GL_WRITE_ONLY_ARB = $88B9; GL_READ_WRITE_ARB = $88BA; GL_BUFFER_ACCESS_ARB = $88BB; GL_BUFFER_MAPPED_ARB = $88BC; GL_BUFFER_MAP_POINTER_ARB = $88BD; GL_STREAM_DRAW_ARB = $88E0; GL_STREAM_READ_ARB = $88E1; GL_STREAM_COPY_ARB = $88E2; GL_STATIC_DRAW_ARB = $88E4; GL_STATIC_READ_ARB = $88E5; GL_STATIC_COPY_ARB = $88E6; GL_DYNAMIC_DRAW_ARB = $88E8; GL_DYNAMIC_READ_ARB = $88E9; GL_DYNAMIC_COPY_ARB = $88EA; procedure glBindBufferARB(target : GLenum; buffer: GLuint); external dllname; procedure glDeleteBuffersARB(n : GLsizei; buffers : PGLuint); external dllname; procedure glGenBuffersARB(n : GLsizei; buffers : PGLuint); external dllname; function glIsBufferARB (buffer : GLuint) :GLboolean; external dllname; procedure glBufferDataARB(target : GLenum; size:GLsizei; data:PGLvoid;usage: GLenum); external dllname; procedure glBufferSubDataARB(target : GLenum; offset :GLint; size : GLsizei; data: PGLvoid); external dllname; procedure glGetBufferSubDataARB(target : GLenum; offset :GLint; size : GLsizei; data: PGLvoid); external dllname; function glMapBufferARB (target :GLenum; access: GLenum) : PGLvoid; external dllname; function glUnmapBufferARB (target :GLenum) :GLboolean; external dllname; procedure glGetBufferParameterivARB(target:GLenum; pname:GLenum; params:PGLint); external dllname; procedure glGetBufferPointervARB(target: GLenum; pname:GLenum; params: PPGLvoid); external dllname; function Load_GL_ARB_vertex_buffer_object: boolean; function Load_GL_ATI_text_fragment_shader: Boolean; //***** GL_APPLE_client_storage *****// const GL_UNPACK_CLIENT_STORAGE_APPLE = $85B2; function Load_GL_APPLE_client_storage: Boolean; //***** GL_APPLE_element_array *****// const GL_ELEMENT_ARRAY_APPLE = $8768; GL_ELEMENT_ARRAY_TYPE_APPLE = $8769; GL_ELEMENT_ARRAY_POINTER_APPLE = $876A; procedure glElementPointerAPPLE(thetype: GLenum; const pointer: PGLvoid); external dllname; procedure glDrawElementArrayAPPLE(mode: GLenum; first: GLint; count: GLsizei); external dllname; procedure glDrawRangeElementArrayAPPLE(mode: GLenum; start: GLuint; theend: GLuint; first: GLint; count: GLsizei); external dllname; procedure glMultiDrawElementArrayAPPLE(mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei); external dllname; procedure glMultiDrawRangeElementArrayAPPLE(mode: GLenum; start: GLuint; theend: GLuint; const first: PGLint; const count: PGLsizei; primcount: GLsizei); external dllname; function Load_GL_APPLE_element_array: Boolean; //***** GL_APPLE_fence *****// const GL_DRAW_PIXELS_APPLE = $8A0A; GL_FENCE_APPLE = $8A0B; procedure glGenFencesAPPLE(n: GLsizei; fences: PGLuint); external dllname; procedure glDeleteFencesAPPLE(n: GLsizei; const fences: PGLuint); external dllname; procedure glSetFenceAPPLE(fence: GLuint); external dllname; function glIsFenceAPPLE(fence: GLuint): GLboolean; external dllname; function glTestFenceAPPLE(fence: GLuint): GLboolean; external dllname; procedure glFinishFenceAPPLE(fence: GLuint); external dllname; function glTestObjectAPPLE(theobject: GLenum; name: GLuint): GLboolean; external dllname; procedure glFinishObjectAPPLE(theobject: GLenum; name: GLint); external dllname; function Load_GL_APPLE_fence: Boolean; //***** GL_APPLE_vertex_array_object *****// const GL_VERTEX_ARRAY_BINDING_APPLE = $85B5; procedure glBindVertexArrayAPPLE(thearray: GLuint); external dllname; procedure glDeleteVertexArraysAPPLE(n: GLsizei; const arrays: PGLuint); external dllname; procedure glGenVertexArraysAPPLE(n: GLsizei; const arrays: PGLuint); external dllname; function glIsVertexArrayAPPLE(thearray: GLuint): GLboolean; external dllname; function Load_GL_APPLE_vertex_array_object: Boolean; //***** GL_APPLE_vertex_array_range *****// const GL_VERTEX_ARRAY_RANGE_APPLE = $851D; GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = $851E; GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_APPLE = $8520; GL_VERTEX_ARRAY_RANGE_POINTER_APPLE = $8521; GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = $851F; GL_STORAGE_CACHED_APPLE = $85BE; GL_STORAGE_SHARED_APPLE = $85BF; procedure glVertexArrayRangeAPPLE(length: GLsizei; pointer: PGLvoid); external dllname; procedure glFlushVertexArrayRangeAPPLE(length: GLsizei; pointer: PGLvoid); external dllname; procedure glVertexArrayParameteriAPPLE(pname: GLenum; param: GLint); external dllname; function Load_GL_APPLE_vertex_array_range: Boolean; //***** GL_ARB_matrix_palette *****// const GL_MATRIX_PALETTE_ARB = $8840; GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = $8841; GL_MAX_PALETTE_MATRICES_ARB = $8842; GL_CURRENT_PALETTE_MATRIX_ARB = $8843; GL_MATRIX_INDEX_ARRAY_ARB = $8844; GL_CURRENT_MATRIX_INDEX_ARB = $8845; GL_MATRIX_INDEX_ARRAY_SIZE_ARB = $8846; GL_MATRIX_INDEX_ARRAY_TYPE_ARB = $8847; GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = $8848; GL_MATRIX_INDEX_ARRAY_POINTER_ARB = $8849; procedure glCurrentPaletteMatrixARB(index: GLint); external dllname; procedure glMatrixIndexubvARB(size: GLint; indices: PGLubyte); external dllname; procedure glMatrixIndexusvARB(size: GLint; indices: PGLushort); external dllname; procedure glMatrixIndexuivARB(size: GLint; indices: PGLuint); external dllname; procedure glMatrixIndexPointerARB(size: GLint; thetype: GLenum; stride: GLsizei; pointer: PGLvoid); external dllname; function Load_GL_ARB_matrix_palette: Boolean; //***** GL_NV_element_array *****// const GL_ELEMENT_ARRAY_TYPE_NV = $8769; GL_ELEMENT_ARRAY_POINTER_NV = $876A; procedure glElementPointerNV(thetype: GLenum; const pointer: PGLvoid); external dllname; procedure glDrawElementArrayNV(mode: GLenum; first: GLint; count: GLsizei); external dllname; procedure glDrawRangeElementArrayNV(mode: GLenum; start: GLuint; theend: GLuint; first: GLint; count: GLsizei); external dllname; procedure glMultiDrawElementArrayNV(mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei); external dllname; procedure glMultiDrawRangeElementArrayNV(mode: GLenum; start: GLuint; theend: GLuint; const first: PGLint; const count: PGLsizei; primcount: GLsizei); external dllname; function Load_GL_NV_element_array: Boolean; //***** GL_NV_float_buffer *****// const GL_FLOAT_R_NV = $8880; GL_FLOAT_RG_NV = $8881; GL_FLOAT_RGB_NV = $8882; GL_FLOAT_RGBA_NV = $8883; GL_FLOAT_R16_NV = $8884; GL_FLOAT_R32_NV = $8885; GL_FLOAT_RG16_NV = $8886; GL_FLOAT_RG32_NV = $8887; GL_FLOAT_RGB16_NV = $8888; GL_FLOAT_RGB32_NV = $8889; GL_FLOAT_RGBA16_NV = $888A; GL_FLOAT_RGBA32_NV = $888B; GL_TEXTURE_FLOAT_COMPONENTS_NV = $888C; GL_FLOAT_CLEAR_COLOR_VALUE_NV = $888D; GL_FLOAT_RGBA_MODE_NV = $888E; function Load_GL_NV_float_buffer: Boolean; //***** GL_NV_fragment_program *****// const GL_FRAGMENT_PROGRAM_NV = $8870; GL_MAX_TEXTURE_COORDS_NV = $8871; GL_MAX_TEXTURE_IMAGE_UNITS_NV = $8872; GL_FRAGMENT_PROGRAM_BINDING_NV = $8873; GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = $8868; GL_PROGRAM_ERROR_STRING_NV = $8874; procedure glProgramNamedParameter4fNV(id: GLuint; len: GLsizei; const name: PGLubyte; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glProgramNamedParameter4dNV(id: GLuint; len: GLsizei; const name: PGLubyte; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glGetProgramNamedParameterfvNV(id: GLuint; len: GLsizei; const name: PGLubyte; params: PGLfloat); external dllname; procedure glGetProgramNamedParameterdvNV(id: GLuint; len: GLsizei; const name: PGLubyte; params: PGLdouble); external dllname; // glProgramLocalParameter4dARB { already defined } // glProgramLocalParameter4dvARB { already defined } // glProgramLocalParameter4fARB { already defined } // glProgramLocalParameter4fvARB { already defined } // glGetProgramLocalParameterdvARB { already defined } // glGetProgramLocalParameterfvARB { already defined } function Load_GL_NV_fragment_program: Boolean; //***** GL_NV_primitive_restart *****// const GL_PRIMITIVE_RESTART_NV = $8558; GL_PRIMITIVE_RESTART_INDEX_NV = $8559; procedure glPrimitiveRestartNV(); external dllname; procedure glPrimitiveRestartIndexNV(index: GLuint); external dllname; function Load_GL_NV_primitive_restart: Boolean; //***** GL_NV_vertex_program2 *****// function Load_GL_NV_vertex_program2: Boolean; //***** GL_NV_pixel_data_range *****// const GL_WRITE_PIXEL_DATA_RANGE_NV = $8878; GL_READ_PIXEL_DATA_RANGE_NV = $8879; GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = $887A; GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = $887B; GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = $887C; GL_READ_PIXEL_DATA_RANGE_POINTER_NV = $887D; procedure glPixelDataRangeNV(target: GLenum; length: GLsizei; pointer: PGLvoid); external dllname; procedure glFlushPixelDataRangeNV(target: GLenum); external dllname; // wglAllocateMemoryNV { already defined } // wglFreeMemoryNV { already defined } function Load_GL_NV_pixel_data_range: Boolean; //***** GL_EXT_texture_rectangle *****// const GL_TEXTURE_RECTANGLE_EXT = $84F5; GL_TEXTURE_BINDING_RECTANGLE_EXT = $84F6; GL_PROXY_TEXTURE_RECTANGLE_EXT = $84F7; GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT = $84F8; function Load_GL_EXT_texture_rectangle: Boolean; //***** GL_S3_s3tc *****// const GL_RGB_S3TC = $83A0; GL_RGB4_S3TC = $83A1; GL_RGBA_S3TC = $83A2; GL_RGBA4_S3TC = $83A3; function Load_GL_S3_s3tc: Boolean; //***** GL_ATI_draw_buffers *****// const GL_MAX_DRAW_BUFFERS_ATI = $8824; GL_DRAW_BUFFER0_ATI = $8825; GL_DRAW_BUFFER1_ATI = $8826; GL_DRAW_BUFFER2_ATI = $8827; GL_DRAW_BUFFER3_ATI = $8828; GL_DRAW_BUFFER4_ATI = $8829; GL_DRAW_BUFFER5_ATI = $882A; GL_DRAW_BUFFER6_ATI = $882B; GL_DRAW_BUFFER7_ATI = $882C; GL_DRAW_BUFFER8_ATI = $882D; GL_DRAW_BUFFER9_ATI = $882E; GL_DRAW_BUFFER10_ATI = $882F; GL_DRAW_BUFFER11_ATI = $8830; GL_DRAW_BUFFER12_ATI = $8831; GL_DRAW_BUFFER13_ATI = $8832; GL_DRAW_BUFFER14_ATI = $8833; GL_DRAW_BUFFER15_ATI = $8834; procedure glDrawBuffersATI(n: GLsizei; const bufs: PGLenum); external dllname; function Load_GL_ATI_draw_buffers: Boolean; //***** GL_ATI_texture_env_combine3 *****// const GL_MODULATE_ADD_ATI = $8744; GL_MODULATE_SIGNED_ADD_ATI = $8745; GL_MODULATE_SUBTRACT_ATI = $8746; function Load_GL_ATI_texture_env_combine3: Boolean; //***** GL_ATI_texture_float *****// const GL_RGBA_FLOAT32_ATI = $8814; GL_RGB_FLOAT32_ATI = $8815; GL_ALPHA_FLOAT32_ATI = $8816; GL_INTENSITY_FLOAT32_ATI = $8817; GL_LUMINANCE_FLOAT32_ATI = $8818; GL_LUMINANCE_ALPHA_FLOAT32_ATI = $8819; GL_RGBA_FLOAT16_ATI = $881A; GL_RGB_FLOAT16_ATI = $881B; GL_ALPHA_FLOAT16_ATI = $881C; GL_INTENSITY_FLOAT16_ATI = $881D; GL_LUMINANCE_FLOAT16_ATI = $881E; GL_LUMINANCE_ALPHA_FLOAT16_ATI = $881F; function Load_GL_ATI_texture_float: Boolean; //***** GL_NV_texture_expand_normal *****// const GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = $888F; function Load_GL_NV_texture_expand_normal: Boolean; //***** GL_NV_half_float *****// const GL_HALF_FLOAT_NV = $140B; procedure glVertex2hNV(x: GLushort; y: GLushort); external dllname; procedure glVertex2hvNV(const v: PGLushort); external dllname; procedure glVertex3hNV(x: GLushort; y: GLushort; z: GLushort); external dllname; procedure glVertex3hvNV(const v: PGLushort); external dllname; procedure glVertex4hNV(x: GLushort; y: GLushort; z: GLushort; w: GLushort); external dllname; procedure glVertex4hvNV(const v: PGLushort); external dllname; procedure glNormal3hNV(nx: GLushort; ny: GLushort; nz: GLushort); external dllname; procedure glNormal3hvNV(const v: PGLushort); external dllname; procedure glColor3hNV(red: GLushort; green: GLushort; blue: GLushort); external dllname; procedure glColor3hvNV(const v: PGLushort); external dllname; procedure glColor4hNV(red: GLushort; green: GLushort; blue: GLushort; alpha: GLushort); external dllname; procedure glColor4hvNV(const v: PGLushort); external dllname; procedure glTexCoord1hNV(s: GLushort); external dllname; procedure glTexCoord1hvNV(const v: PGLushort); external dllname; procedure glTexCoord2hNV(s: GLushort; t: GLushort); external dllname; procedure glTexCoord2hvNV(const v: PGLushort); external dllname; procedure glTexCoord3hNV(s: GLushort; t: GLushort; r: GLushort); external dllname; procedure glTexCoord3hvNV(const v: PGLushort); external dllname; procedure glTexCoord4hNV(s: GLushort; t: GLushort; r: GLushort; q: GLushort); external dllname; procedure glTexCoord4hvNV(const v: PGLushort); external dllname; procedure glMultiTexCoord1hNV(target: GLenum; s: GLushort); external dllname; procedure glMultiTexCoord1hvNV(target: GLenum; const v: PGLushort); external dllname; procedure glMultiTexCoord2hNV(target: GLenum; s: GLushort; t: GLushort); external dllname; procedure glMultiTexCoord2hvNV(target: GLenum; const v: PGLushort); external dllname; procedure glMultiTexCoord3hNV(target: GLenum; s: GLushort; t: GLushort; r: GLushort); external dllname; procedure glMultiTexCoord3hvNV(target: GLenum; const v: PGLushort); external dllname; procedure glMultiTexCoord4hNV(target: GLenum; s: GLushort; t: GLushort; r: GLushort; q: GLushort); external dllname; procedure glMultiTexCoord4hvNV(target: GLenum; const v: PGLushort); external dllname; procedure glFogCoordhNV(fog: GLushort); external dllname; procedure glFogCoordhvNV(const fog: PGLushort); external dllname; procedure glSecondaryColor3hNV(red: GLushort; green: GLushort; blue: GLushort); external dllname; procedure glSecondaryColor3hvNV(const v: PGLushort); external dllname; procedure glVertexWeighthNV(weight: GLushort); external dllname; procedure glVertexWeighthvNV(const weight: PGLushort); external dllname; procedure glVertexAttrib1hNV(index: GLuint; x: GLushort); external dllname; procedure glVertexAttrib1hvNV(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttrib2hNV(index: GLuint; x: GLushort; y: GLushort); external dllname; procedure glVertexAttrib2hvNV(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttrib3hNV(index: GLuint; x: GLushort; y: GLushort; z: GLushort); external dllname; procedure glVertexAttrib3hvNV(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttrib4hNV(index: GLuint; x: GLushort; y: GLushort; z: GLushort; w: GLushort); external dllname; procedure glVertexAttrib4hvNV(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttribs1hvNV(index: GLuint; n: GLsizei; const v: PGLushort); external dllname; procedure glVertexAttribs2hvNV(index: GLuint; n: GLsizei; const v: PGLushort); external dllname; procedure glVertexAttribs3hvNV(index: GLuint; n: GLsizei; const v: PGLushort); external dllname; procedure glVertexAttribs4hvNV(index: GLuint; n: GLsizei; const v: PGLushort); external dllname; function Load_GL_NV_half_float: Boolean; //***** GL_ATI_map_object_buffer *****// function glMapObjectBufferATI(buffer: GLuint): PGLvoid; external dllname; procedure glUnmapObjectBufferATI(buffer: GLuint); external dllname; function Load_GL_ATI_map_object_buffer: Boolean; //***** GL_ATI_separate_stencil *****// const GL_KEEP = $1E00; GL_ZERO = $0000; GL_REPLACE = $1E01; GL_INCR = $1E02; GL_DECR = $1E03; GL_INVERT = $150A; GL_NEVER = $0200; GL_LESS = $0201; GL_LEQUAL = $0203; GL_GREATER = $0204; GL_GEQUAL = $0206; GL_EQUAL = $0202; GL_NOTEQUAL = $0205; GL_ALWAYS = $0207; GL_FRONT = $0404; GL_BACK = $0405; GL_FRONT_AND_BACK = $0408; GL_STENCIL_BACK_FUNC_ATI = $8800; GL_STENCIL_BACK_FAIL_ATI = $8801; GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = $8802; GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = $8803; procedure glStencilOpSeparateATI(face: GLenum; sfail: GLenum; dpfail: GLenum; dppass: GLenum); external dllname; procedure glStencilFuncSeparateATI(frontfunc: GLenum; backfunc: GLenum; ref: GLint; mask: GLuint); external dllname; function Load_GL_ATI_separate_stencil: Boolean; //***** GL_ATI_vertex_attrib_array_object *****// procedure glVertexAttribArrayObjectATI(index: GLuint; size: GLint; thetype: GLenum; normalized: GLboolean; stride: GLsizei; buffer: GLuint; offset: GLuint); external dllname; procedure glGetVertexAttribArrayObjectfvATI(index: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetVertexAttribArrayObjectivATI(index: GLuint; pname: GLenum; params: PGLint); external dllname; function Load_GL_ATI_vertex_attrib_array_object: Boolean; //***** GL_ARB_occlusion_query *****// const GL_SAMPLES_PASSED_ARB = $8914; GL_QUERY_COUNTER_BITS_ARB = $8864; GL_CURRENT_QUERY_ARB = $8865; GL_QUERY_RESULT_ARB = $8866; GL_QUERY_RESULT_AVAILABLE_ARB = $8867; procedure glGenQueriesARB(n: GLsizei; ids: PGLuint); external dllname; procedure glDeleteQueriesARB(n: GLsizei; const ids: PGLuint); external dllname; function glIsQueryARB(id: GLuint): GLboolean; external dllname; procedure glBeginQueryARB(target: GLenum; id: GLuint); external dllname; procedure glEndQueryARB(target: GLenum); external dllname; procedure glGetQueryivARB(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetQueryObjectivARB(id: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetQueryObjectuivARB(id: GLuint; pname: GLenum; params: PGLuint); external dllname; function Load_GL_ARB_occlusion_query: Boolean; //***** GL_ARB_shader_objects *****// const GL_PROGRAM_OBJECT_ARB = $8B40; GL_OBJECT_TYPE_ARB = $8B4E; GL_OBJECT_SUBTYPE_ARB = $8B4F; GL_OBJECT_DELETE_STATUS_ARB = $8B80; GL_OBJECT_COMPILE_STATUS_ARB = $8B81; GL_OBJECT_LINK_STATUS_ARB = $8B82; GL_OBJECT_VALIDATE_STATUS_ARB = $8B83; GL_OBJECT_INFO_LOG_LENGTH_ARB = $8B84; GL_OBJECT_ATTACHED_OBJECTS_ARB = $8B85; GL_OBJECT_ACTIVE_UNIFORMS_ARB = $8B86; GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = $8B87; GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = $8B88; GL_SHADER_OBJECT_ARB = $8B48; GL_FLOAT = $1406; GL_FLOAT_VEC2_ARB = $8B50; GL_FLOAT_VEC3_ARB = $8B51; GL_FLOAT_VEC4_ARB = $8B52; GL_INT = $1404; GL_INT_VEC2_ARB = $8B53; GL_INT_VEC3_ARB = $8B54; GL_INT_VEC4_ARB = $8B55; GL_BOOL_ARB = $8B56; GL_BOOL_VEC2_ARB = $8B57; GL_BOOL_VEC3_ARB = $8B58; GL_BOOL_VEC4_ARB = $8B59; GL_FLOAT_MAT2_ARB = $8B5A; GL_FLOAT_MAT3_ARB = $8B5B; GL_FLOAT_MAT4_ARB = $8B5C; procedure glDeleteObjectARB(obj: GLhandleARB); external dllname; function glGetHandleARB(pname: GLenum): GLhandleARB; external dllname; procedure glDetachObjectARB(containerObj: GLhandleARB; attachedObj: GLhandleARB); external dllname; function glCreateShaderObjectARB(shaderType: GLenum): GLhandleARB; external dllname; procedure glShaderSourceARB(shaderObj: GLhandleARB; count: GLsizei; const str: PGLvoid; const length: PGLint); external dllname; procedure glCompileShaderARB(shaderObj: GLhandleARB); external dllname; function glCreateProgramObjectARB(): GLhandleARB; external dllname; procedure glAttachObjectARB(containerObj: GLhandleARB; obj: GLhandleARB); external dllname; procedure glLinkProgramARB(programObj: GLhandleARB); external dllname; procedure glUseProgramObjectARB(programObj: GLhandleARB); external dllname; procedure glValidateProgramARB(programObj: GLhandleARB); external dllname; procedure glUniform1fARB(location: GLint; v0: GLfloat); external dllname; procedure glUniform2fARB(location: GLint; v0: GLfloat; v1: GLfloat); external dllname; procedure glUniform3fARB(location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat); external dllname; procedure glUniform4fARB(location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat; v3: GLfloat); external dllname; procedure glUniform1iARB(location: GLint; v0: GLint); external dllname; procedure glUniform2iARB(location: GLint; v0: GLint; v1: GLint); external dllname; procedure glUniform3iARB(location: GLint; v0: GLint; v1: GLint; v2: GLint); external dllname; procedure glUniform4iARB(location: GLint; v0: GLint; v1: GLint; v2: GLint; v3: GLint); external dllname; procedure glUniform1fvARB(location: GLint; count: GLsizei; value: PGLfloat); external dllname; procedure glUniform2fvARB(location: GLint; count: GLsizei; value: PGLfloat); external dllname; procedure glUniform3fvARB(location: GLint; count: GLsizei; value: PGLfloat); external dllname; procedure glUniform4fvARB(location: GLint; count: GLsizei; value: PGLfloat); external dllname; procedure glUniform1ivARB(location: GLint; count: GLsizei; value: PGLint); external dllname; procedure glUniform2ivARB(location: GLint; count: GLsizei; value: PGLint); external dllname; procedure glUniform3ivARB(location: GLint; count: GLsizei; value: PGLint); external dllname; procedure glUniform4ivARB(location: GLint; count: GLsizei; value: PGLint); external dllname; procedure glUniformMatrix2fvARB(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); external dllname; procedure glUniformMatrix3fvARB(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); external dllname; procedure glUniformMatrix4fvARB(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); external dllname; procedure glGetObjectParameterfvARB(obj: GLhandleARB; pname: GLenum; params: PGLfloat); external dllname; procedure glGetObjectParameterivARB(obj: GLhandleARB; pname: GLenum; params: PGLint); external dllname; procedure glGetInfoLogARB(obj: GLhandleARB; maxLength: GLsizei; length: PGLsizei; infoLog: PGLcharARB); external dllname; procedure glGetAttachedObjectsARB(containerObj: GLhandleARB; maxCount: GLsizei; count: PGLsizei; obj: PGLhandleARB); external dllname; function glGetUniformLocationARB(programObj: GLhandleARB; const name: PGLcharARB): GLint; external dllname; procedure glGetActiveUniformARB(programObj: GLhandleARB; index: GLuint; maxLength: GLsizei; length: PGLsizei; size: PGLint; thetype: PGLenum; name: PGLcharARB); external dllname; procedure glGetUniformfvARB(programObj: GLhandleARB; location: GLint; params: PGLfloat); external dllname; procedure glGetUniformivARB(programObj: GLhandleARB; location: GLint; params: PGLint); external dllname; procedure glGetShaderSourceARB(obj: GLhandleARB; maxLength: GLsizei; length: PGLsizei; source: PGLcharARB); external dllname; function Load_GL_ARB_shader_objects: Boolean; //***** GL_ARB_vertex_shader *****// const GL_VERTEX_SHADER_ARB = $8B31; GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = $8B4A; GL_MAX_VARYING_FLOATS_ARB = $8B4B; // GL_MAX_VERTEX_ATTRIBS_ARB { already defined } // GL_MAX_TEXTURE_IMAGE_UNITS_ARB { already defined } GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = $8B4C; GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = $8B4D; // GL_MAX_TEXTURE_COORDS_ARB { already defined } // GL_VERTEX_PROGRAM_POINT_SIZE_ARB { already defined } // GL_VERTEX_PROGRAM_TWO_SIDE_ARB { already defined } // GL_OBJECT_TYPE_ARB { already defined } // GL_OBJECT_SUBTYPE_ARB { already defined } GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = $8B89; GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = $8B8A; // GL_SHADER_OBJECT_ARB { already defined } // GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB { already defined } // GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB { already defined } // GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB { already defined } // GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB { already defined } // GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB { already defined } // GL_CURRENT_VERTEX_ATTRIB_ARB { already defined } // GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB { already defined } // GL_FLOAT { already defined } // GL_FLOAT_VEC2_ARB { already defined } // GL_FLOAT_VEC3_ARB { already defined } // GL_FLOAT_VEC4_ARB { already defined } // GL_FLOAT_MAT2_ARB { already defined } // GL_FLOAT_MAT3_ARB { already defined } // GL_FLOAT_MAT4_ARB { already defined } // glVertexAttrib1fARB { already defined } // glVertexAttrib1sARB { already defined } // glVertexAttrib1dARB { already defined } // glVertexAttrib2fARB { already defined } // glVertexAttrib2sARB { already defined } // glVertexAttrib2dARB { already defined } // glVertexAttrib3fARB { already defined } // glVertexAttrib3sARB { already defined } // glVertexAttrib3dARB { already defined } // glVertexAttrib4fARB { already defined } // glVertexAttrib4sARB { already defined } // glVertexAttrib4dARB { already defined } // glVertexAttrib4NubARB { already defined } // glVertexAttrib1fvARB { already defined } // glVertexAttrib1svARB { already defined } // glVertexAttrib1dvARB { already defined } // glVertexAttrib2fvARB { already defined } // glVertexAttrib2svARB { already defined } // glVertexAttrib2dvARB { already defined } // glVertexAttrib3fvARB { already defined } // glVertexAttrib3svARB { already defined } // glVertexAttrib3dvARB { already defined } // glVertexAttrib4fvARB { already defined } // glVertexAttrib4svARB { already defined } // glVertexAttrib4dvARB { already defined } // glVertexAttrib4ivARB { already defined } // glVertexAttrib4bvARB { already defined } // glVertexAttrib4ubvARB { already defined } // glVertexAttrib4usvARB { already defined } // glVertexAttrib4uivARB { already defined } // glVertexAttrib4NbvARB { already defined } // glVertexAttrib4NsvARB { already defined } // glVertexAttrib4NivARB { already defined } // glVertexAttrib4NubvARB { already defined } // glVertexAttrib4NusvARB { already defined } // glVertexAttrib4NuivARB { already defined } // glVertexAttribPointerARB { already defined } // glEnableVertexAttribArrayARB { already defined } // glDisableVertexAttribArrayARB { already defined } procedure glBindAttribLocationARB(programObj: GLhandleARB; index: GLuint; const name: PGLcharARB); external dllname; procedure glGetActiveAttribARB(programObj: GLhandleARB; index: GLuint; maxLength: GLsizei; length: PGLsizei; size: PGLint; thetype: PGLenum; name: PGLcharARB); external dllname; function glGetAttribLocationARB(programObj: GLhandleARB; const name: PGLcharARB): GLint; external dllname; // glGetVertexAttribdvARB { already defined } // glGetVertexAttribfvARB { already defined } // glGetVertexAttribivARB { already defined } // glGetVertexAttribPointervARB { already defined } function Load_GL_ARB_vertex_shader: Boolean; //***** GL_ARB_fragment_shader *****// const GL_FRAGMENT_SHADER_ARB = $8B30; GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = $8B49; // GL_MAX_TEXTURE_COORDS_ARB { already defined } // GL_MAX_TEXTURE_IMAGE_UNITS_ARB { already defined } // GL_OBJECT_TYPE_ARB { already defined } // GL_OBJECT_SUBTYPE_ARB { already defined } // GL_SHADER_OBJECT_ARB { already defined } function Load_GL_ARB_fragment_shader: Boolean; //***** GL_ARB_shading_language_100 *****// function Load_GL_ARB_shading_language_100: Boolean; //***** GL_ARB_texture_non_power_of_two *****// function Load_GL_ARB_texture_non_power_of_two: Boolean; //***** GL_ARB_point_sprite *****// const GL_POINT_SPRITE_ARB = $8861; GL_COORD_REPLACE_ARB = $8862; function Load_GL_ARB_point_sprite: Boolean; //***** GL_EXT_depth_bounds_test *****// const GL_DEPTH_BOUNDS_TEST_EXT = $8890; GL_DEPTH_BOUNDS_EXT = $8891; procedure glDepthBoundsEXT(zmin: GLclampd; zmax: GLclampd); external dllname; function Load_GL_EXT_depth_bounds_test: Boolean; //***** GL_EXT_texture_mirror_clamp *****// const GL_MIRROR_CLAMP_EXT = $8742; GL_MIRROR_CLAMP_TO_EDGE_EXT = $8743; GL_MIRROR_CLAMP_TO_BORDER_EXT = $8912; function Load_GL_EXT_texture_mirror_clamp: Boolean; //***** GL_EXT_blend_equation_separate *****// const GL_BLEND_EQUATION_RGB_EXT = $8009; GL_BLEND_EQUATION_ALPHA_EXT = $883D; procedure glBlendEquationSeparateEXT(modeRGB: GLenum; modeAlpha: GLenum); external dllname; function Load_GL_EXT_blend_equation_separate: Boolean; //***** GL_MESA_pack_invert *****// const GL_PACK_INVERT_MESA = $8758; function Load_GL_MESA_pack_invert: Boolean; //***** GL_MESA_ycbcr_texture *****// const GL_YCBCR_MESA = $8757; GL_UNSIGNED_SHORT_8_8_MESA = $85BA; GL_UNSIGNED_SHORT_8_8_REV_MESA = $85BB; function Load_GL_MESA_ycbcr_texture: Boolean; //***** GL_ARB_fragment_program_shadow *****// function Load_GL_ARB_fragment_program_shadow: Boolean; //***** GL_NV_fragment_program_option *****// function Load_GL_NV_fragment_program_option: Boolean; //***** GL_EXT_pixel_buffer_object *****// const GL_PIXEL_PACK_BUFFER_EXT = $88EB; GL_PIXEL_UNPACK_BUFFER_EXT = $88EC; GL_PIXEL_PACK_BUFFER_BINDING_EXT = $88ED; GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = $88EF; function Load_GL_EXT_pixel_buffer_object: Boolean; //***** GL_NV_fragment_program2 *****// const GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = $88F4; GL_MAX_PROGRAM_CALL_DEPTH_NV = $88F5; GL_MAX_PROGRAM_IF_DEPTH_NV = $88F6; GL_MAX_PROGRAM_LOOP_DEPTH_NV = $88F7; GL_MAX_PROGRAM_LOOP_COUNT_NV = $88F8; function Load_GL_NV_fragment_program2: Boolean; //***** GL_NV_vertex_program2_option *****// // GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV { already defined } // GL_MAX_PROGRAM_CALL_DEPTH_NV { already defined } function Load_GL_NV_vertex_program2_option: Boolean; //***** GL_NV_vertex_program3 *****// // GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB { already defined } function Load_GL_NV_vertex_program3: Boolean; //***** GL_ARB_draw_buffers *****// const GL_MAX_DRAW_BUFFERS_ARB = $8824; GL_DRAW_BUFFER0_ARB = $8825; GL_DRAW_BUFFER1_ARB = $8826; GL_DRAW_BUFFER2_ARB = $8827; GL_DRAW_BUFFER3_ARB = $8828; GL_DRAW_BUFFER4_ARB = $8829; GL_DRAW_BUFFER5_ARB = $882A; GL_DRAW_BUFFER6_ARB = $882B; GL_DRAW_BUFFER7_ARB = $882C; GL_DRAW_BUFFER8_ARB = $882D; GL_DRAW_BUFFER9_ARB = $882E; GL_DRAW_BUFFER10_ARB = $882F; GL_DRAW_BUFFER11_ARB = $8830; GL_DRAW_BUFFER12_ARB = $8831; GL_DRAW_BUFFER13_ARB = $8832; GL_DRAW_BUFFER14_ARB = $8833; GL_DRAW_BUFFER15_ARB = $8834; procedure glDrawBuffersARB(n: GLsizei; const bufs: PGLenum); external dllname; function Load_GL_ARB_draw_buffers: Boolean; //***** GL_ARB_texture_rectangle *****// const GL_TEXTURE_RECTANGLE_ARB = $84F5; GL_TEXTURE_BINDING_RECTANGLE_ARB = $84F6; GL_PROXY_TEXTURE_RECTANGLE_ARB = $84F7; GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = $84F8; function Load_GL_ARB_texture_rectangle: Boolean; //***** GL_ARB_color_buffer_float *****// const GL_RGBA_FLOAT_MODE_ARB = $8820; GL_CLAMP_VERTEX_COLOR_ARB = $891A; GL_CLAMP_FRAGMENT_COLOR_ARB = $891B; GL_CLAMP_READ_COLOR_ARB = $891C; GL_FIXED_ONLY_ARB = $891D; WGL_TYPE_RGBA_FLOAT_ARB = $21A0; procedure glClampColorARB(target: GLenum; clamp: GLenum); external dllname; function Load_GL_ARB_color_buffer_float: Boolean; //***** GL_ARB_half_float_pixel *****// const GL_HALF_FLOAT_ARB = $140B; function Load_GL_ARB_half_float_pixel: Boolean; //***** GL_ARB_texture_float *****// const GL_TEXTURE_RED_TYPE_ARB = $8C10; GL_TEXTURE_GREEN_TYPE_ARB = $8C11; GL_TEXTURE_BLUE_TYPE_ARB = $8C12; GL_TEXTURE_ALPHA_TYPE_ARB = $8C13; GL_TEXTURE_LUMINANCE_TYPE_ARB = $8C14; GL_TEXTURE_INTENSITY_TYPE_ARB = $8C15; GL_TEXTURE_DEPTH_TYPE_ARB = $8C16; GL_UNSIGNED_NORMALIZED_ARB = $8C17; GL_RGBA32F_ARB = $8814; GL_RGB32F_ARB = $8815; GL_ALPHA32F_ARB = $8816; GL_INTENSITY32F_ARB = $8817; GL_LUMINANCE32F_ARB = $8818; GL_LUMINANCE_ALPHA32F_ARB = $8819; GL_RGBA16F_ARB = $881A; GL_RGB16F_ARB = $881B; GL_ALPHA16F_ARB = $881C; GL_INTENSITY16F_ARB = $881D; GL_LUMINANCE16F_ARB = $881E; GL_LUMINANCE_ALPHA16F_ARB = $881F; function Load_GL_ARB_texture_float: Boolean; //***** GL_EXT_texture_compression_dxt1 *****// // GL_COMPRESSED_RGB_S3TC_DXT1_EXT { already defined } // GL_COMPRESSED_RGBA_S3TC_DXT1_EXT { already defined } function Load_GL_EXT_texture_compression_dxt1: Boolean; //***** GL_ARB_pixel_buffer_object *****// const GL_PIXEL_PACK_BUFFER_ARB = $88EB; GL_PIXEL_UNPACK_BUFFER_ARB = $88EC; GL_PIXEL_PACK_BUFFER_BINDING_ARB = $88ED; GL_PIXEL_UNPACK_BUFFER_BINDING_ARB = $88EF; function Load_GL_ARB_pixel_buffer_object: Boolean; //***** GL_EXT_framebuffer_object *****// const GL_FRAMEBUFFER_EXT = $8D40; GL_RENDERBUFFER_EXT = $8D41; GL_STENCIL_INDEX_EXT = $8D45; GL_STENCIL_INDEX1_EXT = $8D46; GL_STENCIL_INDEX4_EXT = $8D47; GL_STENCIL_INDEX8_EXT = $8D48; GL_STENCIL_INDEX16_EXT = $8D49; GL_RENDERBUFFER_WIDTH_EXT = $8D42; GL_RENDERBUFFER_HEIGHT_EXT = $8D43; GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = $8D44; GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = $8CD0; GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = $8CD1; GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = $8CD2; GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = $8CD3; GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = $8CD4; GL_COLOR_ATTACHMENT0_EXT = $8CE0; GL_COLOR_ATTACHMENT1_EXT = $8CE1; GL_COLOR_ATTACHMENT2_EXT = $8CE2; GL_COLOR_ATTACHMENT3_EXT = $8CE3; GL_COLOR_ATTACHMENT4_EXT = $8CE4; GL_COLOR_ATTACHMENT5_EXT = $8CE5; GL_COLOR_ATTACHMENT6_EXT = $8CE6; GL_COLOR_ATTACHMENT7_EXT = $8CE7; GL_COLOR_ATTACHMENT8_EXT = $8CE8; GL_COLOR_ATTACHMENT9_EXT = $8CE9; GL_COLOR_ATTACHMENT10_EXT = $8CEA; GL_COLOR_ATTACHMENT11_EXT = $8CEB; GL_COLOR_ATTACHMENT12_EXT = $8CEC; GL_COLOR_ATTACHMENT13_EXT = $8CED; GL_COLOR_ATTACHMENT14_EXT = $8CEE; GL_COLOR_ATTACHMENT15_EXT = $8CEF; GL_DEPTH_ATTACHMENT_EXT = $8D00; GL_STENCIL_ATTACHMENT_EXT = $8D20; GL_FRAMEBUFFER_COMPLETE_EXT = $8CD5; GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = $8CD6; GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = $8CD7; GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT = $8CD8; GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = $8CD9; GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = $8CDA; GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = $8CDB; GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = $8CDC; GL_FRAMEBUFFER_UNSUPPORTED_EXT = $8CDD; GL_FRAMEBUFFER_STATUS_ERROR_EXT = $8CDE; GL_FRAMEBUFFER_BINDING_EXT = $8CA6; GL_RENDERBUFFER_BINDING_EXT = $8CA7; GL_MAX_COLOR_ATTACHMENTS_EXT = $8CDF; GL_MAX_RENDERBUFFER_SIZE_EXT = $84E8; GL_INVALID_FRAMEBUFFER_OPERATION_EXT = $0506; function glIsRenderbufferEXT(renderbuffer: GLuint): GLboolean; external dllname; procedure glBindRenderbufferEXT(target: GLenum; renderbuffer: GLuint); external dllname; procedure glDeleteRenderbuffersEXT(n: GLsizei; const renderbuffers: PGLuint); external dllname; procedure glGenRenderbuffersEXT(n: GLsizei; renderbuffers: PGLuint); external dllname; procedure glRenderbufferStorageEXT(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei); external dllname; procedure glGetRenderbufferParameterivEXT(target: GLenum; pname: GLenum; params: PGLint); external dllname; function glIsFramebufferEXT(framebuffer: GLuint): GLboolean; external dllname; procedure glBindFramebufferEXT(target: GLenum; framebuffer: GLuint); external dllname; procedure glDeleteFramebuffersEXT(n: GLsizei; const framebuffers: PGLuint); external dllname; procedure glGenFramebuffersEXT(n: GLsizei; framebuffers: PGLuint); external dllname; function glCheckFramebufferStatusEXT(target: GLenum): GLenum; external dllname; procedure glFramebufferTexture1DEXT(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); external dllname; procedure glFramebufferTexture2DEXT(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); external dllname; procedure glFramebufferTexture3DEXT(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint; zoffset: GLint); external dllname; procedure glFramebufferRenderbufferEXT(target: GLenum; attachment: GLenum; renderbuffertarget: GLenum; renderbuffer: GLuint); external dllname; procedure glGetFramebufferAttachmentParameterivEXT(target: GLenum; attachment: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGenerateMipmapEXT(target: GLenum); external dllname; function Load_GL_EXT_framebuffer_object: Boolean; //***** GL_version_1_4 *****// const GL_BLEND_DST_RGB = $80C8; GL_BLEND_SRC_RGB = $80C9; GL_BLEND_DST_ALPHA = $80CA; GL_BLEND_SRC_ALPHA = $80CB; GL_POINT_SIZE_MIN = $8126; GL_POINT_SIZE_MAX = $8127; GL_POINT_FADE_THRESHOLD_SIZE = $8128; GL_POINT_DISTANCE_ATTENUATION = $8129; GL_GENERATE_MIPMAP = $8191; GL_GENERATE_MIPMAP_HINT = $8192; GL_DEPTH_COMPONENT16 = $81A5; GL_DEPTH_COMPONENT24 = $81A6; GL_DEPTH_COMPONENT32 = $81A7; GL_MIRRORED_REPEAT = $8370; GL_FOG_COORDINATE_SOURCE = $8450; GL_FOG_COORDINATE = $8451; GL_FRAGMENT_DEPTH = $8452; GL_CURRENT_FOG_COORDINATE = $8453; GL_FOG_COORDINATE_ARRAY_TYPE = $8454; GL_FOG_COORDINATE_ARRAY_STRIDE = $8455; GL_FOG_COORDINATE_ARRAY_POINTER = $8456; GL_FOG_COORDINATE_ARRAY = $8457; GL_COLOR_SUM = $8458; GL_CURRENT_SECONDARY_COLOR = $8459; GL_SECONDARY_COLOR_ARRAY_SIZE = $845A; GL_SECONDARY_COLOR_ARRAY_TYPE = $845B; GL_SECONDARY_COLOR_ARRAY_STRIDE = $845C; GL_SECONDARY_COLOR_ARRAY_POINTER = $845D; GL_SECONDARY_COLOR_ARRAY = $845E; GL_MAX_TEXTURE_LOD_BIAS = $84FD; GL_TEXTURE_FILTER_CONTROL = $8500; GL_TEXTURE_LOD_BIAS = $8501; GL_INCR_WRAP = $8507; GL_DECR_WRAP = $8508; GL_TEXTURE_DEPTH_SIZE = $884A; GL_DEPTH_TEXTURE_MODE = $884B; GL_TEXTURE_COMPARE_MODE = $884C; GL_TEXTURE_COMPARE_FUNC = $884D; GL_COMPARE_R_TO_TEXTURE = $884E; procedure glBlendFuncSeparate(sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum); external dllname; procedure glFogCoordf(coord: GLfloat); external dllname; procedure glFogCoordfv(const coord: PGLfloat); external dllname; procedure glFogCoordd(coord: GLdouble); external dllname; procedure glFogCoorddv(const coord: PGLdouble); external dllname; procedure glFogCoordPointer(thetype: GLenum; stride: GLsizei; const pointer: PGLvoid); external dllname; procedure glMultiDrawArrays(mode: GLenum; first: PGLint; count: PGLsizei; primcount: GLsizei); external dllname; procedure glMultiDrawElements(mode: GLenum; const count: PGLsizei; thetype: GLenum; const indices: PGLvoid; primcount: GLsizei); external dllname; procedure glPointParameterf(pname: GLenum; param: GLfloat); external dllname; procedure glPointParameterfv(pname: GLenum; const params: PGLfloat); external dllname; procedure glPointParameteri(pname: GLenum; param: GLint); external dllname; procedure glPointParameteriv(pname: GLenum; const params: PGLint); external dllname; procedure glSecondaryColor3b(red: GLbyte; green: GLbyte; blue: GLbyte); external dllname; procedure glSecondaryColor3bv(const v: PGLbyte); external dllname; procedure glSecondaryColor3d(red: GLdouble; green: GLdouble; blue: GLdouble); external dllname; procedure glSecondaryColor3dv(const v: PGLdouble); external dllname; procedure glSecondaryColor3f(red: GLfloat; green: GLfloat; blue: GLfloat); external dllname; procedure glSecondaryColor3fv(const v: PGLfloat); external dllname; procedure glSecondaryColor3i(red: GLint; green: GLint; blue: GLint); external dllname; procedure glSecondaryColor3iv(const v: PGLint); external dllname; procedure glSecondaryColor3s(red: GLshort; green: GLshort; blue: GLshort); external dllname; procedure glSecondaryColor3sv(const v: PGLshort); external dllname; procedure glSecondaryColor3ub(red: GLubyte; green: GLubyte; blue: GLubyte); external dllname; procedure glSecondaryColor3ubv(const v: PGLubyte); external dllname; procedure glSecondaryColor3ui(red: GLuint; green: GLuint; blue: GLuint); external dllname; procedure glSecondaryColor3uiv(const v: PGLuint); external dllname; procedure glSecondaryColor3us(red: GLushort; green: GLushort; blue: GLushort); external dllname; procedure glSecondaryColor3usv(const v: PGLushort); external dllname; procedure glSecondaryColorPointer(size: GLint; thetype: GLenum; stride: GLsizei; const pointer: PGLvoid); external dllname; procedure glWindowPos2d(x: GLdouble; y: GLdouble); external dllname; procedure glWindowPos2dv(const v: PGLdouble); external dllname; procedure glWindowPos2f(x: GLfloat; y: GLfloat); external dllname; procedure glWindowPos2fv(const v: PGLfloat); external dllname; procedure glWindowPos2i(x: GLint; y: GLint); external dllname; procedure glWindowPos2iv(const v: PGLint); external dllname; procedure glWindowPos2s(x: GLshort; y: GLshort); external dllname; procedure glWindowPos2sv(const v: PGLshort); external dllname; procedure glWindowPos3d(x: GLdouble; y: GLdouble; z: GLdouble); external dllname; procedure glWindowPos3dv(const v: PGLdouble); external dllname; procedure glWindowPos3f(x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glWindowPos3fv(const v: PGLfloat); external dllname; procedure glWindowPos3i(x: GLint; y: GLint; z: GLint); external dllname; procedure glWindowPos3iv(const v: PGLint); external dllname; procedure glWindowPos3s(x: GLshort; y: GLshort; z: GLshort); external dllname; procedure glWindowPos3sv(const v: PGLshort); external dllname; function Load_GL_version_1_4: Boolean; //***** GL_version_1_5 *****// const GL_BUFFER_SIZE = $8764; GL_BUFFER_USAGE = $8765; GL_QUERY_COUNTER_BITS = $8864; GL_CURRENT_QUERY = $8865; GL_QUERY_RESULT = $8866; GL_QUERY_RESULT_AVAILABLE = $8867; GL_ARRAY_BUFFER = $8892; GL_ELEMENT_ARRAY_BUFFER = $8893; GL_ARRAY_BUFFER_BINDING = $8894; GL_ELEMENT_ARRAY_BUFFER_BINDING = $8895; GL_VERTEX_ARRAY_BUFFER_BINDING = $8896; GL_NORMAL_ARRAY_BUFFER_BINDING = $8897; GL_COLOR_ARRAY_BUFFER_BINDING = $8898; GL_INDEX_ARRAY_BUFFER_BINDING = $8899; GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = $889A; GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = $889B; GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = $889C; GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = $889D; GL_WEIGHT_ARRAY_BUFFER_BINDING = $889E; GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = $889F; GL_READ_ONLY = $88B8; GL_WRITE_ONLY = $88B9; GL_READ_WRITE = $88BA; GL_BUFFER_ACCESS = $88BB; GL_BUFFER_MAPPED = $88BC; GL_BUFFER_MAP_POINTER = $88BD; GL_STREAM_DRAW = $88E0; GL_STREAM_READ = $88E1; GL_STREAM_COPY = $88E2; GL_STATIC_DRAW = $88E4; GL_STATIC_READ = $88E5; GL_STATIC_COPY = $88E6; GL_DYNAMIC_DRAW = $88E8; GL_DYNAMIC_READ = $88E9; GL_DYNAMIC_COPY = $88EA; GL_SAMPLES_PASSED = $8914; GL_FOG_COORD_SRC = $8450; GL_FOG_COORD = $8451; GL_CURRENT_FOG_COORD = $8453; GL_FOG_COORD_ARRAY_TYPE = $8454; GL_FOG_COORD_ARRAY_STRIDE = $8455; GL_FOG_COORD_ARRAY_POINTER = $8456; GL_FOG_COORD_ARRAY = $8457; GL_FOG_COORD_ARRAY_BUFFER_BINDING = $889D; GL_SRC0_RGB = $8580; GL_SRC1_RGB = $8581; GL_SRC2_RGB = $8582; GL_SRC0_ALPHA = $8588; GL_SRC1_ALPHA = $8589; GL_SRC2_ALPHA = $858A; procedure glGenQueries(n: GLsizei; ids: PGLuint); external dllname; procedure glDeleteQueries(n: GLsizei; const ids: PGLuint); external dllname; function glIsQuery(id: GLuint): GLboolean; external dllname; procedure glBeginQuery(target: GLenum; id: GLuint); external dllname; procedure glEndQuery(target: GLenum); external dllname; procedure glGetQueryiv(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetQueryObjectiv(id: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetQueryObjectuiv(id: GLuint; pname: GLenum; params: PGLuint); external dllname; procedure glBindBuffer(target: GLenum; buffer: GLuint); external dllname; procedure glDeleteBuffers(n: GLsizei; const buffers: PGLuint); external dllname; procedure glGenBuffers(n: GLsizei; buffers: PGLuint); external dllname; function glIsBuffer(buffer: GLuint): GLboolean; external dllname; procedure glBufferData(target: GLenum; size: GLsizeiptr; const data: PGLvoid; usage: GLenum); external dllname; procedure glBufferSubData(target: GLenum; offset: GLintptr; size: GLsizeiptr; const data: PGLvoid); external dllname; procedure glGetBufferSubData(target: GLenum; offset: GLintptr; size: GLsizeiptr; data: PGLvoid); external dllname; function glMapBuffer(target: GLenum; access: GLenum): PGLvoid; external dllname; function glUnmapBuffer(target: GLenum): GLboolean; external dllname; procedure glGetBufferParameteriv(target: GLenum; pname: GLenum; params: PGLint); external dllname; procedure glGetBufferPointerv(target: GLenum; pname: GLenum; params: PGLvoid); external dllname; function Load_GL_version_1_5: Boolean; //***** GL_version_2_0 *****// const GL_BLEND_EQUATION_RGB = $8009; GL_VERTEX_ATTRIB_ARRAY_ENABLED = $8622; GL_VERTEX_ATTRIB_ARRAY_SIZE = $8623; GL_VERTEX_ATTRIB_ARRAY_STRIDE = $8624; GL_VERTEX_ATTRIB_ARRAY_TYPE = $8625; GL_CURRENT_VERTEX_ATTRIB = $8626; GL_VERTEX_PROGRAM_POINT_SIZE = $8642; GL_VERTEX_PROGRAM_TWO_SIDE = $8643; GL_VERTEX_ATTRIB_ARRAY_POINTER = $8645; GL_STENCIL_BACK_FUNC = $8800; GL_STENCIL_BACK_FAIL = $8801; GL_STENCIL_BACK_PASS_DEPTH_FAIL = $8802; GL_STENCIL_BACK_PASS_DEPTH_PASS = $8803; GL_MAX_DRAW_BUFFERS = $8824; GL_DRAW_BUFFER0 = $8825; GL_DRAW_BUFFER1 = $8826; GL_DRAW_BUFFER2 = $8827; GL_DRAW_BUFFER3 = $8828; GL_DRAW_BUFFER4 = $8829; GL_DRAW_BUFFER5 = $882A; GL_DRAW_BUFFER6 = $882B; GL_DRAW_BUFFER7 = $882C; GL_DRAW_BUFFER8 = $882D; GL_DRAW_BUFFER9 = $882E; GL_DRAW_BUFFER10 = $882F; GL_DRAW_BUFFER11 = $8830; GL_DRAW_BUFFER12 = $8831; GL_DRAW_BUFFER13 = $8832; GL_DRAW_BUFFER14 = $8833; GL_DRAW_BUFFER15 = $8834; GL_BLEND_EQUATION_ALPHA = $883D; GL_POINT_SPRITE = $8861; GL_COORD_REPLACE = $8862; GL_MAX_VERTEX_ATTRIBS = $8869; GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = $886A; GL_MAX_TEXTURE_COORDS = $8871; GL_MAX_TEXTURE_IMAGE_UNITS = $8872; GL_FRAGMENT_SHADER = $8B30; GL_VERTEX_SHADER = $8B31; GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = $8B49; GL_MAX_VERTEX_UNIFORM_COMPONENTS = $8B4A; GL_MAX_VARYING_FLOATS = $8B4B; GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = $8B4C; GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = $8B4D; GL_SHADER_TYPE = $8B4F; GL_FLOAT_VEC2 = $8B50; GL_FLOAT_VEC3 = $8B51; GL_FLOAT_VEC4 = $8B52; GL_INT_VEC2 = $8B53; GL_INT_VEC3 = $8B54; GL_INT_VEC4 = $8B55; GL_BOOL = $8B56; GL_BOOL_VEC2 = $8B57; GL_BOOL_VEC3 = $8B58; GL_BOOL_VEC4 = $8B59; GL_FLOAT_MAT2 = $8B5A; GL_FLOAT_MAT3 = $8B5B; GL_FLOAT_MAT4 = $8B5C; GL_SAMPLER_1D = $8B5D; GL_SAMPLER_2D = $8B5E; GL_SAMPLER_3D = $8B5F; GL_SAMPLER_CUBE = $8B60; GL_SAMPLER_1D_SHADOW = $8B61; GL_SAMPLER_2D_SHADOW = $8B62; GL_DELETE_STATUS = $8B80; GL_COMPILE_STATUS = $8B81; GL_LINK_STATUS = $8B82; GL_VALIDATE_STATUS = $8B83; GL_INFO_LOG_LENGTH = $8B84; GL_ATTACHED_SHADERS = $8B85; GL_ACTIVE_UNIFORMS = $8B86; GL_ACTIVE_UNIFORM_MAX_LENGTH = $8B87; GL_SHADER_SOURCE_LENGTH = $8B88; GL_ACTIVE_ATTRIBUTES = $8B89; GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = $8B8A; GL_FRAGMENT_SHADER_DERIVATIVE_HINT = $8B8B; GL_SHADING_LANGUAGE_VERSION = $8B8C; GL_CURRENT_PROGRAM = $8B8D; GL_POINT_SPRITE_COORD_ORIGIN = $8CA0; GL_LOWER_LEFT = $8CA1; GL_UPPER_LEFT = $8CA2; GL_STENCIL_BACK_REF = $8CA3; GL_STENCIL_BACK_VALUE_MASK = $8CA4; GL_STENCIL_BACK_WRITEMASK = $8CA5; procedure glBlendEquationSeparate(modeRGB: GLenum; modeAlpha: GLenum); external dllname; procedure glDrawBuffers(n: GLsizei; const bufs: PGLenum); external dllname; procedure glStencilOpSeparate(face: GLenum; sfail: GLenum; dpfail: GLenum; dppass: GLenum); external dllname; procedure glStencilFuncSeparate(frontfunc: GLenum; backfunc: GLenum; ref: GLint; mask: GLuint); external dllname; procedure glStencilMaskSeparate(face: GLenum; mask: GLuint); external dllname; procedure glAttachShader(theProgram: GLuint; shader: GLuint); external dllname; procedure glBindAttribLocation(theProgram: GLuint; index: GLuint; const name: PGLchar); external dllname; procedure glCompileShader(shader: GLuint); external dllname; function glCreateProgram(): GLuint; external dllname; function glCreateShader(thetype: GLenum): GLuint; external dllname; procedure glDeleteProgram(theProgram: GLuint); external dllname; procedure glDeleteShader(shader: GLuint); external dllname; procedure glDetachShader(theProgram: GLuint; shader: GLuint); external dllname; procedure glDisableVertexAttribArray(index: GLuint); external dllname; procedure glEnableVertexAttribArray(index: GLuint); external dllname; procedure glGetActiveAttrib(theProgram: GLuint; index: GLuint; bufSize: GLsizei; length: PGLsizei; size: PGLint; thetype: PGLenum; name: PGLchar); external dllname; procedure glGetActiveUniform(theProgram: GLuint; index: GLuint; bufSize: GLsizei; length: PGLsizei; size: PGLint; thetype: PGLenum; name: PGLchar); external dllname; procedure glGetAttachedShaders(theProgram: GLuint; maxCount: GLsizei; count: PGLsizei; obj: PGLuint); external dllname; function glGetAttribLocation(theProgram: GLuint; const name: PGLchar): GLint; external dllname; procedure glGetProgramiv(theProgram: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetProgramInfoLog(theProgram: GLuint; bufSize: GLsizei; length: PGLsizei; infoLog: PGLchar); external dllname; procedure glGetShaderiv(shader: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetShaderInfoLog(shader: GLuint; bufSize: GLsizei; length: PGLsizei; infoLog: PGLchar); external dllname; procedure glGetShaderSource(shader: GLuint; bufSize: GLsizei; length: PGLsizei; source: PGLchar); external dllname; function glGetUniformLocation(theProgram: GLuint; const name: PGLchar): GLint; external dllname; procedure glGetUniformfv(theProgram: GLuint; location: GLint; params: PGLfloat); external dllname; procedure glGetUniformiv(theProgram: GLuint; location: GLint; params: PGLint); external dllname; procedure glGetVertexAttribdv(index: GLuint; pname: GLenum; params: PGLdouble); external dllname; procedure glGetVertexAttribfv(index: GLuint; pname: GLenum; params: PGLfloat); external dllname; procedure glGetVertexAttribiv(index: GLuint; pname: GLenum; params: PGLint); external dllname; procedure glGetVertexAttribPointerv(index: GLuint; pname: GLenum; pointer: PGLvoid); external dllname; function glIsProgram(theProgram: GLuint): GLboolean; external dllname; function glIsShader(shader: GLuint): GLboolean; external dllname; procedure glLinkProgram(theProgram: GLuint); external dllname; procedure glShaderSource(shader: GLuint; count: GLsizei; const str: PGLchar; const length: PGLint); external dllname; procedure glUseProgram(theProgram: GLuint); external dllname; procedure glUniform1f(location: GLint; v0: GLfloat); external dllname; procedure glUniform2f(location: GLint; v0: GLfloat; v1: GLfloat); external dllname; procedure glUniform3f(location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat); external dllname; procedure glUniform4f(location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat; v3: GLfloat); external dllname; procedure glUniform1i(location: GLint; v0: GLint); external dllname; procedure glUniform2i(location: GLint; v0: GLint; v1: GLint); external dllname; procedure glUniform3i(location: GLint; v0: GLint; v1: GLint; v2: GLint); external dllname; procedure glUniform4i(location: GLint; v0: GLint; v1: GLint; v2: GLint; v3: GLint); external dllname; procedure glUniform1fv(location: GLint; count: GLsizei; const value: PGLfloat); external dllname; procedure glUniform2fv(location: GLint; count: GLsizei; const value: PGLfloat); external dllname; procedure glUniform3fv(location: GLint; count: GLsizei; const value: PGLfloat); external dllname; procedure glUniform4fv(location: GLint; count: GLsizei; const value: PGLfloat); external dllname; procedure glUniform1iv(location: GLint; count: GLsizei; const value: PGLint); external dllname; procedure glUniform2iv(location: GLint; count: GLsizei; const value: PGLint); external dllname; procedure glUniform3iv(location: GLint; count: GLsizei; const value: PGLint); external dllname; procedure glUniform4iv(location: GLint; count: GLsizei; const value: PGLint); external dllname; procedure glUniformMatrix2fv(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); external dllname; procedure glUniformMatrix3fv(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); external dllname; procedure glUniformMatrix4fv(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); external dllname; procedure glValidateProgram(theProgram: GLuint); external dllname; procedure glVertexAttrib1d(index: GLuint; x: GLdouble); external dllname; procedure glVertexAttrib1dv(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib1f(index: GLuint; x: GLfloat); external dllname; procedure glVertexAttrib1fv(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib1s(index: GLuint; x: GLshort); external dllname; procedure glVertexAttrib1sv(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib2d(index: GLuint; x: GLdouble; y: GLdouble); external dllname; procedure glVertexAttrib2dv(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib2f(index: GLuint; x: GLfloat; y: GLfloat); external dllname; procedure glVertexAttrib2fv(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib2s(index: GLuint; x: GLshort; y: GLshort); external dllname; procedure glVertexAttrib2sv(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib3d(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); external dllname; procedure glVertexAttrib3dv(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib3f(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); external dllname; procedure glVertexAttrib3fv(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib3s(index: GLuint; x: GLshort; y: GLshort; z: GLshort); external dllname; procedure glVertexAttrib3sv(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib4Nbv(index: GLuint; const v: PGLbyte); external dllname; procedure glVertexAttrib4Niv(index: GLuint; const v: PGLint); external dllname; procedure glVertexAttrib4Nsv(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib4Nub(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); external dllname; procedure glVertexAttrib4Nubv(index: GLuint; const v: PGLubyte); external dllname; procedure glVertexAttrib4Nuiv(index: GLuint; const v: PGLuint); external dllname; procedure glVertexAttrib4Nusv(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttrib4bv(index: GLuint; const v: PGLbyte); external dllname; procedure glVertexAttrib4d(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); external dllname; procedure glVertexAttrib4dv(index: GLuint; const v: PGLdouble); external dllname; procedure glVertexAttrib4f(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); external dllname; procedure glVertexAttrib4fv(index: GLuint; const v: PGLfloat); external dllname; procedure glVertexAttrib4iv(index: GLuint; const v: PGLint); external dllname; procedure glVertexAttrib4s(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); external dllname; procedure glVertexAttrib4sv(index: GLuint; const v: PGLshort); external dllname; procedure glVertexAttrib4ubv(index: GLuint; const v: PGLubyte); external dllname; procedure glVertexAttrib4uiv(index: GLuint; const v: PGLuint); external dllname; procedure glVertexAttrib4usv(index: GLuint; const v: PGLushort); external dllname; procedure glVertexAttribPointer(index: GLuint; size: GLint; thetype: GLenum; normalized: GLboolean; stride: GLsizei; const pointer: PGLvoid); external dllname; implementation end.