Skip to content

Instantly share code, notes, and snippets.

@emekoi
Created April 12, 2020 19:15
Show Gist options
  • Save emekoi/767ee2cace44759bfd3bcd947a1445ab to your computer and use it in GitHub Desktop.
Save emekoi/767ee2cace44759bfd3bcd947a1445ab to your computer and use it in GitHub Desktop.
pub const GLvoid = c_void;
pub const GLenum = c_uint;
pub const GLfloat = f32;
pub const GLint = c_int;
pub const GLsizei = isize;
pub const GLbitfield = c_uint;
pub const GLdouble = f64;
pub const GLuint = c_uint;
pub const GLboolean = u8;
pub const GLubyte = u8;
pub const DEPTH_BUFFER_BIT = 0x00000100;
pub const STENCIL_BUFFER_BIT = 0x00000400;
pub const COLOR_BUFFER_BIT = 0x00004000;
pub const FALSE = 0;
pub const TRUE = 1;
pub const POINTS = 0x0000;
pub const LINES = 0x0001;
pub const LINE_LOOP = 0x0002;
pub const LINE_STRIP = 0x0003;
pub const TRIANGLES = 0x0004;
pub const TRIANGLE_STRIP = 0x0005;
pub const TRIANGLE_FAN = 0x0006;
pub const QUADS = 0x0007;
pub const NEVER = 0x0200;
pub const LESS = 0x0201;
pub const EQUAL = 0x0202;
pub const LEQUAL = 0x0203;
pub const GREATER = 0x0204;
pub const NOTEQUAL = 0x0205;
pub const GEQUAL = 0x0206;
pub const ALWAYS = 0x0207;
pub const ZERO = 0;
pub const ONE = 1;
pub const SRC_COLOR = 0x0300;
pub const ONE_MINUS_SRC_COLOR = 0x0301;
pub const SRC_ALPHA = 0x0302;
pub const ONE_MINUS_SRC_ALPHA = 0x0303;
pub const DST_ALPHA = 0x0304;
pub const ONE_MINUS_DST_ALPHA = 0x0305;
pub const DST_COLOR = 0x0306;
pub const ONE_MINUS_DST_COLOR = 0x0307;
pub const SRC_ALPHA_SATURATE = 0x0308;
pub const NONE = 0;
pub const FRONT_LEFT = 0x0400;
pub const FRONT_RIGHT = 0x0401;
pub const BACK_LEFT = 0x0402;
pub const BACK_RIGHT = 0x0403;
pub const FRONT = 0x0404;
pub const BACK = 0x0405;
pub const LEFT = 0x0406;
pub const RIGHT = 0x0407;
pub const FRONT_AND_BACK = 0x0408;
pub const NO_ERROR = 0;
pub const INVALID_ENUM = 0x0500;
pub const INVALID_VALUE = 0x0501;
pub const INVALID_OPERATION = 0x0502;
pub const OUT_OF_MEMORY = 0x0505;
pub const CW = 0x0900;
pub const CCW = 0x0901;
pub const POINT_SIZE = 0x0B11;
pub const POINT_SIZE_RANGE = 0x0B12;
pub const POINT_SIZE_GRANULARITY = 0x0B13;
pub const LINE_SMOOTH = 0x0B20;
pub const LINE_WIDTH = 0x0B21;
pub const LINE_WIDTH_RANGE = 0x0B22;
pub const LINE_WIDTH_GRANULARITY = 0x0B23;
pub const POLYGON_MODE = 0x0B40;
pub const POLYGON_SMOOTH = 0x0B41;
pub const CULL_FACE = 0x0B44;
pub const CULL_FACE_MODE = 0x0B45;
pub const FRONT_FACE = 0x0B46;
pub const DEPTH_RANGE = 0x0B70;
pub const DEPTH_TEST = 0x0B71;
pub const DEPTH_WRITEMASK = 0x0B72;
pub const DEPTH_CLEAR_VALUE = 0x0B73;
pub const DEPTH_FUNC = 0x0B74;
pub const STENCIL_TEST = 0x0B90;
pub const STENCIL_CLEAR_VALUE = 0x0B91;
pub const STENCIL_FUNC = 0x0B92;
pub const STENCIL_VALUE_MASK = 0x0B93;
pub const STENCIL_FAIL = 0x0B94;
pub const STENCIL_PASS_DEPTH_FAIL = 0x0B95;
pub const STENCIL_PASS_DEPTH_PASS = 0x0B96;
pub const STENCIL_REF = 0x0B97;
pub const STENCIL_WRITEMASK = 0x0B98;
pub const VIEWPORT = 0x0BA2;
pub const DITHER = 0x0BD0;
pub const BLEND_DST = 0x0BE0;
pub const BLEND_SRC = 0x0BE1;
pub const BLEND = 0x0BE2;
pub const LOGIC_OP_MODE = 0x0BF0;
pub const DRAW_BUFFER = 0x0C01;
pub const READ_BUFFER = 0x0C02;
pub const SCISSOR_BOX = 0x0C10;
pub const SCISSOR_TEST = 0x0C11;
pub const COLOR_CLEAR_VALUE = 0x0C22;
pub const COLOR_WRITEMASK = 0x0C23;
pub const DOUBLEBUFFER = 0x0C32;
pub const STEREO = 0x0C33;
pub const LINE_SMOOTH_HINT = 0x0C52;
pub const POLYGON_SMOOTH_HINT = 0x0C53;
pub const UNPACK_SWAP_BYTES = 0x0CF0;
pub const UNPACK_LSB_FIRST = 0x0CF1;
pub const UNPACK_ROW_LENGTH = 0x0CF2;
pub const UNPACK_SKIP_ROWS = 0x0CF3;
pub const UNPACK_SKIP_PIXELS = 0x0CF4;
pub const UNPACK_ALIGNMENT = 0x0CF5;
pub const PACK_SWAP_BYTES = 0x0D00;
pub const PACK_LSB_FIRST = 0x0D01;
pub const PACK_ROW_LENGTH = 0x0D02;
pub const PACK_SKIP_ROWS = 0x0D03;
pub const PACK_SKIP_PIXELS = 0x0D04;
pub const PACK_ALIGNMENT = 0x0D05;
pub const MAX_TEXTURE_SIZE = 0x0D33;
pub const MAX_VIEWPORT_DIMS = 0x0D3A;
pub const SUBPIXEL_BITS = 0x0D50;
pub const TEXTURE_1D = 0x0DE0;
pub const TEXTURE_2D = 0x0DE1;
pub const TEXTURE_WIDTH = 0x1000;
pub const TEXTURE_HEIGHT = 0x1001;
pub const TEXTURE_BORDER_COLOR = 0x1004;
pub const DONT_CARE = 0x1100;
pub const FASTEST = 0x1101;
pub const NICEST = 0x1102;
pub const BYTE = 0x1400;
pub const UNSIGNED_BYTE = 0x1401;
pub const SHORT = 0x1402;
pub const UNSIGNED_SHORT = 0x1403;
pub const INT = 0x1404;
pub const UNSIGNED_INT = 0x1405;
pub const FLOAT = 0x1406;
pub const STACK_OVERFLOW = 0x0503;
pub const STACK_UNDERFLOW = 0x0504;
pub const CLEAR = 0x1500;
pub const AND = 0x1501;
pub const AND_REVERSE = 0x1502;
pub const COPY = 0x1503;
pub const AND_INVERTED = 0x1504;
pub const NOOP = 0x1505;
pub const XOR = 0x1506;
pub const OR = 0x1507;
pub const NOR = 0x1508;
pub const EQUIV = 0x1509;
pub const INVERT = 0x150A;
pub const OR_REVERSE = 0x150B;
pub const COPY_INVERTED = 0x150C;
pub const OR_INVERTED = 0x150D;
pub const NAND = 0x150E;
pub const SET = 0x150F;
pub const TEXTURE = 0x1702;
pub const COLOR = 0x1800;
pub const DEPTH = 0x1801;
pub const STENCIL = 0x1802;
pub const STENCIL_INDEX = 0x1901;
pub const DEPTH_COMPONENT = 0x1902;
pub const RED = 0x1903;
pub const GREEN = 0x1904;
pub const BLUE = 0x1905;
pub const ALPHA = 0x1906;
pub const RGB = 0x1907;
pub const RGBA = 0x1908;
pub const POINT = 0x1B00;
pub const LINE = 0x1B01;
pub const FILL = 0x1B02;
pub const KEEP = 0x1E00;
pub const REPLACE = 0x1E01;
pub const INCR = 0x1E02;
pub const DECR = 0x1E03;
pub const VENDOR = 0x1F00;
pub const RENDERER = 0x1F01;
pub const VERSION = 0x1F02;
pub const EXTENSIONS = 0x1F03;
pub const NEAREST = 0x2600;
pub const LINEAR = 0x2601;
pub const NEAREST_MIPMAP_NEAREST = 0x2700;
pub const LINEAR_MIPMAP_NEAREST = 0x2701;
pub const NEAREST_MIPMAP_LINEAR = 0x2702;
pub const LINEAR_MIPMAP_LINEAR = 0x2703;
pub const TEXTURE_MAG_FILTER = 0x2800;
pub const TEXTURE_MIN_FILTER = 0x2801;
pub const TEXTURE_WRAP_S = 0x2802;
pub const TEXTURE_WRAP_T = 0x2803;
pub const REPEAT = 0x2901;
cullFace: extern fn (mode: GLenum) void,
frontFace: extern fn (mode: GLenum) void,
hint: extern fn (target: GLenum, mode: GLenum) void,
lineWidth: extern fn (width: GLfloat) void,
pointSize: extern fn (size: GLfloat) void,
polygonMode: extern fn (face: GLenum, mode: GLenum) void,
scissor: extern fn (x: GLint, y: GLint, width: GLsizei, height: GLsizei) void,
texParameterf: extern fn (target: GLenum, pname: GLenum, param: GLfloat) void,
texParameterfv: extern fn (target: GLenum, pname: GLenum, params: [*]const GLfloat) void,
texParameteri: extern fn (target: GLenum, pname: GLenum, param: GLint) void,
texParameteriv: extern fn (target: GLenum, pname: GLenum, params: [*]const GLint) void,
texImage1D: extern fn (target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, border: GLint, format: GLenum, @"type": GLenum, pixels: [*]const u8) void,
texImage2D: extern fn (target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, @"type": GLenum, pixels: [*]const u8) void,
drawBuffer: extern fn (buf: GLenum) void,
clear: extern fn (mask: GLbitfield) void,
clearColor: extern fn (red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat) void,
clearStencil: extern fn (s: GLint) void,
clearDepth: extern fn (depth: GLdouble) void,
stencilMask: extern fn (mask: GLuint) void,
colorMask: extern fn (red: GLboolean, green: GLboolean, blue: GLboolean, alpha: GLboolean) void,
depthMask: extern fn (flag: GLboolean) void,
disable: extern fn (cap: GLenum) void,
enable: extern fn (cap: GLenum) void,
finish: extern fn () void,
flush: extern fn () void,
blendFunc: extern fn (sfactor: GLenum, dfactor: GLenum) void,
logicOp: extern fn (opcode: GLenum) void,
stencilFunc: extern fn (func: GLenum, ref: GLint, mask: GLuint) void,
stencilOp: extern fn (fail: GLenum, zfail: GLenum, zpass: GLenum) void,
depthFunc: extern fn (func: GLenum) void,
pixelStoref: extern fn (pname: GLenum, param: GLfloat) void,
pixelStorei: extern fn (pname: GLenum, param: GLint) void,
readBuffer: extern fn (src: GLenum) void,
readPixels: extern fn (x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: [*]const u8) void,
getBooleanv: extern fn (pname: GLenum, data: [*]GLboolean) void,
getDoublev: extern fn (pname: GLenum, data: [*]GLdouble) void,
getError: extern fn () GLenum,
getFloatv: extern fn (pname: GLenum, data: [*]GLfloat) void,
getIntegerv: extern fn (pname: GLenum, data: [*]GLint) void,
getString: extern fn (name: GLenum) [*]const GLubyte,
getTexImage: extern fn (target: GLenum, level: GLint, format: GLenum, type: GLenum, pixels: [*]const u8) void,
getTexParameterfv: extern fn (target: GLenum, pname: GLenum, params: [*]GLfloat) void,
getTexParameteriv: extern fn (target: GLenum, pname: GLenum, params: [*]GLint) void,
getTexLevelParameterfv: extern fn (target: GLenum, level: GLint, pname: GLenum, params: [*]GLfloat) void,
getTexLevelParameteriv: extern fn (target: GLenum, level: GLint, pname: GLenum, params: [*]GLint) void,
isEnabled: extern fn (cap: GLenum) GLboolean,
depthRange: extern fn (n: GLdouble, f: GLdouble) void,
viewport: extern fn (x: GLint, y: GLint, width: GLsizei, height: GLsizei) void,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment