3029 lines
171 KiB
Plaintext
3029 lines
171 KiB
Plaintext
import "std_types";
|
|
import "libc";
|
|
|
|
main :: proc(): int {
|
|
load_up_to(4, 5, :Set_Proc_Address_Type(set_proc_address_stub));
|
|
return counter - 710;
|
|
}
|
|
|
|
counter := 0;
|
|
set_proc_address_stub :: proc(p: **void, name: *char) {
|
|
counter += 1;
|
|
}
|
|
|
|
//
|
|
// converted from: https://github.com/odin-lang/Odin
|
|
//
|
|
|
|
loaded_up_to: [2]int;
|
|
loaded_up_to_major := 0;
|
|
loaded_up_to_minor := 0;
|
|
|
|
Set_Proc_Address_Type :: typedef proc(p: **void, name: *char);
|
|
|
|
load_up_to :: proc(major: int, minor: int, set_proc_address: Set_Proc_Address_Type) {
|
|
loaded_up_to = {major, minor};
|
|
loaded_up_to_major = major;
|
|
loaded_up_to_minor = minor;
|
|
|
|
switch major*10+minor {
|
|
case 46: { load_4_6(set_proc_address); } @fallthrough
|
|
case 45: { load_4_5(set_proc_address); } @fallthrough
|
|
case 44: { load_4_4(set_proc_address); } @fallthrough
|
|
case 43: { load_4_3(set_proc_address); } @fallthrough
|
|
case 42: { load_4_2(set_proc_address); } @fallthrough
|
|
case 41: { load_4_1(set_proc_address); } @fallthrough
|
|
case 40: { load_4_0(set_proc_address); } @fallthrough
|
|
case 33: { load_3_3(set_proc_address); } @fallthrough
|
|
case 32: { load_3_2(set_proc_address); } @fallthrough
|
|
case 31: { load_3_1(set_proc_address); } @fallthrough
|
|
case 30: { load_3_0(set_proc_address); } @fallthrough
|
|
case 21: { load_2_1(set_proc_address); } @fallthrough
|
|
case 20: { load_2_0(set_proc_address); } @fallthrough
|
|
case 15: { load_1_5(set_proc_address); } @fallthrough
|
|
case 14: { load_1_4(set_proc_address); } @fallthrough
|
|
case 13: { load_1_3(set_proc_address); } @fallthrough
|
|
case 12: { load_1_2(set_proc_address); } @fallthrough
|
|
case 11: { load_1_1(set_proc_address); } @fallthrough
|
|
case 10: { load_1_0(set_proc_address); }
|
|
}
|
|
}
|
|
|
|
/*
|
|
Type conversion overview:
|
|
typedef unsigned int GLenum; : u32
|
|
typedef unsigned char GLboolean;: bool
|
|
typedef unsigned int GLbitfield;: u32
|
|
typedef signed char GLbyte; : i8
|
|
typedef short GLshort; : i16
|
|
typedef int GLint; : i32
|
|
typedef unsigned char GLubyte; : u8
|
|
typedef unsigned short GLushort;: u16
|
|
typedef unsigned int GLuint; : u32
|
|
typedef int GLsizei; : i32
|
|
typedef float GLfloat; : f32
|
|
typedef double GLdouble; : f64
|
|
typedef char GLchar; : u8
|
|
typedef ptrdiff_t GLintptr; : int
|
|
typedef ptrdiff_t GLsizeiptr; : int
|
|
typedef int64_t GLint64; : i64
|
|
typedef uint64_t GLuint64; : u64
|
|
|
|
void* : *void
|
|
*/
|
|
|
|
sync_t :: typedef *void;
|
|
debug_proc_t :: typedef proc(source: u32, type: u32, id: u32, severity: u32, length: i32, message: *char, userParam: *void); @weak
|
|
|
|
|
|
GLfloat :: typedef float;
|
|
GLdouble :: typedef double;
|
|
GLchar :: typedef char;
|
|
GLenum :: typedef uint;
|
|
GLint :: typedef int;
|
|
GLuint :: typedef uint;
|
|
GLsizei :: typedef int;
|
|
GLboolean :: typedef uchar;
|
|
GLbitfield :: typedef uint;
|
|
GLvoid :: typedef void;
|
|
GLbyte :: typedef i8;
|
|
GLubyte :: typedef u8;
|
|
GLshort :: typedef i16;
|
|
GLushort :: typedef u16;
|
|
|
|
GL_DEPTH_BUFFER_BIT :: 0x00000100;
|
|
GL_STENCIL_BUFFER_BIT :: 0x00000400;
|
|
GL_COLOR_BUFFER_BIT :: 0x00004000;
|
|
GL_FALSE :: 0;
|
|
GL_TRUE :: 1;
|
|
GL_POINTS :: 0x0000;
|
|
GL_LINES :: 0x0001;
|
|
GL_LINE_LOOP :: 0x0002;
|
|
GL_LINE_STRIP :: 0x0003;
|
|
GL_TRIANGLES :: 0x0004;
|
|
GL_TRIANGLE_STRIP :: 0x0005;
|
|
GL_TRIANGLE_FAN :: 0x0006;
|
|
GL_NEVER :: 0x0200;
|
|
GL_LESS :: 0x0201;
|
|
GL_EQUAL :: 0x0202;
|
|
GL_LEQUAL :: 0x0203;
|
|
GL_GREATER :: 0x0204;
|
|
GL_NOTEQUAL :: 0x0205;
|
|
GL_GEQUAL :: 0x0206;
|
|
GL_ALWAYS :: 0x0207;
|
|
GL_ZERO :: 0;
|
|
GL_ONE :: 1;
|
|
GL_SRC_COLOR :: 0x0300;
|
|
GL_ONE_MINUS_SRC_COLOR :: 0x0301;
|
|
GL_SRC_ALPHA :: 0x0302;
|
|
GL_ONE_MINUS_SRC_ALPHA :: 0x0303;
|
|
GL_DST_ALPHA :: 0x0304;
|
|
GL_ONE_MINUS_DST_ALPHA :: 0x0305;
|
|
GL_DST_COLOR :: 0x0306;
|
|
GL_ONE_MINUS_DST_COLOR :: 0x0307;
|
|
GL_SRC_ALPHA_SATURATE :: 0x0308;
|
|
GL_NONE :: 0;
|
|
GL_FRONT_LEFT :: 0x0400;
|
|
GL_FRONT_RIGHT :: 0x0401;
|
|
GL_BACK_LEFT :: 0x0402;
|
|
GL_BACK_RIGHT :: 0x0403;
|
|
GL_FRONT :: 0x0404;
|
|
GL_BACK :: 0x0405;
|
|
GL_LEFT :: 0x0406;
|
|
GL_RIGHT :: 0x0407;
|
|
GL_FRONT_AND_BACK :: 0x0408;
|
|
GL_NO_ERROR :: 0;
|
|
GL_INVALID_ENUM :: 0x0500;
|
|
GL_INVALID_VALUE :: 0x0501;
|
|
GL_INVALID_OPERATION :: 0x0502;
|
|
GL_OUT_OF_MEMORY :: 0x0505;
|
|
GL_CW :: 0x0900;
|
|
GL_CCW :: 0x0901;
|
|
GL_POINT_SIZE :: 0x0b11;
|
|
GL_POINT_SIZE_RANGE :: 0x0b12;
|
|
GL_POINT_SIZE_GRANULARITY :: 0x0b13;
|
|
GL_LINE_SMOOTH :: 0x0b20;
|
|
GL_LINE_WIDTH :: 0x0b21;
|
|
GL_LINE_WIDTH_RANGE :: 0x0b22;
|
|
GL_LINE_WIDTH_GRANULARITY :: 0x0b23;
|
|
GL_POLYGON_MODE :: 0x0b40;
|
|
GL_POLYGON_SMOOTH :: 0x0b41;
|
|
GL_CULL_FACE :: 0x0b44;
|
|
GL_CULL_FACE_MODE :: 0x0b45;
|
|
GL_FRONT_FACE :: 0x0b46;
|
|
GL_DEPTH_RANGE :: 0x0b70;
|
|
GL_DEPTH_TEST :: 0x0b71;
|
|
GL_DEPTH_WRITEMASK :: 0x0b72;
|
|
GL_DEPTH_CLEAR_VALUE :: 0x0b73;
|
|
GL_DEPTH_FUNC :: 0x0b74;
|
|
GL_STENCIL_TEST :: 0x0b90;
|
|
GL_STENCIL_CLEAR_VALUE :: 0x0b91;
|
|
GL_STENCIL_FUNC :: 0x0b92;
|
|
GL_STENCIL_VALUE_MASK :: 0x0b93;
|
|
GL_STENCIL_FAIL :: 0x0b94;
|
|
GL_STENCIL_PASS_DEPTH_FAIL :: 0x0b95;
|
|
GL_STENCIL_PASS_DEPTH_PASS :: 0x0b96;
|
|
GL_STENCIL_REF :: 0x0b97;
|
|
GL_STENCIL_WRITEMASK :: 0x0b98;
|
|
GL_VIEWPORT :: 0x0ba2;
|
|
GL_DITHER :: 0x0bd0;
|
|
GL_BLEND_DST :: 0x0be0;
|
|
GL_BLEND_SRC :: 0x0be1;
|
|
GL_BLEND :: 0x0be2;
|
|
GL_LOGIC_OP_MODE :: 0x0bf0;
|
|
GL_DRAW_BUFFER :: 0x0c01;
|
|
GL_READ_BUFFER :: 0x0c02;
|
|
GL_SCISSOR_BOX :: 0x0c10;
|
|
GL_SCISSOR_TEST :: 0x0c11;
|
|
GL_COLOR_CLEAR_VALUE :: 0x0c22;
|
|
GL_COLOR_WRITEMASK :: 0x0c23;
|
|
GL_DOUBLEBUFFER :: 0x0c32;
|
|
GL_STEREO :: 0x0c33;
|
|
GL_LINE_SMOOTH_HINT :: 0x0c52;
|
|
GL_POLYGON_SMOOTH_HINT :: 0x0c53;
|
|
GL_UNPACK_SWAP_BYTES :: 0x0cf0;
|
|
GL_UNPACK_LSB_FIRST :: 0x0cf1;
|
|
GL_UNPACK_ROW_LENGTH :: 0x0cf2;
|
|
GL_UNPACK_SKIP_ROWS :: 0x0cf3;
|
|
GL_UNPACK_SKIP_PIXELS :: 0x0cf4;
|
|
GL_UNPACK_ALIGNMENT :: 0x0cf5;
|
|
GL_PACK_SWAP_BYTES :: 0x0d00;
|
|
GL_PACK_LSB_FIRST :: 0x0d01;
|
|
GL_PACK_ROW_LENGTH :: 0x0d02;
|
|
GL_PACK_SKIP_ROWS :: 0x0d03;
|
|
GL_PACK_SKIP_PIXELS :: 0x0d04;
|
|
GL_PACK_ALIGNMENT :: 0x0d05;
|
|
GL_MAX_TEXTURE_SIZE :: 0x0d33;
|
|
GL_MAX_VIEWPORT_DIMS :: 0x0d3a;
|
|
GL_SUBPIXEL_BITS :: 0x0d50;
|
|
GL_TEXTURE_1D :: 0x0de0;
|
|
GL_TEXTURE_2D :: 0x0de1;
|
|
GL_TEXTURE_WIDTH :: 0x1000;
|
|
GL_TEXTURE_HEIGHT :: 0x1001;
|
|
GL_TEXTURE_BORDER_COLOR :: 0x1004;
|
|
GL_DONT_CARE :: 0x1100;
|
|
GL_FASTEST :: 0x1101;
|
|
GL_NICEST :: 0x1102;
|
|
GL_BYTE :: 0x1400;
|
|
GL_UNSIGNED_BYTE :: 0x1401;
|
|
GL_SHORT :: 0x1402;
|
|
GL_UNSIGNED_SHORT :: 0x1403;
|
|
GL_INT :: 0x1404;
|
|
GL_UNSIGNED_INT :: 0x1405;
|
|
GL_FLOAT :: 0x1406;
|
|
GL_CLEAR :: 0x1500;
|
|
GL_AND :: 0x1501;
|
|
GL_AND_REVERSE :: 0x1502;
|
|
GL_COPY :: 0x1503;
|
|
GL_AND_INVERTED :: 0x1504;
|
|
GL_NOOP :: 0x1505;
|
|
GL_XOR :: 0x1506;
|
|
GL_OR :: 0x1507;
|
|
GL_NOR :: 0x1508;
|
|
GL_EQUIV :: 0x1509;
|
|
GL_INVERT :: 0x150a;
|
|
GL_OR_REVERSE :: 0x150b;
|
|
GL_COPY_INVERTED :: 0x150c;
|
|
GL_OR_INVERTED :: 0x150d;
|
|
GL_NAND :: 0x150e;
|
|
GL_SET :: 0x150f;
|
|
GL_TEXTURE :: 0x1702;
|
|
GL_COLOR :: 0x1800;
|
|
GL_DEPTH :: 0x1801;
|
|
GL_STENCIL :: 0x1802;
|
|
GL_STENCIL_INDEX :: 0x1901;
|
|
GL_DEPTH_COMPONENT :: 0x1902;
|
|
GL_RED :: 0x1903;
|
|
GL_GREEN :: 0x1904;
|
|
GL_BLUE :: 0x1905;
|
|
GL_ALPHA :: 0x1906;
|
|
GL_RGB :: 0x1907;
|
|
GL_RGBA :: 0x1908;
|
|
GL_POINT :: 0x1b00;
|
|
GL_LINE :: 0x1b01;
|
|
GL_FILL :: 0x1b02;
|
|
GL_KEEP :: 0x1e00;
|
|
GL_REPLACE :: 0x1e01;
|
|
GL_INCR :: 0x1e02;
|
|
GL_DECR :: 0x1e03;
|
|
GL_VENDOR :: 0x1f00;
|
|
GL_RENDERER :: 0x1f01;
|
|
GL_VERSION :: 0x1f02;
|
|
GL_EXTENSIONS :: 0x1f03;
|
|
GL_NEAREST :: 0x2600;
|
|
GL_LINEAR :: 0x2601;
|
|
GL_NEAREST_MIPMAP_NEAREST :: 0x2700;
|
|
GL_LINEAR_MIPMAP_NEAREST :: 0x2701;
|
|
GL_NEAREST_MIPMAP_LINEAR :: 0x2702;
|
|
GL_LINEAR_MIPMAP_LINEAR :: 0x2703;
|
|
GL_TEXTURE_MAG_FILTER :: 0x2800;
|
|
GL_TEXTURE_MIN_FILTER :: 0x2801;
|
|
GL_TEXTURE_WRAP_S :: 0x2802;
|
|
GL_TEXTURE_WRAP_T :: 0x2803;
|
|
GL_REPEAT :: 0x2901;
|
|
GL_COLOR_LOGIC_OP :: 0x0bf2;
|
|
GL_POLYGON_OFFSET_UNITS :: 0x2a00;
|
|
GL_POLYGON_OFFSET_POINT :: 0x2a01;
|
|
GL_POLYGON_OFFSET_LINE :: 0x2a02;
|
|
GL_POLYGON_OFFSET_FILL :: 0x8037;
|
|
GL_POLYGON_OFFSET_FACTOR :: 0x8038;
|
|
GL_TEXTURE_BINDING_1D :: 0x8068;
|
|
GL_TEXTURE_BINDING_2D :: 0x8069;
|
|
GL_TEXTURE_INTERNAL_FORMAT :: 0x1003;
|
|
GL_TEXTURE_RED_SIZE :: 0x805c;
|
|
GL_TEXTURE_GREEN_SIZE :: 0x805d;
|
|
GL_TEXTURE_BLUE_SIZE :: 0x805e;
|
|
GL_TEXTURE_ALPHA_SIZE :: 0x805f;
|
|
GL_DOUBLE :: 0x140a;
|
|
GL_PROXY_TEXTURE_1D :: 0x8063;
|
|
GL_PROXY_TEXTURE_2D :: 0x8064;
|
|
GL_R3_G3_B2 :: 0x2a10;
|
|
GL_RGB4 :: 0x804f;
|
|
GL_RGB5 :: 0x8050;
|
|
GL_RGB8 :: 0x8051;
|
|
GL_RGB10 :: 0x8052;
|
|
GL_RGB12 :: 0x8053;
|
|
GL_RGB16 :: 0x8054;
|
|
GL_RGBA2 :: 0x8055;
|
|
GL_RGBA4 :: 0x8056;
|
|
GL_RGB5_A1 :: 0x8057;
|
|
GL_RGBA8 :: 0x8058;
|
|
GL_RGB10_A2 :: 0x8059;
|
|
GL_RGBA12 :: 0x805a;
|
|
GL_RGBA16 :: 0x805b;
|
|
GL_UNSIGNED_BYTE_3_3_2 :: 0x8032;
|
|
GL_UNSIGNED_SHORT_4_4_4_4 :: 0x8033;
|
|
GL_UNSIGNED_SHORT_5_5_5_1 :: 0x8034;
|
|
GL_UNSIGNED_INT_8_8_8_8 :: 0x8035;
|
|
GL_UNSIGNED_INT_10_10_10_2 :: 0x8036;
|
|
GL_TEXTURE_BINDING_3D :: 0x806a;
|
|
GL_PACK_SKIP_IMAGES :: 0x806b;
|
|
GL_PACK_IMAGE_HEIGHT :: 0x806c;
|
|
GL_UNPACK_SKIP_IMAGES :: 0x806d;
|
|
GL_UNPACK_IMAGE_HEIGHT :: 0x806e;
|
|
GL_TEXTURE_3D :: 0x806f;
|
|
GL_PROXY_TEXTURE_3D :: 0x8070;
|
|
GL_TEXTURE_DEPTH :: 0x8071;
|
|
GL_TEXTURE_WRAP_R :: 0x8072;
|
|
GL_MAX_3D_TEXTURE_SIZE :: 0x8073;
|
|
GL_UNSIGNED_BYTE_2_3_3_REV :: 0x8362;
|
|
GL_UNSIGNED_SHORT_5_6_5 :: 0x8363;
|
|
GL_UNSIGNED_SHORT_5_6_5_REV :: 0x8364;
|
|
GL_UNSIGNED_SHORT_4_4_4_4_REV :: 0x8365;
|
|
GL_UNSIGNED_SHORT_1_5_5_5_REV :: 0x8366;
|
|
GL_UNSIGNED_INT_8_8_8_8_REV :: 0x8367;
|
|
GL_UNSIGNED_INT_2_10_10_10_REV :: 0x8368;
|
|
GL_BGR :: 0x80e0;
|
|
GL_BGRA :: 0x80e1;
|
|
GL_MAX_ELEMENTS_VERTICES :: 0x80e8;
|
|
GL_MAX_ELEMENTS_INDICES :: 0x80e9;
|
|
GL_CLAMP_TO_EDGE :: 0x812f;
|
|
GL_TEXTURE_MIN_LOD :: 0x813a;
|
|
GL_TEXTURE_MAX_LOD :: 0x813b;
|
|
GL_TEXTURE_BASE_LEVEL :: 0x813c;
|
|
GL_TEXTURE_MAX_LEVEL :: 0x813d;
|
|
GL_SMOOTH_POINT_SIZE_RANGE :: 0x0b12;
|
|
GL_SMOOTH_POINT_SIZE_GRANULARITY :: 0x0b13;
|
|
GL_SMOOTH_LINE_WIDTH_RANGE :: 0x0b22;
|
|
GL_SMOOTH_LINE_WIDTH_GRANULARITY :: 0x0b23;
|
|
GL_ALIASED_LINE_WIDTH_RANGE :: 0x846e;
|
|
GL_TEXTURE0 :: 0x84c0;
|
|
GL_TEXTURE1 :: 0x84c1;
|
|
GL_TEXTURE2 :: 0x84c2;
|
|
GL_TEXTURE3 :: 0x84c3;
|
|
GL_TEXTURE4 :: 0x84c4;
|
|
GL_TEXTURE5 :: 0x84c5;
|
|
GL_TEXTURE6 :: 0x84c6;
|
|
GL_TEXTURE7 :: 0x84c7;
|
|
GL_TEXTURE8 :: 0x84c8;
|
|
GL_TEXTURE9 :: 0x84c9;
|
|
GL_TEXTURE10 :: 0x84ca;
|
|
GL_TEXTURE11 :: 0x84cb;
|
|
GL_TEXTURE12 :: 0x84cc;
|
|
GL_TEXTURE13 :: 0x84cd;
|
|
GL_TEXTURE14 :: 0x84ce;
|
|
GL_TEXTURE15 :: 0x84cf;
|
|
GL_TEXTURE16 :: 0x84d0;
|
|
GL_TEXTURE17 :: 0x84d1;
|
|
GL_TEXTURE18 :: 0x84d2;
|
|
GL_TEXTURE19 :: 0x84d3;
|
|
GL_TEXTURE20 :: 0x84d4;
|
|
GL_TEXTURE21 :: 0x84d5;
|
|
GL_TEXTURE22 :: 0x84d6;
|
|
GL_TEXTURE23 :: 0x84d7;
|
|
GL_TEXTURE24 :: 0x84d8;
|
|
GL_TEXTURE25 :: 0x84d9;
|
|
GL_TEXTURE26 :: 0x84da;
|
|
GL_TEXTURE27 :: 0x84db;
|
|
GL_TEXTURE28 :: 0x84dc;
|
|
GL_TEXTURE29 :: 0x84dd;
|
|
GL_TEXTURE30 :: 0x84de;
|
|
GL_TEXTURE31 :: 0x84df;
|
|
GL_ACTIVE_TEXTURE :: 0x84e0;
|
|
GL_MULTISAMPLE :: 0x809d;
|
|
GL_SAMPLE_ALPHA_TO_COVERAGE :: 0x809e;
|
|
GL_SAMPLE_ALPHA_TO_ONE :: 0x809f;
|
|
GL_SAMPLE_COVERAGE :: 0x80a0;
|
|
GL_SAMPLE_BUFFERS :: 0x80a8;
|
|
GL_SAMPLES :: 0x80a9;
|
|
GL_SAMPLE_COVERAGE_VALUE :: 0x80aa;
|
|
GL_SAMPLE_COVERAGE_INVERT :: 0x80ab;
|
|
GL_TEXTURE_CUBE_MAP :: 0x8513;
|
|
GL_TEXTURE_BINDING_CUBE_MAP :: 0x8514;
|
|
GL_TEXTURE_CUBE_MAP_POSITIVE_X :: 0x8515;
|
|
GL_TEXTURE_CUBE_MAP_NEGATIVE_X :: 0x8516;
|
|
GL_TEXTURE_CUBE_MAP_POSITIVE_Y :: 0x8517;
|
|
GL_TEXTURE_CUBE_MAP_NEGATIVE_Y :: 0x8518;
|
|
GL_TEXTURE_CUBE_MAP_POSITIVE_Z :: 0x8519;
|
|
GL_TEXTURE_CUBE_MAP_NEGATIVE_Z :: 0x851a;
|
|
GL_PROXY_TEXTURE_CUBE_MAP :: 0x851b;
|
|
GL_MAX_CUBE_MAP_TEXTURE_SIZE :: 0x851c;
|
|
GL_COMPRESSED_RGB :: 0x84ed;
|
|
GL_COMPRESSED_RGBA :: 0x84ee;
|
|
GL_TEXTURE_COMPRESSION_HINT :: 0x84ef;
|
|
GL_TEXTURE_COMPRESSED_IMAGE_SIZE :: 0x86a0;
|
|
GL_TEXTURE_COMPRESSED :: 0x86a1;
|
|
GL_NUM_COMPRESSED_TEXTURE_FORMATS :: 0x86a2;
|
|
GL_COMPRESSED_TEXTURE_FORMATS :: 0x86a3;
|
|
GL_CLAMP_TO_BORDER :: 0x812d;
|
|
GL_BLEND_DST_RGB :: 0x80c8;
|
|
GL_BLEND_SRC_RGB :: 0x80c9;
|
|
GL_BLEND_DST_ALPHA :: 0x80ca;
|
|
GL_BLEND_SRC_ALPHA :: 0x80cb;
|
|
GL_POINT_FADE_THRESHOLD_SIZE :: 0x8128;
|
|
GL_DEPTH_COMPONENT16 :: 0x81a5;
|
|
GL_DEPTH_COMPONENT24 :: 0x81a6;
|
|
GL_DEPTH_COMPONENT32 :: 0x81a7;
|
|
GL_MIRRORED_REPEAT :: 0x8370;
|
|
GL_MAX_TEXTURE_LOD_BIAS :: 0x84fd;
|
|
GL_TEXTURE_LOD_BIAS :: 0x8501;
|
|
GL_INCR_WRAP :: 0x8507;
|
|
GL_DECR_WRAP :: 0x8508;
|
|
GL_TEXTURE_DEPTH_SIZE :: 0x884a;
|
|
GL_TEXTURE_COMPARE_MODE :: 0x884c;
|
|
GL_TEXTURE_COMPARE_FUNC :: 0x884d;
|
|
GL_BLEND_COLOR :: 0x8005;
|
|
GL_BLEND_EQUATION :: 0x8009;
|
|
GL_CONSTANT_COLOR :: 0x8001;
|
|
GL_ONE_MINUS_CONSTANT_COLOR :: 0x8002;
|
|
GL_CONSTANT_ALPHA :: 0x8003;
|
|
GL_ONE_MINUS_CONSTANT_ALPHA :: 0x8004;
|
|
GL_FUNC_ADD :: 0x8006;
|
|
GL_FUNC_REVERSE_SUBTRACT :: 0x800b;
|
|
GL_FUNC_SUBTRACT :: 0x800a;
|
|
GL_MIN :: 0x8007;
|
|
GL_MAX :: 0x8008;
|
|
GL_BUFFER_SIZE :: 0x8764;
|
|
GL_BUFFER_USAGE :: 0x8765;
|
|
GL_QUERY_COUNTER_BITS :: 0x8864;
|
|
GL_CURRENT_QUERY :: 0x8865;
|
|
GL_QUERY_RESULT :: 0x8866;
|
|
GL_QUERY_RESULT_AVAILABLE :: 0x8867;
|
|
GL_ARRAY_BUFFER :: 0x8892;
|
|
GL_ELEMENT_ARRAY_BUFFER :: 0x8893;
|
|
GL_ARRAY_BUFFER_BINDING :: 0x8894;
|
|
GL_ELEMENT_ARRAY_BUFFER_BINDING :: 0x8895;
|
|
GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING :: 0x889f;
|
|
GL_READ_ONLY :: 0x88b8;
|
|
GL_WRITE_ONLY :: 0x88b9;
|
|
GL_READ_WRITE :: 0x88ba;
|
|
GL_BUFFER_ACCESS :: 0x88bb;
|
|
GL_BUFFER_MAPPED :: 0x88bc;
|
|
GL_BUFFER_MAP_POINTER :: 0x88bd;
|
|
GL_STREAM_DRAW :: 0x88e0;
|
|
GL_STREAM_READ :: 0x88e1;
|
|
GL_STREAM_COPY :: 0x88e2;
|
|
GL_STATIC_DRAW :: 0x88e4;
|
|
GL_STATIC_READ :: 0x88e5;
|
|
GL_STATIC_COPY :: 0x88e6;
|
|
GL_DYNAMIC_DRAW :: 0x88e8;
|
|
GL_DYNAMIC_READ :: 0x88e9;
|
|
GL_DYNAMIC_COPY :: 0x88ea;
|
|
GL_SAMPLES_PASSED :: 0x8914;
|
|
GL_SRC1_ALPHA :: 0x8589;
|
|
GL_BLEND_EQUATION_RGB :: 0x8009;
|
|
GL_VERTEX_ATTRIB_ARRAY_ENABLED :: 0x8622;
|
|
GL_VERTEX_ATTRIB_ARRAY_SIZE :: 0x8623;
|
|
GL_VERTEX_ATTRIB_ARRAY_STRIDE :: 0x8624;
|
|
GL_VERTEX_ATTRIB_ARRAY_TYPE :: 0x8625;
|
|
GL_CURRENT_VERTEX_ATTRIB :: 0x8626;
|
|
GL_VERTEX_PROGRAM_POINT_SIZE :: 0x8642;
|
|
GL_VERTEX_ATTRIB_ARRAY_POINTER :: 0x8645;
|
|
GL_STENCIL_BACK_FUNC :: 0x8800;
|
|
GL_STENCIL_BACK_FAIL :: 0x8801;
|
|
GL_STENCIL_BACK_PASS_DEPTH_FAIL :: 0x8802;
|
|
GL_STENCIL_BACK_PASS_DEPTH_PASS :: 0x8803;
|
|
GL_MAX_DRAW_BUFFERS :: 0x8824;
|
|
GL_DRAW_BUFFER0 :: 0x8825;
|
|
GL_DRAW_BUFFER1 :: 0x8826;
|
|
GL_DRAW_BUFFER2 :: 0x8827;
|
|
GL_DRAW_BUFFER3 :: 0x8828;
|
|
GL_DRAW_BUFFER4 :: 0x8829;
|
|
GL_DRAW_BUFFER5 :: 0x882a;
|
|
GL_DRAW_BUFFER6 :: 0x882b;
|
|
GL_DRAW_BUFFER7 :: 0x882c;
|
|
GL_DRAW_BUFFER8 :: 0x882d;
|
|
GL_DRAW_BUFFER9 :: 0x882e;
|
|
GL_DRAW_BUFFER10 :: 0x882f;
|
|
GL_DRAW_BUFFER11 :: 0x8830;
|
|
GL_DRAW_BUFFER12 :: 0x8831;
|
|
GL_DRAW_BUFFER13 :: 0x8832;
|
|
GL_DRAW_BUFFER14 :: 0x8833;
|
|
GL_DRAW_BUFFER15 :: 0x8834;
|
|
GL_BLEND_EQUATION_ALPHA :: 0x883d;
|
|
GL_MAX_VERTEX_ATTRIBS :: 0x8869;
|
|
GL_VERTEX_ATTRIB_ARRAY_NORMALIZED :: 0x886a;
|
|
GL_MAX_TEXTURE_IMAGE_UNITS :: 0x8872;
|
|
GL_FRAGMENT_SHADER :: 0x8b30;
|
|
GL_VERTEX_SHADER :: 0x8b31;
|
|
GL_MAX_FRAGMENT_UNIFORM_COMPONENTS :: 0x8b49;
|
|
GL_MAX_VERTEX_UNIFORM_COMPONENTS :: 0x8b4a;
|
|
GL_MAX_VARYING_FLOATS :: 0x8b4b;
|
|
GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS :: 0x8b4c;
|
|
GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS :: 0x8b4d;
|
|
GL_SHADER_TYPE :: 0x8b4f;
|
|
GL_FLOAT_VEC2 :: 0x8b50;
|
|
GL_FLOAT_VEC3 :: 0x8b51;
|
|
GL_FLOAT_VEC4 :: 0x8b52;
|
|
GL_INT_VEC2 :: 0x8b53;
|
|
GL_INT_VEC3 :: 0x8b54;
|
|
GL_INT_VEC4 :: 0x8b55;
|
|
GL_BOOL :: 0x8b56;
|
|
GL_BOOL_VEC2 :: 0x8b57;
|
|
GL_BOOL_VEC3 :: 0x8b58;
|
|
GL_BOOL_VEC4 :: 0x8b59;
|
|
GL_FLOAT_MAT2 :: 0x8b5a;
|
|
GL_FLOAT_MAT3 :: 0x8b5b;
|
|
GL_FLOAT_MAT4 :: 0x8b5c;
|
|
GL_SAMPLER_1D :: 0x8b5d;
|
|
GL_SAMPLER_2D :: 0x8b5e;
|
|
GL_SAMPLER_3D :: 0x8b5f;
|
|
GL_SAMPLER_CUBE :: 0x8b60;
|
|
GL_SAMPLER_1D_SHADOW :: 0x8b61;
|
|
GL_SAMPLER_2D_SHADOW :: 0x8b62;
|
|
GL_DELETE_STATUS :: 0x8b80;
|
|
GL_COMPILE_STATUS :: 0x8b81;
|
|
GL_LINK_STATUS :: 0x8b82;
|
|
GL_VALIDATE_STATUS :: 0x8b83;
|
|
GL_INFO_LOG_LENGTH :: 0x8b84;
|
|
GL_ATTACHED_SHADERS :: 0x8b85;
|
|
GL_ACTIVE_UNIFORMS :: 0x8b86;
|
|
GL_ACTIVE_UNIFORM_MAX_LENGTH :: 0x8b87;
|
|
GL_SHADER_SOURCE_LENGTH :: 0x8b88;
|
|
GL_ACTIVE_ATTRIBUTES :: 0x8b89;
|
|
GL_ACTIVE_ATTRIBUTE_MAX_LENGTH :: 0x8b8a;
|
|
GL_FRAGMENT_SHADER_DERIVATIVE_HINT :: 0x8b8b;
|
|
GL_SHADING_LANGUAGE_VERSION :: 0x8b8c;
|
|
GL_CURRENT_PROGRAM :: 0x8b8d;
|
|
GL_POINT_SPRITE_COORD_ORIGIN :: 0x8ca0;
|
|
GL_LOWER_LEFT :: 0x8ca1;
|
|
GL_UPPER_LEFT :: 0x8ca2;
|
|
GL_STENCIL_BACK_REF :: 0x8ca3;
|
|
GL_STENCIL_BACK_VALUE_MASK :: 0x8ca4;
|
|
GL_STENCIL_BACK_WRITEMASK :: 0x8ca5;
|
|
GL_PIXEL_PACK_BUFFER :: 0x88eb;
|
|
GL_PIXEL_UNPACK_BUFFER :: 0x88ec;
|
|
GL_PIXEL_PACK_BUFFER_BINDING :: 0x88ed;
|
|
GL_PIXEL_UNPACK_BUFFER_BINDING :: 0x88ef;
|
|
GL_FLOAT_MAT2x3 :: 0x8b65;
|
|
GL_FLOAT_MAT2x4 :: 0x8b66;
|
|
GL_FLOAT_MAT3x2 :: 0x8b67;
|
|
GL_FLOAT_MAT3x4 :: 0x8b68;
|
|
GL_FLOAT_MAT4x2 :: 0x8b69;
|
|
GL_FLOAT_MAT4x3 :: 0x8b6a;
|
|
GL_SRGB :: 0x8c40;
|
|
GL_SRGB8 :: 0x8c41;
|
|
GL_SRGB_ALPHA :: 0x8c42;
|
|
GL_SRGB8_ALPHA8 :: 0x8c43;
|
|
GL_COMPRESSED_SRGB :: 0x8c48;
|
|
GL_COMPRESSED_SRGB_ALPHA :: 0x8c49;
|
|
GL_COMPARE_REF_TO_TEXTURE :: 0x884e;
|
|
GL_CLIP_DISTANCE0 :: 0x3000;
|
|
GL_CLIP_DISTANCE1 :: 0x3001;
|
|
GL_CLIP_DISTANCE2 :: 0x3002;
|
|
GL_CLIP_DISTANCE3 :: 0x3003;
|
|
GL_CLIP_DISTANCE4 :: 0x3004;
|
|
GL_CLIP_DISTANCE5 :: 0x3005;
|
|
GL_CLIP_DISTANCE6 :: 0x3006;
|
|
GL_CLIP_DISTANCE7 :: 0x3007;
|
|
GL_MAX_CLIP_DISTANCES :: 0x0d32;
|
|
GL_MAJOR_VERSION :: 0x821b;
|
|
GL_MINOR_VERSION :: 0x821c;
|
|
GL_NUM_EXTENSIONS :: 0x821d;
|
|
GL_CONTEXT_FLAGS :: 0x821e;
|
|
GL_COMPRESSED_RED :: 0x8225;
|
|
GL_COMPRESSED_RG :: 0x8226;
|
|
GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT :: 0x00000001;
|
|
GL_RGBA32F :: 0x8814;
|
|
GL_RGB32F :: 0x8815;
|
|
GL_RGBA16F :: 0x881a;
|
|
GL_RGB16F :: 0x881b;
|
|
GL_VERTEX_ATTRIB_ARRAY_INTEGER :: 0x88fd;
|
|
GL_MAX_ARRAY_TEXTURE_LAYERS :: 0x88ff;
|
|
GL_MIN_PROGRAM_TEXEL_OFFSET :: 0x8904;
|
|
GL_MAX_PROGRAM_TEXEL_OFFSET :: 0x8905;
|
|
GL_CLAMP_READ_COLOR :: 0x891c;
|
|
GL_FIXED_ONLY :: 0x891d;
|
|
GL_MAX_VARYING_COMPONENTS :: 0x8b4b;
|
|
GL_TEXTURE_1D_ARRAY :: 0x8c18;
|
|
GL_PROXY_TEXTURE_1D_ARRAY :: 0x8c19;
|
|
GL_TEXTURE_2D_ARRAY :: 0x8c1a;
|
|
GL_PROXY_TEXTURE_2D_ARRAY :: 0x8c1b;
|
|
GL_TEXTURE_BINDING_1D_ARRAY :: 0x8c1c;
|
|
GL_TEXTURE_BINDING_2D_ARRAY :: 0x8c1d;
|
|
GL_R11F_G11F_B10F :: 0x8c3a;
|
|
GL_UNSIGNED_INT_10F_11F_11F_REV :: 0x8c3b;
|
|
GL_RGB9_E5 :: 0x8c3d;
|
|
GL_UNSIGNED_INT_5_9_9_9_REV :: 0x8c3e;
|
|
GL_TEXTURE_SHARED_SIZE :: 0x8c3f;
|
|
GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH :: 0x8c76;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_MODE :: 0x8c7f;
|
|
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS :: 0x8c80;
|
|
GL_TRANSFORM_FEEDBACK_VARYINGS :: 0x8c83;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_START :: 0x8c84;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_SIZE :: 0x8c85;
|
|
GL_PRIMITIVES_GENERATED :: 0x8c87;
|
|
GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN :: 0x8c88;
|
|
GL_RASTERIZER_DISCARD :: 0x8c89;
|
|
GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS :: 0x8c8a;
|
|
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS :: 0x8c8b;
|
|
GL_INTERLEAVED_ATTRIBS :: 0x8c8c;
|
|
GL_SEPARATE_ATTRIBS :: 0x8c8d;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER :: 0x8c8e;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_BINDING :: 0x8c8f;
|
|
GL_RGBA32UI :: 0x8d70;
|
|
GL_RGB32UI :: 0x8d71;
|
|
GL_RGBA16UI :: 0x8d76;
|
|
GL_RGB16UI :: 0x8d77;
|
|
GL_RGBA8UI :: 0x8d7c;
|
|
GL_RGB8UI :: 0x8d7d;
|
|
GL_RGBA32I :: 0x8d82;
|
|
GL_RGB32I :: 0x8d83;
|
|
GL_RGBA16I :: 0x8d88;
|
|
GL_RGB16I :: 0x8d89;
|
|
GL_RGBA8I :: 0x8d8e;
|
|
GL_RGB8I :: 0x8d8f;
|
|
GL_RED_INTEGER :: 0x8d94;
|
|
GL_GREEN_INTEGER :: 0x8d95;
|
|
GL_BLUE_INTEGER :: 0x8d96;
|
|
GL_RGB_INTEGER :: 0x8d98;
|
|
GL_RGBA_INTEGER :: 0x8d99;
|
|
GL_BGR_INTEGER :: 0x8d9a;
|
|
GL_BGRA_INTEGER :: 0x8d9b;
|
|
GL_SAMPLER_1D_ARRAY :: 0x8dc0;
|
|
GL_SAMPLER_2D_ARRAY :: 0x8dc1;
|
|
GL_SAMPLER_1D_ARRAY_SHADOW :: 0x8dc3;
|
|
GL_SAMPLER_2D_ARRAY_SHADOW :: 0x8dc4;
|
|
GL_SAMPLER_CUBE_SHADOW :: 0x8dc5;
|
|
GL_UNSIGNED_INT_VEC2 :: 0x8dc6;
|
|
GL_UNSIGNED_INT_VEC3 :: 0x8dc7;
|
|
GL_UNSIGNED_INT_VEC4 :: 0x8dc8;
|
|
GL_INT_SAMPLER_1D :: 0x8dc9;
|
|
GL_INT_SAMPLER_2D :: 0x8dca;
|
|
GL_INT_SAMPLER_3D :: 0x8dcb;
|
|
GL_INT_SAMPLER_CUBE :: 0x8dcc;
|
|
GL_INT_SAMPLER_1D_ARRAY :: 0x8dce;
|
|
GL_INT_SAMPLER_2D_ARRAY :: 0x8dcf;
|
|
GL_UNSIGNED_INT_SAMPLER_1D :: 0x8dd1;
|
|
GL_UNSIGNED_INT_SAMPLER_2D :: 0x8dd2;
|
|
GL_UNSIGNED_INT_SAMPLER_3D :: 0x8dd3;
|
|
GL_UNSIGNED_INT_SAMPLER_CUBE :: 0x8dd4;
|
|
GL_UNSIGNED_INT_SAMPLER_1D_ARRAY :: 0x8dd6;
|
|
GL_UNSIGNED_INT_SAMPLER_2D_ARRAY :: 0x8dd7;
|
|
GL_QUERY_WAIT :: 0x8e13;
|
|
GL_QUERY_NO_WAIT :: 0x8e14;
|
|
GL_QUERY_BY_REGION_WAIT :: 0x8e15;
|
|
GL_QUERY_BY_REGION_NO_WAIT :: 0x8e16;
|
|
GL_BUFFER_ACCESS_FLAGS :: 0x911f;
|
|
GL_BUFFER_MAP_LENGTH :: 0x9120;
|
|
GL_BUFFER_MAP_OFFSET :: 0x9121;
|
|
GL_DEPTH_COMPONENT32F :: 0x8cac;
|
|
GL_DEPTH32F_STENCIL8 :: 0x8cad;
|
|
GL_FLOAT_32_UNSIGNED_INT_24_8_REV :: 0x8dad;
|
|
GL_INVALID_FRAMEBUFFER_OPERATION :: 0x0506;
|
|
GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING :: 0x8210;
|
|
GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE :: 0x8211;
|
|
GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE :: 0x8212;
|
|
GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE :: 0x8213;
|
|
GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE :: 0x8214;
|
|
GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE :: 0x8215;
|
|
GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE :: 0x8216;
|
|
GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE :: 0x8217;
|
|
GL_FRAMEBUFFER_DEFAULT :: 0x8218;
|
|
GL_FRAMEBUFFER_UNDEFINED :: 0x8219;
|
|
GL_DEPTH_STENCIL_ATTACHMENT :: 0x821a;
|
|
GL_MAX_RENDERBUFFER_SIZE :: 0x84e8;
|
|
GL_DEPTH_STENCIL :: 0x84f9;
|
|
GL_UNSIGNED_INT_24_8 :: 0x84fa;
|
|
GL_DEPTH24_STENCIL8 :: 0x88f0;
|
|
GL_TEXTURE_STENCIL_SIZE :: 0x88f1;
|
|
GL_TEXTURE_RED_TYPE :: 0x8c10;
|
|
GL_TEXTURE_GREEN_TYPE :: 0x8c11;
|
|
GL_TEXTURE_BLUE_TYPE :: 0x8c12;
|
|
GL_TEXTURE_ALPHA_TYPE :: 0x8c13;
|
|
GL_TEXTURE_DEPTH_TYPE :: 0x8c16;
|
|
GL_UNSIGNED_NORMALIZED :: 0x8c17;
|
|
GL_FRAMEBUFFER_BINDING :: 0x8ca6;
|
|
GL_DRAW_FRAMEBUFFER_BINDING :: 0x8ca6;
|
|
GL_RENDERBUFFER_BINDING :: 0x8ca7;
|
|
GL_READ_FRAMEBUFFER :: 0x8ca8;
|
|
GL_DRAW_FRAMEBUFFER :: 0x8ca9;
|
|
GL_READ_FRAMEBUFFER_BINDING :: 0x8caa;
|
|
GL_RENDERBUFFER_SAMPLES :: 0x8cab;
|
|
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE :: 0x8cd0;
|
|
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME :: 0x8cd1;
|
|
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL :: 0x8cd2;
|
|
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE :: 0x8cd3;
|
|
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER :: 0x8cd4;
|
|
GL_FRAMEBUFFER_COMPLETE :: 0x8cd5;
|
|
GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT :: 0x8cd6;
|
|
GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT :: 0x8cd7;
|
|
GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER :: 0x8cdb;
|
|
GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER :: 0x8cdc;
|
|
GL_FRAMEBUFFER_UNSUPPORTED :: 0x8cdd;
|
|
GL_MAX_COLOR_ATTACHMENTS :: 0x8cdf;
|
|
GL_COLOR_ATTACHMENT0 :: 0x8ce0;
|
|
GL_COLOR_ATTACHMENT1 :: 0x8ce1;
|
|
GL_COLOR_ATTACHMENT2 :: 0x8ce2;
|
|
GL_COLOR_ATTACHMENT3 :: 0x8ce3;
|
|
GL_COLOR_ATTACHMENT4 :: 0x8ce4;
|
|
GL_COLOR_ATTACHMENT5 :: 0x8ce5;
|
|
GL_COLOR_ATTACHMENT6 :: 0x8ce6;
|
|
GL_COLOR_ATTACHMENT7 :: 0x8ce7;
|
|
GL_COLOR_ATTACHMENT8 :: 0x8ce8;
|
|
GL_COLOR_ATTACHMENT9 :: 0x8ce9;
|
|
GL_COLOR_ATTACHMENT10 :: 0x8cea;
|
|
GL_COLOR_ATTACHMENT11 :: 0x8ceb;
|
|
GL_COLOR_ATTACHMENT12 :: 0x8cec;
|
|
GL_COLOR_ATTACHMENT13 :: 0x8ced;
|
|
GL_COLOR_ATTACHMENT14 :: 0x8cee;
|
|
GL_COLOR_ATTACHMENT15 :: 0x8cef;
|
|
GL_COLOR_ATTACHMENT16 :: 0x8cf0;
|
|
GL_COLOR_ATTACHMENT17 :: 0x8cf1;
|
|
GL_COLOR_ATTACHMENT18 :: 0x8cf2;
|
|
GL_COLOR_ATTACHMENT19 :: 0x8cf3;
|
|
GL_COLOR_ATTACHMENT20 :: 0x8cf4;
|
|
GL_COLOR_ATTACHMENT21 :: 0x8cf5;
|
|
GL_COLOR_ATTACHMENT22 :: 0x8cf6;
|
|
GL_COLOR_ATTACHMENT23 :: 0x8cf7;
|
|
GL_COLOR_ATTACHMENT24 :: 0x8cf8;
|
|
GL_COLOR_ATTACHMENT25 :: 0x8cf9;
|
|
GL_COLOR_ATTACHMENT26 :: 0x8cfa;
|
|
GL_COLOR_ATTACHMENT27 :: 0x8cfb;
|
|
GL_COLOR_ATTACHMENT28 :: 0x8cfc;
|
|
GL_COLOR_ATTACHMENT29 :: 0x8cfd;
|
|
GL_COLOR_ATTACHMENT30 :: 0x8cfe;
|
|
GL_COLOR_ATTACHMENT31 :: 0x8cff;
|
|
GL_DEPTH_ATTACHMENT :: 0x8d00;
|
|
GL_STENCIL_ATTACHMENT :: 0x8d20;
|
|
GL_FRAMEBUFFER :: 0x8d40;
|
|
GL_RENDERBUFFER :: 0x8d41;
|
|
GL_RENDERBUFFER_WIDTH :: 0x8d42;
|
|
GL_RENDERBUFFER_HEIGHT :: 0x8d43;
|
|
GL_RENDERBUFFER_INTERNAL_FORMAT :: 0x8d44;
|
|
GL_STENCIL_INDEX1 :: 0x8d46;
|
|
GL_STENCIL_INDEX4 :: 0x8d47;
|
|
GL_STENCIL_INDEX8 :: 0x8d48;
|
|
GL_STENCIL_INDEX16 :: 0x8d49;
|
|
GL_RENDERBUFFER_RED_SIZE :: 0x8d50;
|
|
GL_RENDERBUFFER_GREEN_SIZE :: 0x8d51;
|
|
GL_RENDERBUFFER_BLUE_SIZE :: 0x8d52;
|
|
GL_RENDERBUFFER_ALPHA_SIZE :: 0x8d53;
|
|
GL_RENDERBUFFER_DEPTH_SIZE :: 0x8d54;
|
|
GL_RENDERBUFFER_STENCIL_SIZE :: 0x8d55;
|
|
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE :: 0x8d56;
|
|
GL_MAX_SAMPLES :: 0x8d57;
|
|
GL_FRAMEBUFFER_SRGB :: 0x8db9;
|
|
GL_HALF_FLOAT :: 0x140b;
|
|
GL_MAP_READ_BIT :: 0x0001;
|
|
GL_MAP_WRITE_BIT :: 0x0002;
|
|
GL_MAP_INVALIDATE_RANGE_BIT :: 0x0004;
|
|
GL_MAP_INVALIDATE_BUFFER_BIT :: 0x0008;
|
|
GL_MAP_FLUSH_EXPLICIT_BIT :: 0x0010;
|
|
GL_MAP_UNSYNCHRONIZED_BIT :: 0x0020;
|
|
GL_COMPRESSED_RED_RGTC1 :: 0x8dbb;
|
|
GL_COMPRESSED_SIGNED_RED_RGTC1 :: 0x8dbc;
|
|
GL_COMPRESSED_RG_RGTC2 :: 0x8dbd;
|
|
GL_COMPRESSED_SIGNED_RG_RGTC2 :: 0x8dbe;
|
|
GL_RG :: 0x8227;
|
|
GL_RG_INTEGER :: 0x8228;
|
|
GL_R8 :: 0x8229;
|
|
GL_R16 :: 0x822a;
|
|
GL_RG8 :: 0x822b;
|
|
GL_RG16 :: 0x822c;
|
|
GL_R16F :: 0x822d;
|
|
GL_R32F :: 0x822e;
|
|
GL_RG16F :: 0x822f;
|
|
GL_RG32F :: 0x8230;
|
|
GL_R8I :: 0x8231;
|
|
GL_R8UI :: 0x8232;
|
|
GL_R16I :: 0x8233;
|
|
GL_R16UI :: 0x8234;
|
|
GL_R32I :: 0x8235;
|
|
GL_R32UI :: 0x8236;
|
|
GL_RG8I :: 0x8237;
|
|
GL_RG8UI :: 0x8238;
|
|
GL_RG16I :: 0x8239;
|
|
GL_RG16UI :: 0x823a;
|
|
GL_RG32I :: 0x823b;
|
|
GL_RG32UI :: 0x823c;
|
|
GL_VERTEX_ARRAY_BINDING :: 0x85b5;
|
|
GL_SAMPLER_2D_RECT :: 0x8b63;
|
|
GL_SAMPLER_2D_RECT_SHADOW :: 0x8b64;
|
|
GL_SAMPLER_BUFFER :: 0x8dc2;
|
|
GL_INT_SAMPLER_2D_RECT :: 0x8dcd;
|
|
GL_INT_SAMPLER_BUFFER :: 0x8dd0;
|
|
GL_UNSIGNED_INT_SAMPLER_2D_RECT :: 0x8dd5;
|
|
GL_UNSIGNED_INT_SAMPLER_BUFFER :: 0x8dd8;
|
|
GL_TEXTURE_BUFFER :: 0x8c2a;
|
|
GL_MAX_TEXTURE_BUFFER_SIZE :: 0x8c2b;
|
|
GL_TEXTURE_BINDING_BUFFER :: 0x8c2c;
|
|
GL_TEXTURE_BUFFER_DATA_STORE_BINDING :: 0x8c2d;
|
|
GL_TEXTURE_RECTANGLE :: 0x84f5;
|
|
GL_TEXTURE_BINDING_RECTANGLE :: 0x84f6;
|
|
GL_PROXY_TEXTURE_RECTANGLE :: 0x84f7;
|
|
GL_MAX_RECTANGLE_TEXTURE_SIZE :: 0x84f8;
|
|
GL_R8_SNORM :: 0x8f94;
|
|
GL_RG8_SNORM :: 0x8f95;
|
|
GL_RGB8_SNORM :: 0x8f96;
|
|
GL_RGBA8_SNORM :: 0x8f97;
|
|
GL_R16_SNORM :: 0x8f98;
|
|
GL_RG16_SNORM :: 0x8f99;
|
|
GL_RGB16_SNORM :: 0x8f9a;
|
|
GL_RGBA16_SNORM :: 0x8f9b;
|
|
GL_SIGNED_NORMALIZED :: 0x8f9c;
|
|
GL_PRIMITIVE_RESTART :: 0x8f9d;
|
|
GL_PRIMITIVE_RESTART_INDEX :: 0x8f9e;
|
|
GL_COPY_READ_BUFFER :: 0x8f36;
|
|
GL_COPY_WRITE_BUFFER :: 0x8f37;
|
|
GL_UNIFORM_BUFFER :: 0x8a11;
|
|
GL_UNIFORM_BUFFER_BINDING :: 0x8a28;
|
|
GL_UNIFORM_BUFFER_START :: 0x8a29;
|
|
GL_UNIFORM_BUFFER_SIZE :: 0x8a2a;
|
|
GL_MAX_VERTEX_UNIFORM_BLOCKS :: 0x8a2b;
|
|
GL_MAX_GEOMETRY_UNIFORM_BLOCKS :: 0x8a2c;
|
|
GL_MAX_FRAGMENT_UNIFORM_BLOCKS :: 0x8a2d;
|
|
GL_MAX_COMBINED_UNIFORM_BLOCKS :: 0x8a2e;
|
|
GL_MAX_UNIFORM_BUFFER_BINDINGS :: 0x8a2f;
|
|
GL_MAX_UNIFORM_BLOCK_SIZE :: 0x8a30;
|
|
GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS :: 0x8a31;
|
|
GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS :: 0x8a32;
|
|
GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS :: 0x8a33;
|
|
GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT :: 0x8a34;
|
|
GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH :: 0x8a35;
|
|
GL_ACTIVE_UNIFORM_BLOCKS :: 0x8a36;
|
|
GL_UNIFORM_TYPE :: 0x8a37;
|
|
GL_UNIFORM_SIZE :: 0x8a38;
|
|
GL_UNIFORM_NAME_LENGTH :: 0x8a39;
|
|
GL_UNIFORM_BLOCK_INDEX :: 0x8a3a;
|
|
GL_UNIFORM_OFFSET :: 0x8a3b;
|
|
GL_UNIFORM_ARRAY_STRIDE :: 0x8a3c;
|
|
GL_UNIFORM_MATRIX_STRIDE :: 0x8a3d;
|
|
GL_UNIFORM_IS_ROW_MAJOR :: 0x8a3e;
|
|
GL_UNIFORM_BLOCK_BINDING :: 0x8a3f;
|
|
GL_UNIFORM_BLOCK_DATA_SIZE :: 0x8a40;
|
|
GL_UNIFORM_BLOCK_NAME_LENGTH :: 0x8a41;
|
|
GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS :: 0x8a42;
|
|
GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES :: 0x8a43;
|
|
GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER :: 0x8a44;
|
|
GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER :: 0x8a45;
|
|
GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER :: 0x8a46;
|
|
GL_INVALID_INDEX :: 0xffffffff;
|
|
GL_CONTEXT_CORE_PROFILE_BIT :: 0x00000001;
|
|
GL_CONTEXT_COMPATIBILITY_PROFILE_BIT :: 0x00000002;
|
|
GL_LINES_ADJACENCY :: 0x000a;
|
|
GL_LINE_STRIP_ADJACENCY :: 0x000b;
|
|
GL_TRIANGLES_ADJACENCY :: 0x000c;
|
|
GL_TRIANGLE_STRIP_ADJACENCY :: 0x000d;
|
|
GL_PROGRAM_POINT_SIZE :: 0x8642;
|
|
GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS :: 0x8c29;
|
|
GL_FRAMEBUFFER_ATTACHMENT_LAYERED :: 0x8da7;
|
|
GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS :: 0x8da8;
|
|
GL_GEOMETRY_SHADER :: 0x8dd9;
|
|
GL_GEOMETRY_VERTICES_OUT :: 0x8916;
|
|
GL_GEOMETRY_INPUT_TYPE :: 0x8917;
|
|
GL_GEOMETRY_OUTPUT_TYPE :: 0x8918;
|
|
GL_MAX_GEOMETRY_UNIFORM_COMPONENTS :: 0x8ddf;
|
|
GL_MAX_GEOMETRY_OUTPUT_VERTICES :: 0x8de0;
|
|
GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS :: 0x8de1;
|
|
GL_MAX_VERTEX_OUTPUT_COMPONENTS :: 0x9122;
|
|
GL_MAX_GEOMETRY_INPUT_COMPONENTS :: 0x9123;
|
|
GL_MAX_GEOMETRY_OUTPUT_COMPONENTS :: 0x9124;
|
|
GL_MAX_FRAGMENT_INPUT_COMPONENTS :: 0x9125;
|
|
GL_CONTEXT_PROFILE_MASK :: 0x9126;
|
|
GL_DEPTH_CLAMP :: 0x864f;
|
|
GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION :: 0x8e4c;
|
|
GL_FIRST_VERTEX_CONVENTION :: 0x8e4d;
|
|
GL_LAST_VERTEX_CONVENTION :: 0x8e4e;
|
|
GL_PROVOKING_VERTEX :: 0x8e4f;
|
|
GL_TEXTURE_CUBE_MAP_SEAMLESS :: 0x884f;
|
|
GL_MAX_SERVER_WAIT_TIMEOUT :: 0x9111;
|
|
GL_OBJECT_TYPE :: 0x9112;
|
|
GL_SYNC_CONDITION :: 0x9113;
|
|
GL_SYNC_STATUS :: 0x9114;
|
|
GL_SYNC_FLAGS :: 0x9115;
|
|
GL_SYNC_FENCE :: 0x9116;
|
|
GL_SYNC_GPU_COMMANDS_COMPLETE :: 0x9117;
|
|
GL_UNSIGNALED :: 0x9118;
|
|
GL_SIGNALED :: 0x9119;
|
|
GL_ALREADY_SIGNALED :: 0x911a;
|
|
GL_TIMEOUT_EXPIRED :: 0x911b;
|
|
GL_CONDITION_SATISFIED :: 0x911c;
|
|
GL_WAIT_FAILED :: 0x911d;
|
|
GL_TIMEOUT_IGNORED :: 0xffffffffffffffff;
|
|
GL_SYNC_FLUSH_COMMANDS_BIT :: 0x00000001;
|
|
GL_SAMPLE_POSITION :: 0x8e50;
|
|
GL_SAMPLE_MASK :: 0x8e51;
|
|
GL_SAMPLE_MASK_VALUE :: 0x8e52;
|
|
GL_MAX_SAMPLE_MASK_WORDS :: 0x8e59;
|
|
GL_TEXTURE_2D_MULTISAMPLE :: 0x9100;
|
|
GL_PROXY_TEXTURE_2D_MULTISAMPLE :: 0x9101;
|
|
GL_TEXTURE_2D_MULTISAMPLE_ARRAY :: 0x9102;
|
|
GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY :: 0x9103;
|
|
GL_TEXTURE_BINDING_2D_MULTISAMPLE :: 0x9104;
|
|
GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY :: 0x9105;
|
|
GL_TEXTURE_SAMPLES :: 0x9106;
|
|
GL_TEXTURE_FIXED_SAMPLE_LOCATIONS :: 0x9107;
|
|
GL_SAMPLER_2D_MULTISAMPLE :: 0x9108;
|
|
GL_INT_SAMPLER_2D_MULTISAMPLE :: 0x9109;
|
|
GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE :: 0x910a;
|
|
GL_SAMPLER_2D_MULTISAMPLE_ARRAY :: 0x910b;
|
|
GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY :: 0x910c;
|
|
GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY :: 0x910d;
|
|
GL_MAX_COLOR_TEXTURE_SAMPLES :: 0x910e;
|
|
GL_MAX_DEPTH_TEXTURE_SAMPLES :: 0x910f;
|
|
GL_MAX_INTEGER_SAMPLES :: 0x9110;
|
|
GL_VERTEX_ATTRIB_ARRAY_DIVISOR :: 0x88fe;
|
|
GL_SRC1_COLOR :: 0x88f9;
|
|
GL_ONE_MINUS_SRC1_COLOR :: 0x88fa;
|
|
GL_ONE_MINUS_SRC1_ALPHA :: 0x88fb;
|
|
GL_MAX_DUAL_SOURCE_DRAW_BUFFERS :: 0x88fc;
|
|
GL_ANY_SAMPLES_PASSED :: 0x8c2f;
|
|
GL_SAMPLER_BINDING :: 0x8919;
|
|
GL_RGB10_A2UI :: 0x906f;
|
|
GL_TEXTURE_SWIZZLE_R :: 0x8e42;
|
|
GL_TEXTURE_SWIZZLE_G :: 0x8e43;
|
|
GL_TEXTURE_SWIZZLE_B :: 0x8e44;
|
|
GL_TEXTURE_SWIZZLE_A :: 0x8e45;
|
|
GL_TEXTURE_SWIZZLE_RGBA :: 0x8e46;
|
|
GL_TIME_ELAPSED :: 0x88bf;
|
|
GL_TIMESTAMP :: 0x8e28;
|
|
GL_INT_2_10_10_10_REV :: 0x8d9f;
|
|
GL_SAMPLE_SHADING :: 0x8c36;
|
|
GL_MIN_SAMPLE_SHADING_VALUE :: 0x8c37;
|
|
GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET :: 0x8e5e;
|
|
GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET :: 0x8e5f;
|
|
GL_TEXTURE_CUBE_MAP_ARRAY :: 0x9009;
|
|
GL_TEXTURE_BINDING_CUBE_MAP_ARRAY :: 0x900a;
|
|
GL_PROXY_TEXTURE_CUBE_MAP_ARRAY :: 0x900b;
|
|
GL_SAMPLER_CUBE_MAP_ARRAY :: 0x900c;
|
|
GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW :: 0x900d;
|
|
GL_INT_SAMPLER_CUBE_MAP_ARRAY :: 0x900e;
|
|
GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY :: 0x900f;
|
|
GL_DRAW_INDIRECT_BUFFER :: 0x8f3f;
|
|
GL_DRAW_INDIRECT_BUFFER_BINDING :: 0x8f43;
|
|
GL_GEOMETRY_SHADER_INVOCATIONS :: 0x887f;
|
|
GL_MAX_GEOMETRY_SHADER_INVOCATIONS :: 0x8e5a;
|
|
GL_MIN_FRAGMENT_INTERPOLATION_OFFSET :: 0x8e5b;
|
|
GL_MAX_FRAGMENT_INTERPOLATION_OFFSET :: 0x8e5c;
|
|
GL_FRAGMENT_INTERPOLATION_OFFSET_BITS :: 0x8e5d;
|
|
GL_MAX_VERTEX_STREAMS :: 0x8e71;
|
|
GL_DOUBLE_VEC2 :: 0x8ffc;
|
|
GL_DOUBLE_VEC3 :: 0x8ffd;
|
|
GL_DOUBLE_VEC4 :: 0x8ffe;
|
|
GL_DOUBLE_MAT2 :: 0x8f46;
|
|
GL_DOUBLE_MAT3 :: 0x8f47;
|
|
GL_DOUBLE_MAT4 :: 0x8f48;
|
|
GL_DOUBLE_MAT2x3 :: 0x8f49;
|
|
GL_DOUBLE_MAT2x4 :: 0x8f4a;
|
|
GL_DOUBLE_MAT3x2 :: 0x8f4b;
|
|
GL_DOUBLE_MAT3x4 :: 0x8f4c;
|
|
GL_DOUBLE_MAT4x2 :: 0x8f4d;
|
|
GL_DOUBLE_MAT4x3 :: 0x8f4e;
|
|
GL_ACTIVE_SUBROUTINES :: 0x8de5;
|
|
GL_ACTIVE_SUBROUTINE_UNIFORMS :: 0x8de6;
|
|
GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS :: 0x8e47;
|
|
GL_ACTIVE_SUBROUTINE_MAX_LENGTH :: 0x8e48;
|
|
GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH :: 0x8e49;
|
|
GL_MAX_SUBROUTINES :: 0x8de7;
|
|
GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS :: 0x8de8;
|
|
GL_NUM_COMPATIBLE_SUBROUTINES :: 0x8e4a;
|
|
GL_COMPATIBLE_SUBROUTINES :: 0x8e4b;
|
|
GL_PATCHES :: 0x000e;
|
|
GL_PATCH_VERTICES :: 0x8e72;
|
|
GL_PATCH_DEFAULT_INNER_LEVEL :: 0x8e73;
|
|
GL_PATCH_DEFAULT_OUTER_LEVEL :: 0x8e74;
|
|
GL_TESS_CONTROL_OUTPUT_VERTICES :: 0x8e75;
|
|
GL_TESS_GEN_MODE :: 0x8e76;
|
|
GL_TESS_GEN_SPACING :: 0x8e77;
|
|
GL_TESS_GEN_VERTEX_ORDER :: 0x8e78;
|
|
GL_TESS_GEN_POINT_MODE :: 0x8e79;
|
|
GL_ISOLINES :: 0x8e7a;
|
|
GL_QUADS :: 0x0007;
|
|
GL_FRACTIONAL_ODD :: 0x8e7b;
|
|
GL_FRACTIONAL_EVEN :: 0x8e7c;
|
|
GL_MAX_PATCH_VERTICES :: 0x8e7d;
|
|
GL_MAX_TESS_GEN_LEVEL :: 0x8e7e;
|
|
GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS :: 0x8e7f;
|
|
GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS :: 0x8e80;
|
|
GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS :: 0x8e81;
|
|
GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS :: 0x8e82;
|
|
GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS :: 0x8e83;
|
|
GL_MAX_TESS_PATCH_COMPONENTS :: 0x8e84;
|
|
GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS :: 0x8e85;
|
|
GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS :: 0x8e86;
|
|
GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS :: 0x8e89;
|
|
GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS :: 0x8e8a;
|
|
GL_MAX_TESS_CONTROL_INPUT_COMPONENTS :: 0x886c;
|
|
GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS :: 0x886d;
|
|
GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS :: 0x8e1e;
|
|
GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS :: 0x8e1f;
|
|
GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER :: 0x84f0;
|
|
GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER :: 0x84f1;
|
|
GL_TESS_EVALUATION_SHADER :: 0x8e87;
|
|
GL_TESS_CONTROL_SHADER :: 0x8e88;
|
|
GL_TRANSFORM_FEEDBACK :: 0x8e22;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED :: 0x8e23;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE :: 0x8e24;
|
|
GL_TRANSFORM_FEEDBACK_BINDING :: 0x8e25;
|
|
GL_MAX_TRANSFORM_FEEDBACK_BUFFERS :: 0x8e70;
|
|
GL_FIXED :: 0x140c;
|
|
GL_IMPLEMENTATION_COLOR_READ_TYPE :: 0x8b9a;
|
|
GL_IMPLEMENTATION_COLOR_READ_FORMAT :: 0x8b9b;
|
|
GL_LOW_FLOAT :: 0x8df0;
|
|
GL_MEDIUM_FLOAT :: 0x8df1;
|
|
GL_HIGH_FLOAT :: 0x8df2;
|
|
GL_LOW_INT :: 0x8df3;
|
|
GL_MEDIUM_INT :: 0x8df4;
|
|
GL_HIGH_INT :: 0x8df5;
|
|
GL_SHADER_COMPILER :: 0x8dfa;
|
|
GL_SHADER_BINARY_FORMATS :: 0x8df8;
|
|
GL_NUM_SHADER_BINARY_FORMATS :: 0x8df9;
|
|
GL_MAX_VERTEX_UNIFORM_VECTORS :: 0x8dfb;
|
|
GL_MAX_VARYING_VECTORS :: 0x8dfc;
|
|
GL_MAX_FRAGMENT_UNIFORM_VECTORS :: 0x8dfd;
|
|
GL_RGB565 :: 0x8d62;
|
|
GL_PROGRAM_BINARY_RETRIEVABLE_HINT :: 0x8257;
|
|
GL_PROGRAM_BINARY_LENGTH :: 0x8741;
|
|
GL_NUM_PROGRAM_BINARY_FORMATS :: 0x87fe;
|
|
GL_PROGRAM_BINARY_FORMATS :: 0x87ff;
|
|
GL_VERTEX_SHADER_BIT :: 0x00000001;
|
|
GL_FRAGMENT_SHADER_BIT :: 0x00000002;
|
|
GL_GEOMETRY_SHADER_BIT :: 0x00000004;
|
|
GL_TESS_CONTROL_SHADER_BIT :: 0x00000008;
|
|
GL_TESS_EVALUATION_SHADER_BIT :: 0x00000010;
|
|
GL_ALL_SHADER_BITS :: 0xffffffff;
|
|
GL_PROGRAM_SEPARABLE :: 0x8258;
|
|
GL_ACTIVE_PROGRAM :: 0x8259;
|
|
GL_PROGRAM_PIPELINE_BINDING :: 0x825a;
|
|
GL_MAX_VIEWPORTS :: 0x825b;
|
|
GL_VIEWPORT_SUBPIXEL_BITS :: 0x825c;
|
|
GL_VIEWPORT_BOUNDS_RANGE :: 0x825d;
|
|
GL_LAYER_PROVOKING_VERTEX :: 0x825e;
|
|
GL_VIEWPORT_INDEX_PROVOKING_VERTEX :: 0x825f;
|
|
GL_UNDEFINED_VERTEX :: 0x8260;
|
|
GL_COPY_READ_BUFFER_BINDING :: 0x8f36;
|
|
GL_COPY_WRITE_BUFFER_BINDING :: 0x8f37;
|
|
GL_TRANSFORM_FEEDBACK_ACTIVE :: 0x8e24;
|
|
GL_TRANSFORM_FEEDBACK_PAUSED :: 0x8e23;
|
|
GL_UNPACK_COMPRESSED_BLOCK_WIDTH :: 0x9127;
|
|
GL_UNPACK_COMPRESSED_BLOCK_HEIGHT :: 0x9128;
|
|
GL_UNPACK_COMPRESSED_BLOCK_DEPTH :: 0x9129;
|
|
GL_UNPACK_COMPRESSED_BLOCK_SIZE :: 0x912a;
|
|
GL_PACK_COMPRESSED_BLOCK_WIDTH :: 0x912b;
|
|
GL_PACK_COMPRESSED_BLOCK_HEIGHT :: 0x912c;
|
|
GL_PACK_COMPRESSED_BLOCK_DEPTH :: 0x912d;
|
|
GL_PACK_COMPRESSED_BLOCK_SIZE :: 0x912e;
|
|
GL_NUM_SAMPLE_COUNTS :: 0x9380;
|
|
GL_MIN_MAP_BUFFER_ALIGNMENT :: 0x90bc;
|
|
GL_ATOMIC_COUNTER_BUFFER :: 0x92c0;
|
|
GL_ATOMIC_COUNTER_BUFFER_BINDING :: 0x92c1;
|
|
GL_ATOMIC_COUNTER_BUFFER_START :: 0x92c2;
|
|
GL_ATOMIC_COUNTER_BUFFER_SIZE :: 0x92c3;
|
|
GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE :: 0x92c4;
|
|
GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS :: 0x92c5;
|
|
GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES :: 0x92c6;
|
|
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER :: 0x92c7;
|
|
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER :: 0x92c8;
|
|
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER :: 0x92c9;
|
|
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER :: 0x92ca;
|
|
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER :: 0x92cb;
|
|
GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS :: 0x92cc;
|
|
GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS :: 0x92cd;
|
|
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS :: 0x92ce;
|
|
GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS :: 0x92cf;
|
|
GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS :: 0x92d0;
|
|
GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS :: 0x92d1;
|
|
GL_MAX_VERTEX_ATOMIC_COUNTERS :: 0x92d2;
|
|
GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS :: 0x92d3;
|
|
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS :: 0x92d4;
|
|
GL_MAX_GEOMETRY_ATOMIC_COUNTERS :: 0x92d5;
|
|
GL_MAX_FRAGMENT_ATOMIC_COUNTERS :: 0x92d6;
|
|
GL_MAX_COMBINED_ATOMIC_COUNTERS :: 0x92d7;
|
|
GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE :: 0x92d8;
|
|
GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS :: 0x92dc;
|
|
GL_ACTIVE_ATOMIC_COUNTER_BUFFERS :: 0x92d9;
|
|
GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX :: 0x92da;
|
|
GL_UNSIGNED_INT_ATOMIC_COUNTER :: 0x92db;
|
|
GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT :: 0x00000001;
|
|
GL_ELEMENT_ARRAY_BARRIER_BIT :: 0x00000002;
|
|
GL_UNIFORM_BARRIER_BIT :: 0x00000004;
|
|
GL_TEXTURE_FETCH_BARRIER_BIT :: 0x00000008;
|
|
GL_SHADER_IMAGE_ACCESS_BARRIER_BIT :: 0x00000020;
|
|
GL_COMMAND_BARRIER_BIT :: 0x00000040;
|
|
GL_PIXEL_BUFFER_BARRIER_BIT :: 0x00000080;
|
|
GL_TEXTURE_UPDATE_BARRIER_BIT :: 0x00000100;
|
|
GL_BUFFER_UPDATE_BARRIER_BIT :: 0x00000200;
|
|
GL_FRAMEBUFFER_BARRIER_BIT :: 0x00000400;
|
|
GL_TRANSFORM_FEEDBACK_BARRIER_BIT :: 0x00000800;
|
|
GL_ATOMIC_COUNTER_BARRIER_BIT :: 0x00001000;
|
|
GL_ALL_BARRIER_BITS :: 0xffffffff;
|
|
GL_MAX_IMAGE_UNITS :: 0x8f38;
|
|
GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS :: 0x8f39;
|
|
GL_IMAGE_BINDING_NAME :: 0x8f3a;
|
|
GL_IMAGE_BINDING_LEVEL :: 0x8f3b;
|
|
GL_IMAGE_BINDING_LAYERED :: 0x8f3c;
|
|
GL_IMAGE_BINDING_LAYER :: 0x8f3d;
|
|
GL_IMAGE_BINDING_ACCESS :: 0x8f3e;
|
|
GL_IMAGE_1D :: 0x904c;
|
|
GL_IMAGE_2D :: 0x904d;
|
|
GL_IMAGE_3D :: 0x904e;
|
|
GL_IMAGE_2D_RECT :: 0x904f;
|
|
GL_IMAGE_CUBE :: 0x9050;
|
|
GL_IMAGE_BUFFER :: 0x9051;
|
|
GL_IMAGE_1D_ARRAY :: 0x9052;
|
|
GL_IMAGE_2D_ARRAY :: 0x9053;
|
|
GL_IMAGE_CUBE_MAP_ARRAY :: 0x9054;
|
|
GL_IMAGE_2D_MULTISAMPLE :: 0x9055;
|
|
GL_IMAGE_2D_MULTISAMPLE_ARRAY :: 0x9056;
|
|
GL_INT_IMAGE_1D :: 0x9057;
|
|
GL_INT_IMAGE_2D :: 0x9058;
|
|
GL_INT_IMAGE_3D :: 0x9059;
|
|
GL_INT_IMAGE_2D_RECT :: 0x905a;
|
|
GL_INT_IMAGE_CUBE :: 0x905b;
|
|
GL_INT_IMAGE_BUFFER :: 0x905c;
|
|
GL_INT_IMAGE_1D_ARRAY :: 0x905d;
|
|
GL_INT_IMAGE_2D_ARRAY :: 0x905e;
|
|
GL_INT_IMAGE_CUBE_MAP_ARRAY :: 0x905f;
|
|
GL_INT_IMAGE_2D_MULTISAMPLE :: 0x9060;
|
|
GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY :: 0x9061;
|
|
GL_UNSIGNED_INT_IMAGE_1D :: 0x9062;
|
|
GL_UNSIGNED_INT_IMAGE_2D :: 0x9063;
|
|
GL_UNSIGNED_INT_IMAGE_3D :: 0x9064;
|
|
GL_UNSIGNED_INT_IMAGE_2D_RECT :: 0x9065;
|
|
GL_UNSIGNED_INT_IMAGE_CUBE :: 0x9066;
|
|
GL_UNSIGNED_INT_IMAGE_BUFFER :: 0x9067;
|
|
GL_UNSIGNED_INT_IMAGE_1D_ARRAY :: 0x9068;
|
|
GL_UNSIGNED_INT_IMAGE_2D_ARRAY :: 0x9069;
|
|
GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY :: 0x906a;
|
|
GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE :: 0x906b;
|
|
GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY :: 0x906c;
|
|
GL_MAX_IMAGE_SAMPLES :: 0x906d;
|
|
GL_IMAGE_BINDING_FORMAT :: 0x906e;
|
|
GL_IMAGE_FORMAT_COMPATIBILITY_TYPE :: 0x90c7;
|
|
GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE :: 0x90c8;
|
|
GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS :: 0x90c9;
|
|
GL_MAX_VERTEX_IMAGE_UNIFORMS :: 0x90ca;
|
|
GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS :: 0x90cb;
|
|
GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS :: 0x90cc;
|
|
GL_MAX_GEOMETRY_IMAGE_UNIFORMS :: 0x90cd;
|
|
GL_MAX_FRAGMENT_IMAGE_UNIFORMS :: 0x90ce;
|
|
GL_MAX_COMBINED_IMAGE_UNIFORMS :: 0x90cf;
|
|
GL_COMPRESSED_RGBA_BPTC_UNORM :: 0x8e8c;
|
|
GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM :: 0x8e8d;
|
|
GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT :: 0x8e8e;
|
|
GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT :: 0x8e8f;
|
|
GL_TEXTURE_IMMUTABLE_FORMAT :: 0x912f;
|
|
GL_NUM_SHADING_LANGUAGE_VERSIONS :: 0x82e9;
|
|
GL_VERTEX_ATTRIB_ARRAY_LONG :: 0x874e;
|
|
GL_COMPRESSED_RGB8_ETC2 :: 0x9274;
|
|
GL_COMPRESSED_SRGB8_ETC2 :: 0x9275;
|
|
GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 :: 0x9276;
|
|
GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 :: 0x9277;
|
|
GL_COMPRESSED_RGBA8_ETC2_EAC :: 0x9278;
|
|
GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC :: 0x9279;
|
|
GL_COMPRESSED_R11_EAC :: 0x9270;
|
|
GL_COMPRESSED_SIGNED_R11_EAC :: 0x9271;
|
|
GL_COMPRESSED_RG11_EAC :: 0x9272;
|
|
GL_COMPRESSED_SIGNED_RG11_EAC :: 0x9273;
|
|
GL_PRIMITIVE_RESTART_FIXED_INDEX :: 0x8d69;
|
|
GL_ANY_SAMPLES_PASSED_CONSERVATIVE :: 0x8d6a;
|
|
GL_MAX_ELEMENT_INDEX :: 0x8d6b;
|
|
GL_COMPUTE_SHADER :: 0x91b9;
|
|
GL_MAX_COMPUTE_UNIFORM_BLOCKS :: 0x91bb;
|
|
GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS :: 0x91bc;
|
|
GL_MAX_COMPUTE_IMAGE_UNIFORMS :: 0x91bd;
|
|
GL_MAX_COMPUTE_SHARED_MEMORY_SIZE :: 0x8262;
|
|
GL_MAX_COMPUTE_UNIFORM_COMPONENTS :: 0x8263;
|
|
GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS :: 0x8264;
|
|
GL_MAX_COMPUTE_ATOMIC_COUNTERS :: 0x8265;
|
|
GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS :: 0x8266;
|
|
GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS :: 0x90eb;
|
|
GL_MAX_COMPUTE_WORK_GROUP_COUNT :: 0x91be;
|
|
GL_MAX_COMPUTE_WORK_GROUP_SIZE :: 0x91bf;
|
|
GL_COMPUTE_WORK_GROUP_SIZE :: 0x8267;
|
|
GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER :: 0x90ec;
|
|
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER :: 0x90ed;
|
|
GL_DISPATCH_INDIRECT_BUFFER :: 0x90ee;
|
|
GL_DISPATCH_INDIRECT_BUFFER_BINDING :: 0x90ef;
|
|
GL_COMPUTE_SHADER_BIT :: 0x00000020;
|
|
GL_DEBUG_OUTPUT_SYNCHRONOUS :: 0x8242;
|
|
GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH :: 0x8243;
|
|
GL_DEBUG_CALLBACK_FUNCTION :: 0x8244;
|
|
GL_DEBUG_CALLBACK_USER_PARAM :: 0x8245;
|
|
GL_DEBUG_SOURCE_API :: 0x8246;
|
|
GL_DEBUG_SOURCE_WINDOW_SYSTEM :: 0x8247;
|
|
GL_DEBUG_SOURCE_SHADER_COMPILER :: 0x8248;
|
|
GL_DEBUG_SOURCE_THIRD_PARTY :: 0x8249;
|
|
GL_DEBUG_SOURCE_APPLICATION :: 0x824a;
|
|
GL_DEBUG_SOURCE_OTHER :: 0x824b;
|
|
GL_DEBUG_TYPE_ERROR :: 0x824c;
|
|
GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR :: 0x824d;
|
|
GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR :: 0x824e;
|
|
GL_DEBUG_TYPE_PORTABILITY :: 0x824f;
|
|
GL_DEBUG_TYPE_PERFORMANCE :: 0x8250;
|
|
GL_DEBUG_TYPE_OTHER :: 0x8251;
|
|
GL_MAX_DEBUG_MESSAGE_LENGTH :: 0x9143;
|
|
GL_MAX_DEBUG_LOGGED_MESSAGES :: 0x9144;
|
|
GL_DEBUG_LOGGED_MESSAGES :: 0x9145;
|
|
GL_DEBUG_SEVERITY_HIGH :: 0x9146;
|
|
GL_DEBUG_SEVERITY_MEDIUM :: 0x9147;
|
|
GL_DEBUG_SEVERITY_LOW :: 0x9148;
|
|
GL_DEBUG_TYPE_MARKER :: 0x8268;
|
|
GL_DEBUG_TYPE_PUSH_GROUP :: 0x8269;
|
|
GL_DEBUG_TYPE_POP_GROUP :: 0x826a;
|
|
GL_DEBUG_SEVERITY_NOTIFICATION :: 0x826b;
|
|
GL_MAX_DEBUG_GROUP_STACK_DEPTH :: 0x826c;
|
|
GL_DEBUG_GROUP_STACK_DEPTH :: 0x826d;
|
|
GL_BUFFER :: 0x82e0;
|
|
GL_SHADER :: 0x82e1;
|
|
GL_PROGRAM :: 0x82e2;
|
|
GL_VERTEX_ARRAY :: 0x8074;
|
|
GL_QUERY :: 0x82e3;
|
|
GL_PROGRAM_PIPELINE :: 0x82e4;
|
|
GL_SAMPLER :: 0x82e6;
|
|
GL_MAX_LABEL_LENGTH :: 0x82e8;
|
|
GL_DEBUG_OUTPUT :: 0x92e0;
|
|
GL_CONTEXT_FLAG_DEBUG_BIT :: 0x00000002;
|
|
GL_MAX_UNIFORM_LOCATIONS :: 0x826e;
|
|
GL_FRAMEBUFFER_DEFAULT_WIDTH :: 0x9310;
|
|
GL_FRAMEBUFFER_DEFAULT_HEIGHT :: 0x9311;
|
|
GL_FRAMEBUFFER_DEFAULT_LAYERS :: 0x9312;
|
|
GL_FRAMEBUFFER_DEFAULT_SAMPLES :: 0x9313;
|
|
GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS :: 0x9314;
|
|
GL_MAX_FRAMEBUFFER_WIDTH :: 0x9315;
|
|
GL_MAX_FRAMEBUFFER_HEIGHT :: 0x9316;
|
|
GL_MAX_FRAMEBUFFER_LAYERS :: 0x9317;
|
|
GL_MAX_FRAMEBUFFER_SAMPLES :: 0x9318;
|
|
GL_INTERNALFORMAT_SUPPORTED :: 0x826f;
|
|
GL_INTERNALFORMAT_PREFERRED :: 0x8270;
|
|
GL_INTERNALFORMAT_RED_SIZE :: 0x8271;
|
|
GL_INTERNALFORMAT_GREEN_SIZE :: 0x8272;
|
|
GL_INTERNALFORMAT_BLUE_SIZE :: 0x8273;
|
|
GL_INTERNALFORMAT_ALPHA_SIZE :: 0x8274;
|
|
GL_INTERNALFORMAT_DEPTH_SIZE :: 0x8275;
|
|
GL_INTERNALFORMAT_STENCIL_SIZE :: 0x8276;
|
|
GL_INTERNALFORMAT_SHARED_SIZE :: 0x8277;
|
|
GL_INTERNALFORMAT_RED_TYPE :: 0x8278;
|
|
GL_INTERNALFORMAT_GREEN_TYPE :: 0x8279;
|
|
GL_INTERNALFORMAT_BLUE_TYPE :: 0x827a;
|
|
GL_INTERNALFORMAT_ALPHA_TYPE :: 0x827b;
|
|
GL_INTERNALFORMAT_DEPTH_TYPE :: 0x827c;
|
|
GL_INTERNALFORMAT_STENCIL_TYPE :: 0x827d;
|
|
GL_MAX_WIDTH :: 0x827e;
|
|
GL_MAX_HEIGHT :: 0x827f;
|
|
GL_MAX_DEPTH :: 0x8280;
|
|
GL_MAX_LAYERS :: 0x8281;
|
|
GL_MAX_COMBINED_DIMENSIONS :: 0x8282;
|
|
GL_COLOR_COMPONENTS :: 0x8283;
|
|
GL_DEPTH_COMPONENTS :: 0x8284;
|
|
GL_STENCIL_COMPONENTS :: 0x8285;
|
|
GL_COLOR_RENDERABLE :: 0x8286;
|
|
GL_DEPTH_RENDERABLE :: 0x8287;
|
|
GL_STENCIL_RENDERABLE :: 0x8288;
|
|
GL_FRAMEBUFFER_RENDERABLE :: 0x8289;
|
|
GL_FRAMEBUFFER_RENDERABLE_LAYERED :: 0x828a;
|
|
GL_FRAMEBUFFER_BLEND :: 0x828b;
|
|
GL_READ_PIXELS :: 0x828c;
|
|
GL_READ_PIXELS_FORMAT :: 0x828d;
|
|
GL_READ_PIXELS_TYPE :: 0x828e;
|
|
GL_TEXTURE_IMAGE_FORMAT :: 0x828f;
|
|
GL_TEXTURE_IMAGE_TYPE :: 0x8290;
|
|
GL_GET_TEXTURE_IMAGE_FORMAT :: 0x8291;
|
|
GL_GET_TEXTURE_IMAGE_TYPE :: 0x8292;
|
|
GL_MIPMAP :: 0x8293;
|
|
GL_MANUAL_GENERATE_MIPMAP :: 0x8294;
|
|
GL_AUTO_GENERATE_MIPMAP :: 0x8295;
|
|
GL_COLOR_ENCODING :: 0x8296;
|
|
GL_SRGB_READ :: 0x8297;
|
|
GL_SRGB_WRITE :: 0x8298;
|
|
GL_FILTER :: 0x829a;
|
|
GL_VERTEX_TEXTURE :: 0x829b;
|
|
GL_TESS_CONTROL_TEXTURE :: 0x829c;
|
|
GL_TESS_EVALUATION_TEXTURE :: 0x829d;
|
|
GL_GEOMETRY_TEXTURE :: 0x829e;
|
|
GL_FRAGMENT_TEXTURE :: 0x829f;
|
|
GL_COMPUTE_TEXTURE :: 0x82a0;
|
|
GL_TEXTURE_SHADOW :: 0x82a1;
|
|
GL_TEXTURE_GATHER :: 0x82a2;
|
|
GL_TEXTURE_GATHER_SHADOW :: 0x82a3;
|
|
GL_SHADER_IMAGE_LOAD :: 0x82a4;
|
|
GL_SHADER_IMAGE_STORE :: 0x82a5;
|
|
GL_SHADER_IMAGE_ATOMIC :: 0x82a6;
|
|
GL_IMAGE_TEXEL_SIZE :: 0x82a7;
|
|
GL_IMAGE_COMPATIBILITY_CLASS :: 0x82a8;
|
|
GL_IMAGE_PIXEL_FORMAT :: 0x82a9;
|
|
GL_IMAGE_PIXEL_TYPE :: 0x82aa;
|
|
GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST :: 0x82ac;
|
|
GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST :: 0x82ad;
|
|
GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE :: 0x82ae;
|
|
GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE :: 0x82af;
|
|
GL_TEXTURE_COMPRESSED_BLOCK_WIDTH :: 0x82b1;
|
|
GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT :: 0x82b2;
|
|
GL_TEXTURE_COMPRESSED_BLOCK_SIZE :: 0x82b3;
|
|
GL_CLEAR_BUFFER :: 0x82b4;
|
|
GL_TEXTURE_VIEW :: 0x82b5;
|
|
GL_VIEW_COMPATIBILITY_CLASS :: 0x82b6;
|
|
GL_FULL_SUPPORT :: 0x82b7;
|
|
GL_CAVEAT_SUPPORT :: 0x82b8;
|
|
GL_IMAGE_CLASS_4_X_32 :: 0x82b9;
|
|
GL_IMAGE_CLASS_2_X_32 :: 0x82ba;
|
|
GL_IMAGE_CLASS_1_X_32 :: 0x82bb;
|
|
GL_IMAGE_CLASS_4_X_16 :: 0x82bc;
|
|
GL_IMAGE_CLASS_2_X_16 :: 0x82bd;
|
|
GL_IMAGE_CLASS_1_X_16 :: 0x82be;
|
|
GL_IMAGE_CLASS_4_X_8 :: 0x82bf;
|
|
GL_IMAGE_CLASS_2_X_8 :: 0x82c0;
|
|
GL_IMAGE_CLASS_1_X_8 :: 0x82c1;
|
|
GL_IMAGE_CLASS_11_11_10 :: 0x82c2;
|
|
GL_IMAGE_CLASS_10_10_10_2 :: 0x82c3;
|
|
GL_VIEW_CLASS_128_BITS :: 0x82c4;
|
|
GL_VIEW_CLASS_96_BITS :: 0x82c5;
|
|
GL_VIEW_CLASS_64_BITS :: 0x82c6;
|
|
GL_VIEW_CLASS_48_BITS :: 0x82c7;
|
|
GL_VIEW_CLASS_32_BITS :: 0x82c8;
|
|
GL_VIEW_CLASS_24_BITS :: 0x82c9;
|
|
GL_VIEW_CLASS_16_BITS :: 0x82ca;
|
|
GL_VIEW_CLASS_8_BITS :: 0x82cb;
|
|
GL_VIEW_CLASS_S3TC_DXT1_RGB :: 0x82cc;
|
|
GL_VIEW_CLASS_S3TC_DXT1_RGBA :: 0x82cd;
|
|
GL_VIEW_CLASS_S3TC_DXT3_RGBA :: 0x82ce;
|
|
GL_VIEW_CLASS_S3TC_DXT5_RGBA :: 0x82cf;
|
|
GL_VIEW_CLASS_RGTC1_RED :: 0x82d0;
|
|
GL_VIEW_CLASS_RGTC2_RG :: 0x82d1;
|
|
GL_VIEW_CLASS_BPTC_UNORM :: 0x82d2;
|
|
GL_VIEW_CLASS_BPTC_FLOAT :: 0x82d3;
|
|
GL_UNIFORM :: 0x92e1;
|
|
GL_UNIFORM_BLOCK :: 0x92e2;
|
|
GL_PROGRAM_INPUT :: 0x92e3;
|
|
GL_PROGRAM_OUTPUT :: 0x92e4;
|
|
GL_BUFFER_VARIABLE :: 0x92e5;
|
|
GL_SHADER_STORAGE_BLOCK :: 0x92e6;
|
|
GL_VERTEX_SUBROUTINE :: 0x92e8;
|
|
GL_TESS_CONTROL_SUBROUTINE :: 0x92e9;
|
|
GL_TESS_EVALUATION_SUBROUTINE :: 0x92ea;
|
|
GL_GEOMETRY_SUBROUTINE :: 0x92eb;
|
|
GL_FRAGMENT_SUBROUTINE :: 0x92ec;
|
|
GL_COMPUTE_SUBROUTINE :: 0x92ed;
|
|
GL_VERTEX_SUBROUTINE_UNIFORM :: 0x92ee;
|
|
GL_TESS_CONTROL_SUBROUTINE_UNIFORM :: 0x92ef;
|
|
GL_TESS_EVALUATION_SUBROUTINE_UNIFORM :: 0x92f0;
|
|
GL_GEOMETRY_SUBROUTINE_UNIFORM :: 0x92f1;
|
|
GL_FRAGMENT_SUBROUTINE_UNIFORM :: 0x92f2;
|
|
GL_COMPUTE_SUBROUTINE_UNIFORM :: 0x92f3;
|
|
GL_TRANSFORM_FEEDBACK_VARYING :: 0x92f4;
|
|
GL_ACTIVE_RESOURCES :: 0x92f5;
|
|
GL_MAX_NAME_LENGTH :: 0x92f6;
|
|
GL_MAX_NUM_ACTIVE_VARIABLES :: 0x92f7;
|
|
GL_MAX_NUM_COMPATIBLE_SUBROUTINES :: 0x92f8;
|
|
GL_NAME_LENGTH :: 0x92f9;
|
|
GL_TYPE :: 0x92fa;
|
|
GL_ARRAY_SIZE :: 0x92fb;
|
|
GL_OFFSET :: 0x92fc;
|
|
GL_BLOCK_INDEX :: 0x92fd;
|
|
GL_ARRAY_STRIDE :: 0x92fe;
|
|
GL_MATRIX_STRIDE :: 0x92ff;
|
|
GL_IS_ROW_MAJOR :: 0x9300;
|
|
GL_ATOMIC_COUNTER_BUFFER_INDEX :: 0x9301;
|
|
GL_BUFFER_BINDING :: 0x9302;
|
|
GL_BUFFER_DATA_SIZE :: 0x9303;
|
|
GL_NUM_ACTIVE_VARIABLES :: 0x9304;
|
|
GL_ACTIVE_VARIABLES :: 0x9305;
|
|
GL_REFERENCED_BY_VERTEX_SHADER :: 0x9306;
|
|
GL_REFERENCED_BY_TESS_CONTROL_SHADER :: 0x9307;
|
|
GL_REFERENCED_BY_TESS_EVALUATION_SHADER :: 0x9308;
|
|
GL_REFERENCED_BY_GEOMETRY_SHADER :: 0x9309;
|
|
GL_REFERENCED_BY_FRAGMENT_SHADER :: 0x930a;
|
|
GL_REFERENCED_BY_COMPUTE_SHADER :: 0x930b;
|
|
GL_TOP_LEVEL_ARRAY_SIZE :: 0x930c;
|
|
GL_TOP_LEVEL_ARRAY_STRIDE :: 0x930d;
|
|
GL_LOCATION :: 0x930e;
|
|
GL_LOCATION_INDEX :: 0x930f;
|
|
GL_IS_PER_PATCH :: 0x92e7;
|
|
GL_SHADER_STORAGE_BUFFER :: 0x90d2;
|
|
GL_SHADER_STORAGE_BUFFER_BINDING :: 0x90d3;
|
|
GL_SHADER_STORAGE_BUFFER_START :: 0x90d4;
|
|
GL_SHADER_STORAGE_BUFFER_SIZE :: 0x90d5;
|
|
GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS :: 0x90d6;
|
|
GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS :: 0x90d7;
|
|
GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS :: 0x90d8;
|
|
GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS :: 0x90d9;
|
|
GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS :: 0x90da;
|
|
GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS :: 0x90db;
|
|
GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS :: 0x90dc;
|
|
GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS :: 0x90dd;
|
|
GL_MAX_SHADER_STORAGE_BLOCK_SIZE :: 0x90de;
|
|
GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT :: 0x90df;
|
|
GL_SHADER_STORAGE_BARRIER_BIT :: 0x00002000;
|
|
GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES :: 0x8f39;
|
|
GL_DEPTH_STENCIL_TEXTURE_MODE :: 0x90ea;
|
|
GL_TEXTURE_BUFFER_OFFSET :: 0x919d;
|
|
GL_TEXTURE_BUFFER_SIZE :: 0x919e;
|
|
GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT :: 0x919f;
|
|
GL_TEXTURE_VIEW_MIN_LEVEL :: 0x82db;
|
|
GL_TEXTURE_VIEW_NUM_LEVELS :: 0x82dc;
|
|
GL_TEXTURE_VIEW_MIN_LAYER :: 0x82dd;
|
|
GL_TEXTURE_VIEW_NUM_LAYERS :: 0x82de;
|
|
GL_TEXTURE_IMMUTABLE_LEVELS :: 0x82df;
|
|
GL_VERTEX_ATTRIB_BINDING :: 0x82d4;
|
|
GL_VERTEX_ATTRIB_RELATIVE_OFFSET :: 0x82d5;
|
|
GL_VERTEX_BINDING_DIVISOR :: 0x82d6;
|
|
GL_VERTEX_BINDING_OFFSET :: 0x82d7;
|
|
GL_VERTEX_BINDING_STRIDE :: 0x82d8;
|
|
GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET :: 0x82d9;
|
|
GL_MAX_VERTEX_ATTRIB_BINDINGS :: 0x82da;
|
|
GL_VERTEX_BINDING_BUFFER :: 0x8f4f;
|
|
GL_DISPLAY_LIST :: 0x82e7;
|
|
GL_STACK_UNDERFLOW :: 0x0504;
|
|
GL_STACK_OVERFLOW :: 0x0503;
|
|
GL_MAX_VERTEX_ATTRIB_STRIDE :: 0x82e5;
|
|
GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED :: 0x8221;
|
|
GL_TEXTURE_BUFFER_BINDING :: 0x8c2a;
|
|
GL_MAP_PERSISTENT_BIT :: 0x0040;
|
|
GL_MAP_COHERENT_BIT :: 0x0080;
|
|
GL_DYNAMIC_STORAGE_BIT :: 0x0100;
|
|
GL_CLIENT_STORAGE_BIT :: 0x0200;
|
|
GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT :: 0x00004000;
|
|
GL_BUFFER_IMMUTABLE_STORAGE :: 0x821f;
|
|
GL_BUFFER_STORAGE_FLAGS :: 0x8220;
|
|
GL_CLEAR_TEXTURE :: 0x9365;
|
|
GL_LOCATION_COMPONENT :: 0x934a;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_INDEX :: 0x934b;
|
|
GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE :: 0x934c;
|
|
GL_QUERY_BUFFER :: 0x9192;
|
|
GL_QUERY_BUFFER_BARRIER_BIT :: 0x00008000;
|
|
GL_QUERY_BUFFER_BINDING :: 0x9193;
|
|
GL_QUERY_RESULT_NO_WAIT :: 0x9194;
|
|
GL_MIRROR_CLAMP_TO_EDGE :: 0x8743;
|
|
GL_CONTEXT_LOST :: 0x0507;
|
|
GL_NEGATIVE_ONE_TO_ONE :: 0x935e;
|
|
GL_ZERO_TO_ONE :: 0x935f;
|
|
GL_CLIP_ORIGIN :: 0x935c;
|
|
GL_CLIP_DEPTH_MODE :: 0x935d;
|
|
GL_QUERY_WAIT_INVERTED :: 0x8e17;
|
|
GL_QUERY_NO_WAIT_INVERTED :: 0x8e18;
|
|
GL_QUERY_BY_REGION_WAIT_INVERTED :: 0x8e19;
|
|
GL_QUERY_BY_REGION_NO_WAIT_INVERTED :: 0x8e1a;
|
|
GL_MAX_CULL_DISTANCES :: 0x82f9;
|
|
GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES :: 0x82fa;
|
|
GL_TEXTURE_TARGET :: 0x1006;
|
|
GL_QUERY_TARGET :: 0x82ea;
|
|
GL_GUILTY_CONTEXT_RESET :: 0x8253;
|
|
GL_INNOCENT_CONTEXT_RESET :: 0x8254;
|
|
GL_UNKNOWN_CONTEXT_RESET :: 0x8255;
|
|
GL_RESET_NOTIFICATION_STRATEGY :: 0x8256;
|
|
GL_LOSE_CONTEXT_ON_RESET :: 0x8252;
|
|
GL_NO_RESET_NOTIFICATION :: 0x8261;
|
|
GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT :: 0x00000004;
|
|
GL_COLOR_TABLE :: 0x80d0;
|
|
GL_POST_CONVOLUTION_COLOR_TABLE :: 0x80d1;
|
|
GL_POST_COLOR_MATRIX_COLOR_TABLE :: 0x80d2;
|
|
GL_PROXY_COLOR_TABLE :: 0x80d3;
|
|
GL_PROXY_POST_CONVOLUTION_COLOR_TABLE :: 0x80d4;
|
|
GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE :: 0x80d5;
|
|
GL_CONVOLUTION_1D :: 0x8010;
|
|
GL_CONVOLUTION_2D :: 0x8011;
|
|
GL_SEPARABLE_2D :: 0x8012;
|
|
GL_HISTOGRAM :: 0x8024;
|
|
GL_PROXY_HISTOGRAM :: 0x8025;
|
|
GL_MINMAX :: 0x802e;
|
|
GL_CONTEXT_RELEASE_BEHAVIOR :: 0x82fb;
|
|
GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH :: 0x82fc;
|
|
|
|
|
|
|
|
// VERSION_1_0
|
|
glCullFace: proc(mode: u32);
|
|
glFrontFace: proc(mode: u32);
|
|
glHint: proc(target: u32, mode: u32);
|
|
glLineWidth: proc(width: f32);
|
|
glPointSize: proc(size: f32);
|
|
glPolygonMode: proc(face: u32, mode: u32);
|
|
glScissor: proc(x: i32, y: i32, width: i32, height: i32);
|
|
glTexParameterf: proc(target: u32, pname: u32, param: f32);
|
|
glTexParameterfv: proc(target: u32, pname: u32, params: *f32);
|
|
glTexParameteri: proc(target: u32, pname: u32, param: i32);
|
|
glTexParameteriv: proc(target: u32, pname: u32, params: *i32);
|
|
glTexImage1D: proc(target: u32, level: i32, internalformat: i32, width: i32, border: i32, format: u32, type: u32, pixels: *void);
|
|
glTexImage2D: proc(target: u32, level: i32, internalformat: i32, width: i32, height: i32, border: i32, format: u32, type: u32, pixels: *void);
|
|
glDrawBuffer: proc(buf: u32);
|
|
glClear: proc(mask: u32);
|
|
glClearColor: proc(red: f32, green: f32, blue: f32, alpha: f32);
|
|
glClearStencil: proc(s: i32);
|
|
glClearDepth: proc(depth: f64);
|
|
glStencilMask: proc(mask: u32);
|
|
glColorMask: proc(red: bool, green: bool, blue: bool, alpha: bool);
|
|
glDepthMask: proc(flag: bool);
|
|
glDisable: proc(cap: u32);
|
|
glEnable: proc(cap: u32);
|
|
glFinish: proc();
|
|
glFlush: proc();
|
|
glBlendFunc: proc(sfactor: u32, dfactor: u32);
|
|
glLogicOp: proc(opcode: u32);
|
|
glStencilFunc: proc(func: u32, ref: i32, mask: u32);
|
|
glStencilOp: proc(fail: u32, zfail: u32, zpass: u32);
|
|
glDepthFunc: proc(func: u32);
|
|
glPixelStoref: proc(pname: u32, param: f32);
|
|
glPixelStorei: proc(pname: u32, param: i32);
|
|
glReadBuffer: proc(src: u32);
|
|
glReadPixels: proc(x: i32, y: i32, width: i32, height: i32, format: u32, type: u32, pixels: *void);
|
|
glGetBooleanv: proc(pname: u32, data: *bool);
|
|
glGetDoublev: proc(pname: u32, data: *f64);
|
|
glGetError: proc(): u32;
|
|
glGetFloatv: proc(pname: u32, data: *f32);
|
|
glGetIntegerv: proc(pname: u32, data: *i32);
|
|
glGetString: proc(name: u32): *char;
|
|
glGetTexImage: proc(target: u32, level: i32, format: u32, type: u32, pixels: *void);
|
|
glGetTexParameterfv: proc(target: u32, pname: u32, params: *f32);
|
|
glGetTexParameteriv: proc(target: u32, pname: u32, params: *i32);
|
|
glGetTexLevelParameterfv: proc(target: u32, level: i32, pname: u32, params: *f32);
|
|
glGetTexLevelParameteriv: proc(target: u32, level: i32, pname: u32, params: *i32);
|
|
glIsEnabled: proc(cap: u32): bool;
|
|
glDepthRange: proc(near: f64, far: f64);
|
|
glViewport: proc(x: i32, y: i32, width: i32, height: i32);
|
|
|
|
load_1_0 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glCullFace), "glCullFace");
|
|
set_proc_address(:**void(&glFrontFace), "glFrontFace");
|
|
set_proc_address(:**void(&glHint), "glHint");
|
|
set_proc_address(:**void(&glLineWidth), "glLineWidth");
|
|
set_proc_address(:**void(&glPointSize), "glPointSize");
|
|
set_proc_address(:**void(&glPolygonMode), "glPolygonMode");
|
|
set_proc_address(:**void(&glScissor), "glScissor");
|
|
set_proc_address(:**void(&glTexParameterf), "glTexParameterf");
|
|
set_proc_address(:**void(&glTexParameterfv), "glTexParameterfv");
|
|
set_proc_address(:**void(&glTexParameteri), "glTexParameteri");
|
|
set_proc_address(:**void(&glTexParameteriv), "glTexParameteriv");
|
|
set_proc_address(:**void(&glTexImage1D), "glTexImage1D");
|
|
set_proc_address(:**void(&glTexImage2D), "glTexImage2D");
|
|
set_proc_address(:**void(&glDrawBuffer), "glDrawBuffer");
|
|
set_proc_address(:**void(&glClear), "glClear");
|
|
set_proc_address(:**void(&glClearColor), "glClearColor");
|
|
set_proc_address(:**void(&glClearStencil), "glClearStencil");
|
|
set_proc_address(:**void(&glClearDepth), "glClearDepth");
|
|
set_proc_address(:**void(&glStencilMask), "glStencilMask");
|
|
set_proc_address(:**void(&glColorMask), "glColorMask");
|
|
set_proc_address(:**void(&glDepthMask), "glDepthMask");
|
|
set_proc_address(:**void(&glDisable), "glDisable");
|
|
set_proc_address(:**void(&glEnable), "glEnable");
|
|
set_proc_address(:**void(&glFinish), "glFinish");
|
|
set_proc_address(:**void(&glFlush), "glFlush");
|
|
set_proc_address(:**void(&glBlendFunc), "glBlendFunc");
|
|
set_proc_address(:**void(&glLogicOp), "glLogicOp");
|
|
set_proc_address(:**void(&glStencilFunc), "glStencilFunc");
|
|
set_proc_address(:**void(&glStencilOp), "glStencilOp");
|
|
set_proc_address(:**void(&glDepthFunc), "glDepthFunc");
|
|
set_proc_address(:**void(&glPixelStoref), "glPixelStoref");
|
|
set_proc_address(:**void(&glPixelStorei), "glPixelStorei");
|
|
set_proc_address(:**void(&glReadBuffer), "glReadBuffer");
|
|
set_proc_address(:**void(&glReadPixels), "glReadPixels");
|
|
set_proc_address(:**void(&glGetBooleanv), "glGetBooleanv");
|
|
set_proc_address(:**void(&glGetDoublev), "glGetDoublev");
|
|
set_proc_address(:**void(&glGetError), "glGetError");
|
|
set_proc_address(:**void(&glGetFloatv), "glGetFloatv");
|
|
set_proc_address(:**void(&glGetIntegerv), "glGetIntegerv");
|
|
set_proc_address(:**void(&glGetString), "glGetString");
|
|
set_proc_address(:**void(&glGetTexImage), "glGetTexImage");
|
|
set_proc_address(:**void(&glGetTexParameterfv), "glGetTexParameterfv");
|
|
set_proc_address(:**void(&glGetTexParameteriv), "glGetTexParameteriv");
|
|
set_proc_address(:**void(&glGetTexLevelParameterfv), "glGetTexLevelParameterfv");
|
|
set_proc_address(:**void(&glGetTexLevelParameteriv), "glGetTexLevelParameteriv");
|
|
set_proc_address(:**void(&glIsEnabled), "glIsEnabled");
|
|
set_proc_address(:**void(&glDepthRange), "glDepthRange");
|
|
set_proc_address(:**void(&glViewport), "glViewport");
|
|
}
|
|
|
|
|
|
// VERSION_1_1
|
|
glDrawArrays: proc(mode: u32, first: i32, count: i32);
|
|
glDrawElements: proc(mode: u32, count: i32, type: u32, indices: *void);
|
|
glPolygonOffset: proc(factor: f32, units: f32);
|
|
glCopyTexImage1D: proc(target: u32, level: i32, internalformat: u32, x: i32, y: i32, width: i32, border: i32);
|
|
glCopyTexImage2D: proc(target: u32, level: i32, internalformat: u32, x: i32, y: i32, width: i32, height: i32, border: i32);
|
|
glCopyTexSubImage1D: proc(target: u32, level: i32, xoffset: i32, x: i32, y: i32, width: i32);
|
|
glCopyTexSubImage2D: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, x: i32, y: i32, width: i32, height: i32);
|
|
glTexSubImage1D: proc(target: u32, level: i32, xoffset: i32, width: i32, format: u32, type: u32, pixels: *void);
|
|
glTexSubImage2D: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, width: i32, height: i32, format: u32, type: u32, pixels: *void);
|
|
glBindTexture: proc(target: u32, texture: u32);
|
|
glDeleteTextures: proc(n: i32, textures: *u32);
|
|
glGenTextures: proc(n: i32, textures: *u32);
|
|
glIsTexture: proc(texture: u32): bool;
|
|
|
|
load_1_1 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glDrawArrays), "glDrawArrays");
|
|
set_proc_address(:**void(&glDrawElements), "glDrawElements");
|
|
set_proc_address(:**void(&glPolygonOffset), "glPolygonOffset");
|
|
set_proc_address(:**void(&glCopyTexImage1D), "glCopyTexImage1D");
|
|
set_proc_address(:**void(&glCopyTexImage2D), "glCopyTexImage2D");
|
|
set_proc_address(:**void(&glCopyTexSubImage1D), "glCopyTexSubImage1D");
|
|
set_proc_address(:**void(&glCopyTexSubImage2D), "glCopyTexSubImage2D");
|
|
set_proc_address(:**void(&glTexSubImage1D), "glTexSubImage1D");
|
|
set_proc_address(:**void(&glTexSubImage2D), "glTexSubImage2D");
|
|
set_proc_address(:**void(&glBindTexture), "glBindTexture");
|
|
set_proc_address(:**void(&glDeleteTextures), "glDeleteTextures");
|
|
set_proc_address(:**void(&glGenTextures), "glGenTextures");
|
|
set_proc_address(:**void(&glIsTexture), "glIsTexture");
|
|
}
|
|
|
|
|
|
// VERSION_1_2
|
|
glDrawRangeElements: proc(mode: u32, start: u32, end: u32, count: i32, type: u32, indices: *void);
|
|
glTexImage3D: proc(target: u32, level: i32, internalformat: i32, width: i32, height: i32, depth: i32, border: i32, format: u32, type: u32, data: *void);
|
|
glTexSubImage3D: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, format: u32, type: u32, pixels: *void);
|
|
glCopyTexSubImage3D: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, x: i32, y: i32, width: i32, height: i32);
|
|
|
|
load_1_2 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
|
|
set_proc_address(:**void(&glDrawRangeElements), "glDrawRangeElements");
|
|
set_proc_address(:**void(&glTexImage3D), "glTexImage3D");
|
|
set_proc_address(:**void(&glTexSubImage3D), "glTexSubImage3D");
|
|
set_proc_address(:**void(&glCopyTexSubImage3D), "glCopyTexSubImage3D");
|
|
}
|
|
|
|
|
|
// VERSION_1_3
|
|
glActiveTexture: proc(texture: u32);
|
|
glSampleCoverage: proc(value: f32, invert: bool);
|
|
glCompressedTexImage3D: proc(target: u32, level: i32, internalformat: u32, width: i32, height: i32, depth: i32, border: i32, imageSize: i32, data: *void);
|
|
glCompressedTexImage2D: proc(target: u32, level: i32, internalformat: u32, width: i32, height: i32, border: i32, imageSize: i32, data: *void);
|
|
glCompressedTexImage1D: proc(target: u32, level: i32, internalformat: u32, width: i32, border: i32, imageSize: i32, data: *void);
|
|
glCompressedTexSubImage3D: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, format: u32, imageSize: i32, data: *void);
|
|
glCompressedTexSubImage2D: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, width: i32, height: i32, format: u32, imageSize: i32, data: *void);
|
|
glCompressedTexSubImage1D: proc(target: u32, level: i32, xoffset: i32, width: i32, format: u32, imageSize: i32, data: *void);
|
|
glGetCompressedTexImage: proc(target: u32, level: i32, img: *void);
|
|
|
|
load_1_3 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glActiveTexture), "glActiveTexture");
|
|
set_proc_address(:**void(&glSampleCoverage), "glSampleCoverage");
|
|
set_proc_address(:**void(&glCompressedTexImage3D), "glCompressedTexImage3D");
|
|
set_proc_address(:**void(&glCompressedTexImage2D), "glCompressedTexImage2D");
|
|
set_proc_address(:**void(&glCompressedTexImage1D), "glCompressedTexImage1D");
|
|
set_proc_address(:**void(&glCompressedTexSubImage3D), "glCompressedTexSubImage3D");
|
|
set_proc_address(:**void(&glCompressedTexSubImage2D), "glCompressedTexSubImage2D");
|
|
set_proc_address(:**void(&glCompressedTexSubImage1D), "glCompressedTexSubImage1D");
|
|
set_proc_address(:**void(&glGetCompressedTexImage), "glGetCompressedTexImage");
|
|
}
|
|
|
|
|
|
// VERSION_1_4
|
|
glBlendFuncSeparate: proc(sfactorRGB: u32, dfactorRGB: u32, sfactorAlpha: u32, dfactorAlpha: u32);
|
|
glMultiDrawArrays: proc(mode: u32, first: *i32, count: *i32, drawcount: i32);
|
|
glMultiDrawElements: proc(mode: u32, count: *i32, type: u32, indices: **void, drawcount: i32);
|
|
glPointParameterf: proc(pname: u32, param: f32);
|
|
glPointParameterfv: proc(pname: u32, params: *f32);
|
|
glPointParameteri: proc(pname: u32, param: i32);
|
|
glPointParameteriv: proc(pname: u32, params: *i32);
|
|
glBlendColor: proc(red: f32, green: f32, blue: f32, alpha: f32);
|
|
glBlendEquation: proc(mode: u32);
|
|
|
|
|
|
load_1_4 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glBlendFuncSeparate), "glBlendFuncSeparate");
|
|
set_proc_address(:**void(&glMultiDrawArrays), "glMultiDrawArrays");
|
|
set_proc_address(:**void(&glMultiDrawElements), "glMultiDrawElements");
|
|
set_proc_address(:**void(&glPointParameterf), "glPointParameterf");
|
|
set_proc_address(:**void(&glPointParameterfv), "glPointParameterfv");
|
|
set_proc_address(:**void(&glPointParameteri), "glPointParameteri");
|
|
set_proc_address(:**void(&glPointParameteriv), "glPointParameteriv");
|
|
set_proc_address(:**void(&glBlendColor), "glBlendColor");
|
|
set_proc_address(:**void(&glBlendEquation), "glBlendEquation");
|
|
}
|
|
|
|
|
|
// VERSION_1_5
|
|
glGenQueries: proc(n: i32, ids: *u32);
|
|
glDeleteQueries: proc(n: i32, ids: *u32);
|
|
glIsQuery: proc(id: u32): bool;
|
|
glBeginQuery: proc(target: u32, id: u32);
|
|
glEndQuery: proc(target: u32);
|
|
glGetQueryiv: proc(target: u32, pname: u32, params: *i32);
|
|
glGetQueryObjectiv: proc(id: u32, pname: u32, params: *i32);
|
|
glGetQueryObjectuiv: proc(id: u32, pname: u32, params: *u32);
|
|
glBindBuffer: proc(target: u32, buffer: u32);
|
|
glDeleteBuffers: proc(n: i32, buffers: *u32);
|
|
glGenBuffers: proc(n: i32, buffers: *u32);
|
|
glIsBuffer: proc(buffer: u32): bool;
|
|
glBufferData: proc(target: u32, size: int, data: *void, usage: u32);
|
|
glBufferSubData: proc(target: u32, offset: int, size: int, data: *void);
|
|
glGetBufferSubData: proc(target: u32, offset: int, size: int, data: *void);
|
|
glMapBuffer: proc(target: u32, access: u32): *void;
|
|
glUnmapBuffer: proc(target: u32): bool;
|
|
glGetBufferParameteriv: proc(target: u32, pname: u32, params: *i32);
|
|
glGetBufferPointerv: proc(target: u32, pname: u32, params: **void);
|
|
|
|
load_1_5 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glGenQueries), "glGenQueries");
|
|
set_proc_address(:**void(&glDeleteQueries), "glDeleteQueries");
|
|
set_proc_address(:**void(&glIsQuery), "glIsQuery");
|
|
set_proc_address(:**void(&glBeginQuery), "glBeginQuery");
|
|
set_proc_address(:**void(&glEndQuery), "glEndQuery");
|
|
set_proc_address(:**void(&glGetQueryiv), "glGetQueryiv");
|
|
set_proc_address(:**void(&glGetQueryObjectiv), "glGetQueryObjectiv");
|
|
set_proc_address(:**void(&glGetQueryObjectuiv), "glGetQueryObjectuiv");
|
|
set_proc_address(:**void(&glBindBuffer), "glBindBuffer");
|
|
set_proc_address(:**void(&glDeleteBuffers), "glDeleteBuffers");
|
|
set_proc_address(:**void(&glGenBuffers), "glGenBuffers");
|
|
set_proc_address(:**void(&glIsBuffer), "glIsBuffer");
|
|
set_proc_address(:**void(&glBufferData), "glBufferData");
|
|
set_proc_address(:**void(&glBufferSubData), "glBufferSubData");
|
|
set_proc_address(:**void(&glGetBufferSubData), "glGetBufferSubData");
|
|
set_proc_address(:**void(&glMapBuffer), "glMapBuffer");
|
|
set_proc_address(:**void(&glUnmapBuffer), "glUnmapBuffer");
|
|
set_proc_address(:**void(&glGetBufferParameteriv), "glGetBufferParameteriv");
|
|
set_proc_address(:**void(&glGetBufferPointerv), "glGetBufferPointerv");
|
|
}
|
|
|
|
|
|
// VERSION_2_0
|
|
glBlendEquationSeparate: proc(modeRGB: u32, modeAlpha: u32);
|
|
glDrawBuffers: proc(n: i32, bufs: *u32);
|
|
glStencilOpSeparate: proc(face: u32, sfail: u32, dpfail: u32, dppass: u32);
|
|
glStencilFuncSeparate: proc(face: u32, func: u32, ref: i32, mask: u32);
|
|
glStencilMaskSeparate: proc(face: u32, mask: u32);
|
|
glAttachShader: proc(program: u32, shader: u32);
|
|
glBindAttribLocation: proc(program: u32, index: u32, name: *char);
|
|
glCompileShader: proc(shader: u32);
|
|
glCreateProgram: proc(): u32;
|
|
glCreateShader: proc(type: u32): u32;
|
|
glDeleteProgram: proc(program: u32);
|
|
glDeleteShader: proc(shader: u32);
|
|
glDetachShader: proc(program: u32, shader: u32);
|
|
glDisableVertexAttribArray: proc(index: u32);
|
|
glEnableVertexAttribArray: proc(index: u32);
|
|
glGetActiveAttrib: proc(program: u32, index: u32, bufSize: i32, length: *i32, size: *i32, type: *u32, name: *u8);
|
|
glGetActiveUniform: proc(program: u32, index: u32, bufSize: i32, length: *i32, size: *i32, type: *u32, name: *u8);
|
|
glGetAttachedShaders: proc(program: u32, maxCount: i32, count: *i32, shaders: *u32);
|
|
glGetAttribLocation: proc(program: u32, name: *char): i32;
|
|
glGetProgramiv: proc(program: u32, pname: u32, params: *i32);
|
|
glGetProgramInfoLog: proc(program: u32, bufSize: i32, length: *i32, infoLog: *u8);
|
|
glGetShaderiv: proc(shader: u32, pname: u32, params: *i32);
|
|
glGetShaderInfoLog: proc(shader: u32, bufSize: i32, length: *i32, infoLog: *u8);
|
|
glGetShaderSource: proc(shader: u32, bufSize: i32, length: *i32, source: *u8);
|
|
glGetUniformLocation: proc(program: u32, name: *char): i32;
|
|
glGetUniformfv: proc(program: u32, location: i32, params: *f32);
|
|
glGetUniformiv: proc(program: u32, location: i32, params: *i32);
|
|
glGetVertexAttribdv: proc(index: u32, pname: u32, params: *f64);
|
|
glGetVertexAttribfv: proc(index: u32, pname: u32, params: *f32);
|
|
glGetVertexAttribiv: proc(index: u32, pname: u32, params: *i32);
|
|
glGetVertexAttribPointerv: proc(index: u32, pname: u32, pointer: *uintptr);
|
|
glIsProgram: proc(program: u32): bool;
|
|
glIsShader: proc(shader: u32): bool;
|
|
glLinkProgram: proc(program: u32);
|
|
glShaderSource: proc(shader: u32, count: i32, string: **char, length: *i32);
|
|
glUseProgram: proc(program: u32);
|
|
glUniform1f: proc(location: i32, v0: f32);
|
|
glUniform2f: proc(location: i32, v0: f32, v1: f32);
|
|
glUniform3f: proc(location: i32, v0: f32, v1: f32, v2: f32);
|
|
glUniform4f: proc(location: i32, v0: f32, v1: f32, v2: f32, v3: f32);
|
|
glUniform1i: proc(location: i32, v0: i32);
|
|
glUniform2i: proc(location: i32, v0: i32, v1: i32);
|
|
glUniform3i: proc(location: i32, v0: i32, v1: i32, v2: i32);
|
|
glUniform4i: proc(location: i32, v0: i32, v1: i32, v2: i32, v3: i32);
|
|
glUniform1fv: proc(location: i32, count: i32, value: *f32);
|
|
glUniform2fv: proc(location: i32, count: i32, value: *f32);
|
|
glUniform3fv: proc(location: i32, count: i32, value: *f32);
|
|
glUniform4fv: proc(location: i32, count: i32, value: *f32);
|
|
glUniform1iv: proc(location: i32, count: i32, value: *i32);
|
|
glUniform2iv: proc(location: i32, count: i32, value: *i32);
|
|
glUniform3iv: proc(location: i32, count: i32, value: *i32);
|
|
glUniform4iv: proc(location: i32, count: i32, value: *i32);
|
|
glUniformMatrix2fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix3fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix4fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glValidateProgram: proc(program: u32);
|
|
glVertexAttrib1d: proc(index: u32, x: f64);
|
|
glVertexAttrib1dv: proc(index: u32, v: *f64);
|
|
glVertexAttrib1f: proc(index: u32, x: f32);
|
|
glVertexAttrib1fv: proc(index: u32, v: *f32);
|
|
glVertexAttrib1s: proc(index: u32, x: i16);
|
|
glVertexAttrib1sv: proc(index: u32, v: *i16);
|
|
glVertexAttrib2d: proc(index: u32, x: f64, y: f64);
|
|
glVertexAttrib2dv: proc(index: u32, v: *[2]f64);
|
|
glVertexAttrib2f: proc(index: u32, x: f32, y: f32);
|
|
glVertexAttrib2fv: proc(index: u32, v: *[2]f32);
|
|
glVertexAttrib2s: proc(index: u32, x: i16, y: i16);
|
|
glVertexAttrib2sv: proc(index: u32, v: *[2]i16);
|
|
glVertexAttrib3d: proc(index: u32, x: f64, y: f64, z: f64);
|
|
glVertexAttrib3dv: proc(index: u32, v: *[3]f64);
|
|
glVertexAttrib3f: proc(index: u32, x: f32, y: f32, z: f32);
|
|
glVertexAttrib3fv: proc(index: u32, v: *[3]f32);
|
|
glVertexAttrib3s: proc(index: u32, x: i16, y: i16, z: i16);
|
|
glVertexAttrib3sv: proc(index: u32, v: *[3]i16);
|
|
glVertexAttrib4Nbv: proc(index: u32, v: *[4]i8);
|
|
glVertexAttrib4Niv: proc(index: u32, v: *[4]i32);
|
|
glVertexAttrib4Nsv: proc(index: u32, v: *[4]i16);
|
|
glVertexAttrib4Nub: proc(index: u32, x: u8, y: u8, z: u8, w: u8);
|
|
glVertexAttrib4Nubv: proc(index: u32, v: *[4]u8);
|
|
glVertexAttrib4Nuiv: proc(index: u32, v: *[4]u32);
|
|
glVertexAttrib4Nusv: proc(index: u32, v: *[4]u16);
|
|
glVertexAttrib4bv: proc(index: u32, v: *[4]i8);
|
|
glVertexAttrib4d: proc(index: u32, x: f64, y: f64, z: f64, w: f64);
|
|
glVertexAttrib4dv: proc(index: u32, v: *[4]f64);
|
|
glVertexAttrib4f: proc(index: u32, x: f32, y: f32, z: f32, w: f32);
|
|
glVertexAttrib4fv: proc(index: u32, v: *[4]f32);
|
|
glVertexAttrib4iv: proc(index: u32, v: *[4]i32);
|
|
glVertexAttrib4s: proc(index: u32, x: i16, y: i16, z: i16, w: i16);
|
|
glVertexAttrib4sv: proc(index: u32, v: *[4]i16);
|
|
glVertexAttrib4ubv: proc(index: u32, v: *[4]u8);
|
|
glVertexAttrib4uiv: proc(index: u32, v: *[4]u32);
|
|
glVertexAttrib4usv: proc(index: u32, v: *[4]u16);
|
|
glVertexAttribPointer: proc(index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: uintptr);
|
|
|
|
load_2_0 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glBlendEquationSeparate), "glBlendEquationSeparate");
|
|
set_proc_address(:**void(&glDrawBuffers), "glDrawBuffers");
|
|
set_proc_address(:**void(&glStencilOpSeparate), "glStencilOpSeparate");
|
|
set_proc_address(:**void(&glStencilFuncSeparate), "glStencilFuncSeparate");
|
|
set_proc_address(:**void(&glStencilMaskSeparate), "glStencilMaskSeparate");
|
|
set_proc_address(:**void(&glAttachShader), "glAttachShader");
|
|
set_proc_address(:**void(&glBindAttribLocation), "glBindAttribLocation");
|
|
set_proc_address(:**void(&glCompileShader), "glCompileShader");
|
|
set_proc_address(:**void(&glCreateProgram), "glCreateProgram");
|
|
set_proc_address(:**void(&glCreateShader), "glCreateShader");
|
|
set_proc_address(:**void(&glDeleteProgram), "glDeleteProgram");
|
|
set_proc_address(:**void(&glDeleteShader), "glDeleteShader");
|
|
set_proc_address(:**void(&glDetachShader), "glDetachShader");
|
|
set_proc_address(:**void(&glDisableVertexAttribArray), "glDisableVertexAttribArray");
|
|
set_proc_address(:**void(&glEnableVertexAttribArray), "glEnableVertexAttribArray");
|
|
set_proc_address(:**void(&glGetActiveAttrib), "glGetActiveAttrib");
|
|
set_proc_address(:**void(&glGetActiveUniform), "glGetActiveUniform");
|
|
set_proc_address(:**void(&glGetAttachedShaders), "glGetAttachedShaders");
|
|
set_proc_address(:**void(&glGetAttribLocation), "glGetAttribLocation");
|
|
set_proc_address(:**void(&glGetProgramiv), "glGetProgramiv");
|
|
set_proc_address(:**void(&glGetProgramInfoLog), "glGetProgramInfoLog");
|
|
set_proc_address(:**void(&glGetShaderiv), "glGetShaderiv");
|
|
set_proc_address(:**void(&glGetShaderInfoLog), "glGetShaderInfoLog");
|
|
set_proc_address(:**void(&glGetShaderSource), "glGetShaderSource");
|
|
set_proc_address(:**void(&glGetUniformLocation), "glGetUniformLocation");
|
|
set_proc_address(:**void(&glGetUniformfv), "glGetUniformfv");
|
|
set_proc_address(:**void(&glGetUniformiv), "glGetUniformiv");
|
|
set_proc_address(:**void(&glGetVertexAttribdv), "glGetVertexAttribdv");
|
|
set_proc_address(:**void(&glGetVertexAttribfv), "glGetVertexAttribfv");
|
|
set_proc_address(:**void(&glGetVertexAttribiv), "glGetVertexAttribiv");
|
|
set_proc_address(:**void(&glGetVertexAttribPointerv), "glGetVertexAttribPointerv");
|
|
set_proc_address(:**void(&glIsProgram), "glIsProgram");
|
|
set_proc_address(:**void(&glIsShader), "glIsShader");
|
|
set_proc_address(:**void(&glLinkProgram), "glLinkProgram");
|
|
set_proc_address(:**void(&glShaderSource), "glShaderSource");
|
|
set_proc_address(:**void(&glUseProgram), "glUseProgram");
|
|
set_proc_address(:**void(&glUniform1f), "glUniform1f");
|
|
set_proc_address(:**void(&glUniform2f), "glUniform2f");
|
|
set_proc_address(:**void(&glUniform3f), "glUniform3f");
|
|
set_proc_address(:**void(&glUniform4f), "glUniform4f");
|
|
set_proc_address(:**void(&glUniform1i), "glUniform1i");
|
|
set_proc_address(:**void(&glUniform2i), "glUniform2i");
|
|
set_proc_address(:**void(&glUniform3i), "glUniform3i");
|
|
set_proc_address(:**void(&glUniform4i), "glUniform4i");
|
|
set_proc_address(:**void(&glUniform1fv), "glUniform1fv");
|
|
set_proc_address(:**void(&glUniform2fv), "glUniform2fv");
|
|
set_proc_address(:**void(&glUniform3fv), "glUniform3fv");
|
|
set_proc_address(:**void(&glUniform4fv), "glUniform4fv");
|
|
set_proc_address(:**void(&glUniform1iv), "glUniform1iv");
|
|
set_proc_address(:**void(&glUniform2iv), "glUniform2iv");
|
|
set_proc_address(:**void(&glUniform3iv), "glUniform3iv");
|
|
set_proc_address(:**void(&glUniform4iv), "glUniform4iv");
|
|
set_proc_address(:**void(&glUniformMatrix2fv), "glUniformMatrix2fv");
|
|
set_proc_address(:**void(&glUniformMatrix3fv), "glUniformMatrix3fv");
|
|
set_proc_address(:**void(&glUniformMatrix4fv), "glUniformMatrix4fv");
|
|
set_proc_address(:**void(&glValidateProgram), "glValidateProgram");
|
|
set_proc_address(:**void(&glVertexAttrib1d), "glVertexAttrib1d");
|
|
set_proc_address(:**void(&glVertexAttrib1dv), "glVertexAttrib1dv");
|
|
set_proc_address(:**void(&glVertexAttrib1f), "glVertexAttrib1f");
|
|
set_proc_address(:**void(&glVertexAttrib1fv), "glVertexAttrib1fv");
|
|
set_proc_address(:**void(&glVertexAttrib1s), "glVertexAttrib1s");
|
|
set_proc_address(:**void(&glVertexAttrib1sv), "glVertexAttrib1sv");
|
|
set_proc_address(:**void(&glVertexAttrib2d), "glVertexAttrib2d");
|
|
set_proc_address(:**void(&glVertexAttrib2dv), "glVertexAttrib2dv");
|
|
set_proc_address(:**void(&glVertexAttrib2f), "glVertexAttrib2f");
|
|
set_proc_address(:**void(&glVertexAttrib2fv), "glVertexAttrib2fv");
|
|
set_proc_address(:**void(&glVertexAttrib2s), "glVertexAttrib2s");
|
|
set_proc_address(:**void(&glVertexAttrib2sv), "glVertexAttrib2sv");
|
|
set_proc_address(:**void(&glVertexAttrib3d), "glVertexAttrib3d");
|
|
set_proc_address(:**void(&glVertexAttrib3dv), "glVertexAttrib3dv");
|
|
set_proc_address(:**void(&glVertexAttrib3f), "glVertexAttrib3f");
|
|
set_proc_address(:**void(&glVertexAttrib3fv), "glVertexAttrib3fv");
|
|
set_proc_address(:**void(&glVertexAttrib3s), "glVertexAttrib3s");
|
|
set_proc_address(:**void(&glVertexAttrib3sv), "glVertexAttrib3sv");
|
|
set_proc_address(:**void(&glVertexAttrib4Nbv), "glVertexAttrib4Nbv");
|
|
set_proc_address(:**void(&glVertexAttrib4Niv), "glVertexAttrib4Niv");
|
|
set_proc_address(:**void(&glVertexAttrib4Nsv), "glVertexAttrib4Nsv");
|
|
set_proc_address(:**void(&glVertexAttrib4Nub), "glVertexAttrib4Nub");
|
|
set_proc_address(:**void(&glVertexAttrib4Nubv), "glVertexAttrib4Nubv");
|
|
set_proc_address(:**void(&glVertexAttrib4Nuiv), "glVertexAttrib4Nuiv");
|
|
set_proc_address(:**void(&glVertexAttrib4Nusv), "glVertexAttrib4Nusv");
|
|
set_proc_address(:**void(&glVertexAttrib4bv), "glVertexAttrib4bv");
|
|
set_proc_address(:**void(&glVertexAttrib4d), "glVertexAttrib4d");
|
|
set_proc_address(:**void(&glVertexAttrib4dv), "glVertexAttrib4dv");
|
|
set_proc_address(:**void(&glVertexAttrib4f), "glVertexAttrib4f");
|
|
set_proc_address(:**void(&glVertexAttrib4fv), "glVertexAttrib4fv");
|
|
set_proc_address(:**void(&glVertexAttrib4iv), "glVertexAttrib4iv");
|
|
set_proc_address(:**void(&glVertexAttrib4s), "glVertexAttrib4s");
|
|
set_proc_address(:**void(&glVertexAttrib4sv), "glVertexAttrib4sv");
|
|
set_proc_address(:**void(&glVertexAttrib4ubv), "glVertexAttrib4ubv");
|
|
set_proc_address(:**void(&glVertexAttrib4uiv), "glVertexAttrib4uiv");
|
|
set_proc_address(:**void(&glVertexAttrib4usv), "glVertexAttrib4usv");
|
|
set_proc_address(:**void(&glVertexAttribPointer), "glVertexAttribPointer");
|
|
}
|
|
|
|
|
|
// VERSION_2_1
|
|
glUniformMatrix2x3fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix3x2fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix2x4fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix4x2fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix3x4fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
glUniformMatrix4x3fv: proc(location: i32, count: i32, transpose: bool, value: *f32);
|
|
|
|
load_2_1 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glUniformMatrix2x3fv), "glUniformMatrix2x3fv");
|
|
set_proc_address(:**void(&glUniformMatrix3x2fv), "glUniformMatrix3x2fv");
|
|
set_proc_address(:**void(&glUniformMatrix2x4fv), "glUniformMatrix2x4fv");
|
|
set_proc_address(:**void(&glUniformMatrix4x2fv), "glUniformMatrix4x2fv");
|
|
set_proc_address(:**void(&glUniformMatrix3x4fv), "glUniformMatrix3x4fv");
|
|
set_proc_address(:**void(&glUniformMatrix4x3fv), "glUniformMatrix4x3fv");
|
|
}
|
|
|
|
|
|
// VERSION_3_0
|
|
glColorMaski: proc(index: u32, r: bool, g: bool, b: bool, a: bool);
|
|
glGetBooleani_v: proc(target: u32, index: u32, data: *bool);
|
|
glGetIntegeri_v: proc(target: u32, index: u32, data: *i32);
|
|
glEnablei: proc(target: u32, index: u32);
|
|
glDisablei: proc(target: u32, index: u32);
|
|
glIsEnabledi: proc(target: u32, index: u32): bool;
|
|
glBeginTransformFeedback: proc(primitiveMode: u32);
|
|
glEndTransformFeedback: proc();
|
|
glBindBufferRange: proc(target: u32, index: u32, buffer: u32, offset: int, size: int);
|
|
glBindBufferBase: proc(target: u32, index: u32, buffer: u32);
|
|
glTransformFeedbackVaryings: proc(program: u32, count: i32, varyings: **char, bufferMode: u32);
|
|
glGetTransformFeedbackVarying: proc(program: u32, index: u32, bufSize: i32, length: *i32, size: *i32, type: *u32, name: *u8);
|
|
glClampColor: proc(target: u32, clamp: u32);
|
|
glBeginConditionalRender: proc(id: u32, mode: u32);
|
|
glEndConditionalRender: proc();
|
|
glVertexAttribIPointer: proc(index: u32, size: i32, type: u32, stride: i32, pointer: uintptr);
|
|
glGetVertexAttribIiv: proc(index: u32, pname: u32, params: *i32);
|
|
glGetVertexAttribIuiv: proc(index: u32, pname: u32, params: *u32);
|
|
glVertexAttribI1i: proc(index: u32, x: i32);
|
|
glVertexAttribI2i: proc(index: u32, x: i32, y: i32);
|
|
glVertexAttribI3i: proc(index: u32, x: i32, y: i32, z: i32);
|
|
glVertexAttribI4i: proc(index: u32, x: i32, y: i32, z: i32, w: i32);
|
|
glVertexAttribI1ui: proc(index: u32, x: u32);
|
|
glVertexAttribI2ui: proc(index: u32, x: u32, y: u32);
|
|
glVertexAttribI3ui: proc(index: u32, x: u32, y: u32, z: u32);
|
|
glVertexAttribI4ui: proc(index: u32, x: u32, y: u32, z: u32, w: u32);
|
|
glVertexAttribI1iv: proc(index: u32, v: *i32);
|
|
glVertexAttribI2iv: proc(index: u32, v: *i32);
|
|
glVertexAttribI3iv: proc(index: u32, v: *i32);
|
|
glVertexAttribI4iv: proc(index: u32, v: *i32);
|
|
glVertexAttribI1uiv: proc(index: u32, v: *u32);
|
|
glVertexAttribI2uiv: proc(index: u32, v: *u32);
|
|
glVertexAttribI3uiv: proc(index: u32, v: *u32);
|
|
glVertexAttribI4uiv: proc(index: u32, v: *u32);
|
|
glVertexAttribI4bv: proc(index: u32, v: *i8);
|
|
glVertexAttribI4sv: proc(index: u32, v: *i16);
|
|
glVertexAttribI4ubv: proc(index: u32, v: *u8);
|
|
glVertexAttribI4usv: proc(index: u32, v: *u16);
|
|
glGetUniformuiv: proc(program: u32, location: i32, params: *u32);
|
|
glBindFragDataLocation: proc(program: u32, color: u32, name: *char);
|
|
glGetFragDataLocation: proc(program: u32, name: *char): i32;
|
|
glUniform1ui: proc(location: i32, v0: u32);
|
|
glUniform2ui: proc(location: i32, v0: u32, v1: u32);
|
|
glUniform3ui: proc(location: i32, v0: u32, v1: u32, v2: u32);
|
|
glUniform4ui: proc(location: i32, v0: u32, v1: u32, v2: u32, v3: u32);
|
|
glUniform1uiv: proc(location: i32, count: i32, value: *u32);
|
|
glUniform2uiv: proc(location: i32, count: i32, value: *u32);
|
|
glUniform3uiv: proc(location: i32, count: i32, value: *u32);
|
|
glUniform4uiv: proc(location: i32, count: i32, value: *u32);
|
|
glTexParameterIiv: proc(target: u32, pname: u32, params: *i32);
|
|
glTexParameterIuiv: proc(target: u32, pname: u32, params: *u32);
|
|
glGetTexParameterIiv: proc(target: u32, pname: u32, params: *i32);
|
|
glGetTexParameterIuiv: proc(target: u32, pname: u32, params: *u32);
|
|
glClearBufferiv: proc(buffer: u32, drawbuffer: i32, value: *i32);
|
|
glClearBufferuiv: proc(buffer: u32, drawbuffer: i32, value: *u32);
|
|
glClearBufferfv: proc(buffer: u32, drawbuffer: i32, value: *f32);
|
|
glClearBufferfi: proc(buffer: u32, drawbuffer: i32, depth: f32, stencil: i32): *void;
|
|
glGetStringi: proc(name: u32, index: u32): *char;
|
|
glIsRenderbuffer: proc(renderbuffer: u32): bool;
|
|
glBindRenderbuffer: proc(target: u32, renderbuffer: u32);
|
|
glDeleteRenderbuffers: proc(n: i32, renderbuffers: *u32);
|
|
glGenRenderbuffers: proc(n: i32, renderbuffers: *u32);
|
|
glRenderbufferStorage: proc(target: u32, internalformat: u32, width: i32, height: i32);
|
|
glGetRenderbufferParameteriv: proc(target: u32, pname: u32, params: *i32);
|
|
glIsFramebuffer: proc(framebuffer: u32): bool;
|
|
glBindFramebuffer: proc(target: u32, framebuffer: u32);
|
|
glDeleteFramebuffers: proc(n: i32, framebuffers: *u32);
|
|
glGenFramebuffers: proc(n: i32, framebuffers: *u32);
|
|
glCheckFramebufferStatus: proc(target: u32): u32;
|
|
glFramebufferTexture1D: proc(target: u32, attachment: u32, textarget: u32, texture: u32, level: i32);
|
|
glFramebufferTexture2D: proc(target: u32, attachment: u32, textarget: u32, texture: u32, level: i32);
|
|
glFramebufferTexture3D: proc(target: u32, attachment: u32, textarget: u32, texture: u32, level: i32, zoffset: i32);
|
|
glFramebufferRenderbuffer: proc(target: u32, attachment: u32, renderbuffertarget: u32, renderbuffer: u32);
|
|
glGetFramebufferAttachmentParameteriv: proc(target: u32, attachment: u32, pname: u32, params: *i32);
|
|
glGenerateMipmap: proc(target: u32);
|
|
glBlitFramebuffer: proc(srcX0: i32, srcY0: i32, srcX1: i32, srcY1: i32, dstX0: i32, dstY0: i32, dstX1: i32, dstY1: i32, mask: u32, filter: u32);
|
|
glRenderbufferStorageMultisample: proc(target: u32, samples: i32, internalformat: u32, width: i32, height: i32);
|
|
glFramebufferTextureLayer: proc(target: u32, attachment: u32, texture: u32, level: i32, layer: i32);
|
|
glMapBufferRange: proc(target: u32, offset: int, length: int, access: u32): *void;
|
|
glFlushMappedBufferRange: proc(target: u32, offset: int, length: int);
|
|
glBindVertexArray: proc(array: u32);
|
|
glDeleteVertexArrays: proc(n: i32, arrays: *u32);
|
|
glGenVertexArrays: proc(n: i32, arrays: *u32);
|
|
glIsVertexArray: proc(array: u32): bool;
|
|
|
|
load_3_0 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glColorMaski), "glColorMaski");
|
|
set_proc_address(:**void(&glGetBooleani_v), "glGetBooleani_v");
|
|
set_proc_address(:**void(&glGetIntegeri_v), "glGetIntegeri_v");
|
|
set_proc_address(:**void(&glEnablei), "glEnablei");
|
|
set_proc_address(:**void(&glDisablei), "glDisablei");
|
|
set_proc_address(:**void(&glIsEnabledi), "glIsEnabledi");
|
|
set_proc_address(:**void(&glBeginTransformFeedback), "glBeginTransformFeedback");
|
|
set_proc_address(:**void(&glEndTransformFeedback), "glEndTransformFeedback");
|
|
set_proc_address(:**void(&glBindBufferRange), "glBindBufferRange");
|
|
set_proc_address(:**void(&glBindBufferBase), "glBindBufferBase");
|
|
set_proc_address(:**void(&glTransformFeedbackVaryings), "glTransformFeedbackVaryings");
|
|
set_proc_address(:**void(&glGetTransformFeedbackVarying), "glGetTransformFeedbackVarying");
|
|
set_proc_address(:**void(&glClampColor), "glClampColor");
|
|
set_proc_address(:**void(&glBeginConditionalRender), "glBeginConditionalRender");
|
|
set_proc_address(:**void(&glEndConditionalRender), "glEndConditionalRender");
|
|
set_proc_address(:**void(&glVertexAttribIPointer), "glVertexAttribIPointer");
|
|
set_proc_address(:**void(&glGetVertexAttribIiv), "glGetVertexAttribIiv");
|
|
set_proc_address(:**void(&glGetVertexAttribIuiv), "glGetVertexAttribIuiv");
|
|
set_proc_address(:**void(&glVertexAttribI1i), "glVertexAttribI1i");
|
|
set_proc_address(:**void(&glVertexAttribI2i), "glVertexAttribI2i");
|
|
set_proc_address(:**void(&glVertexAttribI3i), "glVertexAttribI3i");
|
|
set_proc_address(:**void(&glVertexAttribI4i), "glVertexAttribI4i");
|
|
set_proc_address(:**void(&glVertexAttribI1ui), "glVertexAttribI1ui");
|
|
set_proc_address(:**void(&glVertexAttribI2ui), "glVertexAttribI2ui");
|
|
set_proc_address(:**void(&glVertexAttribI3ui), "glVertexAttribI3ui");
|
|
set_proc_address(:**void(&glVertexAttribI4ui), "glVertexAttribI4ui");
|
|
set_proc_address(:**void(&glVertexAttribI1iv), "glVertexAttribI1iv");
|
|
set_proc_address(:**void(&glVertexAttribI2iv), "glVertexAttribI2iv");
|
|
set_proc_address(:**void(&glVertexAttribI3iv), "glVertexAttribI3iv");
|
|
set_proc_address(:**void(&glVertexAttribI4iv), "glVertexAttribI4iv");
|
|
set_proc_address(:**void(&glVertexAttribI1uiv), "glVertexAttribI1uiv");
|
|
set_proc_address(:**void(&glVertexAttribI2uiv), "glVertexAttribI2uiv");
|
|
set_proc_address(:**void(&glVertexAttribI3uiv), "glVertexAttribI3uiv");
|
|
set_proc_address(:**void(&glVertexAttribI4uiv), "glVertexAttribI4uiv");
|
|
set_proc_address(:**void(&glVertexAttribI4bv), "glVertexAttribI4bv");
|
|
set_proc_address(:**void(&glVertexAttribI4sv), "glVertexAttribI4sv");
|
|
set_proc_address(:**void(&glVertexAttribI4ubv), "glVertexAttribI4ubv");
|
|
set_proc_address(:**void(&glVertexAttribI4usv), "glVertexAttribI4usv");
|
|
set_proc_address(:**void(&glGetUniformuiv), "glGetUniformuiv");
|
|
set_proc_address(:**void(&glBindFragDataLocation), "glBindFragDataLocation");
|
|
set_proc_address(:**void(&glGetFragDataLocation), "glGetFragDataLocation");
|
|
set_proc_address(:**void(&glUniform1ui), "glUniform1ui");
|
|
set_proc_address(:**void(&glUniform2ui), "glUniform2ui");
|
|
set_proc_address(:**void(&glUniform3ui), "glUniform3ui");
|
|
set_proc_address(:**void(&glUniform4ui), "glUniform4ui");
|
|
set_proc_address(:**void(&glUniform1uiv), "glUniform1uiv");
|
|
set_proc_address(:**void(&glUniform2uiv), "glUniform2uiv");
|
|
set_proc_address(:**void(&glUniform3uiv), "glUniform3uiv");
|
|
set_proc_address(:**void(&glUniform4uiv), "glUniform4uiv");
|
|
set_proc_address(:**void(&glTexParameterIiv), "glTexParameterIiv");
|
|
set_proc_address(:**void(&glTexParameterIuiv), "glTexParameterIuiv");
|
|
set_proc_address(:**void(&glGetTexParameterIiv), "glGetTexParameterIiv");
|
|
set_proc_address(:**void(&glGetTexParameterIuiv), "glGetTexParameterIuiv");
|
|
set_proc_address(:**void(&glClearBufferiv), "glClearBufferiv");
|
|
set_proc_address(:**void(&glClearBufferuiv), "glClearBufferuiv");
|
|
set_proc_address(:**void(&glClearBufferfv), "glClearBufferfv");
|
|
set_proc_address(:**void(&glClearBufferfi), "glClearBufferfi");
|
|
set_proc_address(:**void(&glGetStringi), "glGetStringi");
|
|
set_proc_address(:**void(&glIsRenderbuffer), "glIsRenderbuffer");
|
|
set_proc_address(:**void(&glBindRenderbuffer), "glBindRenderbuffer");
|
|
set_proc_address(:**void(&glDeleteRenderbuffers), "glDeleteRenderbuffers");
|
|
set_proc_address(:**void(&glGenRenderbuffers), "glGenRenderbuffers");
|
|
set_proc_address(:**void(&glRenderbufferStorage), "glRenderbufferStorage");
|
|
set_proc_address(:**void(&glGetRenderbufferParameteriv), "glGetRenderbufferParameteriv");
|
|
set_proc_address(:**void(&glIsFramebuffer), "glIsFramebuffer");
|
|
set_proc_address(:**void(&glBindFramebuffer), "glBindFramebuffer");
|
|
set_proc_address(:**void(&glDeleteFramebuffers), "glDeleteFramebuffers");
|
|
set_proc_address(:**void(&glGenFramebuffers), "glGenFramebuffers");
|
|
set_proc_address(:**void(&glCheckFramebufferStatus), "glCheckFramebufferStatus");
|
|
set_proc_address(:**void(&glFramebufferTexture1D), "glFramebufferTexture1D");
|
|
set_proc_address(:**void(&glFramebufferTexture2D), "glFramebufferTexture2D");
|
|
set_proc_address(:**void(&glFramebufferTexture3D), "glFramebufferTexture3D");
|
|
set_proc_address(:**void(&glFramebufferRenderbuffer), "glFramebufferRenderbuffer");
|
|
set_proc_address(:**void(&glGetFramebufferAttachmentParameteriv), "glGetFramebufferAttachmentParameteriv");
|
|
set_proc_address(:**void(&glGenerateMipmap), "glGenerateMipmap");
|
|
set_proc_address(:**void(&glBlitFramebuffer), "glBlitFramebuffer");
|
|
set_proc_address(:**void(&glRenderbufferStorageMultisample), "glRenderbufferStorageMultisample");
|
|
set_proc_address(:**void(&glFramebufferTextureLayer), "glFramebufferTextureLayer");
|
|
set_proc_address(:**void(&glMapBufferRange), "glMapBufferRange");
|
|
set_proc_address(:**void(&glFlushMappedBufferRange), "glFlushMappedBufferRange");
|
|
set_proc_address(:**void(&glBindVertexArray), "glBindVertexArray");
|
|
set_proc_address(:**void(&glDeleteVertexArrays), "glDeleteVertexArrays");
|
|
set_proc_address(:**void(&glGenVertexArrays), "glGenVertexArrays");
|
|
set_proc_address(:**void(&glIsVertexArray), "glIsVertexArray");
|
|
}
|
|
|
|
|
|
// VERSION_3_1
|
|
glDrawArraysInstanced: proc(mode: u32, first: i32, count: i32, instancecount: i32);
|
|
glDrawElementsInstanced: proc(mode: u32, count: i32, type: u32, indices: *void, instancecount: i32);
|
|
glTexBuffer: proc(target: u32, internalformat: u32, buffer: u32);
|
|
glPrimitiveRestartIndex: proc(index: u32);
|
|
glCopyBufferSubData: proc(readTarget: u32, writeTarget: u32, readOffset: int, writeOffset: int, size: int);
|
|
glGetUniformIndices: proc(program: u32, uniformCount: i32, uniformNames: **char, uniformIndices: *u32);
|
|
glGetActiveUniformsiv: proc(program: u32, uniformCount: i32, uniformIndices: *u32, pname: u32, params: *i32);
|
|
glGetActiveUniformName: proc(program: u32, uniformIndex: u32, bufSize: i32, length: *i32, uniformName: *u8);
|
|
glGetUniformBlockIndex: proc(program: u32, uniformBlockName: *char): u32;
|
|
glGetActiveUniformBlockiv: proc(program: u32, uniformBlockIndex: u32, pname: u32, params: *i32);
|
|
glGetActiveUniformBlockName: proc(program: u32, uniformBlockIndex: u32, bufSize: i32, length: *i32, uniformBlockName: *u8);
|
|
glUniformBlockBinding: proc(program: u32, uniformBlockIndex: u32, uniformBlockBinding: u32);
|
|
|
|
load_3_1 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glDrawArraysInstanced), "glDrawArraysInstanced");
|
|
set_proc_address(:**void(&glDrawElementsInstanced), "glDrawElementsInstanced");
|
|
set_proc_address(:**void(&glTexBuffer), "glTexBuffer");
|
|
set_proc_address(:**void(&glPrimitiveRestartIndex), "glPrimitiveRestartIndex");
|
|
set_proc_address(:**void(&glCopyBufferSubData), "glCopyBufferSubData");
|
|
set_proc_address(:**void(&glGetUniformIndices), "glGetUniformIndices");
|
|
set_proc_address(:**void(&glGetActiveUniformsiv), "glGetActiveUniformsiv");
|
|
set_proc_address(:**void(&glGetActiveUniformName), "glGetActiveUniformName");
|
|
set_proc_address(:**void(&glGetUniformBlockIndex), "glGetUniformBlockIndex");
|
|
set_proc_address(:**void(&glGetActiveUniformBlockiv), "glGetActiveUniformBlockiv");
|
|
set_proc_address(:**void(&glGetActiveUniformBlockName), "glGetActiveUniformBlockName");
|
|
set_proc_address(:**void(&glUniformBlockBinding), "glUniformBlockBinding");
|
|
}
|
|
|
|
|
|
// VERSION_3_2
|
|
glDrawElementsBaseVertex: proc(mode: u32, count: i32, type: u32, indices: *void, basevertex: i32);
|
|
glDrawRangeElementsBaseVertex: proc(mode: u32, start: u32, end: u32, count: i32, type: u32, indices: *void, basevertex: i32);
|
|
glDrawElementsInstancedBaseVertex: proc(mode: u32, count: i32, type: u32, indices: *void, instancecount: i32, basevertex: i32);
|
|
glMultiDrawElementsBaseVertex: proc(mode: u32, count: *i32, type: u32, indices: **void, drawcount: i32, basevertex: *i32);
|
|
glProvokingVertex: proc(mode: u32);
|
|
glFenceSync: proc(condition: u32, flags: u32): sync_t;
|
|
glIsSync: proc(sync: sync_t): bool;
|
|
glDeleteSync: proc(sync: sync_t);
|
|
glClientWaitSync: proc(sync: sync_t, flags: u32, timeout: u64): u32;
|
|
glWaitSync: proc(sync: sync_t, flags: u32, timeout: u64);
|
|
glGetInteger64v: proc(pname: u32, data: *i64);
|
|
glGetSynciv: proc(sync: sync_t, pname: u32, bufSize: i32, length: *i32, values: *i32);
|
|
glGetInteger64i_v: proc(target: u32, index: u32, data: *i64);
|
|
glGetBufferParameteri64v: proc(target: u32, pname: u32, params: *i64);
|
|
glFramebufferTexture: proc(target: u32, attachment: u32, texture: u32, level: i32);
|
|
glTexImage2DMultisample: proc(target: u32, samples: i32, internalformat: u32, width: i32, height: i32, fixedsamplelocations: bool);
|
|
glTexImage3DMultisample: proc(target: u32, samples: i32, internalformat: u32, width: i32, height: i32, depth: i32, fixedsamplelocations: bool);
|
|
glGetMultisamplefv: proc(pname: u32, index: u32, val: *f32);
|
|
glSampleMaski: proc(maskNumber: u32, mask: u32);
|
|
|
|
load_3_2 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glDrawElementsBaseVertex), "glDrawElementsBaseVertex");
|
|
set_proc_address(:**void(&glDrawRangeElementsBaseVertex), "glDrawRangeElementsBaseVertex");
|
|
set_proc_address(:**void(&glDrawElementsInstancedBaseVertex), "glDrawElementsInstancedBaseVertex");
|
|
set_proc_address(:**void(&glMultiDrawElementsBaseVertex), "glMultiDrawElementsBaseVertex");
|
|
set_proc_address(:**void(&glProvokingVertex), "glProvokingVertex");
|
|
set_proc_address(:**void(&glFenceSync), "glFenceSync");
|
|
set_proc_address(:**void(&glIsSync), "glIsSync");
|
|
set_proc_address(:**void(&glDeleteSync), "glDeleteSync");
|
|
set_proc_address(:**void(&glClientWaitSync), "glClientWaitSync");
|
|
set_proc_address(:**void(&glWaitSync), "glWaitSync");
|
|
set_proc_address(:**void(&glGetInteger64v), "glGetInteger64v");
|
|
set_proc_address(:**void(&glGetSynciv), "glGetSynciv");
|
|
set_proc_address(:**void(&glGetInteger64i_v), "glGetInteger64i_v");
|
|
set_proc_address(:**void(&glGetBufferParameteri64v), "glGetBufferParameteri64v");
|
|
set_proc_address(:**void(&glFramebufferTexture), "glFramebufferTexture");
|
|
set_proc_address(:**void(&glTexImage2DMultisample), "glTexImage2DMultisample");
|
|
set_proc_address(:**void(&glTexImage3DMultisample), "glTexImage3DMultisample");
|
|
set_proc_address(:**void(&glGetMultisamplefv), "glGetMultisamplefv");
|
|
set_proc_address(:**void(&glSampleMaski), "glSampleMaski");
|
|
}
|
|
|
|
|
|
// VERSION_3_3
|
|
glBindFragDataLocationIndexed: proc(program: u32, colorNumber: u32, index: u32, name: *char);
|
|
glGetFragDataIndex: proc(program: u32, name: *char): i32;
|
|
glGenSamplers: proc(count: i32, samplers: *u32);
|
|
glDeleteSamplers: proc(count: i32, samplers: *u32);
|
|
glIsSampler: proc(sampler: u32): bool;
|
|
glBindSampler: proc(unit: u32, sampler: u32);
|
|
glSamplerParameteri: proc(sampler: u32, pname: u32, param: i32);
|
|
glSamplerParameteriv: proc(sampler: u32, pname: u32, param: *i32);
|
|
glSamplerParameterf: proc(sampler: u32, pname: u32, param: f32);
|
|
glSamplerParameterfv: proc(sampler: u32, pname: u32, param: *f32);
|
|
glSamplerParameterIiv: proc(sampler: u32, pname: u32, param: *i32);
|
|
glSamplerParameterIuiv: proc(sampler: u32, pname: u32, param: *u32);
|
|
glGetSamplerParameteriv: proc(sampler: u32, pname: u32, params: *i32);
|
|
glGetSamplerParameterIiv: proc(sampler: u32, pname: u32, params: *i32);
|
|
glGetSamplerParameterfv: proc(sampler: u32, pname: u32, params: *f32);
|
|
glGetSamplerParameterIuiv: proc(sampler: u32, pname: u32, params: *u32);
|
|
glQueryCounter: proc(id: u32, target: u32);
|
|
glGetQueryObjecti64v: proc(id: u32, pname: u32, params: *i64);
|
|
glGetQueryObjectui64v: proc(id: u32, pname: u32, params: *u64);
|
|
glVertexAttribDivisor: proc(index: u32, divisor: u32);
|
|
glVertexAttribP1ui: proc(index: u32, type: u32, normalized: bool, value: u32);
|
|
glVertexAttribP1uiv: proc(index: u32, type: u32, normalized: bool, value: *u32);
|
|
glVertexAttribP2ui: proc(index: u32, type: u32, normalized: bool, value: u32);
|
|
glVertexAttribP2uiv: proc(index: u32, type: u32, normalized: bool, value: *u32);
|
|
glVertexAttribP3ui: proc(index: u32, type: u32, normalized: bool, value: u32);
|
|
glVertexAttribP3uiv: proc(index: u32, type: u32, normalized: bool, value: *u32);
|
|
glVertexAttribP4ui: proc(index: u32, type: u32, normalized: bool, value: u32);
|
|
glVertexAttribP4uiv: proc(index: u32, type: u32, normalized: bool, value: *u32);
|
|
glVertexP2ui: proc(type: u32, value: u32);
|
|
glVertexP2uiv: proc(type: u32, value: *u32);
|
|
glVertexP3ui: proc(type: u32, value: u32);
|
|
glVertexP3uiv: proc(type: u32, value: *u32);
|
|
glVertexP4ui: proc(type: u32, value: u32);
|
|
glVertexP4uiv: proc(type: u32, value: *u32);
|
|
glTexCoordP1ui: proc(type: u32, coords: u32);
|
|
glTexCoordP1uiv: proc(type: u32, coords: *u32);
|
|
glTexCoordP2ui: proc(type: u32, coords: u32);
|
|
glTexCoordP2uiv: proc(type: u32, coords: *u32);
|
|
glTexCoordP3ui: proc(type: u32, coords: u32);
|
|
glTexCoordP3uiv: proc(type: u32, coords: *u32);
|
|
glTexCoordP4ui: proc(type: u32, coords: u32);
|
|
glTexCoordP4uiv: proc(type: u32, coords: *u32);
|
|
glMultiTexCoordP1ui: proc(texture: u32, type: u32, coords: u32);
|
|
glMultiTexCoordP1uiv: proc(texture: u32, type: u32, coords: *u32);
|
|
glMultiTexCoordP2ui: proc(texture: u32, type: u32, coords: u32);
|
|
glMultiTexCoordP2uiv: proc(texture: u32, type: u32, coords: *u32);
|
|
glMultiTexCoordP3ui: proc(texture: u32, type: u32, coords: u32);
|
|
glMultiTexCoordP3uiv: proc(texture: u32, type: u32, coords: *u32);
|
|
glMultiTexCoordP4ui: proc(texture: u32, type: u32, coords: u32);
|
|
glMultiTexCoordP4uiv: proc(texture: u32, type: u32, coords: *u32);
|
|
glNormalP3ui: proc(type: u32, coords: u32);
|
|
glNormalP3uiv: proc(type: u32, coords: *u32);
|
|
glColorP3ui: proc(type: u32, color: u32);
|
|
glColorP3uiv: proc(type: u32, color: *u32);
|
|
glColorP4ui: proc(type: u32, color: u32);
|
|
glColorP4uiv: proc(type: u32, color: *u32);
|
|
glSecondaryColorP3ui: proc(type: u32, color: u32);
|
|
glSecondaryColorP3uiv: proc(type: u32, color: *u32);
|
|
|
|
load_3_3 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glBindFragDataLocationIndexed), "glBindFragDataLocationIndexed");
|
|
set_proc_address(:**void(&glGetFragDataIndex), "glGetFragDataIndex");
|
|
set_proc_address(:**void(&glGenSamplers), "glGenSamplers");
|
|
set_proc_address(:**void(&glDeleteSamplers), "glDeleteSamplers");
|
|
set_proc_address(:**void(&glIsSampler), "glIsSampler");
|
|
set_proc_address(:**void(&glBindSampler), "glBindSampler");
|
|
set_proc_address(:**void(&glSamplerParameteri), "glSamplerParameteri");
|
|
set_proc_address(:**void(&glSamplerParameteriv), "glSamplerParameteriv");
|
|
set_proc_address(:**void(&glSamplerParameterf), "glSamplerParameterf");
|
|
set_proc_address(:**void(&glSamplerParameterfv), "glSamplerParameterfv");
|
|
set_proc_address(:**void(&glSamplerParameterIiv), "glSamplerParameterIiv");
|
|
set_proc_address(:**void(&glSamplerParameterIuiv), "glSamplerParameterIuiv");
|
|
set_proc_address(:**void(&glGetSamplerParameteriv), "glGetSamplerParameteriv");
|
|
set_proc_address(:**void(&glGetSamplerParameterIiv), "glGetSamplerParameterIiv");
|
|
set_proc_address(:**void(&glGetSamplerParameterfv), "glGetSamplerParameterfv");
|
|
set_proc_address(:**void(&glGetSamplerParameterIuiv), "glGetSamplerParameterIuiv");
|
|
set_proc_address(:**void(&glQueryCounter), "glQueryCounter");
|
|
set_proc_address(:**void(&glGetQueryObjecti64v), "glGetQueryObjecti64v");
|
|
set_proc_address(:**void(&glGetQueryObjectui64v), "glGetQueryObjectui64v");
|
|
set_proc_address(:**void(&glVertexAttribDivisor), "glVertexAttribDivisor");
|
|
set_proc_address(:**void(&glVertexAttribP1ui), "glVertexAttribP1ui");
|
|
set_proc_address(:**void(&glVertexAttribP1uiv), "glVertexAttribP1uiv");
|
|
set_proc_address(:**void(&glVertexAttribP2ui), "glVertexAttribP2ui");
|
|
set_proc_address(:**void(&glVertexAttribP2uiv), "glVertexAttribP2uiv");
|
|
set_proc_address(:**void(&glVertexAttribP3ui), "glVertexAttribP3ui");
|
|
set_proc_address(:**void(&glVertexAttribP3uiv), "glVertexAttribP3uiv");
|
|
set_proc_address(:**void(&glVertexAttribP4ui), "glVertexAttribP4ui");
|
|
set_proc_address(:**void(&glVertexAttribP4uiv), "glVertexAttribP4uiv");
|
|
set_proc_address(:**void(&glVertexP2ui), "glVertexP2ui");
|
|
set_proc_address(:**void(&glVertexP2uiv), "glVertexP2uiv");
|
|
set_proc_address(:**void(&glVertexP3ui), "glVertexP3ui");
|
|
set_proc_address(:**void(&glVertexP3uiv), "glVertexP3uiv");
|
|
set_proc_address(:**void(&glVertexP4ui), "glVertexP4ui");
|
|
set_proc_address(:**void(&glVertexP4uiv), "glVertexP4uiv");
|
|
set_proc_address(:**void(&glTexCoordP1ui), "glTexCoordP1ui");
|
|
set_proc_address(:**void(&glTexCoordP1uiv), "glTexCoordP1uiv");
|
|
set_proc_address(:**void(&glTexCoordP2ui), "glTexCoordP2ui");
|
|
set_proc_address(:**void(&glTexCoordP2uiv), "glTexCoordP2uiv");
|
|
set_proc_address(:**void(&glTexCoordP3ui), "glTexCoordP3ui");
|
|
set_proc_address(:**void(&glTexCoordP3uiv), "glTexCoordP3uiv");
|
|
set_proc_address(:**void(&glTexCoordP4ui), "glTexCoordP4ui");
|
|
set_proc_address(:**void(&glTexCoordP4uiv), "glTexCoordP4uiv");
|
|
set_proc_address(:**void(&glMultiTexCoordP1ui), "glMultiTexCoordP1ui");
|
|
set_proc_address(:**void(&glMultiTexCoordP1uiv), "glMultiTexCoordP1uiv");
|
|
set_proc_address(:**void(&glMultiTexCoordP2ui), "glMultiTexCoordP2ui");
|
|
set_proc_address(:**void(&glMultiTexCoordP2uiv), "glMultiTexCoordP2uiv");
|
|
set_proc_address(:**void(&glMultiTexCoordP3ui), "glMultiTexCoordP3ui");
|
|
set_proc_address(:**void(&glMultiTexCoordP3uiv), "glMultiTexCoordP3uiv");
|
|
set_proc_address(:**void(&glMultiTexCoordP4ui), "glMultiTexCoordP4ui");
|
|
set_proc_address(:**void(&glMultiTexCoordP4uiv), "glMultiTexCoordP4uiv");
|
|
set_proc_address(:**void(&glNormalP3ui), "glNormalP3ui");
|
|
set_proc_address(:**void(&glNormalP3uiv), "glNormalP3uiv");
|
|
set_proc_address(:**void(&glColorP3ui), "glColorP3ui");
|
|
set_proc_address(:**void(&glColorP3uiv), "glColorP3uiv");
|
|
set_proc_address(:**void(&glColorP4ui), "glColorP4ui");
|
|
set_proc_address(:**void(&glColorP4uiv), "glColorP4uiv");
|
|
set_proc_address(:**void(&glSecondaryColorP3ui), "glSecondaryColorP3ui");
|
|
set_proc_address(:**void(&glSecondaryColorP3uiv), "glSecondaryColorP3uiv");
|
|
}
|
|
|
|
|
|
// VERSION_4_0
|
|
DrawArraysIndirectCommand :: struct {
|
|
count: u32;
|
|
instanceCount: u32;
|
|
first: u32;
|
|
baseInstance: u32;
|
|
}
|
|
|
|
DrawElementsIndirectCommand :: struct {
|
|
count: u32;
|
|
instanceCount: u32;
|
|
firstIndex: u32;
|
|
baseVertex: u32;
|
|
baseInstance: u32;
|
|
}
|
|
|
|
glMinSampleShading: proc(value: f32);
|
|
glBlendEquationi: proc(buf: u32, mode: u32);
|
|
glBlendEquationSeparatei: proc(buf: u32, modeRGB: u32, modeAlpha: u32);
|
|
glBlendFunci: proc(buf: u32, src: u32, dst: u32);
|
|
glBlendFuncSeparatei: proc(buf: u32, srcRGB: u32, dstRGB: u32, srcAlpha: u32, dstAlpha: u32);
|
|
glDrawArraysIndirect: proc(mode: u32, indirect: *DrawArraysIndirectCommand);
|
|
glDrawElementsIndirect: proc(mode: u32, type: u32, indirect: *DrawElementsIndirectCommand);
|
|
glUniform1d: proc(location: i32, x: f64);
|
|
glUniform2d: proc(location: i32, x: f64, y: f64);
|
|
glUniform3d: proc(location: i32, x: f64, y: f64, z: f64);
|
|
glUniform4d: proc(location: i32, x: f64, y: f64, z: f64, w: f64);
|
|
glUniform1dv: proc(location: i32, count: i32, value: *f64);
|
|
glUniform2dv: proc(location: i32, count: i32, value: *f64);
|
|
glUniform3dv: proc(location: i32, count: i32, value: *f64);
|
|
glUniform4dv: proc(location: i32, count: i32, value: *f64);
|
|
glUniformMatrix2dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix3dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix4dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix2x3dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix2x4dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix3x2dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix3x4dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix4x2dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glUniformMatrix4x3dv: proc(location: i32, count: i32, transpose: bool, value: *f64);
|
|
glGetUniformdv: proc(program: u32, location: i32, params: *f64);
|
|
glGetSubroutineUniformLocation: proc(program: u32, shadertype: u32, name: *char): i32;
|
|
glGetSubroutineIndex: proc(program: u32, shadertype: u32, name: *char): u32;
|
|
glGetActiveSubroutineUniformiv: proc(program: u32, shadertype: u32, index: u32, pname: u32, values: *i32);
|
|
glGetActiveSubroutineUniformName: proc(program: u32, shadertype: u32, index: u32, bufsize: i32, length: *i32, name: *u8);
|
|
glGetActiveSubroutineName: proc(program: u32, shadertype: u32, index: u32, bufsize: i32, length: *i32, name: *u8);
|
|
glUniformSubroutinesuiv: proc(shadertype: u32, count: i32, indices: *u32);
|
|
glGetUniformSubroutineuiv: proc(shadertype: u32, location: i32, params: *u32);
|
|
glGetProgramStageiv: proc(program: u32, shadertype: u32, pname: u32, values: *i32);
|
|
glPatchParameteri: proc(pname: u32, value: i32);
|
|
glPatchParameterfv: proc(pname: u32, values: *f32);
|
|
glBindTransformFeedback: proc(target: u32, id: u32);
|
|
glDeleteTransformFeedbacks: proc(n: i32, ids: *u32);
|
|
glGenTransformFeedbacks: proc(n: i32, ids: *u32);
|
|
glIsTransformFeedback: proc(id: u32): bool;
|
|
glPauseTransformFeedback: proc();
|
|
glResumeTransformFeedback: proc();
|
|
glDrawTransformFeedback: proc(mode: u32, id: u32);
|
|
glDrawTransformFeedbackStream: proc(mode: u32, id: u32, stream: u32);
|
|
glBeginQueryIndexed: proc(target: u32, index: u32, id: u32);
|
|
glEndQueryIndexed: proc(target: u32, index: u32);
|
|
glGetQueryIndexediv: proc(target: u32, index: u32, pname: u32, params: *i32);
|
|
glGetTextureHandleARB: proc(texture: u32): u64;
|
|
glGetTextureSamplerHandleARB: proc(texture: u32, sampler: u32): u64;
|
|
glGetImageHandleARB: proc(texture: u32, level: i32, layered: bool, layer: i32, format: u32): u64;
|
|
glMakeTextureHandleResidentARB: proc(handle: u64);
|
|
glMakeImageHandleResidentARB: proc(handle: u64, access: u32);
|
|
glMakeTextureHandleNonResidentARB:proc(handle: u64);
|
|
glMakeImageHandleNonResidentARB: proc(handle: u64);
|
|
|
|
load_4_0 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glMinSampleShading), "glMinSampleShading");
|
|
set_proc_address(:**void(&glBlendEquationi), "glBlendEquationi");
|
|
set_proc_address(:**void(&glBlendEquationSeparatei), "glBlendEquationSeparatei");
|
|
set_proc_address(:**void(&glBlendFunci), "glBlendFunci");
|
|
set_proc_address(:**void(&glBlendFuncSeparatei), "glBlendFuncSeparatei");
|
|
set_proc_address(:**void(&glDrawArraysIndirect), "glDrawArraysIndirect");
|
|
set_proc_address(:**void(&glDrawElementsIndirect), "glDrawElementsIndirect");
|
|
set_proc_address(:**void(&glUniform1d), "glUniform1d");
|
|
set_proc_address(:**void(&glUniform2d), "glUniform2d");
|
|
set_proc_address(:**void(&glUniform3d), "glUniform3d");
|
|
set_proc_address(:**void(&glUniform4d), "glUniform4d");
|
|
set_proc_address(:**void(&glUniform1dv), "glUniform1dv");
|
|
set_proc_address(:**void(&glUniform2dv), "glUniform2dv");
|
|
set_proc_address(:**void(&glUniform3dv), "glUniform3dv");
|
|
set_proc_address(:**void(&glUniform4dv), "glUniform4dv");
|
|
set_proc_address(:**void(&glUniformMatrix2dv), "glUniformMatrix2dv");
|
|
set_proc_address(:**void(&glUniformMatrix3dv), "glUniformMatrix3dv");
|
|
set_proc_address(:**void(&glUniformMatrix4dv), "glUniformMatrix4dv");
|
|
set_proc_address(:**void(&glUniformMatrix2x3dv), "glUniformMatrix2x3dv");
|
|
set_proc_address(:**void(&glUniformMatrix2x4dv), "glUniformMatrix2x4dv");
|
|
set_proc_address(:**void(&glUniformMatrix3x2dv), "glUniformMatrix3x2dv");
|
|
set_proc_address(:**void(&glUniformMatrix3x4dv), "glUniformMatrix3x4dv");
|
|
set_proc_address(:**void(&glUniformMatrix4x2dv), "glUniformMatrix4x2dv");
|
|
set_proc_address(:**void(&glUniformMatrix4x3dv), "glUniformMatrix4x3dv");
|
|
set_proc_address(:**void(&glGetUniformdv), "glGetUniformdv");
|
|
set_proc_address(:**void(&glGetSubroutineUniformLocation), "glGetSubroutineUniformLocation");
|
|
set_proc_address(:**void(&glGetSubroutineIndex), "glGetSubroutineIndex");
|
|
set_proc_address(:**void(&glGetActiveSubroutineUniformiv), "glGetActiveSubroutineUniformiv");
|
|
set_proc_address(:**void(&glGetActiveSubroutineUniformName), "glGetActiveSubroutineUniformName");
|
|
set_proc_address(:**void(&glGetActiveSubroutineName), "glGetActiveSubroutineName");
|
|
set_proc_address(:**void(&glUniformSubroutinesuiv), "glUniformSubroutinesuiv");
|
|
set_proc_address(:**void(&glGetUniformSubroutineuiv), "glGetUniformSubroutineuiv");
|
|
set_proc_address(:**void(&glGetProgramStageiv), "glGetProgramStageiv");
|
|
set_proc_address(:**void(&glPatchParameteri), "glPatchParameteri");
|
|
set_proc_address(:**void(&glPatchParameterfv), "glPatchParameterfv");
|
|
set_proc_address(:**void(&glBindTransformFeedback), "glBindTransformFeedback");
|
|
set_proc_address(:**void(&glDeleteTransformFeedbacks), "glDeleteTransformFeedbacks");
|
|
set_proc_address(:**void(&glGenTransformFeedbacks), "glGenTransformFeedbacks");
|
|
set_proc_address(:**void(&glIsTransformFeedback), "glIsTransformFeedback");
|
|
set_proc_address(:**void(&glPauseTransformFeedback), "glPauseTransformFeedback");
|
|
set_proc_address(:**void(&glResumeTransformFeedback), "glResumeTransformFeedback");
|
|
set_proc_address(:**void(&glDrawTransformFeedback), "glDrawTransformFeedback");
|
|
set_proc_address(:**void(&glDrawTransformFeedbackStream), "glDrawTransformFeedbackStream");
|
|
set_proc_address(:**void(&glBeginQueryIndexed), "glBeginQueryIndexed");
|
|
set_proc_address(:**void(&glEndQueryIndexed), "glEndQueryIndexed");
|
|
set_proc_address(:**void(&glGetQueryIndexediv), "glGetQueryIndexediv");
|
|
|
|
// Load ARB (architecture review board, vendor specific) extensions that might be available
|
|
set_proc_address(:**void(&glGetTextureHandleARB), "glGetTextureHandleARB");
|
|
if !glGetTextureHandleARB {
|
|
set_proc_address(:**void(&glGetTextureHandleARB), "glGetTextureHandleNV");
|
|
}
|
|
|
|
set_proc_address(:**void(&glGetTextureSamplerHandleARB), "glGetTextureSamplerHandleARB");
|
|
if !glGetTextureSamplerHandleARB {
|
|
set_proc_address(:**void(&glGetTextureSamplerHandleARB), "glGetTextureSamplerHandleNV");
|
|
}
|
|
|
|
set_proc_address(:**void(&glGetImageHandleARB), "glGetImageHandleARB");
|
|
if !glGetImageHandleARB {
|
|
set_proc_address(:**void(&glGetImageHandleARB), "glGetImageHandleNV");
|
|
}
|
|
|
|
set_proc_address(:**void(&glMakeTextureHandleResidentARB), "glMakeTextureHandleResidentARB");
|
|
if !glMakeTextureHandleResidentARB {
|
|
set_proc_address(:**void(&glMakeTextureHandleResidentARB), "glMakeTextureHandleResidentNV");
|
|
}
|
|
|
|
set_proc_address(:**void(&glMakeImageHandleResidentARB), "glMakeImageHandleResidentARB");
|
|
if !glMakeImageHandleResidentARB {
|
|
set_proc_address(:**void(&glMakeImageHandleResidentARB), "glMakeImageHandleResidentNV");
|
|
}
|
|
|
|
set_proc_address(:**void(&glMakeTextureHandleNonResidentARB), "glMakeTextureHandleNonResidentARB");
|
|
if !glMakeTextureHandleNonResidentARB {
|
|
set_proc_address(:**void(&glMakeTextureHandleNonResidentARB), "glMakeTextureHandleNonResidentNV");
|
|
}
|
|
|
|
set_proc_address(:**void(&glMakeImageHandleNonResidentARB), "glMakeImageHandleNonResidentARB");
|
|
if !glMakeImageHandleNonResidentARB {
|
|
set_proc_address(:**void(&glMakeImageHandleNonResidentARB), "glMakeImageHandleNonResidentNV");
|
|
}
|
|
}
|
|
|
|
|
|
// VERSION_4_1
|
|
glReleaseShaderCompiler: proc();
|
|
glShaderBinary: proc(count: i32, shaders: *u32, binaryformat: u32, binary: *void, length: i32);
|
|
glGetShaderPrecisionFormat: proc(shadertype: u32, precisiontype: u32, range: *i32, precision: *i32);
|
|
glDepthRangef: proc(n: f32, f: f32);
|
|
glClearDepthf: proc(d: f32);
|
|
glGetProgramBinary: proc(program: u32, bufSize: i32, length: *i32, binaryFormat: *u32, binary: *void);
|
|
glProgramBinary: proc(program: u32, binaryFormat: u32, binary: *void, length: i32);
|
|
glProgramParameteri: proc(program: u32, pname: u32, value: i32);
|
|
glUseProgramStages: proc(pipeline: u32, stages: u32, program: u32);
|
|
glActiveShaderProgram: proc(pipeline: u32, program: u32);
|
|
glCreateShaderProgramv: proc(type: u32, count: i32, strings: **char): u32;
|
|
glBindProgramPipeline: proc(pipeline: u32);
|
|
glDeleteProgramPipelines: proc(n: i32, pipelines: *u32);
|
|
glGenProgramPipelines: proc(n: i32, pipelines: *u32);
|
|
glIsProgramPipeline: proc(pipeline: u32): bool;
|
|
glGetProgramPipelineiv: proc(pipeline: u32, pname: u32, params: *i32);
|
|
glProgramUniform1i: proc(program: u32, location: i32, v0: i32);
|
|
glProgramUniform1iv: proc(program: u32, location: i32, count: i32, value: *i32);
|
|
glProgramUniform1f: proc(program: u32, location: i32, v0: f32);
|
|
glProgramUniform1fv: proc(program: u32, location: i32, count: i32, value: *f32);
|
|
glProgramUniform1d: proc(program: u32, location: i32, v0: f64);
|
|
glProgramUniform1dv: proc(program: u32, location: i32, count: i32, value: *f64);
|
|
glProgramUniform1ui: proc(program: u32, location: i32, v0: u32);
|
|
glProgramUniform1uiv: proc(program: u32, location: i32, count: i32, value: *u32);
|
|
glProgramUniform2i: proc(program: u32, location: i32, v0: i32, v1: i32);
|
|
glProgramUniform2iv: proc(program: u32, location: i32, count: i32, value: *i32);
|
|
glProgramUniform2f: proc(program: u32, location: i32, v0: f32, v1: f32);
|
|
glProgramUniform2fv: proc(program: u32, location: i32, count: i32, value: *f32);
|
|
glProgramUniform2d: proc(program: u32, location: i32, v0: f64, v1: f64);
|
|
glProgramUniform2dv: proc(program: u32, location: i32, count: i32, value: *f64);
|
|
glProgramUniform2ui: proc(program: u32, location: i32, v0: u32, v1: u32);
|
|
glProgramUniform2uiv: proc(program: u32, location: i32, count: i32, value: *u32);
|
|
glProgramUniform3i: proc(program: u32, location: i32, v0: i32, v1: i32, v2: i32);
|
|
glProgramUniform3iv: proc(program: u32, location: i32, count: i32, value: *i32);
|
|
glProgramUniform3f: proc(program: u32, location: i32, v0: f32, v1: f32, v2: f32);
|
|
glProgramUniform3fv: proc(program: u32, location: i32, count: i32, value: *f32);
|
|
glProgramUniform3d: proc(program: u32, location: i32, v0: f64, v1: f64, v2: f64);
|
|
glProgramUniform3dv: proc(program: u32, location: i32, count: i32, value: *f64);
|
|
glProgramUniform3ui: proc(program: u32, location: i32, v0: u32, v1: u32, v2: u32);
|
|
glProgramUniform3uiv: proc(program: u32, location: i32, count: i32, value: *u32);
|
|
glProgramUniform4i: proc(program: u32, location: i32, v0: i32, v1: i32, v2: i32, v3: i32);
|
|
glProgramUniform4iv: proc(program: u32, location: i32, count: i32, value: *i32);
|
|
glProgramUniform4f: proc(program: u32, location: i32, v0: f32, v1: f32, v2: f32, v3: f32);
|
|
glProgramUniform4fv: proc(program: u32, location: i32, count: i32, value: *f32);
|
|
glProgramUniform4d: proc(program: u32, location: i32, v0: f64, v1: f64, v2: f64, v3: f64);
|
|
glProgramUniform4dv: proc(program: u32, location: i32, count: i32, value: *f64);
|
|
glProgramUniform4ui: proc(program: u32, location: i32, v0: u32, v1: u32, v2: u32, v3: u32);
|
|
glProgramUniform4uiv: proc(program: u32, location: i32, count: i32, value: *u32);
|
|
glProgramUniformMatrix2fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix3fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix4fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix2dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix3dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix4dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix2x3fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix3x2fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix2x4fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix4x2fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix3x4fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix4x3fv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f32);
|
|
glProgramUniformMatrix2x3dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix3x2dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix2x4dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix4x2dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix3x4dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glProgramUniformMatrix4x3dv: proc(program: u32, location: i32, count: i32, transpose: bool, value: *f64);
|
|
glValidateProgramPipeline: proc(pipeline: u32);
|
|
glGetProgramPipelineInfoLog: proc(pipeline: u32, bufSize: i32, length: *i32, infoLog: *u8);
|
|
glVertexAttribL1d: proc(index: u32, x: f64);
|
|
glVertexAttribL2d: proc(index: u32, x: f64, y: f64);
|
|
glVertexAttribL3d: proc(index: u32, x: f64, y: f64, z: f64);
|
|
glVertexAttribL4d: proc(index: u32, x: f64, y: f64, z: f64, w: f64);
|
|
glVertexAttribL1dv: proc(index: u32, v: *f64);
|
|
glVertexAttribL2dv: proc(index: u32, v: *[2]f64);
|
|
glVertexAttribL3dv: proc(index: u32, v: *[3]f64);
|
|
glVertexAttribL4dv: proc(index: u32, v: *[4]f64);
|
|
glVertexAttribLPointer: proc(index: u32, size: i32, type: u32, stride: i32, pointer: uintptr);
|
|
glGetVertexAttribLdv: proc(index: u32, pname: u32, params: *f64);
|
|
glViewportArrayv: proc(first: u32, count: i32, v: *f32);
|
|
glViewportIndexedf: proc(index: u32, x: f32, y: f32, w: f32, h: f32);
|
|
glViewportIndexedfv: proc(index: u32, v: *[4]f32);
|
|
glScissorArrayv: proc(first: u32, count: i32, v: *i32);
|
|
glScissorIndexed: proc(index: u32, left: i32, bottom: i32, width: i32, height: i32);
|
|
glScissorIndexedv: proc(index: u32, v: *[4]i32);
|
|
glDepthRangeArrayv: proc(first: u32, count: i32, v: *f64);
|
|
glDepthRangeIndexed: proc(index: u32, n: f64, f: f64);
|
|
glGetFloati_v: proc(target: u32, index: u32, data: *f32);
|
|
glGetDoublei_v: proc(target: u32, index: u32, data: *f64);
|
|
|
|
load_4_1 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glReleaseShaderCompiler), "glReleaseShaderCompiler");
|
|
set_proc_address(:**void(&glShaderBinary), "glShaderBinary");
|
|
set_proc_address(:**void(&glGetShaderPrecisionFormat), "glGetShaderPrecisionFormat");
|
|
set_proc_address(:**void(&glDepthRangef), "glDepthRangef");
|
|
set_proc_address(:**void(&glClearDepthf), "glClearDepthf");
|
|
set_proc_address(:**void(&glGetProgramBinary), "glGetProgramBinary");
|
|
set_proc_address(:**void(&glProgramBinary), "glProgramBinary");
|
|
set_proc_address(:**void(&glProgramParameteri), "glProgramParameteri");
|
|
set_proc_address(:**void(&glUseProgramStages), "glUseProgramStages");
|
|
set_proc_address(:**void(&glActiveShaderProgram), "glActiveShaderProgram");
|
|
set_proc_address(:**void(&glCreateShaderProgramv), "glCreateShaderProgramv");
|
|
set_proc_address(:**void(&glBindProgramPipeline), "glBindProgramPipeline");
|
|
set_proc_address(:**void(&glDeleteProgramPipelines), "glDeleteProgramPipelines");
|
|
set_proc_address(:**void(&glGenProgramPipelines), "glGenProgramPipelines");
|
|
set_proc_address(:**void(&glIsProgramPipeline), "glIsProgramPipeline");
|
|
set_proc_address(:**void(&glGetProgramPipelineiv), "glGetProgramPipelineiv");
|
|
set_proc_address(:**void(&glProgramUniform1i), "glProgramUniform1i");
|
|
set_proc_address(:**void(&glProgramUniform1iv), "glProgramUniform1iv");
|
|
set_proc_address(:**void(&glProgramUniform1f), "glProgramUniform1f");
|
|
set_proc_address(:**void(&glProgramUniform1fv), "glProgramUniform1fv");
|
|
set_proc_address(:**void(&glProgramUniform1d), "glProgramUniform1d");
|
|
set_proc_address(:**void(&glProgramUniform1dv), "glProgramUniform1dv");
|
|
set_proc_address(:**void(&glProgramUniform1ui), "glProgramUniform1ui");
|
|
set_proc_address(:**void(&glProgramUniform1uiv), "glProgramUniform1uiv");
|
|
set_proc_address(:**void(&glProgramUniform2i), "glProgramUniform2i");
|
|
set_proc_address(:**void(&glProgramUniform2iv), "glProgramUniform2iv");
|
|
set_proc_address(:**void(&glProgramUniform2f), "glProgramUniform2f");
|
|
set_proc_address(:**void(&glProgramUniform2fv), "glProgramUniform2fv");
|
|
set_proc_address(:**void(&glProgramUniform2d), "glProgramUniform2d");
|
|
set_proc_address(:**void(&glProgramUniform2dv), "glProgramUniform2dv");
|
|
set_proc_address(:**void(&glProgramUniform2ui), "glProgramUniform2ui");
|
|
set_proc_address(:**void(&glProgramUniform2uiv), "glProgramUniform2uiv");
|
|
set_proc_address(:**void(&glProgramUniform3i), "glProgramUniform3i");
|
|
set_proc_address(:**void(&glProgramUniform3iv), "glProgramUniform3iv");
|
|
set_proc_address(:**void(&glProgramUniform3f), "glProgramUniform3f");
|
|
set_proc_address(:**void(&glProgramUniform3fv), "glProgramUniform3fv");
|
|
set_proc_address(:**void(&glProgramUniform3d), "glProgramUniform3d");
|
|
set_proc_address(:**void(&glProgramUniform3dv), "glProgramUniform3dv");
|
|
set_proc_address(:**void(&glProgramUniform3ui), "glProgramUniform3ui");
|
|
set_proc_address(:**void(&glProgramUniform3uiv), "glProgramUniform3uiv");
|
|
set_proc_address(:**void(&glProgramUniform4i), "glProgramUniform4i");
|
|
set_proc_address(:**void(&glProgramUniform4iv), "glProgramUniform4iv");
|
|
set_proc_address(:**void(&glProgramUniform4f), "glProgramUniform4f");
|
|
set_proc_address(:**void(&glProgramUniform4fv), "glProgramUniform4fv");
|
|
set_proc_address(:**void(&glProgramUniform4d), "glProgramUniform4d");
|
|
set_proc_address(:**void(&glProgramUniform4dv), "glProgramUniform4dv");
|
|
set_proc_address(:**void(&glProgramUniform4ui), "glProgramUniform4ui");
|
|
set_proc_address(:**void(&glProgramUniform4uiv), "glProgramUniform4uiv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix2fv), "glProgramUniformMatrix2fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix3fv), "glProgramUniformMatrix3fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix4fv), "glProgramUniformMatrix4fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix2dv), "glProgramUniformMatrix2dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix3dv), "glProgramUniformMatrix3dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix4dv), "glProgramUniformMatrix4dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix2x3fv), "glProgramUniformMatrix2x3fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix3x2fv), "glProgramUniformMatrix3x2fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix2x4fv), "glProgramUniformMatrix2x4fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix4x2fv), "glProgramUniformMatrix4x2fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix3x4fv), "glProgramUniformMatrix3x4fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix4x3fv), "glProgramUniformMatrix4x3fv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix2x3dv), "glProgramUniformMatrix2x3dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix3x2dv), "glProgramUniformMatrix3x2dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix2x4dv), "glProgramUniformMatrix2x4dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix4x2dv), "glProgramUniformMatrix4x2dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix3x4dv), "glProgramUniformMatrix3x4dv");
|
|
set_proc_address(:**void(&glProgramUniformMatrix4x3dv), "glProgramUniformMatrix4x3dv");
|
|
set_proc_address(:**void(&glValidateProgramPipeline), "glValidateProgramPipeline");
|
|
set_proc_address(:**void(&glGetProgramPipelineInfoLog), "glGetProgramPipelineInfoLog");
|
|
set_proc_address(:**void(&glVertexAttribL1d), "glVertexAttribL1d");
|
|
set_proc_address(:**void(&glVertexAttribL2d), "glVertexAttribL2d");
|
|
set_proc_address(:**void(&glVertexAttribL3d), "glVertexAttribL3d");
|
|
set_proc_address(:**void(&glVertexAttribL4d), "glVertexAttribL4d");
|
|
set_proc_address(:**void(&glVertexAttribL1dv), "glVertexAttribL1dv");
|
|
set_proc_address(:**void(&glVertexAttribL2dv), "glVertexAttribL2dv");
|
|
set_proc_address(:**void(&glVertexAttribL3dv), "glVertexAttribL3dv");
|
|
set_proc_address(:**void(&glVertexAttribL4dv), "glVertexAttribL4dv");
|
|
set_proc_address(:**void(&glVertexAttribLPointer), "glVertexAttribLPointer");
|
|
set_proc_address(:**void(&glGetVertexAttribLdv), "glGetVertexAttribLdv");
|
|
set_proc_address(:**void(&glViewportArrayv), "glViewportArrayv");
|
|
set_proc_address(:**void(&glViewportIndexedf), "glViewportIndexedf");
|
|
set_proc_address(:**void(&glViewportIndexedfv), "glViewportIndexedfv");
|
|
set_proc_address(:**void(&glScissorArrayv), "glScissorArrayv");
|
|
set_proc_address(:**void(&glScissorIndexed), "glScissorIndexed");
|
|
set_proc_address(:**void(&glScissorIndexedv), "glScissorIndexedv");
|
|
set_proc_address(:**void(&glDepthRangeArrayv), "glDepthRangeArrayv");
|
|
set_proc_address(:**void(&glDepthRangeIndexed), "glDepthRangeIndexed");
|
|
set_proc_address(:**void(&glGetFloati_v), "glGetFloati_v");
|
|
set_proc_address(:**void(&glGetDoublei_v), "glGetDoublei_v");
|
|
}
|
|
|
|
|
|
// VERSION_4_2
|
|
glDrawArraysInstancedBaseInstance: proc(mode: u32, first: i32, count: i32, instancecount: i32, baseinstance: u32);
|
|
glDrawElementsInstancedBaseInstance: proc(mode: u32, count: i32, type: u32, indices: *void, instancecount: i32, baseinstance: u32);
|
|
glDrawElementsInstancedBaseVertexBaseInstance: proc(mode: u32, count: i32, type: u32, indices: *void, instancecount: i32, basevertex: i32, baseinstance: u32);
|
|
glGetInternalformativ: proc(target: u32, internalformat: u32, pname: u32, bufSize: i32, params: *i32);
|
|
glGetActiveAtomicCounterBufferiv: proc(program: u32, bufferIndex: u32, pname: u32, params: *i32);
|
|
glBindImageTexture: proc(unit: u32, texture: u32, level: i32, layered: bool, layer: i32, access: u32, format: u32);
|
|
glMemoryBarrier: proc(barriers: u32);
|
|
glTexStorage1D: proc(target: u32, levels: i32, internalformat: u32, width: i32);
|
|
glTexStorage2D: proc(target: u32, levels: i32, internalformat: u32, width: i32, height: i32);
|
|
glTexStorage3D: proc(target: u32, levels: i32, internalformat: u32, width: i32, height: i32, depth: i32);
|
|
glDrawTransformFeedbackInstanced: proc(mode: u32, id: u32, instancecount: i32);
|
|
glDrawTransformFeedbackStreamInstanced: proc(mode: u32, id: u32, stream: u32, instancecount: i32);
|
|
|
|
load_4_2 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glDrawArraysInstancedBaseInstance), "glDrawArraysInstancedBaseInstance");
|
|
set_proc_address(:**void(&glDrawElementsInstancedBaseInstance), "glDrawElementsInstancedBaseInstance");
|
|
set_proc_address(:**void(&glDrawElementsInstancedBaseVertexBaseInstance), "glDrawElementsInstancedBaseVertexBaseInstance");
|
|
set_proc_address(:**void(&glGetInternalformativ), "glGetInternalformativ");
|
|
set_proc_address(:**void(&glGetActiveAtomicCounterBufferiv), "glGetActiveAtomicCounterBufferiv");
|
|
set_proc_address(:**void(&glBindImageTexture), "glBindImageTexture");
|
|
set_proc_address(:**void(&glMemoryBarrier), "glMemoryBarrier");
|
|
set_proc_address(:**void(&glTexStorage1D), "glTexStorage1D");
|
|
set_proc_address(:**void(&glTexStorage2D), "glTexStorage2D");
|
|
set_proc_address(:**void(&glTexStorage3D), "glTexStorage3D");
|
|
set_proc_address(:**void(&glDrawTransformFeedbackInstanced), "glDrawTransformFeedbackInstanced");
|
|
set_proc_address(:**void(&glDrawTransformFeedbackStreamInstanced), "glDrawTransformFeedbackStreamInstanced");
|
|
}
|
|
|
|
// VERSION_4_3
|
|
DispatchIndirectCommand :: struct {
|
|
num_groups_x: u32;
|
|
num_groups_y: u32;
|
|
num_groups_z: u32;
|
|
}
|
|
|
|
glClearBufferData: proc(target: u32, internalformat: u32, format: u32, type: u32, data: *void);
|
|
glClearBufferSubData: proc(target: u32, internalformat: u32, offset: int, size: int, format: u32, type: u32, data: *void);
|
|
glDispatchCompute: proc(num_groups_x: u32, num_groups_y: u32, num_groups_z: u32);
|
|
glDispatchComputeIndirect: proc(indirect: *DispatchIndirectCommand);
|
|
glCopyImageSubData: proc(srcName: u32, srcTarget: u32, srcLevel: i32, srcX: i32, srcY: i32, srcZ: i32, dstName: u32, dstTarget: u32, dstLevel: i32, dstX: i32, dstY: i32, dstZ: i32, srcWidth: i32, srcHeight: i32, srcDepth: i32);
|
|
glFramebufferParameteri: proc(target: u32, pname: u32, param: i32);
|
|
glGetFramebufferParameteriv: proc(target: u32, pname: u32, params: *i32);
|
|
glGetInternalformati64v: proc(target: u32, internalformat: u32, pname: u32, bufSize: i32, params: *i64);
|
|
glInvalidateTexSubImage: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32);
|
|
glInvalidateTexImage: proc(texture: u32, level: i32);
|
|
glInvalidateBufferSubData: proc(buffer: u32, offset: int, length: int);
|
|
glInvalidateBufferData: proc(buffer: u32);
|
|
glInvalidateFramebuffer: proc(target: u32, numAttachments: i32, attachments: *u32);
|
|
glInvalidateSubFramebuffer: proc(target: u32, numAttachments: i32, attachments: *u32, x: i32, y: i32, width: i32, height: i32);
|
|
glMultiDrawArraysIndirect: proc(mode: u32, indirect: *DrawArraysIndirectCommand, drawcount: i32, stride: i32);
|
|
glMultiDrawElementsIndirect: proc(mode: u32, type: u32, indirect: *DrawElementsIndirectCommand, drawcount: i32, stride: i32);
|
|
glGetProgramInterfaceiv: proc(program: u32, programInterface: u32, pname: u32, params: *i32);
|
|
glGetProgramResourceIndex: proc(program: u32, programInterface: u32, name: *char): u32;
|
|
glGetProgramResourceName: proc(program: u32, programInterface: u32, index: u32, bufSize: i32, length: *i32, name: *u8);
|
|
glGetProgramResourceiv: proc(program: u32, programInterface: u32, index: u32, propCount: i32, props: *u32, bufSize: i32, length: *i32, params: *i32);
|
|
glGetProgramResourceLocation: proc(program: u32, programInterface: u32, name: *char): i32;
|
|
glGetProgramResourceLocationIndex: proc(program: u32, programInterface: u32, name: *char): i32;
|
|
glShaderStorageBlockBinding: proc(program: u32, storageBlockIndex: u32, storageBlockBinding: u32);
|
|
glTexBufferRange: proc(target: u32, internalformat: u32, buffer: u32, offset: int, size: int);
|
|
glTexStorage2DMultisample: proc(target: u32, samples: i32, internalformat: u32, width: i32, height: i32, fixedsamplelocations: bool);
|
|
glTexStorage3DMultisample: proc(target: u32, samples: i32, internalformat: u32, width: i32, height: i32, depth: i32, fixedsamplelocations: bool);
|
|
glTextureView: proc(texture: u32, target: u32, origtexture: u32, internalformat: u32, minlevel: u32, numlevels: u32, minlayer: u32, numlayers: u32);
|
|
glBindVertexBuffer: proc(bindingindex: u32, buffer: u32, offset: int, stride: i32);
|
|
glVertexAttribFormat: proc(attribindex: u32, size: i32, type: u32, normalized: bool, relativeoffset: u32);
|
|
glVertexAttribIFormat: proc(attribindex: u32, size: i32, type: u32, relativeoffset: u32);
|
|
glVertexAttribLFormat: proc(attribindex: u32, size: i32, type: u32, relativeoffset: u32);
|
|
glVertexAttribBinding: proc(attribindex: u32, bindingindex: u32);
|
|
glVertexBindingDivisor: proc(bindingindex: u32, divisor: u32);
|
|
glDebugMessageControl: proc(source: u32, type: u32, severity: u32, count: i32, ids: *u32, enabled: bool);
|
|
glDebugMessageInsert: proc(source: u32, type: u32, id: u32, severity: u32, length: i32, message: *char);
|
|
glDebugMessageCallback: proc(callback: debug_proc_t, userParam: *void);
|
|
glGetDebugMessageLog: proc(count: u32, bufSize: i32, sources: *u32, types: *u32, ids: *u32, severities: *u32, lengths: *i32, messageLog: *u8): u32;
|
|
glPushDebugGroup: proc(source: u32, id: u32, length: i32, message: *char);
|
|
glPopDebugGroup: proc();
|
|
glObjectLabel: proc(identifier: u32, name: u32, length: i32, label: *char);
|
|
glGetObjectLabel: proc(identifier: u32, name: u32, bufSize: i32, length: *i32, label: *u8);
|
|
glObjectPtrLabel: proc(ptr: *void, length: i32, label: *char);
|
|
glGetObjectPtrLabel: proc(ptr: *void, bufSize: i32, length: *i32, label: *u8);
|
|
|
|
load_4_3 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glClearBufferData), "glClearBufferData");
|
|
set_proc_address(:**void(&glClearBufferSubData), "glClearBufferSubData");
|
|
set_proc_address(:**void(&glDispatchCompute), "glDispatchCompute");
|
|
set_proc_address(:**void(&glDispatchComputeIndirect), "glDispatchComputeIndirect");
|
|
set_proc_address(:**void(&glCopyImageSubData), "glCopyImageSubData");
|
|
set_proc_address(:**void(&glFramebufferParameteri), "glFramebufferParameteri");
|
|
set_proc_address(:**void(&glGetFramebufferParameteriv), "glGetFramebufferParameteriv");
|
|
set_proc_address(:**void(&glGetInternalformati64v), "glGetInternalformati64v");
|
|
set_proc_address(:**void(&glInvalidateTexSubImage), "glInvalidateTexSubImage");
|
|
set_proc_address(:**void(&glInvalidateTexImage), "glInvalidateTexImage");
|
|
set_proc_address(:**void(&glInvalidateBufferSubData), "glInvalidateBufferSubData");
|
|
set_proc_address(:**void(&glInvalidateBufferData), "glInvalidateBufferData");
|
|
set_proc_address(:**void(&glInvalidateFramebuffer), "glInvalidateFramebuffer");
|
|
set_proc_address(:**void(&glInvalidateSubFramebuffer), "glInvalidateSubFramebuffer");
|
|
set_proc_address(:**void(&glMultiDrawArraysIndirect), "glMultiDrawArraysIndirect");
|
|
set_proc_address(:**void(&glMultiDrawElementsIndirect), "glMultiDrawElementsIndirect");
|
|
set_proc_address(:**void(&glGetProgramInterfaceiv), "glGetProgramInterfaceiv");
|
|
set_proc_address(:**void(&glGetProgramResourceIndex), "glGetProgramResourceIndex");
|
|
set_proc_address(:**void(&glGetProgramResourceName), "glGetProgramResourceName");
|
|
set_proc_address(:**void(&glGetProgramResourceiv), "glGetProgramResourceiv");
|
|
set_proc_address(:**void(&glGetProgramResourceLocation), "glGetProgramResourceLocation");
|
|
set_proc_address(:**void(&glGetProgramResourceLocationIndex), "glGetProgramResourceLocationIndex");
|
|
set_proc_address(:**void(&glShaderStorageBlockBinding), "glShaderStorageBlockBinding");
|
|
set_proc_address(:**void(&glTexBufferRange), "glTexBufferRange");
|
|
set_proc_address(:**void(&glTexStorage2DMultisample), "glTexStorage2DMultisample");
|
|
set_proc_address(:**void(&glTexStorage3DMultisample), "glTexStorage3DMultisample");
|
|
set_proc_address(:**void(&glTextureView), "glTextureView");
|
|
set_proc_address(:**void(&glBindVertexBuffer), "glBindVertexBuffer");
|
|
set_proc_address(:**void(&glVertexAttribFormat), "glVertexAttribFormat");
|
|
set_proc_address(:**void(&glVertexAttribIFormat), "glVertexAttribIFormat");
|
|
set_proc_address(:**void(&glVertexAttribLFormat), "glVertexAttribLFormat");
|
|
set_proc_address(:**void(&glVertexAttribBinding), "glVertexAttribBinding");
|
|
set_proc_address(:**void(&glVertexBindingDivisor), "glVertexBindingDivisor");
|
|
set_proc_address(:**void(&glDebugMessageControl), "glDebugMessageControl");
|
|
set_proc_address(:**void(&glDebugMessageInsert), "glDebugMessageInsert");
|
|
set_proc_address(:**void(&glDebugMessageCallback), "glDebugMessageCallback");
|
|
set_proc_address(:**void(&glGetDebugMessageLog), "glGetDebugMessageLog");
|
|
set_proc_address(:**void(&glPushDebugGroup), "glPushDebugGroup");
|
|
set_proc_address(:**void(&glPopDebugGroup), "glPopDebugGroup");
|
|
set_proc_address(:**void(&glObjectLabel), "glObjectLabel");
|
|
set_proc_address(:**void(&glGetObjectLabel), "glGetObjectLabel");
|
|
set_proc_address(:**void(&glObjectPtrLabel), "glObjectPtrLabel");
|
|
set_proc_address(:**void(&glGetObjectPtrLabel), "glGetObjectPtrLabel");
|
|
}
|
|
|
|
// VERSION_4_4
|
|
glBufferStorage: proc(target: u32, size: int, data: *void, flags: u32);
|
|
glClearTexImage: proc(texture: u32, level: i32, format: u32, type: u32, data: *void);
|
|
glClearTexSubImage: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, format: u32, type: u32, data: *void);
|
|
glBindBuffersBase: proc(target: u32, first: u32, count: i32, buffers: *u32);
|
|
glBindBuffersRange: proc(target: u32, first: u32, count: i32, buffers: *u32, offsets: *uintptr, sizes: *int);
|
|
glBindTextures: proc(first: u32, count: i32, textures: *u32);
|
|
glBindSamplers: proc(first: u32, count: i32, samplers: *u32);
|
|
glBindImageTextures: proc(first: u32, count: i32, textures: *u32);
|
|
glBindVertexBuffers: proc(first: u32, count: i32, buffers: *u32, offsets: *uintptr, strides: *i32);
|
|
|
|
load_4_4 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glBufferStorage), "glBufferStorage");
|
|
set_proc_address(:**void(&glClearTexImage), "glClearTexImage");
|
|
set_proc_address(:**void(&glClearTexSubImage), "glClearTexSubImage");
|
|
set_proc_address(:**void(&glBindBuffersBase), "glBindBuffersBase");
|
|
set_proc_address(:**void(&glBindBuffersRange), "glBindBuffersRange");
|
|
set_proc_address(:**void(&glBindTextures), "glBindTextures");
|
|
set_proc_address(:**void(&glBindSamplers), "glBindSamplers");
|
|
set_proc_address(:**void(&glBindImageTextures), "glBindImageTextures");
|
|
set_proc_address(:**void(&glBindVertexBuffers), "glBindVertexBuffers");
|
|
}
|
|
|
|
// VERSION_4_5
|
|
glClipControl: proc(origin: u32, depth: u32);
|
|
glCreateTransformFeedbacks: proc(n: i32, ids: *u32);
|
|
glTransformFeedbackBufferBase: proc(xfb: u32, index: u32, buffer: u32);
|
|
glTransformFeedbackBufferRange: proc(xfb: u32, index: u32, buffer: u32, offset: int, size: int);
|
|
glGetTransformFeedbackiv: proc(xfb: u32, pname: u32, param: *i32);
|
|
glGetTransformFeedbacki_v: proc(xfb: u32, pname: u32, index: u32, param: *i32);
|
|
glGetTransformFeedbacki64_v: proc(xfb: u32, pname: u32, index: u32, param: *i64);
|
|
glCreateBuffers: proc(n: i32, buffers: *u32);
|
|
glNamedBufferStorage: proc(buffer: u32, size: int, data: *void, flags: u32);
|
|
glNamedBufferData: proc(buffer: u32, size: int, data: *void, usage: u32);
|
|
glNamedBufferSubData: proc(buffer: u32, offset: int, size: int, data: *void);
|
|
glCopyNamedBufferSubData: proc(readBuffer: u32, writeBuffer: u32, readOffset: int, writeOffset: int, size: int);
|
|
glClearNamedBufferData: proc(buffer: u32, internalformat: u32, format: u32, type: u32, data: *void);
|
|
glClearNamedBufferSubData: proc(buffer: u32, internalformat: u32, offset: int, size: int, format: u32, type: u32, data: *void);
|
|
glMapNamedBuffer: proc(buffer: u32, access: u32): *void;
|
|
glMapNamedBufferRange: proc(buffer: u32, offset: int, length: int, access: u32): *void;
|
|
glUnmapNamedBuffer: proc(buffer: u32): bool;
|
|
glFlushMappedNamedBufferRange: proc(buffer: u32, offset: int, length: int);
|
|
glGetNamedBufferParameteriv: proc(buffer: u32, pname: u32, params: *i32);
|
|
glGetNamedBufferParameteri64v: proc(buffer: u32, pname: u32, params: *i64);
|
|
glGetNamedBufferPointerv: proc(buffer: u32, pname: u32, params: **void);
|
|
glGetNamedBufferSubData: proc(buffer: u32, offset: int, size: int, data: *void);
|
|
glCreateFramebuffers: proc(n: i32, framebuffers: *u32);
|
|
glNamedFramebufferRenderbuffer: proc(framebuffer: u32, attachment: u32, renderbuffertarget: u32, renderbuffer: u32);
|
|
glNamedFramebufferParameteri: proc(framebuffer: u32, pname: u32, param: i32);
|
|
glNamedFramebufferTexture: proc(framebuffer: u32, attachment: u32, texture: u32, level: i32);
|
|
glNamedFramebufferTextureLayer: proc(framebuffer: u32, attachment: u32, texture: u32, level: i32, layer: i32);
|
|
glNamedFramebufferDrawBuffer: proc(framebuffer: u32, buf: u32);
|
|
glNamedFramebufferDrawBuffers: proc(framebuffer: u32, n: i32, bufs: *u32);
|
|
glNamedFramebufferReadBuffer: proc(framebuffer: u32, src: u32);
|
|
glInvalidateNamedFramebufferData: proc(framebuffer: u32, numAttachments: i32, attachments: *u32);
|
|
glInvalidateNamedFramebufferSubData: proc(framebuffer: u32, numAttachments: i32, attachments: *u32, x: i32, y: i32, width: i32, height: i32);
|
|
glClearNamedFramebufferiv: proc(framebuffer: u32, buffer: u32, drawbuffer: i32, value: *i32);
|
|
glClearNamedFramebufferuiv: proc(framebuffer: u32, buffer: u32, drawbuffer: i32, value: *u32);
|
|
glClearNamedFramebufferfv: proc(framebuffer: u32, buffer: u32, drawbuffer: i32, value: *f32);
|
|
glClearNamedFramebufferfi: proc(framebuffer: u32, buffer: u32, drawbuffer: i32, depth: f32, stencil: i32);
|
|
glBlitNamedFramebuffer: proc(readFramebuffer: u32, drawFramebuffer: u32, srcX0: i32, srcY0: i32, srcX1: i32, srcY1: i32, dstX0: i32, dstY0: i32, dstX1: i32, dstY1: i32, mask: u32, filter: u32);
|
|
glCheckNamedFramebufferStatus: proc(framebuffer: u32, target: u32): u32;
|
|
glGetNamedFramebufferParameteriv: proc(framebuffer: u32, pname: u32, param: *i32);
|
|
glGetNamedFramebufferAttachmentParameteriv: proc(framebuffer: u32, attachment: u32, pname: u32, params: *i32);
|
|
glCreateRenderbuffers: proc(n: i32, renderbuffers: *u32);
|
|
glNamedRenderbufferStorage: proc(renderbuffer: u32, internalformat: u32, width: i32, height: i32);
|
|
glNamedRenderbufferStorageMultisample: proc(renderbuffer: u32, samples: i32, internalformat: u32, width: i32, height: i32);
|
|
glGetNamedRenderbufferParameteriv: proc(renderbuffer: u32, pname: u32, params: *i32);
|
|
glCreateTextures: proc(target: u32, n: i32, textures: *u32);
|
|
glTextureBuffer: proc(texture: u32, internalformat: u32, buffer: u32);
|
|
glTextureBufferRange: proc(texture: u32, internalformat: u32, buffer: u32, offset: int, size: int);
|
|
glTextureStorage1D: proc(texture: u32, levels: i32, internalformat: u32, width: i32);
|
|
glTextureStorage2D: proc(texture: u32, levels: i32, internalformat: u32, width: i32, height: i32);
|
|
glTextureStorage3D: proc(texture: u32, levels: i32, internalformat: u32, width: i32, height: i32, depth: i32);
|
|
glTextureStorage2DMultisample: proc(texture: u32, samples: i32, internalformat: u32, width: i32, height: i32, fixedsamplelocations: bool);
|
|
glTextureStorage3DMultisample: proc(texture: u32, samples: i32, internalformat: u32, width: i32, height: i32, depth: i32, fixedsamplelocations: bool);
|
|
glTextureSubImage1D: proc(texture: u32, level: i32, xoffset: i32, width: i32, format: u32, type: u32, pixels: *void);
|
|
glTextureSubImage2D: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, width: i32, height: i32, format: u32, type: u32, pixels: *void);
|
|
glTextureSubImage3D: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, format: u32, type: u32, pixels: *void);
|
|
glCompressedTextureSubImage1D: proc(texture: u32, level: i32, xoffset: i32, width: i32, format: u32, imageSize: i32, data: *void);
|
|
glCompressedTextureSubImage2D: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, width: i32, height: i32, format: u32, imageSize: i32, data: *void);
|
|
glCompressedTextureSubImage3D: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, format: u32, imageSize: i32, data: *void);
|
|
glCopyTextureSubImage1D: proc(texture: u32, level: i32, xoffset: i32, x: i32, y: i32, width: i32);
|
|
glCopyTextureSubImage2D: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, x: i32, y: i32, width: i32, height: i32);
|
|
glCopyTextureSubImage3D: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, x: i32, y: i32, width: i32, height: i32);
|
|
glTextureParameterf: proc(texture: u32, pname: u32, param: f32);
|
|
glTextureParameterfv: proc(texture: u32, pname: u32, param: *f32);
|
|
glTextureParameteri: proc(texture: u32, pname: u32, param: i32);
|
|
glTextureParameterIiv: proc(texture: u32, pname: u32, params: *i32);
|
|
glTextureParameterIuiv: proc(texture: u32, pname: u32, params: *u32);
|
|
glTextureParameteriv: proc(texture: u32, pname: u32, param: *i32);
|
|
glGenerateTextureMipmap: proc(texture: u32);
|
|
glBindTextureUnit: proc(unit: u32, texture: u32);
|
|
glGetTextureImage: proc(texture: u32, level: i32, format: u32, type: u32, bufSize: i32, pixels: *void);
|
|
glGetCompressedTextureImage: proc(texture: u32, level: i32, bufSize: i32, pixels: *void);
|
|
glGetTextureLevelParameterfv: proc(texture: u32, level: i32, pname: u32, params: *f32);
|
|
glGetTextureLevelParameteriv: proc(texture: u32, level: i32, pname: u32, params: *i32);
|
|
glGetTextureParameterfv: proc(texture: u32, pname: u32, params: *f32);
|
|
glGetTextureParameterIiv: proc(texture: u32, pname: u32, params: *i32);
|
|
glGetTextureParameterIuiv: proc(texture: u32, pname: u32, params: *u32);
|
|
glGetTextureParameteriv: proc(texture: u32, pname: u32, params: *i32);
|
|
glCreateVertexArrays: proc(n: i32, arrays: *u32);
|
|
glDisableVertexArrayAttrib: proc(vaobj: u32, index: u32);
|
|
glEnableVertexArrayAttrib: proc(vaobj: u32, index: u32);
|
|
glVertexArrayElementBuffer: proc(vaobj: u32, buffer: u32);
|
|
glVertexArrayVertexBuffer: proc(vaobj: u32, bindingindex: u32, buffer: u32, offset: int, stride: i32);
|
|
glVertexArrayVertexBuffers: proc(vaobj: u32, first: u32, count: i32, buffers: *u32, offsets: *uintptr, strides: *i32);
|
|
glVertexArrayAttribBinding: proc(vaobj: u32, attribindex: u32, bindingindex: u32);
|
|
glVertexArrayAttribFormat: proc(vaobj: u32, attribindex: u32, size: i32, type: u32, normalized: bool, relativeoffset: u32);
|
|
glVertexArrayAttribIFormat: proc(vaobj: u32, attribindex: u32, size: i32, type: u32, relativeoffset: u32);
|
|
glVertexArrayAttribLFormat: proc(vaobj: u32, attribindex: u32, size: i32, type: u32, relativeoffset: u32);
|
|
glVertexArrayBindingDivisor: proc(vaobj: u32, bindingindex: u32, divisor: u32);
|
|
glGetVertexArrayiv: proc(vaobj: u32, pname: u32, param: *i32);
|
|
glGetVertexArrayIndexediv: proc(vaobj: u32, index: u32, pname: u32, param: *i32);
|
|
glGetVertexArrayIndexed64iv: proc(vaobj: u32, index: u32, pname: u32, param: *i64);
|
|
glCreateSamplers: proc(n: i32, samplers: *u32);
|
|
glCreateProgramPipelines: proc(n: i32, pipelines: *u32);
|
|
glCreateQueries: proc(target: u32, n: i32, ids: *u32);
|
|
glGetQueryBufferObjecti64v: proc(id: u32, buffer: u32, pname: u32, offset: int);
|
|
glGetQueryBufferObjectiv: proc(id: u32, buffer: u32, pname: u32, offset: int);
|
|
glGetQueryBufferObjectui64v: proc(id: u32, buffer: u32, pname: u32, offset: int);
|
|
glGetQueryBufferObjectuiv: proc(id: u32, buffer: u32, pname: u32, offset: int);
|
|
glMemoryBarrierByRegion: proc(barriers: u32);
|
|
glGetTextureSubImage: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, format: u32, type: u32, bufSize: i32, pixels: *void);
|
|
glGetCompressedTextureSubImage: proc(texture: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, bufSize: i32, pixels: *void);
|
|
glGetGraphicsResetStatus: proc(): u32;
|
|
glGetnCompressedTexImage: proc(target: u32, lod: i32, bufSize: i32, pixels: *void);
|
|
glGetnTexImage: proc(target: u32, level: i32, format: u32, type: u32, bufSize: i32, pixels: *void);
|
|
glGetnUniformdv: proc(program: u32, location: i32, bufSize: i32, params: *f64);
|
|
glGetnUniformfv: proc(program: u32, location: i32, bufSize: i32, params: *f32);
|
|
glGetnUniformiv: proc(program: u32, location: i32, bufSize: i32, params: *i32);
|
|
glGetnUniformuiv: proc(program: u32, location: i32, bufSize: i32, params: *u32);
|
|
glReadnPixels: proc(x: i32, y: i32, width: i32, height: i32, format: u32, type: u32, bufSize: i32, data: *void);
|
|
glGetnMapdv: proc(target: u32, query: u32, bufSize: i32, v: *f64);
|
|
glGetnMapfv: proc(target: u32, query: u32, bufSize: i32, v: *f32);
|
|
glGetnMapiv: proc(target: u32, query: u32, bufSize: i32, v: *i32);
|
|
glGetnPixelMapusv: proc(map_: u32, bufSize: i32, values: *u16);
|
|
glGetnPixelMapfv: proc(map_: u32, bufSize: i32, values: *f32);
|
|
glGetnPixelMapuiv: proc(map_: u32, bufSize: i32, values: *u32);
|
|
glGetnPolygonStipple: proc(bufSize: i32, pattern: *u8);
|
|
glGetnColorTable: proc(target: u32, format: u32, type: u32, bufSize: i32, table: *void);
|
|
glGetnConvolutionFilter: proc(target: u32, format: u32, type: u32, bufSize: i32, image: *void);
|
|
glGetnSeparableFilter: proc(target: u32, format: u32, type: u32, rowBufSize: i32, row: *void, columnBufSize: i32, column: *void, span: *void);
|
|
glGetnHistogram: proc(target: u32, reset: bool, format: u32, type: u32, bufSize: i32, values: *void);
|
|
glGetnMinmax: proc(target: u32, reset: bool, format: u32, type: u32, bufSize: i32, values: *void);
|
|
glTextureBarrier: proc();
|
|
glGetUnsignedBytevEXT: proc(pname: u32, data: *u8);
|
|
glTexPageCommitmentARB: proc(target: u32, level: i32, xoffset: i32, yoffset: i32, zoffset: i32, width: i32, height: i32, depth: i32, commit: bool);
|
|
|
|
load_4_5 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glClipControl), "glClipControl");
|
|
set_proc_address(:**void(&glCreateTransformFeedbacks), "glCreateTransformFeedbacks");
|
|
set_proc_address(:**void(&glTransformFeedbackBufferBase), "glTransformFeedbackBufferBase");
|
|
set_proc_address(:**void(&glTransformFeedbackBufferRange), "glTransformFeedbackBufferRange");
|
|
set_proc_address(:**void(&glGetTransformFeedbackiv), "glGetTransformFeedbackiv");
|
|
set_proc_address(:**void(&glGetTransformFeedbacki_v), "glGetTransformFeedbacki_v");
|
|
set_proc_address(:**void(&glGetTransformFeedbacki64_v), "glGetTransformFeedbacki64_v");
|
|
set_proc_address(:**void(&glCreateBuffers), "glCreateBuffers");
|
|
set_proc_address(:**void(&glNamedBufferStorage), "glNamedBufferStorage");
|
|
set_proc_address(:**void(&glNamedBufferData), "glNamedBufferData");
|
|
set_proc_address(:**void(&glNamedBufferSubData), "glNamedBufferSubData");
|
|
set_proc_address(:**void(&glCopyNamedBufferSubData), "glCopyNamedBufferSubData");
|
|
set_proc_address(:**void(&glClearNamedBufferData), "glClearNamedBufferData");
|
|
set_proc_address(:**void(&glClearNamedBufferSubData), "glClearNamedBufferSubData");
|
|
set_proc_address(:**void(&glMapNamedBuffer), "glMapNamedBuffer");
|
|
set_proc_address(:**void(&glMapNamedBufferRange), "glMapNamedBufferRange");
|
|
set_proc_address(:**void(&glUnmapNamedBuffer), "glUnmapNamedBuffer");
|
|
set_proc_address(:**void(&glFlushMappedNamedBufferRange), "glFlushMappedNamedBufferRange");
|
|
set_proc_address(:**void(&glGetNamedBufferParameteriv), "glGetNamedBufferParameteriv");
|
|
set_proc_address(:**void(&glGetNamedBufferParameteri64v), "glGetNamedBufferParameteri64v");
|
|
set_proc_address(:**void(&glGetNamedBufferPointerv), "glGetNamedBufferPointerv");
|
|
set_proc_address(:**void(&glGetNamedBufferSubData), "glGetNamedBufferSubData");
|
|
set_proc_address(:**void(&glCreateFramebuffers), "glCreateFramebuffers");
|
|
set_proc_address(:**void(&glNamedFramebufferRenderbuffer), "glNamedFramebufferRenderbuffer");
|
|
set_proc_address(:**void(&glNamedFramebufferParameteri), "glNamedFramebufferParameteri");
|
|
set_proc_address(:**void(&glNamedFramebufferTexture), "glNamedFramebufferTexture");
|
|
set_proc_address(:**void(&glNamedFramebufferTextureLayer), "glNamedFramebufferTextureLayer");
|
|
set_proc_address(:**void(&glNamedFramebufferDrawBuffer), "glNamedFramebufferDrawBuffer");
|
|
set_proc_address(:**void(&glNamedFramebufferDrawBuffers), "glNamedFramebufferDrawBuffers");
|
|
set_proc_address(:**void(&glNamedFramebufferReadBuffer), "glNamedFramebufferReadBuffer");
|
|
set_proc_address(:**void(&glInvalidateNamedFramebufferData), "glInvalidateNamedFramebufferData");
|
|
set_proc_address(:**void(&glInvalidateNamedFramebufferSubData), "glInvalidateNamedFramebufferSubData");
|
|
set_proc_address(:**void(&glClearNamedFramebufferiv), "glClearNamedFramebufferiv");
|
|
set_proc_address(:**void(&glClearNamedFramebufferuiv), "glClearNamedFramebufferuiv");
|
|
set_proc_address(:**void(&glClearNamedFramebufferfv), "glClearNamedFramebufferfv");
|
|
set_proc_address(:**void(&glClearNamedFramebufferfi), "glClearNamedFramebufferfi");
|
|
set_proc_address(:**void(&glBlitNamedFramebuffer), "glBlitNamedFramebuffer");
|
|
set_proc_address(:**void(&glCheckNamedFramebufferStatus), "glCheckNamedFramebufferStatus");
|
|
set_proc_address(:**void(&glGetNamedFramebufferParameteriv), "glGetNamedFramebufferParameteriv");
|
|
set_proc_address(:**void(&glGetNamedFramebufferAttachmentParameteriv), "glGetNamedFramebufferAttachmentParameteriv");
|
|
set_proc_address(:**void(&glCreateRenderbuffers), "glCreateRenderbuffers");
|
|
set_proc_address(:**void(&glNamedRenderbufferStorage), "glNamedRenderbufferStorage");
|
|
set_proc_address(:**void(&glNamedRenderbufferStorageMultisample), "glNamedRenderbufferStorageMultisample");
|
|
set_proc_address(:**void(&glGetNamedRenderbufferParameteriv), "glGetNamedRenderbufferParameteriv");
|
|
set_proc_address(:**void(&glCreateTextures), "glCreateTextures");
|
|
set_proc_address(:**void(&glTextureBuffer), "glTextureBuffer");
|
|
set_proc_address(:**void(&glTextureBufferRange), "glTextureBufferRange");
|
|
set_proc_address(:**void(&glTextureStorage1D), "glTextureStorage1D");
|
|
set_proc_address(:**void(&glTextureStorage2D), "glTextureStorage2D");
|
|
set_proc_address(:**void(&glTextureStorage3D), "glTextureStorage3D");
|
|
set_proc_address(:**void(&glTextureStorage2DMultisample), "glTextureStorage2DMultisample");
|
|
set_proc_address(:**void(&glTextureStorage3DMultisample), "glTextureStorage3DMultisample");
|
|
set_proc_address(:**void(&glTextureSubImage1D), "glTextureSubImage1D");
|
|
set_proc_address(:**void(&glTextureSubImage2D), "glTextureSubImage2D");
|
|
set_proc_address(:**void(&glTextureSubImage3D), "glTextureSubImage3D");
|
|
set_proc_address(:**void(&glCompressedTextureSubImage1D), "glCompressedTextureSubImage1D");
|
|
set_proc_address(:**void(&glCompressedTextureSubImage2D), "glCompressedTextureSubImage2D");
|
|
set_proc_address(:**void(&glCompressedTextureSubImage3D), "glCompressedTextureSubImage3D");
|
|
set_proc_address(:**void(&glCopyTextureSubImage1D), "glCopyTextureSubImage1D");
|
|
set_proc_address(:**void(&glCopyTextureSubImage2D), "glCopyTextureSubImage2D");
|
|
set_proc_address(:**void(&glCopyTextureSubImage3D), "glCopyTextureSubImage3D");
|
|
set_proc_address(:**void(&glTextureParameterf), "glTextureParameterf");
|
|
set_proc_address(:**void(&glTextureParameterfv), "glTextureParameterfv");
|
|
set_proc_address(:**void(&glTextureParameteri), "glTextureParameteri");
|
|
set_proc_address(:**void(&glTextureParameterIiv), "glTextureParameterIiv");
|
|
set_proc_address(:**void(&glTextureParameterIuiv), "glTextureParameterIuiv");
|
|
set_proc_address(:**void(&glTextureParameteriv), "glTextureParameteriv");
|
|
set_proc_address(:**void(&glGenerateTextureMipmap), "glGenerateTextureMipmap");
|
|
set_proc_address(:**void(&glBindTextureUnit), "glBindTextureUnit");
|
|
set_proc_address(:**void(&glGetTextureImage), "glGetTextureImage");
|
|
set_proc_address(:**void(&glGetCompressedTextureImage), "glGetCompressedTextureImage");
|
|
set_proc_address(:**void(&glGetTextureLevelParameterfv), "glGetTextureLevelParameterfv");
|
|
set_proc_address(:**void(&glGetTextureLevelParameteriv), "glGetTextureLevelParameteriv");
|
|
set_proc_address(:**void(&glGetTextureParameterfv), "glGetTextureParameterfv");
|
|
set_proc_address(:**void(&glGetTextureParameterIiv), "glGetTextureParameterIiv");
|
|
set_proc_address(:**void(&glGetTextureParameterIuiv), "glGetTextureParameterIuiv");
|
|
set_proc_address(:**void(&glGetTextureParameteriv), "glGetTextureParameteriv");
|
|
set_proc_address(:**void(&glCreateVertexArrays), "glCreateVertexArrays");
|
|
set_proc_address(:**void(&glDisableVertexArrayAttrib), "glDisableVertexArrayAttrib");
|
|
set_proc_address(:**void(&glEnableVertexArrayAttrib), "glEnableVertexArrayAttrib");
|
|
set_proc_address(:**void(&glVertexArrayElementBuffer), "glVertexArrayElementBuffer");
|
|
set_proc_address(:**void(&glVertexArrayVertexBuffer), "glVertexArrayVertexBuffer");
|
|
set_proc_address(:**void(&glVertexArrayVertexBuffers), "glVertexArrayVertexBuffers");
|
|
set_proc_address(:**void(&glVertexArrayAttribBinding), "glVertexArrayAttribBinding");
|
|
set_proc_address(:**void(&glVertexArrayAttribFormat), "glVertexArrayAttribFormat");
|
|
set_proc_address(:**void(&glVertexArrayAttribIFormat), "glVertexArrayAttribIFormat");
|
|
set_proc_address(:**void(&glVertexArrayAttribLFormat), "glVertexArrayAttribLFormat");
|
|
set_proc_address(:**void(&glVertexArrayBindingDivisor), "glVertexArrayBindingDivisor");
|
|
set_proc_address(:**void(&glGetVertexArrayiv), "glGetVertexArrayiv");
|
|
set_proc_address(:**void(&glGetVertexArrayIndexediv), "glGetVertexArrayIndexediv");
|
|
set_proc_address(:**void(&glGetVertexArrayIndexed64iv), "glGetVertexArrayIndexed64iv");
|
|
set_proc_address(:**void(&glCreateSamplers), "glCreateSamplers");
|
|
set_proc_address(:**void(&glCreateProgramPipelines), "glCreateProgramPipelines");
|
|
set_proc_address(:**void(&glCreateQueries), "glCreateQueries");
|
|
set_proc_address(:**void(&glGetQueryBufferObjecti64v), "glGetQueryBufferObjecti64v");
|
|
set_proc_address(:**void(&glGetQueryBufferObjectiv), "glGetQueryBufferObjectiv");
|
|
set_proc_address(:**void(&glGetQueryBufferObjectui64v), "glGetQueryBufferObjectui64v");
|
|
set_proc_address(:**void(&glGetQueryBufferObjectuiv), "glGetQueryBufferObjectuiv");
|
|
set_proc_address(:**void(&glMemoryBarrierByRegion), "glMemoryBarrierByRegion");
|
|
set_proc_address(:**void(&glGetTextureSubImage), "glGetTextureSubImage");
|
|
set_proc_address(:**void(&glGetCompressedTextureSubImage), "glGetCompressedTextureSubImage");
|
|
set_proc_address(:**void(&glGetGraphicsResetStatus), "glGetGraphicsResetStatus");
|
|
set_proc_address(:**void(&glGetnCompressedTexImage), "glGetnCompressedTexImage");
|
|
set_proc_address(:**void(&glGetnTexImage), "glGetnTexImage");
|
|
set_proc_address(:**void(&glGetnUniformdv), "glGetnUniformdv");
|
|
set_proc_address(:**void(&glGetnUniformfv), "glGetnUniformfv");
|
|
set_proc_address(:**void(&glGetnUniformiv), "glGetnUniformiv");
|
|
set_proc_address(:**void(&glGetnUniformuiv), "glGetnUniformuiv");
|
|
set_proc_address(:**void(&glReadnPixels), "glReadnPixels");
|
|
set_proc_address(:**void(&glGetnMapdv), "glGetnMapdv");
|
|
set_proc_address(:**void(&glGetnMapfv), "glGetnMapfv");
|
|
set_proc_address(:**void(&glGetnMapiv), "glGetnMapiv");
|
|
set_proc_address(:**void(&glGetnPixelMapfv), "glGetnPixelMapfv");
|
|
set_proc_address(:**void(&glGetnPixelMapuiv), "glGetnPixelMapuiv");
|
|
set_proc_address(:**void(&glGetnPixelMapusv), "glGetnPixelMapusv");
|
|
set_proc_address(:**void(&glGetnPolygonStipple), "glGetnPolygonStipple");
|
|
set_proc_address(:**void(&glGetnColorTable), "glGetnColorTable");
|
|
set_proc_address(:**void(&glGetnConvolutionFilter), "glGetnConvolutionFilter");
|
|
set_proc_address(:**void(&glGetnSeparableFilter), "glGetnSeparableFilter");
|
|
set_proc_address(:**void(&glGetnHistogram), "glGetnHistogram");
|
|
set_proc_address(:**void(&glGetnMinmax), "glGetnMinmax");
|
|
set_proc_address(:**void(&glTextureBarrier), "glTextureBarrier");
|
|
set_proc_address(:**void(&glGetUnsignedBytevEXT), "glGetUnsignedBytevEXT");
|
|
set_proc_address(:**void(&glTexPageCommitmentARB), "glTexPageCommitmentARB");
|
|
}
|
|
|
|
// VERSION_4_6
|
|
glSpecializeShader: proc(shader: u32, pEntryPoint: *char, numSpecializationConstants: u32, pConstantIndex: *u32, pConstantValue: *u32);
|
|
glMultiDrawArraysIndirectCount: proc(mode: i32, indirect: *DrawArraysIndirectCommand, drawcount: i32, maxdrawcount: i32, stride: i32);
|
|
glMultiDrawElementsIndirectCount: proc(mode: i32, type: i32, indirect: *DrawElementsIndirectCommand, drawcount: i32, maxdrawcount: i32, stride: i32);
|
|
glPolygonOffsetClamp: proc(factor: f32, units: f32, clamp: f32);
|
|
|
|
load_4_6 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
|
set_proc_address(:**void(&glSpecializeShader), "glSpecializeShader");
|
|
set_proc_address(:**void(&glMultiDrawArraysIndirectCount), "glMultiDrawArraysIndirectCount");
|
|
set_proc_address(:**void(&glMultiDrawElementsIndirectCount), "glMultiDrawElementsIndirectCount");
|
|
set_proc_address(:**void(&glPolygonOffsetClamp), "glPolygonOffsetClamp");
|
|
}
|