|
@@ -0,0 +1,1037 @@
|
|
|
+# This is the definition file for all GL functions and types.
|
|
|
+
|
|
|
+%COPY_INTERFACE
|
|
|
+// ===================================================================
|
|
|
+// GL consts, types and functions
|
|
|
+// ===================================================================
|
|
|
+
|
|
|
+
|
|
|
+// -------------------------------------------------------------------
|
|
|
+// GL types
|
|
|
+// -------------------------------------------------------------------
|
|
|
+
|
|
|
+type
|
|
|
+
|
|
|
+ PSingle = ^Single;
|
|
|
+ PDouble = ^Double;
|
|
|
+
|
|
|
+ GLclampf = Single; // single precision float in [0,1]
|
|
|
+ GLclampd = Double; // double precision float in [0,1]
|
|
|
+
|
|
|
+ GLenum = Integer;
|
|
|
+
|
|
|
+type
|
|
|
+ GLbitfield = set of (GL_CURRENT_BIT, GL_POINT_BIT, GL_LINE_BIT,
|
|
|
+ GL_POLYGON_BIT, GL_POLYGON_STIPPLE_BIT, GL_PIXEL_MODE_BIT,
|
|
|
+ GL_LIGHTING_BIT, GL_FOG_BIT, GL_DEPTH_BUFFER_BIT, GL_ACCUM_BUFFER_BIT,
|
|
|
+ GL_STENCIL_BUFFER_BIT, GL_VIEWPORT_BIT, GL_TRANSFORM_BIT, GL_ENABLE_BIT,
|
|
|
+ GL_COLOR_BUFFER_BIT, GL_HINT_BIT, GL_EVAL_BIT, GL_LIST_BIT, GL_TEXTURE_BIT,
|
|
|
+ GL_SCISSOR_BIT);
|
|
|
+
|
|
|
+const
|
|
|
+ GL_ALL_ATTRIB_BITS = [Low(GLbitfield)..High(GLbitfield)];
|
|
|
+
|
|
|
+
|
|
|
+// -------------------------------------------------------------------
|
|
|
+// GL constants
|
|
|
+// -------------------------------------------------------------------
|
|
|
+
|
|
|
+const
|
|
|
+ GL_NO_ERROR = 0;
|
|
|
+
|
|
|
+ // Boolean values
|
|
|
+ GL_FALSE = 0;
|
|
|
+ GL_TRUE = 1;
|
|
|
+
|
|
|
+ // Data types
|
|
|
+ GL_BYTE = $1400;
|
|
|
+ GL_UNSIGNED_BYTE = $1401;
|
|
|
+ GL_SHORT = $1402;
|
|
|
+ GL_UNSIGNED_SHORT = $1403;
|
|
|
+ GL_INT = $1404;
|
|
|
+ GL_UNSIGNED_INT = $1405;
|
|
|
+ GL_FLOAT = $1406;
|
|
|
+ GL_DOUBLE = $140A;
|
|
|
+ GL_2_BYTES = $1407;
|
|
|
+ GL_3_BYTES = $1408;
|
|
|
+ GL_4_BYTES = $1409;
|
|
|
+
|
|
|
+ // Primitives
|
|
|
+ GL_LINES = $0001;
|
|
|
+ GL_POINTS = $0000;
|
|
|
+ GL_LINE_STRIP = $0003;
|
|
|
+ GL_LINE_LOOP = $0002;
|
|
|
+ GL_TRIANGLES = $0004;
|
|
|
+ GL_TRIANGLE_STRIP = $0005;
|
|
|
+ GL_TRIANGLE_FAN = $0006;
|
|
|
+ GL_QUADS = $0007;
|
|
|
+ GL_QUAD_STRIP = $0008;
|
|
|
+ GL_POLYGON = $0009;
|
|
|
+ GL_EDGE_FLAG = $0B43;
|
|
|
+
|
|
|
+ // Vertex arrays
|
|
|
+ GL_VERTEX_ARRAY = $8074;
|
|
|
+ GL_NORMAL_ARRAY = $8075;
|
|
|
+ GL_COLOR_ARRAY = $8076;
|
|
|
+ GL_INDEX_ARRAY = $8077;
|
|
|
+ GL_TEXTURE_COORD_ARRAY = $8078;
|
|
|
+ GL_EDGE_FLAG_ARRAY = $8079;
|
|
|
+ GL_VERTEX_ARRAY_SIZE = $807A;
|
|
|
+ GL_VERTEX_ARRAY_TYPE = $807B;
|
|
|
+ GL_VERTEX_ARRAY_STRIDE = $807C;
|
|
|
+ GL_NORMAL_ARRAY_TYPE = $807E;
|
|
|
+ GL_NORMAL_ARRAY_STRIDE = $807F;
|
|
|
+ GL_COLOR_ARRAY_SIZE = $8081;
|
|
|
+ GL_COLOR_ARRAY_TYPE = $8082;
|
|
|
+ GL_COLOR_ARRAY_STRIDE = $8083;
|
|
|
+ GL_INDEX_ARRAY_TYPE = $8085;
|
|
|
+ GL_INDEX_ARRAY_STRIDE = $8086;
|
|
|
+ GL_TEXTURE_COORD_ARRAY_SIZE = $8088;
|
|
|
+ GL_TEXTURE_COORD_ARRAY_TYPE = $8089;
|
|
|
+ GL_TEXTURE_COORD_ARRAY_STRIDE = $808A;
|
|
|
+ GL_EDGE_FLAG_ARRAY_STRIDE = $808C;
|
|
|
+ GL_VERTEX_ARRAY_POINTER = $808E;
|
|
|
+ GL_NORMAL_ARRAY_POINTER = $808F;
|
|
|
+ GL_COLOR_ARRAY_POINTER = $8090;
|
|
|
+ GL_INDEX_ARRAY_POINTER = $8091;
|
|
|
+ GL_TEXTURE_COORD_ARRAY_POINTER = $8092;
|
|
|
+ GL_EDGE_FLAG_ARRAY_POINTER = $8093;
|
|
|
+ GL_V2F = $2A20;
|
|
|
+ GL_V3F = $2A21;
|
|
|
+ GL_C4UB_V2F = $2A22;
|
|
|
+ GL_C4UB_V3F = $2A23;
|
|
|
+ GL_C3F_V3F = $2A24;
|
|
|
+ GL_N3F_V3F = $2A25;
|
|
|
+ GL_C4F_N3F_V3F = $2A26;
|
|
|
+ GL_T2F_V3F = $2A27;
|
|
|
+ GL_T4F_V4F = $2A28;
|
|
|
+ GL_T2F_C4UB_V3F = $2A29;
|
|
|
+ GL_T2F_C3F_V3F = $2A2A;
|
|
|
+ GL_T2F_N3F_V3F = $2A2B;
|
|
|
+ GL_T2F_C4F_N3F_V3F = $2A2C;
|
|
|
+ GL_T4F_C4F_N3F_V4F = $2A2D;
|
|
|
+
|
|
|
+ // Matrix Mode
|
|
|
+ GL_MATRIX_MODE = $0BA0;
|
|
|
+ GL_MODELVIEW = $1700;
|
|
|
+ GL_PROJECTION = $1701;
|
|
|
+ GL_TEXTURE = $1702;
|
|
|
+
|
|
|
+ // Points
|
|
|
+ GL_POINT_SMOOTH = $0B10;
|
|
|
+ GL_POINT_SIZE = $0B11;
|
|
|
+ GL_POINT_SIZE_GRANULARITY = $0B13;
|
|
|
+ GL_POINT_SIZE_RANGE = $0B12;
|
|
|
+
|
|
|
+ // Lines
|
|
|
+ GL_LINE_SMOOTH = $0B20;
|
|
|
+ GL_LINE_STIPPLE = $0B24;
|
|
|
+ GL_LINE_STIPPLE_PATTERN = $0B25;
|
|
|
+ GL_LINE_STIPPLE_REPEAT = $0B26;
|
|
|
+ GL_LINE_WIDTH = $0B21;
|
|
|
+ GL_LINE_WIDTH_GRANULARITY = $0B23;
|
|
|
+ GL_LINE_WIDTH_RANGE = $0B22;
|
|
|
+
|
|
|
+ // Polygons
|
|
|
+ GL_POINT = $1B00;
|
|
|
+ GL_LINE = $1B01;
|
|
|
+ GL_FILL = $1B02;
|
|
|
+ GL_CCW = $0901;
|
|
|
+ GL_CW = $0900;
|
|
|
+ GL_FRONT = $0404;
|
|
|
+ GL_BACK = $0405;
|
|
|
+ GL_CULL_FACE = $0B44;
|
|
|
+ GL_CULL_FACE_MODE = $0B45;
|
|
|
+ GL_POLYGON_SMOOTH = $0B41;
|
|
|
+ GL_POLYGON_STIPPLE = $0B42;
|
|
|
+ GL_FRONT_FACE = $0B46;
|
|
|
+ GL_POLYGON_MODE = $0B40;
|
|
|
+ GL_POLYGON_OFFSET_FACTOR = $8038;
|
|
|
+ GL_POLYGON_OFFSET_UNITS = $2A00;
|
|
|
+ GL_POLYGON_OFFSET_POINT = $2A01;
|
|
|
+ GL_POLYGON_OFFSET_LINE = $2A02;
|
|
|
+ GL_POLYGON_OFFSET_FILL = $8037;
|
|
|
+
|
|
|
+ // Display lists
|
|
|
+ GL_COMPILE = $1300;
|
|
|
+ GL_COMPILE_AND_EXECUTE = $1301;
|
|
|
+ GL_LIST_BASE = $0B32;
|
|
|
+ GL_LIST_INDEX = $0B33;
|
|
|
+ GL_LIST_MODE = $0B30;
|
|
|
+
|
|
|
+ // Depth buffer
|
|
|
+ GL_NEVER = $0200;
|
|
|
+ GL_LESS = $0201;
|
|
|
+ GL_GEQUAL = $0206;
|
|
|
+ GL_LEQUAL = $0203;
|
|
|
+ GL_GREATER = $0204;
|
|
|
+ GL_NOTEQUAL = $0205;
|
|
|
+ GL_EQUAL = $0202;
|
|
|
+ GL_ALWAYS = $0207;
|
|
|
+ GL_DEPTH_TEST = $0B71;
|
|
|
+ GL_DEPTH_BITS = $0D56;
|
|
|
+ GL_DEPTH_CLEAR_VALUE = $0B73;
|
|
|
+ GL_DEPTH_FUNC = $0B74;
|
|
|
+ GL_DEPTH_RANGE = $0B70;
|
|
|
+ GL_DEPTH_WRITEMASK = $0B72;
|
|
|
+ GL_DEPTH_COMPONENT = $1902;
|
|
|
+
|
|
|
+ // Lighting
|
|
|
+ GL_LIGHTING = $0B50;
|
|
|
+ GL_LIGHT0 = $4000;
|
|
|
+ GL_LIGHT1 = $4001;
|
|
|
+ GL_LIGHT2 = $4002;
|
|
|
+ GL_LIGHT3 = $4003;
|
|
|
+ GL_LIGHT4 = $4004;
|
|
|
+ GL_LIGHT5 = $4005;
|
|
|
+ GL_LIGHT6 = $4006;
|
|
|
+ GL_LIGHT7 = $4007;
|
|
|
+ GL_SPOT_EXPONENT = $1205;
|
|
|
+ GL_SPOT_CUTOFF = $1206;
|
|
|
+ GL_CONSTANT_ATTENUATION = $1207;
|
|
|
+ GL_LINEAR_ATTENUATION = $1208;
|
|
|
+ GL_QUADRATIC_ATTENUATION = $1209;
|
|
|
+ GL_AMBIENT = $1200;
|
|
|
+ GL_DIFFUSE = $1201;
|
|
|
+ GL_SPECULAR = $1202;
|
|
|
+ GL_SHININESS = $1601;
|
|
|
+ GL_EMISSION = $1600;
|
|
|
+ GL_POSITION = $1203;
|
|
|
+ GL_SPOT_DIRECTION = $1204;
|
|
|
+ GL_AMBIENT_AND_DIFFUSE = $1602;
|
|
|
+ GL_COLOR_INDEXES = $1603;
|
|
|
+ GL_LIGHT_MODEL_TWO_SIDE = $0B52;
|
|
|
+ GL_LIGHT_MODEL_LOCAL_VIEWER = $0B51;
|
|
|
+ GL_LIGHT_MODEL_AMBIENT = $0B53;
|
|
|
+ GL_FRONT_AND_BACK = $0408;
|
|
|
+ GL_SHADE_MODEL = $0B54;
|
|
|
+ GL_FLAT = $1D00;
|
|
|
+ GL_SMOOTH = $1D01;
|
|
|
+ GL_COLOR_MATERIAL = $0B57;
|
|
|
+ GL_COLOR_MATERIAL_FACE = $0B55;
|
|
|
+ GL_COLOR_MATERIAL_PARAMETER = $0B56;
|
|
|
+ GL_NORMALIZE = $0BA1;
|
|
|
+
|
|
|
+ // User clipping planes
|
|
|
+ GL_CLIP_PLANE0 = $3000;
|
|
|
+ GL_CLIP_PLANE1 = $3001;
|
|
|
+ GL_CLIP_PLANE2 = $3002;
|
|
|
+ GL_CLIP_PLANE3 = $3003;
|
|
|
+ GL_CLIP_PLANE4 = $3004;
|
|
|
+ GL_CLIP_PLANE5 = $3005;
|
|
|
+
|
|
|
+ // Accumulation buffer
|
|
|
+ GL_ACCUM_RED_BITS = $0D58;
|
|
|
+ GL_ACCUM_GREEN_BITS = $0D59;
|
|
|
+ GL_ACCUM_BLUE_BITS = $0D5A;
|
|
|
+ GL_ACCUM_ALPHA_BITS = $0D5B;
|
|
|
+ GL_ACCUM_CLEAR_VALUE = $0B80;
|
|
|
+ GL_ACCUM = $0100;
|
|
|
+ GL_ADD = $0104;
|
|
|
+ GL_LOAD = $0101;
|
|
|
+ GL_MULT = $0103;
|
|
|
+ GL_RETURN = $0102;
|
|
|
+
|
|
|
+ // Alpha testing
|
|
|
+ GL_ALPHA_TEST = $0BC0;
|
|
|
+ GL_ALPHA_TEST_REF = $0BC2;
|
|
|
+ GL_ALPHA_TEST_FUNC = $0BC1;
|
|
|
+
|
|
|
+ // Blending
|
|
|
+ GL_BLEND = $0BE2;
|
|
|
+ GL_BLEND_SRC = $0BE1;
|
|
|
+ GL_BLEND_DST = $0BE0;
|
|
|
+ GL_ZERO = 0;
|
|
|
+ GL_ONE = 1;
|
|
|
+ GL_SRC_COLOR = $0300;
|
|
|
+ GL_ONE_MINUS_SRC_COLOR = $0301;
|
|
|
+ GL_DST_COLOR = $0306;
|
|
|
+ GL_ONE_MINUS_DST_COLOR = $0307;
|
|
|
+ GL_SRC_ALPHA = $0302;
|
|
|
+ GL_ONE_MINUS_SRC_ALPHA = $0303;
|
|
|
+ GL_DST_ALPHA = $0304;
|
|
|
+ GL_ONE_MINUS_DST_ALPHA = $0305;
|
|
|
+ GL_SRC_ALPHA_SATURATE = $0308;
|
|
|
+ GL_CONSTANT_COLOR = $8001;
|
|
|
+ GL_ONE_MINUS_CONSTANT_COLOR = $8002;
|
|
|
+ GL_CONSTANT_ALPHA = $8003;
|
|
|
+ GL_ONE_MINUS_CONSTANT_ALPHA = $8004;
|
|
|
+
|
|
|
+ // Render mode
|
|
|
+ GL_FEEDBACK = $1C01;
|
|
|
+ GL_RENDER = $1C00;
|
|
|
+ GL_SELECT = $1C02;
|
|
|
+
|
|
|
+ // Feedback
|
|
|
+ GL_2D = $0600;
|
|
|
+ GL_3D = $0601;
|
|
|
+ GL_3D_COLOR = $0602;
|
|
|
+ GL_3D_COLOR_TEXTURE = $0603;
|
|
|
+ GL_4D_COLOR_TEXTURE = $0604;
|
|
|
+ GL_POINT_TOKEN = $0701;
|
|
|
+ GL_LINE_TOKEN = $0702;
|
|
|
+ GL_LINE_RESET_TOKEN = $0707;
|
|
|
+ GL_POLYGON_TOKEN = $0703;
|
|
|
+ GL_BITMAP_TOKEN = $0704;
|
|
|
+ GL_DRAW_PIXEL_TOKEN = $0705;
|
|
|
+ GL_COPY_PIXEL_TOKEN = $0706;
|
|
|
+ GL_PASS_THROUGH_TOKEN = $0700;
|
|
|
+ GL_FEEDBACK_BUFFER_POINTER = $0DF0;
|
|
|
+ GL_FEEDBACK_BUFFER_SIZE = $0DF1;
|
|
|
+ GL_FEEDBACK_BUFFER_TYPE = $0DF2;
|
|
|
+
|
|
|
+ // Selection
|
|
|
+ GL_SELECTION_BUFFER_POINTER = $0DF3;
|
|
|
+ GL_SELECTION_BUFFER_SIZE = $0DF4;
|
|
|
+
|
|
|
+ // Fog
|
|
|
+ GL_FOG = $0B60;
|
|
|
+ GL_FOG_MODE = $0B65;
|
|
|
+ GL_FOG_DENSITY = $0B62;
|
|
|
+ GL_FOG_COLOR = $0B66;
|
|
|
+ GL_FOG_INDEX = $0B61;
|
|
|
+ GL_FOG_START = $0B63;
|
|
|
+ GL_FOG_END = $0B64;
|
|
|
+ GL_LINEAR = $2601;
|
|
|
+ GL_EXP = $0800;
|
|
|
+ GL_EXP2 = $0801;
|
|
|
+
|
|
|
+ // Logic ops
|
|
|
+ GL_LOGIC_OP = $0BF1;
|
|
|
+ GL_INDEX_LOGIC_OP = $0BF1;
|
|
|
+ GL_COLOR_LOGIC_OP = $0BF2;
|
|
|
+ GL_LOGIC_OP_MODE = $0BF0;
|
|
|
+ GL_CLEAR = $1500;
|
|
|
+ GL_SET = $150F;
|
|
|
+ GL_COPY = $1503;
|
|
|
+ GL_COPY_INVERTED = $150C;
|
|
|
+ GL_NOOP = $1505;
|
|
|
+ GL_INVERT = $150A;
|
|
|
+ GL_AND = $1501;
|
|
|
+ GL_NAND = $150E;
|
|
|
+ GL_OR = $1507;
|
|
|
+ GL_NOR = $1508;
|
|
|
+ GL_XOR = $1506;
|
|
|
+ GL_EQUIV = $1509;
|
|
|
+ GL_AND_REVERSE = $1502;
|
|
|
+ GL_AND_INVERTED = $1504;
|
|
|
+ GL_OR_REVERSE = $150B;
|
|
|
+ GL_OR_INVERTED = $150D;
|
|
|
+
|
|
|
+ // Stencil
|
|
|
+ GL_STENCIL_TEST = $0B90;
|
|
|
+ GL_STENCIL_WRITEMASK = $0B98;
|
|
|
+ GL_STENCIL_BITS = $0D57;
|
|
|
+ GL_STENCIL_FUNC = $0B92;
|
|
|
+ GL_STENCIL_VALUE_MASK = $0B93;
|
|
|
+ GL_STENCIL_REF = $0B97;
|
|
|
+ GL_STENCIL_FAIL = $0B94;
|
|
|
+ GL_STENCIL_PASS_DEPTH_PASS = $0B96;
|
|
|
+ GL_STENCIL_PASS_DEPTH_FAIL = $0B95;
|
|
|
+ GL_STENCIL_CLEAR_VALUE = $0B91;
|
|
|
+ GL_STENCIL_INDEX = $1901;
|
|
|
+ GL_KEEP = $1E00;
|
|
|
+ GL_REPLACE = $1E01;
|
|
|
+ GL_INCR = $1E02;
|
|
|
+ GL_DECR = $1E03;
|
|
|
+
|
|
|
+ // Buffers, Pixel Drawing/Reading
|
|
|
+ GL_NONE = 0;
|
|
|
+ GL_LEFT = $0406;
|
|
|
+ GL_RIGHT = $0407;
|
|
|
+ //GL_FRONT = $0404;
|
|
|
+ //GL_BACK = $0405;
|
|
|
+ //GL_FRONT_AND_BACK = $0408;
|
|
|
+ GL_FRONT_LEFT = $0400;
|
|
|
+ GL_FRONT_RIGHT = $0401;
|
|
|
+ GL_BACK_LEFT = $0402;
|
|
|
+ GL_BACK_RIGHT = $0403;
|
|
|
+ GL_AUX0 = $0409;
|
|
|
+ GL_AUX1 = $040A;
|
|
|
+ GL_AUX2 = $040B;
|
|
|
+ GL_AUX3 = $040C;
|
|
|
+ GL_COLOR_INDEX = $1900;
|
|
|
+ GL_RED = $1903;
|
|
|
+ GL_GREEN = $1904;
|
|
|
+ GL_BLUE = $1905;
|
|
|
+ GL_ALPHA = $1906;
|
|
|
+ GL_LUMINANCE = $1909;
|
|
|
+ GL_LUMINANCE_ALPHA = $190A;
|
|
|
+ GL_ALPHA_BITS = $0D55;
|
|
|
+ GL_RED_BITS = $0D52;
|
|
|
+ GL_GREEN_BITS = $0D53;
|
|
|
+ GL_BLUE_BITS = $0D54;
|
|
|
+ GL_INDEX_BITS = $0D51;
|
|
|
+ GL_SUBPIXEL_BITS = $0D50;
|
|
|
+ GL_AUX_BUFFERS = $0C00;
|
|
|
+ GL_READ_BUFFER = $0C02;
|
|
|
+ GL_DRAW_BUFFER = $0C01;
|
|
|
+ GL_DOUBLEBUFFER = $0C32;
|
|
|
+ GL_STEREO = $0C33;
|
|
|
+ GL_BITMAP = $1A00;
|
|
|
+ GL_COLOR = $1800;
|
|
|
+ GL_DEPTH = $1801;
|
|
|
+ GL_STENCIL = $1802;
|
|
|
+ GL_DITHER = $0BD0;
|
|
|
+ GL_RGB = $1907;
|
|
|
+ GL_RGBA = $1908;
|
|
|
+
|
|
|
+ // Implementation limits
|
|
|
+ GL_MAX_LIST_NESTING = $0B31;
|
|
|
+ GL_MAX_ATTRIB_STACK_DEPTH = $0D35;
|
|
|
+ GL_MAX_MODELVIEW_STACK_DEPTH = $0D36;
|
|
|
+ GL_MAX_NAME_STACK_DEPTH = $0D37;
|
|
|
+ GL_MAX_PROJECTION_STACK_DEPTH = $0D38;
|
|
|
+ GL_MAX_TEXTURE_STACK_DEPTH = $0D39;
|
|
|
+ GL_MAX_EVAL_ORDER = $0D30;
|
|
|
+ GL_MAX_LIGHTS = $0D31;
|
|
|
+ GL_MAX_CLIP_PLANES = $0D32;
|
|
|
+ GL_MAX_TEXTURE_SIZE = $0D33;
|
|
|
+ GL_MAX_PIXEL_MAP_TABLE = $0D34;
|
|
|
+ GL_MAX_VIEWPORT_DIMS = $0D3A;
|
|
|
+ GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = $0D3B;
|
|
|
+
|
|
|
+ // Gets
|
|
|
+ GL_ATTRIB_STACK_DEPTH = $0BB0;
|
|
|
+ GL_CLIENT_ATTRIB_STACK_DEPTH = $0BB1;
|
|
|
+ GL_COLOR_CLEAR_VALUE = $0C22;
|
|
|
+ GL_COLOR_WRITEMASK = $0C23;
|
|
|
+ GL_CURRENT_INDEX = $0B01;
|
|
|
+ GL_CURRENT_COLOR = $0B00;
|
|
|
+ GL_CURRENT_NORMAL = $0B02;
|
|
|
+ GL_CURRENT_RASTER_COLOR = $0B04;
|
|
|
+ GL_CURRENT_RASTER_DISTANCE = $0B09;
|
|
|
+ GL_CURRENT_RASTER_INDEX = $0B05;
|
|
|
+ GL_CURRENT_RASTER_POSITION = $0B07;
|
|
|
+ GL_CURRENT_RASTER_TEXTURE_COORDS = $0B06;
|
|
|
+ GL_CURRENT_RASTER_POSITION_VALID = $0B08;
|
|
|
+ GL_CURRENT_TEXTURE_COORDS = $0B03;
|
|
|
+ GL_INDEX_CLEAR_VALUE = $0C20;
|
|
|
+ GL_INDEX_MODE = $0C30;
|
|
|
+ GL_INDEX_WRITEMASK = $0C21;
|
|
|
+ GL_MODELVIEW_MATRIX = $0BA6;
|
|
|
+ GL_MODELVIEW_STACK_DEPTH = $0BA3;
|
|
|
+ GL_NAME_STACK_DEPTH = $0D70;
|
|
|
+ GL_PROJECTION_MATRIX = $0BA7;
|
|
|
+ GL_PROJECTION_STACK_DEPTH = $0BA4;
|
|
|
+ GL_RENDER_MODE = $0C40;
|
|
|
+ GL_RGBA_MODE = $0C31;
|
|
|
+ GL_TEXTURE_MATRIX = $0BA8;
|
|
|
+ GL_TEXTURE_STACK_DEPTH = $0BA5;
|
|
|
+ GL_VIEWPORT = $0BA2;
|
|
|
+
|
|
|
+ // Evaluators
|
|
|
+ GL_AUTO_NORMAL = $0D80;
|
|
|
+ GL_MAP1_COLOR_4 = $0D90;
|
|
|
+ GL_MAP1_GRID_DOMAIN = $0DD0;
|
|
|
+ GL_MAP1_GRID_SEGMENTS = $0DD1;
|
|
|
+ GL_MAP1_INDEX = $0D91;
|
|
|
+ GL_MAP1_NORMAL = $0D92;
|
|
|
+ GL_MAP1_TEXTURE_COORD_1 = $0D93;
|
|
|
+ GL_MAP1_TEXTURE_COORD_2 = $0D94;
|
|
|
+ GL_MAP1_TEXTURE_COORD_3 = $0D95;
|
|
|
+ GL_MAP1_TEXTURE_COORD_4 = $0D96;
|
|
|
+ GL_MAP1_VERTEX_3 = $0D97;
|
|
|
+ GL_MAP1_VERTEX_4 = $0D98;
|
|
|
+ GL_MAP2_COLOR_4 = $0DB0;
|
|
|
+ GL_MAP2_GRID_DOMAIN = $0DD2;
|
|
|
+ GL_MAP2_GRID_SEGMENTS = $0DD3;
|
|
|
+ GL_MAP2_INDEX = $0DB1;
|
|
|
+ GL_MAP2_NORMAL = $0DB2;
|
|
|
+ GL_MAP2_TEXTURE_COORD_1 = $0DB3;
|
|
|
+ GL_MAP2_TEXTURE_COORD_2 = $0DB4;
|
|
|
+ GL_MAP2_TEXTURE_COORD_3 = $0DB5;
|
|
|
+ GL_MAP2_TEXTURE_COORD_4 = $0DB6;
|
|
|
+ GL_MAP2_VERTEX_3 = $0DB7;
|
|
|
+ GL_MAP2_VERTEX_4 = $0DB8;
|
|
|
+ GL_COEFF = $0A00;
|
|
|
+ GL_DOMAIN = $0A02;
|
|
|
+ GL_ORDER = $0A01;
|
|
|
+
|
|
|
+ // Hints
|
|
|
+ GL_FOG_HINT = $0C54;
|
|
|
+ GL_LINE_SMOOTH_HINT = $0C52;
|
|
|
+ GL_PERSPECTIVE_CORRECTION_HINT = $0C50;
|
|
|
+ GL_POINT_SMOOTH_HINT = $0C51;
|
|
|
+ GL_POLYGON_SMOOTH_HINT = $0C53;
|
|
|
+ GL_DONT_CARE = $1100;
|
|
|
+ GL_FASTEST = $1101;
|
|
|
+ GL_NICEST = $1102;
|
|
|
+
|
|
|
+ // Scissor box
|
|
|
+ GL_SCISSOR_TEST = $0C11;
|
|
|
+ GL_SCISSOR_BOX = $0C10;
|
|
|
+
|
|
|
+ // Pixel Mode / Transfer
|
|
|
+ GL_MAP_COLOR = $0D10;
|
|
|
+ GL_MAP_STENCIL = $0D11;
|
|
|
+ GL_INDEX_SHIFT = $0D12;
|
|
|
+ GL_INDEX_OFFSET = $0D13;
|
|
|
+ GL_RED_SCALE = $0D14;
|
|
|
+ GL_RED_BIAS = $0D15;
|
|
|
+ GL_GREEN_SCALE = $0D18;
|
|
|
+ GL_GREEN_BIAS = $0D19;
|
|
|
+ GL_BLUE_SCALE = $0D1A;
|
|
|
+ GL_BLUE_BIAS = $0D1B;
|
|
|
+ GL_ALPHA_SCALE = $0D1C;
|
|
|
+ GL_ALPHA_BIAS = $0D1D;
|
|
|
+ GL_DEPTH_SCALE = $0D1E;
|
|
|
+ GL_DEPTH_BIAS = $0D1F;
|
|
|
+ GL_PIXEL_MAP_S_TO_S_SIZE = $0CB1;
|
|
|
+ GL_PIXEL_MAP_I_TO_I_SIZE = $0CB0;
|
|
|
+ GL_PIXEL_MAP_I_TO_R_SIZE = $0CB2;
|
|
|
+ GL_PIXEL_MAP_I_TO_G_SIZE = $0CB3;
|
|
|
+ GL_PIXEL_MAP_I_TO_B_SIZE = $0CB4;
|
|
|
+ GL_PIXEL_MAP_I_TO_A_SIZE = $0CB5;
|
|
|
+ GL_PIXEL_MAP_R_TO_R_SIZE = $0CB6;
|
|
|
+ GL_PIXEL_MAP_G_TO_G_SIZE = $0CB7;
|
|
|
+ GL_PIXEL_MAP_B_TO_B_SIZE = $0CB8;
|
|
|
+ GL_PIXEL_MAP_A_TO_A_SIZE = $0CB9;
|
|
|
+ GL_PIXEL_MAP_S_TO_S = $0C71;
|
|
|
+ GL_PIXEL_MAP_I_TO_I = $0C70;
|
|
|
+ GL_PIXEL_MAP_I_TO_R = $0C72;
|
|
|
+ GL_PIXEL_MAP_I_TO_G = $0C73;
|
|
|
+ GL_PIXEL_MAP_I_TO_B = $0C74;
|
|
|
+ GL_PIXEL_MAP_I_TO_A = $0C75;
|
|
|
+ GL_PIXEL_MAP_R_TO_R = $0C76;
|
|
|
+ GL_PIXEL_MAP_G_TO_G = $0C77;
|
|
|
+ GL_PIXEL_MAP_B_TO_B = $0C78;
|
|
|
+ GL_PIXEL_MAP_A_TO_A = $0C79;
|
|
|
+ GL_PACK_ALIGNMENT = $0D05;
|
|
|
+ GL_PACK_LSB_FIRST = $0D01;
|
|
|
+ GL_PACK_ROW_LENGTH = $0D02;
|
|
|
+ GL_PACK_SKIP_PIXELS = $0D04;
|
|
|
+ GL_PACK_SKIP_ROWS = $0D03;
|
|
|
+ GL_PACK_SWAP_BYTES = $0D00;
|
|
|
+ GL_UNPACK_ALIGNMENT = $0CF5;
|
|
|
+ GL_UNPACK_LSB_FIRST = $0CF1;
|
|
|
+ GL_UNPACK_ROW_LENGTH = $0CF2;
|
|
|
+ GL_UNPACK_SKIP_PIXELS = $0CF4;
|
|
|
+ GL_UNPACK_SKIP_ROWS = $0CF3;
|
|
|
+ GL_UNPACK_SWAP_BYTES = $0CF0;
|
|
|
+ GL_ZOOM_X = $0D16;
|
|
|
+ GL_ZOOM_Y = $0D17;
|
|
|
+
|
|
|
+ // Texture mapping
|
|
|
+ GL_TEXTURE_ENV = $2300;
|
|
|
+ GL_TEXTURE_ENV_MODE = $2200;
|
|
|
+ GL_TEXTURE_1D = $0DE0;
|
|
|
+ GL_TEXTURE_2D = $0DE1;
|
|
|
+ GL_TEXTURE_WRAP_S = $2802;
|
|
|
+ GL_TEXTURE_WRAP_T = $2803;
|
|
|
+ GL_TEXTURE_MAG_FILTER = $2800;
|
|
|
+ GL_TEXTURE_MIN_FILTER = $2801;
|
|
|
+ GL_TEXTURE_ENV_COLOR = $2201;
|
|
|
+ GL_TEXTURE_GEN_S = $0C60;
|
|
|
+ GL_TEXTURE_GEN_T = $0C61;
|
|
|
+ GL_TEXTURE_GEN_MODE = $2500;
|
|
|
+ GL_TEXTURE_BORDER_COLOR = $1004;
|
|
|
+ GL_TEXTURE_WIDTH = $1000;
|
|
|
+ GL_TEXTURE_HEIGHT = $1001;
|
|
|
+ GL_TEXTURE_BORDER = $1005;
|
|
|
+ GL_TEXTURE_COMPONENTS = $1003;
|
|
|
+ GL_TEXTURE_RED_SIZE = $805C;
|
|
|
+ GL_TEXTURE_GREEN_SIZE = $805D;
|
|
|
+ GL_TEXTURE_BLUE_SIZE = $805E;
|
|
|
+ GL_TEXTURE_ALPHA_SIZE = $805F;
|
|
|
+ GL_TEXTURE_LUMINANCE_SIZE = $8060;
|
|
|
+ GL_TEXTURE_INTENSITY_SIZE = $8061;
|
|
|
+ GL_NEAREST_MIPMAP_NEAREST = $2700;
|
|
|
+ GL_NEAREST_MIPMAP_LINEAR = $2702;
|
|
|
+ GL_LINEAR_MIPMAP_NEAREST = $2701;
|
|
|
+ GL_LINEAR_MIPMAP_LINEAR = $2703;
|
|
|
+ GL_OBJECT_LINEAR = $2401;
|
|
|
+ GL_OBJECT_PLANE = $2501;
|
|
|
+ GL_EYE_LINEAR = $2400;
|
|
|
+ GL_EYE_PLANE = $2502;
|
|
|
+ GL_SPHERE_MAP = $2402;
|
|
|
+ GL_DECAL = $2101;
|
|
|
+ GL_MODULATE = $2100;
|
|
|
+ GL_NEAREST = $2600;
|
|
|
+ GL_REPEAT = $2901;
|
|
|
+ GL_CLAMP = $2900;
|
|
|
+ GL_S = $2000;
|
|
|
+ GL_T = $2001;
|
|
|
+ GL_R = $2002;
|
|
|
+ GL_Q = $2003;
|
|
|
+ GL_TEXTURE_GEN_R = $0C62;
|
|
|
+ GL_TEXTURE_GEN_Q = $0C63;
|
|
|
+
|
|
|
+ // GL 1.1 texturing
|
|
|
+ GL_PROXY_TEXTURE_1D = $8063;
|
|
|
+ GL_PROXY_TEXTURE_2D = $8064;
|
|
|
+ GL_TEXTURE_PRIORITY = $8066;
|
|
|
+ GL_TEXTURE_RESIDENT = $8067;
|
|
|
+ GL_TEXTURE_BINDING_1D = $8068;
|
|
|
+ GL_TEXTURE_BINDING_2D = $8069;
|
|
|
+ GL_TEXTURE_INTERNAL_FORMAT = $1003;
|
|
|
+
|
|
|
+
|
|
|
+ // GL 1.2 texturing
|
|
|
+ GL_PACK_SKIP_IMAGES = $806B;
|
|
|
+ GL_PACK_IMAGE_HEIGHT = $806C;
|
|
|
+ GL_UNPACK_SKIP_IMAGES = $806D;
|
|
|
+ GL_UNPACK_IMAGE_HEIGHT = $806E;
|
|
|
+ GL_TEXTURE_3D = $806F;
|
|
|
+ GL_PROXY_TEXTURE_3D = $8070;
|
|
|
+ GL_TEXTURE_DEPTH = $8071;
|
|
|
+ GL_TEXTURE_WRAP_R = $8072;
|
|
|
+ GL_MAX_3D_TEXTURE_SIZE = $8073;
|
|
|
+ GL_TEXTURE_BINDING_3D = $806A;
|
|
|
+
|
|
|
+ // Internal texture formats (GL 1.1)
|
|
|
+ GL_ALPHA4 = $803B;
|
|
|
+ GL_ALPHA8 = $803C;
|
|
|
+ GL_ALPHA12 = $803D;
|
|
|
+ GL_ALPHA16 = $803E;
|
|
|
+ GL_LUMINANCE4 = $803F;
|
|
|
+ GL_LUMINANCE8 = $8040;
|
|
|
+ GL_LUMINANCE12 = $8041;
|
|
|
+ GL_LUMINANCE16 = $8042;
|
|
|
+ GL_LUMINANCE4_ALPHA4 = $8043;
|
|
|
+ GL_LUMINANCE6_ALPHA2 = $8044;
|
|
|
+ GL_LUMINANCE8_ALPHA8 = $8045;
|
|
|
+ GL_LUMINANCE12_ALPHA4 = $8046;
|
|
|
+ GL_LUMINANCE12_ALPHA12 = $8047;
|
|
|
+ GL_LUMINANCE16_ALPHA16 = $8048;
|
|
|
+ GL_INTENSITY = $8049;
|
|
|
+ GL_INTENSITY4 = $804A;
|
|
|
+ GL_INTENSITY8 = $804B;
|
|
|
+ GL_INTENSITY12 = $804C;
|
|
|
+ GL_INTENSITY16 = $804D;
|
|
|
+ GL_R3_G3_B2 = $2A10;
|
|
|
+ GL_RGB4 = $804F;
|
|
|
+ GL_RGB5 = $8050;
|
|
|
+ GL_RGB8 = $8051;
|
|
|
+ GL_RGB10 = $8052;
|
|
|
+ GL_RGB12 = $8053;
|
|
|
+ GL_RGB16 = $8054;
|
|
|
+ GL_RGBA2 = $8055;
|
|
|
+ GL_RGBA4 = $8056;
|
|
|
+ GL_RGB5_A1 = $8057;
|
|
|
+ GL_RGBA8 = $8058;
|
|
|
+ GL_RGB10_A2 = $8059;
|
|
|
+ GL_RGBA12 = $805A;
|
|
|
+ GL_RGBA16 = $805B;
|
|
|
+
|
|
|
+ // Utility
|
|
|
+ GL_VENDOR = $1F00;
|
|
|
+ GL_RENDERER = $1F01;
|
|
|
+ GL_VERSION = $1F02;
|
|
|
+ GL_EXTENSIONS = $1F03;
|
|
|
+
|
|
|
+ // Errors
|
|
|
+ GL_INVALID_VALUE = $0501;
|
|
|
+ GL_INVALID_ENUM = $0500;
|
|
|
+ GL_INVALID_OPERATION = $0502;
|
|
|
+ GL_STACK_OVERFLOW = $0503;
|
|
|
+ GL_STACK_UNDERFLOW = $0504;
|
|
|
+ GL_OUT_OF_MEMORY = $0505;
|
|
|
+
|
|
|
+ // OpenGL 1.2
|
|
|
+ GL_RESCALE_NORMAL = $803A;
|
|
|
+ GL_CLAMP_TO_EDGE = $812F;
|
|
|
+ GL_MAX_ELEMENTS_VERTICES = $F0E8;
|
|
|
+ GL_MAX_ELEMENTS_INDICES = $F0E9;
|
|
|
+ GL_BGR = $80E0;
|
|
|
+ GL_BGRA = $80E1;
|
|
|
+ GL_UNSIGNED_BYTE_3_3_2 = $8032;
|
|
|
+ GL_UNSIGNED_BYTE_2_3_3_REV = $8362;
|
|
|
+ GL_UNSIGNED_SHORT_5_6_5 = $8363;
|
|
|
+ GL_UNSIGNED_SHORT_5_6_5_REV = $8364;
|
|
|
+ GL_UNSIGNED_SHORT_4_4_4_4 = $8033;
|
|
|
+ GL_UNSIGNED_SHORT_4_4_4_4_REV = $8365;
|
|
|
+ GL_UNSIGNED_SHORT_5_5_5_1 = $8034;
|
|
|
+ GL_UNSIGNED_SHORT_1_5_5_5_REV = $8366;
|
|
|
+ GL_UNSIGNED_INT_8_8_8_8 = $8035;
|
|
|
+ GL_UNSIGNED_INT_8_8_8_8_REV = $8367;
|
|
|
+ GL_UNSIGNED_INT_10_10_10_2 = $8036;
|
|
|
+ GL_UNSIGNED_INT_2_10_10_10_REV = $8368;
|
|
|
+ GL_LIGHT_MODEL_COLOR_CONTROL = $81F8;
|
|
|
+ GL_SINGLE_COLOR = $81F9;
|
|
|
+ GL_SEPARATE_SPECULAR_COLOR = $81FA;
|
|
|
+ GL_TEXTURE_MIN_LOD = $813A;
|
|
|
+ GL_TEXTURE_MAX_LOD = $813B;
|
|
|
+ GL_TEXTURE_BASE_LEVEL = $813C;
|
|
|
+ GL_TEXTURE_MAX_LEVEL = $813D;
|
|
|
+
|
|
|
+
|
|
|
+// -------------------------------------------------------------------
|
|
|
+// GL procedures and functions
|
|
|
+// -------------------------------------------------------------------
|
|
|
+
|
|
|
+var
|
|
|
+%END
|
|
|
+
|
|
|
+
|
|
|
+#=====================================================================
|
|
|
+# Procedures and functions
|
|
|
+#=====================================================================
|
|
|
+
|
|
|
+%PROCS
|
|
|
+ // Miscellaneous
|
|
|
+ glClearIndex: procedure(c: Single);
|
|
|
+ glClearColor: procedure(red, green, blue, alpha: GLclampf);
|
|
|
+ glClear: procedure(mask: GLbitfield);
|
|
|
+ glIndexMask: procedure(mask: LongWord);
|
|
|
+ glColorMask: procedure(red, green, blue, alpha: Boolean);
|
|
|
+ glAlphaFunc: procedure(func: GLenum; ref: GLclampf);
|
|
|
+ glBlendFunc: procedure(sfactor, dfactor: GLenum);
|
|
|
+ glLogicOp: procedure(opcode: GLenum);
|
|
|
+ glCullFace: procedure(mode: GLenum);
|
|
|
+ glFrontFace: procedure(mode: GLenum);
|
|
|
+ glPointSize: procedure(size: Single);
|
|
|
+ glLineWidth: procedure(width: Single);
|
|
|
+ glLineStipple: procedure(factor: LongInt; pattern: Word);
|
|
|
+ glPolygonMode: procedure(face, mode: GLenum);
|
|
|
+ glPolygonOffset: procedure(factor, units: Single);
|
|
|
+ glPolygonStipple: procedure(var mask: Byte);
|
|
|
+ glGetPolygonStipple: procedure(var mask: Byte);
|
|
|
+ glEdgeFlag: procedure(flag: Boolean);
|
|
|
+ glEdgeFlagv: procedure(var flag: Boolean);
|
|
|
+ glScissor: procedure(x, y, width, height: LongInt);
|
|
|
+ glClipPlane: procedure(plane: GLenum; var equation: Double);
|
|
|
+ glGetClipPlane: procedure(plane: GLenum; var equation: Double);
|
|
|
+ glDrawBuffer: procedure(mode: GLenum);
|
|
|
+ glReadBuffer: procedure(mode: GLenum);
|
|
|
+ glEnable: procedure(cap: LongInt);
|
|
|
+ glDisable: procedure(cap: LongInt);
|
|
|
+ glIsEnabled: function(cap: GLenum): Boolean;
|
|
|
+ glEnableClientState: procedure(cap: GLenum); // 1.1
|
|
|
+ glDisableClientState: procedure(cap: GLenum); // 1.1
|
|
|
+ glGetBooleanv: procedure(pname: GLenum; var params: Boolean);
|
|
|
+ glGetDoublev: procedure(pname: GLenum; var params: Double);
|
|
|
+ glGetFloatv: procedure(pname: GLenum; var params: Single);
|
|
|
+ glGetIntegerv: procedure(pname: GLenum; var params: LongInt);
|
|
|
+ glPushAttrib: procedure(mask: GLbitfield);
|
|
|
+ glPopAttrib: procedure;
|
|
|
+ glPushClientAttrib: procedure(mask: GLbitfield); // 1.1
|
|
|
+ glPopClientAttrib: procedure; // 1.1
|
|
|
+ glRenderMode: function(mode: GLenum): LongInt;
|
|
|
+ glGetError: function: GLenum;
|
|
|
+ glGetString: function(name: GLenum): PChar;
|
|
|
+ glFinish: procedure;
|
|
|
+ glFlush: procedure;
|
|
|
+ glHint: procedure(target, mode: GLenum);
|
|
|
+
|
|
|
+
|
|
|
+ // Depth Buffer
|
|
|
+ glClearDepth: procedure(depth: GLclampd);
|
|
|
+ glDepthFunc: procedure(func: LongInt);
|
|
|
+ glDepthMask: procedure(flag: Boolean);
|
|
|
+ glDepthRange: procedure(near_val, far_val: GLclampd);
|
|
|
+
|
|
|
+ // Accumulation Buffer
|
|
|
+ glClearAccum: procedure(red, green, blue, alpha: Single);
|
|
|
+ glAccum: procedure(op: GLenum; value: Single);
|
|
|
+
|
|
|
+ // Tranformation
|
|
|
+ glMatrixMode: procedure(mode: GLenum);
|
|
|
+ glOrtho: procedure(left, right, bottom, top, near_val, far_val: Double);
|
|
|
+ glFrustum: procedure(left, right, bottom, top, near_val, far_val: Double);
|
|
|
+ glViewport: procedure(x, y, width, height: LongInt);
|
|
|
+ glPushMatrix: procedure;
|
|
|
+ glPopMatrix: procedure;
|
|
|
+ glLoadIdentity: procedure;
|
|
|
+ glLoadMatrixd: procedure(var m: Double);
|
|
|
+ glLoadMatrixf: procedure(var m: PSingle);
|
|
|
+ glMultMatrixd: procedure(var m: Double);
|
|
|
+ glMultMatrixf: procedure(var m: Single);
|
|
|
+ glRotated: procedure(angle, x, y, z: Double);
|
|
|
+ glRotatef: procedure(angle, x, y, z: Single);
|
|
|
+ glScaled: procedure(x, y, z: Double);
|
|
|
+ glScalef: procedure(x, y, z: Single);
|
|
|
+ glTranslated: procedure(x, y, z: Double);
|
|
|
+ glTranslatef: procedure(x, y, z: Single);
|
|
|
+
|
|
|
+ // Display Lists
|
|
|
+ glIsList: function(list: LongWord): Boolean;
|
|
|
+ glDeleteLists: procedure(list: LongWord; range: LongInt);
|
|
|
+ glGenLists: function(range: LongInt): LongWord;
|
|
|
+ glNewList: procedure(list: LongWord; mode: GLenum);
|
|
|
+ glEndList: procedure;
|
|
|
+ glCallList: procedure(list: LongWord);
|
|
|
+ glCallLists: procedure(n: LongInt; AType: GLenum; var lists);
|
|
|
+ glListBase: procedure(base: LongWord);
|
|
|
+
|
|
|
+ // Drawing Functions
|
|
|
+ glBegin: procedure(mode: GLenum);
|
|
|
+ glEnd: procedure;
|
|
|
+ glVertex2d: procedure(x, y: Double);
|
|
|
+ glVertex2f: procedure(x, y: Single);
|
|
|
+ glVertex2i: procedure(x, y: LongInt);
|
|
|
+ glVertex2s: procedure(x, y: SmallInt);
|
|
|
+ glVertex3d: procedure(x, y, z: Double);
|
|
|
+ glVertex3f: procedure(x, y, z: Single);
|
|
|
+ glVertex3i: procedure(x, y, z: LongInt);
|
|
|
+ glVertex3s: procedure(x, y, z: SmallInt);
|
|
|
+ glVertex4d: procedure(x, y, z, w: Double);
|
|
|
+ glVertex4f: procedure(x, y, z, w: Single);
|
|
|
+ glVertex4i: procedure(x, y, z, w: LongInt);
|
|
|
+ glVertex4s: procedure(x, y, z, w: SmallInt);
|
|
|
+ glVertex2dv: procedure(var v: Double);
|
|
|
+ glVertex2fv: procedure(var v: Single);
|
|
|
+ glVertex2iv: procedure(var v: LongInt);
|
|
|
+ glVertex2sv: procedure(var v: SmallInt);
|
|
|
+ glVertex3dv: procedure(var v: Double);
|
|
|
+ glVertex3fv: procedure(var v: Single);
|
|
|
+ glVertex3iv: procedure(var v: LongInt);
|
|
|
+ glVertex3sv: procedure(var v: SmallInt);
|
|
|
+ glVertex4dv: procedure(var v: Double);
|
|
|
+ glVertex4fv: procedure(var v: Single);
|
|
|
+ glVertex4iv: procedure(var v: LongInt);
|
|
|
+ glVertex4sv: procedure(var v: SmallInt);
|
|
|
+ glNormal3b: procedure(nx, ny, nz: Byte);
|
|
|
+ glNormal3d: procedure(nx, ny, nz: Double);
|
|
|
+ glNormal3f: procedure(nx, ny, nz: Single);
|
|
|
+ glNormal3i: procedure(nx, ny, nz: LongInt);
|
|
|
+ glNormal3s: procedure(nx, ny, nz: SmallInt);
|
|
|
+ glNormal3bv: procedure(var v: ShortInt);
|
|
|
+ glNormal3dv: procedure(var v: Double);
|
|
|
+ glNormal3fv: procedure(var v: Single);
|
|
|
+ glNormal3iv: procedure(var v: LongInt);
|
|
|
+ glNormal3sv: procedure(var v: SmallInt);
|
|
|
+ glIndexd: procedure(c: Double);
|
|
|
+ glIndexf: procedure(c: Single);
|
|
|
+ glIndexi: procedure(c: LongInt);
|
|
|
+ glIndexs: procedure(c: SmallInt);
|
|
|
+ glIndexub: procedure(c: Byte); // 1.1
|
|
|
+ glIndexdv: procedure(var c: Double);
|
|
|
+ glIndexfv: procedure(var c: Single);
|
|
|
+ glIndexiv: procedure(var c: LongInt);
|
|
|
+ glIndexsv: procedure(var c: SmallInt);
|
|
|
+ glIndexubv: procedure(var c: Byte); // 1.1
|
|
|
+ glColor3b : procedure(red, green, blue: ShortInt);
|
|
|
+ glColor3d : procedure(red, green, blue: Double);
|
|
|
+ glColor3f : procedure(red, green, blue: Single);
|
|
|
+ glColor3i : procedure(red, green, blue: LongInt);
|
|
|
+ glColor3s : procedure(red, green, blue: SmallInt);
|
|
|
+ glColor3ub: procedure(red, green, blue: Byte);
|
|
|
+ glColor3ui: procedure(red, green, blue: LongWord);
|
|
|
+ glColor3us: procedure(red, green, blue: Word);
|
|
|
+ glColor4b : procedure(red, green, blue, alpha: ShortInt);
|
|
|
+ glColor4d : procedure(red, green, blue, alpha: Double);
|
|
|
+ glColor4f : procedure(red, green, blue, alpha: Single);
|
|
|
+ glColor4i : procedure(red, green, blue, alpha: LongInt);
|
|
|
+ glColor4s : procedure(red, green, blue, alpha: SmallInt);
|
|
|
+ glColor4ub: procedure(red, green, blue, alpha: Byte);
|
|
|
+ glColor4ui: procedure(red, green, blue, alpha: LongWord);
|
|
|
+ glColor4us: procedure(red, green, blue, alpha: Word);
|
|
|
+ glColor3bv : procedure(var v: ShortInt);
|
|
|
+ glColor3dv : procedure(var v: Double);
|
|
|
+ glColor3fv : procedure(var v: Single);
|
|
|
+ glColor3iv : procedure(var v: LongInt);
|
|
|
+ glColor3sv : procedure(var v: SmallInt);
|
|
|
+ glColor3ubv: procedure(var v: Byte);
|
|
|
+ glColor3uiv: procedure(var v: LongWord);
|
|
|
+ glColor3usv: procedure(var v: Word);
|
|
|
+ glColor4bv : procedure(var v: ShortInt);
|
|
|
+ glColor4dv : procedure(var v: Double);
|
|
|
+ glColor4fv : procedure(var v: Single);
|
|
|
+ glColor4iv : procedure(var v: LongInt);
|
|
|
+ glColor4sv : procedure(var v: SmallInt);
|
|
|
+ glColor4ubv: procedure(var v: Byte);
|
|
|
+ glColor4uiv: procedure(var v: LongWord);
|
|
|
+ glColor4usv: procedure(var v: Word);
|
|
|
+ glTexCoord1d: procedure(s: Double);
|
|
|
+ glTexCoord1f: procedure(s: Single);
|
|
|
+ glTexCoord1i: procedure(s: LongInt);
|
|
|
+ glTexCoord1s: procedure(s: SmallInt);
|
|
|
+ glTexCoord2d: procedure(s, t: Double);
|
|
|
+ glTexCoord2f: procedure(s, t: Single);
|
|
|
+ glTexCoord2i: procedure(s, t: LongInt);
|
|
|
+ glTexCoord2s: procedure(s, t: SmallInt);
|
|
|
+ glTexCoord3d: procedure(s, t, r: Double);
|
|
|
+ glTexCoord3f: procedure(s, t, r: Single);
|
|
|
+ glTexCoord3i: procedure(s, t, r: LongInt);
|
|
|
+ glTexCoord3s: procedure(s, t, r: SmallInt);
|
|
|
+ glTexCoord4d: procedure(s, t, r, q: Double);
|
|
|
+ glTexCoord4f: procedure(s, t, r, q: Single);
|
|
|
+ glTexCoord4i: procedure(s, t, r, q: LongInt);
|
|
|
+ glTexCoord4s: procedure(s, t, r, q: SmallInt);
|
|
|
+ glTexCoord1dv: procedure(var v: Double);
|
|
|
+ glTexCoord1fv: procedure(var v: Single);
|
|
|
+ glTexCoord1iv: procedure(var v: LongInt);
|
|
|
+ glTexCoord1sv: procedure(var v: SmallInt);
|
|
|
+ glTexCoord2dv: procedure(var v: Double);
|
|
|
+ glTexCoord2fv: procedure(var v: Single);
|
|
|
+ glTexCoord2iv: procedure(var v: LongInt);
|
|
|
+ glTexCoord2sv: procedure(var v: SmallInt);
|
|
|
+ glTexCoord3dv: procedure(var v: Double);
|
|
|
+ glTexCoord3fv: procedure(var v: Single);
|
|
|
+ glTexCoord3iv: procedure(var v: LongInt);
|
|
|
+ glTexCoord3sv: procedure(var v: SmallInt);
|
|
|
+ glTexCoord4dv: procedure(var v: Double);
|
|
|
+ glTexCoord4fv: procedure(var v: Single);
|
|
|
+ glTexCoord4iv: procedure(var v: LongInt);
|
|
|
+ glTexCoord4sv: procedure(var v: SmallInt);
|
|
|
+ glRasterPos2d: procedure(x, y: Double);
|
|
|
+ glRasterPos2f: procedure(x, y: Single);
|
|
|
+ glRasterPos2i: procedure(x, y: LongInt);
|
|
|
+ glRasterPos2s: procedure(x, y: SmallInt);
|
|
|
+ glRasterPos3d: procedure(x, y, z: Double);
|
|
|
+ glRasterPos3f: procedure(x, y, z: Single);
|
|
|
+ glRasterPos3i: procedure(x, y, z: LongInt);
|
|
|
+ glRasterPos3s: procedure(x, y, z: SmallInt);
|
|
|
+ glRasterPos4d: procedure(x, y, z, w: Double);
|
|
|
+ glRasterPos4f: procedure(x, y, z, w: Single);
|
|
|
+ glRasterPos4i: procedure(x, y, z, w: LongInt);
|
|
|
+ glRasterPos4s: procedure(x, y, z, w: SmallInt);
|
|
|
+ glRasterPos2dv: procedure(var v: Double);
|
|
|
+ glRasterPos2fv: procedure(var v: Single);
|
|
|
+ glRasterPos2iv: procedure(var v: LongInt);
|
|
|
+ glRasterPos2sv: procedure(var v: SmallInt);
|
|
|
+ glRasterPos3dv: procedure(var v: Double);
|
|
|
+ glRasterPos3fv: procedure(var v: Single);
|
|
|
+ glRasterPos3iv: procedure(var v: LongInt);
|
|
|
+ glRasterPos3sv: procedure(var v: SmallInt);
|
|
|
+ glRasterPos4dv: procedure(var v: Double);
|
|
|
+ glRasterPos4fv: procedure(var v: Single);
|
|
|
+ glRasterPos4iv: procedure(var v: LongInt);
|
|
|
+ glRasterPos4sv: procedure(var v: SmallInt);
|
|
|
+ glRectd: procedure(x1, y1, x2, y2: Double);
|
|
|
+ glRectf: procedure(x1, y1, x2, y2: Single);
|
|
|
+ glRecti: procedure(x1, y1, x2, y2: LongInt);
|
|
|
+ glRects: procedure(x1, y1, x2, y2: SmallInt);
|
|
|
+ glRectdv: procedure(var v1, v2: Double);
|
|
|
+ glRectfv: procedure(var v1, v2: Single);
|
|
|
+ glRectiv: procedure(var v1, v2: LongInt);
|
|
|
+ glRectsv: procedure(var v1, v2: SmallInt);
|
|
|
+
|
|
|
+ // Vertex Arrays (1.1)
|
|
|
+ glVertexPointer: procedure(size: LongInt; AType: GLenum; stride: LongInt; var ptr);
|
|
|
+ glNormalPointer: procedure(AType: GLenum; stride: LongInt; var ptr);
|
|
|
+ glColorPointer: procedure(size: LongInt; AType: GLenum; stride: LongInt; var ptr);
|
|
|
+ glIndexPointer: procedure(AType: GLenum; stride: LongInt; var ptr);
|
|
|
+ glTexCoordPointer: procedure(size: LongInt; AType: GLenum; stride: LongInt; var ptr);
|
|
|
+ glEdgeFlagPointer: procedure(stride: LongInt; var ptr);
|
|
|
+ glGetPointerv: procedure(pname: GLenum; var params: Pointer);
|
|
|
+ glArrayElement: procedure(i: LongInt);
|
|
|
+ glDrawArrays: procedure(mode: GLenum; first, count: LongInt);
|
|
|
+ glDrawElements: procedure(mode: GLenum; count: Integer; AType: GLenum; var indices);
|
|
|
+ glInterleavedArrays: procedure(format: GLenum; stride: LongInt; var pointer);
|
|
|
+
|
|
|
+ // Lighting
|
|
|
+ glShadeModel: procedure(mode: GLenum);
|
|
|
+ glLightf: procedure(light, pname: GLenum; param: Single);
|
|
|
+ glLighti: procedure(light, pname: GLenum; param: LongInt);
|
|
|
+ glLightfv: procedure(light, pname: GLenum; var params: Single);
|
|
|
+ glLightiv: procedure(light, pname: GLenum; var params: LongInt);
|
|
|
+ glGetLightfv: procedure(light, pname: GLenum; var params: Single);
|
|
|
+ glGetLightiv: procedure(light, pname: GLenum; var params: LongInt);
|
|
|
+ glLightModelf: procedure(pname: GLenum; param: Single);
|
|
|
+ glLightModeli: procedure(pname: GLenum; param: LongInt);
|
|
|
+ glLightModelfv: procedure(pname: GLenum; var params: Single);
|
|
|
+ glLightModeliv: procedure(pname: GLenum; var param: LongInt);
|
|
|
+ glMaterialf: procedure(face, pname: GLenum; param: Single);
|
|
|
+ glMateriali: procedure(face, pname: GLenum; param: LongInt);
|
|
|
+ glMaterialfv: procedure(face, pname: GLenum; var params: Single);
|
|
|
+ glMaterialiv: procedure(face, pname: GLenum; var params: LongInt);
|
|
|
+ glGetMaterialfv: procedure(face, pname: GLenum; var params: Single);
|
|
|
+ glGetMaterialiv: procedure(face, pname: GLenum; var params: LongInt);
|
|
|
+ glColorMaterial: procedure(face, mode: GLenum);
|
|
|
+
|
|
|
+ // Raster Functions
|
|
|
+ glPixelZoom: procedure(xfactor, yfactor: Single);
|
|
|
+ glPixelStoref: procedure(pname: GLenum; param: Single);
|
|
|
+ glPixelStorei: procedure(pname: GLenum; param: LongInt);
|
|
|
+ glPixelTransferf: procedure(pname: GLenum; param: Single);
|
|
|
+ glPixelTransferi: procedure(pname: GLenum; param: LongInt);
|
|
|
+ glPixelMapfv: procedure(map: GLenum; mapsize: LongInt; var values: Single);
|
|
|
+ glPixelMapuiv: procedure(map: GLenum; mapsize: LongInt; var values: LongWord);
|
|
|
+ glPixelMapusv: procedure(map: GLenum; mapsize: LongInt; var values: Word);
|
|
|
+ glGetPixelMapfv: procedure(map: GLenum; var values: Single);
|
|
|
+ glGetPixelMapuiv: procedure(map: GLenum; var values: LongWord);
|
|
|
+ glGetPixelMapusv: procedure(map: GLenum; var values: Word);
|
|
|
+ glBitmap: procedure(width, height: LongInt; xorig, yorig, xmove, ymove: Single; var bitmap);
|
|
|
+ glReadPixels: procedure(x, y, width, height: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ glDrawPixels: procedure(width, height: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ glCopyPixels: procedure(x, y, width, height: LongInt; AType: GLenum);
|
|
|
+
|
|
|
+ // Stenciling
|
|
|
+ glStencilFunc: procedure(func: GLenum; ref: LongInt; mask: LongWord);
|
|
|
+ glStencilMask: procedure(mask: LongWord);
|
|
|
+ glStencilOp: procedure(fail, zfail, zpass: GLenum);
|
|
|
+ glClearStencil: procedure(s: LongInt);
|
|
|
+
|
|
|
+ // Texture Mapping
|
|
|
+ glTexGend: procedure(cord, pname: GLenum; param: Double);
|
|
|
+ glTexGenf: procedure(cord, pname: GLenum; param: Single);
|
|
|
+ glTexGeni: procedure(cord, pname: GLenum; param: LongInt);
|
|
|
+ glTexGendv: procedure(cord, pname: GLenum; var params: Double);
|
|
|
+ glTexGenfv: procedure(cord, pname: GLenum; var params: Single);
|
|
|
+ glTexGeniv: procedure(cord, pname: GLenum; var params: LongInt);
|
|
|
+ glGetTexGendv: procedure(cord, pname: GLenum; var params: Double);
|
|
|
+ glGetTexGenfv: procedure(cord, pname: GLenum; var params: Single);
|
|
|
+ glGetTexGeniv: procedure(cord, pname: GLenum; var params: LongInt);
|
|
|
+ glTexEnvf: procedure(target, pname: GLenum; param: Single);
|
|
|
+ glTexEnvi: procedure(target, pname: GLenum; param: LongInt);
|
|
|
+ glTexEnvfv: procedure(target, pname: GLenum; var params: Single);
|
|
|
+ glTexEnviv: procedure(target, pname: GLenum; var params: LongInt);
|
|
|
+ glGetTexEnvfv: procedure(target, pname: GLenum; var params: Single);
|
|
|
+ glGetTexEnviv: procedure(target, pname: GLenum; var params: LongInt);
|
|
|
+ glTexParameterf: procedure(target, pname: GLenum; param: Single);
|
|
|
+ glTexParameteri: procedure(target, pname: GLenum; param: LongInt);
|
|
|
+ glTexParameterfv: procedure(target, pname: GLenum; var params: Single);
|
|
|
+ glTexParameteriv: procedure(target, pname: GLenum; var params: LongInt);
|
|
|
+ glGetTexParameterfv: procedure(target, pname: GLenum; var params: Single);
|
|
|
+ glGetTexParameteriv: procedure(target, pname: GLenum; var params: LongInt);
|
|
|
+ glGetTexLevelParameterfv: procedure(target: GLenum; level: LongInt; pname: GLenum; var params: Single);
|
|
|
+ glGetTexLevelParameteriv: procedure(target: GLenum; level: LongInt; pname: GLenum; var params: LongInt);
|
|
|
+ glTexImage1D: procedure(target: GLenum; level, internalFormat, width, border: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ glTexImage2D: procedure(target: GLenum; level, internalFormat, width, height, border: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ glGetTexImage: procedure(target: GLenum; level: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ // 1.1 functions:
|
|
|
+ glGenTextures: procedure(n: LongInt; var textures: LongWord);
|
|
|
+ glDeleteTextures: procedure(n: LongInt; var textures: LongWord);
|
|
|
+ glBindTexture: procedure(target: GLenum; texture: LongWord);
|
|
|
+ glPrioritizeTextures: procedure(n: LongInt; var textures: LongWord; var priorities: GLclampf);
|
|
|
+ glAreTexturesResident: function(n: LongInt; var textures: LongWord; var residences: Boolean): Boolean;
|
|
|
+ glIsTexture: function(texture: LongWord): Boolean;
|
|
|
+ glTexSubImage1D: procedure(target: GLenum; level, xoffset, width: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ glTexSubImage2D: procedure(target: GLenum; level, xoffset, yoffset, width, height: LongInt; format, AType: GLenum; var pixels);
|
|
|
+ glCopyTexImage1D: procedure(target: GLenum; level: LongInt; format: GLenum; x, y, width, border: LongInt);
|
|
|
+ glCopyTexImage2D: procedure(target: GLenum; level: LongInt; format: GLenum; x, y, width, height, border: LongInt);
|
|
|
+ glCopyTexSubImage1D: procedure(target: GLenum; level, xoffset, x, y, width: LongInt);
|
|
|
+ glCopyTexSubImage2D: procedure(target: GLenum; level, xoffset, yoffset, x, y, width, height: LongInt);
|
|
|
+
|
|
|
+ // Evaluators
|
|
|
+ glMap1d: procedure(target: GLenum; u1, u2: Double; stride, order: LongInt; var points: Double);
|
|
|
+ glMap1f: procedure(target: GLenum; u1, u2: Single; stride, order: LongInt; var points: Single);
|
|
|
+ glMap2d: procedure(target: GLenum; u1, u2: Double; ustride, uorder: LongInt; v1, v2: Double; vstride, vorder: LongInt; var points: Double);
|
|
|
+ glMap2f: procedure(target: GLenum; u1, u2: Single; ustride, uorder: LongInt; v1, v2: Single; vstride, vorder: LongInt; var points: Single);
|
|
|
+ glGetMapdv: procedure(target, query: GLenum; var v: Double);
|
|
|
+ glGetMapfv: procedure(target, query: GLenum; var v: Single);
|
|
|
+ glGetMapiv: procedure(target, query: GLenum; var v: LongInt);
|
|
|
+ glEvalCoord1d: procedure(u: Double);
|
|
|
+ glEvalCoord1f: procedure(u: Single);
|
|
|
+ glEvalCoord1dv: procedure(var u: Double);
|
|
|
+ glEvalCoord1fv: procedure(var u: Single);
|
|
|
+ glEvalCoord2d: procedure(u, v: Double);
|
|
|
+ glEvalCoord2f: procedure(u, v: Single);
|
|
|
+ glEvalCoord2dv: procedure(var u, v: Double);
|
|
|
+ glEvalCoord2fv: procedure(var u, v: Single);
|
|
|
+ glMapGrid1d: procedure(un: LongInt; u1, u2: Double);
|
|
|
+ glMapGrid1f: procedure(un: LongInt; u1, u2: Single);
|
|
|
+ glMapGrid2d: procedure(un: LongInt; u1, u2: Double; vn: LongInt; v1, v2: Double);
|
|
|
+ glMapGrid2f: procedure(un: LongInt; u1, u2: Single; vn: LongInt; v1, v2: Single);
|
|
|
+ glEvalPoint1: procedure(i: LongInt);
|
|
|
+ glEvalPoint2: procedure(i, j: LongInt);
|
|
|
+ glEvalMesh1: procedure(mode: GLenum; i1, i2: LongInt);
|
|
|
+ glEvalMesh2: procedure(mode: GLenum; i1, i2, j1, j2: LongInt);
|
|
|
+
|
|
|
+ // Fog
|
|
|
+ glFogf: procedure(pname: GLenum; param: Single);
|
|
|
+ glFogi: procedure(pname: GLenum; param: LongInt);
|
|
|
+ glFogfv: procedure(pname: GLenum; var params: Single);
|
|
|
+ glFogiv: procedure(pname: GLenum; var params: LongInt);
|
|
|
+
|
|
|
+ // Selection and Feedback
|
|
|
+ glFeedbackBuffer: procedure(size: LongInt; AType: GLenum; var buffer: Single);
|
|
|
+ glPassThrough: procedure(token: Single);
|
|
|
+ glSelectBuffer: procedure(size: LongInt; var buffer: LongWord);
|
|
|
+ glInitNames: procedure;
|
|
|
+ glLoadName: procedure(name: LongWord);
|
|
|
+ glPushName: procedure(name: LongWord);
|
|
|
+ glPopName: procedure;
|
|
|
+%END
|